API Reference
Routing Rules

Routing Rules API

⚠️

Internal API. These endpoints power the FlowAlert dashboard and mobile app and authenticate with a session token — there is no public way to obtain one, and API keys cannot call them. Documented for transparency; may change without notice. The supported integration surface is POST /v1/events.

All endpoints require a Bearer token and workspace membership.

Create a rule

POST /v1/workspaces/:workspaceId/routing-rules
{
  "name": "Notify Booking Staff",
  "eventKey": "booking.created",
  "targets": [{ "type": "group", "groupId": "grp_abc123" }],
  "requiresAck": false,
  "priorityOverride": null,
  "onCallOnly": false,
  "escalationPolicyId": null
}
FieldTypeRequiredDescription
namestringHuman-readable rule name
eventKeystringEvent key pattern: * (all events), booking.* (prefix wildcard), or an exact key like booking.created. The flowalert. prefix is reserved.
targetsarrayList of { type: "group", groupId: string } objects. Supports multiple groups.
requiresAckbooleanRequire acknowledgement from staff. Default false
priorityOverridestringOverride the event priority for notifications from this rule: LOW · NORMAL · HIGH · URGENT · CRITICAL
onCallOnlybooleanOnly notify members who are currently on-call. Default false
escalationPolicyIdstringID of an escalation policy to trigger if no acknowledgement is received
💡

Rules are created in an enabled state by default. Use the PATCH endpoint to disable a rule without deleting it.


List rules

GET /v1/workspaces/:workspaceId/routing-rules

Update a rule

PATCH /v1/workspaces/:workspaceId/routing-rules/:ruleId

Send only the fields you want to change. All fields from the create body are accepted, plus:

FieldTypeDescription
enabledbooleanEnable or disable the rule without deleting it

Delete a rule

DELETE /v1/workspaces/:workspaceId/routing-rules/:ruleId