Notice: Due to legal reasons we are hiding videos with pending 3rd party claims on YouTube in this API. This is to ensure the visibility of the videos for all of your website visitors.

Welcome

With the KinoCheck API, publishing groups and platform operators gain free access to official film materials, including trailers, spots, clips, and accompanying metadata.

KinoCheck partners with more than 250 publishers worldwide and often releases videos ahead of traditional media outlets. Our catalog of 80K+ assets is delivered in 4K resolution as standard, with a guaranteed minimum of 1080p. For verified large-scale projects, API limits can be increased free of charge upon request, and customized solutions are available.

Through close partnerships with major international film studios and streaming services, we are in some cases the exclusive verified external source for original content, including Apple TV+, Netflix, and Amazon Prime Video.

The KinoCheck API is the ideal solution to reliably enhance film and entertainment coverage with official materials. It boosts search visibility, increases user engagement and time-on-site, and makes platforms more attractive to advertisers, all at no additional cost.

We have integrated a daily request limit for each client of 1000 requests per day. For a higher limit using an API Key, simply register here.

Our Customers

How to make a request

  • Most of the requests to the API will use the GET method
  • The base URL is: https://api.kinocheck.com/
  • You define which endpoint you wish to query by appending /{endpoint
  • If you have and use an API key, you must add the corresponding X-API headers
E.g.:

curl -X GET 'https://api.kinocheck.com/[REQUEST_PATH]' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'X-Api-Host: api.kinocheck.com'
$url = 'https://api.kinocheck.com/[REQUEST_PATH]';
$apiKey = 'YOUR_API_KEY';

$ch = curl_init($url);
$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => $url,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Accept: application/json',
        'X-Api-Key: ' . $apiKey,
        'X-Api-Host: api.kinocheck.com',
    ],
    CURLOPT_SSL_VERIFYPEER => false,
    CURLOPT_SSL_VERIFYHOST => false,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_FOLLOWLOCATION => true,
]);

$response = curl_exec($curl);
$info = curl_getinfo($curl);
$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
$data = json_decode($response, true);
curl_close($curl);
import requests

