booksrun.com APIbooksrun.com ↗
Search BooksRun books, get instant buyback quotes, browse categories and bestsellers, and retrieve condition guidelines via a clean REST API.
curl -X GET 'https://api.parse.bot/scraper/16321d63-c5f9-47af-8bed-4c75eb38cb06/search_books?page=1&query=python+programming' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for books by title, author, or keyword. Returns a paginated list of matching books with their basic info including title, author, price, and slug for detail lookup.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| queryrequired | string | Search keyword (title, author, or ISBN) |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"books": "array of book objects with title, author, price_from, url, image_url, isbn_slug",
"query": "string, the search query used"
},
"sample": {
"data": {
"page": 1,
"books": [
{
"url": "https://booksrun.com/9781718502703-python-crash-course-3rd-edition",
"title": "Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming",
"author": "Eric Matthes",
"image_url": "https://booksrun.com/image-loader/288/https:__m.media-amazon.com_images_I_519mXag83nL._SL160_.jpg",
"isbn_slug": "9781718502703-python-crash-course-3rd-edition",
"price_from": "$18.82"
}
],
"query": "python programming"
},
"status": "success"
}
}About the booksrun.com API
The BooksRun API provides 6 endpoints covering book search, detail lookup, buyback pricing, category browsing, and condition standards from BooksRun.com. The get_buyback_quote endpoint returns a real-time quoted price for any ISBN-13, along with the current cart total and all queued items. Other endpoints expose buy/rent pricing arrays, reader reviews, structured metadata, and a full bestseller list — all in a single JSON response per call.
Search and Browse
The search_books endpoint accepts a query string (title, author, or ISBN) and returns a paginated array of book objects, each carrying title, author, price_from, image_url, and an isbn_slug you can pass directly into get_book_details. Pagination is controlled via the optional page integer parameter. The browse_category endpoint works the same way, using a category_slug such as fiction, textbooks, or non-fiction to return the same book-object shape for an entire category. The get_best_sellers endpoint requires no parameters and returns BooksRun's current homepage bestseller list.
Book Detail and Pricing
get_book_details requires the full isbn_slug in the format <isbn13>-<title-slug> (e.g. 9781577314806-the-power-of-now-a-guide-to-spiritual-enlightenment). The response includes a prices object with buy and rent arrays of offers and a sell value, a metadata object with author, publisher, ISBN, and description from structured data, reviews as an array of reader review objects, and marketplace_offers for third-party listings.
Buyback Quotes
get_buyback_quote accepts an ISBN-13 and returns the buyback_price for that specific book, plus a total_quote reflecting all items in the temporary session cart and an items_in_cart array with title, price, and isbn for each item. If BooksRun does not accept the book, buyback_price is returned as null. This makes it straightforward to batch-check multiple ISBNs and accumulate a cart total.
Condition Guide
get_buyback_condition_guide returns the full condition guide that BooksRun uses to evaluate book quality, available as both an html string and a plain text string. This content describes acceptance criteria and condition tiers (e.g. Good, Acceptable) that directly affect which buyback_price a given copy qualifies for.
- Build a textbook buyback comparison tool using
get_buyback_quoteacross multiple ISBN-13s to find the best resale value. - Populate a book price-tracking app with
get_book_detailsbuy and rent price arrays to alert users when costs drop. - Aggregate bestseller lists from
get_best_sellersto track trending titles on BooksRun over time. - Power a library or classroom catalog search using
search_bookswith author or ISBN queries. - Show students condition-grading criteria inline by embedding the plain
textfromget_buyback_condition_guide. - Index an entire category's inventory using
browse_categorywith thetextbooksslug and pagination for bulk ISBN collection. - Display marketplace third-party offers alongside BooksRun's own prices using
marketplace_offersfromget_book_details.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does BooksRun have an official developer API?+
What does `get_book_details` return for pricing, and how does it differ from `search_books`?+
search_books returns a single price_from value per book — the lowest listed price. get_book_details returns the full prices object, which breaks out separate buy and rent arrays with individual offer details, plus a sell value and marketplace_offers array. You need the full isbn_slug (ISBN-13 + title slug) to call get_book_details.What happens when BooksRun won't buy back a specific ISBN?+
get_buyback_quote returns buyback_price as null. The items_in_cart array and total_quote still reflect any other ISBNs that were already quoted in the same session.Does the API return seller ratings or individual marketplace seller profiles?+
marketplace_offers array from get_book_details returns offer-level data, but individual seller profiles, ratings, and seller history are not exposed as separate endpoint responses. You can fork this API on Parse and revise it to add a dedicated seller-detail endpoint.Is there an endpoint for looking up books by ISBN directly, without constructing a full slug?+
search_books endpoint accepts an ISBN as the query string and will return matching results including the isbn_slug field, which you then pass to get_book_details. There is no standalone ISBN-only lookup endpoint that bypasses the slug format. You can fork the API on Parse and revise it to add a direct ISBN lookup endpoint that handles slug construction internally.