API Reference โบ Google Ads โบ get_campaign_targeting
get_campaign_targeting
Google Ads
Read
๐จ **IF THIS TOOL RETURNS A QUOTA ERROR:**
- The error message will include a clickable upgrade link
- Show the FULL error message to the user (it contains the upgrade link)
- DO NOT attempt to work ar
Endpoint
POST https://api.adspirer.ai/api/v1/tools/get_campaign_targeting/execute
Headers
Authorization: Bearer sk_live_... โ your Adspirer API key (required)
Content-Type: application/json (required)
Idempotency-Key: <uuid> โ recommended for write operations to make retries safe
Description
๐จ **IF THIS TOOL RETURNS A QUOTA ERROR:**
- The error message will include a clickable upgrade link
- Show the FULL error message to the user (it contains the upgrade link)
- DO NOT attempt to work around the error or use alternative data
- DO NOT create campaigns or perform actions without valid tool data
- STOP and direct the user to upgrade via the provided link
Full targeting view for a Google Ads campaign โ locations, languages, demographics, audiences, devices, ad schedule, topics, placements, keywords, AND negative variants of each.
This tool retrieves READ-ONLY data via 2 GAQL queries (cached 15 min in Redis). Safe to call multiple times.
**Returns sections (only the ones with data are rendered):**
- ๐ **Locations** โ geo target constants + bid modifiers
- ๐ **Languages** โ language constants
- ๐ฅ **Demographics** โ gender, age range, parental status, income range (campaign or ad-group level, with bid modifiers)
- ๐ฏ **Audiences** โ user lists (remarketing), user interests (in-market/affinity), custom audiences, combined audiences, AUDIENCE resource
- ๐ฑ **Devices** โ device type + bid modifier
- โฐ **Ad Schedule** โ day of week + hour window + bid modifier
- ๐บ **Topics** โ topic constants (Display)
- ๐ **Placements** โ managed placement URLs (Display)
- ๐ **Keywords** โ keyword text + match type
- ๐ซ **Negatives** โ exclusion list across the same dimensions
**Parameters:**
- campaign_id: The campaign ID (REQUIRED โ get from list_campaigns)
- customer_id: Optional (uses connected account if omitted)
**Execution time:** 2-5 seconds (2 GAQL queries, then cached 15 min)
**Use this tool when:**
- User asks "what is this campaign targeting?" โ covers ALL targeting axes
- User asks "what audiences/demographics/devices does this campaign target?"
- User wants ad schedule, placement, or topic exclusions
- Before recommending targeting changes
- To audit targeting setup post-creation
**Out of scope (tracked separately):**
- PMax `asset_group_signals` (different resource)
- Customer-level negative criterion lists (account-wide negatives)
- Shared negative keyword lists (separate resource)
- 3rd-party brand safety / IVT services
Request body
All tool arguments are wrapped in an arguments object.
| Field | Type | Description |
campaign_id | string required | The campaign ID to get location targeting for. Use list_campaigns first. |
customer_id | string optional | Google Ads customer ID. Required for multi-account users. Get from get_connections_status. |
Example request
{
"arguments": {
"campaign_id": "<campaign_id>",
"customer_id": "string"
}
}
Example responses
200 โ Success
{
"success": true,
"data": {
"text": "(tool-specific textual output for get_campaign_targeting)",
"quota": {
"used": 42,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01"
}
},
"tool": "get_campaign_targeting"
}
400 โ Tool-level error (bad arguments / multi-account selection)
{
"success": false,
"error": "You have 25 meta_ads accounts connected. Please specify which account to use by passing the ad_account_id parameter:\n - Acme Holdings (ad_account_id=\"act_123456789\")\n - Acme EU (ad_account_id=\"act_987654321\")",
"is_error": true,
"tool": "get_campaign_targeting"
}
402 โ Quota exhausted
{
"success": false,
"error": "\ud83d\udea8 Monthly limit reached (150/150 tool calls on Plus tier).\nUpgrade to Pro at https://adspirer.ai to keep building.",
"is_error": true,
"tool": "get_campaign_targeting",
"quota": {
"used": 150,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01",
"upgrade_url": "https://adspirer.ai"
}
}
Try it live
Adspirer REST API โ get an API key at adspirer.ai/keys ยท
adspirer.ai