Unarchive Campaign
unarchive_campaignRestore an archived campaign to default lists and resume scheduled runs.
Instructions
Restore an archived campaign. Inverse of archive_campaign. The campaign re-appears in default lists; if schedule_enabled was true, the scheduler resumes producing runs.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| campaign_id | Yes | Campaign UUID. |
Implementation Reference
- The Tool object definition containing the `handler` function that calls `ctx.api.unarchiveCampaign(input.campaign_id)` to restore an archived campaign.
export const unarchiveCampaignTool: Tool<UnarchiveCampaignInputShape, UnarchiveCampaignOutput> = { name: "unarchive_campaign", description: "Restore an archived campaign. Inverse of `archive_campaign`. The campaign re-appears in default lists; if `schedule_enabled` was true, the scheduler resumes producing runs.", annotations: { title: "Unarchive Campaign", readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false, }, inputSchema: z.object(UnarchiveCampaignInputShape), handler: async (input, ctx): Promise<Result<UnarchiveCampaignOutput, ToolError>> => { const result = await ctx.api.unarchiveCampaign(input.campaign_id); if (result.isErr()) return err(mapApiError(result.error)); return ok(result.value); }, }; - Input schema: requires `campaign_id` (UUID string). Output type: `CampaignResponse`.
const UnarchiveCampaignInputShape = { campaign_id: z.string().uuid().describe("Campaign UUID."), } as const; type UnarchiveCampaignInputShape = typeof UnarchiveCampaignInputShape; - src/application/tool-registry.ts:131-131 (registration)Registration call: `register(unarchiveCampaignTool)` inside `registerAllTools()`.
register(unarchiveCampaignTool); - HTTP API gateway implementation: calls POST /api/v1/campaigns/{campaign_id}/unarchive.
async unarchiveCampaign(id: string): Promise<Result<CampaignResponse, ApiError>> { return call( "POST", "/api/v1/campaigns/{campaign_id}/unarchive", { params: { path: { campaign_id: id } } }, parseCampaign ); }, - Port/interface definition for `unarchiveCampaign` method.
unarchiveCampaign(id: string): Promise<Result<CampaignResponse, ApiError>>;