Not live yet. See
Callbacks & signature verification
for the full design.
Envelope
| Field | Type |
|---|---|
id | string, unique per event |
type | "app.uninstalled" | "directory.changed" | "interaction" |
workspace_id | string, cmp_ prefixed |
created_at | string, RFC 3339 |
data | object, shape depends on type |
Headers
| Header | Value |
|---|---|
X-Workchats-Timestamp | Unix seconds |
X-Workchats-Signature | v1=<hex>; two comma-separated values during a secret rotation |
X-Workchats-Attempt | Attempt number, starting at 1 |
Event types
type | data |
|---|---|
app.uninstalled | {"removed_by": {"id": "usr_…"} | null, "reason": "admin" | "app_disabled"} |
directory.changed | {"kind": "user.created" | "user.updated" | "user.deactivated" | "conversation.created" | "conversation.renamed" | "conversation.archived" | "conversation.deleted" | "app.removed_from_conversation", "id": "…"} |
interaction | {"action_id": "…", "value": "…", "user": {"id": "usr_…", "email": "…"}, "message": {"id": "…", "conversation_id": "…", "metadata": {}}} |