send_event
Report an event about a person and let Cue's rules decide whether and what to notify. Use it when a rule can cover the case instead of messaging directly.
Instructions
Report that something happened to a person (e.g. order.shipped) and let Cue's rules decide whether and what to notify. Prefer it to send_message whenever a rule can cover the case. Needs the events:write scope.
Rules run asynchronously, so the result only confirms receipt: id, status (pending until processed) and duplicate (true when this idempotency key was already reported; nothing new happens). Call get_event with the id to see, per rule, whether it matched and which message it produced. An unknown recipient gets an empty profile, so a message may end suppressed with no_reachable_channel. For agent keys, the messages count against the agent's per-person budget, are capped at its importance ceiling and may wait for approval. Fails with 403 for names starting with cue. and 422 for invalid input.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | Event details as a JSON object, at most 16 KB. Rule conditions read it as `event.data`, templates as `data`. Defaults to {}. | |
| name | Yes | Event name, 1-255 letters, digits and `_ . : - /`, e.g. `order.shipped`. Rules listen for it by name or pattern (`order.*`). Names starting with `cue.` are reserved. | |
| recipient | Yes | External id of the person the event is about: the id your system uses for them, not a Cue UUID. | |
| idempotency_key | No | Up to 255 characters derived from the triggering action (e.g. `order-9-shipped`), unique per sender: a repeat is recognised and notifies nobody again. Strongly recommended. |