Skip to main content

Action Reference

Complete reference for all action node types available in the Benchwork workflow editor.

Communication

SEND_EMAIL

Send a customizable email via SendGrid or your configured SMTP. Supports template variables from execution context.

SEND_SMS

Send an SMS via Twilio. Configure recipient, message body, and opt-out handling.

SLACK_NOTIFICATION

Post a message to a Slack channel or DM. Configure webhook URL and message format.

Shopify

TAG_CUSTOMER

Add or remove tags on a Shopify customer. Supports multiple tags at once.

CREATE_DISCOUNT

Create a Shopify discount code (percentage or fixed amount) with configurable expiry, usage limits, and minimum order value.

UPDATE_INVENTORY

Adjust inventory levels for a product variant at a specific location.

UPDATE_SHOPIFY

Generic Shopify REST API action. Update any resource — orders, products, customers, metafields, and more.

CREATE_DRAFT_ORDER

Create a Shopify draft order programmatically. Useful for custom checkout flows.

Shopify (Deep)

METAFIELD_MANAGER

Read and write Shopify metafields on any resource type.

BULK_OPERATION

Queue and poll a Shopify bulk operation. Returns a JSONL download URL when complete.

INVENTORY_TRANSFER

Transfer inventory between locations using the Shopify Transfers API.

CUSTOMER_SEGMENT

Add or remove a customer from a Shopify segment.

LIQUID_TEMPLATE

Render a Liquid template with execution context data. Useful for custom notifications.

DRAFT_ORDER_PIPELINE

Multi-step draft order pipeline: create → complete → invoice.

Integration

HTTP_REQUEST

Make an outbound HTTP request to any URL. Supports GET, POST, PUT, DELETE. Configure headers, body, and response handling.

SEND_NOTIFICATION

Send a notification via the configured notification channel (email, push, or webhook).

UPDATE_FIRESTORE

Write data to a Firestore document path. Useful for cross-workflow state sharing.

Operations

GENERATE_LABEL

Generate a barcode label PDF for a product. Sends to the configured Rollo print queue.

Flow

DELAY

Pause execution for a specified duration. Supports seconds, minutes, hours, or days.

Advanced

CODE_EXECUTION

Run a JavaScript snippet in a sandboxed V8 context. Full access to execution context. 5-second timeout.

LOOP

Iterate over an array and run the child workflow for each item. Configurable concurrency and error handling.

AGGREGATOR

Collect outputs from a loop and aggregate them into a single array.

ERROR_HANDLER

Catch errors from the preceding node and route to a recovery branch or notification.

SUB_WORKFLOW

Invoke another workflow as a sub-routine. Pass data in and receive results back.

Template Variables

All action node configurations support template variable interpolation using double-brace syntax:{{variable}}.

Available variables in every workflow run:

  • {{trigger.*}} — The full Shopify webhook payload
  • {{nodes.[nodeId].output}} — Output from a specific node
  • {{env.STORE_DOMAIN}} — Your store domain
  • {{workflow.id}} — Current workflow ID
  • {{execution.id}} — Current execution ID