Update Campaign
Update an existing campaign’s settings.
Can update:
- name: Campaign name
- status: ENABLED or PAUSED
- budget_amount: Daily budget in dollars
IMPORTANT:
- Confirm with user BEFORE making changes
- Use list_campaigns first to get campaign_id
- At least one field (name, status, or budget_amount) is required
Parameters:
- campaign_id: The campaign ID (REQUIRED - get from list_campaigns)
- name: New campaign name (optional)
- status: ENABLED or PAUSED (optional)
- budget_amount: Daily budget in dollars, e.g., 50.00 for $50/day (optional)
- customer_id: Optional (uses connected account if omitted)
Execution time: 2-4 seconds
Example: User: “Increase the budget to $100/day” Agent:
- Uses list_campaigns to find the campaign
- Confirms with user: “I’ll update ‘Summer Sale’ budget from 100/day. Proceed?”
- Uses update_campaign with campaign_id and budget_amount=100.00
Authorizations
API key from https://adspirer.ai/keys. Prefix sk_live_. Treat as a secret — never commit.
Headers
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
Body
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 updating campaign settings
Response
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.

