Requesting Books (ReadMeABook)

Connect FableFrog to a ReadMeABook server to search for audiobooks, request the ones you want, and track their progress — all from inside the app. ReadMeABook acquires and imports them into your Audiobookshelf library for you.


Overview

ReadMeABook (RMAB) is a self-hosted audiobook request and acquisition service — think "Radarr/Sonarr + Overseerr, but for audiobooks." When you request a book, ReadMeABook searches for it, downloads it, and imports the finished file into your Audiobookshelf library, where FableFrog can then play it.

FableFrog supports ReadMeABook as an optional companion:

  • It's not a second login and not a playback backend. You still listen through Audiobookshelf exactly as before.
  • Connecting it simply adds the ability to search and request books from inside FableFrog.
  • If you don't run ReadMeABook, nothing changes — this is entirely opt-in.

If you've never heard of ReadMeABook, you can safely skip this page. It's a feature for people who already run (or want to run) a ReadMeABook instance alongside their Audiobookshelf server.

How the Pieces Fit Together

  • Audiobookshelf is your playback backend — it owns your library, your progress, and everything you listen to. This never changes.
  • ReadMeABook is your request backend — the destination for "please go get this book." It acquires titles and hands them off to Audiobookshelf.
  • FableFrog talks to both: it plays from Audiobookshelf and, when connected, sends requests to ReadMeABook.

A request is "done" when the book actually lands in your Audiobookshelf library — at which point you play it like any other book.

Connecting to ReadMeABook

You connect from Settings → ReadMeABook:

  1. Enter your ReadMeABook server URL. HTTPS is the default scheme.
  2. Paste a personal API token generated in your ReadMeABook profile (these tokens start with rmab_).
  3. FableFrog validates the token and shows a Connected status.

About the API Token

The API token is a personal, long-lived key tied to your ReadMeABook account. It authorizes FableFrog to act on your behalf over a fixed set of actions — checking who you are, searching the catalog, and listing and creating your own requests. It is completely separate from your Audiobookshelf login.

  • The token is stored only in the iOS Keychain, keyed to your FableFrog account.
  • It's cleared automatically when you sign out of FableFrog.
  • Network logs that mention ReadMeABook are redacted, so your token never lands in a diagnostic export.

You can disconnect at any time from the ReadMeABook settings screen, which removes the stored token.

Searching the Catalog

Once connected, open the search screen from the ReadMeABook section in Settings and type a title or author. Results stream in as you type (with a short debounce), and you can scroll to load more.

Each result is annotated with its state for you:

  • In Library — this book is already in your Audiobookshelf library.
  • Requested — you've already requested it; it's in flight.
  • Requestable — available to request.

Requesting a Book

On any requestable result, tap Request. FableFrog submits the request to ReadMeABook, and the row flips to Requested in place once it's accepted — no full reload.

ReadMeABook handles duplicate detection and the actual acquisition. If a request can't be created, FableFrog shows a clear reason, for example:

  • The book is already available in your library.
  • It's already being processed or has already been requested.
  • The book is ignored on the server, the request didn't pass validation, or your account couldn't be found.

These outcomes are expected parts of requesting — not errors — and FableFrog reflects them without losing your search.

Tracking Your Requests (My Requests)

The My Requests screen lists everything you've requested, grouped by where each one sits in its lifecycle. It refreshes when you open it, supports pull-to-refresh, and pages through long histories.

Requests are grouped into status sections:

  • Active — pending, searching, downloading, or processing.
  • Waiting — awaiting search, import, approval, or release.
  • Completed — available (now in your Audiobookshelf library) or downloaded.
  • Failed — the request couldn't be fulfilled.
  • Cancelled — cancelled or denied.

My Requests is view-only — there are no cancel or delete controls in FableFrog, because those actions aren't part of what an API token is allowed to do. Manage cancellations from ReadMeABook itself.

Jumping to a Book Already in Your Library

When a search result is marked In Library, it's tappable: FableFrog finds the matching book in your Audiobookshelf library and opens its detail page, so you can start listening immediately. If it can't find an exact match, it tells you instead of opening the wrong book.

Privacy & Security

ReadMeABook support follows the same privacy principles as the rest of FableFrog:

  • Your API token lives only in the iOS Keychain, scoped to your account, and is wiped on sign-out.
  • FableFrog only uses the small, fixed set of ReadMeABook actions your token allows.
  • ReadMeABook-related network activity is redacted in logs, so tokens and credentials never reach a diagnostic export.

See Privacy & Security for FableFrog's full data-handling details.