New: Adspirer is now an official Claude plugin. Search "adspirer" in Claude Code or Cowork to install. See what's new โ
New: Adspirer is now an official Claude plugin. Search "adspirer" in Claude Code or Cowork to install. See what's new โ
๐ LONG-RUNNING TOOL: Creates a YouTube Video campaign using Google Ads Demand Gen format with YouTube-only placements. Emits MCP progress updates during authentication and campaign creation (typically 10-20 seconds). Progress stages: validate โ commit.
โ ๏ธ CRITICAL WARNING โ ๏ธ
โ ๏ธ CRITICAL PREREQUISITE:
๐ฌ YouTube Campaign Placements: โ YouTube In-Feed (appears in search results & related videos) โ YouTube In-Stream (plays before/during/after videos) โ YouTube Shorts (appears in Shorts feed) โ Gmail (disabled for YouTube campaigns) โ Discover (disabled for YouTube campaigns) โ Display (disabled for YouTube campaigns)
curl --request POST \
--url https://api.adspirer.ai/api/v1/tools/create_youtube_campaign/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"additional_video_ids": [
"string"
],
"bidding_strategy": "MAXIMIZE_CLICKS",
"budget_daily": 1,
"business_name": "string",
"call_to_action": "LEARN_MORE",
"campaign_name": "string",
"descriptions": [
"string"
],
"final_url": "https://example.com",
"headlines": [
"string"
],
"long_headlines": [
"string"
],
"target_languages": [
"string"
],
"target_locations": [
"string"
],
"youtube_video_id": "string"
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for create_youtube_campaign)"
},
"success": true,
"tool": "create_youtube_campaign"
}Documentation Index
Fetch the complete documentation index at: https://www.adspirer.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
API key from https://adspirer.ai/keys. Prefix sk_live_. Treat as a secret โ never commit.
Client-generated UUID to make writes idempotent. Strongly recommended for write tools. A repeat call with the same key returns the cached result instead of re-executing. Example: 550e8400-e29b-41d4-a716-446655440000
All tool arguments are wrapped in an arguments object. The fields accepted inside arguments are listed below โ required fields are marked with a red asterisk.
Input schema for create_youtube_campaign tool.
Creates a YouTube Video campaign using Google Ads Demand Gen format with YouTube-only channel controls (In-Feed, In-Stream, Shorts). Gmail, Discover, and Display placements are disabled.
Show child attributes
Tool executed successfully. data.text carries the human-readable result (markdown-friendly). data.quota shows your current usage against the plan limit. data.structured appears when the tool emits machine-parseable structured content. data.content appears for tools that return non-text blocks (images, resources).
Returned on HTTP 200. data.text is the primary human-readable output. data.quota is always present for billable calls. data.structured is set only when the tool emits machine-parseable structured content. data.content is set only when the tool emits non-text content blocks.
Was this page helpful?
curl --request POST \
--url https://api.adspirer.ai/api/v1/tools/create_youtube_campaign/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"additional_video_ids": [
"string"
],
"bidding_strategy": "MAXIMIZE_CLICKS",
"budget_daily": 1,
"business_name": "string",
"call_to_action": "LEARN_MORE",
"campaign_name": "string",
"descriptions": [
"string"
],
"final_url": "https://example.com",
"headlines": [
"string"
],
"long_headlines": [
"string"
],
"target_languages": [
"string"
],
"target_locations": [
"string"
],
"youtube_video_id": "string"
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for create_youtube_campaign)"
},
"success": true,
"tool": "create_youtube_campaign"
}