Change a Microsoft Advertising campaign's bid strategy
msads_set_bidding_strategySwitch a campaign between MaxClicks, MaxConversions, EnhancedCpc and ManualCpc. This changes how every bid is set, so it affects spend and delivery, and Microsoft re-learns after a change. Read the campaign first (msads_get_campaigns shows the current strategy). MaxConversions needs an active conversion goal (refused without one) and about 15+ conversions in the last 30 days (refused below that unless acknowledgeLowConversionVolume is true, which should only be set when the user has seen the count and still wants it). Optional targetCpa applies to MaxConversions only (Microsoft no longer offers a separate Target CPA strategy). A campaign's existing max CPC cap is kept when moving between MaxClicks and MaxConversions; Microsoft cannot add a cap back once removed, so removing it needs removeMaxCpc. Returns the previous strategy so it can be undone. Use dryRun first.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"campaignId": "<campaignId>",
"strategy": "<strategy>"
},
"name": "msads_set_bidding_strategy"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | Preview only. Microsoft has no validate-only mode, so Caybl reads the current value and shows exactly what would change (before and after) without sending anything. Free, and cannot affect spend. | |
| strategy | Yes | The strategy to switch to. | |
| accountId | No | Microsoft Advertising account id or account number (e.g. 'F123ABCD'), as listed by msads_list_accounts. Only needed when the sign-in can reach more than one account. | |
| targetCpa | No | MaxConversions only: target cost per conversion, in the account currency. | |
| campaignId | Yes | Campaign id, from msads_get_campaigns. | |
| removeMaxCpc | No | Drop the campaign's max CPC cap. Microsoft cannot add one back on this kind of campaign. | |
| acknowledgeLowConversionVolume | No | Set true only if the user has seen the low conversion count and still wants MaxConversions. |