Goodreads Editions API — Every Edition with ISBNs

List every edition of a book

Every edition of a book: title, format, pages, publisher, publication date, language, ISBN, ISBN-13, ASIN, cover and authors. Up to 200 in one request, continuing with a cursor. 1 credit per 20 editions.

POST /book-editions Books
https://api.fetchlayer.dev/goodreads/book-editions
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

book integer | string required

The book: a Goodreads book id (5907), a book URL (https://www.goodreads.com/book/show/5907), or an ISBN-10/ISBN-13.

limit integer optional

How many editions to return, 1–200; a larger value is served at 200. Editions come 20 to a page, and each page is 1 credit. (default: 20)

cursor string optional

The nextCursor from a previous response, passed back with the same other parameters, to continue where it stopped.

format string optional

json or markdown, lowercase; any other value is a 400. Over MCP, markdown returns the result rendered as text; the REST API accepts it and returns JSON. (default: json)

timeoutMs number optional

Per-request time limit in milliseconds (max 600000).

Response Fields

book-editions

List every edition of a book

transport string

The data source: always the platform id, "goodreads".

notes string[]

Caveats about this response you can act on, such as a series listing fewer works than its total. Empty when there are none.

book object

{ id, workId, title, url } of the book asked for.

editionCount number

Editions in this response.

editions object[]

The editions.

editions[].id number

This edition’s book id.

editions[].title string

The edition’s title.

editions[].format string | null

Paperback, Hardcover, Kindle Edition, Audiobook…

editions[].pages number | null

Page count.

editions[].publisher string | null

The publisher.

editions[].publishedAt string | null

Publication date (YYYY-MM-DD, or a shorter date when Goodreads gives only a year or month).

editions[].language string | null

The edition’s language.

editions[].isbn string | null

ISBN-10; isbn13 and asin are alongside. Null where the edition has none.

editions[].authors object[]

Authors, each with id, name, url, and where Goodreads gives them, role (Author, Illustrator, Translator…), isGoodreadsAuthor and imageUrl.

totalCount number | null

How many editions Goodreads has for this request in all, when it says.

nextCursor string | null

Pass back as cursor, with the same other parameters, to continue. null when there is nothing further.

hasNextPage boolean

Whether more editions remain.

pagesScraped number

Pages of results this response covers, which is what it costs: one credit per page.

Request

curl -X POST "https://api.fetchlayer.dev/goodreads/book-editions" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"book":5907,"limit":20}'

Response

{
  "transport": "goodreads",
  "notes": [],
  "book": {
    "id": 5907,
    "workId": 1540236,
    "title": "The Hobbit, or There and Back Again",
    "url": "https://www.goodreads.com/book/show/5907.The_Hobbit_or_There_and_Back_Again"
  },
  "totalCount": 1452,
  "editionCount": 20,
  "editions": [
    {
      "id": 5907,
      "title": "The Hobbit, or There and Back Again",
      "url": "https://www.goodreads.com/book/show/5907.The_Hobbit_or_There_and_Back_Again",
      "coverUrl": "https://m.media-amazon.com/images/S/compressed.photo.goodreads.com/books/1546071216i/5907.jpg",
      "format": "Paperback",
      "pages": 366,
      "publisher": "Houghton Mifflin",
      "publishedAt": "2002-08-15",
      "language": "English",
      "isbn": null,
      "isbn13": null,
      "asin": "B0DN8P5BQF",
      "authors": [
        {
          "id": 656983,
          "name": "J.R.R. Tolkien",
          "url": "https://www.goodreads.com/author/show/656983.J_R_R_Tolkien",
          "role": "Author",
          "isGoodreadsAuthor": null,
          "imageUrl": null
        }
      ]
    }
  ],
  "nextCursor": "2",
  "hasNextPage": true,
  "pagesScraped": 1
}
Product overviewGoodreads API: what it returns, pricing and use cases