> ## Documentation Index
> Fetch the complete documentation index at: https://help.hoopai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflow actions reference

> Complete reference of every workflow action available in HoopAI, organized by category with key settings and tips.

Actions are the steps that execute after a workflow trigger fires. You can chain multiple actions together, add delays, and use conditional logic to build sophisticated automations.

***

## Communication actions

| Action                    | What it does                              | Key settings                                      |
| ------------------------- | ----------------------------------------- | ------------------------------------------------- |
| **Send Email**            | Sends an email to the contact             | Template, subject, from name/address, attachments |
| **Send SMS**              | Sends an SMS text message                 | Message body, from number, media (MMS)            |
| **Send WhatsApp Message** | Sends a WhatsApp message                  | Template (approved), media                        |
| **Internal Notification** | Sends an alert to a team member           | Notification type (email, SMS, in-app), recipient |
| **Send Voicemail Drop**   | Delivers a pre-recorded voicemail         | Audio file, from number                           |
| **Send Review Request**   | Sends a review request via email or SMS   | Review platform link, template                    |
| **Send Document**         | Sends a document/contract for e-signature | Document template                                 |
| **Send Invoice**          | Sends an invoice to the contact           | Invoice template, products, amount                |
| **Make Phone Call**       | Initiates an outbound call                | From number, whisper message, recording           |
| **Send GMB Message**      | Replies via Google Business Profile       | Message body                                      |

<Tip>
  Use the **Test** button on any communication action to preview what the contact will receive before publishing the workflow.
</Tip>

***

## Contact and CRM actions

| Action                     | What it does                               | Key settings                       |
| -------------------------- | ------------------------------------------ | ---------------------------------- |
| **Create Contact**         | Creates a new contact record               | Fields to populate                 |
| **Update Contact Field**   | Changes a field value on the contact       | Field name, new value              |
| **Add Tag**                | Applies a tag to the contact               | Tag name                           |
| **Remove Tag**             | Removes a tag from the contact             | Tag name                           |
| **Add to Smart List**      | Adds the contact to a smart list           | List name                          |
| **Remove from Smart List** | Removes from a smart list                  | List name                          |
| **Add Note**               | Adds a note to the contact record          | Note text                          |
| **Create Task**            | Creates a task assigned to a user          | Title, due date, assigned user     |
| **Delete Contact**         | Permanently deletes the contact            | Confirmation required              |
| **Update DND**             | Sets Do-Not-Disturb on a channel           | Channel, on/off                    |
| **Assign User**            | Assigns or reassigns the contact to a user | User selection, round-robin option |
| **Copy Contact**           | Duplicates the contact to another account  | Target account                     |
| **Add Follower**           | Adds a user as a follower on the contact   | User                               |

***

## Opportunity and pipeline actions

| Action                        | What it does                             | Key settings                   |
| ----------------------------- | ---------------------------------------- | ------------------------------ |
| **Create Opportunity**        | Creates a new opportunity                | Pipeline, stage, value, source |
| **Update Opportunity**        | Changes opportunity fields               | Field, new value               |
| **Move Opportunity Stage**    | Moves to a specific pipeline stage       | Pipeline, target stage         |
| **Change Opportunity Status** | Sets status (open, won, lost, abandoned) | New status, lost reason        |
| **Delete Opportunity**        | Removes the opportunity                  | —                              |
| **Add Opportunity Follower**  | Adds a user follower                     | User                           |

***

## Logic and flow actions

| Action                        | What it does                                               | Key settings                                     |
| ----------------------------- | ---------------------------------------------------------- | ------------------------------------------------ |
| **If/Else**                   | Branches the workflow based on conditions                  | Condition rules (field values, tags, time, etc.) |
| **Wait**                      | Pauses execution for a set time                            | Duration (minutes, hours, days)                  |
| **Wait Until**                | Pauses until a condition is met or a date arrives          | Condition or date field                          |
| **Go To**                     | Jumps to another step in the workflow                      | Target step                                      |
| **Goal Event**                | Monitors for an event and exits the contact when it occurs | Event type                                       |
| **Split (A/B Test)**          | Randomly splits contacts down different paths              | Distribution percentage                          |
| **End Workflow**              | Stops the workflow for this contact                        | —                                                |
| **Add to Workflow**           | Enrolls the contact in another workflow                    | Target workflow                                  |
| **Remove from Workflow**      | Removes the contact from another workflow                  | Target workflow                                  |
| **Remove from All Workflows** | Unenrolls from every active workflow                       | —                                                |

