Webhook tool

Mindbody AI receptionist that books callers into class

The agent reads the class schedule from Mindbody and books the caller into the class they pick, through a small service of yours that calls the Public API.

Studio booking agent

Reads the class schedule and books clients into classes.

Instructions

Ask which day and kind of class the caller wants. Read up to three classes and book the one they pick. Confirm the client's name before booking. Transfer questions about memberships, pricing or billing to the front desk.

Handoff
Front desk

Connected tools

  • Find classesWebhook
  • Book classWebhook
  • Transfer to front deskTransfer

What a Mindbody AI voice agent can do

Open one to watch a call. The grey lines are the tools the agent calls mid-sentence.

Your service calls GET /class/classes for the day, and the agent reads the classes, their start times and instructors to the caller.

Tool definitions

Webhook tools go to POST /v1/agents/tools. Transfers are a system tool on the agent. Replace the placeholder values in capitals with your own.

Webhook

Find classes

Asks your service for the classes on a date.

Show the JSON definition
find_classes
{
  "type": "webhook",
  "name": "find_classes",
  "description": "Lists classes on one date with their IDs, start times and instructors.",
  "pre_tool_speech": "auto",
  "execution_mode": "immediate",
  "response_timeout_secs": 20,
  "api_schema": {
    "url": "https://api.your-company.com/mindbody/classes",
    "method": "GET",
    "query_params_schema": {
      "properties": {
        "date": {
          "type": "string",
          "description": "Date to list, YYYY-MM-DD."
        },
        "class_type": {
          "type": "string",
          "description": "Kind of class the caller asked for, such as yoga or spin. Leave empty for all."
        }
      },
      "required": [
        "date"
      ]
    },
    "authentication": {
      "mode": "bearer",
      "token": {
        "type": "secret",
        "secret_value": "YOUR_SERVICE_TOKEN"
      }
    }
  }
}

Webhook

Book class

Asks your service to find the client and add them to the class.

Show the JSON definition
book_class
{
  "type": "webhook",
  "name": "book_class",
  "description": "Books the caller into a class returned by find_classes.",
  "pre_tool_speech": "auto",
  "execution_mode": "immediate",
  "response_timeout_secs": 20,
  "api_schema": {
    "url": "https://api.your-company.com/mindbody/bookings",
    "method": "POST",
    "request_body_schema": {
      "type": "object",
      "properties": {
        "class_id": {
          "type": "string",
          "description": "The class ID from find_classes."
        },
        "first_name": {
          "type": "string",
          "description": "Caller's first name."
        },
        "last_name": {
          "type": "string",
          "description": "Caller's last name."
        },
        "email": {
          "type": "string",
          "description": "Caller's email, if they gave one. Helps find the right client."
        },
        "phone": {
          "type": "string",
          "dynamic_variable": "system__caller_id"
        }
      },
      "required": [
        "class_id",
        "first_name",
        "last_name"
      ]
    },
    "authentication": {
      "mode": "bearer",
      "token": {
        "type": "secret",
        "secret_value": "YOUR_SERVICE_TOKEN"
      }
    }
  }
}

Transfer

Transfer to front desk

Cold transfer to the front desk.

Show the JSON definition
transfer_to_front_desk
{
  "config": {
    "system_tools": {
      "transfer_to_number": {
        "description": null,
        "pre_tool_speech": "auto",
        "transfers": [
          {
            "destination": {
              "type": "phone",
              "phone_number": "+14155550134"
            },
            "condition": "The caller asks about memberships, pricing or billing, or asks for a person."
          }
        ]
      }
    }
  }
}

Set it up

No native connector. Webhook tools call a service of yours, which holds your Mindbody API key and a staff user token for the studio's site. Vendor details read in November 2026.

  1. Build against the sandbox

    Create a Mindbody developer account and an API key, and build against the sandbox site, Site ID -99.

  2. Go live with the studio

    Request live access from your developer dashboard, then send the studio owner the site activation link or code so they approve your access.

  3. Run the service

    It gets a staff user token from POST /usertoken/issue, then calls GET /class/classes, GET /client/clients and POST /class/addclienttoclass with the Api-Key and SiteId headers.

  4. Add the tools and test

    Configure both webhooks with a bearer secret for your service, book a test client into a sandbox class, and check the roster.

Before you build

Find the right client first

Your service looks the caller up with GET /client/clients before it books, so a common name doesn't put the wrong client on the roster.

Live calls are billed

Mindbody's developer portal lists free API access under 5,000 calls per billing cycle and $0.002 per call above that. Cache the class list in your service.

Enterprise-grade security

  • HIPAA compliant badge

    HIPAA compliant

  • SOC 2 Type 2 badge

    SOC 2 Type 2

  • GDPR badge

    GDPR

Mindbody AI voice agent FAQs

Does Mindbody have an AI receptionist?

Yes, Messenger[ai]. Mindbody's guides describe a missed call text feature that texts back callers the front desk didn't answer, so they can ask questions and book by text. A Cartesia agent answers the call by voice, reads the class schedule and books the caller through a service of yours that calls Mindbody's Public API.

Can an AI agent book Mindbody classes over the phone?

Yes. Your service calls GET /class/classes for the day, the agent reads up to three classes, and your service finds the client and calls AddClientToClass so the booking shows on the roster. The agent confirms the client's name before it books.

Does Mindbody charge for API calls?

Yes, above a free tier. Mindbody's developer portal lists free API access under 5,000 calls per billing cycle and $0.002 per call above that. Have your service cache the class list so a busy phone line doesn't multiply the count.

How do I get API access to a studio's Mindbody site?

Build against the sandbox, Site ID -99, first, then request live access from your Mindbody developer dashboard. The studio owner approves your access with the site activation link or code you send them. Your service then gets a staff user token from POST /usertoken/issue.

Can the agent book Mindbody appointments as well as classes?

Yes, with two more endpoints in your service. GET /appointment/bookableitems returns open times for a session type, and POST /appointment/addappointment books one. Questions about memberships, class packs or billing still go to the front desk by transfer.

What does a Mindbody voice agent cost to run?

Agents run at $0.03/min, plus LLM usage and telephony. Mindbody's own API fees apply above 5,000 calls per billing cycle. Transfers need a Twilio or SIP trunk number, per Cartesia's docs, so put the number on Twilio or a SIP trunk if the agent hands callers to staff.

Get started today

Talk to an expert.

Connect with a member of our team and learn how Cartesia can help you build world-class voice experiences.

Contact Sales

Start building.

Access our models via API and bring a voice agent into production in minutes.

Try Cartesia