Sequence Studio
API

Two on-ramps. One credit wallet.

Ounie accounts hit the REST endpoints with a bearer token. AI assistants — including the Ounie AI Team — connect over MCP and get a native tool surface. Both run the same generation pipeline, and every call draws your shared Ounie credits (1 credit = 1¢), never overdrawing. Because a campaign is written only from your own private brain, brain-grounded generation authenticates with your Ounie master key.

Authentication
Two key rails, one wallet. Both are sent as Authorization: Bearer … (or ?api_key=… on the URL).
seq_live_… — per-app key

Minted on Dashboard → API keys. Reads, lists, and CSV export work. It can't reach your private brains, so generate_sequence / POST /api/sequences return 403 grounding_unavailable — use your master key for generation.

ounie_live_… — Ounie master key

Your ounie.com developer key. Enable fleet access on ounie.com and it works across every Ounie app. It's forwarded upstream so generation is grounded in — and cited to — your brains. This is what the Ounie AI Team uses.

MCP · for AI assistants and the Ounie AI Team
Streamable HTTP at /api/mcp (legacy SSE at /api/sse). Auth with a seq_live_… key, or the Ounie fleet master key ounie_live_… (required for generation).
Endpoint  https://sequences.ounie.com/api/mcp
Header    Authorization: Bearer ounie_live_…

# If your MCP client can't set headers, append the key as a query param:
https://sequences.ounie.com/api/mcp?api_key=ounie_live_…
Connecting the Ounie AI Team (TabTab)
{
  "mcpServers": {
    "sequence-studio": {
      "url": "https://sequences.ounie.com/api/mcp?api_key=ounie_live_…"
    }
  }
}
ToolWhat it doesCost
generate_sequenceWrite one grounded multi-touch email campaign from your brain(s). Master key.8 credits
regenerate_touchRewrite one email of a sequence; prior version kept in history. Master key.1 credit
list_sequencesList your saved sequences.free
get_sequenceOne sequence + its ordered touches (with touch ids).free
export_sequenceESP-ready CSV of a sequence (subjects, body, offsets).free
get_credit_balanceSpendable Ounie credits + monthly included.free
get_pricingPer-action pricing. No auth required.public
whoamiThe authenticated key's owner + key id.free
REST · the same endpoints the dashboard uses
Send Authorization: Bearer … (or ?api_key=) on any of these. Cookie sessions work too — it's the same route.
POST/api/sequencesGenerate a campaign
{ "brain_ids": ["…"], "sequence_type": "cold_outreach", "touch_count": 5, "audience": "RevOps leaders — book a demo" }

Bills 8 credits. Requires a cookie session OR the Ounie master key (ounie_live_) — a per-app seq_live_ key returns 403 grounding_unavailable. Thin material → 422 + full refund. Returns { sequence_id, touches, grounded, credits_spent }.

GET/api/sequencesList your sequences

Free.

GET/api/sequences/{id}One sequence + its touches

Free. Touch ids come from here.

PATCH/api/sequences/{id}Edit the campaign header
{ "title": "…", "summary": "…" }

Free.

DELETE/api/sequences/{id}Delete a sequence

Free. Cascades to its touches.

POST/api/sequences/{id}/touches/{touchId}/regenerateRewrite one email

Bills 1 credit. Master key / cookie (grounded). The prior version is kept in that touch's history.

PATCH/api/sequences/{id}/touches/{touchId}Edit one email
{ "subject_a": "…", "body": "…", "day_offset": 3 }

Free.

POST/api/sequences/{id}/touches/{touchId}/restoreRestore a prior version
{ "version_index": 0 }

Free. The current version is pushed onto history first.

GET/api/sequences/{id}/exportCSV for any ESP

Free. Columns: touch_number, day_offset, subject_a, subject_b, body.

GET/api/brainsYour brain picker

Live from ounie.com. Requires a cookie session or the master key.

No x402 / keyless rail
Sequence Studio has no keyless pay-per-call (x402) endpoint. Every campaign is written only from your own private Ounie brain, so there's nothing to generate without an authenticated Ounie account — agent access is API keys / MCP drawing your Ounie credits.
Shape of a generated sequence
// GET /api/sequences/{id}
{
  "sequence": {
    "id": "…", "title": "Cold outreach to RevOps leaders",
    "sequence_type": "cold_outreach", "grounded": true,
    "citations": [ { "brainId": "…", "slug": "…", "title": "…", "url": "https://ounie.com/…" } ]
  },
  "touches": [
    { "id": "…", "touch_number": 1, "day_offset": 0,
      "subject_a": "…", "subject_b": "…",   // two A/B variants
      "body": "…{{first_name}}…",            // merge fields pass through
      "cta": "…", "citations": [ … ], "history_count": 0 }
  ]
}