x402.openwebninja.com
https://x402.openwebninja.com/local-business-data/searchShares a payout wallet with 150 other endpoints — its adoption is attributed from that shared wallet's traffic, not earned exclusively.
Searches for local business information and details based on specified location and business criteria.
Reliability & health
Uptime and response time from our own unpaid probes, plus the reliability score built from them.
Uptime
100.0% avgResponse time
p50 34ms · p95 51msData table
| Bucket | Uptime | Probes | Response time |
|---|---|---|---|
| 8/13/2026, 7:00:00 PM | 100% | 1 | 32ms |
| 8/13/2026, 8:00:00 PM | 100% | 1 | 34ms |
| 8/13/2026, 9:00:00 PM | 100% | 1 | 31ms |
| 8/13/2026, 10:00:00 PM | 100% | 1 | 33ms |
| 8/13/2026, 11:00:00 PM | 100% | 1 | 29ms |
| 8/14/2026, 12:00:00 AM | 100% | 1 | 33ms |
| 8/14/2026, 2:00:00 AM | 100% | 1 | 28ms |
| 8/14/2026, 3:00:00 AM | 100% | 1 | 23ms |
| 8/14/2026, 4:00:00 AM | 100% | 1 | 31ms |
| 8/14/2026, 5:00:00 AM | 100% | 1 | 41ms |
| 8/14/2026, 6:00:00 AM | 100% | 1 | 39ms |
| 8/14/2026, 7:00:00 AM | 100% | 1 | 40ms |
| 8/14/2026, 9:00:00 AM | 100% | 1 | 32ms |
| 8/14/2026, 10:00:00 AM | 100% | 1 | 40ms |
| 8/14/2026, 11:00:00 AM | 100% | 1 | 27ms |
| 8/14/2026, 12:00:00 PM | 100% | 1 | 34ms |
| 8/14/2026, 1:00:00 PM | 100% | 1 | 32ms |
| 8/14/2026, 3:00:00 PM | 100% | 1 | 135ms |
| 8/14/2026, 4:00:00 PM | 100% | 1 | 26ms |
| 8/14/2026, 5:00:00 PM | 100% | 1 | 38ms |
| 8/14/2026, 6:00:00 PM | 100% | 1 | 29ms |
| 8/14/2026, 7:00:00 PM | 100% | 1 | 36ms |
| 8/14/2026, 8:00:00 PM | 100% | 1 | 30ms |
| 8/14/2026, 10:00:00 PM | 100% | 1 | 28ms |
| 8/14/2026, 11:00:00 PM | 100% | 1 | 32ms |
| 8/15/2026, 12:00:00 AM | 100% | 1 | 32ms |
| 8/15/2026, 1:00:00 AM | 100% | 1 | 45ms |
| 8/15/2026, 2:00:00 AM | 100% | 1 | 34ms |
| 8/15/2026, 3:00:00 AM | 100% | 1 | 26ms |
| 8/15/2026, 4:00:00 AM | 100% | 1 | 43ms |
| 8/15/2026, 6:00:00 AM | 100% | 1 | 37ms |
| 8/15/2026, 7:00:00 AM | 100% | 1 | 38ms |
| 8/15/2026, 8:00:00 AM | 100% | 1 | 40ms |
| 8/15/2026, 9:00:00 AM | 100% | 1 | 29ms |
| 8/15/2026, 10:00:00 AM | 100% | 1 | 31ms |
| 8/15/2026, 11:00:00 AM | 100% | 1 | 26ms |
| 8/15/2026, 12:00:00 PM | 100% | 1 | 52ms |
| 8/15/2026, 2:00:00 PM | 100% | 1 | 37ms |
| 8/15/2026, 3:00:00 PM | 100% | 1 | 27ms |
| 8/15/2026, 4:00:00 PM | 100% | 1 | 53ms |
| 8/15/2026, 5:00:00 PM | 100% | 1 | 32ms |
| 8/15/2026, 6:00:00 PM | 100% | 1 | 30ms |
| 8/15/2026, 7:00:00 PM | 100% | 1 | 31ms |
| 8/15/2026, 9:00:00 PM | 100% | 1 | 35ms |
| 8/15/2026, 10:00:00 PM | 100% | 1 | 30ms |
| 8/15/2026, 11:00:00 PM | 100% | 1 | 34ms |
| 8/16/2026, 12:00:00 AM | 100% | 1 | 32ms |
| 8/16/2026, 1:00:00 AM | 100% | 1 | 30ms |
| 8/16/2026, 2:00:00 AM | 100% | 1 | 27ms |
| 8/16/2026, 4:00:00 AM | 100% | 1 | 28ms |
| 8/16/2026, 5:00:00 AM | 100% | 1 | 32ms |
| 8/16/2026, 6:00:00 AM | 100% | 1 | 43ms |
| 8/16/2026, 7:00:00 AM | 100% | 1 | 41ms |
| 8/16/2026, 8:00:00 AM | 100% | 1 | 31ms |
| 8/16/2026, 9:00:00 AM | 100% | 1 | 33ms |
| 8/16/2026, 11:00:00 AM | 100% | 1 | 31ms |
| 8/16/2026, 12:00:00 PM | 100% | 1 | 42ms |
| 8/16/2026, 1:00:00 PM | 100% | 1 | 31ms |
| 8/16/2026, 2:00:00 PM | 100% | 1 | 31ms |
| 8/16/2026, 3:00:00 PM | 100% | 1 | 38ms |
| 8/16/2026, 4:00:00 PM | 100% | 1 | 43ms |
| 8/16/2026, 6:00:00 PM | 100% | 1 | 31ms |
| 8/16/2026, 7:00:00 PM | 100% | 1 | 40ms |
| 8/16/2026, 8:00:00 PM | 100% | 1 | 36ms |
| 8/16/2026, 9:00:00 PM | 100% | 1 | 34ms |
| 8/16/2026, 10:00:00 PM | 100% | 1 | 34ms |
| 8/16/2026, 11:00:00 PM | 100% | 1 | 40ms |
| 8/17/2026, 1:00:00 AM | 100% | 1 | 32ms |
| 8/17/2026, 2:00:00 AM | 100% | 1 | 30ms |
| 8/17/2026, 3:00:00 AM | 100% | 1 | 29ms |
| 8/17/2026, 4:00:00 AM | 100% | 1 | 73ms |
| 8/17/2026, 5:00:00 AM | 100% | 1 | 55ms |
| 8/17/2026, 6:00:00 AM | 100% | 1 | 34ms |
| 8/17/2026, 8:00:00 AM | 100% | 1 | 46ms |
| 8/17/2026, 9:00:00 AM | 100% | 1 | 30ms |
| 8/17/2026, 10:00:00 AM | 100% | 1 | 26ms |
| 8/17/2026, 11:00:00 AM | 100% | 1 | 41ms |
| 8/17/2026, 12:00:00 PM | 100% | 1 | 39ms |
| 8/17/2026, 1:00:00 PM | 100% | 1 | 35ms |
| 8/17/2026, 3:00:00 PM | 100% | 1 | 31ms |
| 8/17/2026, 4:00:00 PM | 100% | 1 | 42ms |
| 8/17/2026, 5:00:00 PM | 100% | 1 | 42ms |
| 8/17/2026, 6:00:00 PM | 100% | 1 | 37ms |
| 8/17/2026, 7:00:00 PM | 100% | 1 | 32ms |
| 8/17/2026, 8:00:00 PM | 100% | 1 | 33ms |
| 8/17/2026, 10:00:00 PM | 100% | 1 | 35ms |
| 8/17/2026, 11:00:00 PM | 100% | 1 | 28ms |
| 8/18/2026, 12:00:00 AM | 100% | 1 | 30ms |
| 8/18/2026, 1:00:00 AM | 100% | 1 | 28ms |
| 8/18/2026, 2:00:00 AM | 100% | 1 | 467ms |
| 8/18/2026, 3:00:00 AM | 100% | 1 | 44ms |
| 8/18/2026, 5:00:00 AM | 100% | 1 | 36ms |
| 8/18/2026, 6:00:00 AM | 100% | 1 | 32ms |
| 8/18/2026, 7:00:00 AM | 100% | 1 | 30ms |
| 8/18/2026, 8:00:00 AM | 100% | 1 | 30ms |
| 8/18/2026, 9:00:00 AM | 100% | 1 | 37ms |
| 8/18/2026, 10:00:00 AM | 100% | 1 | 38ms |
| 8/18/2026, 12:00:00 PM | 100% | 1 | 33ms |
| 8/18/2026, 1:00:00 PM | 100% | 1 | 33ms |
| 8/18/2026, 2:00:00 PM | 100% | 1 | 34ms |
| 8/18/2026, 3:00:00 PM | 100% | 1 | 37ms |
| 8/18/2026, 4:00:00 PM | 100% | 1 | 36ms |
| 8/18/2026, 5:00:00 PM | 100% | 1 | 42ms |
| 8/18/2026, 7:00:00 PM | 100% | 1 | 89ms |
| 8/18/2026, 8:00:00 PM | 100% | 1 | 29ms |
| 8/18/2026, 9:00:00 PM | 100% | 1 | 30ms |
| 8/18/2026, 10:00:00 PM | 100% | 1 | 35ms |
| 8/18/2026, 11:00:00 PM | 100% | 1 | 33ms |
| 8/19/2026, 12:00:00 AM | 100% | 1 | 40ms |
| 8/19/2026, 2:00:00 AM | 100% | 1 | 26ms |
| 8/19/2026, 3:00:00 AM | 100% | 1 | 47ms |
| 8/19/2026, 4:00:00 AM | 100% | 1 | 38ms |
| 8/19/2026, 5:00:00 AM | 100% | 1 | 48ms |
| 8/19/2026, 6:00:00 AM | 100% | 1 | 27ms |
| 8/19/2026, 7:00:00 AM | 100% | 1 | 40ms |
| 8/19/2026, 9:00:00 AM | 100% | 1 | 34ms |
| 8/19/2026, 10:00:00 AM | 100% | 1 | 35ms |
| 8/19/2026, 11:00:00 AM | 100% | 1 | 35ms |
| 8/19/2026, 12:00:00 PM | 100% | 1 | 42ms |
| 8/19/2026, 1:00:00 PM | 100% | 1 | 49ms |
| 8/19/2026, 2:00:00 PM | 100% | 1 | 39ms |
| 8/19/2026, 4:00:00 PM | 100% | 1 | 36ms |
| 8/19/2026, 5:00:00 PM | 100% | 1 | 34ms |
| 8/19/2026, 6:00:00 PM | 100% | 1 | 45ms |
| 8/19/2026, 7:00:00 PM | 100% | 1 | 35ms |
| 8/19/2026, 8:00:00 PM | 100% | 1 | 36ms |
| 8/19/2026, 9:00:00 PM | 100% | 1 | 31ms |
| 8/19/2026, 10:00:00 PM | 100% | 1 | 60ms |
| 8/20/2026, 12:00:00 AM | 100% | 1 | 43ms |
| 8/20/2026, 1:00:00 AM | 100% | 1 | 47ms |
| 8/20/2026, 2:00:00 AM | 100% | 1 | 42ms |
| 8/20/2026, 3:00:00 AM | 100% | 1 | 34ms |
| 8/20/2026, 4:00:00 AM | 100% | 1 | 26ms |
| 8/20/2026, 5:00:00 AM | 100% | 1 | 32ms |
| 8/20/2026, 7:00:00 AM | 100% | 1 | 35ms |
| 8/20/2026, 8:00:00 AM | 100% | 1 | 42ms |
| 8/20/2026, 9:00:00 AM | 100% | 1 | 35ms |
| 8/20/2026, 10:00:00 AM | 100% | 1 | 30ms |
| 8/20/2026, 11:00:00 AM | 100% | 1 | 26ms |
| 8/20/2026, 12:00:00 PM | 100% | 1 | 42ms |
| 8/20/2026, 2:00:00 PM | 100% | 1 | 41ms |
| 8/20/2026, 3:00:00 PM | 100% | 1 | 46ms |
| 8/20/2026, 4:00:00 PM | 100% | 1 | 35ms |
| 8/20/2026, 5:00:00 PM | 100% | 1 | 26ms |
- Availability
- 100
- Latency
- 100
- Security
- 100
- Transparency
- 31
- Activity
- 1
How often it was reachable when we probed it (weight 35%).
How quickly it answers when it is up — fast scores high (weight 20%).
Whether it serves over working TLS / https (weight 15%).
Whether the operator disclosed what it does — description, schema, identity (weight 15%).
Observed on-chain payments to this endpoint's wallet — transactions, volume, and distinct paying wallets over the last month (weight 15%; not yet measured when we have not seen its wallet settle).
Confidence 100% — how much probe evidence backs this score. A thin history is flagged, not hidden.
See the scoring methodology for exactly how each number is computed.
Payment
- Currencies
- USDC
- Networks
- arbitrum, base, polygon
- Facilitator
- unknown
- SDK
- unknown
Operator
- Company
- inferred — unknown
- Jurisdiction
- —
- Registrar
- Amazon Registrar, Inc.
- Domain registered
- 2023-11-07
- Hosting network
- AMAZON-IAD
- Hosting country
- —
Operator context is derived from public RDAP/TLS records and unverified. Company and country are only available for endpoints that publish them (an OV/EV TLS certificate or a non-redacted domain record); most endpoints are CDN-fronted and disclose neither.
On-chain activity (base)
Payments per day
last payment 8/20/2026Data table
| Day | Payments | Volume (USD) | Paying wallets |
|---|---|---|---|
| 8/1/2026 | 2 | 0.01 | 1 |
| 8/2/2026 | 1 | 0 | 1 |
| 8/3/2026 | 24 | 0.07 | 5 |
| 8/4/2026 | 35 | 0.11 | 2 |
| 8/5/2026 | 7 | 0.02 | 4 |
| 8/6/2026 | 5 | 0.02 | 3 |
| 8/7/2026 | 57 | 0.18 | 3 |
| 8/8/2026 | 3 | 0.01 | 1 |
| 8/10/2026 | 14 | 0.04 | 3 |
| 8/11/2026 | 10 | 0.03 | 3 |
| 8/12/2026 | 63 | 0.19 | 3 |
| 8/14/2026 | 6 | 0.02 | 2 |
| 8/16/2026 | 1 | 0 | 1 |
| 8/17/2026 | 10 | 0.03 | 2 |
| 8/18/2026 | 2 | 0.01 | 1 |
| 8/20/2026 | 6 | 0.02 | 2 |
This payout wallet is shared: figures cover all 151 endpoints paid at it, since payments cannot be attributed to one of them. Only payments settled on chains and facilitators we index.
Linked by wallet — likely same operator
On-chain agent identity and the x402 endpoint that shares its settlement wallet.
Response schema
{
"properties": {
"data": {
"description": "List of businesses returned.",
"items": {
"properties": {
"about": {
"description": "Free-form summary and a structured details map of business attributes.",
"nullable": true,
"properties": {
"details": {
"additionalProperties": {
"additionalProperties": {
"type": "boolean"
},
"type": "object"
},
"description": "Map of attribute groups (e.g. Amenities, Crowd, Service options) to attribute name -> boolean.",
"nullable": true,
"type": "object"
},
"summary": {
"description": "Free-text description of the business.",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"address": {
"description": "Street address line of the business.",
"nullable": true,
"type": "string"
},
"booking_link": {
"description": "URL to book a service or appointment.",
"nullable": true,
"type": "string"
},
"business_id": {
"description": "Unique Google identifier of the business. Same value as google_id.",
"type": "string"
},
"business_services": {
"additionalProperties": {
"items": {
"type": "string"
},
"type": "array"
},
"description": "Map of service category -> list of services offered (when published by the owner).",
"nullable": true,
"type": "object"
},
"business_status": {
"description": "Operational status. Values: OPEN, CLOSED_TEMPORARILY, CLOSED_PERMANENTLY.",
"type": "string"
},
"cid": {
"description": "Google CID (Customer ID) of the business.",
"nullable": true,
"type": "string"
},
"city": {
"description": "City of the business location.",
"nullable": true,
"type": "string"
},
"compound_plus_code": {
"description": "Compound (short) Plus Code with a nearby locality.",
"nullable": true,
"type": "string"
},
"country": {
"description": "ISO 3166-1 alpha-2 country code of the business location.",
"nullable": true,
"type": "string"
},
"directory": {
"description": "List of businesses located in the same building / directory (e.g. mall, plaza). Conditional.",
"items": {
"additionalProperties": true,
"type": "object"
},
"nullable": true,
"type": "array"
},
"district": {
"description": "District or neighbourhood of the business location.",
"nullable": true,
"type": "string"
},
"emails_and_contacts": {
"description": "Emails and social-network profiles extracted from the business website. Populated when extract_emails_and_contacts=true (the default for /business-details).",
"nullable": true,
"properties": {
"emails": {
"description": "Email addresses found on the business website.",
"items": {
"type": "string"
},
"type": "array"
},
"facebook": {
"description": "Facebook profile URL.",
"nullable": true,
"type": "string"
},
"github": {
"description": "GitHub profile URL.",
"nullable": true,
"type": "string"
},
"instagram": {
"description": "Instagram profile URL.",
"nullable": true,
"type": "string"
},
"linkedin": {
"description": "LinkedIn profile URL.",
"nullable": true,
"type": "string"
},
"phone_numbers": {
"description": "Phone numbers found on the business website.",
"items": {
"type": "string"
},
"type": "array"
},
"pinterest": {
"description": "Pinterest profile URL.",
"nullable": true,
"type": "string"
},
"snapchat": {
"description": "Snapchat profile URL.",
"nullable": true,
"type": "string"
},
"tiktok": {
"description": "TikTok profile URL.",
"nullable": true,
"type": "string"
},
"twitter": {
"description": "Twitter/X profile URL.",
"nullable": true,
"type": "string"
},
"yelp": {
"description": "Yelp listing URL.",
"nullable": true,
"type": "string"
},
"youtube": {
"description": "YouTube channel URL.",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"full_address": {
"description": "Full formatted address including business name.",
"type": "string"
},
"global_plus_code": {
"description": "Global Open Location Code (Plus Code) for the business location.",
"nullable": true,
"type": "string"
},
"google_id": {
"description": "Google's internal hexadecimal ID of the business.",
"type": "string"
},
"google_mid": {
"description": "Google Knowledge Graph machine ID.",
"nullable": true,
"type": "string"
},
"hotel_amenities": {
"additionalProperties": {
"type": "boolean"
},
"description": "Hotel-only: map of amenity name to availability (true/false). Present only for hotels.",
"nullable": true,
"type": "object"
},
"hotel_booking_options": {
"description": "Hotel-only: array of booking options (provider, price, link). Present only for hotels with live rates.",
"items": {
"additionalProperties": true,
"type": "object"
},
"nullable": true,
"type": "array"
},
"hotel_location_rating": {
"additionalProperties": true,
"description": "Hotel-only: location rating breakdown when the business is a hotel.",
"nullable": true,
"type": "object"
},
"hotel_price_for_dates": {
"description": "Hotel-only: nightly price string when Google has live rates.",
"nullable": true,
"type": "string"
},
"hotel_results_from_web": {
"description": "Hotel-only: additional web-sourced results / reviews shown alongside the Google listing.",
"items": {
"additionalProperties": true,
"type": "object"
},
"nullable": true,
"type": "array"
},
"hotel_review_summary": {
"additionalProperties": true,
"description": "Hotel-only: AI-generated review summary. Present only for hotels.",
"nullable": true,
"type": "object"
},
"hotel_stars": {
"description": "Hotel-only: star rating (1-5). Present only for hotels.",
"nullable": true,
"type": "integer"
},
"keywords_mentioned_in_reviews": {
"description": "Keywords most frequently mentioned in reviews, with counts. Returned by /business-details-plus only (AI-enriched, ?extended_details=true).",
"items": {
"properties": {
"keyword": {
"description": "The keyword extracted from reviews.",
"type": "string"
},
"review_count": {
"description": "Number of reviews mentioning this keyword.",
"type": "integer"
}
},
"required": [
"keyword",
"review_count"
],
"type": "object"
},
"nullable": true,
"type": "array"
},
"latitude": {
"description": "Latitude of the business location.",
"type": "number"
},
"located_in": {
"description": "Parent place this business is located in (e.g. mall) when applicable.",
"nullable": true,
"properties": {
"google_id": {
"description": "Google ID of the parent place.",
"type": "string"
},
"name": {
"description": "Name of the parent place.",
"type": "string"
}
},
"type": "object"
},
"longitude": {
"description": "Longitude of the business location.",
"type": "number"
},
"menu_link": {
"description": "URL of the business menu (when published).",
"nullable": true,
"type": "string"
},
"name": {
"description": "Display name of the business.",
"type": "string"
},
"opening_date": {
"description": "Date the business opened (when published by Google).",
"nullable": true,
"type": "string"
},
"opening_status": {
"description": "Current opening status string as shown on Google Maps (e.g. 'Open', 'Closed', 'Open 24 hours').",
"nullable": true,
"type": "string"
},
"order_link": {
"description": "URL to place an order (when published).",
"nullable": true,
"type": "string"
},
"owner_id": {
"description": "ID of the Google Maps contributor account that owns this listing.",
"nullable": true,
"type": "string"
},
"owner_link": {
"description": "Link to the owner profile on Google Maps.",
"nullable": true,
"type": "string"
},
"owner_name": {
"description": "Display name of the owner profile.",
"nullable": true,
"type": "string"
},
"phone_number": {
"description": "Business phone number in E.164 format when available.",
"nullable": true,
"type": "string"
},
"photo_count": {
"description": "Total number of photos available for the business.",
"nullable": true,
"type": "integer"
},
"photos_sample": {
"description": "Up to ~10 representative photos for the business.",
"items": {
"properties": {
"latitude": {
"description": "Latitude where the photo was taken (when known).",
"nullable": true,
"type": "number"
},
"longitude": {
"description": "Longitude where the photo was taken (when known).",
"nullable": true,
"type": "number"
},
"photo_datetime_utc": {
"description": "Original publication datetime of the photo in ISO 8601 UTC.",
"nullable": true,
"type": "string"
},
"photo_id": {
"description": "Google Maps photo ID.",
"type": "string"
},
"photo_timestamp": {
"description": "Unix epoch seconds matching photo_datetime_utc.",
"nullable": true,
"type": "integer"
},
"photo_url": {
"description": "URL of the photo (lower-resolution).",
"type": "string"
},
"photo_url_large": {
"description": "URL of the photo at a larger resolution.",
"nullable": true,
"type": "string"
},
"type": {
"description": "Media type. Values: photo, video, street_view.",
"type": "string"
},
"video_thumbnail_url": {
"description": "Thumbnail URL when the media is a video; null for still photos.",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"nullable": true,
"type": "array"
},
"place_id": {
"description": "Google Maps Place ID.",
"type": "string"
},
"place_link": {
"description": "Google Maps URL for the business.",
"type": "string"
},
"posts_link": {
"description": "URL to the full list of owner posts on Google Maps.",
"nullable": true,
"type": "string"
},
"posts_sample": {
"description": "Sample of the most recent owner posts. Present in /business-details and /business-details-plus.",
"items": {
"properties": {
"post_datetime_utc": {
"description": "ISO 8601 UTC datetime when the post was published.",
"nullable": true,
"type": "string"
},
"post_id": {
"description": "Unique Google identifier of the owner post.",
"type": "string"
},
"post_link": {
"description": "Direct URL to the post on Google.",
"nullable": true,
"type": "string"
},
"post_links": {
"description": "Outbound links attached to the post.",
"items": {
"properties": {
"caption": {
"description": "Caption of the link as shown on the post.",
"nullable": true,
"type": "string"
},
"url": {
"description": "Target URL of the link.",
"type": "string"
}
},
"type": "object"
},
"nullable": true,
"type": "array"
},
"post_photos": {
"description": "URLs of photos attached to the post.",
"items": {
"type": "string"
},
"nullable": true,
"type": "array"
},
"post_text": {
"description": "Text content of the post.",
"nullable": true,
"type": "string"
},
"post_timestamp": {
"description": "Unix epoch seconds matching post_datetime_utc.",
"nullable": true,
"type": "integer"
}
},
"type": "object"
},
"nullable": true,
"type": "array"
},
"price_level": {
"description": "Price level as shown on Google Maps (e.g. '$', '$$').",
"nullable": true,
"type": "string"
},
"rating": {
"description": "Average review rating (1-5) on Google Maps.",
"nullable": true,
"type": "number"
},
"requested_business_id": {
"description": "The exact business_id from the request, echoed back. Useful when batching multiple IDs.",
"type": "string"
},
"reservations_link": {
"description": "URL to make a reservation.",
"nullable": true,
"type": "string"
},
"review_count": {
"description": "Total number of Google Maps reviews on the business.",
"nullable": true,
"type": "integer"
},
"reviews_link": {
"description": "URL to view reviews on Google Maps.",
"nullable": true,
"type": "string"
},
"reviews_per_rating": {
"description": "Counts of reviews per integer rating from 1 to 5.",
"nullable": true,
"properties": {
"1": {
"description": "Number of 1-star reviews.",
"type": "integer"
},
"2": {
"description": "Number of 2-star reviews.",
"type": "integer"
},
"3": {
"description": "Number of 3-star reviews.",
"type": "integer"
},
"4": {
"description": "Number of 4-star reviews.",
"type": "integer"
},
"5": {
"description": "Number of 5-star reviews.",
"type": "integer"
}
},
"type": "object"
},
"reviews_sample": {
"description": "Sample of recent reviews. Present in /business-details and /business-details-plus.",
"items": {
"properties": {
"author_id": {
"description": "Google Maps contributor ID of the review author.",
"nullable": true,
"type": "string"
},
"author_link": {
"description": "URL to the author's Google Maps profile.",
"nullable": true,
"type": "string"
},
"author_local_guide_level": {
"description": "Google Local Guide level (1-10) of the author.",
"nullable": true,
"type": "integer"
},
"author_name": {
"description": "Display name of the review author.",
"nullable": true,
"type": "string"
},
"author_photo_url": {
"description": "URL of the author's profile photo.",
"nullable": true,
"type": "string"
},
"author_review_count": {
"description": "Number of reviews this author has posted.",
"nullable": true,
"type": "integer"
},
"author_reviews_link": {
"description": "URL to all reviews by this author.",
"nullable": true,
"type": "string"
},
"hotel_rating_breakdown": {
"additionalProperties": {
"type": "integer"
},
"description": "Hotel-only: per-aspect ratings (Rooms, Service, Location, etc.).",
"nullable": true,
"type": "object"
},
"like_count": {
"description": "Number of likes the review received.",
"nullable": true,
"type": "integer"
},
"owner_response_datetime_utc": {
"description": "ISO 8601 UTC datetime when the business owner responded.",
"nullable": true,
"type": "string"
},
"owner_response_language": {
"description": "ISO 639 language code of the owner response.",
"nullable": true,
"type": "string"
},
"owner_response_text": {
"description": "Text of the business owner's response.",
"nullable": true,
"type": "string"
},
"owner_response_timestamp": {
"description": "Unix epoch seconds matching owner_response_datetime_utc.",
"nullable": true,
"type": "integer"
},
"rating": {
"description": "Star rating given in the review (1-5).",
"type": "integer"
},
"review_datetime_utc": {
"description": "ISO 8601 UTC datetime when the review was posted.",
"nullable": true,
"type": "string"
},
"review_form": {
"additionalProperties": {
"type": "string"
},
"description": "Structured questions the author answered (e.g. 'What kind of trip was it?').",
"nullable": true,
"type": "object"
},
"review_id": {
"description": "Unique Google identifier of the review.",
"type": "string"
},
"review_language": {
"description": "ISO 639 language code of the review text.",
"nullable": true,
"type": "string"
},
"review_link": {
"description": "Direct Google Maps URL to the review.",
"nullable": true,
"type": "string"
},
"review_photos": {
"description": "URLs of photos attached to the review.",
"items": {
"type": "string"
},
"nullable": true,
"type": "array"
},
"review_source": {
"description": "Platform the review originates from (e.g. 'Google', 'Tripadvisor').",
"nullable": true,
"type": "string"
},
"review_text": {
"description": "Full text content of the review.",
"nullable": true,
"type": "string"
},
"review_timestamp": {
"description": "Unix epoch seconds matching review_datetime_utc.",
"nullable": true,
"type": "integer"
},
"service_quality": {
"description": "Optional service-quality tag the author selected.",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"nullable": true,
"type": "array"
},
"share_link": {
"description": "Shortened Google Maps share URL for the business. Returned when extract_share_link=true.",
"nullable": true,
"type": "string"
},
"state": {
"description": "State / region of the business location.",
"nullable": true,
"type": "string"
},
"street_address": {
"description": "Street name and number portion of the address.",
"nullable": true,
"type": "string"
},
"subtype_gcids": {
"description": "Internal Google category IDs corresponding to the primary type and subtypes.",
"items": {
"type": "string"
},
"nullable": true,
"type": "array"
},
"subtypes": {
"description": "List of additional business categories.",
"items": {
"type": "string"
},
"nullable": true,
"type": "array"
},
"timezone": {
"description": "IANA timezone of the business location.",
"nullable": true,
"type": "string"
},
"tld": {
"description": "Top-level domain of the business website.",
"nullable": true,
"type": "string"
},
"type": {
"description": "Primary business category as labelled by Google Maps.",
"nullable": true,
"type": "string"
},
"verified": {
"description": "Whether the business is verified by Google.",
"type": "boolean"
},
"website": {
"description": "Business website URL.",
"nullable": true,
"type": "string"
},
"working_hours": {
"additionalProperties": {
"items": {
"type": "string"
},
"type": "array"
},
"description": "Working hours map keyed by day of the week. Each value is an array of time-range strings; empty object when not published.",
"nullable": true,
"type": "object"
},
"zipcode": {
"description": "ZIP / postal code of the business location.",
"nullable": true,
"type": "string"
}
},
"required": [
"business_id",
"google_id",
"name",
"business_status"
],
"type": "object"
},
"type": "array"
},
"parameters": {
"description": "The parameters the API received and used for this request, echoed back.",
"properties": {
"extract_emails_and_contacts": {
"description": "Whether email/contact extraction was requested for each business.",
"type": "boolean"
},
"language": {
"description": "The language code used for the search.",
"type": "string"
},
"lat": {
"description": "Latitude bias center used for the search.",
"type": "number"
},
"limit": {
"description": "Maximum number of results requested.",
"type": "integer"
},
"lng": {
"description": "Longitude bias center used for the search.",
"type": "number"
},
"offset": {
"description": "Number of results skipped (for pagination).",
"type": "integer"
},
"query": {
"description": "The search query as received.",
"type": "string"
},
"region": {
"description": "The region/country code used for the search.",
"type": "string"
},
"zoom": {
"description": "Map zoom level used for the search.",
"type": "integer"
}
},
"type": "object"
},
"request_id": {
"description": "A unique ID to trace the API request.",
"type": "string"
},
"status": {
"description": "The status of the API response.",
"type": "string"
}
},
"required": [
"status",
"request_id",
"parameters",
"data"
],
"type": "object"
}