archive_campaigns
Archive one or more campaigns, with a result per campaign.
Destructive campaigns
Deletes, archives, launches or moves budget. Do not give an agent this one without a human gate.
What it does
Archive one or more campaigns, with a result per campaign.
Archiving is how a campaign is deleted: the platform has no hard
delete. An archived campaign is hidden, releases its name (a new
campaign may take it) and can be put back with unarchive_campaigns.
A campaign with live experiments (active, in review or waiting
for a channel reconnect) cannot be archived.
KEYWORDS: archive, delete, remove, discard, trash, retire, campaign, draft
WHEN TO USE:
- The user asks to archive, delete or remove campaigns they named
- The user agreed to archive the drafts a rebuild replaced
WARNING: archive only campaigns the user named or agreed to, and
only on an exact name match: search_campaigns_by_names also
returns partial matches.
Each campaign is processed on its own, so one that cannot be
archived does not stop the others. `results` holds one entry per
campaign with its `outcome`:
- archived (a `message` notes a pending launch it suspended)
- already_archived: it was archived before; nothing changed
- not_in_account: no campaign with that id in this account
- native_imported: imported from an ad channel account, which is
never archived here
- in_progress: it is being launched or edited right now; archive
it once that finishes
- live_experiments: it has live experiments; an Active campaign
can be paused with manage_campaign first
- not_attempted: the call stopped early (a rejected session or
rate limiting) before reaching it
- unknown: the platform's answer was lost; check the campaign
before trying again
- error: the platform refused it; `message` says why
REQUIRED PARAMETERS:
- campaign_ids: 1 to 50 campaign ids, from search_campaigns_by_names
or list_wizard_campaignsArguments
| Argument | Type | Notes | |
|---|---|---|---|
campaign_ids |
array | required | The ids of the campaigns to archive (1 to 50) |
Request
Request template, not a complete runnable example. Replace placeholders, empty objects, arrays, and zero values with valid account-specific inputs. Read required fields and nested constraints in the full schema. Confirm the account, connected channels, and referenced assets before calling a write tool.
curl
curl -s -X POST https://mcp-server.metadata.io/mcp \
-H "Authorization: $METADATA_PAT" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "MCP-Protocol-Version: 2025-11-25" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"archive_campaigns","arguments":{"campaign_ids":[]}}}'
Response
No recorded response. This tool can delete, archive, launch or move budget, so it is never executed to build these docs.
The request is an illustrative template. Fill required fields and check the current schema before calling it. No response is fabricated.
Related
Other campaigns tools: