Genel bakışHızlı başlangıçAPI referansıFiyatlandırmaDeğişiklik günlüğüDurumAPI anahtarı alın
GeliştiricilerHızlı başlangıçAPI referansıKonsolFiyatlandırmaAPI değişiklik günlüğüHizmet durumu
KeşfetFilmlerDizilerYardımHizmet ŞartlarıGizlilik PolitikasıUygulamayı edininÇerez PolitikasıFiyatlandırmaİade ve İptalKabul Edilebilir Kullanım PolitikasıHak sahipleriHizmet durumuKaldırma bildirimini sorgulayınYenilikler
·

© 2026 Wambesha

v0.110.0
Genel bakış

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 uç noktadan 21 tanesi

API referansı yalnızca İngilizce olarak hazırlanmıştır.

Discovery/search

GET/v1/search

Yalnızca çağrı kotasıİmleçle sayfalanır

Relevance search across titles and people. Every response carries a titles list and a people list, and the two page separately. Spends no verification.

Parametreler

  • qstringzorunlu

    The search text. Required, at least 2 characters.

    Daha fazla⌄

    Minimum two characters. A shorter query is a 400 rather than a false "no results".

  • typeall | movie | tv_movie | short | series | mini_series | season | episode | special | personisteğe bağlıvarsayılan: all

    all (default), person for people only, or one title type.

    Daha fazla⌄

    Narrows the titles list to one type. person returns people only. Without it, or with all, you get both lists. Any other type narrows titles and still returns matching people. Case-insensitive; shown here in lowercase. An unlisted value is a 400 naming these.

  • yearintegeristeğe bağlı

    A release year. Narrows titles to that year; people are unaffected.

    Daha fazla⌄

    Only titles released in this year. An integer; people results are not affected.

  • languagestringisteğe bağlı

    Response language, a supported BCP-47 tag. Default en.

    Daha fazla⌄

    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.

  • limitintegeristeğe bağlıvarsayılan: 20

    Results per list, 1-50. Default 20.

    Daha fazla⌄

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

  • cursorstringisteğe bağlı

    The title list's next_cursor from the previous page. Bound to the same filters.

    Daha fazla⌄

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

  • people_cursorstringisteğe bağlı

    The people list's next_cursor. Pages independently of cursor.

    Daha fazla⌄

    Advances the PEOPLE list. The two lists page independently - see the response schema.

Yanıt alanları

  • querystring

    The query as it was searched, which can differ from what was sent (a leading article is removed, for example). When you show "results for ...", show this value.

  • titlesobject · TitleHitPage

    A cursor-paginated list. next_cursor is null on the last page, and only there - it is never an empty string and never omitted. The last page carries its items together with the null cursor, so you can stop as soon as you see it, without requesting an empty page.

  • peopleobject · PersonHitPage

    A cursor-paginated list. next_cursor is null on the last page, and only there - it is never an empty string and never omitted. The last page carries its items together with the null cursor, so you can stop as soon as you see it, without requesting an empty page.

  • languagestring

Yanıt başlıkları

  • 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-ModeYalnızca demo anahtarıyla

    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.

Hatalar

  • 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

Ayrıntılar⌄

Relevance search across titles and people.

Spends no verification. The caller is querying the index, not asking us to confirm a page - a verification is a statement that we checked a specific work is available from a specific place, right now, and ranking rows against a query is not that.

SonrakiDiscover

Deneyin

Demo anahtarı yükleniyor…

The search text. Required, at least 2 characters.

all (default), person for people only, or one title type.

A release year. Narrows titles to that year; people are unaffected.

Response language, a supported BCP-47 tag. Default en.

Results per list, 1-50. Default 20.

curl "https://api.wambesha.com/v1/search?q=gladiator" \
  -H "Authorization: Bearer YOUR_API_KEY"

Örnek

{
  "query": "gladiator",
  "titles": {
    "items": [
      {
        "id": "mv_3RGB99HMTQ",
        "type": "movie",
        "title": "Gladiator II",
        "year": 2024,
        "genres": [
          "Action",
          "Adventure"
        ],
        "synopsis": "Years after witnessing the death of the revered hero Maximus at the hands of his uncle, Lucius is forced to enter the Colosseum after his home is conquered...",
        "matched_aka": null
      }
    ],
    "next_cursor": null,
    "total": 1
  },
  "people": {
    "items": [
      {
        "id": "pn_SKW629DDD9",
        "name": "Aurélia Agel",
        "credit_count": 2
      },
      {
        "id": "pn_8QVK5774WN",
        "name": "Genadiy Ganchev",
        "credit_count": 2
      }
    ],
    "next_cursor": "djF8ZGI2YjE0MDY5NTNhZjg5OHxyZWxldmFuY2VfcGVvcGxlfDI",
    "total": 369
  },
  "language": "en"
}