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 →
User wants to create a TikTok ad campaign with IMAGES, Spark Ads, or Carousel ads (not video).
LONG-RUNNING TOOL: Creates a TikTok In-Feed ad campaign with image creatives, Spark Ads (boost organic posts), or Carousel ads.
Supported creative types:
Emits MCP progress updates during campaign creation (typically 15-30 seconds). Progress stages: validate - commit.
CRITICAL WARNING:
curl --request POST \
--url https://api.adspirer.ai/api/v1/tools/create_tiktok_campaign/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"ad_text": "string",
"app_id": "string",
"app_promotion_type": "string",
"budget_daily": 1,
"budget_lifetime": 1,
"campaign_name": "string",
"display_name": "string",
"landing_page_url": "https://example.com",
"objective": "TRAFFIC",
"schedule_end_time": "string"
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for create_tiktok_campaign)"
},
"success": true,
"tool": "create_tiktok_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 creating TikTok In-Feed image ad campaigns
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_tiktok_campaign/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"ad_text": "string",
"app_id": "string",
"app_promotion_type": "string",
"budget_daily": 1,
"budget_lifetime": 1,
"campaign_name": "string",
"display_name": "string",
"landing_page_url": "https://example.com",
"objective": "TRAFFIC",
"schedule_end_time": "string"
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for create_tiktok_campaign)"
},
"success": true,
"tool": "create_tiktok_campaign"
}