Guide
Every GoHighLevel Workflow Action
A complete index of the workflow actions available in the GoHighLevel workflow builder, grouped by category.
Last updated
How many workflow actions does GoHighLevel have?
128 distinct actions across 19 categories, as listed in the workflow builder's Actions panel. An action is a step a workflow performs once something has triggered it — sending a message, changing a field, moving an opportunity, waiting.
Communication is the largest category at 27 actions, spanning email, SMS, voice, and every messaging channel GoHighLevel integrates. Contact and Internal follow at 16 each; Internal is where the control-flow steps live, which is what turns a list of actions into an actual workflow. Conversation AI has grown into its own category at 8, separate from the Conversation AI entry that also appears under Communication.
How this list was produced, and its limits
Captured from the Actions panel of a live GoHighLevel workflow builder on 2026-01-02. It records exactly what the panel offered — names and categories, with no descriptions, because the panel displays none. We have not written summaries for individual actions rather than guess at behaviour we cannot verify.
Three things to know about the count. Book Appointment is filed under both Communication and Conversation AI, so the panel shows 129 entries for 128 distinct actions. The builder's Apps tab carries third-party integration actions that vary by what a sub-account has connected, and is not included. And GoHighLevel ships changes continuously — treat the capture date as the accuracy boundary.
Every action, by category
Grouped as the builder groups them. Names are reproduced exactly, including the BETA markers GoHighLevel attaches to some of them.
Contact
16 actions
- Create Contact
- Find Contact
- Update Contact Field
- Add Contact Tag
- Remove Contact Tag
- Assign To User
- Remove Assigned User
- Enable/Disable DND
- Add To Notes
- Copy Contact
- Edit Conversation
- Add Task
- Delete Contact
- Modify Contact Engagement Score
- Add Contact Followers
- Remove Contact Followers
Custom Objects
5 actions
- Create Associated Record For Contact
- Update Associated Record For Contact
- Clear Fields Of Associated Record For Contact
- Remove Associated Records From Workflow (BETA)
- Add Associated Records To Workflow (BETA)
Communication
27 actions
- Send Email
- Send SMS
- Slack
- Call
- Voicemail
- Messenger
- Instagram DM
- Manual Action To SMS
- Manual Action To Call
- GMB Messaging
- Send Internal Notification
- Send Review Request
- Conversation AI
- Facebook Interactive Messenger (BETA)
- Instagram Interactive Messenger (BETA)
- Reply In Comments (BETA)
- WhatsApp: Customer Service Window Check
- WhatsApp: Send Flows
- Send Live Chat Message
- Appointment Booking Conversation AI Bot (BETA)
- Update Conversation AI Bot And Status
- Book Appointment
- Log External Call
- WhatsApp Media
- WhatsApp Interactive Messages
- TikTok Interactive Messenger (BETA)
Send Data
3 actions
- Webhook
- Custom Webhook
- Google Sheets
Internal
16 actions
- If / Else
- Wait
- Goal Event
- Split
- Update Custom Value
- Go To
- Date/Time Formatter
- Number Formatter
- Math Operation
- Set Event Start Date
- Add To Workflow
- Remove From Workflow
- Array Functions
- Drip
- Text Formatter
- Custom Code (BETA)
External AI Models
4 actions
- GPT Powered By OpenAI
- Eliza
- Eliza AI Appointment Booking
- Send To Eliza Agent Platform
Appointments
3 actions
- Update Appointment Status
- Create Appointment Note
- Generate One Time Booking Link
Opportunity
9 actions
- Create/Update Opportunity
- Remove Opportunity
- Add Owner To Opportunity (BETA)
- Remove Owner From Opportunity (BETA)
- Add Follower(S) To Opportunity (BETA)
- Remove Follower(S) From Opportunity (BETA)
- Find Opportunity (BETA)
- Create Opportunity (BETA)
- Update Opportunity (BETA)
Payments
5 actions
- Stripe One Time Charge
- Send Invoice
- Send Estimate
- Send Documents & Contracts
- Send Recurring Invoice
Marketing
5 actions
- Add To Google Analytics
- Add To Google Ads
- Facebook - Add To Custom Audience
- Facebook - Remove From Custom Audience
- Meta Conversion API
Affiliate
6 actions
- Add To Affiliate Manager
- Update Affiliate
- Add To Affiliate Campaign
- Remove From Affiliate Campaign
- Add Leads Under An Affiliate
- Add Manual Sales For An Affiliate
Membership
2 actions
- Course Grant Offer
- Course Revoke Offer
IVR
5 actions
- Gather Input On Call
- SAY OR PLAY MESSAGE
- Connect To Call
- End Call
- Record Voicemail
Certificates
1 action
- Issue Certificate
AI Actions
4 actions
- AI Translate
- AI Summarize
- AI Intent Detection
- AI Decision Maker
Communities
6 actions
- Smart Push Notification
- Grant Group Access
- Revoke Group Access
- Grant Private Channel Access
- Revoke Private Channel Access
- Grant Community Group Leaderboard Points
Company
3 actions
- Create And Associate Company (BETA)
- Update Associated Company (BETA)
- Clear Associated Company Fields (BETA)
Conversation AI
8 actions
- AI Capture Information
- Book Appointment
- End Conversation
- AI Splitter
- AI Message
- Custom Message
- Transfer Bot
- Continue Conversation
Voice AI
1 action
- Voice AI Outbound Call (BETA)
Where the API overlaps with these actions
Many of these actions have a direct API equivalent, and knowing which is the difference between automating something in an afternoon and rebuilding it in the wrong place. Broadly: the Contact, Communication, and Opportunity actions map onto published endpoints; the control-flow steps in Internal do not, because they only mean something inside a running workflow.
Add Contact Tag corresponds to POST /contacts/:contactId/tags, Update Contact Field to PUT /contacts/:contactId, and the messaging actions to the conversations endpoints. What has no API equivalent is the workflow itself — no published endpoint reads or writes its steps, as covered in the triggers guide.
The useful rule for choosing between them: workflows are for ongoing behaviour, the API is for one-off changes. A rule that should keep applying to every new contact belongs in a workflow, where it runs unattended. A backfill across 4,000 existing contacts is a batching problem — enrolling them all into a workflow to change one field is slower, harder to verify, and harder to stop halfway.
Common questions
How many workflow actions does GoHighLevel have?
128 distinct actions across 19 categories, as listed in the workflow builder's Actions panel when we captured it on 2026-01-02. Book Appointment is filed under two categories, so the panel shows 129 entries in total. The builder also has an Apps tab for third-party integration actions, excluded here because they vary by sub-account.
Can I add a workflow action through the GoHighLevel API?
No. GoHighLevel's public API has one workflows endpoint, GET /workflows/, which lists workflows. No published endpoint reads or writes the actions inside a workflow, so actions are configured in the builder UI.
Can GoHighLevel workflows run custom code?
The builder's Internal category includes a Custom Code action marked BETA, which GoHighLevel documents as executing JavaScript within a workflow. As with anything carrying a beta label, check its current status in your own account before depending on it.
Should I use a workflow action or the API to update many contacts?
Use the API for one-off bulk changes and workflows for ongoing behaviour. A workflow runs per contact and is the right home for rules that should keep applying; a backfill across an existing list is a batching problem the API handles directly.
Keep reading
- Every GoHighLevel Workflow TriggerThe other half of the builder — what starts a workflow running.
- Bulk Operations on the GoHighLevel APIWhen to drive many records through the API instead of through a workflow.
- Conversations API referenceThe API equivalent of the builder's Communication actions, with schemas.