---
title: "Start Campaign"
method: POST
path: "/api/v1/campaigns/{campaign_id}/start"
tags: ["campaigns"]
---

# Start Campaign

`POST /api/v1/campaigns/{campaign_id}/start`

## Request

- Base URL: `https://api.nudgelink.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nudgelink.co/api/v1/campaigns/{campaign_id}/start`
- Auth: HTTP bearer

Start outreach sequences for every campaign lead that doesn't have one.

Reuses the sequence-start machinery (api/sequences.start_sequences_for_leads)
so mode selection, account pinning, and lead status transitions stay in one
place. Paused campaigns are resumed implicitly on start (matches the UI's
single Start button semantics).

## Path parameters

- `campaign_id` string, uuid, required

## Response `200`

Successful Response

- StartCampaignResponse
  - `started` integer, required
  - `skipped_existing` integer, required
  - `skipped_not_new` integer
  - `skipped_already_contacted` integer

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/nudgelink/apis/nudgelink-api.md) · [All operations](https://skmtc.dev/nudgelink/apis/nudgelink-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nudgelink/apis/nudgelink-api/revisions/baa46e6db986?raw)
