Microsoft Advertising Write
Edit an EXISTING Microsoft campaign — name, budget, bidding scheme, languages, time zone, URL tracking, dates, status (pause/resume) and per-type settings
POST https://api.adspirer.ai/api/v1/tools/update_microsoft_campaign/execute
Authorization: Bearer sk_live_... — your Adspirer API key (required)Content-Type: application/json (required)Idempotency-Key: <uuid> — recommended for write operations to make retries safeAll tool arguments are wrapped in an arguments object.
| Field | Type | Description |
|---|---|---|
account_id | string optional | Microsoft Advertising ad account id (numeric AccountId — NOT the 8-character account number shown in the UI). Get it from list_microsoft_accounts. Required when more than one account is connected; may be omitted with exactly one. `customer_id` is accepted as an alias. If the tool replies that several accounts are connected, re-run with this set — that reply is NOT a connection problem. |
customer_id | string optional | Alias of account_id. |
campaign_id | string required | The EXISTING campaign to edit (required). |
name | string optional | New campaign name. |
status | string optional | Active or Paused (this is how you pause/resume a campaign). |
daily_budget | number optional | New daily budget — plain decimal in the account currency (for 50/day pass 50). ⛔ rejected if the campaign uses a shared budget. |
budget_type | string optional | DailyBudgetStandard / DailyBudgetAccelerated / LifetimeBudgetStandard. |
budget_id | string optional | Attach a shared budget by id, or pass '0' to DETACH the shared budget (then set daily_budget). |
bidding_scheme | object optional | New bidding scheme, e.g. {type:'MaxClicks', max_cpc:1.0}. Replaces the current scheme. |
bid_strategy_id | string optional | Attach a portfolio bid strategy by id, or '0' to detach. |
languages | array optional | New languages list (REPLACES the current list; you cannot clear all). |
time_zone | string optional | New campaign time zone. |
start_date | string optional | New start date (only editable while not yet serving; Audience campaigns). |
end_date | string optional | New end date; pass a date on/after 2050-01-01 to REMOVE the end date. |
tracking_url_template | string optional | New tracking template; pass an empty string "" to CLEAR it. |
final_url_suffix | string optional | New final-url suffix; "" clears it. |
url_custom_parameters | any optional | Custom URL params {key:value}; null keeps existing. |
business_name | string optional | New business name. |
audience_ads_bid_adjustment | integer optional | Audience-ads bid adjustment (%). |
multimedia_ads_bid_adjustment | integer optional | Multimedia-ads bid adjustment (%). |
shopping_setting | object optional | Update Shopping settings (merged). |
dsa_setting | object optional | Update Dynamic Search Ads settings (merged). |
performance_max_setting | object optional | Update Performance Max settings (merged). |
ai_search_setting | object optional | Update AI Search (Copilot) settings (merged). |
{
"arguments": {
"campaign_id": "<campaign_id>",
"account_id": "string",
"customer_id": "string",
"name": "string",
"status": "string",
"daily_budget": 1.0,
"budget_type": "string"
}
}
{
"success": true,
"data": {
"text": "(tool-specific textual output for update_microsoft_campaign)",
"quota": {
"used": 42,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01"
}
},
"tool": "update_microsoft_campaign"
}
{
"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": "update_microsoft_campaign"
}
{
"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": "update_microsoft_campaign",
"quota": {
"used": 150,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01",
"upgrade_url": "https://adspirer.ai"
}
}
Interactive: Swagger UI
Machine-readable: OpenAPI 3.1 spec · llms-full.txt
More tools: Microsoft Advertising · All tools
Adspirer REST API — get an API key at adspirer.ai/keys · adspirer.ai