API Reference › Google Ads › select_google_campaign_type
select_google_campaign_type
Google Ads
Read
**USE THIS TOOL FIRST WHEN:** User wants to create a Google Ads campaign but hasn't specified the campaign type
Endpoint
POST https://api.adspirer.ai/api/v1/tools/select_google_campaign_type/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
**USE THIS TOOL FIRST WHEN:** User wants to create a Google Ads campaign but hasn't specified the campaign type.
**IMPORTANT:** Call BEFORE any keyword research, asset discovery, or campaign creation when the user says things like:
- "Create a Google Ads campaign"
- "I want to run Google Ads"
- "Set up a Google advertising campaign"
- "Help me create ads on Google"
- "Create a campaign"
- "Run ads"
This tool guides the user to select their campaign TYPE, then returns a step-by-step workflow with which tools to call next.
**Campaign Types Available:**
1. **search** — Text ads in Google Search results (best for high-intent keywords, lead gen, local services)
2. **pmax** — Performance Max across all Google channels (best for ecommerce, brand awareness, multi-channel reach)
3. **youtube** — Video ads on YouTube (best for video content, brand storytelling, product demos)
4. **demandgen** — Demand Gen across YouTube + Gmail + Discover + Display (best for cross-channel mid-funnel)
5. **display** — Responsive Display Ads on the Google Display Network (GDN) — banner placements on millions of websites, apps, and YouTube display slots. Smart Display (`smart_display=true`) is a Google-managed variant within this type.
**Returns:** step-by-step workflow, requirements, and a natural follow-up question for the chosen type.
**Do NOT use this tool if:**
- User specifically asks for "search campaign" or "text ads" → go directly to research_keywords then create_search_campaign
- User specifically asks for "PMax" or "Performance Max" → go directly to discover_existing_assets then create_pmax_campaign
- User specifically asks for "YouTube campaign" or "video campaign" → go directly to validate_video then create_youtube_campaign
- User specifically asks for "Demand Gen" → go directly to create_demandgen_campaign
- User specifically asks for "Display campaign", "banner ads", or "GDN" → go directly to create_display_campaign
- User is asking about performance/analytics → use get_campaign_performance
- User is asking about existing campaigns → use list_campaigns
**Parameters:**
- campaign_type: 'search' | 'pmax' | 'youtube' | 'demandgen' | 'display'
**Execution time:** Instant (no API call)
Request body
All tool arguments are wrapped in an arguments object.
| Field | Type | Description |
campaign_type | string required | Type of Google Ads campaign to create. Options: 'search' (text ads in search results), 'pmax' (Performance Max across all Google channels), 'youtube' (video ads on YouTube), 'demandgen' (Demand Gen across YouTube/Gmail/Discover/Display), 'display' (Responsive Display Ads on the Google Display Network) |
Example request
{
"arguments": {
"campaign_type": "string"
}
}
Example responses
200 — Success
{
"success": true,
"data": {
"text": "(tool-specific textual output for select_google_campaign_type)",
"quota": {
"used": 42,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01"
}
},
"tool": "select_google_campaign_type"
}
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": "select_google_campaign_type"
}
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": "select_google_campaign_type",
"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