# Search Google Maps or Resolve a Place

> Search Google Maps or Resolve a Place is a paid API for AI agents from agents.litescrape.com, paid per call via MPP, $0.000150/call, status unknown (last checked 2026-09-18).

Searches Google Maps for local businesses, categories, or addresses within a viewport, or resolves a single exact place by ID, returning structured place data including ratings, hours, and reviews.

## Facts

- Endpoint: GET https://agents.litescrape.com/api/google/maps
- Price: $0.000150/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-09-18
- Activations on Zero: 0
- Provider: agents.litescrape.com
- Website: https://agents.litescrape.com
- Canonical page: https://www.zero.xyz/c/agents-litescrape-com-search-google-maps-or-resolve-a-place-bc8dd116
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_caW-e3H-LX4gK6BaqJDsL

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agents-litescrape-com-search-google-maps-or-resolve-a-place-bc8dd116
```

Example prompt: Search Google Maps for highly rated sushi restaurants (minimum 4 stars) near downtown San Francisco — use a 2000m radius and show results in English.

## When to prefer this

Choose this endpoint when you need structured Google Maps search results or place details — especially when you need rating, review count, hours, price level, and place IDs in a single call. Prefer it over Bing Maps or Apple Maps endpoints when Google Maps data quality or Google-specific place IDs are required. Use the search type for discovery queries across categories and the place type for resolving a known place's full metadata.

## Known failure modes

- Missing required parameter (q without type=search, or place lookup without place_id/data_cid/data) returns 400 with error and error_code
- Invalid ll format or out-of-range lat/lon/z/m returns 400
- Combining mutually exclusive parameters (z and m, or place_id and data_cid) returns 400
- Place not found returns empty place_results or 404
- Rate limit or payment failure returns 402 or 429 with retryable flag
- Google Maps service unavailable returns 503 with retryable: true

## How this service works

Searches Google Maps or resolves one exact place. With type=search, q finds businesses, categories, or addresses inside a viewport given as ll (@lat,lon,14z or @lat,lon,5000m), a named location with z or m, or lat and lon with z or m, and returns local_results (position, title, rating, reviews, address, hours, place_id, data_id, and links to posts, photos, and web results) with pagination.next for the next page of 20. With type=place, or with place_id or data_cid, it returns one place_results entry. Filter by price level, min_rating, and opening state. One call is one request.

## Output

Returns a JSON object containing search_metadata (request ID, status, time taken), search_parameters (normalized inputs), and for search queries: local_results array with up to 20 places each having position, title, rating, reviews count, address, hours, place_id, data_id, and links to photos/posts/web results, plus a pagination.next URL for the next page. For place lookups: a place_results array with the single resolved place's full details.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "m": {
   "type": "number",
   "maximum": 15028132,
   "minimum": 1,
   "description": "Search radius in meters for location or lat/lon geography. Cannot be combined with z."
  },
  "q": {
   "type": "string",
   "description": "Business, category, address, or natural-language query. Required when type is search."
  },
  "z": {
   "type": "number",
   "maximum": 30,
   "minimum": 3,
   "description": "Zoom level for location or lat/lon geography. Cannot be combined with m."
  },
  "gl": {
   "type": "string",
   "default": "us",
   "maxLength": 2,
   "minLength": 2,
   "description": "Two-letter country code for regional localization."
  },
  "hl": {
   "type": "string",
   "default": "en",
   "description": "Language for labels and returned text, such as en, es, or fr."
  },
  "ll": {
   "type": "string",
   "description": "Viewport as @lat,lon,14z or @lat,lon,5000m."
  },
  "lat": {
   "type": "number",
   "maximum": 90,
   "minimum": -90,
   "description": "Viewport center latitude. Requires lon and z or m."
  },
  "lon": {
   "type": "number",
   "maximum": 180,
   "minimum": -180,
   "description": "Viewport center longitude. Requires lat and z or m."
  },
  "data": {
   "type": "string",
   "maxLength": 8192,
   "description": "Google Maps protobuf parameter sequence for search filters or an exact place. Exact-place data requires type=place."
  },
  "type": {
   "enum": [
    "search",
    "place"
   ],
   "type": "string",
   "description": "search for results, place for an exact-place data sequence. Required for query and filter searches."
  },
  "start": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Result offset. A Maps page holds 20 places; prefer pagination.next from the response."
  },
  "nearby": {
   "type": "boolean",
   "default": false,
   "description": "Use the supplied geography as a nearby-search scope. Requires ll, location, or lat/lon."
  },
  "data_cid": {
   "type": "string",
   "description": "Decimal Google CID to resolve one exact place. Cannot be combined with place_id or data."
  },
  "location": {
   "type": "string",
   "description": "Named location resolved by the API. Requires z or m; cannot be combined with ll or lat/lon."
  },
  "place_id": {
   "type": "string",
   "description": "Google place ID to resolve one exact place. Cannot be combined with data_cid or data."
  },
  "max_price": {
   "type": "integer",
   "minimum": 0,
   "description": "Max
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "pagination": {
   "type": "object",
   "description": "Present when more results exist: next (a ready-made URL for the next page) or next_page_token."
  },
  "local_results": {
   "type": "array",
   "items": {
    "type": "object"
   },
   "description": "Places for a search: position, title, rating, reviews, address, place_id, data_id, and links to posts, photos, and web results."
  },
  "place_results": {
   "type": "array",
   "items": {
    "type": "object"
   },
   "description": "The exact place for a place lookup."
  },
  "search_metadata": {
   "type": "object",
   "properties": {
    "id": {
     "type": "string"
    },
    "status": {
     "type": "string"
    },
    "total_time_taken": {
     "type": "number"
    }
   }
  },
  "search_parameters": {
   "type": "object",
   "description": "The request parameters as normalized by the API."
  },
  "search_information": {
   "type": "object",
   "description": "For example local_results_state."
  }
 },
 "description": "Successful responses carry request metadata, the normalized parameters, and the result groups available for the operation. Optional groups are omitted when the source does not provide them. Errors are a JSON body with error, error_code, status_code, request_id, retryable, and the echoed search_parameters."
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-litescrape-com-search-google-maps-or-resolve-a-place-bc8dd116/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.litescrape.com](https://www.zero.xyz/host/agents.litescrape.com/llms.txt)
