AppleBooks API endpoint
Returns book metadata from Apple Books, including ISBN, page count, publisher, audience, rating histogram, and series linkage.
/apple-books/book/{id}MCP tool: apple_books_book
Path parameters:
id: required. Apple Books numeric book ID.Query parameters:
country: optional. Two-letter storefront country code, default us.lang: optional. Result language tag, e.g. en-us.| Field | In the sample | Value in the sample |
|---|---|---|
| id | Has a value | |
| name | Has a value | “Harry Potter and the Sorcerer's Stone (Enhanced Edition)” |
| url | Has a value | books.apple.com |
| artist_id | Has a value | |
| artist_name | Has a value | “J.K. Rowling” |
| artist_url | Has a value | books.apple.com |
| description | Has a value | 1,027 characters |
| artwork_url | Has a value | is1-ssl.mzstatic.com |
| genres | Has a value | 13 entries |
| isbn | Has a value | |
| publisher | Has a value | “Pottermore Publishing” |
| page_count | Has a value | |
| audience | Has a value | “Third Grade” |
| release_date | Has a value | 2015-11-20 |
| price | Has a value | 11.99 |
| currency | Has a value | “USD” |
| free | Has a value | false |
| rating | Has a value | 4.7 |
| rating_count | Has a value | 10,804 |
| rating_histogram | Has a value | |
| series_id | Has a value | |
| series_name | Has a value | “The Harry Potter Series” |
| series_sequence | Has a value | 1 |
| audiobook_id | Has a value |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id (path) | string | Yes | Apple Books numeric book ID | 1037193578 | |
| country | string | No | Two-letter storefront country code | us | |
| lang | string | No | Result language tag | en-us | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/apple-books/book/1037193578?country=us&lang=en" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": 1037193578,
"name": "Harry Potter and the Sorcerer's Stone (Enhanced Edition)",
"url": "https://books.apple.com/us/book/harry-potter-and-the-sorcerers-stone-enhanced-edition/id1037193578",
"artist_id": 79595314,
"artist_name": "J.K. Rowling",
"genres": [
"Fiction & Literature",
"Fantasy"
],
"isbn": "9781781105849",
"publisher": "Pottermore Publishing",
"page_count": 309,
"audience": "Third Grade",
"release_date": "2015-11-20T08:00:00Z",
"price": 11.99,
"currency": "USD",
"free": false,
"rating": 4.7,
"rating_count": 10686,
"rating_histogram": {
"1": 348,
"2": 211,
"3": 339,
"4": 934,
"5": 8854
},
"series_id": 1044374793,
"series_name": "The Harry Potter Series",
"series_sequence": "1"
}
}Request schema
No body schema
Response schema
#/definitions/applebooks.bookResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | applebooks.Book | No | ||||
| data.artist_id | integer | No | ||||
| data.artist_name | string | No | ||||
| data.artist_url | string | No | ||||
| data.artwork_url | string | No | ||||
| data.audience | string | No | ||||
| data.audiobook_id | integer | No | ||||
| data.currency | string | No | ||||
| data.description | string | No | ||||
| data.free | boolean | No | ||||
| data.genres | array | No | ||||
| data.id | integer | No | ||||
| data.isbn | string | No | ||||
| data.name | string | No | ||||
| data.page_count | integer | No | ||||
| data.price | number | No | ||||
| data.publisher | string | No | ||||
| data.rating | number | No | ||||
| data.rating_count | integer | No | ||||
| data.rating_histogram | object | No | ||||
| data.release_date | string | No | ||||
| data.series_id | integer | No | ||||
| data.series_name | string | No | ||||
| data.series_sequence | string | No | ||||
| data.url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Missing or invalid parameters | #/definitions/app.Response |
| 404 | Book not found | #/definitions/app.Response |
| 429 | Rate limit exceeded | #/definitions/app.Response |
| 500 | Internal server error | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/apple-books/book/1037193578?country=us&lang=en" \
-H "x-api-key: $CRAWLORA_API_KEY"