Google Maps Place API
Look up a place on Google Maps by name or search query (optionally scoped to a location) and get the best-matching place with available address, contact, rating, and coordinate details as normalized JSON.
Provider network
Providers ranked by traffic
capped at $0.0099 per request1 result$0.00882 results$0.0099 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.
Try it
Make your first request
{
"data": {
"items": [
{
"address": "123 Main St",
"category": "general",
"city": "San Francisco",
"countryCode": "US",
"hours": [
{}
],
"image": "https://example.com/image.jpg",
"latitude": 37.7749,
"longitude": -122.4194,
"name": "Example title",
"neighborhood": "example",
"permanentlyClosed": false,
"phone": "+1 555-0142",
"placeId": "a1b2c3d4",
"plusCode": "a1b2c3d4",
"postalCode": "94107",
"priceLevel": "19.99",
"rating": 4.6,
"reviewsCount": 12500,
"state": "CA",
"street": "123 Main St",
"url": "https://example.com/page",
"website": "https://example.com/page"
}
]
},
"found": true
}interface MapsPlaceResponse {
data: {
items: {
address?: string;
category?: string;
city?: string;
countryCode?: string;
hours?: {
}[];
image?: string;
latitude?: number;
longitude?: number;
name: string;
neighborhood?: string;
permanentlyClosed?: boolean;
phone?: string;
placeId?: string;
plusCode?: string;
postalCode?: string;
priceLevel?: string;
rating?: number;
reviewsCount?: number;
state?: string;
street?: string;
url: string;
website?: string;
}[];
} | null;
found: boolean;
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
Request, response, and price
Last verified 2026-09-16 · uptime and latency measured over 30dcurl -X POST https://api.getanyapi.com/v1/run/maps.place \
-H "Authorization: Bearer $ANYAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"location":"San Francisco, CA","query":"Blue Bottle Coffee"}'| Field | Type | Example value |
|---|---|---|
| Request body | ||
| query | string | "Blue Bottle Coffee"The business name or search text to look up, as you would type it into the Google Maps search bar (e.g. Blue Bottle Coffee). |
| categoryFilterWords | array | Optional list of Google Maps place-category names to keep; the match is limited to a place whose category is one of these. Use lowercase category names as shown on Google Maps (e.g. ["coffee shop"]). Omit to allow any category and stay on the cheapest price; a category filter routes to a dearer source. |
| language | string | Two-letter language code for the result details (e.g. en). |
| location | string | "San Francisco, CA"Optional free-text location to scope the search, ideally city plus state or country (e.g. San Francisco, CA). Narrows the query to the best match in that area. |
| placeMinimumStars | enum | Only match a place with at least this average rating: two (2+), twoAndHalf (2.5+), three (3+), threeAndHalf (3.5+), four (4+), or fourAndHalf (4.5+). Places with no reviews are excluded. Omit this field to stay on the cheapest price; a rating floor routes to a dearer source. |
| requireFields | array | Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `hours` or `plusCode`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a place that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. |
| website | enum | Filter by whether the place lists a website: allPlaces (default), withWebsite (only if it has a website), or withoutWebsite (only if it has none). Omit this field, or send allPlaces, to stay on the cheapest price; withWebsite and withoutWebsite route to a dearer source. |
| Response | ||
| data | object | |
| data.items | object[] | The best-matching place for the query, with available address, contact, category, rating, opening-hours, and coordinate details. Up to one element (empty when nothing matched). Populated whenever the provider has data for the entity. |
| data.items[].address | string | Full formatted street address. Populated whenever the provider has data for the entity. |
| data.items[].category | string | Primary Google Maps category (e.g. Coffee shop). Populated whenever the provider has data for the entity. |
| data.items[].citycan require | string | |
| data.items[].countryCodecan require | string | Two-letter country code. |
| data.items[].hourscan require | object[] | Opening hours by day: each element is an object with the day name and its hours. |
| data.items[].imagecan require | string | URL of the primary place photo. |
| data.items[].latitude | number | Populated whenever the provider has data for the entity. |
| data.items[].longitude | number | Populated whenever the provider has data for the entity. |
| data.items[].name | string | Business or place name. Populated whenever the provider has data for the entity. |
| data.items[].neighborhoodcan require | string | |
| data.items[].permanentlyClosedcan require | boolean | Whether the place is permanently closed. |
| data.items[].phonecan require | string | Formatted phone number. |
| data.items[].placeId | string | Google Maps place id. Populated whenever the provider has data for the entity. |
| data.items[].plusCodecan require | string | Google Plus Code for the location. |
| data.items[].postalCodecan require | string | |
| data.items[].priceLevelcan require | string | Price level indicator (e.g. a price range). |
| data.items[].ratingcan require | number | Average star rating. |
| data.items[].reviewsCountcan require | integer | Total number of reviews. |
| data.items[].statecan require | string | State or region name. |
| data.items[].streetcan require | string | Street portion of the address. |
| data.items[].url | string | Google Maps URL for the place. Populated whenever the provider has data for the entity. |
| data.items[].websitecan require | string | Business website URL. |
| found | boolean | |
| Price | ||
| Price per request | USD | $0.00175 |
| Price /1k req | USD | $1.75 |
FAQ
About the Google Maps Place API
The AnyAPI Google Maps Place API returns Google Maps place data as normalized JSON from one POST call to /v1/run/maps.place. Look up a place on Google Maps by name or search query (optionally scoped to a location) and get the best-matching place with available address, contact, rating, and coordinate details as normalized JSON. AnyAPI routes each request across 3 sources and falls back automatically when one fails. It costs from $1.75 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.8% of Google Maps place calls through AnyAPI succeeded, with a median response time of 2.7 seconds across 919 measured calls.