<Warning>
  Be careful with "Remove from All Workflows" — it stops every active automation for that contact, including unrelated sequences.
</Warning>

***

## Data and integration actions

| Action                  | What it does                                        | Key settings               |
| ----------------------- | --------------------------------------------------- | -------------------------- |
| **Webhook**             | Sends data to an external URL (POST/GET)            | URL, method, headers, body |
| **Custom Webhook**      | Sends a structured payload to an external system    | URL, payload mapping       |
| **Google Sheets**       | Adds a row to a Google Sheet                        | Sheet, column mapping      |
| **Zapier**              | Triggers a Zapier zap                               | Zap webhook URL            |
| **Slack Notification**  | Posts a message to a Slack channel                  | Channel, message           |
| **Set Custom Value**    | Updates a location-level custom value               | Value name, new value      |
| **Math Operation**      | Performs arithmetic on a field                      | Field, operation, operand  |
| **Update Custom Field** | Sets a custom field to a calculated or static value | Field, value               |
| **Format Number**       | Formats a number value                              | Format pattern             |

***

## AI actions

| Action                 | What it does                                          | Key settings                         |
| ---------------------- | ----------------------------------------------------- | ------------------------------------ |
| **GPT-Powered Action** | Sends a prompt to an AI model and stores the response | Prompt template, model, output field |
| **AI Decision Maker**  | Uses AI to evaluate conditions and choose a branch    | Decision prompt, branch labels       |
| **Conversation AI**    | Hands off the conversation to an AI bot               | Bot selection, channel               |
| **Content AI**         | Generates content (email copy, SMS text) using AI     | Content type, prompt, tone           |

<Note>
  AI actions consume AI credits. Monitor usage in **Settings → Billing → Usage**.
</Note>

***

## Payment actions

| Action                     | What it does                                | Key settings                |
| -------------------------- | ------------------------------------------- | --------------------------- |
| **Create Invoice**         | Generates an invoice for the contact        | Products, amounts, due date |
| **Send Invoice**           | Sends an existing invoice                   | Invoice selection           |
| **Charge Subscription**    | Initiates or modifies a subscription charge | Product, amount, interval   |
| **Add to Membership**      | Grants access to a membership/course        | Offer, course               |
| **Remove from Membership** | Revokes membership access                   | Offer                       |

***

## Membership actions

| Action                      | What it does                          | Key settings  |
| --------------------------- | ------------------------------------- | ------------- |
| **Grant Course Access**     | Gives the contact access to a course  | Course, offer |
| **Revoke Course Access**    | Removes course access                 | Course        |
| **Grant Community Access**  | Adds the contact to a community group | Group         |
| **Revoke Community Access** | Removes community access              | Group         |

***

## Best practices

<AccordionGroup>
  <Accordion title="Always add a wait between communication steps">
    Sending an email and SMS simultaneously can feel spammy. Add a 5–15 minute wait between messages, or use a Wait Until action to check if the contact already responded.
  </Accordion>

  <Accordion title="Use If/Else to prevent duplicate actions">
    Before adding a tag or creating an opportunity, check if it already exists using an If/Else condition. This prevents duplicates and keeps your data clean.
  </Accordion>

  <Accordion title="Test webhooks with a tool like webhook.site">
    Before connecting to a production API, test your webhook action with a free tool like webhook.site to verify the payload format.
  </Accordion>

  <Accordion title="Name your actions clearly">
    Click on any action step and rename it to describe what it does (e.g., "Send welcome email" instead of "Send Email 1"). This makes debugging much easier.
  </Accordion>
</AccordionGroup>
