Actions

Automate your workspace with event-triggered actions, notifications, and webhooks.

Intermediate
6 min read

Actions

Actions automate your workspace. When something happens - a form submission, a task completion, a message - actions can automatically respond with notifications, task switches, webhooks, and more.

The Building Blocks

Every action has three parts:

  1. Trigger - What event fires this action?
  2. Conditions - Should it run this time? (optional CEL expressions)
  3. Action - What should happen?

Creating an Action

  1. Go to Actions
  2. Click New Action
  3. Configure your trigger, conditions, and action

Triggers

Pick what event fires your action:

CategoryEvents
TaskEntered, Exited
Data RecordCreated, Updated
MemberJoined, Left, Updated
ChatMessage sent (by user or assistant)

Action Types

ActionWhat It Does
Assistant MessageAI sends a message. Voice note: Continue immediately is supported for text chats and voice agents that use local/composable TTS. For native realtime model audio, Gravity Rail treats the message as Wait for reply until native audio playback can be safely ordered with the follow-up response.
Member NotifySend notification to team
Switch TaskMove to a different workflow step
Member LabelAdd or remove labels
Send WebhookPOST to an external URL
Form Field UpdateModify form data
Send EmailSend a templated email to the member
Send SMSSend a templated SMS message, optionally starting a conversation
Phone CallInitiate an AI-powered phone call using a workflow
Play AudioPlay a pre-recorded audio file on a phone call (disclosures, voicemail drops)
Create ChatOpen a new chat for a member on a specified channel and workflow
Continue ChatResume a scheduled callback conversation, using AI to decide whether continuation is needed
Pause ChatPause an active chat so a human agent can respond
Summarize ChatGenerate an AI summary of a chat conversation

Conditions with CEL

Use CEL (Common Expression Language) to control when actions fire.

Quick Reference

cel

Available Variables

VariableWhat It Contains
memberName, email, phone, date of birth, age, labels, form data
member.collectionsCollection form data: count, latest record, recent records
taskCurrent task info
chatChannel, paused state, test flag
phone_numberWorkspace phone number a voice/SMS chat arrived on (number, name, brand_name)
messageThe message content (for message events)
datetimeCurrent time in workspace timezone
is_business_hoursWhether it's within business hours

Common Patterns

VIP customers only:

cel

During business hours:

cel

Specific channel:

cel

Form field check:

cel

Delayed Actions

Schedule actions for later:

  1. Enable the delay option
  2. Set hours, minutes, or seconds
  3. Action runs after the delay

Great for:

  • Follow-up messages after 24 hours
  • Escalation if no response in 2 hours
  • Scheduled reminders

Webhooks

Send data to external systems when events happen.

Setup

  1. Create an action with Send Webhook type
  2. Enter your HTTPS endpoint URL
  3. Choose which events trigger it

Payload Format

json

Data is encrypted using your workspace's webhook key.

Common Automations

Route VIPs to priority queue:

  • Trigger: Task Entered
  • Condition: "vip" in member.labels
  • Action: Switch Task to "Priority Support"

Notify team on escalation:

  • Trigger: Task Entered (Escalation task)
  • Action: Member Notify to support team

Update CRM on signup:

  • Trigger: Member Joined
  • Action: Send Webhook to CRM API

Follow up after call:

  • Trigger: Task Exited (Call task)
  • Action: Switch Task to "Follow Up" (24h delay)

Tips

  • Start simple - One trigger, one action. Add complexity later.
  • Test with conditions - Use chat.is_test to run test conversations.
  • Order matters - Drag actions to control execution order.
  • Check logs - Failed actions show error details.

Chat Actions

Create Chat

Opens a new chat for a member on a specified channel and workflow. Use this to proactively start a conversation — for example, sending an outbound SMS after a form submission or initiating a voice callback.

Configuration options:

  • Channelsms, email, phone-voice, web, etc.
  • Workflow — The workflow the new chat will follow
  • Initial message — Optional opening message sent when the chat is created

Continue Chat

Resumes a scheduled callback conversation. An LLM evaluates the chat history and decides whether re-engagement is appropriate given the current context, avoiding unnecessary interruptions.

Configuration options:

  • Assistant prompt — Override the default continuation-decision prompt
  • Update type — Controls how the continuation decision is communicated back

Pause Chat

Pauses an active chat so a human agent can take over. The chat is marked as paused in the inbox and will not receive automated replies until a human responds or the pause is cleared.

Configuration options:

  • Message — Optional message sent to the member when the chat is paused (e.g., "A team member will be with you shortly")

Summarize Chat

Generates an AI summary of the chat conversation and stores it on the chat record. Useful for hand-off notes, post-call documentation, or building context before a follow-up workflow step.

Configuration options:

  • Summarization prompt — Custom instructions for what to focus on in the summary
  • Chat model — Override the default AI model used for summarization
  • CEL Expressions — Write conditions to control when actions fire
  • Webhooks — Send encrypted data to external systems
  • Workflows — Build the conversation flows that actions automate