JustSERPDocs
Google

Google Events

Google's Events tab (`udm=54`), which Google serves to a phone only (every job runs on one): each event's title, date and time, venue, town and picture, under the `google_events` field names, with an `event_token` for `/v1/google/events/details`.

GET
/v1/google/events

Google's Events tab (udm=54), which Google serves to a phone only (every job runs on one): each event's title, date and time, venue, town and picture, under the google_events field names, with an event_token for /v1/google/events/details. One page is the list (7-29 events seen); there is no start. A search with no events, or a country with no Events tab (Germany), answers events_status: "none". Dates are as the page writes them and carry no year.

In the document form. $1 request $2 q and no query is the document-form Google Events call (q, location or uule, gl, hl en only), answered as the document: search_metadata, search_parameters, events (position, title, entity_id, event_token, date, start_time, venue, address, category, thumbnail; no search_information). location, uule and gl exclude one another and latitude/longitude are a 400. Not returned (the list page has none; /v1/google/events/details does): link, seller, price, extracted_price, is_free, venue_map_link, venue_entity_id, map_image.

Authorization

headerX-API-Key<token>

Your API key.

Query Parameters

cancel_token?string

A 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.

Length1 <= length <= 128
query?string

The question, as it is to be asked. 1 to 2000 characters after trimming.

Length1 <= length <= 2000
location?|

A canonical place name, sent as uule.

when?|

A date word written into the search ("this weekend"), unless the query already says it. Google's date chips change nothing on the Events tab. event_type and start are a 400.

Value in"today""tomorrow""week""weekend""next_week""month""next_month"null""
htichips?|

the date chip, read as when (one chip; no other chips).

Value in"date:today""date:tomorrow""date:week""date:weekend""date:next_week""date:month""date:next_month"null""
q?string
Length1 <= length <= 2000
uule?string

A ready-made w+....

gl?string
Default"us"
hl?string

Only en: Google serves the tab in English only.

Default"en"

Response Body

The events, or events_status: none; with q, the document (events: [] for none).

application/json
  1. response

The first three keys of every parsed 200 (the answer is the document itself, no success/data envelope): what the search was (search_metadata), what it asked (search_parameters), the parser's own search_information ({} when it has none). The engine's blocks follow, at the same level. An engine whose answer is a list puts it under results.

search_metadata*
search_parameters*

The request's own fields as sent, engine first, without cancel_token.

search_information*

The parser's own, e.g. yelp_search's; otherwise {}.

events_status?string

none is an answer: no events, or no Events tab in that country.

Value in"found""none"
events_heading?|

The block's heading, in the page's language.

events_results?array<>
pagination?null

Always null; the tab has one page.

Example Request
curl -X GET 'https://api.justserp.com/v1/google/events?query=events+in+austin&location%5Blatitude%5D=30.2672&location%5Blongitude%5D=-97.7431&location%5Bcountry%5D=us&location%5Blanguage%5D=en&when=weekend'
Example Response
{  "search_metadata": {    "id": "string",    "status": "Success",    "created_at": "string",    "request_url": "string",    "html_url": "string"  },  "events_status": "found",  "events_heading": "string",  "search_information": {    "query_displayed": "string",    "events_results_state": "results"  },  "search_parameters": {    "engine": "string",    "q": "string",    "hl": "string",    "gl": "string",    "when": "string"  },  "events_results": [    {      "position": 0,      "title": "string",      "kgmid": "string",      "subtitle": "string",      "date": {        "start_date": "string",        "when": "string",        "time": "string",        "label": "string"      },      "address": [        "string"      ],      "venue": {        "name": "string",        "rating": null,        "reviews": null,        "link": null      },      "locality": "string",      "link": null,      "event_location_map": null,      "description": null,      "ticket_info": [],      "thumbnail": "string",      "image": null,      "event_token": "string"    }  ],  "pagination": null}