orders.created can be a definition. The order placed by one customer is a record under that definition. The definition supplies the contract and flow; the record carries the payload, tags, current state, and delivery history.
Action definitions
A definition brings together the parts of Arklow that apply to one kind of work:- The name work arrives under.
- The schema used to validate its payload.
- The sources that create records for it.
- The rules that tag, transform, route, skip, or terminate its records.
- The destinations where admitted work can be delivered.
- The metric policies associated with the work.
Variant
The variant is the definition’s canonical name. Use dot notation to describe the domain and event or operation:Schema
Schemas are optional. When you use them, you can ensure that work entering Arklow matches the required shape, or it is thrown away. We recommend that you rely upon existing schema checks in your pipeline, using this feature only for added protection.Aliases
Aliases can be used to temporarily associated new variant identifiers with the current action. Often this can be useful for migrations, or moving old work to new actions.Version
Definitions begin at version1. When incoming work omits the version, Arklow uses the current version for that variant. A caller can include the version to assert which current contract it expects.
If a version, for whatever reasons becomes invalid, or unavailable, Arklow will use the latest version.
Flow configuration
Flow is a UI-only feature that visualizes the entire Action, and all how work moves through it. We recommend that you use it initially to configure your first actions, before moving to API/Terraform based configurations.Lifecycle
An action moves through a small set of public states.
Delivery guarantees defines attempts, settlement, and redelivery for these states.
Create a definition
1
Name the work
Create an action in the dashboard and enter a stable variant such as
orders.created.2
Set the payload contract
Add a JSON Schema, or leave the schema empty when any JSON payload is valid.
3
Link a destination
Open the action’s Flow and link the destination that should receive the work. Set the fallback destination as default when the flow has more than one.
4
Add routing where needed
Add rules when payloads or tags should choose a different destination or control lane.
Quickstart
Create an action and deliver its first record.
Admission control
See why an action waits before delivery.
Sources
Choose where action records enter Arklow.
Destinations
Choose where admitted work is delivered.