What you get#
Onekey exposes Google as 15 endpoints behind one API key: 3 endpoints return one record (data is an object) and 12 endpoints return a list (data is an array). Every answer uses the same envelope (success, data, metadata, error), the cost is reported in metadata.credits_charged, and fields are mapped onto the unified schema so the code you write for Google also works for the rest of the ai & search category.
Endpoints#
| Endpoint | What it does | Parameters | Credits | Status |
|---|---|---|---|---|
ad | One Google Ads Transparency creative: advertiser, format, impression and spend ranges, targeting, copy. | url* | 2 | beta needs a pack |
adlibrary_advertisers_search | Search advertisers in the Google Ads Transparency Center by name. | query* | 2 | beta needs a pack |
business_extended_reviews | Reviews of a Google Business Profile place (up to 5 most relevant per call). | place_id, keyword | 1 | beta |
business_info | Google Business Profile of a place: name, address, rating, review count, website. | place_id, keyword | 1 | beta |
business_questions | Questions and answers on a Google Business Profile: question text, author, date, answers. | keyword*, location_name, language_code | 23 | beta needs a pack |
business_updates | Recent posts (updates) published by a Google Business Profile: text, link, images, date. | keyword*, location_name, language_code | 13 | beta needs a pack |
company_ads | Ads a company runs on Google, from the Ads Transparency Center (by domain). | domain, advertiser_id, cursor | 2 | beta needs a pack |
hotels_info | Google Hotels detail for one hotel: name, stars, address, phone, rating, location. | hotel_identifier*, location_name, language_code | 12 | beta needs a pack |
hotels_search | Search Google Hotels: matching hotels with id, name, stars, rating and location. | keyword*, location_name, language_code | 12 | beta needs a pack |
keyword_volume | Google search volume for a keyword in a country and language: average monthly searches, last 12 months, CPC, competition and keyword difficulty. | keyword*, location_name, language_code | 35 | beta needs a pack |
news | Google News search results (keyless RSS): title, link, source, publication time. | q*, lang, country | 1 | stable |
search | Google web search results: organic title, URL and snippet for a query. | q*, hl, gl | 2 | beta needs a pack |
shopping | Google Shopping product results via Serper.dev. | q*, gl | 5 | beta |
suggest | Google search autocomplete suggestions for a query prefix (keyless). | q*, lang | 1 | stable |
trends | Google Trends daily trending searches for a country (keyless RSS): query, approximate traffic, top news. | geo | 5 | stable |
A * marks a required parameter. Each endpoint name links to its reference page with the full parameter table, caching window and a recorded response.
Make a request#
This calls google.news (1 credit, stable). Replace YOUR_API_KEY with your key; sign up, no card. 1,000 free credits cover the open-platform endpoints. Hard-to-reach platforms (X, TikTok, Instagram, Reddit, and others marked on their page) need a verified email and a purchased pack.
curl "https://api.onekey.dev/v1/google/news?q=openai" \
-H "x-api-key: YOUR_API_KEY"Fields you get back#
These unified fields come back from Google, with the same names as on every other platform. The count is how many of its 15 mapped endpoints return the field; a field the source lacks is null, never missing. 26 platform-specific fields (ext.<name>) come on top, documented on each endpoint page.
| Field | Type | Endpoints |
|---|---|---|
content.text | string | 7 |
content.createdAt | ISO 8601 date | 6 |
content.url | URL | 6 |
author.displayName | string | 5 |
content.id | string | 5 |
content.title | string | 5 |
entity.id | string | 5 |
entity.name | string | 5 |
entity.stats.rating | number | 4 |
author.url | URL | 3 |
entity.stats.ratingCount | integer | 3 |
entity.url | URL | 3 |
media.url | URL | 3 |
author.id | string | 2 |
content.type | string | 2 |
content.updatedAt | ISO 8601 date | 2 |
place.address | string | 2 |
place.lat | number | 2 |
place.lon | number | 2 |
author.website | URL | 1 |
engagement.comments | integer | 1 |
engagement.views | integer | 1 |
entity.category | string | 1 |
entity.country | string | 1 |
entity.description | string | 1 |
listing.price | number | 1 |
listing.seller | string | 1 |
media.thumbnailUrl | URL | 1 |
The full schema is in Unified schema.
Pricing#
Google calls cost 1 to 35 credits, flat per endpoint. Free when served from cache (0.2 credit for a cached response over 100 KB). Invalid, failed or not-found calls are not charged. See pricing for credit packs.