Discover/Barnesandnoble API
live

Barnesandnoble APIbarnesandnoble.com

Access Barnes & Noble book metadata, pricing, customer reviews, and bestseller rankings via 5 endpoints covering search, details, and category browsing.

Endpoint health
verified 5d ago
get_book_details
search_books
get_bestsellers
browse_category
get_book_reviews
5/5 passing latest checkself-healing
Endpoints
5
Updated
21d ago

What is the Barnesandnoble API?

The Barnes & Noble API provides 5 endpoints to query book metadata, retail pricing, and customer reviews from the B&N catalog. Use search_books to find titles by keyword, author, or ISBN-13, and get_book_details to retrieve full records including synopsis, format, rating, and current price. The get_bestsellers endpoint returns up to 20 ranked titles with no required inputs.

Try it
Page number to retrieve.
Number of results per page (max 28).
Search keyword, title, author, or ISBN.
api.parse.bot/scraper/ac7378c9-f1a3-4869-a348-81a2bfc2e2c8/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/ac7378c9-f1a3-4869-a348-81a2bfc2e2c8/search_books?page=1&limit=5&query=python+programming' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace barnesandnoble-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Barnes & Noble SDK — search books, get details, check reviews."""
from parse_apis.barnes_noble_api import BarnesAndNoble, BookNotFound

client = BarnesAndNoble()

# Search for books by keyword — limit= caps total items fetched.
for book in client.books.search(query="python programming", limit=5):
    print(book.title, book.price, book.ean)

# Get current bestsellers (single-page list).
for book in client.books.bestsellers(limit=3):
    print(book.title, book.author)

# Drill into a specific book by EAN for full details.
detail = client.books.get(ean="9781718502703")
print(detail.title, detail.price, detail.format)

# Access the reviews sub-resource on a book instance.
book = client.books.search(query="atomic habits", limit=1).first()
if book:
    review = book.reviews.get()
    print(review.rating, review.count)

# Typed error handling when a book EAN doesn't exist.
try:
    client.books.get(ean="0000000000000")
except BookNotFound as exc:
    print(f"Book not found: {exc.ean}")

print("exercised: books.search / books.bestsellers / books.get / book.reviews.get")
All endpoints · 5 totalmissing one? ·

Search for books by keyword, title, author, or ISBN. Returns paginated results from the Barnes & Noble catalog via their retail search API. Each result includes title, author, EAN, price, format, and URL.

Input
ParamTypeDescription
pageintegerPage number to retrieve.
limitintegerNumber of results per page (max 28).
queryrequiredstringSearch keyword, title, author, or ISBN.
Response
{
  "type": "object",
  "fields": {
    "page": "string, current page number",
    "books": "array of book objects with title, author, ean, price, format, url",
    "query": "string, the search query submitted"
  },
  "sample": {
    "data": {
      "page": "1",
      "books": [
        {
          "ean": "9781718502703",
          "url": "https://www.barnesandnoble.com/w/Python-Crash-Course-3rd-Edition/Eric-Matthes/1142968265?ean=9781718502703",
          "price": "$49.99",
          "title": "Python Crash Course, 3rd Edition",
          "author": "Eric Matthes",
          "format": "Paperback"
        }
      ],
      "query": "python programming"
    },
    "status": "success"
  }
}

About the Barnesandnoble API

Search and Book Metadata

The search_books endpoint accepts a query string (keyword, title, author, or ISBN) and returns paginated results — up to 28 per page — each containing title, author, ean, price, format, and url. For deeper metadata on a specific title, get_book_details takes a 13-digit ean and returns synopsis, rating, rating_count, a details object with fields like Format and ISBN-13, and the canonical product URL. The rating field is a number out of 5 or null if no reviews exist.

Reviews and Ratings

get_book_reviews returns the Bazaarvoice-sourced review summary for a given ean: an average rating and total count. When a book has no reviews, rating is null and count is 0. This endpoint is intentionally lightweight — it covers aggregate rating data only, not individual review text or reviewer metadata.

Bestsellers and Category Browsing

get_bestsellers requires no parameters and returns up to 20 books ordered by sales rank, with a fixed category value of 'Bestsellers'. To browse beyond the bestseller list, browse_category accepts a category_id (a B&N web category identifier such as '2916841') and an optional page integer, returning books ranked within that category. An optional category_name parameter is accepted for reference but does not affect results. Category IDs correspond to B&N's navigation taxonomy and must be known in advance.

