---
title: "Google Maps search API"
method: POST
path: "/google/map/search"
tags: ["Google"]
---

# Google Maps search API

`POST /google/map/search`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/google/map/search`
- Auth: API key in header `x-api-key`

Searches Google Maps with a request body of `keyword`, `language` and `country` (an ISO-2 code such as `us`), all required. Each place has its name, place id, categories, address, coordinates, phone, website, rating and review count. `rating` is `null` when Google has no aggregate rating.

## Headers

- `x-api-key` string, required

## Request body

- GoogleMapSearchOption
  - `country` string
  - `keyword` string
  - `language` string

## Response `200`

OK

- GoogleMapSearchResponseDoc
  - `code` integer
  - `data` GooglePlace[]
    - `address` string: Full street address of the place as shown on Google Maps.
    - `amenities` string[]: Amenities Google Maps lists for the place, for example `Free Wi-Fi`.
    - `category` string[]: Business categories Google Maps assigns to the place.
    - `description` string: Description of the place from its Google Maps listing.
    - `image` string: URL of the main photo of the place.
    - `latitude` number: Latitude of the place in decimal degrees.
    - `locations` string[]: Location names Google Maps associates with the place, such as nearby areas.
    - `longitude` number: Longitude of the place in decimal degrees.
    - `name` string: Name of the place as shown on Google Maps.
    - `phone` string: Phone number of the place, as digits.
    - `place_id` string: Google Place ID. Use it with the place, reviews and photos endpoints.
    - `rating` number, nullable: Rating is the aggregate Google rating (1.0–5.0), or null when the place has no aggregate rating on Google (Google never assigns a 0.x average, so 0 always meant "unrated"). A pointer so unrated serializes as `rating: null`, not a misleading 0.
    - `review_count` integer: Number of Google reviews for the place.
    - `url` string: Google Maps URL of the place.
    - `website` string: Website of the place.
  - `msg` string

## Other responses

- `400`: Invalid input
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/0497899e2016?raw)
