---
title: "List a book's covers"
method: GET
path: "/api/v1/books/{bookId}/covers"
tags: ["Covers"]
---

# List a book's covers

`GET /api/v1/books/{bookId}/covers`

## Request

- Base URL: `https://beyourcover.com`
- URL: `https://beyourcover.com/api/v1/books/{bookId}/covers`
- Auth: HTTP bearer

Lists the covers generated for a book (newest first), exposing each cover's public `coverId` and per-asset availability flags. No signed URLs are returned here — use `GET /api/v1/covers/{coverId}` or the download endpoint.

## Path parameters

- `bookId` string, uuid, required

## Query parameters

- `limit` integer
- `include_hidden` boolean

## Response `200`

The book's covers.

- BookCoverList
  - `bookId` string, uuid, required
  - `covers` BookCoverSummary[], required: Newest first.
    - `coverId` string, uuid, required: The cover's public id — use with `GET /api/v1/covers/{coverId}` and the download/variation/edit/upscale/audiobook endpoints.
    - `coverStyle` string, nullable
    - `visibility` 'default' | 'favorite' | 'hidden', required: `favorite` covers lead their book on the shelf (the newest one wins); `hidden` covers stay out of `GET /api/v1/books/{bookId}/covers` unless `include_hidden=true`. Set it with `PATCH /api/v1/covers/{coverId}`.
    - `created_at` string, date-time, required
    - `assets` object, required: Per-asset availability flags (no signed URLs — fetch those via `GET /api/v1/covers/{coverId}` or the download endpoint).
      - `preview` AssetFlag
        - `available` boolean, required
      - `full` AssetFlag
        - `available` boolean, required
      - `audiobook_preview` AssetFlag
        - `available` boolean, required
      - `audiobook_full` AssetFlag
        - `available` boolean, required
      - `no_text` AssetFlag
        - `available` boolean, required
      - `no_text_full` AssetFlag
        - `available` boolean, required
  - `total` integer, required

## Other responses

- `400`: `code` is one of: `missing_book_id`, `invalid_limit`, `invalid_include_hidden`.
- `401`: Missing/malformed API key, unknown or inactive key, or inactive subscription detected during credit checks. `code`: `unauthorized`.
- `403`: The API key is valid but its owner has no active enterprise subscription. `code`: `forbidden`.
- `404`: Book not found or not owned by this API key's account. `code`: `book_not_found`.
- `500`: Server error. `code` is `fetch_failed` or `internal_error`.

---

[API](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api.md) · [All operations](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api/llms.txt) · [OpenAPI document](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api/revisions/82ad2c7c8ede?raw)
