Create a draft campaign
Creates a draft campaign in status initializing; nothing is sent until you call POST /business/campaigns/{campaignId}/approve. campaignType: manual (the default) scaffolds one empty step per entry in channels immediately (sequenceNumber 0, 1, 2 ...), so you can list them with GET .../steps and write subject/body with PATCH .../steps/{stepId}. campaignType: ai-generated returns immediately and runs prompt analysis and topic generation in the background: poll GET /business/campaigns/{campaignId} until initializationStatus is completed (or failed, with the reason in initializationError) before editing or approving. Passing templateId copies that template's steps and channels for either type. The campaign is owned by the token owner. No credits are charged by this call. Rate limit: 30 requests/minute and 1,000/day per token owner, shared by every campaign, scheduled-send, campaign-template and knowledge-hub endpoint.
Errors:
- 404 LIST_NOT_FOUND — A listId/listIds entry does not exist, is archived, or belongs to another team.
- 404 TEMPLATE_NOT_FOUND — templateId does not exist or is not visible to you.
- 404 WRITING_STYLE_NOT_FOUND — writingStyleId (ai-generated only) is not one of your writing styles.
- 404 KNOWLEDGE_HUB_NOT_FOUND — knowledgeHubId (ai-generated only) is not one of your non-archived knowledge hubs.
- 422 INVALID_CAMPAIGN_CHANNELS — More than one linkedin_connection step, or a linkedin_connection after a linkedin_message (also evaluated on the template's steps when templateId is given).
- 422 LIST_INCOMPATIBLE_WITH_CHANNELS — The source lists are empty, or no contact carries an email address (email/inmail) or a LinkedIn URL (LinkedIn channels) for the requested channels.
- 422 EXCLUDE_COMPANY_LISTS_INVALID — An excludeCompanyLists entry is not a non-archived company or people list owned by your team.
- 422 VALIDATION_FAILED — The body failed schema validation (unknown key, both or neither of listId/listIds, channels together with templateId, an AI-only field on a manual campaign, an unrecognised timezone, a non-http(s) ctaLink); param names the field.
- 429 RATE_LIMITED — More than 30 campaign requests in a minute, or 1,000 in a day, for this token owner (the bucket is shared by every /business/campaigns, /business/scheduled-sends, /business/campaign-templates and /business/knowledge-hubs call).
- 500 UNEXPECTED_ERROR — An unhandled failure; the detail stays in our logs and is never returned.
Requires one of the following token scopes: campaigns.
Request
- Base URL: https://api.tryfuse.ai/api/v1
- URL: https://api.tryfuse.ai/api/v1/business/campaigns
- Auth: HTTP basic
Request body
Response
Success
Changes
No recorded changes to this operation across all 1 revision of this API.