Event topics
A complete index
Mechanic supports a variety of event topics, each a classification of an event. This page is a complete index of pre-defined topics, organized by domain and subject.
Incoming events may be selectively filtered out using event filters.

Mechanic

Actions

  • mechanic/actions/perform Occurs when an action has been performed, regardless of its success or failure. A task may subscribe to this topic to be notified when each of its actions have been performed, so that the task may then respond to the results.

Emails

  • mechanic/emails/received Occurs when Mechanic receives an email sent to the store's dedicated email address. (A store at example.myshopify.com can receive email at [email protected])

Scheduler

  • mechanic/scheduler/10min Runs every 10 minutes.
  • mechanic/scheduler/15min Runs every 15 minutes.
  • mechanic/scheduler/20min Runs every 20 minutes. (You see where this is going.)
  • mechanic/scheduler/30min Runs every 30 minutes.
  • mechanic/scheduler/hourly Runs every hour, on the hour.
  • mechanic/scheduler/daily Runs at midnight, in the store's local timezone.
  • mechanic/scheduler/monday Runs every Monday at midnight, in the store's local timezone. (Note: this would be at the end of Sunday evening). Each named weekday is supported.
More specific times can be achieved by subscribing to an event topic with a delay (e.g. "mechanic/scheduler/daily+5.hours"). To learn more, see Subscriptions.

User

Not to be confused with events in the User domain, the mechanic/user event subject describes ways that the user expresses their intent – to Mechanic – to run the task.
  • mechanic/user/trigger When used, adds a "Run task" button to the task itself. This button generates a new event, to which only this task will respond.
  • mechanic/user/text When used, adds a "Run task" button to the task itself. This button prompts the user with a multi-line text box. When submitted, an event is generated, to which only this task will respond. The event contains the user's input in its data, making user's input available in {{ event.data }}.
​
Shopify events are received from Shopify, directly, and contain event data provided by Shopify. For a reference on what each event contains, see Shopify's Webhook documentation.
Tasks subscribing to Shopify events receive Liquid environment variables, containing data from the webhook.

Shopify

Cart

  • shopify/carts/create
  • shopify/carts/update

Checkout

  • shopify/checkouts/create
  • shopify/checkouts/update
  • shopify/checkouts/paid
  • shopify/checkouts/delete

Collections

  • shopify/collections/create
  • shopify/collections/update
  • shopify/collections/delete

Customer saved searches

  • shopify/customer_groups/create
  • shopify/customer_groups/update
  • shopify/customer_groups/delete

Customers

  • shopify/customers/create
  • shopify/customers/delete
  • shopify/customers/disable
  • shopify/customers/enable
  • shopify/customers/update

Disputes

  • shopify/disputes/create
  • shopify/disputes/update

Draft orders

  • shopify/draft_orders/create
  • shopify/draft_orders/delete
  • shopify/draft_orders/update

Fulfillment events

  • shopify/fulfillment_events/create
  • shopify/fulfillment_events/delete

Fulfillments

  • shopify/fulfillments/create
  • shopify/fulfillments/update

Inventory Items

  • shopify/inventory_items/create
  • shopify/inventory_items/update
  • shopify/inventory_items/delete

Inventory Levels

  • shopify/inventory_levels/connect
  • shopify/inventory_levels/update
  • shopify/inventory_levels/disconnect

Locations

  • shopify/locations/create
  • shopify/locations/update
  • shopify/locations/delete

Order transactions

  • shopify/order_transactions/create

Orders

  • shopify/orders/cancelled
  • shopify/orders/create
  • shopify/orders/delete
  • shopify/orders/fulfilled
  • shopify/orders/paid
  • shopify/orders/partially_fulfilled
  • shopify/orders/updated
  • shopify/orders/edited

Products

  • shopify/products/create
  • shopify/products/delete
  • shopify/products/update

Refunds

  • shopify/refunds/create

Shop

  • shopify/shop/update

Subscriptions

Shopify only allows subscription events for apps that provide subscription contracts to customers. And, Shopify does not permit other apps to access subscription data for other apps. This means that platforms like Mechanic can't monitor for Shopify events related to subscription contracts or subscription billing events.
Ultimately, this means that Mechanic cannot currently offer subscription event topics to developers.

Themes

  • shopify/themes/create
  • shopify/themes/delete
  • shopify/themes/publish
  • shopify/themes/update

User

The User event domain is for custom, user-generated events, having any subject and verb (e.g. "user/foo/bar"). As with all events, a User event topic must use the standard three-part topic form, but only the "user/" prefix is mandatory.
Mechanic allows developers several ways to generate custom User events:
  • The Event action can be used with any User event topic
  • ​Webhooks may be configured to generate events using any User event topic

Third-party

Judge.me

Locksmith

  • locksmith/sessions/ping β€” Occurs when a user gains access to a resource on an online store using Locksmith. Learn more here.

Report Toaster

  • report_toaster/reports/create β€” Occurs when a Report Toaster report has been created and is available for download. Learn more here.
  • report_toaster/reports/fail β€” Occurs when a requested Report Toaster report has failed. Learn more here.

Additional apps

Mechanic invites third-party app developers to develop Mechanic integrations, making it easy for developers to use our services together. If you're an app developer interested in this, email [email protected].
Third-party services can often be connected to Mechanic using webhooks.