Creates a Glue job. A Glue job can generate webhooks, run on a schedule, or run from system events. Set this up with the trigger or schedule fields.
Minimal body: {"name": "My webhook glue", "type": "webhook", "variables": {}, "steps": []}.
- For a system hook, add
"type": "system hook"and atrigger. - For a schedule, add
"type": "scheduled"and"schedule": {"cron_string": "0 6 * * *", "timezone": "Australia/Sydney"}.
The response is the full Glue job, including its id, and the guid and auth you need for its webhook URL.
Triggers
Set trigger to one of these when type is system hook. Update and status-change events send {"before": {…}, "after": {…}}; create and delete events send the full record.
| Resource | trigger | Fires when |
|---|---|---|
| Sales | payment_create | A payment is created. |
email_receipt | A receipt is emailed. | |
sale_create | A sale is created. | |
sale_update | A sale is updated. | |
| Fulfilment and shipping | fulfillment_create | A fulfillment is created. |
fulfillment_update | A fulfillment is updated. | |
fulfillment_status_change | A fulfillment's status changes. | |
fulfillment_ship | A fulfillment is shipped. | |
fulfillment_ship_update | A fulfillment's shipment details are updated. | |
shipment_create | A shipment is created. | |
shipment_update | A shipment is updated. | |
shipment_status_change | A shipment's status changes. | |
shipment_delete | A shipment is deleted. | |
shippingcost_update | A shipping cost is updated. | |
shippingcost_create | A shipping cost is created. | |
shippingcost_delete | A shipping cost is deleted. | |
| Customers, loyalty and gift cards | customer_create | A customer is created. |
customer_update | A customer is updated. | |
giftcard_create | A gift card is created. | |
giftcard_update | A gift card is updated. | |
loyalty_program_update | The loyalty program settings change. | |
loyalty_adjust | A customer's loyalty points are adjusted. | |
storecredit_adjust | A customer's store credit changes. | |
| Products and prices | cost_update | A cost is updated. |
price_add | A price is added. | |
price_update | A price is updated. | |
price_delete | A price is deleted. | |
product_create | A product is created. | |
product_update | A product is updated. | |
product_delete | A product is deleted. | |
item_create | An item (variant) is created. | |
item_update | An item (variant) is updated. | |
item_delete | An item (variant) is deleted. | |
promotion_create | A promotion is created. | |
promotion_update | A promotion is updated. | |
promotion_delete | A promotion is deleted. | |
| Stock and warehouses | inventory_adjust | Stock is adjusted or set (rows are sent in batches of up to 50). |
location_create | A warehouse location is created. | |
location_update | A warehouse location is updated. | |
location_delete | A warehouse location is deleted. | |
transfer_create | A transfer is created. | |
transfer_update | A transfer is updated. | |
transfer_status_change | A transfer's status changes. | |
warehouse_create | A warehouse is created. | |
warehouse_update | A warehouse is updated. | |
warehouse_delete | A warehouse is deleted. | |
stocktake_create | A stocktake is created. | |
stocktake_delete | A stocktake is deleted. | |
stocktake_add_count | Counts are added to a stocktake. | |
stocktake_status_change | A stocktake's status changes. | |
inventory_move | Stock is moved between locations (batches of up to 50). | |
| Purchasing | apinvoice_create | A supplier bill (AP invoice) is created. |
apinvoice_delete | A supplier bill (AP invoice) is deleted. | |
apinvoice_status_change | A supplier bill (AP invoice)'s status changes. | |
purchaseorder_create | A purchase order is created. | |
purchaseorder_update | A purchase order is updated. | |
purchaseorder_status_change | A purchase order's status changes. | |
purchaseorder_delete | A purchase order is deleted. | |
supplier_create | A supplier is created. | |
supplier_update | A supplier is updated. | |
supplier_delete | A supplier is deleted. | |
| Accounts | account_create | A ledger account is created. |
account_update | A ledger account is updated. | |
arinvoice_create | A customer invoice (AR invoice) is created. | |
arinvoice_delete | A customer invoice (AR invoice) is deleted. | |
arinvoice_status_change | A customer invoice (AR invoice)'s status changes. | |
banktransaction_create | A bank transaction is created. | |
banktransaction_delete | A bank transaction is deleted. | |
banktransaction_match | A bank transaction is matched. | |
costcentre_create | A cost centre is created. | |
costcentre_update | A cost centre is updated. | |
costcentre_delete | A cost centre is deleted. | |
journal_create | A journal entry is created. | |
paymentmethod_create | A payment method is created. | |
paymentmethod_update | A payment method is updated. | |
paymentmethod_delete | A payment method is deleted. | |
taxrate_create | A tax rate is created. | |
taxrate_update | A tax rate is updated. | |
taxrate_delete | A tax rate is deleted. | |
fixedasset_create | A fixed asset is created. | |
fixedassettype_create | A fixed asset type is created. | |
fixedasset_update | A fixed asset is updated. | |
fixedassettype_update | A fixed asset type is updated. | |
fixedassetdepreciation_reverse | A fixed asset depreciation is reversed. | |
fixedasset_depreciate | Fixed assets are depreciated. | |
| Company, stores and staff | company_create | A company is created. |
company_update | A company is updated. | |
store_create | A store is created. | |
store_update | A store is updated. | |
store_delete | A store is deleted. | |
posstaff_create | A POS staff member is created. | |
posstaff_update | A POS staff member is updated. | |
posstaff_forgot_password | A POS staff member asks to reset their password. | |
| Glue and logs | log_create | A log entry is created (use subtrigger to pick one category). |
glue_create | A Glue job is created. | |
glue_update | A Glue job is updated. | |
glue_delete | A Glue job is deleted. |
subtrigger: leave it empty. Its one use is with log_create: set it to a log category to run only for log entries in that category. For any other trigger, a subtrigger stops the Glue job from running.
Limits: a Glue job can run for 270 seconds in total, and a Script step or If Condition for 60 seconds. A response from another system can be up to 10 MB, and an inbound webhook body up to 1 MB (larger bodies get 413). Job variables are capped at 20 MB in total, checked after every step. Loops can run 10,000 iterations per job in total, and steps can be nested 10 levels deep. A Delay duration over 60 waits 60. Each company can run 10 Glue jobs at once; extra runs get 503 and are retried later without counting as errors. If a run fails, it's logged in Glue errors and retried. On a retry, top-level REST, API, Shopify GraphQL and Email steps that already succeeded are skipped and their response variables restored, but steps inside an If Condition or Loop run again. To try a job before it goes live, open it in the app and select Run.
