Captions: insert

字幕トラックをアップロードします。

このメソッドはメディア アップロードをサポートしています。アップロードするファイルには、以下の制約が適用されます。

  • 最大ファイルサイズ: 100 MB
  • 使用できるメディアの MIME タイプ: text/xmlapplication/octet-stream*/*

割り当てへの影響: このメソッドを呼び出すと、400 ユニットの割り当てコストが発生します。

一般的なユースケース

リクエスト

HTTP リクエスト

POST https://www.googleapis.com/upload/youtube/v3/captions

承認

このリクエストは、少なくとも次のうち 1 つのスコープでの承認が必要です(認証と承認の詳細をご確認ください)。

範囲
https://www.googleapis.com/auth/youtube.force-ssl
https://www.googleapis.com/auth/youtubepartner

パラメータ

次の表に、このクエリでサポートされているパラメータを示します。このリストのパラメータはすべてクエリ パラメータです。

パラメータ
必須パラメータ
part string
part パラメータには、API レスポンスに含める caption リソース パーツを指定します。パラメータ値を snippet に設定します。

パラメータ値に指定できる part の名前は次のとおりです。
  • id
  • snippet
オプション パラメータ
onBehalfOfContentOwner string
このパラメータは、適切に承認されたリクエストでのみ使用できます。注: このパラメータは YouTube コンテンツ パートナー専用です。

onBehalfOfContentOwner パラメータは、リクエストの認証情報が、パラメータ値で指定されたコンテンツ所有者の代理である YouTube CMS ユーザーを識別することを示します。このパラメータは、複数の YouTube チャンネルを所有、管理している YouTube コンテンツ パートナーを対象にしています。このパラメータを使用すると、コンテンツ所有者は一度認証されれば、すべての動画やチャンネル データにアクセスできるようになります。チャンネルごとに認証情報を指定する必要はありません。ユーザー認証に使用する実際の CMS アカウントは、指定された YouTube コンテンツ所有者にリンクされていなければなりません。
sync boolean
このパラメータは非推奨になりました。 sync パラメータは、字幕ファイルを動画の音声トラックと自動的に同期させるかどうかを示します。この値を true に設定すると、YouTube はアップロードされた字幕ファイルに含まれているタイムコードを無視し、字幕の新しいタイムコードを生成します。

タイムコードのない文字起こしをアップロードする場合、またはファイル内のタイムコードが間違っていると思われる場合に YouTube でタイムコードを修正したい場合は、sync パラメータを true に設定する必要があります。

リクエスト本文

リクエストの本文には字幕リソースを指定します。このリソースについて:

  • 以下のプロパティの値を指定する必要があります。

    • snippet.videoId
    • snippet.language
    • snippet.name

  • 以下のプロパティの値を設定することができます。

    • snippet.videoId
    • snippet.language
    • snippet.name
    • snippet.isDraft

レスポンス

成功すると、このメソッドはレスポンスの本文で字幕リソースを返します。

エラー

次の表に、このメソッドの呼び出しに対して API から返されるエラー メッセージを示します。詳細については、エラー メッセージのドキュメントを参照してください。

エラーのタイプ エラーの詳細 説明
badRequest (400) contentRequired リクエストに字幕トラックのコンテンツが含まれていません。
conflict (409) captionExists 指定した動画には、指定された snippet.languagesnippet.name の字幕トラックがすでに存在します。動画には同じ言語の複数のトラックを含めることができますが、トラックごとに異なる名前を指定する必要があります。

エラーへの対処方法は複数あります。既存のトラックを削除してから新しいトラックを挿入するか、新しいトラックの名前を変更してから挿入することができます。
forbidden (403) forbidden リクエストに関連付けられている権限では、字幕トラックをアップロードできません。リクエストが適切に認証されない可能性があります。
invalidValue (400) invalidMetadata リクエストに無効なメタデータ値が含まれているため、トラックを作成できません。リクエストで snippet.languagesnippet.namesnippet.videoId の各プロパティに有効な値が指定されていることを確認します。snippet.isDraft プロパティを含めることもできますが、必須ではありません。
notFound (404) videoNotFound videoId パラメータで特定される動画が見つかりませんでした。
invalidValue (400) nameTooLong リクエストで指定された snippet.name が長すぎます。サポートされる最大文字数は 150 文字です。

試してみよう:

APIs Explorer を使用してこの API を呼び出し、API のリクエストとレスポンスを確認します。