> For the complete documentation index, see [llms.txt](https://docs.flowbookings.io/knowledgebase/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flowbookings.io/knowledgebase/integrations/zapier-integration-guide/available-actions.md).

# Available Actions

Actions let Zapier make changes in your FlowBookings account automatically.

### How Actions Work

When a Zap runs, the action is the task that gets performed. Actions use information from the trigger (or previous steps) to update, create, or find items in FlowBookings.

{% hint style="warning" %}
**Note:** Actions require data from earlier steps in your Zap. You'll map fields from your trigger to the action.
{% endhint %}

***

### Update Booking Status

Change a booking's status automatically based on events in other apps.

#### Available Statuses

You can update bookings to any of these statuses:

* **APPROVED** - Confirm the booking
* **PENDING** - Move back to pending (rare, but available)
* **CANCELED** - Cancel the booking
* **REJECTED** - Decline the booking request
* **NO\_SHOW** - Mark that the customer didn't attend
* **COMPLETED** - Mark the service as delivered

#### When to Use This

**Approve bookings automatically:**

* When payment is received in Stripe
* When a contract is signed in DocuSign
* When a deposit is confirmed

**Cancel bookings automatically:**

* When a refund is issued in PayPal
* When a customer submits a cancellation form
* When payment fails

**Mark bookings complete:**

* When a meeting ends in Calendly
* When you log time in your time tracking app
* When a form is submitted confirming service delivery

**Mark as no-show:**

* When a Zoom meeting has no attendees
* When you manually mark it in another system

#### What Information You Need

To update a booking status, you'll need:

* **Booking ID** - Usually comes from a trigger like "New Booking"
* **New Status** - The status you want to set

#### Example Use Case

**Scenario:** You want to automatically approve bookings when customers pay via Stripe.

**Setup:**

1. Trigger: Charge Succeeded in Stripe
2. Filter: Only continue if charge metadata contains booking ID
3. Action: Update Booking Status in FlowBookings
   * Booking ID: Get from Stripe metadata
   * Status: APPROVED

**Result:** Customers get instant confirmation when they pay. No manual work needed.

#### Important Notes

* You **cannot** change the status of bookings that are already CANCELED, REJECTED, or COMPLETED
* Status changes are permanent and trigger email notifications to customers (if configured)
* Status names are case-insensitive (you can use "approved" or "APPROVED")

***

### Find Booking

Look up a specific booking by its ID and get all its details.

#### When to Use This

**Retrieve booking information:**

* Get booking details to include in emails
* Look up booking data before making decisions
* Pull booking information into other apps
* Verify booking exists before taking action

**Common scenarios:**

* Customer sends a booking ID in support ticket → Find booking → Display details
* External form submission includes booking ID → Find booking → Send confirmation
* Payment includes booking reference → Find booking → Update status

#### What Information You Need

* **Booking ID** - The unique identifier for the booking (usually from a form, email, or previous Zap step)

#### What Information You Get

When you find a booking, you'll receive all its details:

* Customer name and email
* Service name
* Booking date and time
* Current status
* Price
* Any custom form data
* Internal notes

#### Example Use Case

**Scenario:** Customers can submit a cancellation request form with their booking ID. You want to look up the booking and send them a confirmation.

**Setup:**

1. Trigger: New response in Google Forms
2. Action: Find Booking in FlowBookings
   * Booking ID: From form response
3. Action: Update Booking Status
   * Booking ID: From step 2
   * Status: CANCELED
4. Action: Send email in Gmail
   * To: Customer email from step 2
   * Include: Booking details and cancellation confirmation

**Result:** Self-service cancellations with automatic confirmations.

***

### Find Services

Retrieve all available services in your FlowBookings account.

#### When to Use This

* Sync your full service list to a Google Sheet
* Populate a dropdown in an external form with your current services
* Monitor when your service catalogue changes

#### What Information You Get

For each service you'll receive: service name and description, price, duration, category, capacity, buffer settings.

#### Example Use Case

**Scenario:** You want to keep a Google Sheet up to date with all your current services and prices.

**Setup:**

1. Trigger: Schedule in Zapier (runs daily)
2. Action: Find Services in FlowBookings
3. Action: Update rows in Google Sheets with returned service data

**Result:** Your service catalogue stays current automatically.

***

### Tips for Using Actions

#### Map Fields Correctly

When setting up actions, make sure you're pulling data from the right step in your Zap. Use the dropdown to select the correct field.

#### Handle Errors Gracefully

Add error handling to your Zaps:

* Use filters to check if required data exists before running actions
* Add notification steps if actions fail
* Test with various scenarios (missing data, wrong format, etc.)

#### Test Before Going Live

Always test your actions with real data to make sure they're updating the right bookings with the correct information.

#### Use Search Actions Wisely

"Find Booking" and "Find Services" actions count as tasks in Zapier. Only use them when you actually need to retrieve information.

#### Combine Multiple Actions

You can chain actions together in one Zap:

1. Find Booking (to get details)
2. Update Booking Status (to change status)
3. Send email (to notify customer)

This creates powerful automated workflows.

***

### Action Limits

#### Status Update Rules

* Cannot update bookings that are already in terminal states (CANCELED, REJECTED, COMPLETED)
* Status changes are immediate and cannot be undone
* Email notifications may be triggered (based on your FlowBookings settings)

#### Search Accuracy

* "Find Booking" and "Find Services" require exact ID matches
* If no matching item is found, the action will fail (you can configure error handling)

***

### Common Action Workflows

#### Payment → Approval Flow

1. **Trigger:** Payment received (Stripe, PayPal, etc.)
2. **Action:** Update Booking Status to APPROVED
3. **Action:** Send confirmation email

#### Cancellation → Cleanup Flow

1. **Trigger:** Cancellation request (form, email, etc.)
2. **Action:** Find Booking (get details)
3. **Action:** Update Booking Status to CANCELED
4. **Action:** Remove event from calendar
5. **Action:** Send cancellation confirmation

#### Service Completion Flow

1. **Trigger:** Meeting ends (Zoom, Calendly, etc.)
2. **Action:** Update Booking Status to COMPLETED
3. **Action:** Send follow-up email with review request

***

**Need help setting up an action?** Check out our [Getting Started](/knowledgebase/integrations/zapier-integration-guide.md) guide or visit the Zapier Integration overview.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.flowbookings.io/knowledgebase/integrations/zapier-integration-guide/available-actions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
