Goodreads API

Our Goodreads API gives you programmatic access to Goodreads' book data that isn't available through any official API. Get data on book details, author information, reviews, ratings, and more. And the best part? You can try the Goodreads API entirely for free, no credit card required.

POWERING THE WORLD'S TOP DATA-DRIVEN TEAMS

Integrate our Goodreads API

Access the Goodreads API using Python, JavaScript, CLI, cURL, OpenAPI, or MCP. Choose your preferred option and start extracting Goodreads data in minutes.

Python

Python

JavaScript

JavaScript

HTTP

HTTP

MCP

MCP

1from apify_client import ApifyClient
2
3# Initialize the ApifyClient with your Apify API token
4# Replace '<YOUR_API_TOKEN>' with your token.
5client = ApifyClient("<YOUR_API_TOKEN>")
6
7# Prepare the Actor input
8run_input = {
9 "search": "harry potter",
10 "startUrls": [
11 "https://www.goodreads.com/search?q=game+of+thrones&qid=",
12 "https://www.goodreads.com/book/show/59576065-acceptance",
13 "https://www.goodreads.com/list/show/1362.Best_History_Books_",
14 "https://www.goodreads.com/shelf/show/fiction",
15 "https://www.goodreads.com/genres/business",
16 "https://www.goodreads.com/author/list/1221698.Neil_Gaiman",
17 ],
18 "maxItems": 1,
19 "endPage": 1,
20 "extendOutputFunction": "($) => { return {} }",
21 "customMapFunction": "(object) => { return {...object} }",
22 "proxy": {
23 "useApifyProxy": True,
24 "apifyProxyGroups": ["RESIDENTIAL"],
25 },
26}
27
28# Run the Actor and wait for it to finish
29run = client.actor("epctex/goodreads-scraper").call(run_input=run_input)
30
31# Fetch and print Actor results from the run's dataset (if there are any)
32print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
33for item in client.dataset(run["defaultDatasetId"]).iterate_items():
34 print(item)
35
36# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

Get data with Goodreads API

Extract Goodreads data by providing search terms or Goodreads URLs with your filters. The Goodreads API returns structured JSON data with book details, author profiles, user reviews, shelf information and more.

Input

{
"proxy": {
"useApifyProxy": true
},
"endPage": 5,
"maxItems": 100,
"startUrls": [
"https://www.goodreads.com/search?utf8=✓&query=stephen",
"https://www.goodreads.com/book/show/41865.Twilight",
"https://www.goodreads.com/list/show/99918.Cassie_s_Cover_of_the_Year_2016",
"https://www.goodreads.com/shelf/show/art",
"https://www.goodreads.com/genres/most_read/christian-fiction",
"https://www.goodreads.com/author/list/1221698.Neil_Gaiman"
],
"includeReviews": false,
"csvFriendlyOutput": false
}

Output

