Authentication
The AniKura API supports two authentication methods. Third-party developers should use API keys. Bearer tokens are for the AniKura web app and browser extension only.
Anonymous Access
Some queries work without any authentication:
- Search for anime and manga by title
- View airing schedules
- Fetch public anime/manga metadata
Limitations of unauthenticated access:
- Adult content is always filtered out
- Streaming links and movie release data are not available
- Rate limits are most restrictive (1 request per 3 seconds, 500 per day)
- No access to user list data
Register for a free API key to lift the daily cap to 2,000 requests/day — it takes about 30 seconds.
API Key Authentication
Include your API key in the X-API-Key header on every request:
curl -X POST https://api.anikura.io/graphql \ -H "Content-Type: application/json" \ -H "X-API-Key: ak_live_xxxxxxxxxxxxxxxx" \ -d '{"query": "{ anime(id: \"...\") { titleRomaji } }"}'JavaScript example
const response = await fetch("https://api.anikura.io/graphql", { method: "POST", headers: { "Content-Type": "application/json", "X-API-Key": process.env.ANIKURA_API_KEY, }, body: JSON.stringify({ query: ` query SearchAnime($query: String!) { searchAnime(query: $query, limit: 5) { id titleRomaji averageScore } } `, variables: { query: "demon slayer" }, }),});
const { data } = await response.json();Key format
API keys follow the format ak_live_ followed by a random string. The key is shown once at creation time — store it securely. AniKura stores only the SHA-256 hash and cannot recover the plaintext key.
Bearer Token (web app / extension only)
The Next.js frontend uses Auth.js to issue ES256 JWTs. The Rust API validates these tokens on every request using the public key. This method is only for the AniKura website and browser extension — third-party developers should use API keys.
curl -X POST https://api.anikura.io/graphql \ -H "Content-Type: application/json" \ -H "Authorization: Bearer eyJhbGciOiJFUzI1NiIs..." \ -d '{"query": "{ viewer { username } }"}'Access Tiers
| Unauthenticated | Free API Key | Indie ($9.99/mo) | Commercial ($29.99/mo) | |
|---|---|---|---|---|
| Requests/second | 1 per 3 seconds | 1 per 2 seconds | 1 per second | 1 per second |
| Daily cap | 500 | 2,000 | Unlimited | Unlimited |
| Data access | Public metadata | Core metadata | Full | Full |
| Streaming links | No | No | Yes | Yes |
| Movie releases | No | No | Yes | Yes |
| Webhooks | No | No | Yes | Yes |
| SLA | Best effort | Best effort | 99.9% uptime | 99.9% uptime |
| Support | — | Community Discord | Priority email | Priority email |
Related
- API Key Registration — generate a key from your dashboard
- Rate Limits — understand quotas and handle 429 responses