サポート サポート問い合わせ先 | システムステータス システムステータス

概要: CMS API

このトピックでは、 CMS API CMS API データへのキャッシュされていない読み取りアクセスを提供します。 これは時間の影響を受けやすいパブリッシングワークフローにとって重要です。これは、 CMS API データをすばやく読み取って正しいことを確認します。

APIリファレンス

また、 APIリファレンス.

一般情報

ベースURL

そのベースURL CMS API 次のとおりです。

        https://cms.api.brightcove.com/v1

アカウントパス

すべての場合において、要求は特定の Video Cloud アカウント。 だから、あなたはいつもその言葉を追加するでしょう accounts アカウントIDをベースURLに続けて入力します。

        https://cms.api.brightcove.com/v1/accounts/{account_id}

認証

要求の認証には、 Authorization header :

        Authorization: Bearer {access_token}

挽き目 access_token は、一時的なOAuth2アクセストークンです。 Brightcove OAuth サービス。 詳細については、 Brightcove OAuth の概要.

クライアント資格情報を作成する最も簡単な方法は、Brightcove Studio管理ページを使用することです。 詳細な手順については、 API認証資格情報の管理

使用方式

クライアント資格情報を要求するときは、必要なアカウントアクセスの種類を指定する必要があります。 以下は、現在サポートされている操作のリストです。 CMS API :

  • ビデオデータ:

    video-cloud/video/read
    video-cloud/video/create
    video-cloud/video/update
    video-cloud/video/delete
    or
    video-cloud/video/all
    video-cloud/video/assets/delete (デジタルマスターを削除する場合にのみ必要です。 削除されたデジタルマスターを復元することはできません Studioで資格情報を作成するときにこの権限を取得します。 それは OAuth API または Brightcove Learning Servicesによって作成されたサンプルアプリ.)

  • プレイリストデータ:

    video-cloud/playlist/read
    video-cloud/playlist/create
    video-cloud/playlist/update
    video-cloud/playlist/delete
    or
    video-cloud/playlist/all

  • 通知:

レート制限

この CMS API データへのキャッシュされていない読み取りアクセスを提供します。 これは時間の影響を受けやすいパブリッシングワークフローにとって重要です。これは、 CMS API データをすばやく読み取って正しいことを確認します。

挽き目 CMS API (トラフィックの多いパブリックWebページ上のビデオにアクセスするなど)、高ランタイムの使用には適していません。 トラフィックの多いアプリケーションの場合は、次のようなキャッシュされたインターフェイスを使用する必要があります。 Playback API , Gallery, Players、またはネイティブSDK。

パフォーマンスを確実にするには Video Cloud システムへの20並行コール CMS API アカウントごとに許可されます。 アクセス頻度は、1秒あたりの10リクエスト数より少なくする必要があります。

複数のアプリケーションが CMS API これらのアプリケーションでは、並行処理の制限またはレート制限に達するインスタンスを処理するバックオフと再試行のロジックが必要です。

レートまたは並行制限のいずれかを超えると、 429 - TOO_MANY_REQUESTS エラーが返されます。

参照IDの競合

参照IDの一意性を保証するために、 CMS API 割り当てられている動画に対する操作後、最大3分間IDをロックします。 このため、失敗した要求をすばやく再試行しようとした場合、または以前に割り当てられていた動画を削除した後すぐに参照IDを再利用しようとした場合は、409エラーが返される可能性があります。 を参照してください エラーメッセージリファレンス 詳細はこちら

動画アセットの上限

動画ごとに1,000個のアセットの上限があります。 アセットには、レンディション、オーディオトラック、テキストトラック、イメージ、およびデジタルマスターが含まれます。 レンディションや画像は、10-15アセット以上のものはほとんどありません。そのため、150の異なる言語用のオーディオトラックとテキストトラックを別々にしても、350アセット数は残ります。

使用上の注意

メソッド

現在、APIは次の要求タイプをサポートしています。

  • GET
  • POST
  • PATCH
  • PUT
  • DELETE

パラメーター

すべてのパラメータは 任意。 特に明記されている場合を除き、 GET 動画や再生リストのリクエスト

