← ClaudeAtlas

google-adslisted

Query Google Ads campaigns, ad groups, keywords and spend via the Google Ads API (GAQL searchStream). Use when the user mentions Google Ads, ad campaigns, ad spend / cost, impressions / clicks / conversions on ads, or campaign performance.
AceDataCloud/Skills · ★ 13 · AI & Automation · score 73
Install: claude install-skill AceDataCloud/Skills
Query the **Google Ads API** via `curl + jq`. Two credentials plus one context header: - `$GOOGLE_ADS_TOKEN` — the user's OAuth bearer (`adwords` scope) → `Authorization: Bearer $GOOGLE_ADS_TOKEN` - `$GOOGLE_ADS_DEVELOPER_TOKEN` — the platform's developer token (injected server-side) → header `developer-token: $GOOGLE_ADS_DEVELOPER_TOKEN` - `login-customer-id` — **only for manager (MCC) scoped calls**: the manager id the request runs under, or `$GOOGLE_ADS_LOGIN_CUSTOMER_ID` if set (digits only, no dashes). Not needed by `customers:listAccessibleCustomers`. > **API version:** the base is `https://googleads.googleapis.com/<vNN>`. Google > ships a new `vNN` every ~4 months and retires old ones, so a hardcoded version > eventually stops working. The example uses `v25` (supported as of 2026-07). If > **every** call 404s, the version is unavailable — either retired or not yet > released. Probe `customers:listAccessibleCustomers`: a supported version > answers 401/200, an unavailable one 404. Step **down** one version at a time > from the example, and check Google's supported-versions table before assuming > a newer `vNN` exists. If `$GOOGLE_ADS_DEVELOPER_TOKEN` is empty, the connector isn't fully provisioned — say so rather than calling the API (it would 401/DEVELOPER_TOKEN_NOT_APPROVED). ```bash VER="v25"; BASE="https://googleads.googleapis.com/$VER" AUTH="Authorization: Bearer $GOOGLE_ADS_TOKEN"; DEV="developer-token: $GOOGLE_ADS_DEVELOPER_TOKEN" # Customers the OAut