AbeBooks API

Every bookseller's copy of a book, with the price and the shipping to your destination kept apart

AbeBooks has no single stock list: one ISBN resolves to a ladder of competing offers, each one a different bookshop's physical copy with its own price, shipping cost, grade and hand-typed condition note.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a AbeBooks endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
A
/abebooks/v1

6 active endpoints, on 1, 2, 3 and 4 credit tiers.

  • POST/abebooks/v1/search
  • POST/abebooks/v1/detail
  • POST/abebooks/v1/listing
  • POST/abebooks/v1/seller
  • POST/abebooks/v1/isbn
  • POST/abebooks/v1/filters

What AbeBooks endpoints does ReefAPI ship?

6 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

6 endpoints

search

3 cr

Search the marketplace.

required
—
optional
query, title, author, publisher, isbn, condition, seller_country, seller_region, language, binding, product_type, signed, first_edition, dust_jacket, with_photos, exclude_print_on_demand, free_shipping_to, min_seller_rating, min_price, max_price, year_min, year_max, listed_within, sort, page, per_page, currency, ship_to

detail

3 cr

One ISBN, every seller offering it.

required
isbn
optional
condition, seller_country, seller_region, min_seller_rating, sort, page, per_page, currency, ship_to

listing

2 cr

One seller's copy in full, by listing_id.

required
listing_id
optional
currency, ship_to

seller

3 cr

One bookseller.

required
seller_id
optional
query, condition, sort, page, per_page, currency, ship_to

isbn

4 cr

Up to 6 ISBNs in one call, each answered with the market summary a pricing job needs.

required
isbns
optional
currency, ship_to

filters

1 cr

The refinement vocabulary this marketplace actually has, with the exact tokens every filter a…

required
—
optional
—

Every parameter, every allowed value →

AbeBooks API

6 of 6 endpoints, ready to run

View docs ↗

Every seller offering one ISBN, shipped to the UK

3 credits1 required · 3 optional
POST/abebooks/v1/detail
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

How the AbeBooks API works

AbeBooks is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 491 engines.

02
Call
POST /abebooks/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
1 or 2 or 3 or 4 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

From a title to the cheapest copy delivered to you

Find the edition, read every seller's offer for it shipped to your destination, then open the copy you want.

01search?query=dune%20frank%20herbert&sort=total_price_asc&ship_to=USA
GET/abebooks/v1/search?query=dune%20frank%20herbert&sort=total_price_asc&ship_to=USA

One row per seller's copy, with price, shipping_price and total_price apart, grade, seller's condition note, shop, country and star rating.

02detail?isbn=9780441172719&ship_to=GBR&currency=GBP&sort=total_price_asc
GET/abebooks/v1/detail?isbn=9780441172719&ship_to=GBR&currency=GBP&sort=total_price_asc

Every seller offering that ISBN, the landed total to the UK in pounds, a price summary and the bibliographic record the sellers agree on.

03listing?listing_id=32181107131
GET/abebooks/v1/listing?listing_id=32181107131

The chosen copy in full: every photograph, size and weight, the synopsis and the shop's founding date and payment methods.

A dated, destination-specific offer ladder for any book on AbeBooks, ready to price, compare or buy against.

request
curl -X POST https://api.reefapi.com/abebooks/v1/detail \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"isbn":"9780441172719","per_page":20,"sort":"total_price_asc","currency":"GBP","ship_to":"GBR"}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "abebooks",
    "endpoint": "detail",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

What an AbeBooks field actually contains

Fields that read differently from how they look. Every row was measured against live AbeBooks responses on 2026-10-08.

FieldWhat it holds
price, shipping_price, total_priceThree separate fields: the book, the shipping to your `ship_to` destination, and the two added up. On one listing in one minute, with the book at USD 2.20 throughout, shipping was 4.69 to the United States, 40.00 to the United Kingdom, 35.00 to Turkey, 45.00 to Japan and 45.00 to Australia. sort=total_price_asc ranks by what you actually pay.
currencyOne of 12 currencies you choose. A seller's own list currency is not published, so every price is AbeBooks' conversion. JPY, MXN, TRY, ZAR, BRL and INR are answered by the source in US dollars with no warning, so they are rejected with the reason instead.
seller.rating_stars, seller.rating_percentTwo different scales. Search and detail publish stars out of five; listing publishes percent positive. One shop read 5 on search and 98 on its listing page. Only the one the surface publishes is returned, with rating_scale saying which, never merged.
book_ratingOn a listing page this is the WORK's reader rating (Dune: 4.29 over 1,704,954 ratings), not the seller's. It carries an `about` field saying so.
isbn13, isbn10, isbn_missingKept apart and check-digit verified. Present on 298 of 400 general rows and on 0 of 150 rows across three antiquarian searches: a book printed before about 1970 has no ISBN, and the row says isbn_missing: true.
binding, binding_classbinding is the seller's own word ('Hardback', 'Hardcover', 'hardcover' on one hardcover page); binding_class is the class the filter uses.
free_shippingZero shipping appeared on 79 of 400 rows and is real free shipping, published as 0.0 with free_shipping: true. A missing price is never published as 0: it is price: null with price_missing: true.
total_estimateThe source's own match count is an estimate that drifts within the minute (779,501 / 779,502 / 779,505 / 779,499 in four calls), so it is published with total_is_estimate.

