Documentation Index
Fetch the complete documentation index at: https://docs.plura.ai/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Zenoti is a unified CRM and operations platform for salons, spas, medspas, and fitness studios. The zenoti automation type fans out to ~160 actions across reference data, centers, services, employees, guests, memberships, bookings, appointments, invoices, payments, gift cards, opportunities, reports, inventory, classes, blockouts, organizations, and a generic raw-request escape hatch.
Every action is invoked the same way — automationType: "zenoti", an action name, and a params object whose shape depends on the action. Most actions follow a consistent pattern:
apiKey — always at the top level of params.
- Path IDs (
centerId, guestId, appointmentId, invoiceId, roomId, employeeId, membershipId, …) — top level.
query — nested object with query-string filters (pagination, dates, etc.).
body — nested object with the POST/PUT request body.
Authentication
- Zenoti API key — generate it in Admin → Configuration → Apps. The integration sends it as
Authorization: apikey <key>.
Common parameters
apiKey (required for every action).
centerId (required for center-scoped actions; the Zenoti location UUID).
- Pagination: most list endpoints accept
query.page (1-based) and query.size (default 10, max 100).
- Dates: ISO-8601 (
YYYY-MM-DD or full timestamp depending on the endpoint).
Available Actions
Reference
Centers
Services
Employees
Guests
Guest Memberships
Bookings
Appointments
Invoices
Gift Cards
Opportunities
Reports
Inventory
Classes
Blockouts
Organizations
Miscellaneous
Examples
Example 1: List Countries
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_countries",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": { "page": 1, "size": 100 }
}
}
}
Example 2: List States
States within a country.
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_states",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"countryId": "225",
"query": { "page": 1, "size": 100 }
}
}
}
Example 3: List Reasons
Standard reasons (cancellation, freeze, etc.).
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_reasons",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 4: List Gift Card Occasions
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_gift_card_occasions",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 5: List Vendors
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_vendors",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 6: List Centers
All centers in the org.
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_centers",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": { "page": 1, "size": 50, "catalog_enabled": true }
}
}
}
Example 7: Get Center
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000"
}
}
}
Example 8: List Center Rooms
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_rooms",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50 }
}
}
}
Example 9: List Center Categories
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_categories",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50, "type": "service" }
}
}
}
Example 10: List Center Therapists
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_therapists",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50, "service_id": "service-uuid" }
}
}
}
Example 11: List Center Products
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_products",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50 }
}
}
}
Example 12: List Center Packages
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_packages",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50 }
}
}
}
Example 13: Get Center Attendance
Daily attendance roster for a center.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_attendance",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "date": "2026-04-30" }
}
}
}
Example 14: Get Center Category
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_category",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"categoryId": "category-uuid"
}
}
}
Example 15: Get Center Room
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_room",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"roomId": "room-uuid"
}
}
}
Example 16: List Center Blockouts
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_blockouts",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "start_date": "2026-04-01", "end_date": "2026-04-30" }
}
}
}
Example 17: List Center Memberships
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_memberships",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50, "status": "active" }
}
}
}
Example 18: Get Center Members
Active membership holders at a center.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_members",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "status": "active", "page": 1, "size": 50 }
}
}
}
Example 19: List Services
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_services",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50, "show_in_catalog": true }
}
}
}
Example 20: Get Service
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_service",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"serviceId": "service-uuid"
}
}
}
Example 21: Get Service Pricing
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_service_pricing",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"serviceId": "service-uuid",
"query": { "therapist_id": "therapist-uuid", "gender": "female" }
}
}
}
Example 22: List Employees
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_employees",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50 }
}
}
}
Example 23: Get Employee
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_employee",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid"
}
}
}
Example 24: Create Employee
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_employee",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"personal_info": {
"first_name": "Jane",
"last_name": "Doe",
"email": "jane.doe@example.com",
"mobile_phone": { "country_code": 225, "number": "5551234567" }
},
"job_info": {
"center_id": "00000000-0000-0000-0000-000000000000",
"job_id": "job-uuid"
}
}
}
}
}
Example 25: Update Employee
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_employee",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"body": {
"personal_info": { "email": "new.email@example.com" }
}
}
}
}
Example 26: Employee Check-in
{
"automationType": "zenoti",
"nodeParams": {
"action": "employee_checkin",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid"
}
}
}
Example 27: Employee Check-out
{
"automationType": "zenoti",
"nodeParams": {
"action": "employee_checkout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid"
}
}
}
Example 28: Get Employee Attendance
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_employee_attendance",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 29: Search Guests
Search by any combination of email, phone, name, code. center_id is required.
{
"automationType": "zenoti",
"nodeParams": {
"action": "search_guests",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"email": "guest@example.com"
}
}
}
}
Example 30: List Guests
Bulk list guests at a center.
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guests",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"page": 1,
"size": 50
}
}
}
}
Example 31: Get Guest
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_guest",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid"
}
}
}
Example 32: Create Guest
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_guest",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"personal_info": {
"first_name": "Alex",
"last_name": "Smith",
"gender": -1,
"email": "alex.smith@example.com",
"mobile_phone": { "country_code": 225, "number": "5551234567" }
}
}
}
}
}
Example 33: Update Guest
Full replace — pass any subset of the create body that you want to overwrite.
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_guest",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"personal_info": { "email": "new.email@example.com" }
}
}
}
}
Example 34: List Guest Appointments
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_appointments",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 35: List Guest Products
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_products",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 36: List Guest Saved Cards
⚠️ Tenant-config dependent. Only available on tenants with a PCI-compliant payment processor wired up. Note the capital I in center_Id.
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_saved_cards",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": {
"center_Id": "00000000-0000-0000-0000-000000000000",
"get_shared_cards": false,
"get_expired_cards": false
}
}
}
}
Example 37: Add Guest Card
Returns a hosted-payment-page redirect URL for the guest to enter card details (PCI compliant).
{
"automationType": "zenoti",
"nodeParams": {
"action": "add_guest_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"redirect_uri": "https://example.com/return",
"share_cards_to_web": true
}
}
}
}
Example 38: Delete Guest Saved Card
{
"automationType": "zenoti",
"nodeParams": {
"action": "delete_guest_saved_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"cardId": "card-token-id"
}
}
}
Example 39: Create Guest Note
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_guest_note",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"notes": "VIP guest — prefers afternoon appointments.",
"note_type": 1,
"center": { "id": "00000000-0000-0000-0000-000000000000" },
"is_private": false,
"alert": false
}
}
}
}
Example 40: List Guest Notes
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_notes",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 41: Update Guest Note
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_guest_note",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"noteId": "note-uuid",
"body": {
"notes": "Updated note text",
"note_type": 1,
"center": { "id": "00000000-0000-0000-0000-000000000000" }
}
}
}
}
Example 42: Delete Guest Note
{
"automationType": "zenoti",
"nodeParams": {
"action": "delete_guest_note",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"noteId": "note-uuid"
}
}
}
Example 43: List Guest Gift Cards
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_gift_cards",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 44: List Guest Packages
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_packages",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 45: List Guest Loyalty Points
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_loyalty_points",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid"
}
}
}
Example 46: Get Guest Loyalty Points History
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_guest_loyalty_points_history",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 47: Add / Remove Loyalty Points
Points is positive to add, negative to remove. Note PascalCase fields.
{
"automationType": "zenoti",
"nodeParams": {
"action": "add_remove_loyalty_points",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"GuestId": "guest-uuid",
"CenterId": "00000000-0000-0000-0000-000000000000",
"Points": 100,
"Comments": "Promotional bonus"
}
}
}
}
Example 48: List Guest Relationships
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_relationships",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid"
}
}
}
Example 49: Guest Reset Password
Triggers a password reset email/SMS for the guest.
{
"automationType": "zenoti",
"nodeParams": {
"action": "guest_reset_password",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"email_or_phone": "guest@example.com",
"first_name": "Alex"
}
}
}
}
Example 50: Update Guest Password
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_guest_password",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"new_password": "NewSecurePassword123!",
"old_password": "OldPassword"
}
}
}
}
Example 51: Update Billing Address
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_billing_address",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"cardId": "card-token-id",
"body": {
"address1": "123 Main St",
"city": "San Antonio",
"state_id": "1",
"country_id": "225",
"zip_code": "78244"
}
}
}
}
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_guest_form",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"form_id": "form-uuid",
"data": "{\"q1\":\"answer\"}",
"is_form_submitted": true
}
}
}
}
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_guest_form",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"versionNo": "1"
}
}
}
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_guest_form",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"body": {
"form_id": "form-uuid",
"data": "{\"q1\":\"updated\"}"
}
}
}
}
Example 55: List Guest Memberships
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_memberships",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": { "center_id": "00000000-0000-0000-0000-000000000000" }
}
}
}
Example 56: Get Guest Pending Collection
Outstanding balance owed on a membership.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_guest_pending_collection",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"membershipId": "membership-uuid"
}
}
}
Example 57: Cancel Membership
{
"automationType": "zenoti",
"nodeParams": {
"action": "cancel_membership",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"membershipId": "membership-uuid",
"body": {
"cancellation_date": "2026-04-30",
"termination_date": "null"
}
}
}
}
Example 58: Freeze Membership
{
"automationType": "zenoti",
"nodeParams": {
"action": "freeze_membership",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"membershipId": "membership-uuid",
"body": {
"start_date": "2026-05-01",
"end_date": "2026-05-31"
}
}
}
}
Example 59: Unfreeze Membership
{
"automationType": "zenoti",
"nodeParams": {
"action": "unfreeze_membership",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"membershipId": "membership-uuid",
"body": { "reason": "Guest returned early" }
}
}
}
Example 60: Change Membership Renewal
Toggle auto-renewal on/off.
{
"automationType": "zenoti",
"nodeParams": {
"action": "change_membership_renewal",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"membershipId": "membership-uuid",
"body": { "auto_renew": false, "reason": "Guest request" }
}
}
}
Example 61: Create Booking
A “booking” is a holding container for one or more service slots before they are confirmed as appointments.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_booking",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"date": "2026-05-01",
"guests": [
{
"id": "guest-uuid",
"items": [{ "item": { "id": "service-uuid" } }]
}
]
}
}
}
}
Example 62: Get Booking Slots
Available time slots for a booking.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_booking_slots",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"bookingId": "booking-uuid",
"query": { "check_future_day_availability": true }
}
}
}
Example 63: Reserve Slot
{
"automationType": "zenoti",
"nodeParams": {
"action": "reserve_slot",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"bookingId": "booking-uuid",
"body": {
"slot_time": "2026-05-01T10:00:00",
"create_invoice": true
}
}
}
}
Example 64: Confirm Slot
Converts the reserved slot into a confirmed appointment.
{
"automationType": "zenoti",
"nodeParams": {
"action": "confirm_slot",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"bookingId": "booking-uuid",
"body": { "notes": "Booked via website" }
}
}
}
Example 65: List Appointments
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_appointments",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-30",
"end_date": "2026-04-30",
"include_no_show_cancel": false
}
}
}
}
Example 66: Get Appointment
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_appointment",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid"
}
}
}
Example 67: Mark Appointment No-Show
{
"automationType": "zenoti",
"nodeParams": {
"action": "mark_appointment_no_show",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid",
"body": { "comments": "Guest didn't arrive within 15 min" }
}
}
}
Example 68: Appointment Check-in
{
"automationType": "zenoti",
"nodeParams": {
"action": "appointment_check_in",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid"
}
}
}
Example 69: Undo Appointment Check-in
{
"automationType": "zenoti",
"nodeParams": {
"action": "undo_appointment_check_in",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid"
}
}
}
Forms attached to an appointment (intake, consent, etc.).
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_appointment_forms",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid"
}
}
}
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_appointment_form",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"appointmentId": "appointment-uuid",
"formId": "form-uuid"
}
}
}
Example 72: Create Invoice
Creates an open product invoice.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"guest_id": "guest-uuid",
"products": [
{ "id": "product-uuid", "quantity": 1 }
],
"notes": "Walk-in retail purchase"
}
}
}
}
Example 73: Get Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"query": { "expand": "items,payments" }
}
}
}
Example 74: Close Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "close_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": { "is_invoice_closed": true, "status": 2 }
}
}
}
Example 75: Cancel Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "cancel_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": { "comments": "Guest cancelled before service" }
}
}
}
Example 76: Email Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "email_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": { "email": "guest@example.com" }
}
}
}
Example 77: Add Invoice Membership
{
"automationType": "zenoti",
"nodeParams": {
"action": "add_invoice_membership",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"user_id": "guest-uuid",
"membership_ids": ["membership-template-uuid"]
}
}
}
}
Example 78: Add Invoice Product
{
"automationType": "zenoti",
"nodeParams": {
"action": "add_invoice_product",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"products": [{ "id": "product-uuid", "quantity": 2 }]
}
}
}
}
Example 79: Remove Invoice Product
{
"automationType": "zenoti",
"nodeParams": {
"action": "remove_invoice_product",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"productId": "product-line-item-uuid"
}
}
}
Example 80: Remove Invoice Membership
{
"automationType": "zenoti",
"nodeParams": {
"action": "remove_invoice_membership",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"membershipId": "membership-line-item-uuid"
}
}
}
Example 81: Pay Invoice — Saved Card
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_invoice_saved_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"account_id": "card-token-id",
"center_id": "00000000-0000-0000-0000-000000000000",
"redirect_uri": "https://example.com/return",
"source": 0,
"tip_amount": 5
}
}
}
}
Example 82: Pay Invoice — Gift Card
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_invoice_gift_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"card_number": "GC123456",
"amount": 100,
"tip_amount": 0
}
}
}
}
Example 83: Pay Invoice — Custom
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_invoice_custom",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"amount": 100,
"cash_register_id": "register-uuid",
"custom_payment_id": "custom-payment-method-uuid"
}
}
}
}
Example 84: Pay Invoice — Tip
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_invoice_tip",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"account_id": "card-token-id",
"center_id": "00000000-0000-0000-0000-000000000000",
"tip_amount": 10
}
}
}
}
Example 85: Pay Invoice — New Card
⚠️ PCI-gated. Only enabled on tenants whose payment processor supports server-side card capture.
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_invoice_new_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"allow_new_card": true,
"amount": 100,
"card": {
"number": "4111111111111111",
"cvv": "123",
"expiry_month": 12,
"expiry_year": 2030
},
"save_card": false
}
}
}
}
Example 86: Email Invoice Gift Card
Send an e-gift-card email to the recipient associated with an invoice.
{
"automationType": "zenoti",
"nodeParams": {
"action": "email_invoice_gift_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"recipient_email": "recipient@example.com",
"recipient_name": "Sam",
"message": "Happy birthday!"
}
}
}
}
Example 87: Apply Campaign Offer
{
"automationType": "zenoti",
"nodeParams": {
"action": "apply_campaign_offer",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"offer_code": "SPRING25",
"center_id": "00000000-0000-0000-0000-000000000000"
}
}
}
}
Example 88: Redeem Loyalty Points (Invoice)
{
"automationType": "zenoti",
"nodeParams": {
"action": "redeem_loyalty_points_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"points": 500,
"center_id": "00000000-0000-0000-0000-000000000000"
}
}
}
}
Example 89: Sell Package
Creates a package-sale invoice for a guest.
{
"automationType": "zenoti",
"nodeParams": {
"action": "sell_package",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"guest_id": "guest-uuid",
"center_id": "00000000-0000-0000-0000-000000000000",
"package_details": [{ "package_id": "package-uuid", "quantity": 1 }]
}
}
}
}
Example 90: Redeem Package
{
"automationType": "zenoti",
"nodeParams": {
"action": "redeem_package",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": {
"package_user_ids": ["package-user-uuid"]
}
}
}
}
Example 91: Create Product Invoice
Same shape as create_invoice — explicit alias.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_product_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"guest_id": "guest-uuid",
"products": [{ "id": "product-uuid", "quantity": 1 }]
}
}
}
}
Example 92: Create Group Invoice
Roll up multiple individual invoices under a single group billing.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_group_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"group_name": "Bridal party — Smith",
"invoice_ids": ["invoice-uuid-1", "invoice-uuid-2"]
}
}
}
}
Example 93: Get Group Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_group_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"groupId": "group-uuid"
}
}
}
Example 94: Email Group Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "email_group_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"groupId": "group-uuid",
"body": {
"guest_details": [
{ "guest_id": "guest-uuid", "email": "guest@example.com" }
]
}
}
}
}
Example 95: Create Gift Card Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_gift_card_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"guest_id": "guest-uuid",
"giftcards": [
{ "template_id": "gc-template-uuid", "amount": 100 }
]
}
}
}
}
Example 96: Get Gift Card Balance
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_gift_card_balance",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"giftCardId": "gift-card-id"
}
}
}
Example 97: Create Custom Amount GC Template
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_custom_amount_gc_template",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"custom_amount": { "amount": 50, "validity": 365 }
}
}
}
}
Example 98: Create Service GC Template
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_service_gc_template",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"services": [{ "service_id": "service-uuid", "quantity": 1 }]
}
}
}
}
Example 99: List Gift Card Templates
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_gift_card_templates",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"page": 1,
"size": 50
}
}
}
}
Example 100: List Center Gift Card Templates
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_center_gift_card_templates",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": { "page": 1, "size": 50 }
}
}
}
Example 101: Create Opportunity
CRM lead/opportunity — Zenoti’s sales pipeline.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_opportunity",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"opportunity_title": "Annual membership",
"opportunity_owner_id": "owner-uuid",
"guest_id": "guest-uuid",
"expected_close_date": "2026-06-01",
"offered_amount": 1200
}
}
}
}
Example 102: List Opportunities
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_opportunities",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"view_id": "view-uuid",
"page_num": 1,
"records": 50
}
}
}
}
Example 103: Get Opportunity
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_opportunity",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"opportunityId": "opportunity-uuid"
}
}
}
Example 104: Update Opportunity
Body shape mirrors create_opportunity.
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_opportunity",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"opportunityId": "opportunity-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"opportunity_title": "Annual membership — discounted",
"opportunity_owner_id": "owner-uuid",
"guest_id": "guest-uuid",
"offered_amount": 1100
}
}
}
}
Returns priority types, statuses, dispositions, custom fields, etc.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_opportunity_metadata",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 106: Create Opportunity Note
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_opportunity_note",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"opportunityId": "opportunity-uuid",
"body": { "notes": "Left voicemail" }
}
}
}
Example 107: List Opportunity Notes
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_opportunity_notes",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"opportunityId": "opportunity-uuid",
"query": { "page": 1, "size": 50 }
}
}
}
Example 108: Get Center Collections Report
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_collections_report",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": {
"start_date": "2026-04-01",
"end_date": "2026-04-30",
"include_transactions": true,
"include_employee_tips": true
}
}
}
}
Example 109: Get Center Sales Report
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_center_sales_report",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"centerId": "00000000-0000-0000-0000-000000000000",
"query": {
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 110: Get Inventory Stock
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_inventory_stock",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"inventory_date": "2026-04-30"
}
}
}
}
Example 111: Get Inventory Consumption
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_inventory_consumption",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 112: List Purchase Orders
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_purchase_orders",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 113: Get Purchase Order
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_purchase_order",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"poId": "purchase-order-uuid"
}
}
}
Example 114: List Transfer Orders
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_transfer_orders",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 115: Get Transfer Order
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_transfer_order",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"toId": "transfer-order-uuid"
}
}
}
Example 116: List Class Registrations
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_class_registrations",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"classId": "class-uuid",
"query": {
"session_id": "session-uuid",
"center_id": "00000000-0000-0000-0000-000000000000",
"page": 1,
"size": 50
}
}
}
}
Example 117: Register Guest to Class
{
"automationType": "zenoti",
"nodeParams": {
"action": "register_guest_to_class",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"classId": "class-uuid",
"body": {
"guest_id": "guest-uuid",
"session_id": "session-uuid",
"center_id": "00000000-0000-0000-0000-000000000000",
"waitlist": false,
"add_to_all": false
}
}
}
}
Example 118: Register via Gympass
{
"automationType": "zenoti",
"nodeParams": {
"action": "register_via_gympass",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"provider_registration_id": "gympass-id",
"account_name": "GymPass",
"center_id": "00000000-0000-0000-0000-000000000000",
"schedule_id": "session-uuid",
"user": {
"personal_info": {
"first_name": "Alex",
"last_name": "Smith",
"email": "alex@example.com"
}
}
}
}
}
}
Example 119: Cancel Class Registration
{
"automationType": "zenoti",
"nodeParams": {
"action": "cancel_class_registration",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"classId": "class-uuid",
"registrationId": "registration-uuid",
"body": { "waive_fee": true }
}
}
}
Example 120: Cancel Workshop Registration
{
"automationType": "zenoti",
"nodeParams": {
"action": "cancel_workshop_registration",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"workshopId": "workshop-uuid",
"registrationId": "registration-uuid",
"body": { "waive_fee": false }
}
}
}
Example 121: Admin Enroll Class
Admin-only enrollment that bypasses the standard guest-side flow.
{
"automationType": "zenoti",
"nodeParams": {
"action": "admin_enroll_class",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"sessionId": "session-uuid",
"body": {
"SessionId": 12345,
"GuestId": "guest-uuid",
"Notes": "Comp enrollment"
}
}
}
}
Example 122: List Guest Class Sessions
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_guest_class_sessions",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"guestId": "guest-uuid",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 123: Cancel Class Session Registrations
Cancels every registration on a session.
{
"automationType": "zenoti",
"nodeParams": {
"action": "cancel_class_session_registrations",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"sessionId": "session-uuid"
}
}
}
Example 124: Create Class Membership Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_class_membership_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"user_id": "guest-uuid",
"membership_version_ids": ["membership-version-uuid"]
}
}
}
}
Example 125: Create Series Package Invoice
Note the mixed PascalCase / camelCase Zenoti uses here.
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_series_package_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"body": {
"CenterId": "00000000-0000-0000-0000-000000000000",
"userId": "guest-uuid",
"packageIds": ["series-package-uuid"]
}
}
}
}
Example 126: Book Class Session
{
"automationType": "zenoti",
"nodeParams": {
"action": "book_class_session",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"sessionId": "session-uuid",
"body": {
"BookingSource": 1,
"sessionId": "session-uuid"
}
}
}
}
Example 127: Close Series Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "close_series_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": { "is_invoice_closed": true }
}
}
}
Example 128: Close Membership Invoice
{
"automationType": "zenoti",
"nodeParams": {
"action": "close_membership_invoice",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"invoiceId": "invoice-uuid",
"body": { "is_invoice_closed": true }
}
}
}
Example 129: Pay Class Booking — Saved Card
{
"automationType": "zenoti",
"nodeParams": {
"action": "pay_class_booking_saved_card",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"bookingId": "booking-uuid",
"body": {
"transactionDetails": {
"PaymentaccountID": "card-token-id",
"Source": 0,
"transactionType": 1
}
}
}
}
}
Example 130: List Class Booking Payment Methods
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_class_booking_payment_methods",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 131: List Class Memberships
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_class_memberships",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"page": 1,
"size": 50
}
}
}
}
Example 132: List Class Packages
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_class_packages",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"page": 1,
"size": 50
}
}
}
}
Example 133: List Class Sessions
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_class_sessions",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 134: Create Room Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_room_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T09:00:00",
"end_time": "2026-05-01T17:00:00",
"notes": "Maintenance"
}
}
}
}
Example 135: Create Recurring Room Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_recurring_room_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T09:00:00",
"end_time": "2026-05-01T10:00:00",
"recurring_block_out_time": {
"frequency": "weekly",
"until": "2026-08-01"
}
}
}
}
}
Example 136: List Room Blockouts
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_room_blockouts",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 137: Get Room Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_room_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"blockoutId": "blockout-uuid"
}
}
}
Example 138: Update Room Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_room_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"blockoutId": "blockout-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T09:00:00",
"end_time": "2026-05-01T18:00:00"
}
}
}
}
Example 139: Delete Room Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "delete_room_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"roomId": "room-uuid",
"blockoutId": "blockout-uuid"
}
}
}
Example 140: Create Employee Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_employee_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T09:00:00",
"end_time": "2026-05-01T17:00:00",
"notes": "Vacation"
}
}
}
}
Example 141: Create Recurring Employee Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "create_recurring_employee_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T12:00:00",
"end_time": "2026-05-01T13:00:00",
"recurring_block_out_time": {
"frequency": "daily",
"until": "2026-06-01"
}
}
}
}
}
Example 142: List Employee Blockouts
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_employee_blockouts",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"query": {
"center_id": "00000000-0000-0000-0000-000000000000",
"start_date": "2026-04-01",
"end_date": "2026-04-30"
}
}
}
}
Example 143: Get Employee Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_employee_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"blockoutId": "blockout-uuid"
}
}
}
Example 144: Update Employee Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "update_employee_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"blockoutId": "blockout-uuid",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"block_out_time_type_id": "blockout-type-uuid",
"start_time": "2026-05-01T09:00:00",
"end_time": "2026-05-01T18:00:00"
}
}
}
}
Example 145: Delete Employee Blockout
{
"automationType": "zenoti",
"nodeParams": {
"action": "delete_employee_blockout",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"employeeId": "employee-uuid",
"blockoutId": "blockout-uuid"
}
}
}
Example 146: List Blockout Time Types
Blockout categories (vacation, training, maintenance, etc.) at the center level.
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_blockout_time_types",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 147: Get Security Profiles
Org-level security profiles.
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_security_profiles",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 148: List Org Blockout Time Types
Blockout categories at the org level (vs. per-center).
{
"automationType": "zenoti",
"nodeParams": {
"action": "list_blockout_times_types_org",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 149: Get Security Roles
{
"automationType": "zenoti",
"nodeParams": {
"action": "get_security_roles",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY"
}
}
}
Example 150: Generate Shopify Multipass URL
Single-sign-on URL into a linked Shopify storefront.
{
"automationType": "zenoti",
"nodeParams": {
"action": "generate_shopify_multipass_url",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"query": {
"guest_id": "guest-uuid",
"return_to": "/products/all"
}
}
}
}
Example 151: Raw Request
Escape hatch for any Zenoti endpoint not yet first-classed in the integration. The path is appended to the Zenoti regional base URL; the apiKey header is added automatically.
{
"automationType": "zenoti",
"nodeParams": {
"action": "raw_request",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"method": "GET",
"path": "/v1/centers",
"query": { "page": 1, "size": 10 }
}
}
}
{
"automationType": "zenoti",
"nodeParams": {
"action": "raw_request",
"params": {
"apiKey": "YOUR_ZENOTI_API_KEY",
"method": "POST",
"path": "/v1/guests",
"body": {
"center_id": "00000000-0000-0000-0000-000000000000",
"personal_info": { "first_name": "Alex", "last_name": "Smith", "gender": -1 }
}
}
}
}
Notes & Caveats
- PCI-gated endpoints.
list_guest_saved_cards, delete_guest_saved_card, add_guest_card, and pay_invoice_new_card only work on Zenoti tenants whose payment processor supports the corresponding flow. Sandboxes (including iFlex) typically return a regional 404 HTML page rather than the API response — ask Zenoti support to enable the payment-processor integration if you see that.
- Mixed casing. Zenoti’s API is inconsistent about field casing — some endpoints use
snake_case, some camelCase, some PascalCase, and a few mix all three within one body (center_Id vs center_id, SessionId + userId + packageIds). Examples above mirror what Zenoti accepts.
- Center scoping. Most operational endpoints (services, employees, appointments, invoices, memberships, classes, …) require a
centerId (or center_id inside query/body). Reference and org-level endpoints don’t.
- Pagination.
query.page is 1-based; query.size defaults to 10 with a server cap of 100.
Third-Party Documentation