Anivex

API Pública

Acesso gratuito e sem autenticação a dados de animes, gêneros e estúdios catalogados no Anivex. Apenas leitura — endpoints de escrita requerem autenticação.

Base URL https://www.anivex.org/api

Limites de requisição

Endpoint Limite Janela
GET /anime, /anime/:slug, /genres, /studios 60 req 1 minuto
GET /anime/search 30 req 1 minuto

Ao exceder o limite a API retorna 429 Too Many Requests com o header Retry-After indicando quantos segundos aguardar.

Endpoints

GET /anime

Lista animes publicados com filtros e paginação.

Parâmetros

genre string Slug do gênero (ex: acao, romance)
year integer Ano de lançamento (1900–2100)
type string TV, Movie, OVA, ONA, Special
status string Airing, Finished, Upcoming
season string spring, summer, fall, winter
min_score number Nota mínima (0–10)
has_trailer boolean Filtrar por presença de trailer
sort string newest, oldest, score_desc, score_asc, title_asc, title_desc
per_page integer Itens por página — máx 25 (padrão: 25)
page integer Página (padrão: 1)

Exemplo

# Listar top animes de ação ordenados por nota curl "https://www.anivex.org/api/anime?genre=drama&sort=score_desc&per_page=10"
GET /anime/search

Busca por título (suporta título original, inglês e japonês). Limite: 30 req/min.

Parâmetros

q string * Termo de busca — mín. 2, máx. 120 caracteres
per_page integer Itens por página — máx 25 (padrão: 25)
page integer Página (padrão: 1)

Exemplo

curl "https://www.anivex.org/api/anime/search?q=_Summer&per_page=5"
GET /anime/:slug

Detalhes completos de um anime: sinopse, gêneros, estúdios, personagens, episódios e músicas.

Parâmetros de path

slug string * Identificador único do anime (ex: summer)

Exemplo

curl "https://www.anivex.org/api/anime/summer"

Resposta de exemplo

{ "data": { "id": 4355, "slug": "summer", "title": "_Summer", "title_english": null, "type": "OVA", "episodes": 2, "status": "Finalizado", "score": "5.68", "year": 2006, "image_url": "/storage/images/anime/0d41c055703c5adff7429fad7624a88f.webp", "genres": [ { "id": 12, "name": "Drama", "slug": "drama" }, { "id": 18, "name": "Romance", "slug": "romance" } ], "studios": [ { "id": 441, "name": "Rikuentai", "slug": "rikuentai" } ], "...": "(+ synopsis, characters, episodes_list, themes)" } }
GET /genres

Lista todos os gêneros disponíveis. Resposta cacheada por 6 horas.

Resposta de exemplo

{ "data": [ { "id": 1, "name": "Ação", "slug": "action" }, { "id": 64, "name": "Ambiente de Trabalho", "slug": "workplace" }, { "id": 74, "name": "Animais de Estimação", "slug": "pets" } ] }
GET /studios

Lista todos os estúdios disponíveis. Resposta cacheada por 6 horas.

Resposta de exemplo

{ "data": [ { "id": 70, "name": "100studio", "slug": "100studio" }, { "id": 682, "name": "10Gauge", "slug": "10gauge" }, { "id": 897, "name": "1IN", "slug": "1in" } ] }

Códigos de erro

Código Significado
200Sucesso
422Parâmetros inválidos — verifique o campo errors na resposta
404Anime não encontrado ou não publicado
429Limite de requisições atingido — aguarde o tempo indicado em Retry-After

Dados fornecidos para uso não comercial. Não redistribua em massa. Respeite os rate limits.