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

    概要: Social Syndication API

    Social Syndication API VideoCloudビデオカタログから動的フィード(MRSSフィードなど)を生成するためにシンジケーションを作成、管理、および使用できるようにするパブリックにアクセス可能なAPIです。

    このドキュメントでは

    関連文書

    賃貸システムの概要

    Brightcoveシンジケーション構成APIは、シンジケーションを作成、管理、および使用してダイナミックフィード(MRSSフィードなど)を生成できるようにするパブリックにアクセス可能なAPIです。 Video Cloud アカウントのビデオカタログ。

    関連もあります シンジケーションフィードAPI シンジケーションに関連付けられたフィードを取得するために使用できます。

    公開設定

    シンジケーションAPIはすべての人が利用できます Video Cloud プラットフォームAPIにアクセスできるお客様。

    APIリファレンス/ベースURL /ヘッダー

    設定APIリファレンス 使用可能な操作、フィールド、およびパラメーターに関するすべての詳細が含まれています。

    ベースURLは次のとおりです。

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

    すべてのリクエストは、Authorizationヘッダーを介して認証される必要があります。

    Authorization: Bearer {your_access_token}

    アクセストークンの詳細については、認証に関する次のセクションを参照してください。

    リクエスト本文を送信するリクエストの場合は、 Content-Type: application/json ヘッダ。

    認証

    構成APIにアクセスするには、 bearer からのトークン Brightcove OAuthサービス リクエストの Authorization ヘッダ。 さまざまなAPIメソッドでは、問題の資格情報に指定するために(アクセスするメソッドに応じて)次の操作のいずれかが必要です。

    • video-cloud/social/mrss/read
    • video-cloud/social/mrss/write

    これらの操作は、 Studio管理モジュールのAPI認証セクション:

    Social シンジケーション許可
    Social シンジケーション許可

    必要に応じて、 OAuth API:

    シンジケーションリソース

    シンジケーションリソースは、シンジケーションの作成方法を定義するオブジェクトです。 シンジケーションリソースを作成するためのサンプルのリクエスト本文は次のとおりです。

      {
        "name": "80s music videos syndication",
        "type": "advanced",
        "include_all_content": false,
        "include_filter": "tags:mytag",
        "title": "80s Music Videos",
        "description": "Amateur Tokyo drift!",
        "destination_url": "http://mywebsite.com",
        "keywords": "80s, rock",
        "author": "Rick Astley",
        "category": "Music",
        "album_art_url": "http://my_album_art.jpg",
        "explicit": "no",
        "owner_name": "http://my_album_art.jpg",
        "owner_email": "rick@astley.com",
        "language": "en-us",
        "fetch_sources": true,
        "fetch_digital_master": false,
        "fetch_dynamic_renditions": true,
        "sort": "-created_at",
        "content_type_header": "application/xml"
      }

    応答はいくつかの読み取り専用フィールドを追加します:

      {
        "id": "7f594cd3-4853-4174-aff3-203c3e99e9c2",
        "name": "80s music videos syndication",
        "type": "advanced",
        "include_all_content": false,
        "include_filter": "tags:mytag",
        "title": "80s Music Videos",
        "description": "Amateur Tokyo drift!",
        "syndication_url": "https://social.feeds.brightcove.com/v1/accounts/9999999999999/mrss/accounts/{account_id}/mrss/syndications/7f594cd3-4853-4174-aff3-203c3e99e9c2/feed",
        "destination_url": "http://mywebsite.com",
        "keywords": "80s, rock",
        "author": "Rick Astley",
        "category": "Music",
        "album_art_url": "http://my_album_art.jpg",
        "explicit": "no",
        "owner_name": "http://my_album_art.jpg",
        "owner_email": "rick@astley.com",
        "language": "en-us",
        "fetch_sources": true,
        "fetch_digital_master": false,
        "fetch_dynamic_renditions": true,
        "sort": "-created_at",
        "content_type_header": "application/xml"
        }
    シンジケーションリソース
    フィールド 種類 読み取り専用 説明
    id 文字列 はい シンジケーションの作成時に生成されます
    name 文字列 いいえ このシンジケーションの内部名-POSTリクエストに必要
    content_type_header 文字列 いいえ 設定されている場合、このシンジケーションのフィードに対してフィードサーバーから返されたContent-Typeヘッダーをオーバーライドします。 それ以外の場合、フィードはデフォルトでシンジケーションタイプ固有のヘッダー値になります
    include_all_content ブーリアン いいえ trueの場合、すべてのカタログ動画がこのシンジケーションに含まれています
    include_filter 文字列 いいえ include_all_contentがfalseの場合は指定する必要があります。 値は CMS API を使用した検索文字列 CMS API ビデオ検索構文v2。 すべての構文規則が適用されます-唯一の違いは、検索文字列が include_filter よりも価値 ?query= パラメータ。
    type 文字列 いいえ 生成されるフィードのタイプ。 ユニバーサルタイプでは、アップロードされたフィードテンプレートによってカスタムフィードを生成できます。 有効な値: advanced, google, iphone, ipad, mp4, itunes, roku, source, universal。 POSTリクエストに必要
    title 文字列 いいえ このフィードのタイトル。 これは、該当するフィードタイプの<channel>タグ内に含まれています
    description 文字列 いいえ このフィードの説明。 これは、該当するフィードタイプの<channel>タグ内に含まれています
    syndication_url 文字列 はい このシンジケーションのMRSSフィードのURL
    destination_url 文字列 いいえ 該当するフィードタイプの<channel>タグ内に含まれるURL
    keywords 文字列 いいえ カンマ区切りのリスト。iTunesと(潜在的に)ユニバーサルフィードにのみ使用されます
    author 文字列 いいえ iTunesと(場合によっては)ユニバーサルフィードにのみ使用されます
    owner_name 文字列 いいえ iTunesと(場合によっては)ユニバーサルフィードにのみ使用されます
    language 文字列 いいえ iTunesと(場合によっては)ユニバーサルフィードでのみ使用されます-小文字のXNUMX文字の言語コード。 "en"
    owner_email 文字列 いいえ iTunesと(場合によっては)ユニバーサルフィードにのみ使用されます
    category 文字列 いいえ iTunesと(場合によっては)ユニバーサルフィードにのみ使用されます。 サブカテゴリでカテゴリを指定するには、それらをコロン(:)で区切ります-例: "Business:Business News". "category": "Music"
    album_art_url 文字列 いいえ 画像のURL、iTunesと(場合によっては)ユニバーサルフィードにのみ使用されます
    fetch_sources ブーリアン いいえ ユニバーサルテンプレートの場合、ビデオソースメタデータをフェッチするかどうか-テンプレートがこのメタデータを必要としない場合、次のように指定することでパフォーマンスを向上できます false; 使用可能なソースが存在しない場合は空になる可能性があります
    fetch_digital_master ブーリアン いいえ ユニバーサルテンプレートの場合、ビデオデジタルマスターメタデータをフェッチするかどうか-テンプレートがこのメタデータを必要としない場合は、次のように指定することでパフォーマンスを向上できます false; デジタルマスターが存在しない場合は空である可能性があります
    fetch_dynamic_renditions ブーリアン いいえ ユニバーサルテンプレートの場合、ビデオの動的レンディションメタデータをフェッチするかどうか-テンプレートがこのメタデータを必要としない場合、次のように指定することでパフォーマンスを向上できます false
    sort 文字列 いいえ 必要なフィード結果の戻り順序を示すCMSビデオソート指定子。 CMSがサポートする値 name, reference_id, created_at, published_at, updated_at, schedule.starts_at, schedule.ends_at, state, plays_totalおよび plays_trailing_week 指定できます。 降順で並べ替えるには、値の前にマイナス(-)記号を付けます。 -created_at、指定、フィードは最新のものでソートされます updated_at デフォルトでは日付。

    見る CMS API ビデオ検索構文v2 詳細については include_filter プロパティ..すべての検索構文規則が適用されます-唯一の違いは、検索文字列が include_filter よりも価値 ?query= パラメータ。

    使用方式

    使用可能な操作の詳細については、APIリファレンスをご覧ください。

    次のアクションがサポートされています。

    エラーメッセージ

    APIリクエストが失敗した場合、エラーメッセージが返されます。 エラー応答は次のようになります。

      [
        {
          "error_code" : "Application error code 1",
          "message" : "Application error message 1"
        }, {
          "error_code" : "Application error code 2",
          "message" : "Application error message 2"
        }
      ]

    シンジケーションを作成する

    方法: POST

    終点: /accounts/{account_id}/mrss/syndications

    サンプルリクエスト本文:

      {
        "name": "my mp4 feed",
        "type": "mp4"
      }

    なお、 nametype フィールドは必須です。 その他はオプションです。

    シンジケーションを更新する

    方法: PATCH

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}

    サンプルリクエスト本文:

      {
        "name": "my new name"
      }

    PATCHリクエストのリクエスト本文は、 Studio上ではサポートされていません。 フィールドを含める(type, idsyndication_url).

    シンジケーションを削除する

    方法: DELETE

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}

    アカウントのすべてのシンジケーションを取得する

    方法: GET

    終点: /accounts/{account_id}/mrss/syndications

    特定のシンジケーションを取得する

    方法: GET

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}

    ユニバーサルシンジケーションのテンプレートを設定する

    方法: PUT

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}/template

    サンプルリクエスト本文:

      <feed header>My Feed Header</feed header>
      

    上記のテンプレートは、次のようなフィードを生成します。

      <feed header>My Feed Header</feed header>
        <item>
          <title>Title for Video 1</title>
          <video_info>Description for Video 1</video_info>
        </item>
        <item>
          <title>Title for Video 2</title>
          <video_info>Description for Video 2</video_info>
        </item>

    ユニバーサルシンジケーションのテンプレートを入手する

    方法: GET

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}/template

    シンジケーションに関連付けられたフィードを取得する

    フィードURLはシンジケーションのURLから取得できます syndication_url フィールド、または手動で作成。 注意してください シンジケーションフィードAPI 認証なしでフィードを取得するためにも使用できます。

    方法: GET

    終点: /accounts/{account_id}/mrss/syndications/{syndication_id}/feed

    ユニバーサルテンプレート言語

    ユニバーサルシンジケーションでは、カタログデータをカスタムテンプレートとマージして、必要なあらゆる種類のフィードを生成できます。 サポートされているテンプレート言語は 液体。 デフォルトのシンジケーションタイプのフィードは、同じタイプのテンプレートを使用して生成されます。 サンプルとして提供されるテンプレート 必要に応じてカスタムテンプレートを作成するのに役立ちます。

    以下のセクションでは、使用できるシンジケーション、アセット、ソース、およびデジタルマスタープロパティと、便宜のために追加されたLiquidの拡張機能について説明します。

    すべてを見るには Video Cloud ビデオメタデータフィールドと説明 CMS API ビデオフィールドリファレンス.

    トップレベルのプロパティ

    シンジケーションフィールドから派生

    • album_art_url
    • author
    • category
    • description
    • destination_url
    • explicit
    • keywords
    • name
    • owner_name
    • owner_email
    • subtitle
    • syndication_id
    • syndication_url
    • title

    Video Cloud アカウントID

    • account_id

    VideoCloudのデフォルト player ページのURL接頭辞

    このように使用してください:

      <media:player url="//default_default/index.html?videoId=">
    • player_url

    フィードの次のページのURL

    • next_page

    カタログから取得したビデオアセットのコレクション(詳細は下記を参照)

    • assets

    資産のプロパティ

    アセットコレクションのリソースは、CMS Get Videos APIメソッドによって返されるビデオリソースから派生し、同じプロパティのすべてがサポートされています。

    • created_at
    • description
    • duration
    • id
    • images
    • images.thumbnail
    • images.poster
    • long_description
    • name
    • original_filename
    • published_at
    • schedule
    • state
    • tags
    • text_tracks
    • updated_at

    アセットリソースは、次のプロパティもサポートします。

    • sources (ビデオのソースのコレクション-ソースプロパティについては次のセクションを参照してください)
    • digital_master (デジタルマスターが存在しない場合は空になります-デジタルマスターのプロパティについては以下を参照してください)
    • best_mp4_source (最高品質のMP4ソース-MP4ソースがない場合は空でもかまいません。プロパティは、 sources)
    • hls_source (HLSソースを返します-存在しない場合は空になります)
    • best_dynamic_rendition_quality (動画の動的レンディションメタデータがフェッチされている場合、最大のフレームサイズを持つ動画の動的レンディションの動画品質を返します。許容値は「SD」、「HD」、「FHD」、および「UHD」です。)

    ソースプロパティ

    アセットのsourcesコレクション内のリソースは、CMS Get Video Sources APIメソッドによって返されるビデオソースリソースから派生します。 次のプロパティがサポートされています。

    • app_name
    • asset_id
    • codec
    • container
    • created_at
    • duration
    • encoding_rate
    • height
    • size
    • src
    • stream_name
    • type
    • uploaded_at
    • width

    デジタルマスタープロパティ

    digital_master アセットのリソースは、CMS Get Digital Master Info APIメソッドによって返されるデジタルマスターリソースから派生します。 次のプロパティがサポートされています。

    • duration
    • encoding_rate
    • height
    • size
    • url
    • width

    動的レンディションプロパティ

    dynamic_renditions アセットのリソースは、CMS Get Digital Master Info APIメソッドによって返される動的レンディションから派生します。 次のプロパティがサポートされています。

    • rendition_id
    • frame_height
    • frame_width
    • media_type
    • encoding_rate
    • created_at
    • updated_at
    • size
    • duration
    • audio_configuration
    • language
    • variant

    Liquidへの拡張

    toUTCフィルター

    Liquidパーサーを拡張して、ほとんどの標準ISO-8601日時文字列形式を解析し、それらを標準UTC日時文字列に変換するtoUTCフィルターをサポートしました。 この形式はLiquidの日付フィルタで使用でき、タイムスタンプを任意の形式の日時文字列に再フォーマットするために使用できます。 例えば:

      <pubDate></pubDate>

    asset.published_atの値が2019-08-09T13:32:52.031Z:の場合、次のような出力が生成されます。

      <pubDate>Fri, 09 Aug 2019 09:32:52 +0000</pubDate>

    toEpochフィルター

    使用するLiquidパーサーは、日付をUnixエポックタイムスタンプに変換するための日付フィルターの「%s」トークンをサポートしていません。 これに対処するために、有効な日付指定をエポック形式に変換するために使用できるtoEpochカスタムフィルターが提供されています。 フィルターは、数学フィルターへの入力に適したエポックからのミリ秒を表す数値データ値を返します。 例えば:

      <toEpochMillis>now</toEpochMillis>
      <toEpochSeconds>0</toEpochSeconds>
      <thirtyDaysAgo>-2592000000</thirtyDaysAgo>

    次のような出力が生成されます。

      <toEpochMillis>1580917253024</toEpochMillis>
      <toEpochSeconds>1580917253</toEpochSeconds>
      <thirtyDaysAgo>2020-01-06T15:40:53.055Z</thirtyDaysAgo>

    fromEpochフィルター

    fromEpochフィルターは、エポックからのミリ秒を表す数値をUTC日付文字列に変換します。 フィルターは、エポック値の数字を含む文字列も入力として受け入れます。 必要に応じて、出力を日付フィルターに渡して再フォーマットできます。

    例:

      
      <fromEpochMillis>now</fromEpochMillis>
      <thirtyDaysAgoAltFormat>52067-04-10</thirtyDaysAgo>
      

    次のような出力が生成されます。

      
      <fromEpochMillis>2020-02-05T16:09:37.809Z</fromEpochMillis>
      <thirtyDaysAgoAltFormat>2020-02-05</thirtyDaysAgo>

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