# Filmography

> Every title a person worked on, with their roles, plus the catalog’s filters and sorting.

> Documentation index for agents: https://kinodata.space/en/llms.txt — the whole documentation in one file: https://kinodata.space/en/llms-full.txt

Request: `GET https://api.kinodata.space/v1.3/persons/{type}/{id}/filmography`

A title comes once, with all the person’s roles in it: in *The Dark Knight*, Christopher Nolan is director, writer and producer. The roles are in `credits`.

`roles` describes the whole career, not the page: how many titles each role has and the role labels. It doesn’t depend on `role`, filters or the page, so draw tabs from it.

Appearing as oneself (broadcasts, ceremonies, making-of films) is a role of its own, `self`, and archive footage is `archive`. `role=actor` doesn’t pick them up, `role=self` gathers them separately, and `role.not=self,archive` keeps only the film work: 33 of Nolan’s 131 titles.

Without `sort`, the filmography runs from newest to oldest, so announcements come first; `order=asc` reverses it. To lead with the main work, sort by votes (`sort=-votes_imdb`) or take a preset: `preset=top` goes by IMDb rating. All the [catalog’s filters and sorting](https://kinodata.space/en/docs/filters.md) work here, and so does `fields`; in `fields`, the roles are called `credits`.

You can pick a person’s titles in the catalog too: `/titles?person=kp:41477`. The catalog pages with a cursor and combines a person with a title search, but its response has no roles.

## Path parameters

- `type` (string, required) — The catalog the ID comes from: IMDb, Kinopoisk, TMDB or Kinorium.
  Values: `imdb`, `kp`, `tmdb`, `kinorium`.
- `id` (string, required) — The person’s ID in that catalog. IMDb IDs are `nm` followed by digits (`nm0634240`); the others are digits (`41477`).

## Query parameters

- `role` (csv) — Keep the titles where the person had any of these roles. `role.not` drops the titles where they had only such roles: `role.not=self,archive` keeps everything but broadcasts and archive footage. `credits` still lists every role they had: a film they directed and produced comes with both.
  Values: `director`, `actor`, `self`, `archive`, `writer`, `producer`, `cinematographer`, `composer`, `sound`, `art`, `editor`, `voice_director`, `voice`, `author`, `translator`, `producer_ussr`, `crew`.
  Example: `role=director,writer`.
- `filters and sort` — The catalog’s filters and sorting: `kind=movie`, `votes_imdb.gte=100000`, `sort=-rating_imdb`. Details in [Filters and sorting](https://kinodata.space/en/docs/filters.md).
  Default: `sort=-year`.
- `order` (enum) — The direction of the default order: `order=asc` runs from oldest to newest. When `sort` is set, its sign decides the direction.
  Values: `asc`, `desc`.
  Default: `desc`. Example: `order=asc`.
- `fields` (csv) — Which item fields to return, as in the [catalog](https://kinodata.space/en/docs/titles.md), plus `credits`, the person’s roles. IDs always come back.
  Example: `fields=title,year,credits`.
- `group` (enum) — Split the list into sections. `none` gives a flat list. How sections work is in [Lists and pagination](https://kinodata.space/en/docs/lists.md#sections).
  Values: `role`, `none`.
  Default: no sections.
- `lang` (ru | en) — Keep one language in the response. Without it, text fields come in `_ru` and `_en` pairs. More in [Response languages](https://kinodata.space/en/docs/languages.md).
  Example: `lang=en`.
- `limit` (integer) — How many items to return, a whole number from 1. With sections, per section, up to 50. In a flat list, up to 1000. Above the cap isn’t an error: the API lowers it and shows the value in `limit`.
  Default: 10 per section, 1000 in a flat list. Example: `limit=20`.
- `offset` (integer) — How many items to skip, a whole number from 0. Only in a flat list: with sections it returns `400`.
  Default: 0.

## Response fields

- `roles` (array) — How many titles across the whole career, by role: `role`, the labels `label_ru` and `label_en`, `count`. The order follows the credits: directors, actors, self, archive footage, writers, producers and so on.
- `items` (array) — Titles. With `group=role`, sections by role, each with `role`, labels, `total`, `has_more` and `items`.
  - `imdb_id`, `kp_id`, `tmdb_id`, `tmdb_tv_id`, `kinorium_id` (string | null) — The title’s catalog IDs. Always returned, even with `fields`.
  - `title_ru`, `title_en`, `title_original` (string | null) — Titles: Russian, English and in the original language.
  - `year` (integer | null) — Release year.
  - `release_date` (string | null) — First release date, `YYYY-MM-DD`.
  - `kind` (enum) — Kind of title: `movie`, `series`, `mini_series`, `tv_show`, `anime`, `cartoon`, `short`.
  - `poster_url_ru`, `poster_url_en` (string | null) — Poster for a Russian and an English storefront.
  - `posters_by_source` (object) — Each source’s poster: `kp`, `tmdb`, `imdb`, `kinorium`.
  - `rating_kp`, `rating_tmdb`, `rating_imdb`, `rating_kr`, `rating_letterboxd` (number | null) — Kinopoisk, TMDB, IMDb, Kinorium and Letterboxd ratings, 0–10 scale.
  - `votes_kp`, `votes_tmdb`, `votes_imdb` (integer | null) — Kinopoisk, TMDB and IMDb votes.
  - `countries` (array) — Countries: `code`, `name_ru`, `name_en`.
  - `genres` (array) — Genres: `slug`, `name_ru`, `name_en`.
  - `credits` (array) — The person’s roles on this title, in the same order as `roles`.
    - `role` (enum) — The role. Labels are in `/enums`, set `credit_roles`.
    - `character_ru`, `character_en` (string | null) — The character, for actors and dubbing, without the source’s notes, as in the [cast](https://kinodata.space/en/docs/titles/cast.md). For `self`, what the person appears as: “Guest”, «гость».
    - `job_ru`, `job_en` (string | null) — The crew job: “Executive Producer”, «Исполнительный продюсер».
    - `ord` (integer | null) — Billing order: for actors, the order in the credits; for the crew, within their department. `null` when the place is unknown: the role comes from the person’s filmography, not the title’s credits.
    - `sources` (array) — Which catalogs confirmed the credit: `kp`, `tmdb`, `kinorium`, always in this order.
    - `uncredited` (boolean) — `true` means the title’s credits don’t name the person: the source marked the part “uncredited” («в титрах не указан»).
    - `disputed` (boolean) — `true` means only TMDB has the credit, and the title’s Kinopoisk or Kinorium cast doesn’t list the person. The [title’s cast](https://kinodata.space/en/docs/titles/cast.md) leaves such credits out; in a list of work, hide them by checking `disputed`.
- `total` (integer) — How many titles match the request. The filmography counts exactly, with filters too.
- `limit`, `offset`, `has_more` — Paging, as in [every list](https://kinodata.space/en/docs/lists.md#the-shape-of-a-list).

## Errors

| status | code | when |
|---|---|---|
| 400 | `invalid_request` | An unknown role in `role` or `role.not`, filter, `sort` key, `fields` name or `group`; `order` other than `asc` or `desc`; a parameter of another endpoint (such as `relation` or `season`); `limit` below 1 or `offset` below 0; a repeated parameter; `offset` together with sections; `cursor`, since the filmography pages with `offset`. |
| 400 | `invalid_request` | The catalog is not `imdb`, `kp`, `tmdb` or `kinorium` (people have no `tmdb_tv`); the ID doesn’t match the catalog’s format: for IMDb, `nm` followed by digits. |
| 404 | `not_found` | No person found for this ID. |
| 401 | `unauthorized` | The `X-API-Key` header is missing, or the key is unknown or revoked. |
| 429 | `rate_limited` | The per-second rate limit or the daily quota is used up. |

Every code and what to do about it is on the [Errors](https://kinodata.space/en/docs/errors.md) page.

## Examples

### English only

```bash
curl -G -H "X-API-Key: $KINODATA_KEY" \
  --data-urlencode "role=director" \
  --data-urlencode "sort=-votes_imdb" \
  --data-urlencode "limit=2" \
  --data-urlencode "fields=title,year,credits" \
  --data-urlencode "lang=en" \
  "https://api.kinodata.space/v1.3/persons/kp/41477/filmography"
```

Response `200`:

```json
{
  "has_more": true,
  "items": [
    {
      "imdb_id": "tt0468569",
      "kp_id": "111543",
      "tmdb_id": "155",
      "tmdb_tv_id": null,
      "kinorium_id": "352641",
      "title_en": "The Dark Knight",
      "year": 2008,
      "credits": [
        {
          "role": "director",
          "character_en": null,
          "job_en": null,
          "ord": 0,
          "sources": [
            "kp",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "writer",
          "character_en": null,
          "job_en": "Screenplay",
          "ord": 7,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "producer",
          "character_en": null,
          "job_en": null,
          "ord": 1,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    },
    {
      "imdb_id": "tt1375666",
      "kp_id": "447301",
      "tmdb_id": "27205",
      "tmdb_tv_id": null,
      "kinorium_id": "472809",
      "title_en": "Inception",
      "year": 2010,
      "credits": [
        {
          "role": "director",
          "character_en": null,
          "job_en": null,
          "ord": 0,
          "sources": [
            "kp",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "writer",
          "character_en": null,
          "job_en": "Writer",
          "ord": 13,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "producer",
          "character_en": null,
          "job_en": "Producer",
          "ord": 0,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    }
  ],
  "limit": 2,
  "offset": 0,
  "roles": [
    {
      "role": "director",
      "label_en": "Directors",
      "count": 19
    },
    {
      "role": "actor",
      "label_en": "Actors",
      "count": 2
    },
    {
      "role": "self",
      "label_en": "Self",
      "count": 90
    },
    {
      "role": "archive",
      "label_en": "Archive Footage",
      "count": 12
    },
    {
      "role": "writer",
      "label_en": "Writers",
      "count": 20
    },
    {
      "role": "producer",
      "label_en": "Producers",
      "count": 22
    },
    {
      "role": "cinematographer",
      "label_en": "Cinematographers",
      "count": 5
    },
    {
      "role": "composer",
      "label_en": "Composers",
      "count": 1
    },
    {
      "role": "editor",
      "label_en": "Editors",
      "count": 5
    },
    {
      "role": "crew",
      "label_en": "Crew",
      "count": 3
    }
  ],
  "total": 19
}
```

### As director

```bash
curl -G -H "X-API-Key: $KINODATA_KEY" \
  --data-urlencode "role=director" \
  --data-urlencode "sort=-votes_imdb" \
  --data-urlencode "limit=3" \
  --data-urlencode "fields=title,year,credits" \
  "https://api.kinodata.space/v1.3/persons/kp/41477/filmography"
```

Response `200`:

```json
{
  "has_more": true,
  "items": [
    {
      "imdb_id": "tt0468569",
      "kp_id": "111543",
      "tmdb_id": "155",
      "tmdb_tv_id": null,
      "kinorium_id": "352641",
      "title_ru": "Тёмный рыцарь",
      "title_en": "The Dark Knight",
      "year": 2008,
      "credits": [
        {
          "role": "director",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 0,
          "sources": [
            "kp",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "writer",
          "character_ru": null,
          "character_en": null,
          "job_ru": "Сценарий",
          "job_en": "Screenplay",
          "ord": 7,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "producer",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 1,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    },
    {
      "imdb_id": "tt1375666",
      "kp_id": "447301",
      "tmdb_id": "27205",
      "tmdb_tv_id": null,
      "kinorium_id": "472809",
      "title_ru": "Начало",
      "title_en": "Inception",
      "year": 2010,
      "credits": [
        {
          "role": "director",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 0,
          "sources": [
            "kp",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "writer",
          "character_ru": null,
          "character_en": null,
          "job_ru": "Сценарист",
          "job_en": "Writer",
          "ord": 13,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "producer",
          "character_ru": null,
          "character_en": null,
          "job_ru": "Продюсер",
          "job_en": "Producer",
          "ord": 0,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    },
    {
      "imdb_id": "tt0816692",
      "kp_id": "258687",
      "tmdb_id": "157336",
      "tmdb_tv_id": null,
      "kinorium_id": "384511",
      "title_ru": "Интерстеллар",
      "title_en": "Interstellar",
      "year": 2014,
      "credits": [
        {
          "role": "director",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 0,
          "sources": [
            "kp",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "writer",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 16,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        },
        {
          "role": "producer",
          "character_ru": null,
          "character_en": null,
          "job_ru": "Продюсер",
          "job_en": "Producer",
          "ord": 0,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    }
  ],
  "limit": 3,
  "offset": 0,
  "roles": [
    {
      "role": "director",
      "label_ru": "Режиссёры",
      "label_en": "Directors",
      "count": 19
    },
    {
      "role": "actor",
      "label_ru": "Актёры",
      "label_en": "Actors",
      "count": 2
    },
    {
      "role": "self",
      "label_ru": "В роли себя",
      "label_en": "Self",
      "count": 90
    },
    {
      "role": "archive",
      "label_ru": "Архивные кадры",
      "label_en": "Archive Footage",
      "count": 12
    },
    {
      "role": "writer",
      "label_ru": "Сценаристы",
      "label_en": "Writers",
      "count": 20
    },
    {
      "role": "producer",
      "label_ru": "Продюсеры",
      "label_en": "Producers",
      "count": 22
    },
    {
      "role": "cinematographer",
      "label_ru": "Операторы",
      "label_en": "Cinematographers",
      "count": 5
    },
    {
      "role": "composer",
      "label_ru": "Композиторы",
      "label_en": "Composers",
      "count": 1
    },
    {
      "role": "editor",
      "label_ru": "Монтажёры",
      "label_en": "Editors",
      "count": 5
    },
    {
      "role": "crew",
      "label_ru": "Съёмочная группа",
      "label_en": "Crew",
      "count": 3
    }
  ],
  "total": 19
}
```

### Sections by role

```bash
curl -G -H "X-API-Key: $KINODATA_KEY" \
  --data-urlencode "group=role" \
  --data-urlencode "sort=-votes_imdb" \
  --data-urlencode "limit=1" \
  --data-urlencode "fields=title,year" \
  "https://api.kinodata.space/v1.3/persons/kp/41477/filmography"
```

Response `200`:

```json
{
  "has_more": false,
  "items": [
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0468569",
          "kp_id": "111543",
          "tmdb_id": "155",
          "tmdb_tv_id": null,
          "kinorium_id": "352641",
          "title_ru": "Тёмный рыцарь",
          "title_en": "The Dark Knight",
          "year": 2008
        }
      ],
      "label_en": "Directors",
      "label_ru": "Режиссёры",
      "role": "director",
      "total": 19
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt6386408",
          "kp_id": "824979",
          "tmdb_id": "804706",
          "tmdb_tv_id": null,
          "kinorium_id": "760352",
          "title_ru": "Тарантелла",
          "title_en": "Tarantella",
          "year": 1989
        }
      ],
      "label_en": "Actors",
      "label_ru": "Актёры",
      "role": "actor",
      "total": 2
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0458254",
          "kp_id": "686423",
          "tmdb_id": null,
          "tmdb_tv_id": "4385",
          "kinorium_id": "346114",
          "title_ru": "Отчёт Колбера",
          "title_en": "The Colbert Report",
          "year": 2005
        }
      ],
      "label_en": "Self",
      "label_ru": "В роли себя",
      "role": "self",
      "total": 90
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt2610260",
          "kp_id": "1040418",
          "tmdb_id": null,
          "tmdb_tv_id": null,
          "kinorium_id": "1607861",
          "title_ru": "Честные трейлеры",
          "title_en": "Honest Trailers",
          "year": 2012
        }
      ],
      "label_en": "Archive Footage",
      "label_ru": "Архивные кадры",
      "role": "archive",
      "total": 12
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0468569",
          "kp_id": "111543",
          "tmdb_id": "155",
          "tmdb_tv_id": null,
          "kinorium_id": "352641",
          "title_ru": "Тёмный рыцарь",
          "title_en": "The Dark Knight",
          "year": 2008
        }
      ],
      "label_en": "Writers",
      "label_ru": "Сценаристы",
      "role": "writer",
      "total": 20
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0468569",
          "kp_id": "111543",
          "tmdb_id": "155",
          "tmdb_tv_id": null,
          "kinorium_id": "352641",
          "title_ru": "Тёмный рыцарь",
          "title_en": "The Dark Knight",
          "year": 2008
        }
      ],
      "label_en": "Producers",
      "label_ru": "Продюсеры",
      "role": "producer",
      "total": 22
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0154506",
          "kp_id": "8350",
          "tmdb_id": "11660",
          "tmdb_tv_id": null,
          "kinorium_id": "130746",
          "title_ru": "Преследование",
          "title_en": "Following",
          "year": 1998
        }
      ],
      "label_en": "Cinematographers",
      "label_ru": "Операторы",
      "role": "cinematographer",
      "total": 5
    },
    {
      "has_more": false,
      "items": [
        {
          "imdb_id": "tt4907572",
          "kp_id": "926864",
          "tmdb_id": "352114",
          "tmdb_tv_id": null,
          "kinorium_id": "1539254",
          "title_ru": "Куэй",
          "title_en": "Quay",
          "year": 2015
        }
      ],
      "label_en": "Composers",
      "label_ru": "Композиторы",
      "role": "composer",
      "total": 1
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0154506",
          "kp_id": "8350",
          "tmdb_id": "11660",
          "tmdb_tv_id": null,
          "kinorium_id": "130746",
          "title_ru": "Преследование",
          "title_en": "Following",
          "year": 1998
        }
      ],
      "label_en": "Editors",
      "label_ru": "Монтажёры",
      "role": "editor",
      "total": 5
    },
    {
      "has_more": true,
      "items": [
        {
          "imdb_id": "tt0411302",
          "kp_id": "81803",
          "tmdb_id": "43629",
          "tmdb_tv_id": null,
          "kinorium_id": "315411",
          "title_ru": "Жук-скакун",
          "title_en": "Doodlebug",
          "year": 1997
        }
      ],
      "label_en": "Crew",
      "label_ru": "Съёмочная группа",
      "role": "crew",
      "total": 3
    }
  ],
  "limit": 1,
  "offset": 0,
  "roles": [
    {
      "role": "director",
      "label_ru": "Режиссёры",
      "label_en": "Directors",
      "count": 19
    },
    {
      "role": "actor",
      "label_ru": "Актёры",
      "label_en": "Actors",
      "count": 2
    },
    {
      "role": "self",
      "label_ru": "В роли себя",
      "label_en": "Self",
      "count": 90
    },
    {
      "role": "archive",
      "label_ru": "Архивные кадры",
      "label_en": "Archive Footage",
      "count": 12
    },
    {
      "role": "writer",
      "label_ru": "Сценаристы",
      "label_en": "Writers",
      "count": 20
    },
    {
      "role": "producer",
      "label_ru": "Продюсеры",
      "label_en": "Producers",
      "count": 22
    },
    {
      "role": "cinematographer",
      "label_ru": "Операторы",
      "label_en": "Cinematographers",
      "count": 5
    },
    {
      "role": "composer",
      "label_ru": "Композиторы",
      "label_en": "Composers",
      "count": 1
    },
    {
      "role": "editor",
      "label_ru": "Монтажёры",
      "label_en": "Editors",
      "count": 5
    },
    {
      "role": "crew",
      "label_ru": "Съёмочная группа",
      "label_en": "Crew",
      "count": 3
    }
  ],
  "total": 10
}
```

### As self

```bash
curl -G -H "X-API-Key: $KINODATA_KEY" \
  --data-urlencode "role=self" \
  --data-urlencode "sort=-votes_imdb" \
  --data-urlencode "limit=2" \
  --data-urlencode "fields=title,year,credits" \
  "https://api.kinodata.space/v1.3/persons/kp/41477/filmography"
```

Response `200`:

```json
{
  "has_more": true,
  "items": [
    {
      "imdb_id": "tt0458254",
      "kp_id": "686423",
      "tmdb_id": null,
      "tmdb_tv_id": "4385",
      "kinorium_id": "346114",
      "title_ru": "Отчёт Колбера",
      "title_en": "The Colbert Report",
      "year": 2005,
      "credits": [
        {
          "role": "self",
          "character_ru": "гость",
          "character_en": "Guest",
          "job_ru": null,
          "job_en": null,
          "ord": 1194,
          "sources": [
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    },
    {
      "imdb_id": "tt2014338",
      "kp_id": "602678",
      "tmdb_id": "110354",
      "tmdb_tv_id": null,
      "kinorium_id": "599109",
      "title_ru": "Бок о бок",
      "title_en": "Side by Side",
      "year": 2012,
      "credits": [
        {
          "role": "self",
          "character_ru": null,
          "character_en": null,
          "job_ru": null,
          "job_en": null,
          "ord": 12,
          "sources": [
            "kp",
            "tmdb",
            "kinorium"
          ],
          "disputed": false,
          "uncredited": false
        }
      ]
    }
  ],
  "limit": 2,
  "offset": 0,
  "roles": [
    {
      "role": "director",
      "label_ru": "Режиссёры",
      "label_en": "Directors",
      "count": 19
    },
    {
      "role": "actor",
      "label_ru": "Актёры",
      "label_en": "Actors",
      "count": 2
    },
    {
      "role": "self",
      "label_ru": "В роли себя",
      "label_en": "Self",
      "count": 90
    },
    {
      "role": "archive",
      "label_ru": "Архивные кадры",
      "label_en": "Archive Footage",
      "count": 12
    },
    {
      "role": "writer",
      "label_ru": "Сценаристы",
      "label_en": "Writers",
      "count": 20
    },
    {
      "role": "producer",
      "label_ru": "Продюсеры",
      "label_en": "Producers",
      "count": 22
    },
    {
      "role": "cinematographer",
      "label_ru": "Операторы",
      "label_en": "Cinematographers",
      "count": 5
    },
    {
      "role": "composer",
      "label_ru": "Композиторы",
      "label_en": "Composers",
      "count": 1
    },
    {
      "role": "editor",
      "label_ru": "Монтажёры",
      "label_en": "Editors",
      "count": 5
    },
    {
      "role": "crew",
      "label_ru": "Съёмочная группа",
      "label_en": "Crew",
      "count": 3
    }
  ],
  "total": 90
}
```

### Films by rating

```bash
curl -G -H "X-API-Key: $KINODATA_KEY" \
  --data-urlencode "kind=movie" \
  --data-urlencode "votes_imdb.gte=100000" \
  --data-urlencode "sort=-rating_imdb" \
  --data-urlencode "limit=3" \
  --data-urlencode "fields=title,rating_imdb" \
  "https://api.kinodata.space/v1.3/persons/kp/41477/filmography"
```

Response `200`:

```json
{
  "has_more": true,
  "items": [
    {
      "imdb_id": "tt0468569",
      "kp_id": "111543",
      "tmdb_id": "155",
      "tmdb_tv_id": null,
      "kinorium_id": "352641",
      "title_ru": "Тёмный рыцарь",
      "title_en": "The Dark Knight",
      "rating_imdb": 9.1
    },
    {
      "imdb_id": "tt1375666",
      "kp_id": "447301",
      "tmdb_id": "27205",
      "tmdb_tv_id": null,
      "kinorium_id": "472809",
      "title_ru": "Начало",
      "title_en": "Inception",
      "rating_imdb": 8.8
    },
    {
      "imdb_id": "tt0816692",
      "kp_id": "258687",
      "tmdb_id": "157336",
      "tmdb_tv_id": null,
      "kinorium_id": "384511",
      "title_ru": "Интерстеллар",
      "title_en": "Interstellar",
      "rating_imdb": 8.7
    }
  ],
  "limit": 3,
  "offset": 0,
  "roles": [
    {
      "role": "director",
      "label_ru": "Режиссёры",
      "label_en": "Directors",
      "count": 19
    },
    {
      "role": "actor",
      "label_ru": "Актёры",
      "label_en": "Actors",
      "count": 2
    },
    {
      "role": "self",
      "label_ru": "В роли себя",
      "label_en": "Self",
      "count": 90
    },
    {
      "role": "archive",
      "label_ru": "Архивные кадры",
      "label_en": "Archive Footage",
      "count": 12
    },
    {
      "role": "writer",
      "label_ru": "Сценаристы",
      "label_en": "Writers",
      "count": 20
    },
    {
      "role": "producer",
      "label_ru": "Продюсеры",
      "label_en": "Producers",
      "count": 22
    },
    {
      "role": "cinematographer",
      "label_ru": "Операторы",
      "label_en": "Cinematographers",
      "count": 5
    },
    {
      "role": "composer",
      "label_ru": "Композиторы",
      "label_en": "Composers",
      "count": 1
    },
    {
      "role": "editor",
      "label_ru": "Монтажёры",
      "label_en": "Editors",
      "count": 5
    },
    {
      "role": "crew",
      "label_ru": "Съёмочная группа",
      "label_en": "Crew",
      "count": 3
    }
  ],
  "total": 18
}
```
