API метаданых фільмаў і серыялаў

Даныя пра фільмы і серыялы, сумяшчальныя з TMDB і OMDb

Тыя ж шляхі і JSON, што ў TMDB v3 і OMDb. Змяніце базавы URL, а код пакіньце.

BASE_URL
  • https://api.themoviedb.org/3
  • https://api.amodb.dev/3
  • https://www.omdbapi.com/
  • https://api.amodb.dev/omdb/

GEThttps://api.amodb.dev/3/movie/550?language=en-US

200 OKapplication/json1,7 kBЖывы адказ

{  "id": 550,  "imdb_id": "tt0137523",  "title": "Fight Club",  "tagline": "Mischief. Mayhem. Soap.",  "release_date": "1999-10-15",  "runtime": 139,  "status": "Released",  "genres": [{ "id": 18, "name": "Drama" }, { "id": 53, "name": "Thriller" }],  "origin_country": ["US", "DE"],  "original_language": "en",  "budget": 63000000,  "revenue": 101209702,  "vote_average": 8.437,  "vote_count": 33042,  "popularity": 39.0054,  "poster_path": "/jSziioSwPVrOy9Yow3XhWIBDjq1.jpg",  "backdrop_path": "/b9HyPoxwxjxkWEUL5ErZdhApQe2.jpg"}

amodb прапануе платны API метаданых фільмаў і серыялаў. Ён захоўвае шляхі, параметры і JSON з TMDB v3 і OMDb, таму гатовы кліент працуе пасля змены базавага URL. Адзін ключ падыходзіць для абодвух стыляў, 14 моў і постэраў на img.amodb.dev. Кожны план уключае ўсе даныя, а адрозніваюцца планы толькі колькасцю запытаў у хвіліну.

01 · /3/movie/550

Змяніце базавы URL, а код пакіньце

amodb адказвае па тых жа шляхах, што і TMDB v3. Запыт фільма 550 вяртае тыя ж палі JSON, якія ваш кліент ужо разбірае: id, title, genres, release_date, poster_path і астатнія.

  1. Атрымайце ключ

    Выберыце тарыф і скапіруйце ключ у асабістым кабінеце.

    Authorization: Bearer $AMODB_KEY
  2. Змяніце базавы URL

    Накіруйце кліент TMDB або OMDb на api.amodb.dev.

    api.themoviedb.orgapi.amodb.dev
  3. Запускайце

    Вяртаецца той самы JSON, таму парсер працуе без правак.

    200 OKapplication/json

Перадавайце ключ як api_key у запыце або ў загалоўку Authorization: Bearer. Абодва спосабы працуюць на кожным эндпоінце.

bashjspy
curl "https://api.amodb.dev/3/movie/550?language=en-US" \
  -H "Authorization: Bearer $AMODB_KEY"
const res = await fetch("https://api.amodb.dev/3/movie/550?language=en-US", {
  headers: { Authorization: `Bearer ${process.env.AMODB_KEY}` },
});
const movie = await res.json();
console.log(movie.title, movie.release_date);
import os
import requests

res = requests.get(
    "https://api.amodb.dev/3/movie/550",
    params={"language": "en-US"},
    headers={"Authorization": f"Bearer {os.environ['AMODB_KEY']}"},
    timeout=10,
)
movie = res.json()
print(movie["title"], movie["release_date"])
JSON
{
  "id": 550,
  "imdb_id": "tt0137523",
  "title": "Fight Club",
  "release_date": "1999-10-15",
  "runtime": 139,
  "genres": [{ "id": 18, "name": "Drama" }],
  "vote_average": 8.4,
  "poster_path": "/pB8BM7pdSp6B6Ih7QZ4DrQ3PmJK.jpg"
}

02 · /omdb/?i=tt0137523

Адзін ключ для выклікаў у стылі OMDb

Эндпоінт, сумяшчальны з OMDb, знаходзіцца па адрасе https://api.amodb.dev/omdb/. Ён прымае i, t, s, type, y, plot і page і вяртае Title, Year, imdbRating, Ratings і астатнія палі OMDb.

Поле Poster паказвае на img.amodb.dev, таму постэры загружаюцца з таго ж сервісу. Памылкі захоўваюць фармат OMDb: {"Response":"False","Error":"..."}.

bashjspy
curl "https://api.amodb.dev/omdb/?i=tt0137523&plot=short&apikey=$AMODB_KEY"
const url = new URL("https://api.amodb.dev/omdb/");
url.searchParams.set("t", "Fight Club");
url.searchParams.set("y", "1999");
url.searchParams.set("apikey", process.env.AMODB_KEY);

const film = await (await fetch(url)).json();
console.log(film.Title, film.imdbRating);
import os
import requests

film = requests.get(
    "https://api.amodb.dev/omdb/",
    params={"i": "tt0137523", "apikey": os.environ["AMODB_KEY"]},
    timeout=10,
).json()
print(film["Title"], film["imdbRating"])
JSON
{
  "Title": "Fight Club",
  "Year": "1999",
  "Runtime": "139 min",
  "Director": "David Fincher",
  "imdbRating": "8.8",
  "imdbID": "tt0137523",
  "Poster": "https://img.amodb.dev/t/p/w300/pB8BM7pdSp6B6Ih7QZ4DrQ3PmJK.jpg",
  "Response": "True"
}

03 · append_to_response

Даныя, якіх няма ў TMDB v3

