# Alternativa à API do Kinopoisk

> O Kinopoisk é um site de filmes em russo e não publica uma API aberta de uso geral. Desenvolvedores costumam recorrer a serviços de terceiros, então consulte a documentação deles. O amodb é uma API paga que retorna títulos em russo com language=ru-RU, encontra um título pelo ID do Kinopoisk e inclui a nota do Kinopoisk quando conhecida.

## O que uma alternativa pode e não pode oferecer

O Kinopoisk é um site de filmes em russo e não publica uma API aberta de uso geral. Desenvolvedores costumam usar serviços de terceiros, cada um com seus próprios termos, então consulte a documentação deles. O amodb é uma API independente e não um serviço do Kinopoisk. Ele cobre três necessidades comuns em projetos em russo: títulos e sinopses em russo, a busca por ID do Kinopoisk e a nota do Kinopoisk ao lado de outras notas, quando conhecida.

## Blocos de construção

| Você precisa de                          | Como                                             | O que retorna                                       |
| ---------------------------------------- | ------------------------------------------------ | --------------------------------------------------- |
| Título e sinopse em russo                | `language=ru-RU` em qualquer chamada de detalhes | `title` em russo, `original_title` inalterado       |
| Um título a partir de um ID do Kinopoisk | `GET /3/find/361?external_source=kinopoisk_id`   | `movie_results` com ID 550                          |
| O ID do Kinopoisk de um título           | `GET /3/movie/550/external_ids`                  | `kinopoisk_id` como string, `"361"` aqui            |
| A nota do Kinopoisk                      | `GET /3/movie/550/ratings`                       | `kinopoisk` com `value` e `votes`, ou null          |
| Texto em ucraniano ou bielorrusso        | `language=uk-UA` ou `language=be-BY`             | Campos localizados, inglês onde não houver tradução |

O próximo bloco mostra uma resposta de detalhes em russo com `append_to_response=ratings`. É uma resposta real para Fight Club (ID 550), reduzida aos campos usados aqui e com a sinopse encurtada.

```json
{
  "id": 550,
  "original_title": "Fight Club",
  "overview": "Сотрудник страховой компании страдает хронической бессонницей и отчаянно пытается вырваться из му...",
  "release_date": "1999-10-15",
  "tagline": "«Интриги. Хаос. Мыло»",
  "title": "Бойцовский клуб",
  "ratings": {
    "imdb": {
      "value": 8.8,
      "votes": 2669989
    },
    "kinopoisk": {
      "value": 8.7,
      "votes": null
    },
    "metacritic": {
      "value": 67,
      "votes": null
    },
    "rotten_tomatoes": {
      "value": 81,
      "votes": null
    },
    "tmdb": {
      "value": 8.437,
      "votes": 33039
    }
  }
}
```

