---
title: "Create campaign draft"
method: POST
path: "/api/v1/tools/create_campaign_draft"
tags: ["default"]
---

# Create campaign draft

`POST /api/v1/tools/create_campaign_draft`

## Request

- Base URL: `https://www.affiliatespy.io`
- URL: `https://www.affiliatespy.io/api/v1/tools/create_campaign_draft`
- Auth: HTTP bearer

Create a DRAFT outreach campaign from creator ids (or your saved list) with the default 4-step sequence. DRAFT ONLY, this tool cannot launch, enroll, or send. Review and launch in the dashboard at https://affiliatespy.io/dashboard/campaigns.

## Request body

- object
  - `name` string, required
  - `creator_ids` string[]: Audience creator ids from list_creators. Omit with use_saved=true to use your saved list.
  - `use_saved` boolean: Use your saved creators as the audience.
  - `offer` string: The offer line, e.g. "30% recurring". Default empty.
  - `followup_gaps_days` integer[]: Follow-up day offsets, default [3,7,12].
  - `confirm` boolean: Set true after the user confirmed an action the guard flagged as hard to undo.

## Response `200`

The tool's JSON result (same payload the MCP tool returns).

- unknown

## Other responses

- `400`: Arguments failed validation; body lists the issues.
- `401`: Missing or invalid API key.
- `403`: Guarded tool with Unrestricted MCP off.
- `429`: Rate limited (60 requests per minute per key).

---

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