---
title: "Start or resume a campaign"
method: POST
path: "/campaign/{id}/start"
tags: ["Campaigns"]
---

# Start or resume a campaign

`POST /campaign/{id}/start`

Queues the campaign for processing and returns immediately — the campaign is **not** yet
running when the 202 is returned. Poll `GET /campaign/{id}` and watch for `status: "running"`.

This endpoint also acts as a **resume** endpoint: if the campaign is currently paused,
calling this endpoint resumes it (`status` transitions from `paused` → `running`).

## Path parameters

- `id` string, required

## Response `202`

Campaign queued for processing

- object
  - `status` boolean
  - `data` object
    - `message` string
    - `taskId` string — Internal task identifier for the queued job
    - `campaignId` string — The ID of the campaign

## Other responses

- `400` — Invalid input
- `401` — Unauthorized access
- `404` — Campaign not found
- `500` — Internal server error

---

[API](https://skmtc.net/smallest-inc/apis/agent-management-api.md) · [All operations](https://skmtc.net/smallest-inc/apis/agent-management-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/smallest-inc/agent-management-api/revisions/c2d0eb64b01a/schema)