Title, author, publisher and year are typed by each bookseller: one ISBN's 30 offers spelled the publisher 'Ace', 'Ace Books', 'Ace (edition )' and 'Penguin Publishing Group'. detail publishes the consensus and keeps every other spelling in *_variants.

AbeBooks coverage, measured

Every number below was read from live AbeBooks responses on 2026-10-08.

One ISBN

9780441172719: 129 offers from sellers in 20 countries; book prices from USD 2.20, shipping 0.00 to 5.50 within the US and 31 to 75 to the UK.

Shipping follows the destination

One listing, one minute, book USD 2.20: shipping 4.69 to the US, 40.00 to the UK, 35.00 to Turkey, 45.00 to Japan, 45.00 to Australia. ship_to is a parameter and on every row.

Filters that bite

Against 779,501 unfiltered listings: signed 16,568, first edition 37,871, dust jacket 11,485, seller country DE 263,033, hardcover 144,727, maps 444, sheet music 2,647, years 1965-1970 9,074, max price 5 14,170.

Second witness

30 rows compared against the page's own schema.org list for the same ISBN in the same minute: 30 agree, 0 disagree on price, currency, seller, title and ISBN.

Reliability

84 of 84 calls succeeded in the reliability run, median 699 ms, slowest 1,175 ms.

Limits

1,800 listings per query; the total is an estimate; no category tree and no facet counts; two shipping options per listing; no ISBN on most books printed before about 1970.

What people build with AbeBooks

The jobs this data is most often used for.

6

endpoints

1/2/3/4

credits per call

01

Reprice a used-book inventory against the cheapest landed price for each ISBN, to the destination you sell into.

02

Find signed, first-edition or dust-jacketed copies of an author's work from sellers in one country.

03

Watch a competing bookshop's stock and prices through its seller id.

04

Compare what the same edition costs delivered to the US, the UK and Australia.

What AbeBooks data costs

The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 491 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/abebooks/v1/detail \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"isbn":"9780441172719","per_page":20,"sort":"total_price_asc","currency":"GBP","ship_to":"GBR"}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/abebooks/v1/detail",
    headers={"x-api-key": REEF_KEY},
    json={
  "isbn": "9780441172719",
  "per_page": 20,
  "sort": "total_price_asc",
  "currency": "GBP",
  "ship_to": "GBR"
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up AbeBooks.

Get a free key →
Why does the shipping cost change between calls?▾

AbeBooks quotes shipping per destination and infers the destination from whoever is asking when nothing pins it. This API always pins it with ship_to (default USA) and stamps it on every row and in meta. On one listing the cheapest shipping to the United Kingdom was 31 against a USD 2.20 book.

Which currencies are supported?▾

Twelve, chosen with currency. Measured on one listing in one minute: USD 2.20, GBP 1.71, EUR 2.02, CAD 3.23, CZK 49.23. Codes the source silently answers in US dollars are rejected.

How many offers can one ISBN have?▾

Measured on 2026-10-08: ISBN 9780441172719 had 129 offers from sellers in 20 countries, book prices from USD 2.20, shipping from 0.00 to 5.50 within the United States and from 31 to 75 to the United Kingdom.

How deep can I page through a search?▾

1,800 listings per query. The 1,801st is an empty page at the source, so a page beyond the window is rejected up front with the real max_page. Narrow with a filter to reach deeper stock.

Do the filters really narrow the results?▾

Each one was measured against an unfiltered control of 779,501 listings: signed 16,568, first edition 37,871, dust jacket 11,485, seller country UK 84,386, language DEU 4,432, hardcover 144,727, maps 444, condition new 450,004, years 1965-1970 9,074, listed within 7 days 4,260.

Is there a category tree or facet counts?▾

No. AbeBooks publishes neither: its search returned no facets on any measured query and subject= does not narrow the results. filters returns the refinement vocabulary that does exist, and none was invented.

Can I price many ISBNs at once?▾

isbn takes up to six ISBNs in one call and returns, for each, the offer count, the cheapest book price, the cheapest landed price to your destination, the price range and the condition spread, keeping your order and naming the ISBNs nobody is offering.

How fresh is the data?▾

Every call reads AbeBooks live; nothing is cached. In the reliability run 84 of 84 calls succeeded with a median of 699 ms.

What is the AbeBooks API?▾

AbeBooks API is a ReefAPI endpoint group for the world's marketplace for used, rare and out-of-print books as json: every bookseller's copy of an isbn with its own price, its shipping cost to the destination you name, its grade and the seller's condition note, in 12 currencies. It returns live JSON through POST requests under /abebooks/v1.

Is the AbeBooks API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. AbeBooks calls use the same shared credit balance as every other ReefAPI engine.

Do I need an AbeBooks login or account?▾

No login to AbeBooks is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the AbeBooks data?▾

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the AbeBooks API use?▾

AbeBooks actions currently cost 1-4 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call AbeBooks from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call abebooks actions with the same key, credit pool and JSON envelope used by normal REST requests.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 490 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-10-08.