Goodreads API endpoint
Returns a Goodreads book: description, authors, series, genres, format, pages, publisher, publication date, ISBNs, and aggregate rating with the full 1-5 star distribution.
/goodreads/book/{id}Path parameters:
id (required) — Goodreads book id (numeric; a trailing -slug is tolerated, e.g. 2767052-the-hunger-games).Response includes authors[] (name, role, url), series (name + position, e.g. The Hunger Games #1), genres[], format, pages, publisher, publication_date, isbn, isbn13, language, image_url, and rating (average, ratings_count, reviews_count, distribution with one_star…five_star counts).
| Field | In the sample | Value in the sample |
|---|---|---|
| id | Has a value | |
| title | Has a value | |
| description | Has a value | 843 characters |
| authors | Has a value | 1 entry |
| series | Has a value | |
| genres | Has a value | 10 entries |
| format | Has a value | |
| pages | Has a value | 374 |
| publisher | Has a value | |
| publication_date | Has a value | 2008-10-14 |
| isbn | Has a value | |
| isbn13 | Has a value | |
| language | Has a value | |
| image_url | Has a value | m.media-amazon.com |
| rating.average | Has a value | 4.36 |
| rating.ratings_count | Has a value | 10,316,071 |
| rating.reviews_count | Has a value | 279,150 |
| rating.distribution | Has a value | |
| uri | Has a value | goodreads.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id (path) | string | Yes | Goodreads book id | 2767052 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/goodreads/book/2767052" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": "2767052",
"title": "The Hunger Games",
"description": "Winning means fame and fortune. Losing means certain death. The Hunger Games have begun...",
"authors": [
{
"name": "Suzanne Collins",
"role": "Author",
"url": "https://www.goodreads.com/author/show/153394.Suzanne_Collins"
}
],
"series": "The Hunger Games #1",
"genres": [
"Young Adult",
"Dystopia",
"Fiction",
"Fantasy",
"Science Fiction"
],
"format": "Hardcover",
"pages": 374,
"publisher": "Scholastic Press",
"publication_date": "2008-10-14",
"isbn": "0439023483",
"isbn13": "9780439023481",
"language": "English",
"image_url": "https://m.media-amazon.com/images/S/compressed.photo.goodreads.com/books/1586722975i/2767052.jpg",
"rating": {
"average": 4.35,
"ratings_count": 10177796,
"reviews_count": 272857,
"distribution": {
"one_star": 133619,
"two_star": 242008,
"three_star": 1113038,
"four_star": 3086914,
"five_star": 5602217
}
},
"uri": "https://www.goodreads.com/book/show/2767052-the-hunger-games",
"source_url": "https://www.goodreads.com/book/show/2767052"
}
}Request schema
No body schema
Response schema
#/definitions/goodreads.bookResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | goodreads.BookResponse | No | ||||
| data.authors | array | No | ||||
| data.authors[].name | string | No | ||||
| data.authors[].role | string | No | Author | |||
| data.authors[].url | string | No | ||||
| data.description | string | No | ||||
| data.format | string | No | Hardcover | |||
| data.genres | array | No | ||||
| data.id | string | No | 2767052 | |||
| data.image_url | string | No | ||||
| data.isbn | string | No | ||||
| data.isbn13 | string | No | ||||
| data.language | string | No | English | |||
| data.pages | integer | No | 374 | |||
| data.publication_date | string | No | 2008-10-14 | |||
| data.publisher | string | No | ||||
| data.rating | goodreads.BookRating | No | ||||
| data.rating.average | number | No | 4.35 | |||
| data.rating.distribution | goodreads.BookRatingDistribution | No | ||||
| data.rating.distribution.five_star | integer | No | ||||
| data.rating.distribution.four_star | integer | No | ||||
| data.rating.distribution.one_star | integer | No | ||||
| data.rating.distribution.three_star | integer | No | ||||
| data.rating.distribution.two_star | integer | No | ||||
| data.rating.ratings_count | integer | No | 10177796 | |||
| data.rating.reviews_count | integer | No | 272857 | |||
| data.series | string | No | The Hunger Games #1 | |||
| data.source_url | string | No | ||||
| data.title | string | No | The Hunger Games | |||
| data.uri | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/goodreads/book/2767052" \
-H "x-api-key: $CRAWLORA_API_KEY"