Google Events API
A Google Events API that turns the events vertical into rows. Search "concerts in Milan" or "tech meetups in Berlin" from a given place and get each event card back as data — title, the date line as shown, venue, address, link and thumbnail — billed per event delivered.
$0.002 per delivered event · $2 free every month · Failed runs never billed
$ curl $QD/google_events/run \
-H "Authorization: Bearer $QD_API_KEY" \
-d '{"query": "concerts in Milan", "country": "it", "lang": "en", "max_results": 10}'
{ "status": "done", "count": 10,
"results": [
{
"title": "…",
"date": "…",
"venue": "…",
"address": "…" } ],
"cost": 0.02 }
# 10 events × $0.002 · nothing delivered, nothing charged
What a Google Events API does
Google assembles the events vertical from listings across ticketing sites, venues and aggregators and shows it for a query and a location. This collector reads that assembled surface, so one query returns the events Google itself decided to show for that country and language, each already split into title, date, venue and address instead of left inside a card.
Building this direct means either scraping a dozen ticketing sites and reconciling them, or rendering the vertical yourself — it is a service-side rendered surface, like Hotels and Maps, not a plain HTML page. The collector runs that browser ladder on our side and hands back parsed rows; you send a query and, optionally, the place to search from.
What one event looks like
Every delivered event carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.
| Field | Type | What it holds |
|---|---|---|
rank | integer | 1-based position. |
title | string | Event title. |
date | string · nullable | Date line as shown ("Sat, Aug 22, 7 – 10 PM"). |
venue | string · nullable | Venue name. |
address | string · nullable | Venue address. |
link | string · nullable | Event link. |
thumbnail | string · nullable | Event image. |
Inputs
The whole request. Anything you leave out falls back to the default shown in the catalog.
| Input | Type | Required | What it does |
|---|---|---|---|
query | string | yes | Event search, e.g. "concerts in Milan". |
location | string | no | Search as if from this place, e.g. "Milan, Italy". |
country | string | no | ISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool. |
lang | string | no | Interface language (hl), e.g. en, it, de. |
max_results | integer | no | How many events to deliver at most (1–20). You pay only for delivered events. |
Pricing
Google Events API pricing
$0.002 per delivered event. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 1,000 events before you spend anything.
Pay as you go
- $2 free credit / month
- 60 requests / min
- List unit prices
Starter
- $15 free credit / month
- 300 requests / min
- 10% off unit prices
Growth
- $50 free credit / month
- 600 requests / min
- 20% off unit prices
Scale
- $250 free credit / month
- 1,200 requests / min
- 30% off unit prices
Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.
Integration
One POST, typed rows
Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/.
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/google_events/run \
-H "Authorization: Bearer $QD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"concerts in Milan","country":"it","lang":"en","max_results":10}'
What people build with the Google Events API
Three shapes of work this endpoint was designed around.
Local listings pages
Populate a "what's on in
Venue and promoter tracking
Watch which events surface for a venue or genre query and when new dates appear.
Event datasets
Collect title, date line, venue and address across cities to build a structured events table for enrichment.
Google Events API versus rolling your own
The differences that actually cost time when you build this in-house.
| DIY scraper | This collector | |
|---|---|---|
| What you send | A scraper per ticketing site to reconcile | One query and a location |
| Rendering | Drive the vertical's browser yourself | Service-side browser ladder, on us |
| Shape | A card blob to parse | Title, date, venue, address, link as fields |
Is there an official Google Events API?
No. Google exposes events as a search vertical, not a public API, so this collector reads that vertical for you and returns each card as structured rows. You query it the way you would search — by phrase and place.
How do I control the location?
Put the place in the query ("concerts in Milan") and, when you want the search run as if from somewhere specific, pass location alongside country and lang. Results then reflect what Google shows there.
Do I get ticket prices or exact start times?
You get what the card exposes: title, the date line as Google renders it, venue, address, link and thumbnail. The card does not always carry a price or a precise start time, so those are only as complete as Google shows them.
How is this different from a calendar or ads events API?
Entirely. Those manage your own calendar or your ad conversions; this reads Google's public events search results for a query. Same word, unrelated data.
Is there a free Google Events API?
Every account gets $2 of credit every month with no card, which is about 1,000 delivered events on this endpoint at $0.002 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.
How much does one run cost?
Multiply the rows you actually receive by $0.002. A run capped at 20 events — the maximum for this collector — costs $0.04 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.
Run the Google Events API now
$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.