Skip to main content
POST
Create a per-queue alert rule

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

Path Parameters

id
string
required

Queue id (que_*).

Minimum string length: 1

Body

application/json
name
string
required
Required string length: 1 - 120
metric
enum<string>
required
Available options:
queue_depth,
asa_seconds,
abandon_rate,
sla_pct,
aht_seconds,
occupancy_pct,
agents_available
op
enum<string>
required
Available options:
gt,
gte,
lt,
lte
threshold
number
required
action
enum<string>
default:sse
Available options:
sse,
webhook,
email
delivery_config
object | null

Per-action delivery tunables. webhook_event_type overrides the outbound webhook event slug (default queue.alert_rule_fired); email_subject_prefix prepends an operator-visible prefix to the notification subject.

enabled
boolean
default:true
cooldown_seconds
integer

Re-fire suppression window (defaults DB-side to 300). 0 disables the gate (legacy fire-every-tick).

Required range: 0 <= x <= 86400

Response

Created — the resource was created successfully.

data
object
required