Catalogue API
For developers
The external API provides the RusLit catalogue - eras, authors and work cards in five languages - for libraries, schools, educational and reference services. Access is granted on application after review by an administrator.
What the API provides
- Eras: names, years and descriptions.
- Authors: names, years of life and biographies.
- Works: titles, annotations, history of creation, context and interesting facts.
- Table of contents: chapter numbers and titles.
- Covers in two sizes (WebP and JPEG) with source and licence.
- All card texts in five languages at once - Russian, English, French, Spanish and Chinese - plus links to the site pages.
- A modification date on every record and an updatedSince filter, so you can fetch only what changed.
Chapter texts are not available through the API: the works can only be read on the site. Every card links to the site pages.
How to get access
- Sign up on the site and confirm your email.
- Submit an application under “My apps”: describe the app and choose a rate limit tier.
- An administrator reviews the application and you get an email with the decision. The first approval grants access for 6 months.
- Create the app secret. It is shown only once - store it somewhere safe.
- Get a token with OAuth 2.0 (client credentials) and send it in the Authorization header. A token is valid for one hour.
- You get reminders 30 and 7 days before access ends. An extension adds 12 months.
Rate limit tiers
| Tier | Requests per minute | Requests per day |
|---|---|---|
| Basic for most apps | 60 | 10,000 |
| Extended for large catalogues and frequent synchronisation | 600 | 200,000 |
Limits apply per app. When a limit is exceeded, the API responds with 429 and a Retry-After header.
Key rules
- Credit the source: “RusLit” with a link to the work's page on the site.
- Do not try to fetch chapter texts from the site automatically - the terms forbid it.
- Store the data on your side and refresh it with updatedSince instead of requesting the whole catalogue every time.
- Version v1 only gets additions. Breaking changes will come in v2, and v1 will keep working for at least 6 more months after that.