GET /api/v2/anime/trending/

Trending

What most people are watching right now, across anime, movies and series.

Overview

Pages start at 0. Use it for a "Most watched" or "Trending now" row. Same item shape as Search and Browse.

GET https://api.animedoc.cloud/api/v2/anime/trending/
X-API-Key: <your key>

Parameters

NameInTypeRequiredDefaultDescription
pagequeryintegerno0Page number, starting at 0.
perPagequeryintegerno24Items per page (max 48).

Example request

cURL
curl "https://api.animedoc.cloud/api/v2/anime/trending/?page=0&perPage=24" \
  -H "X-API-Key: $ANIMEDOC_API_KEY"
JavaScript (Node 18+)
const params = new URLSearchParams({"page":"0","perPage":"24"});
const res = await fetch("https://api.animedoc.cloud/api/v2/anime/trending/?" + params, {
  headers: { "X-API-Key": process.env.ANIMEDOC_API_KEY },
});
const { data } = await res.json();
console.log(data);
Python
import os
import requests

res = requests.get(
    "https://api.animedoc.cloud/api/v2/anime/trending/",
    params={"page":0,"perPage":24},
    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": {
    "pager": { "page": 0, "hasMore": true },
    "items": [
      {
        "subjectId": "3325889774849773352",
        "subjectType": 2,
        "title": "Naruto",
        "detailPath": "naruto-2D7JgAQBGX3",
        "cover": "https://pbcdnw.aoneroom.com/image/.../naruto.jpg?x-oss-process=image/resize,w_360",
        "genre": "Anime,Action,Adventure",
        "releaseDate": "2005-09-10",
        "rating": "8.4",
        "country": "Japan"
      }
    ]
  }
}

Error codes

StatusBodyWhat 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

PlanRequests / dayRequests / minuteStream proxyPrice
Free2010No$0
Starter3,00060Yes$12/month or $60/6 months
Pro20,000300Yes$22/month or $110/6 months
Business500,000+CustomYesFrom $100/month
3-Day Pass2,00060Yes$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.