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.
Authorization: Bearer … (or ?api_key=… on the URL).seq_live_… — per-app keyMinted 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 keyYour 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.
/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_…
{
"mcpServers": {
"sequence-studio": {
"url": "https://sequences.ounie.com/api/mcp?api_key=ounie_live_…"
}
}
}| Tool | What it does | Cost |
|---|---|---|
| generate_sequence | Write one grounded multi-touch email campaign from your brain(s). Master key. | 8 credits |
| regenerate_touch | Rewrite one email of a sequence; prior version kept in history. Master key. | 1 credit |
| list_sequences | List your saved sequences. | free |
| get_sequence | One sequence + its ordered touches (with touch ids). | free |
| export_sequence | ESP-ready CSV of a sequence (subjects, body, offsets). | free |
| get_credit_balance | Spendable Ounie credits + monthly included. | free |
| get_pricing | Per-action pricing. No auth required. | public |
| whoami | The authenticated key's owner + key id. | free |
Authorization: Bearer … (or ?api_key=) on any of these. Cookie sessions work too — it's the same route./api/sequences— Generate 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 }.
/api/sequences— List your sequencesFree.
/api/sequences/{id}— One sequence + its touchesFree. Touch ids come from here.
/api/sequences/{id}— Edit the campaign header{ "title": "…", "summary": "…" }Free.
/api/sequences/{id}— Delete a sequenceFree. Cascades to its touches.
/api/sequences/{id}/touches/{touchId}/regenerate— Rewrite one emailBills 1 credit. Master key / cookie (grounded). The prior version is kept in that touch's history.
/api/sequences/{id}/touches/{touchId}— Edit one email{ "subject_a": "…", "body": "…", "day_offset": 3 }Free.
/api/sequences/{id}/touches/{touchId}/restore— Restore a prior version{ "version_index": 0 }Free. The current version is pushed onto history first.
/api/sequences/{id}/export— CSV for any ESPFree. Columns: touch_number, day_offset, subject_a, subject_b, body.
/api/brains— Your brain pickerLive from ounie.com. Requires a cookie session or the master key.
// 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 }
]
}