Skip to content

Book lookup returns only audiobook editions, so the /ebook facade scope is always empty #67

Description

@kukitch

Book lookup returns only audiobook editions, so the /ebook facade scope is always empty. Every result across four titles comes back mediaType: audiobook / isEbook: false, in both the gr and hc dialects, on a fresh install with an Ebook metadata profile and an E-Book quality profile present.

Is ebook metadata expected to work today? I could not tell from the docs whether this is not-yet-implemented, a provider limitation, or something misconfigured on my side, and the answer changes whether I keep an ebook library pointed at Chaptarr at all.

Version

0.9.911.0, branch develop, docker chaptarr/chaptarr:latest on linux/arm64 (Apple M4, OrbStack). Fresh install, 2026-08-17.

What I measured

Same API key, GET /api/v1/book/lookup?term=..., result counts:

base URL dune the martian educated project hail mary
/readarr/gr/ebook 0 0 0 0
/readarr/hc/ebook 0 - - -
/ebook 0 - - -
/readarr/gr/audiobook 5 5 5 4
plain /api/v1 5 - - 4

The plain endpoint appears to explain the empty scopes, term=dune:

'Dune (Dune, #1)'         mediaType: audiobook   editions: 1   isEbook: [False]
'Dune Messiah (Dune #2)'  mediaType: audiobook   editions: 1   isEbook: [False]
'Children of Dune (#3)'   mediaType: audiobook   editions: 1   isEbook: [False]

Every edition returned is an audiobook, so ServarrMediaTypeScopeMiddleware has nothing to scope to on the ebook side.

Configuration, in case it is mine

  • Metadata profiles are the shipped defaults: Audiobook Default (profileType: 1), Ebook Default (profileType: 2), None.
  • Quality profile E-Book allows Unknown Text, PDF, MOBI, EPUB, AZW3.
  • Two typed root folders: folderType: 2 for ebooks, folderType: 1 for audiobooks. Both report accessible: true.

So the ebook side looks configured, which is why I suspect the metadata service rather than my setup. Happy to run anything else useful, or to move this to a discussion if it is a known limitation.

Separate, and possibly worth its own issue

The Readarr-compatibility shim looks unreachable for POST /author. ApplyFacadeAuthorSingleFields maps rootFolderPath -> ebookRootFolderPath and qualityProfileId -> ebookQualityProfileId in the action body, but the FluentValidation rules that reject a legacy-only payload run as an action filter first. A stock Readarr-shaped client posting to /readarr/gr/ebook/api/v1/author therefore gets a 400 with "At least one quality profile must be selected" plus Invalid Path: '{path}', and the mapping never executes. Verified against the facade route on the version above. I worked around it by sending the per-format keys directly. Say the word and I will open that separately.

Thanks for picking this project up after Readarr was retired, the audiobook side has been working well here.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions