Skip to main content
POST
Register an Apple Messages for Business agent

Authorizations

Authorization
string
header
required

Dashboard JWT token from Clerk

Headers

Idempotency-Key
string

Stripe-style idempotency token. Pass a stable, client-generated value (1-255 chars) to dedupe retries on transient timeouts. The same key+credential+path replays the original response for 24h on 2xx (5min on 4xx, 30s on 5xx). Returns 409 if a concurrent request with the same key is already in flight; replayed responses include the Idempotency-Replay: true response header.

Required string length: 1 - 255
X-Test-Mode
enum<string>

Sandbox opt-in for Clerk-session-authenticated requests. Set to true to route the call through the test-mode pipeline: no real provider delivery, no credits deducted, response meta.test_mode: true. Ignored for live API keys (dv_live_sk_*) — server-to-server clients must use a test-prefixed key (dv_test_sk_*) to exercise sandbox. Test-prefixed keys unconditionally enable sandbox regardless of this header.

Available options:
true,
false

Body

application/json
business_id
string
required

Apple Business Register identifier for the business.

display_name
string
required

Human-readable name for the agent (1–200 chars).

secret_key
string
required

Base64 shared secret Apple assigned to the agent (16–2048 chars); encrypted before persistence.

msp_id
string

Optional Messaging Service Provider id override.

status
enum<string>

Approval state; defaults to pending when omitted.

Available options:
pending,
approved,
suspended
capabilities
object

Capability flags approved by Apple (text, interactive, richLink, form, timePicker, applePay).

logo_url
string<uri>

Optional HTTPS logo URL shown on the dashboard.

Response

One AMB agent record in data, plus the standard request meta envelope.

One AMB agent record in data, plus the standard request meta envelope.

data
object
meta
object