Norbelys API
One /v1 of resources. Errors are RFC 9457 problems; lists are cursor pages; effectful requests take an Idempotency-Key.
Version v1
Base URL
https://api.norbelys.comReports
Campaigns
- GETList the workspace's campaigns, newest first by default; the variants' bodies are left out.
/v1/campaigns - POSTCreate a campaign as a `draft`, with its steps, pool, schedule, tracking and stop rules.
/v1/campaigns - GETRetrieve a campaign with its steps and their variants' bodies.
/v1/campaigns/{id} - DELETEDelete a campaign.
/v1/campaigns/{id} - PATCHChange a campaign: its settings, its pool, or its steps.
/v1/campaigns/{id} - POSTPause a campaign: no new message is created; queued messages wait until it is started again.
/v1/campaigns/{id}/pause - POSTStart a campaign from `draft` or `paused`.
/v1/campaigns/{id}/start - GETList the workspace's enrollments, newest first by default.
/v1/enrollments - POSTEnroll people into a campaign.
/v1/enrollments - GETRetrieve an enrollment.
/v1/enrollments/{id} - POSTStop an enrollment: no further step runs, and its message still queued is cancelled.
/v1/enrollments/{id}/stop
Sending
- GETList the workspace's connections, newest first by default.
/v1/connections - POSTCreate a connection.
/v1/connections - GETRetrieve a connection.
/v1/connections/{id} - DELETEArchive a connection.
/v1/connections/{id} - PATCHUpdate a connection.
/v1/connections/{id} - POSTVerify a connection now.
/v1/connections/{id}/verify - GETList the workspace's quota scopes, newest first by default.
/v1/quota_scopes - POSTCreate a quota scope.
/v1/quota_scopes - GETRetrieve a quota scope.
/v1/quota_scopes/{id} - DELETEDelete a quota scope and its ledger.
/v1/quota_scopes/{id} - PATCHUpdate a quota scope's limits: each limit given replaces the stored one, `null` clears it.
/v1/quota_scopes/{id} - GETList the workspace's sending domains, newest first by default.
/v1/sending_domains - POSTCreate a sending domain, `pending_verification`, with the DNS records to publish.
/v1/sending_domains - GETRetrieve a sending domain.
/v1/sending_domains/{id} - DELETEDelete a sending domain.
/v1/sending_domains/{id} - PATCHUpdate a sending domain: turn tracking on or off.
/v1/sending_domains/{id} - POSTVerify a sending domain now: it becomes `verifying` and its DNS records are checked.
/v1/sending_domains/{id}/verify
Messages
- GETList the workspace's delivery events, newest first by default.
/v1/delivery_events - GETRetrieve a delivery event.
/v1/delivery_events/{id} - GETList the workspace's messages, newest first by default.
/v1/messages - POSTSend a message: it is queued now and sent when due, outside any campaign's cadence.
/v1/messages - GETRetrieve a message, with its latest attempts, its first delivery events and its holds.
/v1/messages/{id} - POSTCancel a queued message.
/v1/messages/{id}/cancel - POSTRelease a message's holds.
/v1/messages/{id}/release_holds - POSTResolve an uncertain message.
/v1/messages/{id}/resolve
Automation
- GETList the workspace's events, newest first by default.
/v1/events - POSTCreate a synthetic event with sample data of its type.
/v1/events - GETRetrieve an event.
/v1/events/{id} - GETRetrieve a job of the credential's workspace.
/v1/jobs/{id} - POSTRequest the cancellation of a job.
/v1/jobs/{id}/cancel - GETList the workspace's webhook deliveries, newest events first by default.
/v1/webhook_deliveries - GETRetrieve a webhook delivery with its latest attempt.
/v1/webhook_deliveries/{id} - POSTRetry a webhook delivery now.
/v1/webhook_deliveries/{id}/retry - GETList the workspace's webhook endpoints, newest first by default.
/v1/webhook_endpoints - POSTCreate a webhook endpoint. Its signing secret (`whsec_…`) is in this response only.
/v1/webhook_endpoints - GETRetrieve a webhook endpoint (without its secret).
/v1/webhook_endpoints/{id} - DELETEDelete a webhook endpoint and its deliveries.
/v1/webhook_endpoints/{id} - PATCHUpdate a webhook endpoint: its URL, its event types, or whether it is enabled.
/v1/webhook_endpoints/{id} - POSTReplay an endpoint's deliveries.
/v1/webhook_endpoints/{id}/replay - POSTRotate an endpoint's signing secret.
/v1/webhook_endpoints/{id}/rotate_secret
Audience
- GETList the workspace's exports, newest first by default.
/v1/exports - POSTExport a resource's list to a file.
/v1/exports - GETRetrieve an export, with a fresh download link when it is ready.
/v1/exports/{id} - GETList the workspace's custom fields (at most 100).
/v1/fields - POSTCreate a custom field.
/v1/fields - DELETEDelete a custom field and every person's value of it.
/v1/fields/{id} - PATCHUpdate a custom field's label or an enum's options. Its key and type never change.
/v1/fields/{id} - GETList the workspace's groups, newest first by default, each with its people counted.
/v1/groups - POSTCreate an empty group.
/v1/groups - GETRetrieve a group with its people counted.
/v1/groups/{id} - DELETEDelete a group and its memberships; its people stay.
/v1/groups/{id} - PATCHRename a group or change its description.
/v1/groups/{id} - GETList the workspace's imports, newest first by default.
/v1/imports - POSTImport people from a CSV file or from JSON.
/v1/imports - GETRetrieve an import: its status, counts, first problems and the link to its error report.
/v1/imports/{id} - GETList the workspace's people, newest first by default.
/v1/people - POSTCreate a person.
/v1/people - GETRetrieve a person.
/v1/people/{id} - DELETEDelete a person and its memberships.
/v1/people/{id} - PATCHUpdate a person: its address, names, company, custom values (merged) or groups (replaced).
/v1/people/{id} - POSTCheck addresses before mailing them.
/v1/preflight - GETList the workspace's segments, newest first by default. A list leaves the counts out.
/v1/segments - POSTCreate a segment; the response counts its people.
/v1/segments - GETRetrieve a segment with its people counted now (up to 10,000).
/v1/segments/{id} - DELETEDelete a segment; its people stay.
/v1/segments/{id} - PATCHRename a segment or replace its filter.
/v1/segments/{id} - GETList the workspace's suppressions, newest first by default.
/v1/suppressions - POSTSuppress an address, or a list of them: no mail of the workspace reaches them any more.
/v1/suppressions - GETRetrieve a suppression.
/v1/suppressions/{id} - DELETERemove a manual suppression.
/v1/suppressions/{id}
Content
Inbox
- GETList the messages the inbox read, newest first by default.
/v1/inbound_messages - GETRetrieve a message the inbox read.
/v1/inbound_messages/{id} - PATCHCorrect a message's classification or sentiment by hand; AI never overrides it afterwards.
/v1/inbound_messages/{id} - POSTConfirm or dismiss what an inbound message proposed.
/v1/inbound_messages/{id}/review - GETList the workspace's threads, newest first by default.
/v1/threads - GETRetrieve a thread with its latest 50 messages, outbound and inbound, oldest first.
/v1/threads/{id} - PATCHChange a thread's status (open, snooze or archive it) or mark it read.
/v1/threads/{id}