GET要求パラメータ
パラメーター 説明
q 検索クエリ文字列 - 参照 検索構文 詳しく知る
limit 返されるビデオの数 - 1と100の間の整数でなければなりません。 デフォルト:20
offset スキップするビデオの数(ページング結果用)。 正の整数でなければなりません。 デフォルト:0
sort 並べ替えるフィールドを指定する文字列。 皮切りに - 降順をソートする。 値の場合 q が提供されている場合、デフォルトのソートは「スコア」(検索結果と元のクエリの関連性)です。 値がない場合 q が提供されている場合、デフォルトのソートは updated_at 降順。 ソートには次のフィールドが有効です。 name, reference_id, created_at, published_at, updated_at, schedule_starts_at, schedule_ends_at, state, plays_totalおよび plays_trailing_week

ブライトコーブ CMS API プログラム内で動画を検索する方法を提供します Video Cloud としょうかん。

ビデオデータの基本的な検索や複雑な検索を行うには、 q パラメータ:

        https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q={search terms}

動画の検索方法の詳細については、 検索動画 の資料をご参照ください。

プレイリストの場合、検索文字列でサポートされる値はより限定されています。 あなたは現在で検索することができます type, name, descriptionおよび reference_id。 いくつかの有効な検索の例を次に示します。

  • q=type:EXPLICIT
  • q=type:ACTIVATED_OLDEST_TO_NEWEST
  • q=type:ALPHABETICAL
  • q=bears+otters (名前、説明、または参照IDに "bears"または "oter"のいずれかが含まれている必要があります)
  • q=%2Bname:bears+type:EXPLICIT (名前には「クマ」が含まれている必要があります)

見る プレイリストを検索 詳細はこちら

ページング結果

使用 limit 100までのリクエストで返すアイテムの数を指定するパラメータ。 その後、 offset パラメータよりも大きい結果セットをページする limit offset スキップする項目の数です。

たとえば、次の検索では、合計結果セットに少なくとも51ビデオがあると仮定して、合計結果セットのビデオ75-75が返されます。

        /videos?q=updated_at:2014-01-01..2014-06-30&limit=25&offset=50

挽き目 limitoffset パラメータは動画と再生リストの両方に使用できます。

ページングのベストプラクティス

同時の変更操作が CMS API結果セットをページングするときは、次の手順を実行することをお勧めします。

  1. 作る count 結果セット内のビデオの総数を取得するようリクエストします。
          /accounts/578380111111/counts/videos?q=tags:nature
  2. 使用 limit offset 結果セットからデータのグループを戻すためのパラメーター。
          /accounts/578380111111/videos?q=tags:nature&limit=20&offset=50
  3. 一部のページには20個の動画が含まれていない場合があります。 結果セットの最後に達したことがわかります。最初の count 要求。

要約すると、元のビデオ数になるまでページを取得し続ける count この数字は過大評価の面で誤っているはずです。 求める:

      count / page-size + 1 page

動画の結果を並べ替える

パラメータを使用する sort=field_name 結果をソートする方法を指定するために、ビデオとプレイリストの両方を並べ替えることができます。 次のビデオフィールドを並べ替えることができます: [1-1]

  • name
  • reference_id
  • created_at
  • published_at
  • updated_at
  • schedule_starts_at (注:これは sort フィールド - 検索フィールドは schedule.starts_at )
  • schedule_ends_at (注:これは sort フィールド - 検索フィールドは schedule.ends_at )
  • state
  • plays_total [1-2]
  • plays_trailing_week [1-2]

ノート

  • [1-1] ビデオ検索呼び出しにソート値を指定しないと、結果は関連性によってソートされます。 ソート値を指定しないと GET ビデオが呼び出されると、結果は updated_at 降順。
  • [1-2] 並べ替えることができます plays_total or plays_trailing_weekこれらのフィールドは結果に含まれません

プレイリストの結果を並べ替える

次のフィールドでプレイリストを並べ替えることができます:

  • name
  • updated_at (デフォルト)

すべての動画と大きなデータセット

