Google Maps API
The Google Maps Scraper API allows you to easily scrape Google Maps by simply sending an HTTP request.
To enable this engine, set the engine=google_maps parameter.
Interacting with the Google Maps scraper is quite straightforward. As opposed to the Google Search API, which can take a lot of parameters and allows more flexibility in customizing the response, the Google Maps API has fewer options, but the data it returns is still as rich and accurate.

Google Maps API Integration Examples
We will use following URL as an example for this request:
https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=<YOUR_API_KEY>&q=pizzaReady to Use Google Maps Scraping Scripts:
curl --request GET --url "https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=<YOUR_API_KEY>&q=pizza"const http = require("https");
const options = {
"method": "GET",
"hostname": "serpapi.webscrapingapi.com",
"port": null,
"path": "/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza",
"headers": {}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();import http.client
conn = http.client.HTTPSConnection("serpapi.webscrapingapi.com")
conn.request("GET", "/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza")
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza")
.asString();var client = new RestClient("https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://serpapi.webscrapingapi.com/v2?engine=google_maps&api_key=YOUR_API_KEY&q=pizza")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyGoogle Maps Specific Parameters
#1: Query Parameter
q
Required
string
The keywords that you are searching for on Google (the query).
#2: Request Customization Parameters
type
string
The type of search. It can be hotels or vacation_rentals.
data
string
This parameter is required only if q is not provided.
It has to be constructed in the next sequence: !4m5!3m4!1s + data_id + !8m2!3d + latitude + !4d + longitude
#3: Device and Geolocation Parameters
device
string
The device used for your Google Maps search. Can be set to desktop, mobile or tablet.
ll
string
Parameter defines GPS coordinates of location where you want your q (query) to be applied. It has to be constructed in the next sequence: @ + latitude + , + longitude + , + zoom.
#4: Pagination Parameters
start
int
The offset of the Google Maps results. Represents the number of results that you want to skip.
num
int
The number of results returned on each page.
Last updated