Кароткае параўнанне
amodb уяўляе сабой незалежнае API, якое працуе па тым жа пратаколе, што і TMDB v3. Кліент, напісаны для TMDB, чытае з amodb пасля змены базавага URL і ключа, калі ён не выклікае шлях з табліцы «не прапануюцца» ніжэй. Таму выбар залежыць ад умоў, дадатковых магчымасцей і некалькіх прабелаў. TMDB прапануе бясплатны API для кваліфікаванага выкарыстання па ўласных умовах. amodb гэта платнае API толькі для чытання з 14 мовамі, пяццю дадатковымі блокамі даных і лімітам на ключ.
Роўнасць эндпоінтаў
Кожны радок паказвае шлях чытання TMDB v3 і яго паводзіны на https:/.
| Вобласць | Шлях TMDB v3 | У amodb |
|---|---|---|
| Дэталі фільма | /movie/{movie_id} | Тое ж, з пяццю дадатковымі значэннямі append_to_response |
| Дэталі серыяла | /tv/{series_id} | Тое ж, але без поля type, а created_by пусты для большасці серыялаў |
| Сезоны і эпізоды | / | Тая ж форма. Выявы, відэа і пераклады сезонаў пустыя, а external_ids сезонаў і эпізодаў роўныя null |
| Персоны | /person/{person_id} | Тое ж, з combined_credits, movie_credits, tv_credits, external_ids і images (толькі профілі) |
| Удзельнікі | / | Тое ж. Для эпізодаў cast пусты |
| Пошук | /search/multi | Тое ж, кэш 10 хвілін |
| Пошук па фільтрах | /discover/movie | Тое ж, кэш 30 хвілін |
| Трэнды | / | Тое ж, кэш 30 хвілін |
| Спісы | /movie/popular | Тое ж, page ад 1 да 500 |
| Выявы | / | Тая ж форма, файлы загружаюцца з img.amodb.dev |
| Відэа | / | Тое ж |
| Пераклады | / | Тое ж, падтрымліваецца 14 моў |
| Ключавыя словы | / | Тое ж |
| Рэцэнзіі | / | Адказвае 200, але рэцэнзіі ёсць толькі ў некалькіх назваў, таму пусты спіс нармальны |
| Калекцыі | / | Тое ж, parts упарадкаваныя па даце выхаду |
| Кампаніі і тэлеканалы | /company/{company_id} | Тыя ж ключы. description кампаніі пусты, а parent_company роўны null |
| Жанры | /genre/movie/list | Тое ж |
| Канфігурацыя | /configuration | Тыя ж ключы, хост выяў img.amodb.dev |
| Пошук па вонкавым id | /find/{external_id} | Той жа эндпоінт плюс kinopoisk_id. tv_episode_results і tv_season_results заўсёды пустыя |
| Групы эпізодаў | / | Пералічвае групы серыяла без іх змесціва |
Не прапануюцца ў amodb
У гэтых выклікаў TMDB v3 няма эквівалентаў. Невядомыя шляхі адказваюць 404 са status_code 34, а метады запісу адказваюць 405 са status_code 37.
| Выклік TMDB v3 | Адказ amodb |
|---|---|
/movie/changes, /tv/changes, /person/changes і changes пад адным id | 404, status_code 34 |
aggregate_credits пад серыялам або сезонам | 404, status_code 34 |
/credit/{credit_id} і /review/{review_id} | 404, status_code 34 |
/tv/episode_group/{id} | 404, status_code 34 |
/, tagged_images і /person/latest | 404, status_code 34 |
images, translations і alternative_names для калекцый, кампаній і тэлеканалаў | 404, status_code 34 |
/ | 404, status_code 34 |
Усё пад account, authentication, guest_session і list, а таксама любы шлях /rating або /account_states | 405, status_code 37 |
Калі дадаць aggregate_credits або changes у append_to_response, amodb ігнаруе назву без памылкі, таму ключа ў целе проста не будзе.
Параўнанне магчымасцей
| Магчымасць | TMDB | amodb |
|---|---|---|
| Мадэль цэнаўтварэння | Бясплатна для кваліфікаванага выкарыстання, па ўмовах TMDB | З аплатай наперад, ад 1 да 24 месяцаў за адну пакупку |
| Бясплатны тарыф | Так, для кваліфікаванага выкарыстання | Няма, пробнага перыяду таксама няма |
| Аўтэнтыфікацыя | Ключ v3 у api_key або токен v4 як Bearer | api_key або Bearer з шаснаццатковым ключом з 32 сімвалаў |
| Фармат адказу | JSON | JSON, тыя ж палі на шляхах, што падтрымліваюцца |
| Мовы | Глядзіце іх дакументацыю | Падтрымліваецца 14, іншыя тэгі замяняюцца на en |
| Фільмы | Так | Так |
| Серыялы | Так | Так |
| Персоны | Так | Так |
| Выявы | Так | img.amodb.dev, памеры ад w92 да original |
| Рэйтынгі | Ацэнка карыстальнікаў TMDB, іншыя крыніцы: глядзіце іх дакументацыю | Пяць крыніц у адным аб’екце, калі вядомыя |
| Метады запісу | Метады акаўнта, спісаў і ацэнак | Няма, адказваюць 405 |
| Ліміт запытаў | Глядзіце іх дакументацыю | 20, 40 або 120 у хвіліну на ключ |
| Камерцыйнае выкарыстанне | Умовы камерцыйнага выкарыстання і ўказання аўтарства глядзіце ў іх умовах | Платныя планы, гл. цэны |
| Сумяшчальнасць | Вызначае TMDB v3 | Большасць шляхоў чытання TMDB v3 і маршрут OMDb |
Адрозненні падрабязней
- Умовы. TMDB просіць азнаёміцца з яго ўмовамі камерцыйнага выкарыстання і ўказання аўтарства. amodb прадаецца па перыядах з аплатай наперад, без аўтапрадаўжэння, без бясплатнага тарыфа і без пробнага перыяду.
- Мовы. amodb падтрымлівае en, ru, uk, be, zh, pt, bg, he, cs, ro, fr, pl, it і es. Ён прымае тэгі TMDB, напрыклад
ru-RUіpt-BR. Нямецкая, японская і карэйская замяняюцца наen, аoriginal_titleзахоўвае арыгінальную назву. Пра пакрыццё моў у TMDB глядзіце іх дакументацыю. Гл. мовы. - Пашырэнні.
append_to_responseтаксама прымаеmoods,soundtracks,ratings,wikidataіshowtimes, і ў кожнага ёсць свой шлях пад фільмамі і серыяламі. - Вонкавыя id.
/3/findапрацоўваеimdb_id,tvdb_id,wikidata_id,kinopoisk_id,facebook_id,twitter_idіinstagram_id. Крыніцыfreebase_mid,freebase_id,tvrage_id,tiktok_idіyoutube_idпрымаюцца, але вяртаюць пустыя масівы. Адсутны або невядомыexternal_sourceадказвае 400 саstatus_code22. - Пустыя па задуме. Выявы, відэа і пераклады сезонаў і
descriptionкампаніі заўсёды пустыя. Рэцэнзіі іcreated_byу серыяла запоўнены толькі для некалькіх назваў.external_idsсезонаў і эпізодаў усе роўныя null. - Назвы для дарослых.
include_adultігнаруецца. Назвы і людзі для дарослых ніколі не вяртаюцца і адказваюць 404. - Выявы. Шлях CDN
https:/. Ключ не патрэбны, а файлы кэшуюцца на 30 дзён./ img.amodb.dev/ t/ p/ {size}/ {file} - Ліміты. Акно слізгальнае, 60 секунд на ключ. Загалоўкі паказваюць колькасць, што засталася, а трапленні ў кэш усё роўна ўлічваюцца, бо праверка ліміту выконваецца першай.
- Незалежнасць. Каталог бярэцца з публічных і адкрытых крыніц і нашага ўласнага ўзбагачэння. Агульная форма не гарантуе аднолькавых значэнняў кожнага поля кожнай назвы.
Дзе TMDB падыходзіць лепш
- Бясплатнае кваліфікаванае выкарыстанне. Аплата не патрэбна, і amodb не можа з гэтым параўнацца.
- Запіс. Ацэнка назвы, стварэнне спісу і сесіі акаўнта працуюць у TMDB. У amodb яны вяртаюць 405.
- Стужкі змен. TMDB пералічвае id, якія змяніліся. У amodb такой стужкі няма, таму абнаўляйце па ўласным раскладзе.
- Aggregate credits і пошук credit. Абодва адказваюць 404 у amodb. Выкарыстоўвайце
/creditsназвы. - Больш шырокія моўныя патрэбы. Калі інтэрфейсу патрэбна мова па-за межамі 14, спачатку праверце TMDB.
- Існуючае ўзгадненне. Каманда, якая прайшла юрыдычную праверку TMDB, павінна ўзважыць кошт другой праверкі.
Міграцыя на amodb
Змена складае адзін радок на запыт.
# before: TMDB_BASE is your current TMDB v3 base URL
curl -s "$TMDB_BASE/movie/550?api_key=$TMDB_KEY"
# after
curl -s "https://api.amodb.dev/3/movie/550?api_key=$AMODB_KEY"Перад пераходам параўнайце форму некалькіх адказаў поплеч. Гэты скрыпт друкуе ключы верхняга ўзроўню, якія вяртае адзін бок і не вяртае другі.
async function topLevelKeys(base, key, path) {
const res = await fetch(`${base}${path}?api_key=${key}`);
if (!res.ok) throw new Error(`${path} returned ${res.status}`);
return Object.keys(await res.json()).sort();
}
for (const path of ['/movie/550', '/tv/1396', '/person/31']) {
const current = await topLevelKeys(process.env.TMDB_BASE, process.env.TMDB_KEY, path);
const next = await topLevelKeys('https://api.amodb.dev/3', process.env.AMODB_KEY, path);
const missing = current.filter((k) => !next.includes(k));
console.log(path, missing.length ? `missing: ${missing.join(', ')}` : 'same keys');
}Неабавязковыя палі могуць адрознівацца для пэўнай назвы, таму лічыце адсутны ключ падказкай для праверкі, а не вердыктам. Потым прайдзіце гэты спіс:
- Абярыце план на старонцы цэны, потым стварыце ключ у асабістым кабінеце.
- Перанясіце базавы URL і ключ у канфігурацыю.
- Прачытайце
images.secure_base_urlз/3/configuration. - Пашукайце ў кодзе выклікі запісу і шляхі з табліцы «не прапануюцца». Пакіньце запіс у TMDB, а астатняе замяніце.
- Дадайце апрацоўшчык 429, які чакае
Retry-Afterсекунд. Гл. ліміты запытаў і памылкі.
Цэны
amodb працуе з аплатай наперад. Абярыце 1, 3, 6, 12 або 24 месяцы са зніжкай 0, 10, 20, 30 або 40 працэнтаў і адзін з трох планаў на 20, 40 або 120 запытаў у хвіліну. Кожны план вяртае ўсе даныя, і ніводзін не прадаўжаецца сам. Сумы гл. на старонцы цэны.