アカウント内のすべての動画や多数の動画を取得する場合は、次の点に注意する必要があります。

  1. 許可されている最大のものを使用するように誘惑されるかもしれません limit (100)ですが、25以下のバッチで動画を取得する方が、APIリクエストがタイムアウトする可能性を最小限に抑えることができます
  2. 大量のデータセットをページングしているとき、操作中にビデオデータが更新される可能性があります。そのため、アイテムのレスポンスが変化する可能性があります。
    • 連続したページで項目が繰り返されることがあります
    • 前の応答セットに移動したため、アイテムが見逃されることがあります

    最初の可能性を考慮すると、動画の取得が完了した後に、アプリは完全なアイテムリストを重複排除する必要があります。 2つ目の可能性を処理するには、取得した項目の総数(期待していた数)を比較し、次にリクエストを再実行し、結果をlast_modified_date(降順)でソートする必要があります。 1つ以上のバッチを取り出して欠落したアイテムを取り出す。

  3. 返された結果を適切にソートすることで、前の項目のシナリオの可能性を減らすことができます。 デフォルトのソート順は 関連性 キーワード、タグ、およびカスタムフィールド値の組み合わせを探す複雑なアルゴリズムに基づいています。 複数のキーワード、タグ、および/またはカスタムフィールドに基づいて動画を検索している場合、関連性によるソートはまさにあなたが望むものです。 ただし、すべての動画や大量の動画を取得しようとしているだけの場合は、 sort パラメータを明示的に指定すると、返される項目の順序をより詳細に制御できます。

ビデオ操作

ビデオ操作には以下が含まれます:

  • 動画や検索結果の数を取得する
  • すべてのビデオを取得する
  • IDまたは参照IDで1つまたは複数の動画を取得する
  • 動画の作成、取得、更新、削除
  • 動画を検索する
  • ビデオソース、画像、デジタルマスタ情報を取得する
  • 動画が属するプレイリストを取得する
  • すべてのプレイリストからビデオを削除する

ビデオ操作の詳細については、 APIリファレンス.

プレイリスト操作

プレイリストの操作には、

  • 再生リストの数を取得する
  • すべてのプレイリストを取得する
  • プレイリストの作成、更新、削除
  • プレイリスト内の動画の数を取得する
  • 再生リストに動画を表示する

プレイリスト操作の詳細は、 APIリファレンス.

資産

アセット操作では、レンディション、マニフェスト、イメージ、テキストトラックなどのアセットを管理できます。 アセットを取り込むには、 Dynamic Ingest API POSTPATCH のための操作 CMS API /assets 追加と更新に使用できます リモートアセット. CMS API GET操作は どちらも 摂取されたリモート資産。

  • レンディションの追加、更新、または削除
  • デジタルマスターのメタデータの追加、更新、または削除
  • HLSなどのセグメント化されたビデオタイプのマニフェストの追加、更新、または削除
  • ポスターとサムネイル画像の追加、更新、削除
  • WebVTTテキストトラックまたはDFXPキャプションの追加、更新、または削除

資産運用の詳細については、 APIリファレンス.

カスタムフィールド操作

現在、カスタムフィールド操作が1つあります。

  • アカウントのすべてのカスタムフィールドを取得する

カスタムフィールド操作の詳細については、 APIリファレンス.

フォルダ操作

フォルダ操作を使用すると、

  • フォルダのリストを取得する
  • フォルダの作成、更新、および削除
  • フォルダ内の動画のリストを取得する
  • フォルダにビデオを追加する
  • フォルダからビデオを削除する

フォルダ操作の詳細は、 APIリファレンス.

お知らせ

いつ通知を受け取ることができますか? video_change ビデオライブラリでイベントが発生します。 指定したURLに通知が送信されます。このURLは、処理可能なアプリケーションを指している必要があります HTTP POST リクエスト。

通知の失敗

通知システムは、顧客サーバからの4xxまたは5xxリターンを再試行可能な障害として扱います。 失敗したコールバックは20回まで再試行され、後続のコールバック間では指数関数的に遅延が増加します。 最初の数回の再試行は、最初のコールバック試行の数分以内に行われます。 コールバックが失敗し続けていて、20thの再試行までになった場合、再試行の遅​​延は数日になります。

ファイアウォール

ファイアウォールを通過するトラフィックのソースに関する厳しいポリシーが組織にある場合は、すべてのAWS East地域のIPを許可します。 これは変更される可能性があるため、すべてのAWS IPをホワイトリストに登録する必要があります。 見る https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html 詳細については。

通知操作

現在、通知に使用できる操作は次のとおりです。

  • 購読を作成する
  • 1つまたはすべての購読を取得する
  • サブスクリプションを削除する

通知操作の詳細は、 APIリファレンス.


ページの最終更新日:12年2020月XNUMX日