GET /api/v2/anime/home/

Home Feed

Everything a streaming front page needs in one call: banners and ready-made catalog rows.

Overview

Returns banners (featured titles with a wide backdrop image) and rows: Most watched today, Latest anime, Latest movies, Popular anime, New anime movies, Popular movies, Popular series, Top rated anime, Latest animation, then curated collections. Rows built from Browse include a browse object with the exact channelId/sort/genre to page through the full list. Items share one compact shape; pass detailPath to Details and subjectId + detailPath to Media Sources. Cached for 10 minutes.

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

Parameters

NameInTypeRequiredDefaultDescription

Example request

cURL
curl "https://api.animedoc.cloud/api/v2/anime/home/" \
  -H "X-API-Key: $ANIMEDOC_API_KEY"
JavaScript (Node 18+)
const res = await fetch("https://api.animedoc.cloud/api/v2/anime/home/", {
  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/home/",
    params={},
    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": {
    "banners": [
      {
        "subjectId": "6377932688309244960",
        "subjectType": 2,
        "title": "The Terminal List S2",
        "detailPath": "the-terminal-list-YMJKCBXZ8B7",
        "cover": "https://pbcdn.aoneroom.com/image/...jpg?x-oss-process=image/resize,w_480",
        "backdrop": "https://pbcdn.aoneroom.com/image/...webp?x-oss-process=image/resize,w_1600",
        "genre": "Action,Drama,Thriller",
        "releaseDate": "2022-07-01",
        "rating": "7.9",
        "country": "United States",
        "description": "..."
      }
    ],
    "rows": [
      {
        "id": "latest-anime",
        "title": "Latest anime",
        "browse": { "channelId": 2, "sort": "Latest", "genre": "Anime" },
        "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.