google-ads. It was tested with the official Python client, google-ads 34.0.0, over gRPC.
Connect
Send
login-customer-id: 1000000000, the manager account, to reach the client account. No developer token is needed.
ancha connect google-ads --lang ts and --lang py print.
Endpoints
Each REST route has the matching gRPC method, such as
GoogleAdsService.Search and CampaignService.MutateCampaigns. googleAds:mutate exists only to report that cross-resource mutations and temporary IDs are not implemented. Unknown REST routes return Google’s error shape with x-ancha-gap: 1; unknown gRPC methods return UNIMPLEMENTED.
Behavior
- GAQL.
SELECT ... FROMone ofcustomer,customer_client,campaign_budget,campaign,ad_group,ad_group_ad,ad_group_criterion.WHEREpredicates joined with AND (=,!=,<,>,<=,>=,IN,BETWEEN),segments.date DURINGTODAY,YESTERDAY,LAST_7_DAYS,LAST_14_DAYSorLAST_30_DAYS,ORDER BYandLIMIT. No OR, LIKE, functions or REGEXP. - Search pages hold up to 10,000 rows;
pageSizeis rejected, as in v26. - Mutations cover budgets, SEARCH campaigns with manual CPC, ad groups, responsive search ads and keywords (EXACT, PHRASE, BROAD). They are atomic by default and support
partialFailure,validateOnlyandresponseContentType. - Review. New ads stay
REVIEW_IN_PROGRESS. Nothing serves, bills or delivers. - Metrics (
impressions,clicks,cost_micros,conversions) come only from the historical starter rows.
Starter data
Thegoogle-ads-starter dataset belongs to Acme.
Reports cover 2026-10-24 and 2026-10-25 for campaign
3001.
Checks
Google Ads has no state checks. Use trace checks, for example{ called: "POST /v26/customers/1000000001/campaigns:mutate" }. Trace paths for gRPC calls use the full RPC name.
Limits
- Worlds with Google Ads cannot run in playgrounds, and
ancha runrejects them with container execution (CONFIG_INVALID). Use them withancha runas a local process or in a sandbox. - Search campaigns with manual CPC only: no Performance Max, display, video, smart bidding, audiences, assets, conversion uploads or recommendations.
- No auction, serving or spend simulation.