チャプターのアップロード

外部で作成した目次をLISTENにも使いたい場合は、開始秒数とタイトルをアップロードできます。エピソードの管理メニューの「チャプターをアップロード」から、次の形式のUTF-8 JSONファイル(最大1MB)をアップロードできます。

{"chapters":[{"startTime":0,"title":"オープニング"},{"startTime":60.5,"title":"本題"}]}

APIは、エピソードを編集できる利用者のトークン(update権限)で、同じJSONを次のURLへ送信します。

PUT https://listen.style/api/v1/episodes/{episode}/chapters

成功時は {"data":{"episode_id":"EPISODE_ID","chapter_count":2}} を返します。既存チャプター全体を置き換え、文字起こし・話者・サマリーは変更しません。空配列でチャプターを解除できます。最大300件、タイトルは255文字まで、開始秒数は0以上・重複なしの昇順で指定し、長さが分かっているエピソードではその長さ未満にしてください。時刻は小数に対応し、上限は604800秒(7日)です。

文字起こしのないエピソードにも取り込めます。文字起こし行への対応付けは字幕がある場合に行い、RSS用チャプターには指定した開始秒数を保持します。認証・権限・入力不備のエラーは文字起こしAPIと同様です。

APIの呼び出し例

無料を含む全プランが対象です。文字起こしを新規作成する場合は 201、既存の場合は 200 を返します。401 は未認証、403 は権限不足、404 は対象なし、422 は入力不備、429 は回数制限です。

curl -X PUT "https://listen.style/api/v1/episodes/$EPISODE_ID/chapters" \
  -H "Authorization: Bearer $LISTEN_API_TOKEN" \
  -H 'Accept: application/json' -H 'Content-Type: application/json' \
  --data-binary @chapters.json

本文も取り込みたい場合は文字起こしのアップロードを利用してください。チャプターのJSONは既存形式の startTime を使用します。