Autocomplete

The Google Maps Autocomplete API provides automatic query predictions as users type. Helps users find places, addresses, and points of interest quickly. Accepts both "q" and "query" parameters for consistency with other autocomplete endpoints.

Endpoint

GET /api/google-maps-api/autocomplete

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Parameters

q string Required

The partial search term to get autocomplete suggestions for. Accepts both "q" (consistent with Google Hotels) and "query".

hl string Optional

Language code for results. Default: en. Examples: en, de, fr, es. Format: ISO 639-1 two-letter language code.

gl string Optional

Country/region code for geo-filtering results. Examples: us, de, uk, jp. Format: ISO 3166-1 alpha-2 country code.

google_domain string Optional

Google domain to use for the search. Examples: google.com, google.de, google.com.br, google.co.uk.

Request Examples

<?php

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://scrappa.co/api/maps/autocomplete?q=bakery');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'x-api-key: YOUR_API_KEY_HERE',
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
<?php

use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'x-api-key' => 'YOUR_API_KEY_HERE',
])->get('https://scrappa.co/api/maps/autocomplete?q=bakery');

return $response->json();
fetch('https://scrappa.co/api/maps/autocomplete?q=bakery', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
const axios = require('axios');

axios.get('https://scrappa.co/api/maps/autocomplete?q=bakery', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => console.log(response.data))
  .catch(error => console.error('Error:', error));
import requests

headers = {
    'x-api-key': 'YOUR_API_KEY_HERE'
}

response = requests.get('https://scrappa.co/api/maps/autocomplete?q=bakery', headers=headers)
print(response.json())
require 'net/http'
require 'uri'
require 'json'

uri = URI.parse('https://scrappa.co/api/maps/autocomplete?q=bakery')
request = Net::HTTP::Get.new(uri)
request['x-api-key'] = 'YOUR_API_KEY_HERE'

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(request)
end

puts JSON.parse(response.body)
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    client := &http.Client{}
    req, _ := http.NewRequest("GET", "https://scrappa.co/api/maps/autocomplete?q=bakery", nil)
    req.Header.Set("x-api-key", "YOUR_API_KEY_HERE")

    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}
curl -X GET 'https://scrappa.co/api/maps/autocomplete?q=bakery' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Response Schema

JSON Response 200 OK
{
    "search_parameters": {
        "engine": "google_maps_autocomplete",
        "q": "bakery",
        "hl": "en",
        "gl": null,
        "google_domain": null
    },
    "suggestions": [
        {
            "type": "place",
            "place_id": "ChIJo5WzdY-4QIYRSL3AEsOhcYc",
            "google_id": "0x8640b88f75b395a3:0x8771a1c312c0bd48",
            "main_text": "Bakery near me",
            "main_text_highlights": [
                {
                    "offset": 0,
                    "length": 6
                }
            ],
            "latitude": 29.7604,
            "longitude": -95.3698,
            "country": "US"
        }
    ],
    "response_time_ms": 587
}

Try It Live

Test this endpoint in our interactive playground with real data.

Open in Playground