Kavita Reader API

For all things regarding reading, mainly focusing on non-Book related entities

Operations 39

GET /api/Reader/pdf Returns the PDF for the chapterId #
GET /api/Reader/image Returns an image for a given chapter. Will perform bounding checks #
GET /api/Reader/thumbnail Returns a thumbnail for the given page number #
GET /api/Reader/bookmark-image Returns an image for a given bookmark series. #
GET /api/Reader/file-dimensions Returns the file dimensions for all pages in a chapter. #
GET /api/Reader/chapter-info Returns various information about a Chapter. #
GET /api/Reader/bookmark-info Returns various information about all bookmark files for a Series. #
POST /api/Reader/mark-chapter-read Mark a single chapter as read #
POST /api/Reader/mark-read Marks a Series as read. #
POST /api/Reader/mark-unread Marks a Series as Unread. #
POST /api/Reader/mark-volume-unread Marks all chapters within a volume as unread #
POST /api/Reader/mark-volume-read Marks all chapters within a volume as Read #
POST /api/Reader/mark-multiple-read Marks all chapters within a list of volumes as Read. #
POST /api/Reader/mark-multiple-unread Marks all chapters within a list of volumes as Unread. #
POST /api/Reader/mark-multiple-series-read Marks all chapters within a list of series as Read #
POST /api/Reader/mark-multiple-series-unread Marks all chapters within a list of series as Unread #
GET /api/Reader/get-progress Returns Progress (page number) for a chapter for the logged in user #
POST /api/Reader/progress Save page against Chapter for authenticated user #
GET /api/Reader/continue-point Continue point is the chapter which you should start reading again from. #
GET /api/Reader/has-progress Returns if the user has reading progress on the Series #
GET /api/Reader/chapter-bookmarks Returns a list of bookmarked pages for a given Chapter #
POST /api/Reader/all-bookmarks Returns a list of all bookmarked pages for a User #
POST /api/Reader/remove-bookmarks Removes all bookmarks for all chapters linked to a Series #
POST /api/Reader/bulk-remove-bookmarks Removes all bookmarks for all chapters linked to a Series #
GET /api/Reader/volume-bookmarks Returns all bookmarked pages for a given volume #
GET /api/Reader/series-bookmarks Returns all bookmarked pages for a given series #
POST /api/Reader/bookmark Bookmarks a page against a Chapter #
POST /api/Reader/unbookmark Removes a bookmarked page for a Chapter #
GET /api/Reader/next-chapter Returns the next logical chapter from the series #
GET /api/Reader/prev-chapter Returns the previous logical chapter from the series #
GET /api/Reader/time-left For the current user, returns an estimate on how long it would take to finish… #
GET /api/Reader/time-left-for-chapter For the current user, returns an estimate on how long it would take to finish… #
GET /api/Reader/ptoc Returns the user's personal table of contents for the given chapter #
DELETE /api/Reader/ptoc Deletes the user's personal table of content for the given chapter #
POST /api/Reader/create-ptoc Create a new personal table of content entry for a given chapter #
GET /api/Reader/prompt-reread/series Check if we should prompt the user for rereads for the given series #
GET /api/Reader/prompt-reread/volume Check if we should prompt the user for rereads for the given volume #
GET /api/Reader/prompt-reread/chapter Check if we should prompt the user for rereads for the given chapter #
GET /api/Reader/first-progress-date Get api reader first progress date #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kavita:kavita-reader-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kavita-reader-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Kavita Reader API
  description: Kavita provides a set of APIs authenticated via an Auth Key passed in the `x-api-key` header. Generate an Auth Key under User Settings → Manage Auth Keys, paste it into the Authorize panel, and all Try It requests will include it. Assume all fields of a payload are required unless marked optional. Built against v0.9.1.15
  license:
    name: GPL-3.0
    url: https://github.com/Kareadita/Kavita/blob/develop/LICENSE
  version: 0.9.1.15
servers:
- url: '{protocol}://{hostpath}'
  variables:
    protocol:
      default: http
      enum:
      - http
      - https
    hostpath:
      default: localhost:5000
security:
- AuthKey: []
tags:


# --- truncated at 32 KB (64 KB total) ---
# Full source: https://artifacts.apis.io/kavita/openapi/kavita-reader-api-openapi.yml