Skip to main content
GET
https://api.crawleo.dev
/
google-maps
Google Maps API
curl --request GET \
  --url https://api.crawleo.dev/google-maps \
  --header 'x-api-key: <x-api-key>'
{
  "parameters": {},
  "google_maps_results": [
    {
      "title": "<string>",
      "address": "<string>",
      "rating": 123,
      "ratingCount": 123,
      "phone": "<string>",
      "website": "<string>",
      "category": "<string>",
      "placeId": "<string>",
      "cid": "<string>",
      "latitude": 123,
      "longitude": 123,
      "openingHours": "<string>",
      "priceRange": "<string>"
    }
  ],
  "credits": 123
}

Overview

The Google Maps API lets you search for businesses, places, landmarks, and locations on Google Maps and retrieve structured place data. Use it for local search, business discovery, and place lookups.
When should I use this vs. the Google Search API? Use the Google Maps API when you need structured place data (addresses, ratings, phone numbers, coordinates). Use the Google Search API with type=places for lighter local results within a general SERP workflow.

Endpoint

GET https://api.crawleo.dev/google-maps
Cost: 10 credits per request

Parameters

Required Headers

x-api-key
string
required
Your Crawleo API key for authentication.Example: x-api-key: YOUR_API_KEY

Required Parameters

q
string
required
Search query. Accepts business names, landmarks, addresses, keywords, and category + location queries.Examples:
  • restaurants in Paris
  • Eiffel Tower
  • hotels near Times Square New York
  • coffee shops Berlin

Optional Parameters

hl
string
Language code for returned text. ISO 639-1 language code that affects localization of place names, categories, and other text fields in the response.Examples: en, ar, fr, de
ll
string
Location bias in the format @latitude,longitude,zoomz. Biases results toward the specified geographic area without strictly limiting them.
ExampleDescription
@48.8566,2.3522,15zCentral Paris, street-level zoom
@40.7580,-73.9855,14zTimes Square, New York
The zoom level (z) ranges from 1z (world) to 21z (building). Higher zoom values narrow the geographic bias.
placeId
string
Google Place ID for looking up a specific place directly. When provided, returns data for that exact place.Example: ChIJLU7jZClu5kcR4PcOOO6p3I0
cid
string
Google numeric business/customer ID for targeting a specific business listing.Example: 10311848498909477344

Parameter Combinations / Behavior

CombinationBehavior
q onlyGeneral Google Maps search for the query term.
q + hlMaps search with localized result text.
q + llMaps search biased toward the specified geographic area.
q + ll + hlLocation-biased search with localized text.
q + placeIdDirect place lookup; q may be used for validation.
q + placeId + hlDirect place lookup with localized text.
q + cidDirect business lookup by customer ID.
q + cid + hlBusiness lookup by customer ID with localized text.

Example Requests

curl -X GET "https://api.crawleo.dev/google-maps?q=restaurants+in+Paris&hl=fr" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"
curl -X GET "https://api.crawleo.dev/google-maps?q=coffee+shops&ll=%4048.8566%2C2.3522%2C15z&hl=fr" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Place ID Lookup

curl -X GET "https://api.crawleo.dev/google-maps?q=Le+Comptoir&placeId=ChIJLU7jZClu5kcR4PcOOO6p3I0" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Response

A successful response returns structured place data:
{
  "parameters": {
    "q": "restaurants in Paris",
    "hl": "fr"
  },
  "google_maps_results": [
    {
      "title": "Le Comptoir du Panthéon",
      "address": "5 Rue Soufflot, 75005 Paris",
      "rating": 4.3,
      "ratingCount": 2541,
      "phone": "+33 1 43 54 75 56",
      "website": "https://example.com",
      "category": "French Restaurant",
      "placeId": "ChIJLU7jZClu5kcR4PcOOO6p3I0",
      "cid": "10311848498909477344",
      "latitude": 48.8462,
      "longitude": 2.3464,
      "openingHours": "12:00 PM – 11:00 PM",
      "priceRange": "$$"
    }
  ],
  "credits": 10
}

Top-Level Response Fields

parameters
object
Echo of the query parameters used for this request.
google_maps_results
array
Array of place result objects.
credits
integer
Number of credits consumed by this request.

Error Responses

Status CodeDescription
400Missing required query parameter q
401Invalid or missing API key
403Inactive account or expired subscription
429Credits exhausted or concurrent request limit reached
500Internal server error

Limits / Notes

  • Each request costs 10 credits regardless of result count.
  • Requests are subject to concurrent request limits based on your subscription plan.
  • Results depend on Google Maps data availability and query phrasing.
  • Localized output varies by hl language code.
  • ll biases results geographically but does not strictly limit them.
Last modified on April 11, 2026