> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omneo.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Triggers

> Event-driven reactions that fire when a specific Omneo event occurs.

The Triggers API configures event-driven reactions: logic that executes automatically when a specific platform event occurs (e.g., `transaction.created`, `tier.achieved`). See [Reactions](/concepts/automation/reactions) for a conceptual overview of both triggers and automations.

## Trigger attributes

| Attribute            | Description                                                              |
| -------------------- | ------------------------------------------------------------------------ |
| id `INTEGER`         | The unique Omneo ID of the trigger                                       |
| name `STRING`        | The display name of the trigger                                          |
| trigger `STRING`     | The platform event that fires this trigger (e.g., `transaction.created`) |
| description `STRING` | A description of what this trigger does                                  |
| notes `STRING`       | Internal notes about the trigger                                         |
| is\_active `BOOLEAN` | Whether the trigger is active and will fire                              |
| actions `ARRAY`      | An ordered array of actions that execute when the trigger fires          |

## Action attributes

| Attribute                                     | Description                                                                     |
| --------------------------------------------- | ------------------------------------------------------------------------------- |
| actions\[].id `INTEGER`                       | The unique Omneo ID of the trigger action                                       |
| actions\[].uuid `STRING`                      | The action type identifier (e.g., `reward.create`, `target.send`)               |
| actions\[].reference\_id `STRING`             | A unique reference ID for this action within the trigger                        |
| actions\[].name `STRING`                      | The display name of the action                                                  |
| actions\[].sort\_order `INTEGER`              | Execution order (lower values run first)                                        |
| actions\[].description `STRING`               | What this action does                                                           |
| actions\[].notes `STRING`                     | Internal notes about this action                                                |
| actions\[].arguments `ARRAY`                  | Arguments that configure this action                                            |
| actions\[].arguments\[].name `STRING`         | The argument name (must match a valid attribute for the action type)            |
| actions\[].arguments\[].value `OBJECT`        | The argument value, either a static value or JSON Logic expression              |
| actions\[].arguments\[].is\_dynamic `BOOLEAN` | If true, `value` is evaluated as JSON Logic. If false, `value` is passed as-is. |
| actions\[].created\_at `DATE-TIME`            | When the action was created                                                     |
| actions\[].updated\_at `DATE-TIME`            | When the action was last updated                                                |

## Action types

The following action types are available when building triggers. Each type requires specific arguments.

### Create benefit

Action UUID: `benefit.create`

| Argument         | Description                                       |
| ---------------- | ------------------------------------------------- |
| profile\_id      | The profile to issue the benefit to               |
| issued\_at\_days | Offset days from trigger time for the issued date |
| issued\_at\_hour | Hour of day for the issued date                   |
| timezone         | Timezone for date calculations                    |
| definition       | The benefit definition handle                     |

### Create point

Action UUID: `point.create`

| Argument         | Description                    |
| ---------------- | ------------------------------ |
| value\_remaining | Remaining point value          |
| value\_initial   | Initial point value to award   |
| issued\_at       | The date the points are issued |

### Create reward

Action UUID: `reward.create`

| Argument    | Description                        |
| ----------- | ---------------------------------- |
| meta        | Metadata to attach to the reward   |
| value       | The reward dollar value            |
| profile\_id | The profile to issue the reward to |
| definition  | The reward definition handle       |

### Redeem benefit

Action UUID: `redeem.benefit`

Records a redemption against a benefit already issued to a profile.

| Argument    | Description                                                                                                                        |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| profile\_id | The profile whose benefit is being redeemed                                                                                        |
| definition  | The benefit definition handle                                                                                                      |
| count       | (Optional) Number of redemptions to record. Defaults to `1`. Capped at `max_redemptions` if the definition has a redemption limit. |

## Related

* [Reactions concept](/concepts/automation/reactions)
* [Automations API](/api-reference/automation)
* [Reaction filters](/dev-guides/reactions/filters)
* [Example reaction](/dev-guides/reactions/example-reaction)
