API Key Registration
API keys provide authenticated access to the AniKura GraphQL API with higher rate limits than unauthenticated requests. A free key takes about 30 seconds to generate.
How to Register
- Sign in to your AniKura account at anikura.io
- Navigate to Settings → API Keys
- Click Generate Key
- Enter an optional label for this key (e.g. “My Anime Bot”, “Home Dashboard”)
- Click Confirm
- Copy the key immediately — it is shown only once
AniKura stores the SHA-256 hash of your key, not the plaintext. If you lose the key, delete it and generate a new one.
Key Format
API keys follow the format:
ak_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxWhere ak_ is the prefix, live_ indicates a production key, followed by a random string.
Using Your Key
Include the key in the X-API-Key header of every request:
curl -X POST https://api.anikura.io/graphql \ -H "Content-Type: application/json" \ -H "X-API-Key: ak_live_xxxxxxxxxxxxxxxx" \ -d '{"query": "{ searchAnime(query: \"naruto\") { id titleRomaji } }"}'JavaScript / TypeScript
const ANIKURA_API_KEY = process.env.ANIKURA_API_KEY; // Store in environment variable
async function queryAniKura(query: string, variables?: Record<string, unknown>) { const response = await fetch("https://api.anikura.io/graphql", { method: "POST", headers: { "Content-Type": "application/json", "X-API-Key": ANIKURA_API_KEY, }, body: JSON.stringify({ query, variables }), }); return response.json();}Python
import osimport requests
ANIKURA_API_KEY = os.environ["ANIKURA_API_KEY"]
def query_anikura(query, variables=None): response = requests.post( "https://api.anikura.io/graphql", headers={ "Content-Type": "application/json", "X-API-Key": ANIKURA_API_KEY, }, json={"query": query, "variables": variables or {}}, ) response.raise_for_status() return response.json()Key Tiers
| Tier | Cost | Daily Cap | Rate | Access |
|---|---|---|---|---|
| Free | Free | 2,000 req/day | 1 per 2 seconds | Core metadata |
| Indie | $9.99/month | Unlimited | 1 per second | Full (streaming, releases) |
| Commercial | $29.99/month | Unlimited | 1 per second | Full + 99.9% SLA + priority support |
Upgrade your tier from Settings → Subscription. Your API key works across tiers — no need to regenerate when upgrading.
Key Management
Rotating a key
If you believe a key is compromised:
- Go to Settings → API Keys
- Click Delete next to the key you want to revoke
- The key is invalidated immediately
- Click Generate Key to create a replacement
Update your applications with the new key as soon as possible. There is no grace period — the deleted key stops working immediately.
Multiple keys
You can have up to 5 active API keys per account. This is useful if you run multiple applications and want to track usage separately, or to enable zero-downtime key rotation.
Monitoring Usage
Check your remaining quota in the response headers of every API request:
| Header | Value |
|---|---|
X-RateLimit-Remaining | Requests remaining today |
X-RateLimit-Reset | Seconds until the daily cap resets (midnight UTC) |
You can also view your usage history in Settings → API Keys.
Terms of Use
By using the AniKura API you agree to:
- Respect rate limits — implement proper backoff and do not hammer the API
- No scraping — do not attempt to bulk-download the entire database
- Attribution — if building a public-facing application, include “Data from AniKura.io” or link back to the relevant AniKura pages
- No resale — do not resell raw API data to third parties
- No abuse — do not attempt to bypass rate limits via multiple keys or IP rotation
Violations may result in key revocation or account suspension.
Related
- Authentication Guide — detailed auth methods and tier comparison
- Rate Limits — how quotas work and how to handle 429 responses
- API Overview — interactive playground and example queries