Google Trends Scraper
Google Trends Webhooks
Set callbackUrl in the submit request body to receive the result via webhook instead of polling. When parsing completes, the server sends a POST request to that URL with the result payload.
Submit with Callback
curl -X POST 'https://app.scrapering.com/api/parsing/v1/google-trends' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"q": "iphone",
"type": ["periods", "geo", "queries", "autocomplete"],
"geo": "US",
"date": "today 1-m",
"gprop": "web",
"hl": "en-US",
"callbackUrl": "https://my-server.com/webhook/parsing"
}'
Webhook Payload
Make sure your webhook endpoint responds with a
2xxstatus code to acknowledge receipt.
Your endpoint will receive a POST request with the same body as the polling result:
{
"data": {
"input": {
"q": "iphone",
"hl": "en-US",
"tz": 0,
"cat": 0,
"geo": "US",
"date": "today 1-m",
"type": ["periods", "geo", "queries", "autocomplete"],
"gprop": "",
"resolution": null,
"original_url": "https://trends.google.com/explore?q=iphone&date=today%201-m&hl=en-US&geo=US"
},
"interestOverTime": [
{ "time": "2026-08-28T00:00:00.000Z", "value": 41 },
{ "time": "2026-09-09T00:00:00.000Z", "value": 100 }
],
"interestByGeo": [
{ "value": 100, "geoCode": "US-KS", "geoName": "Kansas" },
{ "value": 57, "geoCode": "US-CA", "geoName": "California" }
],
"relatedQueries": {
"top": [{ "query": "iphone 18", "value": 100 }],
"rising": [{ "query": "iphone 18 duo", "value": 51800 }]
},
"autocomplete": [
{ "mid": "/m/027lnzs", "type": "Mobile phone", "title": "iPhone" }
]
},
"success": true
}
Next steps
- Creating a task — back to the submit endpoint reference
- Receiving result — polling alternative to webhooks