Кожны ключ можа выклікаць пашырэнні amodb на тым жа базавым URL. Дадавайце іх праз append_to_response або выклікайце асобна.

  • Індыкатары настрою

    Страх, гумар, смутак, гвалт і іншыя паказчыкі па шкале ад 0 да 10, адным дадатковым запытам.

    GET /3/tv/1396/moods
  • Рэйтынгі адным запытам

    IMDb, TMDB і яшчэ тры ацэнкі з лікам галасоў, з аднаго эндпоінта.

    GET /3/movie/550/ratings
  • Бачны ліміт запытаў

    Кожны адказ паказвае, колькі запытаў засталося ў гэтую хвіліну.

  • Усе памеры выяў TMDB

    Ад мініяцюр w92 да арыгінальных файлаў на img.amodb.dev. Ключ не патрэбны.

    img.amodb.dev/t/p/w500/…
  • Пошук па любым вонкавым id

    Адпраўце IMDb id або іншы вонкавы ідэнтыфікатар і атрымайце запіс TMDB.

    GET /3/find/tt0137523
  • Сеансы ў кінатэатрах

    Сеансы па краінах для назваў, што ідуць у кінатэатрах, калі яны вядомыя.

    GET /3/movie/550/showtimes?country=US
  • Саўндтрэкі

    Песні з фільма або серыяла, на тым жа базавым URL.

    GET /3/movie/157336/soundtracks

04 · ?language=uk-UA

Назвы і апісанні на 14 мовах

Перадайце ў language тэг у стылі TMDB, напрыклад ru-RU або pt-BR. amodb падтрымлівае 14 асноўных моў і для любога іншага тэга замяняе мову англійскай, таму запыт ніколі не падае праз мову.

Мова

Spirited Away

Унесённые призраками

Віднесені привидами

Скрадзеныя прывідамі

千与千寻

A Viagem de Chihiro

Отнесени от духове

המסע המופלא

Cesta do fantazie

Călătoria lui Chihiro

Le Voyage de Chihiro

Spirited Away: W krainie Bogów

La città incantata

El viaje de Chihiro

  • en English Spirited Away
  • ru Русский Унесённые призраками
  • uk Українська Віднесені привидами
  • be Беларуская Скрадзеныя прывідамі
  • zh 中文 千与千寻
  • pt Português A Viagem de Chihiro
  • bg Български Отнесени от духове
  • he עברית המסע המופלא
  • cs Čeština Cesta do fantazie
  • ro Română Călătoria lui Chihiro
  • fr Français Le Voyage de Chihiro
  • pl Polski Spirited Away: W krainie Bogów
  • it Italiano La città incantata
  • es Español El viaje de Chihiro

05 · /plans

Планы адрозніваюцца толькі запытамі ў хвіліну

Кожны план уключае ўсе эндпоінты, усе 14 моў, выявы і пашырэнні. Вы плаціце адзін раз за 1, 3, 6, 12 ці 24 мес., а чым даўжэйшы перыяд, тым танней месяц. Бясплатнага плана і аўтаматычнага працягу няма.

Цэны

06 · X-RateLimit-Remaining

Разлічана на працоўную нагрузку

  • Агульны edge-кэш

    Папулярныя спісы кэшуюцца на 30 хвілін, дэталі на 6 гадзін, а configuration на 24 гадзіны.

  • Зразумелыя ліміты запытаў

    Кожны адказ змяшчае X-RateLimit-Limit, X-RateLimit-Remaining і X-RateLimit-Reset. Адказ 429 дадае Retry-After.

  • Памылкі ў стылі TMDB

    Памылкі вяртаюць success, status_code і status_message, таму існуючая апрацоўка памылак працягвае працаваць.

  • Выявы без ключа

    Постэры і фонавыя выявы загружаюцца з img.amodb.dev/t/p/{size}/{file} ва ўсіх памерах TMDB і кэшуюцца на 30 дзён.

Пытанні і адказы

Ці трэба змяняць код майго кліента TMDB?

Не. Накіруйце базавы URL на https://api.amodb.dev/3 і перадавайце ключ amodb як api_key або як Bearer токен. Шляхі, параметры запыту і палі JSON застаюцца такімі ж, як у TMDB v3.

Ці падыходзіць той жа ключ для выклікаў у стылі OMDb?

Так. Перадайце яго як apikey на https://api.amodb.dev/omdb/. Параметры i, t, s, type, y, plot і page працуюць як у OMDb, а адказ выкарыстоўвае назвы палёў OMDb.

Ці ёсць бясплатны план або пробны перыяд?

Не. amodb працуе толькі з аплатай наперад. Вы выбіраеце план і перыяд, плаціце адзін раз, і ключ дзейнічае да канца перыяду. Аўтаматычнага працягу няма.

Чым адрозніваюцца планы?

Толькі хуткасцю запытаў: 20, 40 або 120 запытаў у хвіліну. Кожны план уключае ўсе эндпоінты, усе 14 моў, выявы і пашырэнні amodb.

Якія мовы падтрымліваюцца?

Англійская, руская, украінская, беларуская, кітайская, партугальская, баўгарская, іўрыт, чэшская, румынская, французская, польская, італьянская і іспанская. Перадайце тэг у стылі TMDB, напрыклад ru-RU; любая іншая мова замяняецца англійскай.

Пачніце з аднаго ключа

Кожны план уключае ўсе эндпоінты, усе 14 моў і выявы. Планы адрозніваюцца толькі лікам запытаў у хвіліну.

$ curl https://api.amodb.dev/3/movie/550 -H "Authorization: Bearer $AMODB_KEY"