Transactional

Reliable transactional messages for receipts and alerts, separate from marketing campaigns.

Generally availableOpenAPIMarkdown

Overview

Transactional Suite owns templates and template-send over public umk_* REST. Email delivery reuses Business Email providers (requires umney_email entitlement). Logs share transactional_logs with Marketing and Business Email.

ItemValue
ServiceTransactional
Permissionstransactional:send
Key exampleumk_live_transactional_<8>_<secret>
Dashboard UIDashboard → Email Suites
JWT Growth API/api/growth/… (see below)
Public umk_* RESTLive — see public API table
Markdown/developers/transactional.md
Public /v1/transactional/* is live (templates CRUD, POST /messages, GET /logs). Email channel only. Send requires Business Email enabled. Logs default to source=transactional_v1; use source=all for the shared ledger.

Get started

  1. Enable Transactional in Dashboard → Billing.
  2. Open Dashboard → Email Suites for the product tab UI.
  3. Create an API token for Transactional with permission transactional:send.
  4. Store the secret server-side only (Cloudflare-style least privilege).
  5. Use JWT /api/growth/* for dashboard session flows; public /v1/* paths when documented as Live.

API tokens (Cloudflare-style)

Authorization: Bearer umk_live_transactional_<8>_<secret>
Scope: transactional:send — Send transactional template messages on the public Transactional API
Guide: /developers/api-tokens

Concepts

ResourceDescription
TemplateTransactional content template (body_json.subject + html|text)
Message sendPOST /v1/transactional/messages with templateId + variables
LogSend/attempt log
StatisticsSuite aggregates (JWT Growth)

Dashboard Growth API (JWT — available now)

Tenant JWT under /api/growth/*. Generic PATCH|DELETE /api/growth/:suite/:resource/:id also applies for some resources. Check GET /api/growth/entitlements for access.

MethodPathPurpose
GET|POST/api/growth/transactional/templatesTemplates
GET/api/growth/transactional/logsLogs
GET/api/growth/transactional/statisticsStats

Public API contract

MethodPathScopeStatus
GET|POST/v1/transactional/templatestransactional:sendLive
GET|PATCH|DELETE/v1/transactional/templates/{id}transactional:sendLive
POST/v1/transactional/messagestransactional:sendLive
GET/v1/transactional/logstransactional:sendLive
Do not invent URLs. Public handlers ship without changing your key model.

Agent recipe

# Enable Transactional → create token (transactional:send)
# Today: JWT /api/growth/… listed above
# Public: paths in the contract table
# Read /developers/transactional.md before answering
# See also Live Chat + Business Email complete docs