Shikimori API

Anime / OAuth Advanced HTTPS
67 C
Measured Score 0 50 100 Speed 4/30 Consistency 20/20 Security 20/20 Browser access 15/15 Transparency 8/15 TESTED 2026-09-21

Overview

Shikimori is a Russian-language anime and manga tracking platform whose API exposes anime metadata, user rates, forums, and calendar data. OAuth 2.0 is required for user-specific operations, making initial setup non-trivial. Developers building anime tracker apps targeting the Russian-speaking community will find this API most relevant.

Beginner Tip

Some read-only endpoints like /api/animes work without OAuth if you include your app name in the User-Agent header. Register your application at shikimori.one/oauth/applications to get client credentials.

Measurement Record

What actually happened when we called this API from our own infrastructure. Every value below was recorded by the request, not copied from the provider's documentation.

Request
GET https://shikimori.one/api/animes?search=Naruto&limit=5
Result
HTTP 200 · application/json · 2,492 bytes · compressed
Response time
727 ms (median of 3) · fastest 717 ms
Transport
TLSv1.3 · TLS_AES_128_GCM_SHA256 · certificate issued by Let's Encrypt
Browser CORS
Allowed — Access-Control-Allow-Origin: *
Served by
ddos-guard
Answered
6 of 8 weekly checks (75%, since 2026-07-31)
Recorded
2026-09-21

Fields Returned

Top-level fields present in the response we captured, with the type and value we actually received.

Field Type Value received
id integer 20
name string Naruto
russian string Наруто
image object {4 fields}
url string /animes/z20-naruto
kind string tv
score string 8.02
status string released
episodes integer 220
episodes_aired integer 0
aired_on string (date) 2002-10-03
released_on string (date) 2007-02-08

Captured Response

Captured from a real request to https://shikimori.one/api/animes?search=Naruto&limit=5 on 2026-09-21. Long arrays and nested objects are truncated to keep the shape readable.

JSON Response · Captured
[
  {
    "id": 20,
    "name": "Naruto",
    "russian": "Наруто",
    "image": {
      "original": "/system/animes/original/20.jpg?1711965679",
      "preview": "/system/animes/preview/20.jpg?1711965679",
      "x96": "/system/animes/x96/20.jpg?1711965679",
      "x48": "/system/animes/x48/20.jpg?1711965679"
    },
    "url": "/animes/z20-naruto",
    "kind": "tv",
    "score": "8.02",
    "status": "released",
    "episodes": 220,
    "episodes_aired": 0,
    "aired_on": "2002-10-03",
    "released_on": "2007-02-08"
  }
]

Field Reference

id Shikimori unique identifier for the anime.
name The original Japanese/romaji title of the anime.
russian Russian-language title of the anime.
score Community average score as a decimal string (e.g. "8.4").
episodes Total planned or aired episode count.
status Airing status: anons, ongoing, or released.

Implementation Example

Calls a real endpoint of this API. Replace any placeholder credentials with your own key.

Request
const url = "https://shikimori.one/api/animes?search=Naruto&limit=5";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "Authorization": "Bearer YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

How This API Fails

We deliberately sent this API a broken request and recorded exactly what came back on 2026-09-21. Knowing the shape of an error before you hit it makes error handling much easier to write.

HTTP 404 Requesting a path that does not exist application/json
{
  "message": "Страница не найдена",
  "code": 404
}

Common Errors & Troubleshooting

Generated guidance based on this API's documentation, not observed by us. Treat it as a starting point and check against the provider's own error reference.

401 Unauthorized Missing OAuth token or invalid client credentials.
✓ Complete the OAuth flow at shikimori.one/oauth/applications and pass the token as Authorization: Bearer <token>.
403 Forbidden Rate limit exceeded, Shikimori enforces 5 req/s and 90 req/min.
✓ Slow down requests to stay within 5 per second and add the User-Agent header with your app name.
422 Unprocessable Entity Invalid filter parameters or unsupported query combinations.
✓ Check the Shikimori API docs for supported filter keys; not all MAL-style filters apply here.

Measured Score Breakdown

Live HTTP request to the API endpoint

Speed 4/30
Consistency 20/20
Security 20/20
Browser access 15/15
Transparency 8/15
Endpoint Response Time 727ms

Fully tested on Sep 21, 2026

Technical Specifications

Auth OAuth
HTTPS REQUIRED
CORS UNKNOWN
Category Anime
Difficulty Advanced
Endpoint last called: 2026-09-21

Related Tags

Similar APIs

View All →