Google API: Get place reviews
Finds a place on Google Maps by name and location and returns its public reviews in the chosen order.
Unofficial. Not affiliated with or endorsed by Google.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Sort optional
sort Review order, e.g. newest.
most_relevant
One of
most_relevant,newest,highest_rating,lowest_rating. Defaultmost_relevant.- Location, required
location City or area to identify the place, e.g. Boston.
Boston
- Place Name, required
place_name Business name, e.g. Union Oyster House.
Union Oyster House
- Max Reviews optional
max_reviews Maximum reviews to return, e.g. 20 (up to 100).
20
Whole number from 1 to 100. Default
20.
Input as JSON
{ "sort": "most_relevant", "location": "Boston", "place_name": "Union Oyster House", "max_reviews": 20}Output
{ "address": "41 Union St, Boston, MA 02108, United States", "reviews": [ { "likes": null, "stars": 4, "review_id": "Ci9DQUlRQUNvZENodHljRjlvT2pOT05IbDFhakJ1TkhCTFFURkVTVGhSUjFWVWIxRRAB", "owner_reply": null, "review_date": "2026-08-30", "review_link": "https://www.google.com/maps/reviews/data=!4m8!14m7!1m6!2m5!1sCi9DQUlRQUNvZENodHljRjlvT2pOT05IbDFhakJ1TkhCTFFURkVTVGhSUjFWVWIxRRAB!2m1!1s0x0:0x57b1c27214abd128!3m1!1s2@1:CAIQACodChtycF9oOjNONHl1ajBuNHBLQTFESThRR1VUb1E%7C%7C?hl=en-US" , "review_text": "We had dinner at Union Oyster House on our first night in Boston and absolutely loved it! We were seated very quickly and had a great outdoor table with plenty of shade. Our server was friendly and efficient, and the espresso martinis were delicious!\nI ordered the shrimp scampi, which was light and …", "reviewer_name": "Nicole Paulette", "owner_reply_date": null, "original_date_text": "a month ago" }, { "likes": null, "stars": 5, "review_id": "Ci9DQUlRQUNvZENodHljRjlvT25BeGNtdDVNbDlmTWkxb1VXMWpWRk5RYlRsUVNFRRAB", "owner_reply": null, "review_date": "2026-07-19", "review_link": "https://www.google.com/maps/reviews/data=!4m8!14m7!1m6!2m5!1sCi9DQUlRQUNvZENodHljRjlvT25BeGNtdDVNbDlmTWkxb1VXMWpWRk5RYlRsUVNFRRAB!2m1!1s0x0:0x57b1c27214abd128!3m1!1s2@1:CAIQACodChtycF9oOnAxcmt5Ml9fMi1oUW1jVFNQbTlQSEE%7C%7C?hl=en-US" , "review_text": "Great Oyster bar as soon as you come in. Generally, speaking you have to be lucky with your timing to grab a seat at the bar. We snagged two seats and had a half order of oysters with a cup of New England Chowder. They were great! The guys who were shucking were great. They also have dining tables a…", "reviewer_name": "Andres Ayala", "owner_reply_date": null, "original_date_text": "3 months ago" }, { "likes": null, "stars": 5, "review_id": "Ci9DQUlRQUNvZENodHljRjlvT2xaeVdIVmpNMEZNUVRaVGVXMXVha1JhYzBnMmJrRRAB", "owner_reply": null, "review_date": "2026-09-06", "review_link": "https://www.google.com/maps/reviews/data=!4m8!14m7!1m6!2m5!1sCi9DQUlRQUNvZENodHljRjlvT2xaeVdIVmpNMEZNUVRaVGVXMXVha1JhYzBnMmJrRRAB!2m1!1s0x0:0x57b1c27214abd128!3m1!1s2@1:CAIQACodChtycF9oOlZyWHVjM0FMQTZTeW1uakRac0g2bkE%7C%7C?hl=en-US" , "review_text": "Union Oyster House in Boston offers an unforgettable dining experience, combining rich history with delicious flavors. During my visit, I started with their famous New England clam chowder, which was creamy, flavorful, and packed with tender clams—truly a taste of Boston in a bowl. I paired it with …", "reviewer_name": "Travel Enthusiast", "owner_reply_date": null, "original_date_text": "a month ago" } ], "place_link": "https://www.google.com/maps/place/?q=place_id:ChIJMVYI84Vw44kRKNGrFHLCsVc" , "place_name": "Union Oyster House", "total_reviews": 11423, "overall_rating": 4.3, "google_place_id": "ChIJMVYI84Vw44kRKNGrFHLCsVc"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"google.com/get_place_reviews","input":{"sort":"most_relevant","location":"Boston","place_name":"Union Oyster House","max_reviews":20}}' # 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": "google.com/get_place_reviews" , "input": { "sort": "most_relevant", "location": "Boston", "place_name": "Union Oyster House", "max_reviews": 20 }})# 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": "google.com/get_place_reviews" , "input": { "sort": "most_relevant", "location": "Boston", "place_name": "Union Oyster House", "max_reviews": 20 } }), 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 google.com/get_place_reviews# with {"sort":"most_relevant","location":"Boston","place_name":"Union Oyster House","max_reviews":20}"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": [ "place_name", "location" ], "properties": { "sort": { "enum": [ "most_relevant", "newest", "highest_rating", "lowest_rating" ], "type": "string", "default": "most_relevant", "description": "Review order, e.g. newest." }, "location": { "type": "string", "description": "City or area to identify the place, e.g. Boston." }, "place_name": { "type": "string", "description": "Business name, e.g. Union Oyster House." }, "max_reviews": { "type": "integer", "default": 20, "maximum": 100, "minimum": 1, "description": "Maximum reviews to return, e.g. 20 (up to 100)." } }}Output schema
{ "type": "object", "required": [ "place_name", "address", "overall_rating", "total_reviews", "place_link", "google_place_id", "reviews" ], "properties": { "address": { "type": [ "string", "null" ] }, "reviews": { "type": "array", "items": { "type": "object", "required": [ "reviewer_name", "stars", "review_date", "original_date_text", "review_text", "likes", "owner_reply", "owner_reply_date", "review_link", "review_id" ], "properties": { "likes": { "type": [ "integer", "null" ] }, "stars": { "type": [ "integer", "null" ] }, "review_id": { "type": [ "string", "null" ], "x-fous-developer": true }, "owner_reply": { "type": [ "string", "null" ] }, "review_date": { "type": [ "string", "null" ], "format": "date" }, "review_link": { "type": [ "string", "null" ] }, "review_text": { "type": [ "string", "null" ] }, "reviewer_name": { "type": [ "string", "null" ] }, "owner_reply_date": { "type": [ "string", "null" ], "format": "date" }, "original_date_text": { "type": [ "string", "null" ] } }, "additionalProperties": false } }, "place_link": { "type": "string" }, "place_name": { "type": "string" }, "total_reviews": { "type": [ "integer", "null" ] }, "overall_rating": { "type": [ "number", "null" ] }, "google_place_id": { "type": [ "string", "null" ], "x-fous-developer": true } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
google.com/get_place_reviews- Returns
- place name, address, rating, review count, up to 100 reviews
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 google.com/get_place_reviews with the inputs above.
Ask your agent
- Show me the latest 15 reviews for Blue Bottle Coffee in San Francisco, sorted by newest first.
- What do customers say about Tartine Bakery in the Mission District? I want the top 30 most relevant reviews.
- Pull up the lowest-rated reviews for Joe's Pizza near Times Square, up to 50 of them.
- Get the highest rated reviews for The Lobster Shack in Portland, Maine, maximum 25.
- I'm looking for reviews of Dolores Park Cafe in Austin, sorted by highest rating, and I'd like to see at least 10 of them.
See more
All Google methodsFinds a hotel on Google Hotels by name and city and returns its guest reviews in the chosen order, its Google rating and review count, and topic ratings averaged from the returned reviews that rate each topic.
google.com/get_hotel_reviewsLooks 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 businesses and places near a location on Google Maps, in Google Maps order, with rating, hours, contact details and links when shown.
google.com/search_placesSearches 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_booksFinds 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_hotelsGets Google Search autocomplete suggestions for words typed so far, in Google's order, for a chosen country and language.
google.com/get_search_suggestionsGets up to three Google Maps routes between two places, with distances, travel times and step-by-step directions.
google.com/get_directions