{"openapi":"3.1.0","info":{"title":"Streaming Availability (BYOK) API","version":"0.1.0","description":"Streaming Availability (BYOK) lets an AI assistant read your own Streaming Availability data through the Streaming Availability API with a key you supply (Streaming Availability API key). Read-only: 7 tools (get_show, search_shows_by_title, search_shows_by_filters, get_top_shows, list_changes, get_country, list_genres). The BYOK key travels with each request, is used for that one call only and is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-streamingavailability.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-streamingavailability/docs"},"termsOfService":"https://connectorbay.com/byok-streamingavailability/terms"},"servers":[{"url":"https://byok-streamingavailability.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-streamingavailability/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_show":{"post":{"operationId":"get_show","summary":"Get one movie or series by IMDb id (tt...), TMDB id (movie/123 or tv/123) or native id, with overview, genres, cast, rat","description":"Get one movie or series by IMDb id (tt...), TMDB id (movie/123 or tv/123) or native id, with overview, genres, cast, rating and where it streams. Use for \"Where can I stream The Godfather (tt0068646) in the US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"show_id":{"description":"IMDb id such as 'tt0068646', TMDB id such as 'movie/238' or 'tv/1396', or the API's own id.","maxLength":200,"title":"Show Id","type":"string"},"country":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"description":"Optional country code (for example 'us'); when given, only that country's streaming options are returned and the answer is much shorter.","title":"Country"},"series_granularity":{"anyOf":[{"enum":["show","season","episode"],"type":"string"},{"type":"null"}],"default":"show","description":"Detail for series: show (no season or episode data, shortest), season, or episode.","title":"Series Granularity"}},"required":["show_id"],"title":"get_showArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_shows_by_title":{"post":{"operationId":"search_shows_by_title","summary":"Search movies and series by title phrase for one country; returns up to 20 matches with streaming options for that count","description":"Search movies and series by title phrase for one country; returns up to 20 matches with streaming options for that country. Use for \"Is Batman available to stream in Canada\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"title":{"description":"Title phrase to search for.","maxLength":200,"title":"Title","type":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code in lower case, for example 'us' or 'gb'.","maxLength":2,"title":"Country","type":"string"},"show_type":{"anyOf":[{"enum":["movie","series"],"type":"string"},{"type":"null"}],"default":null,"description":"Only movies or only series; leave out for both.","title":"Show Type"},"series_granularity":{"anyOf":[{"enum":["show","season","episode"],"type":"string"},{"type":"null"}],"default":"show","description":"Detail for series: show (no season or episode data, shortest), season, or episode.","title":"Series Granularity"}},"required":["title","country"],"title":"search_shows_by_titleArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_shows_by_filters":{"post":{"operationId":"search_shows_by_filters","summary":"Search a country's streaming catalogs by service, genre, release years, rating and keyword; 10 to 20 results per page wi","description":"Search a country's streaming catalogs by service, genre, release years, rating and keyword; 10 to 20 results per page with a cursor for the next page. Use for \"Find zombie movies on Netflix US released after 2010\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"description":"ISO 3166-1 alpha-2 country code in lower case, for example 'us' or 'gb'.","maxLength":2,"title":"Country","type":"string"},"catalogs":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated service ids, up to 32, for example 'netflix,prime'. Add a type with a dot (for example 'peacock.free' or 'prime.rent'). Leave out to search all services.","title":"Catalogs"},"show_type":{"anyOf":[{"enum":["movie","series"],"type":"string"},{"type":"null"}],"default":null,"description":"Only movies or only series; leave out for both.","title":"Show Type"},"genres":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated genre ids from list_genres, for example 'horror,comedy'.","title":"Genres"},"genres_relation":{"anyOf":[{"enum":["and","or"],"type":"string"},{"type":"null"}],"default":"and","description":"With several genres: 'and' requires all, 'or' accepts any.","title":"Genres Relation"},"show_original_language":{"anyOf":[{"maxLength":5,"type":"string"},{"type":"null"}],"default":null,"description":"Only shows whose original language is this ISO 639-1 code.","title":"Show Original Language"},"year_min":{"anyOf":[{"maximum":2100,"minimum":1880,"type":"integer"},{"type":"null"}],"default":null,"description":"Earliest release or air year.","title":"Year Min"},"year_max":{"anyOf":[{"maximum":2100,"minimum":1880,"type":"integer"},{"type":"null"}],"default":null,"description":"Latest release or air year.","title":"Year Max"},"rating_min":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Minimum rating from 0 to 100.","title":"Rating Min"},"rating_max":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum rating from 0 to 100.","title":"Rating Max"},"keyword":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Keyword that must appear in the title or overview.","title":"Keyword"},"series_granularity":{"anyOf":[{"enum":["show","season","episode"],"type":"string"},{"type":"null"}],"default":"show","description":"Detail for series: show (no season or episode data, shortest), season, or episode.","title":"Series Granularity"},"cursor":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"The nextCursor value from the previous answer, to get the next page.","title":"Cursor"}},"required":["country"],"title":"search_shows_by_filtersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_top_shows":{"post":{"operationId":"get_top_shows","summary":"Get the streaming service's own top list for a country (supported: netflix, prime, disney, apple, hbo, crunchyroll, crav","description":"Get the streaming service's own top list for a country (supported: netflix, prime, disney, apple, hbo, crunchyroll, crave, hulu). Use for \"What are the top series on Netflix US right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"description":"ISO 3166-1 alpha-2 country code in lower case, for example 'us' or 'gb'.","maxLength":2,"title":"Country","type":"string"},"service":{"description":"Service id such as 'netflix', 'prime', 'disney', 'apple', 'hbo', 'crunchyroll', 'crave' or 'hulu'.","maxLength":30,"title":"Service","type":"string"},"show_type":{"anyOf":[{"enum":["movie","series"],"type":"string"},{"type":"null"}],"default":null,"description":"Only movies or only series; leave out for both.","title":"Show Type"}},"required":["country","service"],"title":"get_top_showsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_changes":{"post":{"operationId":"list_changes","summary":"List recent or upcoming catalog changes (new, removed, updated, expiring, upcoming) for a country and services, 25 per p","description":"List recent or upcoming catalog changes (new, removed, updated, expiring, upcoming) for a country and services, 25 per page, with the affected shows. Use for \"What is expiring on Netflix US soon\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"description":"ISO 3166-1 alpha-2 country code in lower case, for example 'us' or 'gb'.","maxLength":2,"title":"Country","type":"string"},"change_type":{"description":"Kind of change: new, removed, updated, expiring or upcoming.","enum":["new","removed","updated","expiring","upcoming"],"title":"Change Type","type":"string"},"item_type":{"description":"What changed: show, season or episode.","enum":["show","season","episode"],"title":"Item Type","type":"string"},"catalogs":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated service ids, for example 'netflix,prime'. Leave out for all services.","title":"Catalogs"},"show_type":{"anyOf":[{"enum":["movie","series"],"type":"string"},{"type":"null"}],"default":null,"description":"Only movies or only series; leave out for both.","title":"Show Type"},"cursor":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"The nextCursor value from the previous answer, to get the next page.","title":"Cursor"}},"required":["country","change_type","item_type"],"title":"list_changesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_country":{"post":{"operationId":"get_country","summary":"Get one country with the streaming services it supports (ids, names, supported streaming types and addons). Use for \"Whi","description":"Get one country with the streaming services it supports (ids, names, supported streaming types and addons). Use for \"Which streaming services does the API cover in Germany\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country_code":{"description":"ISO 3166-1 alpha-2 country code in lower case, for example 'de'.","maxLength":200,"title":"Country Code","type":"string"}},"required":["country_code"],"title":"get_countryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_genres":{"post":{"operationId":"list_genres","summary":"List the genres usable in filters, with their ids and names. Use for \"What genre ids can I filter by\".","description":"List the genres usable in filters, with their ids and names. Use for \"What genre ids can I filter by\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_genresArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}