Overview
Order action schemas enable developers to define reusable schemas that will be used to validate and structure the dynamic data sent as part of an order action.- These schemas can be defined either via Config Hub or through the API
- The schema is referenced when sending data to the endpoint
/api/v3/orders/{orderId}/actionor when embedding action data via another endpoint when updating an order. - The dynamic fields defined in a schema are made available directly in the Design Studio, enabling editors to insert these fields safely into order-related messages.
Why use schemas?
Previously, untyped custom data sent to the order action endpoint could only be referenced in classic email design themes. With the transition to the Design Studio, a stricter way to define and validate this data was needed. Schemas solve this problem by:- Providing structure and validation for external systems pushing data into Engage
- Enabling safe and intuitive use of dynamic fields in the Design Studio UI
- Supporting different data scopes such as order level, line-item level, or delivery-group level
Data structure
An Order Action Schema supports three levels of dynamic data:- orderCustomData: Metadata tied to the order as a whole.
- lineItemCustomData: Data per individual order line item.
- groupCustomData: Group-level data (such as tracking per delivery group).
Example schema
How to define schemas
You can define order action schemas in two ways:1. Via Config Hub
- In the Config Hub, navigate toOrder action schemas
- Click Add schema
- Paste your JSON schema and name the integration schema
- Press “Save” to make the fields available in Design Studio
2. Via the API
You can use the following endpoints to manage schemas programmatically:List all schemas
Get a schema by ID
Get a schema by name
Create a new schema
Update an existing schema
Remove a schema
orderCustomDatalineItemCustomDatagroupCustomData
id and group and they need to be marked as “required”.
Fields in Design Studio
Once a schema is in place and referenced in an order action, its fields will be available in the Design Studio UI under Custom data:- Order > Custom data
- Line items > Custom data
- Groups > Custom data
Sending data via API
When performing an order action (for example “confirmShipment”), pass your custom data along with aschemaName reference:
Payload example