{
"url": "https://www.goodreads.com/book/show/58408830-the-lazarus-men",
"ISBN": "1365417077",
"image": "https://images-na.ssl-images-amazon.com/images/S/compressed.photo.goodreads.com/books/1624462365i/58408830.jpg",
"title": "The Lazarus Men by Christian Warren Freed",
"Series": null,
"bookId": 58408830,
"rating": 4.23,
"reviews": [
{
"date": "July 20, 2018",
"html": "My rating 3.6<br><br>Book The Lazarus Men by Christian Warren Freed is a solid sci-fi novel...",
"text": "My rating 3.6Book The Lazarus Men by Christian Warren Freed is a solid sci-fi novel...",
"author": "Stjepan Cobets",
"rating": 4,
"shelves": [
"indie",
"science-fiction"
],
"userUrl": "https://www.goodreads.com/user/show/44823204-stjepan-cobets",
"numOfLikes": 40
}
],
"buyLinks": [
"https://www.amazon.com/gp/product/B09L2CPT2L/ref=x_gr_bb_kindle?caller=Goodreads&tag=x_gr_bb_kindle-20",
"http://www.amazon.com/gp/product/1365417077/ref=x_gr_bb_amazon?ie=UTF8&tag=x_gr_bb_amazon-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1365417077&SubscriptionId=1MGPYB6YW3HWK55XCGG2",
"https://www.amazon.com/s?k=The+Lazarus+Men&i=audible&ref=x_gr_w_bb_audible-20&tag=x_gr_w_bb_audible-20",
"https://www.barnesandnoble.com/w/?ean=9781365417078",
"http://affiliates.abebooks.com/c/64613/77416/2029?u=http%3A%2F%2Fwww.abebooks.com%2Fservlet%2FSearchResults%3Fisbn%3D1365417077",
"https://click.linksynergy.com/fs-bin/click?id=GwEz7vxblVU&subid=&offerid=361251.1&type=10&tmpid=9309&u1=x_gr_w_bb&RD_PARM1=https%3A%2F%2Fwww.kobo.com%2Fus%2Fen%2Fsearch%3FQuery%3D9781365417078",
"https://geo.itunes.apple.com/us/book/isbn9781365417078?at=11lvdC&mt=11&ls=1",
"https://play.google.com/store/search?q=9781365417078&c=books&PCamrefID=bookpage&PAffiliateID=10lHMS",
"http://www.bookdepository.com/search?searchTerm=1365417077&search=Find+book&a_aid=goodreads",
"http://click.linksynergy.com/fs-bin/click?id=GwEz7vxblVU&subid=&offerid=189673.1&type=10&tmpid=939&&u1=x_gr_w_bb&RD_PARM1=http%3A%2F%2Fwww.alibris.com%2Fbooksearch%3Fkeyword%3D1365417077",
"https://www.chapters.indigo.ca/en-ca/home/search/?keywords=9781365417078",
"http://www.tkqlhce.com/ob117vpyvpxCFFFKMHLCEDHLGHKECEFMIGDFFHJDDD?url=http%3A%2F%2Fwww.betterworldbooks.com%2FThe+Lazarus+Men-H0.aspx%3FSearchTerm%3D1365417077",
"https://www.indiebound.org/book/9781365417078",
"https://prf.hn/click/camref:1101ljNE7/pubref:1365417077/destination:https://www.thriftbooks.com/browse/?b.search=1365417077"
],
"authorUrl": "https://www.goodreads.com/author/show/8137590.Christian_Warren_Freed",
"Characters": [],
"authorName": "Christian Warren Freed",
"bookFormat": "Paperback",
"authorAbout": "Christian W. Freed was born in Buffalo, N.Y. more years ago than he would like to remember. After spending more than 20 years in the active-duty US Army he has turned his talents to writing. Since retiring, he has gone on to publish over 25 military fantasy and science fiction novels, as well as his memoirs from his time in Iraq and Afghanistan, a children's book, and a pair of how-to books focused on indie authors and the decision making process for writing a book and what happens after it is published. His first published book (Hammers in the Wind) has been the #1 free book on Kindle 4 times and he holds a fancy certificate from the L Ron Hubbard Writers of the Future Contest. Ok, so it was for 4th place in one quarter, but it's still recognition from the largest fiction writing contest in the world. And no, he's not a scientologist. Passionate about history, he combines his knowledge of the past with modern military tactics to create an engaging, quasi-realistic world for the readers. He graduated from Campbell University with a degree in history and a Masters of Arts degree in Digital Communications from the University of North Carolina at Chapel Hill. He currently lives outside of Raleigh, N.C. and devotes his time to writing, his family, and their two Bernese Mountain Dogs. If you drive by you might just find him on the porch with a cigar in one hand and a pen in the other. You can find out more about his work by following him on social media: Facebook: https://www.facebook.com/ChristianFreed Twitter: @ChristianWFreed Instagram: www.instagram.com/christianwarrenfreed/ Website: https://christianwfreed.com/ Join his mailing list: http://subscribepage.com/warfighterbooks",
"description": "It is the 23rd century. Humankind has reached the stars, building a tentative empire across a score of worlds...",
"publishedBy": "Warfighter Books",
"numberOfPages": 242,
"publishedDate": "June 1, 2021",
"Original Title": null,
"Literary Awards": [],
"numberOfRatings": 919,
"numberOfReviews": 35,
"Edition Language": null,
"firstPublishedDate": "January 1, 1970"
}

How to use Goodreads API

1Sign up for Apify account

Creating an account is quick and free — no credit card required. Your account gives you access to more than 5,000 scrapers and APIs.

Get started for free

2Get your Apify API token

Go to settings in the Apify console and navigate to the “API & Integrations” tab. There, create a new token and save it for later.


3Integrate Goodreads API

Navigate to the Goodreads API page and click on the API dropdown menu in the top right corner. In the dropdown menu, you can see API clients, API endpoints, and more.

Open Goodreads API

4Get your Goodreads data via API

Now, you can use the API and get the data you need from Goodreads.

Why use Apify?

Never get blocked

Every plan (free included) comes with Apify Proxy, which is great for avoiding blocking and giving you access to geo-specific content.

Customers love us

We truly care about the satisfaction of our users and thanks to that we're one of the best-rated data extraction platforms on both G2 and Capterra.

Monitor your runs

With our latest monitoring features, you always have immediate access to valuable insights on the status of your web scraping tasks.

Export to various formats

Your datasets can be exported to any format that suits your data workflow, including Excel, CSV, JSON, XML, HTML table, JSONL, and RSS.

Integrate Apify to your workflow

You can integrate your Apify runs with platforms such as Zapier, Make, Keboola, Google Drive, or GitHub. Connect with practically any cloud service or web app.

Large developer community

Apify is built by developers, so you'll be in good hands if you have any technical questions. Our Discord server is always here to help!

Frequently asked questions

Goodreads does not offer a good and free API for public use. However, we provide our own unofficial Goodreads API that gets all the up-to-date data you need, serving as an alternative to access Goodreads information programmatically for your projects and applications.

Yes, you can try our Goodreads API for free! No credit card required, no strings attached. Just create an Apify account with free $5 monthly prepaid usage, get your API token, and start using the Goodreads API.

Goodreads API allows you to get data such as book details including titles and descriptions, author information and biographies, user ratings and review counts, complete review text and ratings, book metadata like ISBN and publication dates, genre classifications, series information, and comprehensive book listings from searches and shelves for complete literary data analysis.

Getting started with our Goodreads API is easy — simply create a free Apify account, get your API token, and start using the Goodreads API in Python, JavaScript, CLI, cURL, OpenAPI, or MCP.

Get started with Goodreads API today

Get your first Goodreads data in less than 5 minutes. No credit card required. No commitment. Cancel anytime.