
Connect your stack
27 native integrations. 3,200+ tools via managed connectors. Most are one-click OAuth, some use API keys - Viktor handles auth and starts working. No webhooks, no Zapier zaps.
Viktor is an AI employee that connects to Mindbody in one click via OAuth and helps you schedule meetings and manage appointment bookings, running 12 Mindbody actions for you like List Staff, Get Classes, and Upsert Client. Ask in plain English in Slack or Microsoft Teams; Viktor does the work in Mindbody and reports back. Setup takes about two minutes.
Free to start · No credit card · SOC 2 Type 1 · Works in Slack & Microsoft Teams
Messages you'd actually send. Paste one into Slack or Microsoft Teams, swap in your specifics, and Viktor takes it from there.
“Find a time that works for everyone and send a Mindbody booking link.”
— you, in Slack or Teams
“Check Mindbody for tomorrow's bookings and send me a morning summary.”
— you, in Slack or Teams
“Watch Mindbody for a cancellation and offer the slot to the next person on the waitlist.”
— you, in Slack or Teams
“Reschedule everything on my Mindbody calendar affected by this conflict.”
— you, in Slack or Teams
Ask in plain English in Slack or Microsoft Teams. Viktor picks the right Mindbody actions, runs the work, and reports back. No workflows to build.
Creates a new client or updates an existing client record. To create: omit clientId. firstName, lastName, and birthDate are required for new clients. To update: provide clientId — only the fields you specify will be updated. BirthDate format: ISO datetime string YYYY-MM-DDTHH:MM:SS (e.g., 1990-05-15T00:00:00). Use Search Clients to find an existing client's ID before updating.
Searches for client (member) records by name, email address, or phone number. Returns client IDs, contact details, and membership status. Use this to find a client's ID before calling Get Client Details, Get Appointments, or Book Appointment. The searchText matches against first name, last name, email, and phone — partial matches are supported.
Returns staff members at the studio, including their IDs, names, bio, and role assignments (e.g., ClassTeacher, AppointmentInstructor). Use this to discover staffId values needed by Book Appointment and Get Classes. Filter by filters to find staff with a specific role (e.g., AppointmentInstructor).
Returns all bookable session types (services) available at the studio, including their IDs, names, and program associations. Use this to discover the sessionTypeId values needed by Book Appointment. Optionally filter by programIds to narrow results to a specific program category.
Returns identity and configuration details for the connected Mindbody site, including name, site ID, timezone, phone, and address. Use this as the identity anchor — call it first to discover the site name, ID, and timezone before querying other resources. Also provides location IDs needed by List Staff, Get Classes, and Book Appointment.
Returns the paginated list of visit records for a specific Mindbody client (member), each including its date/datetime (e.g. StartDateTime). Use this to derive retention metrics: visit count is the total record count across all pages and last visit date is the latest StartDateTime. Requires the client's numeric ID - use Search Clients first to look up the ID by name or email. Note: Get Client Details may already surface scalar visit-summary fields; use this action when you need the full per-visit history for precise date math or milestone detection. Iterate offset to page through the full history. IMPORTANT: the API defaults startDate to today and endDate to end of today, so for true lifetime spend you MUST set startDate to an early date (e.g. 2000-01-01) and page through all results via offset.
Returns the paginated list of purchases made by a specific Mindbody client, including amount/price fields. Sum the amounts across all pages to compute the client's lifetime spend. Requires the client's numeric ID - use Search Clients first to look up the ID by name or email. IMPORTANT: the API defaults startDate to today and endDate to end of today, so for true lifetime spend you MUST set startDate to an early date (e.g. 2000-01-01) and page through all results via offset.
Returns the complete profile for a client (member), including contact info, active memberships, purchased services, account balance, and visit history. Requires the client's numeric ID — use Search Clients first to look up the ID by name or email.
Returns upcoming group class sessions at the studio, including class name, start/end time, instructor, location, and remaining capacity. Use startDateTime and endDateTime to filter by date range (ISO 8601 format, e.g., 2026-07-01T00:00:00). Use staffId to find classes taught by a specific instructor — see List Staff for IDs. Use locationId to filter by studio location — see Get Site Info for location IDs.
Returns staff appointments, optionally filtered by date range, client, or staff member. Use clientId to show all appointments for a specific client — first use Search Clients to find their ID. Use staffId to filter by instructor. Date formats: YYYY-MM-DD (e.g., 2026-07-01). Without date filters, returns appointments from the current date forward (up to limit).
Cancels an existing appointment by setting its status to Cancelled. Requires the appointment ID — use Get Appointments to find the ID by client, date, or staff.
Books a client into a one-on-one service appointment (personal training, massage, etc.). All five core parameters are required: clientId, locationId, sessionTypeId, startDateTime, and staffId. Use Search Clients to find the client ID, List Session Types to find sessionTypeId, and List Staff to find staffId. startDateTime format: ISO 8601 YYYY-MM-DDTHH:MM:SS (e.g., 2026-07-15T10:00:00). Location IDs are returned by Get Site Info.

27 native integrations. 3,200+ tools via managed connectors. Most are one-click OAuth, some use API keys - Viktor handles auth and starts working. No webhooks, no Zapier zaps.
Message Viktor in Slack like you'd message a teammate. "Find a time that works for everyone and send a Mindbody booking link." "Check Mindbody for tomorrow's bookings and send me a morning summary." Plain English, any tool.
Viktor opens Mindbody, runs the work, and posts back what changed. Sensitive actions wait for your approval. Everything is logged. You stop doing the work and start reviewing it.
A Mindbody AI agent is an AI that connects to your Mindbody account and completes work in it - it doesn't just answer questions about Mindbody, it takes the actions. Viktor is that agent: an AI employee that works in Mindbody on your behalf and delivers the finished result in Slack or Microsoft Teams.
Unlike workflow builders such as Zapier or Make, there is nothing to configure - no triggers to map, no workflows to maintain. You describe the outcome in plain English, and Viktor picks the right Mindbody actions, chains them with the other 3,200+ tools it connects to, and asks for approval before anything sensitive runs.
Wellness Business Management
One-click OAuth - Viktor never sees your password, and you can revoke access at any time.
Review-first approvals: sensitive Mindbody actions wait for your sign-off before they run.
Isolated compute per team, encrypted in transit and at rest - and your data is never used to train models.
SOC 2 Type 1 compliant, with Type 2 and ISO 27001 in progress.
Yes. Mindbody is one of the 3,200+ tools Viktor connects to, via a managed connector. Once connected, anyone on your team can put Viktor to work in Mindbody from Slack or Microsoft Teams - no workflow builder, no code.