Official TypeScript / JavaScript client for the kino.is API — a movie & TV catalogue with people, ratings, where-to-watch and live cinema showtimes.
Zero runtime dependencies (uses the global fetch; works on Node 18+, Deno, Bun, and browsers).
npm i @kino-is/sdkimport { KinoIs } from '@kino-is/sdk';
const kino = new KinoIs({ lang: 'en' });
// Search
const { films } = await kino.search('interstellar');
// Full film details (ratings, cast, genres, where-to-watch, similar)
const { film } = await kino.getFilm(films[0].id);
// A person and their filmography
const { person } = await kino.getPerson(6193);
// What's in cinemas + real showtimes
const now = await kino.nowInCinemas('KZ');
const showtimes = await kino.showtimesKZ({ city: 'almaty' });Construct with new KinoIs(options):
| Option | Default | Meaning |
|---|---|---|
baseUrl |
https://kino.is |
API base URL. |
lang |
'ru' |
Default content language (ru, en, uk, kk, uz, be, de, he). |
fetch |
global fetch |
Custom fetch (tests / older runtimes). |
token |
— | Bearer token (only for write/user endpoints). |
Methods (all return parsed JSON, all accept an optional { lang } where relevant):
search(query, { lang? })— films/series/cartoons/anime by title or keywords.getFilm(id, { lang? })— full details for a film.getPerson(id, { lang? })— a person and filmography.catalog(params)— browse/filter the catalogue (type, genre, year, country, sort, page…).nowInCinemas(country, { lang? })— films currently in cinemas (ISO-2 country).nowShowing({ lang? })— the "now showing" set.showtimesKZ({ city? })— real per-cinema showtimes in Kazakhstan.cinemasUA()— cinemas in Ukraine with film/session counts.boxoffice(),calendar(params),lists().
Errors throw KinoIsError (with .status and .path).
- MCP server (use kino.is straight from Claude/Cursor/VS Code): https://github.com/kino-is/mcp
- Prefer another language? Python / PHP / Go / Java clients are on the way — see the kino-is org.