總覽快速入門API 參考文件價格變更紀錄服務狀態取得 API 金鑰
開發者快速入門API 參考文件主控台價格API 變更紀錄服務狀態
探索電影電視節目幫助服務條款隱私權政策取得應用程式Cookie 政策價格退款與取消可接受使用政策版權方服務狀態查詢下架通知新動態
·

© 2026 Wambesha

v0.110.0
總覽

Discovery

  • SearchGET
  • DiscoverGET
  • LookupGET
  • GenresGET
  • Similar titlesGET

Titles

  • Batch titlesGET
  • Title recordGET
  • SeasonsGET
  • EpisodesGET
  • CreditsGET
  • ImagesGET
  • Where a title is heldGET

People

  • PersonGET
  • FilmographyGET

Changes

  • Change feedGET
  • ChangelogGET

Account

  • Plan and usageGET
  • Usage historyGET
  • Recent requestsGET
  • KeysGET
  • Rotate keyPOST

共 21 個端點,顯示 21 個

API 參考文件僅提供英文版。

Discovery/discover

GET/v1/discover

僅計入呼叫配額游標分頁

Browse the catalogue by genre, year range, country, type and minimum rating, in one of four fixed sort orders. Returns title ids. Spends no verification.

參數

  • genrestring[]選填

    A genre slug from /v1/genres. Repeat to require several (ANDed).

    更多⌄

    Repeatable. Multiple genres are ANDed.

  • year_frominteger選填

    Earliest release year, inclusive, 1874-2200.

    更多⌄

    Inclusive lower bound of a RANGE. Supplying only one end is fine - the other is filled from the bounds below. An inverted range (year_from after year_to) is a 400, and so is a year outside 1874-2200.

  • year_tointeger選填

    Latest release year, inclusive, 1874-2200; not before year_from.

    更多⌄

    Inclusive upper bound of the same range. See year_from.

  • countrystring[]選填

    A production country code. Repeat for several (any of them).

    更多⌄

    Only titles produced in this country, given as the country code the title record's countries field uses. Repeatable; several match ANY of them. An unknown code matches nothing rather than failing.

  • typemovie | tv_movie | short | series | mini_series | special選填預設值:all types

    One title type, e.g. movie. Omit for every type.

    更多⌄

    One title type. Omit for every type. Case-insensitive; shown here in lowercase. An unlisted value is a 400 naming these.

  • min_ratingstring選填

    Lowest aggregate rating, 0-10. Decimals allowed.

    更多⌄

    Only titles whose aggregate rating is at least this value, on a 0-10 scale; decimals allowed (7.5). Anything else is a 400 naming the field min_rating.

  • sortnewest | rating | popularity | alphabetical選填預設值:popularity

    newest, rating, popularity (default) or alphabetical.

    更多⌄

    One of newest, rating, popularity, alphabetical. Each carries a fixed direction; there is no descending form, and a leading minus is a 400 rather than an order this API cannot actually produce. An unrecognised token is a 400 naming the accepted set. Case-insensitive; shown here in lowercase.

  • languagestring選填

    Response language, a supported BCP-47 tag. Default en. Not an original-language filter.

    更多⌄

    A supported BCP-47 tag. Defaults to en. An UNSUPPORTED tag is a 400 naming the accepted set, never a silent fallback - the catalogue stores match the 17 tags as exact strings, so degrading would answer an empty 200 that an integrator would ship before noticing.

  • limitinteger選填預設值:20

    Ids per page, 1-50. Default 20.

    更多⌄

    Out of range is a 400, never a silent clamp - silent clamping hides client bugs until they surface as a support ticket.

  • cursorstring選填

    The previous page's next_cursor. Bound to every filter and the sort.

    更多⌄

    Opaque and FILTER-BOUND. Replaying a cursor after any filter changes is a 400 CURSOR_INVALID, never a silently wrong page.

回應欄位

  • itemsstring[]
  • next_cursorstring可為 null
  • totalinteger · int64可為 null

    How many items the query matches in total, when that is known. Null when it is not known; it is never an estimate.

回應標頭

  • X-Request-ID

    The id of this request, on every response - success or error. Quote it to support: it is how we find your request in our logs. An X-Request-ID you send is honoured and echoed back, so you can use your own; otherwise we generate one. /v1 error bodies carry no trace id of their own.

  • X-Quota-Reset

    RFC 3339 instant at which the billing period rolls. Present on every response to a request whose key was metered - every 2xx, every error a handler returned, and the quota 429. Absent on a refusal that happens before metering: a missing or unknown key (401), a restricted key or a plan that does not carry the endpoint (403), a public demo-key gate refusal, and the pre-authentication flood throttle.

  • X-Calls-Remaining

    Requests left in the period after this one, never below 0. Present whenever X-Quota-Reset is (see there for when a response carries no quota headers).

  • X-Verifications-Remaining

    How many verifications you can still make before a limit stops you. The daily limit and the monthly allowance are counted separately; this is whichever of the two runs out first. Sent whenever X-Quota-Reset is.

  • X-Quota-Grace

    true when THIS request fell inside the 10% grace band above a monthly ceiling. A grace request is served and is not billed; treat true as "back off now", not as headroom. Always true or false, never absent when the other quota headers are present.

  • Retry-After429

    Seconds to wait before retrying. On every 429 - the quota hard stop, the public demo key's limits, and the pre-authentication flood throttle (which carries this header alone, because no key has been read yet).

  • X-Demo-Challenge-Mode僅限示範金鑰

    Sent only on responses to the public demo key. The value interactive asks the documentation page to show the visible verification widget - it is sent once a browser has made more than five runs in ten minutes or has received a 429. The page then repeats the header, X-Demo-Challenge-Mode: interactive, on its next request, with the widget's token in X-Demo-Challenge. Requests made with your own key never receive it.

錯誤

  • validation-failed

  • validation-failed

  • validation-failed

  • validation-failed

  • validation-failed

  • validation-failed

  • cursor-invalid

  • cursor-invalid

  • cursor-invalid

  • validation-failed

  • unauthenticated

  • forbidden

  • plan-required

  • challenge-required

  • validation-failed

  • quota-exhausted

  • rate-limited

  • upstream-unavailable

詳細資料⌄

Spends no verification, for the same reason as search: the caller is querying the index, not asking us to confirm a page.

Unknown FACET VALUES are dropped rather than rejected, so a shared discover URL still works next month. A MALFORMED value is still a 400 - year_from=banana is not a stale facet value, it is a broken request.

上一個Search下一個Lookup

立即試用

正在載入示範金鑰…

A genre slug from /v1/genres. Repeat to require several (ANDed).

Earliest release year, inclusive, 1874-2200.

Latest release year, inclusive, 1874-2200; not before year_from.

A production country code. Repeat for several (any of them).

One title type, e.g. movie. Omit for every type.

Lowest aggregate rating, 0-10. Decimals allowed.

newest, rating, popularity (default) or alphabetical.

Response language, a supported BCP-47 tag. Default en. Not an original-language filter.

Ids per page, 1-50. Default 20.

curl "https://api.wambesha.com/v1/discover" \
  -H "Authorization: Bearer YOUR_API_KEY"

範例

{
  "items": [
    "sr_Q91QNGVMFW",
    "mv_QZVKC8WZVX"
  ],
  "next_cursor": "djF8MmU3NzkzYmYwNTU3M2Y4Znxwb3B1bGFyaXR5fDI",
  "total": 6
}