{"uid":"cap_5FF7gVVcxpQQKSq5SqXiL","slug":"agents-openwebninja-com-business-reviews-google-maps-via-openweb-ninja-0d41b8b4","name":"Business Reviews (Google Maps via OpenWeb Ninja)","description":"Get / paginate business reviews by Business Id using a pagination cursor.\n\nReviews are read from Google Maps at request time, so they are live rather than served from the database.\n\n**Note:** `match_count` is the number of reviews on this page, not the business's total review count.\n\n**Note:** pagination requires `limit` to be left at its maximum of `20`. Below the maximum a single page is trimmed and no `cursor` is returned.","url":"https://agents.openwebninja.com/local-business-database/business-reviews?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","required":["business_id"],"properties":{"limit":{"type":"integer","description":"Maximum number of business reviews to return.\n\n**Allowed values:** `1-20`\n\n**Note:** a `cursor` is only returned when limit is left at its maximum of `20`."},"cursor":{"type":"string","maxLength":1024,"description":"Pagination cursor for fetching the next page. Pass the `cursor` value returned in the previous response. Omit it on the first request.\n\n**Note:** a cursor is only valid for the exact query that produced it, and it expires. Do not build or edit one."},"region":{"type":"string","default":"us","description":"Query Google Maps from a particular region or country.\n\nFor a list of supported region/country codes see *https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 (Alpha-2 code)*."},"sort_by":{"enum":["most_relevant","newest","highest_ranking","lowest_ranking"],"type":"string","default":"most_relevant","description":"How to sort the reviews in the results."},"language":{"type":"string","default":"en","description":"Set the language of the results.\n\nFor a list of supported language codes see *https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes*."},"business_id":{"type":"string","maxLength":256,"description":"Unique Business Id, as returned in a business record's `business_id`.\n\n**Examples:**\n\n`0x102b644d009e013:0xea49e9ee285fa7bf`"}}},"responseSchema":{"type":"object","required":["status","request_id","parameters","data"],"properties":{"data":{"type":"object","required":["reviews","match_count","limit","business_id","found"],"properties":{"found":{"type":"boolean","description":"Whether a record for the requested Business Id was found."},"limit":{"type":"number","description":"Maximum number of results requested for this page (the limit parameter, or its default)."},"reviews":{"type":"array","items":{"type":"object","required":["review_id","review_text","rating","review_datetime_utc","review_timestamp","review_time","review_link","review_photos","review_language","review_text_translated","review_text_translated_language","like_count","author_id","author_link","author_name","author_photo_url","author_review_count","author_photo_count","owner_response_time","owner_response_text","owner_response_language","author_reviews_link","author_is_local_guide","service_quality","review_form","review_source","review_source_logo"],"properties":{"rating":{"type":"number","description":"Star rating given in the review (1-5)."},"author_id":{"type":"string","nullable":true,"description":"Google Maps contributor ID of the review author."},"review_id":{"type":"string","description":"Unique Google identifier of the review."},"like_count":{"type":"number","nullable":true,"description":"Number of likes the review received."},"author_link":{"type":"string","nullable":true,"description":"URL to the author's Google Maps contributor profile."},"author_name":{"type":"string","nullable":true,"description":"Display name of the review author."},"review_form":{"type":"object","nullable":true,"description":"Structured questions the author answered (e.g. 'What kind of trip was it?').","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"}]}},"review_link":{"type":"string","nullable":true,"description":"Direct Google Maps URL to the review."},"review_text":{"type":"string","nullable":true,"description":"Full text content of the review."},"review_time":{"type":"string","nullable":true,"description":"Human-friendly relative time of the review (e.g. '4 months ago') as shown on Google Maps."},"review_photos":{"type":"array","items":{"type":"string"},"nullable":true,"description":"URLs of photos attached to the review."},"review_source":{"type":"string","nullable":true,"description":"Platform the review originates from (e.g. 'Google', 'Tripadvisor')."},"review_language":{"type":"string","nullable":true,"description":"ISO 639 language code of the review text."},"service_quality":{"type":"object","nullable":true,"description":"Optional service-quality tag the author selected when reviewing.","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"}]}},"author_photo_url":{"type":"string","nullable":true,"description":"URL of the author's profile photo."},"review_timestamp":{"type":"number","nullable":true,"description":"Unix epoch seconds matching review_datetime_utc."},"author_photo_count":{"type":"number","nullable":true,"description":"Number of photos this author has posted."},"review_source_logo":{"type":"string","nullable":true,"description":"URL of the source platform logo."},"author_review_count":{"type":"number","nullable":true,"description":"Number of reviews this author has posted."},"author_reviews_link":{"type":"string","nullable":true,"description":"URL to all reviews by this author."},"owner_response_text":{"type":"string","nullable":true,"description":"Text of the business owner's response."},"owner_response_time":{"type":"string","nullable":true,"description":"Human-friendly relative time of the business owner response."},"review_datetime_utc":{"type":"string","nullable":true,"description":"ISO 8601 UTC datetime when the review was posted."},"author_is_local_guide":{"type":"boolean","nullable":true,"description":"Whether the author is a Google Local Guide."},"review_text_translated":{"type":"string","nullable":true,"description":"The review text translated into the requested language, when Google Maps offers a translation."},"owner_response_language":{"type":"string","nullable":true,"description":"ISO 639 language code of the owner response."},"review_text_translated_language":{"type":"string","nullable":true,"description":"ISO 639 language code the review was translated into."}},"additionalProperties":false},"description":"List of reviews returned."},"business_id":{"type":"string","description":"The Business Id the results belong to, as received."},"match_count":{"type":"number","description":"Number of reviews returned on this page. Not the business's total review count."}},"description":"Reviews returned for the business, with the page size applied."},"cursor":{"type":"string","description":"Pagination cursor for the next page of reviews. Pass it back as the `cursor` parameter. Absent on the last page, and never returned when limit was below its maximum of 20."},"status":{"type":"string","description":"The status of the API response."},"parameters":{"type":"object","description":"The parameters the API received and used for this request, echoed back.","additionalProperties":true},"request_id":{"type":"string","description":"A unique ID to trace the API request."}}},"example":null,"exampleRequest":null,"tags":[],"displayCostAmount":"unknown","displayCostAsset":"USD","priceDynamic":true,"priceHint":null,"priceStatus":"unprobed","priceSource":"registry","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"unknown","summary":"price unknown","primary":{"kind":"dynamic","protocol":"mpp","network":"tempo","amountUsd":null,"per":"call","confidence":"unknown"},"accepted":[{"kind":"dynamic","protocol":"mpp","network":"tempo","amountUsd":null,"per":"call","confidence":"unknown"}]},"paymentMethods":[{"uid":"pm_wK0buL7JVx-2ai0ja7yoW","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"unknown","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":"agents.openwebninja.com","brandSlug":"agents-openwebninja-com-x402","brandBaseUrl":"https://agents.openwebninja.com","brandDocsUrl":null,"whatItDoes":"Fetches live, paginated customer reviews for a specific business from Google Maps by business ID.","exampleAgentPrompt":"Can you pull the most recent Google Maps reviews for business ID '0x102b644d009e013:0xea49e9ee285fa7bf' — give me up to 20 reviews sorted by newest, in English?","exampleUseCases":[{"title":"Restaurant reputation monitoring","prompt":"Get me the 20 most recent Google Maps reviews for business ID '0x102b644d009e013:0xea49e9ee285fa7bf' so I can see what customers are saying about my restaurant this week."},{"title":"Competitive lowest-rating analysis","prompt":"Pull the lowest-ranked Google Maps reviews for business ID '0x4b0b6a4d009e013:0xea49e9ee285fa7bf' — I want to see what complaints customers are leaving for this competitor."},{"title":"Multi-page review collection","prompt":"Fetch all Google Maps reviews for business ID '0x102b644d009e013:0xea49e9ee285fa7bf' page by page — start with the first 20 most relevant ones and give me the cursor so I can keep going."}],"resultDescription":"Returns a JSON object containing an array of up to 20 review objects, each with fields including review text, star rating (1-5), author name and profile link, review timestamp, like count, owner response text and language, translated review text, review photos, and a pagination cursor for fetching the next page if more reviews exist.","failureModes":["business_id not found — 'found' field returns false, reviews array is empty","expired or invalid cursor — pagination fails and no results are returned","limit below 20 — no cursor is returned, only a trimmed single page","unsupported language or region code — results may default or return an error","network timeout reading live Google Maps data — transient failure requiring retry","rate limit exceeded — HTTP 429 returned by the proxy layer"],"whenToPreferThis":"Use this endpoint when you need live, real-time Google Maps reviews for a specific business identified by its Google Maps business_id. Prefer it over cached/database-backed alternatives when freshness matters (e.g. reputation monitoring, recent complaint detection). It supports full pagination for bulk collection and multi-language/region queries, making it suitable for international businesses. It is not a search endpoint — you must already have the business_id from a prior business lookup.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-14T00:36:59.118Z","isFirstParty":false,"canonicalSlug":"agents-openwebninja-com-business-reviews-google-maps-via-openweb-ninja-0d41b8b4"}