Trove Help Trove home

OPDS

OPDS (Open Publication Distribution System) lets you browse and download books from your Trove library using any OPDS-compatible reading app. Point your app at Trove's catalog URL, authenticate, and your full library is available on any device: e-readers, tablets, phones.

Trove also provides a Komga-compatible API for apps that speak the Komga protocol (Tachiyomi, Komelia, etc.), which is especially useful for comic/manga readers that support per-page streaming of CBX files. Both APIs share the same user accounts and respect library access permissions.

Server Control

Go to Settings › OPDS in Trove. The top section has two toggles:

OPDS and the Komga API switched on, their addresses, and an OPDS user

OPDS Server Enabled activates the standard OPDS catalog at /api/v1/opds. This is what most reading apps connect to.

Komga API activates the Komga-compatible API at /komga/api/. Enable this if you use Tachiyomi, Komelia, or other Komga clients. It uses the same OPDS user accounts for authentication.

When the Komga API is enabled, an additional toggle appears:

Endpoints

Once enabled, the endpoint URLs appear in the Endpoints section with copy buttons. The URLs are auto-generated based on your Trove instance.

EndpointURL PatternUsed by
OPDS Cataloghttp://your-server:6060/api/v1/opdsKOReader, Moon+ Reader, Panels, and other OPDS apps
Komga APIhttp://your-server:6060/komga/apiTachiyomi, Komelia, and other Komga clients

OPDS Users

OPDS uses its own user accounts, separate from your Trove login. Both the OPDS catalog and Komga API authenticate with these same credentials using HTTP Basic Auth.

To create a user:

  1. In the OPDS Users section, click Add User
  2. Enter a username, password, and default sort order
  3. Click Create

Each OPDS user is linked to the Trove user who created it, which determines library access: the OPDS user can only see libraries that the parent Trove user has access to. Admins can see everything.

Sort Order

Each OPDS user has a configurable sort order that controls how books appear in feeds. You can set it when creating the user or edit it later with the pencil icon. The options are:

Sort OrderDescription
Recently AddedNewest books first (default)
Title (A-Z / Z-A)Alphabetical by title
Author (A-Z / Z-A)Alphabetical by author
Series (A-Z / Z-A)Alphabetical by series name
Rating (Low-High / High-Low)By average rating

Connecting a Reading App

In your reading app, add a new OPDS catalog with:

Compatible Apps

AppPlatformNotes
KOReaderAndroid, iOS, Linux, WindowsAlso supports progress sync for books downloaded via OPDS
Moon+ ReaderAndroid
FBReaderMulti-platform
PanelsiOS, macOS
YomuiOS
KyBook 3iOS, macOS
BooxAndroid (e-ink devices)
TachiyomiAndroidUse the Komga API endpoint
KomeliaMulti-platformUse the Komga API endpoint

KOReader Example

  1. Open KOReader (with no book open)
  2. Tap the magnifying glass icon in the top menu
  3. Select OPDS catalog
  4. Tap the hamburger menu (top left) and select Add catalog
  5. Enter a name, your OPDS URL, username, and password
  6. Save and browse your library

Available Feeds

Most reading apps automatically discover these feeds from the root catalog URL. You don't need to enter them manually.

FeedPathDescription
Root Catalog/api/v1/opdsMain entry point with navigation links to all feeds below
All Books/api/v1/opds/catalogFull catalog with pagination and search
Recently Added/api/v1/opds/recentBooks sorted by date added
Libraries/api/v1/opds/librariesBrowse by library
Shelves/api/v1/opds/shelvesBrowse by shelf
Magic Shelves/api/v1/opds/magic-shelvesBrowse dynamic magic shelves
Authors/api/v1/opds/authorsBrowse by author
Series/api/v1/opds/seriesBrowse by series
Surprise Me/api/v1/opds/surprise25 random books
Search/api/v1/opds/catalog?q={terms}Search across titles, authors, descriptions, publishers, ISBNs, series, languages, and categories

All acquisition feeds support pagination with page (default 1) and size (default 50, max 100) query parameters.

Books include series metadata (belongs-to-collection) when available, so apps that support EPUB 3 collection grouping can display series information.

Komga-Compatible API

The Komga API exposes your library in the format that Komga clients expect. This is particularly useful for CBX files (CBZ, CBR, CB7) because Komga clients can stream individual pages without downloading the full archive.

Key endpoints:

EndpointWhat it does
GET /komga/api/v1/librariesList libraries the user has access to
GET /komga/api/v1/seriesList series (with optional library_id filter)
GET /komga/api/v1/booksList books
GET /komga/api/v1/books/{id}/fileDownload the full book file
GET /komga/api/v1/books/{id}/thumbnailGet the book cover
GET /komga/api/v1/books/{id}/pagesGet page metadata (page count, filenames, media types)
GET /komga/api/v1/books/{id}/pages/{num}Get a single page image (supports ?convert=png)
GET /komga/api/v1/collectionsList collections

Authentication is the same: HTTP Basic Auth with your OPDS user credentials.

Troubleshooting

ProblemWhat to check
App can't connectVerify the OPDS server is enabled, the URL is correct, and the OPDS credentials are right. If connecting from another device, make sure localhost is replaced with the server's IP or hostname.
Books not appearingThe OPDS user inherits library access from the parent Trove user. If the Trove user doesn't have access to a library, books from that library won't appear in OPDS.
Authentication errorsOPDS users are separate from Trove accounts. Double-check the OPDS username and password. Passwords can't be retrieved after creation.
Komga client shows no seriesMake sure the Komga API toggle is enabled in OPDS settings. Try toggling Group Unknown Series if standalone books aren't showing up.
CBX pages not loadingPer-page streaming only works through the Komga API (/komga/api/), not the standard OPDS endpoint. Make sure your client is pointed at the Komga URL.
Search returns nothingOPDS search queries against title, author, description, publisher, ISBN, series, language, and categories. Make sure the search terms match content in those fields.