url = 'https://api.kinocheck.com/[REQUEST_PATH]'
headers = {
    'Content-Type': 'application/json',
    'Accept': 'application/json',
    'X-Api-Key': 'YOUR_API_KEY',
    'X-Api-Host': 'api.kinocheck.com'
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    data = response.json()
    print('Success:', data)
else:
    print('Failed to fetch data:', response.status_code, response.text)
const url = 'https://api.kinocheck.com/[REQUEST_PATH]';
const apiKey = 'YOUR_API_KEY';

fetch(url, {
    method: 'GET',
    headers: {
        'Content-Type': 'application/json',
        'Accept': 'application/json',
        'X-Api-Key': apiKey,
        'X-Api-Host': 'api.kinocheck.com'
    }
})
.then(response => {
    if (!response.ok) {
        throw new Error(`Network response was not ok ${response.statusText}`);
    }
    return response.json();
})
.then(data => {
    console.log('Success:', data);
})
.catch(error => {
    console.error('There was a problem with the fetch operation:', error);
});

/movies

Request

GET https://api.kinocheck.com/movies

Parameters

The following table lists the parameters that this query supports. All listed parameters are query parameters.

Required (specify exactly one of the following parameters)
id string The ID used by KinoCheck
tmdb_id integer The ID used by TMDB
imdb_id string The ID used by IMDB
Optional
categories string The parameter specifies a comma-separated list of one or more video category properties that the videos property of the API response will include. This does not affect the trailer property. Exclude categories by prepending a hyphen.

Acceptable values are:
  • Trailer
  • Teaser
  • Clip
  • Featurette
Default: all videos are shown
language string The parameter specifies a two-letter ISO 639 language code which will determine the language-sensitive output of the API, e.g. the title of the movie and the spoken-language of the videos.

Acceptable values are:
  • en
  • de
Default: en
limit int The limit query parameter specifies the number of resources that a single response page contains. Note that the limit parameter value cannot surpass the maximum number of elements on page which is 100 by default. Default: 25
page int The limit query parameter specifies the page entry point. Note that the limit parameter value cannot surpass the maximum number of available pages (specified by limit). Default: 1

Response

It extends the response by the _metadata field with information for further pagination requests:
{
    ...
    "_metadata": {
        "limit": 25,
        "page": 1,
        "total_pages": 1234,
        "total_count": 1234
    }
}

Examples

GET https://api.kinocheck.com/movies?tmdb_id=299534
GET https://api.kinocheck.com/movies?tmdb_id=299534&language=de
GET https://api.kinocheck.com/movies?tmdb_id=299534&language=de&categories=Trailer
GET https://api.kinocheck.com/movies?tmdb_id=299534&language=de&categories=Trailer,-Clip

Response

If successful, this method returns a response body with the following structure:

{
	"id": "ly4",
	"tmdb_id": 299534,
	"imdb_id": "tt4154796",
	"language": "de",
	"title": "Avengers 4: Endgame",
	"url": "https://kinocheck.de/film/ly4/avengers-4-2019",
	"trailer": [video resource],
	"videos": [
		[video resource]
	]
}

Properties

The following table defines the properties that appear in this resource:

id string The ID used by KinoCheck
tmdb_id integer The ID used by TMDB. Returns null if no TMDB ID is found
imdb_id string The ID used by IMDB. Returns null if no IMDB ID is found
language string The language used in the API request, represented by a two-letter ISO 639 language code (e.g. "en", "de")
title string The title of the movie
url string The URL to the movie detail page
trailer video resource An automatically selected single video resource with the sole category "Trailer". Returns null if no acceptable video is found
videos array An array of video resources associated with the movie resource. The array will be empty if no videos are found

/shows

See the corresponding documentation for /movies. You cannot filter by seasons or get any informations about single seasons.

Examples

GET https://api.kinocheck.com/shows?tmdb_id=38472
GET https://api.kinocheck.com/shows?tmdb_id=38472&language=de
GET https://api.kinocheck.com/shows?tmdb_id=38472&language=de&categories=Trailer

/trailers

Request (Default and same as /trending)

GET https://api.kinocheck.com/trailers
GET https://api.kinocheck.com/trailers/trending

Request latest

GET https://api.kinocheck.com/trailers/latest

Parameters

The following table lists the parameters that this query supports. All listed parameters are query parameters.

Optional
id string The ID used by KinoCheck
tmdb_id integer The ID used by TMDB
imdb_id string The ID used by IMDB
genres string The parameter specifies a comma-separated list of one or more video genre properties that the videos property of the API response will include. Exclude categories by prepending a hyphen.

Acceptable values are:
  • Adventure
  • Drama
  • Horror
  • Comedy
  • Animation
  • Family
  • Science Fiction
  • Action
  • Thriller
  • Mystery
  • Crime
  • Fantasy
  • Romance
  • Western
  • Documentary
  • History
  • Music
  • War
  • Foreign
  • TV Movie
  • Biopic
  • Sci-Fi & Fantasy
  • Action & Adventure
  • Sport
  • Independent
  • Kids
  • Reality-TV
  • Superhero
Default: all videos are shown
language string The parameter specifies a two-letter ISO 639 language code which will determine the language-sensitive output of the API, e.g. the title of the movie and the spoken-language of the videos.

Acceptable values are:
  • en
  • de
Default: en
limit int The limit query parameter specifies the number of resources that a single response page contains. Note that the limit parameter value cannot surpass the maximum number of elements on page which is 100 by default. Default: 25
page int The limit query parameter specifies the page entry point. Note that the limit parameter value cannot surpass the maximum number of available pages (specified by limit). Default: 1

Response

It extends the response by the _metadata field with information for further pagination requests:
{
    ...
    "_metadata": {
        "limit": 25,
        "page": 1,
        "total_pages": 1234,
        "total_count": 1234
    }
}

Examples

GET https://api.kinocheck.com/trailers?tmdb_id=299534
GET https://api.kinocheck.com/trailers?tmdb_id=299534&language=de
GET https://api.kinocheck.com/trailers/latest?&page=2
GET https://api.kinocheck.com/trailers/trending?page=2&limit=10

Response

If successful, this method returns a response body with the following structure See: [video resource]

Video resource

The following JSON structure shows the format of a video resource:

{
	"id": "4ghv",
	"youtube_video_id": "EJJedP2_7_k",
	"youtube_channel_id": "UCOL10n-as9dXO2qtjjFUQbQ",
	"youtube_thumbnail": "https://img.youtube.com/vi/EJJedP2_7_k/maxresdefault.jpg",
	"title": "AVENGERS 4: Endgame Trailer German Deutsch (2019)",
	"url": "https://kinocheck.de/trailer/7zxh/avengers-4-...",
	"thumbnail": "https://images.kinocheck.de/images/hsd2ascncd.jpg",
	"language": "de",
	"categories": [
		"Trailer"
	],
	"published": "2018-12-07T13:16:51+01:00",
	"views": "1391790",
        "resource": [
            "type" => "movie"
            "path" => "/movies/"
            "id" => "ly4"
            "imdb_id" => "tt4154796"
            "tmdb_id" => 299534
        ]
}

Properties

The following table defines the properties that appear in this resource:

id string The ID used by KinoCheck
youtube_video_id string The ID used by YouTube
youtube_channel_id string The channel ID used by YouTube
youtube_thumbnail string A link to the thumbnail used by YouTube
title string The title of the video
thumbnail string The thumbnail used by KinoCheck.de. Probably the same as YouTube. The URL to this thumbnail will change from time to time. Just use it to mirror on your own server.
language string Two-letter ISO 639 code of the spoken language in the video
categories array An array of categories to which the video belongs. A video can be in multiple categories at the same time, e.g. "Trailer" and "Clip"
views integer The current views of the video on YouTube
*** Optional resource info (if movie or show is connected)
resource.type string Resource type "movie" or "show"
resource.path string Relative api path to request the resource details
resource.id string Our resource id to request with /{resource.path}?id=...
resource.imdb_id string IMDB id to request with /{resource.path}?imdb_id=...
resource.tmdb_id integer TMDB id to request with /{resource.path}?tmdb_id=...