Google API: Get book
Looks up a Google Books book by title or ISBN. Returns its details, reader ratings and the Google Play ebook offer in a chosen country.
Unofficial. Not affiliated with or endorsed by Google.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Book, required
book Book title or ISBN, for example Educated or 9780399590511.
9780399590511
- Author optional
author Author to narrow down the book, for example Tara Westover.
(default)
- Country optional
country Country for ebook sale and price, such as United States or US.
United States
Default
United States.
Input as JSON
{ "book": "9780399590511", "country": "United States"}Output
{ "title": "Educated", "authors": [ "Tara Westover" ], "isbn_10": "039959051X", "isbn_13": "9780399590511", "buy_link": "https://play.google.com/store/books/details?id=2ObWDgAAQBAJ&gl=US" , "language": "English", "subtitle": "A Memoir", "publisher": "Random House Publishing Group", "volume_id": "2ObWDgAAQBAJ", "categories": [ "Biography & Autobiography", "Women", "Biography & Autobiography / Memoirs" ], "page_count": 352, "description": "#1 NEW YORK TIMES BESTSELLER WITH FOUR MILLION COPIES SOLD • “A heartbreaking, heartwarming, best-in-years memoir about striding beyond the limitations of birth and environment into a better life.”— USA Today One of the most acclaimed books of our time: an unforgettable memoir about a young woman wh…", "ebook_price": { "amount": 9.99, "currency_code": "USD" }, "ratings_count": 549, "average_rating": 4.72, "ebook_for_sale": true, "published_date": "2018-02-20", "cover_image_link": "https://books.google.com/books/publisher/content?id=2ObWDgAAQBAJ&printsec=frontcover&img=1&zoom=1&edge=curl&imgtk=AFLRE73aMqqfuF1SvWTJVJ2RdEOwVlbJJdUaOAGdDlM-DDVXJBHH2ckuugN9c2koPvfu1BriwK9rUawk6-LsadqUNGsABPLfuzhFftW2Y2e97eYiFsum1cTUNFOhrQ55ju9MAuCknvek" , "google_books_link": "https://books.google.com/books?id=2ObWDgAAQBAJ" , "preview_availability": "Limited preview"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"books.google.com/get_book","input":{"book":"9780399590511","country":"United States"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "books.google.com/get_book" , "input": { "book": "9780399590511", "country": "United States" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "books.google.com/get_book" , "input": { "book": "9780399590511", "country": "United States" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run books.google.com/get_book# with {"book":"9780399590511","country":"United States"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "book" ], "properties": { "book": { "type": "string", "description": "Book title or ISBN, for example Educated or 9780399590511." }, "author": { "type": "string", "default": "", "description": "Author to narrow down the book, for example Tara Westover." }, "country": { "type": "string", "default": "United States", "description": "Country for ebook sale and price, such as United States or US." } }}Output schema
{ "type": "object", "required": [ "title", "authors", "google_books_link", "volume_id" ], "properties": { "title": { "type": [ "string", "null" ] }, "authors": { "type": [ "array", "null" ], "items": { "type": "string" } }, "isbn_10": { "type": [ "string", "null" ] }, "isbn_13": { "type": [ "string", "null" ] }, "buy_link": { "type": [ "string", "null" ] }, "language": { "type": [ "string", "null" ] }, "subtitle": { "type": [ "string", "null" ] }, "publisher": { "type": [ "string", "null" ] }, "volume_id": { "type": [ "string", "null" ] }, "categories": { "type": [ "array", "null" ], "items": { "type": "string" } }, "page_count": { "type": [ "integer", "null" ] }, "description": { "type": [ "string", "null" ] }, "ebook_price": { "type": [ "object", "null" ], "properties": { "amount": { "type": "number" }, "currency_code": { "type": "string" } } }, "ratings_count": { "type": [ "integer", "null" ] }, "average_rating": { "type": [ "number", "null" ] }, "ebook_for_sale": { "type": [ "boolean", "null" ] }, "published_date": { "type": [ "string", "null" ] }, "cover_image_link": { "type": [ "string", "null" ] }, "google_books_link": { "type": [ "string", "null" ] }, "preview_availability": { "type": [ "string", "null" ] } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
books.google.com/get_book- Returns
- title, authors, publisher, date, description, ISBNs, rating, ebook price, links
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method books.google.com/get_book with the inputs above.
Ask your agent
- Can you pull up the details for the book Educated by Tara Westover, including its rating and the ebook price in the United States?
- I need the publisher, publication date, and ISBNs for ISBN 9780399590511.
- Look up the book Dune and tell me its description, authors, and what the ebook costs in Canada.
- What's the average reader rating for Google Books' entry on The Midnight Library by Matt Haig, and where can I buy the ebook in the UK?
- Find me the title, author list, and Google Play ebook price in Germany for the novel Sapiens.
See more
All Google methodsSearches Google Books by words, author, subject or ISBN, with language, free-ebook and newest-first options. Ratings counts are not shown by the public book feed; newest sorts the available matches by publication date.
books.google.com/search_booksGets a public Google Play app listing by app name or Play Store link, with developer, rating, downloads, price, what's new, descriptions and data safety highlights.
play.google.com/get_appFinds Android apps on Google Play by keywords, in Play search order, with each listing's developer, star rating, price and currency for the chosen country, download range and link. Results are limited to apps shown on the public search page.
play.google.com/search_appsGets one public patent or published application by number, title, or Google Patents link, with claims, citations, family and classifications.
patents.google.com/get_patentFinds places to stay in a city or area for given dates on Google Hotels, with nightly and total prices, hotel class, guest ratings, amenities, address and cheapest booking site. Optional filters for price, stars and rating; vacation rentals are left out. Prices and availability can change.
google.com/search_hotelsLooks up a public Google Maps place by name and location and returns its profile: address, rating, hours, phone, website and photos.
google.com/get_placeGets public user reviews for an Android app on Google Play. The app can be given by name, Play Store link, or app ID.
play.google.com/get_app_reviewsFinds a verified advertiser in the Google Ads Transparency Center by company name or website domain and returns its Google ads with dates, regions, previews and ad pages. Counts may be approximate; regions and media previews are read for the first 40 ads.
adstransparency.google.com/get_company_ads