book-scraper

View as Markdown
## Book Scraper Scrapes detailed book metadata from a Goodreads book page using a direct book URL. Returns structured information about the book including title, author(s), cover image, series details, and more. --- ## Request **Method:** `POST` **URL:** `{{Instance Domain}}/api/book-scraper` ### Headers | Key | Value | Description | | --- | --- | --- | | Content-Type | application/json | Indicates the request body is JSON | ### Body | Field | Type | Required | Description | | --- | --- | --- | --- | | queryURL | string | Yes | The full Goodreads book page URL to scrape (e.g. `https://www.goodreads.com/book/show/5907`) | **Example Body:** ``` json { "queryURL": "https://www.goodreads.com/book/show/5907" } ``` --- ## Response ### 200 Success Returns a JSON object containing the scraped book metadata. ``` json { "status": "Received", "statusCode": 200, "source": "string (GitHub source URL)", "scrapeURL": "string (the Goodreads book URL that was scraped)", "legacyBookID": "number", "bookID": "string (KCA book ID)", "resourceID": "string (KCA work ID)", "cover": "string (image URL)", "series": "string", "seriesURL": "string", "seriesPosition": "string", "workURL": "string", "title": "string", "author": [ { "id": "number", "name": "string", "role": "string (e.g. Author, Editor, Illustrator)", "url": "string" } ] } ``` ### Response Field Descriptions | Field | Type | Description | | --- | --- | --- | | status | string | Human-readable status message (e.g. `"Received"`) | | statusCode | number | HTTP status code of the scrape operation | | source | string | URL pointing to the GitHub source of the scraper | | scrapeURL | string | The Goodreads book URL that was scraped | | legacyBookID | number | The legacy numeric Goodreads book ID | | bookID | string | KCA-format book identifier | | resourceID | string | KCA-format work identifier | | cover | string | URL of the book's cover image | | series | string | Name of the series the book belongs to (if any) | | seriesURL | string | URL to the series page on Goodreads | | seriesPosition | string | Position of the book within the series | | workURL | string | URL to the book's work page on Goodreads | | title | string | Title of the book | | author | array | List of contributors (authors, editors, illustrators, etc.) | | author\[\].id | number | Goodreads author ID | | author\[\].name | string | Full name of the contributor | | author\[\].role | string | Role of the contributor (e.g. `Author`, `Editor`, `Illustrator`) | | author\[\].url | string | URL to the contributor's Goodreads profile |

Request

This endpoint expects an object.
queryURLstringRequiredformat: "uri"

Response

OK
statusstring
statusCodeinteger
sourcestringformat: "uri"
scrapeURLstringformat: "uri"
legacyBookIDinteger
bookIDstring
resourceIDstring
coverstringformat: "uri"
seriesstring
seriesURLstring
seriesPositionstring
workURLstringformat: "uri"
titlestring
authorlist of objects
ratingstring
ratingCountstring
reviewsCountstring
descstring
genreslist of strings
bookEditionstring
publishDatestring
publisherstring
languagestring
asinstring
relatedlist of any
reviewslist of any
reviewBreakdownobject
quotesstring
quotesURLstring
questionsstring
questionsURLstring
lastScrapeddatetime
isbnany or nullOptional
isbn13any or nullOptional