Documentation Index Fetch the complete documentation index at: https://docs.hasdata.com/llms.txt
Use this file to discover all available pages before exploring further.
Use the Batch API to submit multiple search queries in a single request. Each query runs independently and returns structured results just like the standard SERP API.
This is useful when you need to check multiple keywords at once β for rank tracking, content monitoring, or search comparison tools.
Submit a Batch API Job
Each object in queries uses the same parameters as the single-query SERP API.
cURL
Node.js
Python
PHP
Java
C#
Ruby
Rust
Go
curl --request POST \
--url 'https://api.hasdata.com/scrape/batch/google/serp' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <your-api-key>' \
--data '{"requests":[{"q":"best vpn 2025","gl":"us","hl":"en"},{"q":"cheap flights to berlin","gl":"de","hl":"de"},{"q":"ai content detection tools","gl":"us","hl":"en"}]}'
Response
{
"jobId" : "9a35f32e-4f9c-4d49-9c6e-7c4de4a091e0" ,
"status" : "ok"
}
This means the batch job was accepted and is being processed asynchronously.
Get Job Status & Results
To check the status of your batch job:
cURL
Node.js
Python
PHP
Java
C#
Ruby
Rust
Go
curl --request GET \
--url 'https://api.hasdata.com/scrape/batch/google/serp/9a35f32e-4f9c-4d49-9c6e-7c4de4a091e0' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <your-api-key>'
To retrieve results once ready (supports pagination):
cURL
Node.js
Python
PHP
Java
C#
Ruby
Rust
Go
curl --request GET -G \
--url 'https://api.hasdata.com/scrape/batch/google/serp/9a35f32e-4f9c-4d49-9c6e-7c4de4a091e0/results' \
--data-urlencode 'page=1' \
--data-urlencode 'limit=100' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <your-api-key>'
{
"page" : 0 ,
"limit" : 100 ,
"total" : 3 ,
"results" : [
{
"query" : {
"q" : "ai content detection tools" ,
"gl" : "us" ,
"hl" : "en"
},
"result" : {
"id" : "5c3c1eef-eca5-4427-820b-24da63e594e6" ,
"status" : "ok" ,
"html" : "https://files.hasdata.com/5c3c1eef-eca5-4427-820b-24da63e594e6.html" ,
"json" : "https://files.hasdata.com/5c3c1eef-eca5-4427-820b-24da63e594e6.json" ,
"url" : "https://www.google.com/search?q=ai+content+detection+tools&hl=en&gl=us&sourceid=chrome&ie=UTF-8"
}
},
{
"query" : {
"q" : "cheap flights to berlin" ,
"gl" : "de" ,
"hl" : "de"
},
"result" : {
"id" : "57090249-780b-4a53-add6-aec16c700e7c" ,
"status" : "ok" ,
"html" : "https://files.hasdata.com/57090249-780b-4a53-add6-aec16c700e7c.html" ,
"json" : "https://files.hasdata.com/57090249-780b-4a53-add6-aec16c700e7c.json" ,
"url" : "https://www.google.com/search?q=cheap+flights+to+berlin&hl=de&gl=de&sourceid=chrome&ie=UTF-8"
}
},
{
"query" : {
"q" : "best vpn 2025" ,
"gl" : "us" ,
"hl" : "en"
},
"result" : {
"id" : "b434d79b-cdff-42f5-87c1-a38b883e9a38" ,
"status" : "ok" ,
"html" : "https://files.hasdata.com/b434d79b-cdff-42f5-87c1-a38b883e9a38.html" ,
"json" : "https://files.hasdata.com/b434d79b-cdff-42f5-87c1-a38b883e9a38.json" ,
"url" : "https://www.google.com/search?q=best+vpn+2025&hl=en&gl=us&sourceid=chrome&ie=UTF-8"
}
}
]
}
Each result matches the format of a regular Google SERP API response, except itβs returned as part of an array.
Maximum batch size: 10,000 queries
Failed queries do not consume credits