Six trigger types
Start from messages, keywords, new contacts, schedules, webhooks, or manual action.
Ecommerce support automation
SignalBX connects customer events to explicit, validated flows that can branch on context, wait without losing state, send channel-aware messages, update contacts, call webhooks, and retain the execution trail.
Start from messages, keywords, new contacts, schedules, webhooks, or manual action.
Choose explicit true and false paths, or wait for input with a timeout path.
Persist delayed continuation through the worker path with execution state intact.
Validate outbound content against the selected messaging channel.
Add tags or update approved contact identity and metadata fields.
Carry trigger values and step outputs forward through the execution.
Start with system recipes or maintain tenant-owned workflow templates.
Inspect status, current step, bounded output snapshots, errors, and duration.
One automation control plane
A flow keeps its triggers, channel, ordered step graph, lifecycle state, tags, execution count, schedule state, and ownership together. Teams can validate the definition before it is allowed to become active.
Keyword matchdelivery · tracking · late
StartSet variabletrackingStatus
Step 1Conditionstatus equals delayed
BranchSend messageShare delivery update
Add tagtracking-follow-up
Start from a real customer event
A flow can hold multiple enabled triggers. Channel scope and trigger configuration are evaluated against active tenant-owned flows before an execution record is created.
React to a normalized customer message and optional message filters.
Start when inbound text contains one of the configured terms.
Welcome or qualify a contact when the customer record is first created.
Use an ISO timestamp or cron expression with an optional IANA timezone.
Map a verified external event to an active flow path.
Start an active flow through an authorized execution request.
A guarded flow lifecycle
Draft and paused flows remain editable. Activation requires a complete, valid definition; active flows can be paused, and archived flows leave the operating set without erasing their identity.
DraftCompose triggers and the step graph
EditableValidateCheck schemas, references, reachability, and cycles
RequiredActiveAccept matching events and scheduled fires
RunningPause or archiveStop new work through explicit state changes
ControlledExplicit workflow definitions
Triggers and steps use a compact typed shape with named IDs and explicit edges. The same definition can be validated, saved as a template, activated as a flow, and inspected through the tenant API.
/api/v1/flows{
"name": "Delivery issue triage",
"channel": "whatsapp",
"triggers": [{
"triggerId": "tracking-keywords",
"type": "KEYWORD_MATCH",
"config": { "keywords": ["tracking", "late"] }
}],
"steps": [{
"stepId": "check-status",
"type": "CONDITION",
"config": {
"source": "message.content.text",
"operator": "contains",
"value": "late"
},
"trueStepId": "send-update",
"falseStepId": "tag-follow-up"
}, {
"stepId": "send-update",
"type": "SEND_MESSAGE",
"config": {
"text": "We are checking your delivery now."
}
}, {
"stepId": "tag-follow-up",
"type": "ADD_TAG",
"config": { "tag": "tracking-follow-up" }
}]
}
Seven building blocks
Every step has a distinct contract. Sequential edges handle the normal path, conditions choose true or false branches, and input waits can continue through a configured timeout path.
Render trigger or variable values into channel-aware outbound text and content.
Idempotent sendContinue after a validated delay using a persisted due job in worker mode.
Durable continuationCompare context with typed operators and select a true or false edge.
Explicit branchApply one or more rendered tags to the linked tenant contact.
Customer routingChange approved identity, tag, or metadata fields on the linked contact.
Controlled mutationSend a bounded HTTPS request with retries, idempotency, and optional response capture.
System handoffStore a static, rendered, or trigger-derived value for later steps.
Execution contextExecution-level accountability
Each run records its trigger event, linked customer context, variables, completed-step count, current step, lifecycle status, cancellation request, and error state. Step history adds snapshots and duration.
SET_VARIABLERead current tracking statusOutput saved · 18 ms
CompletedCONDITIONStatus equals delayedTrue path selected · 2 ms
CompletedSEND_MESSAGEShare delivery updateOutbound send queued · 41 ms
CompletedADD_TAGdelivery-update-sentContact updated · 12 ms
CompletedCustomer work, made repeatable
Pause briefly, send a channel-aware welcome, and carry the contact and conversation links through the run.
Contact trigger + delay + sendMatch a configured keyword, send an immediate response, and tag the customer for human follow-up.
Keyword + message + tagEvaluate the current time against a window and branch into the appropriate customer response.
Condition + branchPersist the delayed continuation so later work resumes from the intended step with its variables intact.
Durable delay + variablesVerify an inbound webhook, extract payload values, then send a notification or update customer context.
Webhook trigger + variableMove an execution into waiting state, retain a pending wait, and resume or follow its timeout path.
Wait + resume + timeoutAutomation with operational boundaries
Automation performs real sends and customer updates. SignalBX puts validation, durable state, bounded payloads, cancellation, permissions, and tenant isolation around those effects.
Automation questions
An active flow can start from an inbound message, a keyword match, contact creation, a schedule, a verified webhook, or an authorized manual execution. A flow can contain multiple enabled triggers.
Flows can send messages, delay continuation, evaluate a condition, add contact tags, update approved contact fields, call an outbound webhook, and set reusable execution variables.
Yes. Condition steps can select explicit true or false paths. A condition configured to wait for input can also continue through a timeout path if the wait expires.
With the worker path enabled, the execution stores a due continuation job instead of depending on one long-running in-memory timer. The next step and variables are retained for resumption.
A manager can pause an active flow to stop new matching starts. Running or waiting executions can also receive a cooperative cancellation request, while waiting executions can be resumed with authorized input.
Execution detail includes status, current step, variables, completed count, error, and customer links. Ordered step history adds per-step status, bounded snapshots, error detail, and duration.
The next action, already connected
Turn support signals into validated paths for messages, decisions, waits, customer updates, and system handoffs—while keeping every execution visible.