Actions
In Mechanic, an action is an instruction for performing work that has an effect. Actions are generated by tasks, in response to events. Each action has a type, specifying the class of operation to be performed, and options, providing specifics about what that operation will do.
Actions are defined by tasks using action objects, which are simple JSON objects specifying an action's type and options. Action objects can be constructed using the action tag.
In Mechanic, actions are performed after their originating task run concludes. Actions are not performed inline during the task's Liquid rendering.
To inspect and respond to the results of an HTTP action, add a task subscription to mechanic/actions/perform, allowing the action to re-invoke the task with the action result data.
Learn more: Responding to action results
Action types
An action type determines the class of operation to be performed. While actions may vary greatly, there are only a few action types.
Action | Purpose |
Performing operations on the store's Mechanic cache | |
Debugging; displays the options that it is provided, with no side-effects | |
Sending transactional email | |
Generating custom user events | |
Generating files of various types, storing them at a temporary Mechanic-provided URL | |
Performing FTP file uploads and downloads | |
Performing HTTP requests |
Integrations
Mechanic maintains a set of integration actions, offering first-class support for several external services.
Action | Integrated service | Purpose |
---|---|---|
Shopify Flow | Sending customer, order, product, and general triggers to Shopify Flow | |
Shopify Admin API | Sending requests to the Shopify Admin API, supporting both REST and GraphQL | |
Report Toaster | Requesting reports from Report Toaster, or updating data within Report Toaster |
Last updated