Reliability & maintenanceVerified

The Barnesandnoble API is a managed, monitored endpoint for barnesandnoble.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when barnesandnoble.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official barnesandnoble.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
5d ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track retail price changes for specific ISBNs using get_book_details with a 13-digit ean.
  • Build a bestseller monitor that polls get_bestsellers daily and logs rank shifts for the top 20 titles.
  • Search by author name via search_books to enumerate a backlist with EANs, formats, and prices.
  • Aggregate rating and rating_count from get_book_reviews across a set of ISBNs for comparison.
  • Populate a book discovery feed by browsing multiple category_id values through browse_category.
  • Cross-reference B&N price and format fields with other retailers for price comparison tooling.
  • Build a new-release tracker by combining browse_category pagination with get_book_details synopsis data.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does Barnes & Noble offer an official developer API?+
Barnes & Noble does not publish a public developer API or documented data feed for its catalog as of this writing. This Parse API provides structured access to book data from the B&N catalog without requiring a B&N developer account.
What does `get_book_reviews` return beyond the star rating?+
get_book_reviews returns three fields for a given ean: the ean itself, the aggregate rating (a float out of 5 or null), and the total review count (an integer). It does not return individual review text, reviewer names, dates, or helpfulness votes. The API covers search_books, get_book_details, get_book_reviews, get_bestsellers, and browse_category. You can fork it on Parse and revise to add an endpoint returning individual review content if needed.
How do category IDs work in `browse_category`, and where do I find them?+
browse_category requires a category_id string that maps to B&N's internal navigation taxonomy (for example, '2916841'). These IDs are not enumerated by the API itself. You need to identify them from the B&N website URL structure before making a call. The optional category_name param is stored for your reference but has no effect on the query.
Does the API return audiobook or e-book formats alongside print editions?+
The format field in search and detail responses reflects whatever format the matched product page represents — this can include Paperback, Hardcover, NOOK Book, or audiobook formats. However, searching for a single ean returns data for that specific edition only; the API does not automatically return all format variants for a title. You can fork it on Parse and revise to add a multi-format lookup endpoint.
Is inventory or stock status available through any endpoint?+
No endpoint currently exposes stock availability or inventory status. The get_book_details endpoint returns price, format, rating, and synopsis, but not in-stock flags or shipping availability. You can fork the API on Parse and revise to add stock status if that field is relevant to your use case.
Page content last updated . Spec covers 5 endpoints from barnesandnoble.com.
Related APIs in EcommerceSee all →
bookshop.org API
Search for books by keyword or category, view detailed information like metadata and pricing, discover curated reading lists, and find independent bookstores near you on Bookshop.org. Filter results by format and browse new releases to discover your next read.
booksrun.com API
Search millions of books and get instant buyback quotes on BooksRun. Browse bestsellers and categories, view detailed book information, and check condition guidelines to understand buyback prices and acceptance criteria.
booksamillion.com API
Access Books-A-Million's catalog to retrieve bestseller lists across fiction, nonfiction, manga, YA, and kids' categories, fetch detailed book information and customer reviews, search books by keyword, and look up nearby store locations. Returns structured data including titles, authors, pricing, availability, cover images, and paginated review content.
abebooks.com API
Search for books by title or ISBN, view detailed listing information, and discover available sellers offering new and used copies. Find the best deals by comparing prices across multiple sellers and browsing their inventory.
kobo.com API
Search and browse millions of eBooks and audiobooks from Kobo, discover bestsellers and daily deals across different categories, and get detailed information about specific books and authors. Find free eBooks, explore category collections, and use autocomplete to quickly locate titles that interest you.
indiebound.org API
Discover independent bookstores near you, search for books across curated bestseller and Indie Next lists, and explore book recommendations from IndieBound's community. Access detailed book information, find locally-owned bookstores, and browse the latest indie bookstore news and events.
alibris.com API
Search for books and retrieve seller listings from Alibris. Access detailed book information including title, author, condition, pricing, and seller data across the platform.
valorebooks.com API
Search for books and instantly compare prices across ValoreBooks' inventory while getting real-time buyback quotes for books you want to sell. Access detailed book information including pricing and resale values to find the best deals on textbooks and used books.