Continuum API
Developers

The Continuum API, all resources.

Authenticate with your API key as a Bearer token or x-api-key header. All responses are JSON. Webhooks are HMAC-signed.

NODE.JS SDK
npm install @continuum/api

import { Continuum } from '@continuum/api';
const client = new Continuum({ apiKey: 'cont_live_...' });

const result = await client.verify.single('user@example.com');
const msg    = await client.send.send({ to: 'alex@acme.com', subject: 'Hi', html: '<p>Hello</p>' });
QUICK START — REST
curl -X POST https://api.continuumapi.com/v1/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "to": "alex@acme.com", "subject": "Welcome", "html": "<p>Hi Alex!</p>", "verify_before_send": true }'
Verification
POST/v1/verifySingle email — 12 checks, score 0–100, sub-status.
POST/v1/bulk-jobsSubmit a CSV; poll for results or use a webhook.
GET/v1/bulk-jobs/:id/resultsPaginated results filtered by status.
Transactional
POST/v1/sendSend an email — templates, attachments, BCC, tracking, scheduled_at.
POST/v1/send/batchUp to 100 messages in one call, per-message suppression.
GET/v1/messagesMessage log with delivery events.
GET/v1/messages/statsAggregate delivery / bounce / open / click rates.
Templates
POST/v1/templatesCreate a reusable template with {{variable}} slots.
GET/v1/templatesList all templates.
PATCH/v1/templates/:idUpdate subject, html_body, or variables.
DELETE/v1/templates/:idDelete a template.
Sending domains
POST/v1/domainsAdd a domain — DKIM keypair generated; DNS records returned.
GET/v1/domains/:idStatus + SPF / DKIM / DMARC check.
POST/v1/domains/:id/verifyForce re-check DNS from SES.
GET/v1/domains/:id/healthFull deliverability score + blacklist status.
Lists & contacts
POST/v1/listsCreate a mailing list.
POST/v1/lists/:id/contactsSubscribe a contact (double-opt-in optional).
GET/v1/lists/:id/contactsPaginated contact list filtered by status.
DELETE/v1/lists/:id/contacts/:emailUnsubscribe.
Campaigns
POST/v1/campaignsCreate a draft campaign with list_ids and segment_ids.
POST/v1/campaigns/:id/sendTrigger send — fan-out worker starts immediately.
GET/v1/campaigns/:idLive stats: sent, open_rate, click_rate, bounce_rate.
POST/v1/campaigns/:id/duplicateClone a campaign into a new draft.
Sequences
POST/v1/sequencesCreate a sequence with mailbox_id and stop_on_reply.
POST/v1/sequences/:id/stepsAdd a step: delay_days, condition, html_body.
POST/v1/sequences/:id/contactsEnroll leads — accepts list_id or emails[].
GET/v1/sequences/:id/contactsEnrollment status per contact.
Mailboxes
POST/v1/mailboxesConnect SMTP, Gmail, or Outlook.
POST/v1/mailboxes/:id/testTest connectivity and credentials.
POST/v1/mailboxes/:id/warmupEnable warmup ramp — target_per_day, ramp_up_days.
GET/v1/inboxUnified inbox — replies across all mailboxes and sequences.
AI
POST/v1/ai/personalizeGenerate a first-line opener per lead. Growth+ plan.
POST/v1/ai/classify-replyClassify an inbound reply: interested / not interested / ooo.
POST/v1/ai/detect-espDetect Gmail / Outlook / Yahoo by MX — for smart mailbox routing.
Analytics & usage
GET/v1/analytics/sendsDelivery, open, click, bounce rates — filterable by date and domain.
GET/v1/analytics/sends/timelineDaily breakdown for charting.
GET/v1/usageCurrent plan, verifications.used / limit, sends.used / limit.
Suppressions & monitoring
GET/v1/suppressionsList suppressed addresses with reason.
POST/v1/suppressionsManually suppress an address.
DELETE/v1/suppressions/:emailRemove from suppression list.
POST/v1/monitorsRegister an address for continuous re-verification.

Get your API key from the dashboard — free plan includes 1,000 verifications and 1,000 sends per month.