カタログAPI

組織に表示されるNUのタイトルとエピソードを参照します。catalog:readが必要です。カタログは、要求した地域・言語に一致するclearまたはrestrictedの権利パッケージに裏付けられたタイトルだけを返します。

エンドポイント

メソッドパス用途
GET/catalog/titles利用可能なタイトルをフィルターとページネーション付きで一覧表示します。
GET/catalog/titles/{title_id}権利の利用可否を含むタイトル詳細です。
GET/catalog/titles/{title_id}/episodesタイトルのエピソードです。

タイトル一覧

フィルター

クエリ型備考
genrestringジャンルで絞り込み
territorystringISO 3166-1 alpha-2
languagestringISO 639-1
formatstring例: series、film
resale_allowedboolean再販売を許可するタイトルのみ
exclusive_availableboolean独占利用が可能なタイトルのみ
pageinteger既定1、最小1
limitinteger既定20、最大100
cursorstring不透明カーソル。指定するとpageは無視されます

ページネーション

2つのモードはpaginationエンベロープを共有します。単純なページングにはpage/limit、大きな結果の安定した前方反復にはnext_cursorを使います。cursor指定時はpageが無視されます。

curl "https://signal-partners.newunivers.ai/v1/catalog/titles?territory=KR&genre=drama&limit=20" \
  -H "Authorization: Bearer nsp_live_xxx" \
  -H "X-NU-Partner-Id: org_acme"
{
  "data": [
    {
      "title_id": "ttl_abc",
      "slug": "signal-city",
      "title": "Signal City",
      "title_en": "Signal City",
      "format": "series",
      "genres": ["drama", "thriller"],
      "episode_count": 12,
      "avg_duration_sec": 3600,
      "available_territories": ["KR", "JP"],
      "available_languages": ["ko", "en"],
      "resale_allowed": true,
      "exclusive_available": false,
      "license_status": "available"
    }
  ],
  "pagination": { "page": 1, "limit": 20, "total": 87, "has_next": true, "next_cursor": "eyJpZCI6InR0bF9hYmMifQ" }
}

カーソルをたどる:

curl "https://signal-partners.newunivers.ai/v1/catalog/titles?cursor=eyJpZCI6InR0bF9hYmMifQ&limit=20" \
  -H "Authorization: Bearer nsp_live_xxx" -H "X-NU-Partner-Id: org_acme"

タイトル詳細

GET /catalog/titles/{title_id}は要約フィールドに加えてlogline、synopsis、original_language、rightsオブジェクトを返します。組織に表示されない場合は404 resource_not_foundを返します。

権利利用可否フィールド(rights)

フィールド意味
available_territories / available_languagesライセンス可能な地域と対象
resale_allowed, exclusive_available商用オプション
rights_statusclearまたはrestricted
risk_level権利リスク指標(小文字、例: low、medium)
{
  "data": {
    "title_id": "ttl_abc",
    "slug": "signal-city",
    "title": "Signal City",
    "title_en": "Signal City",
    "logline": "A detective decodes a city that talks back.",
    "synopsis": "...",
    "format": "series",
    "genres": ["drama", "thriller"],
    "episode_count": 12,
    "avg_duration_sec": 3600,
    "original_language": "ko",
    "rights": {
      "available_territories": ["KR", "JP"],
      "available_languages": ["ko", "en"],
      "resale_allowed": true,
      "exclusive_available": false,
      "rights_status": "clear",
      "risk_level": "low"
    }
  }
}

エピソード

curl "https://signal-partners.newunivers.ai/v1/catalog/titles/ttl_abc/episodes" \
  -H "Authorization: Bearer nsp_live_xxx" -H "X-NU-Partner-Id: org_acme"
{
  "data": [
    { "episode_id": "ep_001", "episode_no": 1, "name": "Pilot", "duration_sec": 3480, "free_preview": true }
  ]
}

title_idとepisode_idで見積もり(ライセンスAPI)または再生トークン(再生API)を要求します。