GET /api/v2/anime/section/
Section
A ready-made page for one section (anime, movies, series, asian, bollywood, nollywood), or that section's filtered list.
Overview
With just id: featured (titles with trailers, for a header; anime uses what's popular this season), filters (the sort, kind, genre and year options that section supports), rows (each with the query behind it) and, for anime, upcoming (upcoming anime with a youtubeId trailer). Add any of sort, kind, genre, year or page to get that section's filtered list instead, as items + pager. Every result really belongs to the section: no non-anime in anime, no anime in movies, only Nigerian titles in nollywood, only Korean/Japanese/Chinese/Thai live-action in asian. Items include trailer (a short MP4, or empty) and backdrop (a landscape still) for hover previews.
GET https://api.animedoc.cloud/api/v2/anime/section/
X-API-Key: <your key>Parameters
| Name | In | Type | Required | Default | Description |
|---|---|---|---|---|---|
| id | query | string | yes | — | anime, movies, series, asian, bollywood or nollywood. |
| sort | query | string | no | Hottest | Latest, Hottest or Rating (filtered list). |
| kind | query | string | no | — | series or movies, where the section has both (filtered list). |
| genre | query | string | no | — | One of the section's filters.genre values, e.g. Action (filtered list). |
| year | query | integer | no | — | Release year, e.g. 2026 (filtered list). |
| country | query | string | no | — | asian only: Korea, Japan, China or Thailand (filtered list). |
| page | query | integer | no | 1 | Page of the filtered list. |
Example request
curl "https://api.animedoc.cloud/api/v2/anime/section/?id=anime" \
-H "X-API-Key: $ANIMEDOC_API_KEY"const params = new URLSearchParams({"id":"anime"});
const res = await fetch("https://api.animedoc.cloud/api/v2/anime/section/?" + params, {
headers: { "X-API-Key": process.env.ANIMEDOC_API_KEY },
});
const { data } = await res.json();
console.log(data);import os
import requests
res = requests.get(
"https://api.animedoc.cloud/api/v2/anime/section/",
params={"id":"anime"},
headers={"X-API-Key": os.environ["ANIMEDOC_API_KEY"]},
timeout=15,
)
res.raise_for_status()
print(res.json()["data"])Example response
{
"code": 0,
"message": "ok",
"data": {
"id": "anime",
"title": "Anime",
"tagline": "Latest episodes, all-time classics and new seasons",
"featured": [
{
"subjectId": "...",
"title": "Black Clover [English]",
"detailPath": "black-clover-english-...",
"cover": "https://...jpg?x-oss-process=image/resize,w_360",
"trailer": "https://macdn.aoneroom.com/media/...-sd.mp4",
"backdrop": "https://...webp?x-oss-process=image/resize,w_960",
"genre": "Anime,Action",
"rating": "8.2"
}
],
"filters": {
"sort": [{ "value": "Latest", "label": "Latest" }, { "value": "Hottest", "label": "Popular" }, { "value": "Rating", "label": "Top rated" }],
"kind": ["series", "movies"],
"genre": ["Action", "Adventure", "Comedy", "Drama", "Fantasy", "Romance"],
"year": ["2026", "2025", "2024"]
},
"rows": [
{ "id": "season", "title": "Popular this season", "query": { "sort": "Hottest", "kind": "series", "genre": "", "year": "2026" }, "items": [] }
],
"upcoming": [
{ "title": "...", "cover": "https://...", "youtubeId": "abc123", "aired": "Jan 2027", "genre": "Action,Fantasy" }
]
}
}Error codes
| Status | Body | What it means |
|---|---|---|
| 400 | {"error": "Missing detailPath query parameter"} | A required parameter is missing or invalid. |
| 401 | {"detail": "An API key is required. Send it as the X-API-Key header. ..."} | No X-API-Key header, or the key doesn't exist (Invalid API key). Every catalog endpoint needs a key; get a free one at /docs/pricing. |
| 403 | {"detail": "Playback through the API needs a paid plan ..."} | Your plan doesn't include this endpoint. The stream proxy needs a paid plan. |
| 404 | {"error": "No playable source is available ..."} | The title or episode doesn't exist, or has no playable source right now. |
| 429 | {"error": "rate_limit_exceeded"} or {"error": "daily_quota_exceeded"} | Over your plan's requests per minute or per day. Wait Retry-After seconds, or upgrade. |
| 502 | {"error": "...", "details": "..."} | The content provider didn't answer in time. Safe to retry with backoff. |
When you go over a limit you get 429 Too Many Requests with a Retry-After header (seconds):
HTTP/1.1 429 Too Many Requests
Retry-After: 34
Content-Type: application/json
{
"error": "rate_limit_exceeded",
"detail": "Your free plan allows 10 requests per minute. Slow down and retry in 34s.",
"limit": 10,
"window": "minute",
"retry_after_seconds": 34,
"upgrade_url": "https://animedoc.cloud/pricing"
}Rate limits per plan
| Plan | Requests / day | Requests / minute | Stream proxy | Price |
|---|---|---|---|---|
| Free | 20 | 10 | No | $0 |
| Starter | 3,000 | 60 | Yes | $12/month or $60/6 months |
| Pro | 20,000 | 300 | Yes | $22/month or $110/6 months |
| Business | 500,000+ | Custom | Yes | From $100/month |
| 3-Day Pass | 2,000 | 60 | Yes | $1 for 3 days |
Every call made with your API key counts as one request. Daily quotas reset at 00:00 UTC. See rate limits for headers and retry advice, or pricing to raise your limits.