Domains

Let's get you to where you're going. :)

  • Mechanic
    Good for scheduling, or for allowing the merchant to manually trigger tasks within the Mechanic app.
  • User
    You get to emit these yourself, using the event action!
  • Shopify
    These correspond one-to-one with Shopify webhooks topics.

Introduction

Every task needs at least one event topic to "listen" for – when an event with a matching topic occurs, the task runs.

Mechanic has many events that it can work with, giving you many options as you get creative with your shop's automation. :)

And there's room for more! See the end of this page for the list of future events.

The full rundown is below, organized by event domain (i.e. the source responsible for generating the event), the event subject (i.e. does the event concern a Shopify collection? or the Mechanic scheduler?), and the event … action. We don't have a good word for that third piece yet. ;)

Mechanic

These events are generated by Mechanic.

Scheduler

These events run at regular intervals. In some cases, they may run a minute or two off from the exact time specified.

  • Hourly: mechanic/scheduler/hourly 
  • Daily: mechanic/scheduler/daily (midnight, in the shop's local timezone)
  • Weekly, per weekday (runs midnight, in the shop's local timezone):
    mechanic/scheduler/sunday
    mechanic/scheduler/monday
    mechanic/scheduler/tuesday
    mechanic/scheduler/wednesday
    mechanic/scheduler/thursday
    mechanic/scheduler/friday
    mechanic/scheduler/saturday 

User

These events describe runs that the user can trigger from within the Mechanic application interface.

  • Text input: mechanic/user/text 

User

Yes, you get to generate events too!

User event topics always start with user/ , but the rest is up to the task script. They always follow the same three-part form as every other event topic.

Learn about triggering user events with the "event" action.

Shopify

These events are generated by Shopify.

Cart

  • Create: shopify/carts/create 
  • Update: shopify/carts/update 

Checkout

  • Create: shopify/checkouts/create 
  • Update: shopify/checkouts/update
  • Delete: shopify/checkouts/delete 

Collections

  • Create: shopify/collections/create 
  • Update: shopify/collections/update 
  • Delete: shopify/collections/delete 

Customer saved searches

Note: Shopify calls these "customer saved searches", but under the hood they still refer to them as "customer groups".

  • Create: shopify/customer_groups/create 
  • Update: shopify/customer_groups/update 
  • Delete: shopify/customer_groups/delete 

Customers

  • Created: shopify/customers/create
  • Deleted: shopify/customers/delete
  • Disabled: shopify/customers/disable
  • Enabled: shopify/customers/enable
  • Updated: shopify/customers/update

Draft orders

  • Created: shopify/draft_orders/create
  • Deleted: shopify/draft_orders/delete
  • Updated: shopify/draft_orders/update

Fulfillment events

  • Created: shopify/fulfillment_events/create
  • Deleted: shopify/fulfillment_events/delete

Fulfillments

  • Created: shopify/fulfillments/create
  • Updated: shopify/fulfillments/update

Inventory Items

  • Created: shopify/inventory_items/create 
  • Updated: shopify/inventory_items/update
  • Deleted: shopify/inventory_items/delete 

Inventory Levels

  • Connected: shopify/inventory_levels/connect 
  • Updated: shopify/inventory_levels/update 
  • Disconnected: shopify/inventory_levels/disconnect 

Locations

Not yet supported! Shopify doesn't seem to support webhook registration for these events just yet. :)

Order transactions

  • Created: shopify/order_transactions/create

Orders

  • Cancelled: shopify/orders/cancelled
  • Created: shopify/orders/create
  • Deleted: shopify/orders/delete
  • Fulfilled: shopify/orders/fulfilled
  • Paid: shopify/orders/paid
  • Partially fulfilled: shopify/orders/partially_fulfilled
  • Updated: shopify/orders/updated

Products

  • Created: shopify/products/create
  • Deleted: shopify/products/delete
  • Updated: shopify/products/update

Refunds

  • Created: shopify/refunds/create

Shop

  • Updated: shopify/shop/update

Themes

  • Created: shopify/themes/create 
  • Deleted: shopify/themes/delete 
  • Published: shopify/themes/publish 
  • Updated: shopify/themes/update 
Did this answer your question?