Google Search
Google's web results for one results page, under the document-form parameters and answered as the document: `search_metadata`, `search_parameters`, `search_information`, the blocks the page has (`organic_results`, `ads`, `knowledge_graph`, `local_results`, `related_questions`, `related_searches`, `ai_overview`, `inline_videos`, `top_stories`, ...) and `pagination`.
Google's web results for one results page, under the document-form parameters and answered as
the document: search_metadata, search_parameters, search_information, the
blocks the page has (organic_results, ads, knowledge_graph, local_results,
related_questions, related_searches, ai_overview, inline_videos, top_stories, ...)
and pagination. One request is one page. Sending api_version (v1 or v2) selects the
deprecated earlier call instead, with its own parameters and answer.
X-API-Key<token>Your API key.
cancel_token?stringA name you make up for this request (a UUID is fine), so you can later GET /v1/cancel
with it. Only you know it, so only you can cancel. Use a new one for every request, retries included: a cancelled token stays cancelled for a few minutes.
1 <= length <= 128q?stringThe search. Required unless kgmid is sent.
1 <= lengthkgmid?stringA Knowledge Graph id to search for, e.g. /m/0cp0t.
device?stringmobile returns the phone version of the page. tablet is refused.
"desktop""desktop""mobile"location?stringWhere the search is made from, as Google's canonical place name: "Austin,Texas,United States".
uule?stringA ready-made Google uule (w+... or a+...), sent as it is.
latitude?numberWhere the search is made from; send with longitude.
-90 <= value <= 90longitude?number-180 <= value <= 180gl?stringCountry of the results, two letters.
hl?stringInterface language. Send one always; without it the page comes in the language of wherever the request is made from.
lr?stringRestrict results to languages, e.g. lang_en.
cr?stringRestrict results to countries, e.g. countryUS.
nfpr?string1 excludes auto-corrected results.
"0""1"filter?string0 turns off the duplicate and similar-results filter.
"0""1"safe?stringAdult-content filtering.
"active""blur""off"time_period?stringOnly results from this period.
"last_hour""last_day""last_week""last_month""last_year"time_period_min?stringEarliest date, MM/DD/YYYY.
time_period_max?stringLatest date, MM/DD/YYYY.
page?integerThe results page.
1 <= value <= 1001verbatim?"true"Search for the words as typed.
"true"optimization_strategy?stringEchoed in the answer only.
"performance""ads"link?stringWhether result links are Google's own redirects (raw) or their destinations (resolved).
"raw""resolved"google_domain?stringDeprecatedLegacy call only (with api_version): the Google to ask, e.g. google.co.uk or www.google.com.au. Ignored otherwise.
^(www\.)?google\.[a-z]{2,3}(\.[a-z]{2,3})?$"www.google.com"start?integerDeprecatedLegacy call only (with api_version). The result to start from.
0 <= valuetbs?stringDeprecatedLegacy call only (with api_version).
api_version?stringDeprecatedDeprecated. Sending it selects the legacy call and answer: v2 returns
a different set of field names and more blocks, v1 the earlier names. Leave it out for the
document.
"v1""v2"The results page, as the document. With api_version, or when the page could not be parsed, the usual envelope.
application/json- response
The Google Search document. A block is present only when the page has it.
search_metadata?search_parameters?The parameters the search ran with.
search_information?pagination?ai_overview?ads?array<>knowledge_graph?organic_results?array<>local_results?array<>The local pack (position, title, place_id, data_id, kgmid, rating, reviews, address, phone, website ...).
related_questions?array<>related_searches?array<>inline_videos?array<>top_stories?array<>[key: string]?anycurl -X GET 'https://api.justserp.com/v1/google/search?q=plumber+near+me&location=Austin%2CTexas%2CUnited+States&gl=us&hl=en'{ "search_metadata": { "id": "string", "status": "string", "created_at": "string", "request_url": "string", "html_url": "string" }, "search_parameters": {}, "search_information": { "query_displayed": "string", "total_results": 0, "time_taken_displayed": 0, "showing_results_for": "string", "did_you_mean": "string", "page": 0 }, "pagination": { "current": 0, "next": "string", "previous": "string", "other_pages": [ { "page": 0, "link": "string" } ] }, "ai_overview": {}, "ads": [ {} ], "knowledge_graph": {}, "organic_results": [ {} ], "local_results": [ {} ], "related_questions": [ {} ], "related_searches": [ {} ], "inline_videos": [ {} ], "top_stories": [ {} ]}API Reference
Every JustSERP API endpoint with its parameters, response schemas, code samples in curl, JavaScript, Python and PHP, and an interactive playground.
Google Light GET
A Google search under the Google Light document-form parameters, answered as the Google Light document: `search_metadata`, `search_parameters`, `search_information` and the few blocks Light has (`answer_box`, `knowledge_graph`, `organic_results`, `top_stories`, `latest_posts`, `related_questions` (questions only), `related_searches`) and `pagination`.