places

Google Maps Reviews API

Reviews for a specific Google Maps place, including rating, author, date, and full review text.

GET/api/public/v1/google-maps-reviews
price
$0.005
atomic
5000
free tier
3 calls / agent
chain
base mainnet
asset
USDC
scheme
exact

agent brief

Give a place_id, get review objects with rating and text for sentiment analysis.

engine: google_maps_reviews · results key: reviews · settlement: USDC / base / exact

use this when you need to

  • -Summarize customer sentiment for a business
  • -Extract recurring complaints

query parameters

nametyperequireddescription
networkbase | base-sepoliano · default "base"Payment network. base-sepolia returns mock data for testing.
place_idstringyesGoogle place ID from the Maps endpoint
sort_bystringnorelevance | newest | highest_rating | lowest_rating

call it — curl

bash
# Free tier — first 3 calls per agent identity, no payment header
curl "https://marketplaceforaiagents.com/api/public/v1/google-maps-reviews?place_id=ChIJN1t_tDeuEmsRUsoyG83frY4"

# Sandbox — signed testnet USDC, mock response, no real spend
curl "https://marketplaceforaiagents.com/api/public/v1/google-maps-reviews?place_id=ChIJN1t_tDeuEmsRUsoyG83frY4&network=base-sepolia" \
  -H "X-PAYMENT: <base64 signed base-sepolia USDC authorization>"

# Production — signed x402 payment header, real data
curl "https://marketplaceforaiagents.com/api/public/v1/google-maps-reviews?place_id=ChIJN1t_tDeuEmsRUsoyG83frY4" \
  -H "X-PAYMENT: <base64 signed USDC authorization>"

call it — typescript + x402-fetch

typescript
import { wrapFetchWithPayment } from "x402-fetch";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.AGENT_PRIVATE_KEY as `0x${string}`);
const fetchWithPayment = wrapFetchWithPayment(fetch, account);

const res = await fetchWithPayment(
  "https://marketplaceforaiagents.com/api/public/v1/google-maps-reviews?place_id=ChIJN1t_tDeuEmsRUsoyG83frY4"
);
const data = await res.json();
console.log(data.reviews);

response — 200 ok

application/json
{
  "search_metadata": {
    "id": "search_...",
    "status": "Success",
    "created_at": "2026-06-18T12:00:00Z"
  },
  "search_parameters": {
    "engine": "google_maps_reviews",
    "place_id": "example"
  },
  "reviews": [
    {
      "position": 1,
      "title": "Example result",
      "link": "https://example.com/1",
      "snippet": "Structured JSON result."
    }
  ]
}

status codes

200data returned, response includes X-PAYMENT-RESPONSE receipt when paid
400missing or invalid required parameters
402free tier exhausted or invalid X-PAYMENT — body contains accepts[] payment requirements
404unknown endpoint slug
429upstream rate limit — retry with backoff
500upstream or settlement error