Быстрый старт
За пять минут вы получите ключ, свяжете ID одного фильма во всех каталогах, откроете его карточку и найдёте тайтл по названию. Понадобится терминал с curl или любой язык из примеров.
Получите ключ
Ключ бесплатный, в него входит 500 запросов в сутки. Как получить ключ.
Сохраните ключ в переменную окружения: все примеры документации берут его оттуда, и в код он не попадает.
macOS и Linux:
export KINODATA_KEY="ваш_ключ"Windows, PowerShell:
$env:KINODATA_KEY = "ваш_ключ"Свяжите ID фильма
Передайте ID «Начала» на Кинопоиске — в ответ придут его ID во всех каталогах:
curl -H "X-API-Key: $KINODATA_KEY" \
"https://api.kinodata.space/v1.3/ids/kp/447301"{
"imdb_id": "tt1375666",
"kp_id": "447301",
"tmdb_id": "27205",
"tmdb_tv_id": null,
"kinorium_id": "472809"
}
Где:
kp— каталог, из которого ID. Подходит любой из пяти:imdb,kp,tmdb,tmdb_tv,kinorium.447301— ID в этом каталоге.null— ID в этом каталоге нет. «Начало» — фильм, поэтомуtmdb_tv_idпуст.
Откройте карточку
Тот же ID открывает карточку тайтла. Параметр fields оставляет нужные блоки, здесь — названия и вид:
curl -G -H "X-API-Key: $KINODATA_KEY" \
--data-urlencode "fields=title,type" \
"https://api.kinodata.space/v1.3/titles/kp/447301"{
"ids": {
"imdb_id": "tt1375666",
"kp_id": "447301",
"tmdb_id": "27205",
"tmdb_tv_id": null,
"kinorium_id": "472809",
"urls": {
"imdb": "https://www.imdb.com/title/tt1375666/",
"kinorium": "https://ru.kinorium.com/472809/",
"kp": "https://www.kinopoisk.ru/film/447301/",
"tmdb": "https://www.themoviedb.org/movie/27205"
}
},
"title": {
"title_ru": "Начало",
"title_en": "Inception",
"title_original": "Inception"
},
"type": {
"kind": "movie",
"is_series": false,
"status": "released",
"kind_label_ru": "Фильм",
"kind_label_en": "Movie",
"status_label_ru": "Вышел",
"status_label_en": "Released"
}
}
Блок ids приходит всегда. Без fields карточка приходит целиком: до 22 блоков, около 26 КБ.
Текстовые поля приходят парами _ru и _en. Чтобы получить один язык, добавьте lang=ru или lang=en.
Найдите тайтл по названию
Если ID нет, ищите по названию на любом языке. Поиск прощает опечатки — запрос «начло» с пропущенной буквой находит «Начало»:
curl -G -H "X-API-Key: $KINODATA_KEY" \
--data-urlencode "q=начло" \
--data-urlencode "limit=1" \
"https://api.kinodata.space/v1.3/titles"{
"has_more": true,
"items": [
{
"imdb_id": "tt1375666",
"kp_id": "447301",
"tmdb_id": "27205",
"tmdb_tv_id": null,
"kinorium_id": "472809",
"title_ru": "Начало",
"title_en": "Inception",
"title_original": "Inception",
"year": 2010,
"release_date": "2010-07-15",
"kind": "movie",
"poster_url_ru": "https://avatars.mds.yandex.net/get-kinopoisk-image/1629390/8ab9a119-dd74-44f0-baec-0629797483d7/600x900",
"poster_url_en": "https://image.tmdb.org/t/p/original/xlaY2zyzMfkhk0HSC5VUwzoZPU1.jpg",
"posters_by_source": {
"kp": "https://avatars.mds.yandex.net/get-kinopoisk-image/1629390/8ab9a119-dd74-44f0-baec-0629797483d7/600x900",
"tmdb": "https://image.tmdb.org/t/p/original/piQXcdOGgv1O9HQ07pI0tnjkGJw.jpg",
"imdb": null,
"kinorium": "https://images.kinorium.com/movie/poster/472809/w1500_37543056.jpg"
},
"rating_kp": 8.7,
"rating_tmdb": 8.4,
"rating_imdb": 8.8,
"rating_kr": 8.6,
"rating_letterboxd": 8.4,
"votes_kp": 1132562,
"votes_tmdb": 40402,
"votes_imdb": 2877173,
"countries": [
{
"code": "us",
"name_ru": "США",
"name_en": "United States"
},
{
"code": "gb",
"name_ru": "Великобритания",
"name_en": "United Kingdom"
}
],
"genres": [
{
"slug": "action",
"name_ru": "Боевик",
"name_en": "Action"
},
{
"slug": "drama",
"name_ru": "Драма",
"name_en": "Drama"
},
{
"slug": "mystery",
"name_ru": "Детектив",
"name_en": "Mystery"
},
{
"slug": "speculative_fiction",
"name_ru": "Фантастика",
"name_en": "Speculative Fiction"
},
{
"slug": "thriller",
"name_ru": "Триллер",
"name_en": "Thriller"
}
]
}
],
"limit": 1,
"offset": 0,
"total": null
}
has_more: true значит, что результатов больше. Следующую страницу отдаёт параметр offset.
Дальше
- Ключ и лимиты — пределы тарифа и как следить за остатком.
- Карточка тайтла — все блоки карточки.
- Фильтры и сортировка — как выбрать тайтлы из каталога.