O objeto de avaliações sempre lista as mesmas cinco chaves. Aqui a nota do Kinopoisk é 8.7 e o `votes` é `null`, então não dá para presumir que exista um número de votos do Kinopoisk. Os detalhes estão na página de [avaliações](https://amodb.dev/pt/ratings/).

## Comparação de recursos

| Recurso               | Kinopoisk                                                              | amodb                                                          |
| --------------------- | ---------------------------------------------------------------------- | -------------------------------------------------------------- |
| Modelo de preço       | Sem API aberta geral, consulte a documentação de serviços de terceiros | Pré-pago, de 1 a 24 meses por compra                           |
| Plano gratuito        | Consulte a documentação deles                                          | Nenhum, e sem período de teste                                 |
| Autenticação          | Consulte a documentação deles                                          | `api_key` ou cabeçalho Bearer                                  |
| Formato da resposta   | Consulte a documentação deles                                          | JSON no formato TMDB v3                                        |
| Idiomas               | Site em russo                                                          | 14 idiomas de interface, o russo entre eles                    |
| Filmes                | No site                                                                | Detalhes, créditos, imagens, vídeos                            |
| TV                    | No site                                                                | Séries, temporadas e episódios                                 |
| Pessoas               | No site                                                                | Perfis e filmografia                                           |
| Imagens               | No site                                                                | `img.amodb.dev`, sem chave                                     |
| Avaliações            | Nota própria do público, no site                                       | Nota do Kinopoisk mais quatro outras fontes, quando conhecidas |
| Limite de requisições | Consulte a documentação deles                                          | 20, 40 ou 120 por minuto por chave                             |
| Uso comercial         | Consulte a documentação deles                                          | Planos pagos, veja [preços](https://amodb.dev/pt/pricing/)     |
| Compatibilidade       | Sem API aberta geral, consulte a documentação deles                    | Leituras do TMDB v3 e OMDb                                     |

## Onde o amodb se diferencia

- **Um contrato documentado.** Caminhos, parâmetros, corpos de erro e limites estão escritos, e uma chave atende todos os endpoints.
- **Russo ao lado de outros idiomas.** A mesma chamada com outro valor de `language` devolve os mesmos campos em outro idioma. Isso ajuda quando o seu público lê russo, ucraniano e inglês.
- **Várias notas em um objeto.** Você pode mostrar a nota do Kinopoisk ao lado de IMDb, Metacritic e Rotten Tomatoes, cada uma `null` quando é desconhecida.
- **Títulos originais preservados.** `original_title` e `original_name` guardam o título no idioma de origem, inclusive japonês e coreano, mesmo que esses não sejam idiomas de interface.

## Onde o Kinopoisk é mais indicado

- **A própria comunidade.** Resenhas, listas, páginas de usuários e discussões locais ficam no site. O amodb não oferece nada disso, só a nota quando conhecida.
- **Tudo além dos metadados.** Para conteúdo que não é um campo de metadados, use o próprio site. Uma API de metadados não o carrega.
- **A nota própria do público.** O valor é produzido lá primeiro. No amodb ele pode ser `null` para um título novo ou pouco conhecido, e o número de votos pode ser `null` mesmo com a nota preenchida.

## Migrar para o amodb

Reúna os IDs do Kinopoisk que você guarda, mapeie-os uma vez com `/3/find` e mantenha o ID numérico do amodb ao lado. Depois disso, peça os detalhes em russo e leia a nota na mesma resposta.

```python
import os
import requests

KEY = os.environ["AMODB_KEY"]
BASE = "https://api.amodb.dev/3"
HEADERS = {"Authorization": f"Bearer {KEY}"}


def get(path, **params):
    r = requests.get(BASE + path, params=params, headers=HEADERS, timeout=10)
    r.raise_for_status()
    return r.json()


found = get("/find/361", external_source="kinopoisk_id")
movie_id = found["movie_results"][0]["id"]
movie = get(f"/movie/{movie_id}", language="ru-RU", append_to_response="ratings")
kp = movie["ratings"]["kinopoisk"]
print(movie["title"], "/", movie["original_title"])
print("Kinopoisk:", kp["value"] if kp else "not known")
```

Um array `movie_results` vazio significa que não há correspondência para aquele ID. O ID do Kinopoisk de uma série preenche `tv_results`, então leia os dois arrays quando não souber o tipo. Trate um 429 esperando os segundos de `Retry-After`. A lista de idiomas está em [idiomas](https://amodb.dev/pt/languages/), e as regras de busca estão em [busca por ID externo](https://amodb.dev/pt/find-by-external-id/).

## Lidar com lacunas no texto em russo

Um campo de texto pode vir vazio quando não existe tradução em russo para um título. Verifique se há uma string vazia e peça esse título de novo com `language=en-US`. Para pôsteres com letras em russo, chame `/3/movie/550/images?include_image_language=ru,null` e escolha em `posters`. O valor `null` mantém as artes sem texto na lista. Veja [imagens](https://amodb.dev/pt/images-api/) para os tamanhos.

## Preços

O amodb não tem plano gratuito. Você pré-paga 1, 3, 6, 12 ou 24 meses em um de três planos, e um período maior custa 10, 20, 30 ou 40 por cento menos. Os planos permitem 20, 40 ou 120 requisições por minuto, retornam os mesmos dados e não renovam automaticamente. Os valores estão em [preços](https://amodb.dev/pt/pricing/).

## Perguntas e respostas

### O Kinopoisk tem uma API pública oficial?

O Kinopoisk é um site de filmes em russo e não publica uma API aberta de uso geral. Desenvolvedores costumam usar serviços de terceiros, cada um com seus próprios termos. Consulte a documentação deles antes de depender de um.

### Como encontro um título a partir de um ID do Kinopoisk no amodb?

Chame /3/find com o ID do Kinopoisk e external_source=kinopoisk_id. Por exemplo, 361 resolve para Fight Club, que tem o ID 550, e 404900 resolve para Breaking Bad, ID 1396. O resultado chega em movie_results ou tv_results no formato do TMDB.

### A nota do Kinopoisk sempre é retornada?

Não. A chave kinopoisk no objeto ratings traz value e votes quando a nota é conhecida, e null caso contrário. A nota é sobre 10, com uma casa decimal. votes pode ser null mesmo quando value está preenchido, então mostre-o só quando existir.

### Quais idiomas posso pedir além do russo?

Catorze no total, incluindo ucraniano e bielorrusso. Envie uma tag do TMDB como uk-UA ou be-BY no parâmetro language. Tags sem suporte voltam para o inglês, e os títulos originais ficam em original_title.

### Recebo o texto das resenhas do Kinopoisk?

Não. O amodb retorna a nota do Kinopoisk quando conhecida. O texto das resenhas, as listas e os recursos de comunidade do site não fazem parte da API, e o endpoint de resenhas no estilo TMDB retorna uma lista vazia para a maioria dos títulos.

## Páginas relacionadas

- [API de metadados de filmes multilíngue](https://amodb.dev/pt/multilingual-movie-metadata-api/): API de metadados de filmes com 14 idiomas. Use tags do TMDB, leia todas as traduções, volte ao inglês e trate o hebraico da direita para a esquerda.
- [Avaliações de filmes e séries](https://amodb.dev/pt/ratings/): API de avaliações de filmes com as notas do IMDb, Kinopoisk, Metacritic, Rotten Tomatoes e TMDB em uma só chamada, com null se a fonte for desconhecida.
- [Buscar por ID externo](https://amodb.dev/pt/find-by-external-id/): Busque um filme, série ou pessoa por id do IMDb, TVDB, Wikidata ou Kinopoisk com o endpoint find do TMDB e leia ids externos e dados do Wikidata de um título.
- [Idiomas](https://amodb.dev/pt/languages/): O amodb serve títulos, sinopses e nomes em 14 idiomas. Passe uma tag no estilo TMDB como ru-RU ou pt-BR em language; qualquer outra tag volta para o inglês.
- [Alternativa à API do IMDb](https://amodb.dev/pt/imdb-api-alternative/): O IMDb não tem API REST gratuita geral. Busque títulos por ID do IMDb, leia a nota quando conhecida e obtenha elenco, imagens e trailers em uma API JSON paga.
- [Preços](https://amodb.dev/pt/pricing/): Os planos do amodb diferem só em requisições por minuto: 20, 40 ou 120. Todo plano inclui todos os dados do TMDB v3 e OMDb. Pré-pago, sem renovação nem teste.

Atualizado: 2026-10-18. Source: https://amodb.dev/pt/kinopoisk-api-alternative/
