Skip to main content
CampaignsResource is reachable on every Kataven Node client as client.campaigns. Each method maps to one HTTP endpoint on the Hub API; links to the underlying spec entry are inline below. Bulk outbound campaigns dialled from CSV with cap-aware concurrency, retry logic, and live progress metrics over Server-Sent Events.

Methods at a glance

MethodHTTPSummary
listGET /api/v1/campaignsList campaigns
getGET /api/v1/campaigns/{id}Get a campaign
startPOST /api/v1/campaigns/{id}/startStart a campaign
pausePOST /api/v1/campaigns/{id}/pausePause a running campaign
resumePOST /api/v1/campaigns/{id}/resumeResume a paused campaign
stopPOST /api/v1/campaigns/{id}/stopStop a campaign permanently
deleteDELETE /api/v1/campaigns/{id}Delete a campaign
listContactsGET /api/v1/campaigns/{id}/contactsList contacts in a campaign

Reference

client.campaigns.list(...)

List campaigns HTTPGET /api/v1/campaigns · API reference →
list()

client.campaigns.get(...)

Get a campaign HTTPGET /api/v1/campaigns/{id} · API reference →
get(id: string)

client.campaigns.start(...)

Start a campaign HTTPPOST /api/v1/campaigns/{id}/start · API reference →
start(id: string)
Flips the campaign from draft/paused to running. The dispatcher goroutine begins originating calls subject to per-tenant rate caps.

client.campaigns.pause(...)

Pause a running campaign HTTPPOST /api/v1/campaigns/{id}/pause · API reference →
pause(id: string)
Stops the dispatcher from originating new calls; in-flight calls finish naturally.

client.campaigns.resume(...)

Resume a paused campaign HTTPPOST /api/v1/campaigns/{id}/resume · API reference →
resume(id: string)

client.campaigns.stop(...)

Stop a campaign permanently HTTPPOST /api/v1/campaigns/{id}/stop · API reference →
stop(id: string)
Terminal state — no further dispatches, contacts in pending move to cancelled. Cannot be reversed; create a new campaign to redo the work.

client.campaigns.delete(...)

Delete a campaign HTTPDELETE /api/v1/campaigns/{id} · API reference →
delete(id: string)
Refuses if the campaign is running. Pause or stop it first.

client.campaigns.listContacts(...)

List contacts in a campaign HTTPGET /api/v1/campaigns/{id}/contacts · API reference →
listContacts(id: string, opts: { status?: string; page?: number } = {})