openapi: 3.0.3
info:
title: Mindbody Public API v6
version: '6.0'
description: REST API for Mindbody business management data including appointments, classes, clients, enrollments, sales, sites, staff, payroll, and cross-site operations. Authentication combines a
Mindbody-issued API-Key header with a SiteId header and optional staff/user OAuth bearer tokens for write operations. Generated from the official Mindbody Public API Python SDK (apimatic v3).
contact:
name: Mindbody API Support
url: https://support.mindbodyonline.com/s/contactapisupport
license:
name: Proprietary
x-generated-from: Mindbody-API-SDKs python SDK
x-last-validated: '2026-05-28'
servers:
- url: https://api.mindbodyonline.com
description: Production
tags:
- name: Appointment
description: Appointment operations.
- name: Class
description: Class operations.
- name: Client
description: Client operations.
- name: Cross Site
description: Cross Site operations.
- name: Enrollment
description: Enrollment operations.
- name: Payroll
description: Payroll operations.
- name: Pick A Spot
description: Pick A Spot operations.
- name: Sale
description: Sale operations.
- name: Site
description: Site operations.
- name: Staff
description: Staff operations.
- name: User Token
description: User Token operations.
paths:
/public/v6/appointment/activesessiontimes:
get:
tags:
- Appointment
summary: Mindbody This is Not Appointment Availability but Rather the Active Business
description: This is not appointment availability but rather the active business hours for studios and which increments services can be booked at. See BookableItems for appointment availability.
operationId: getActiveSessionTimes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endTime
in: query
required: false
description: 'Filters results to times that end on or before this time on the current date. Any date provided is ignored..
Default: **23:59:59**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.scheduleType
in: query
required: false
description: Filters on the provided the schedule type. Either `SessionTypeIds` or `ScheduleType` must be provided.
schema:
$ref: '#/components/schemas/RequestScheduleTypeEnum'
example: {}
- name: request.sessionTypeIds
in: query
required: false
description: Filters on the provided session type IDs. Either `SessionTypeIds` or `ScheduleType` must be provided.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startTime
in: query
required: false
description: 'Filters results to times that start on or after this time on the current date. Any date provided is ignored.
Default: **00:00:00**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetActiveSessionTimesResponse'
examples:
Getactivesessiontimes200Example:
summary: Default getActiveSessionTimes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ActiveSessionTimes: &id043
- example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/addons:
get:
tags:
- Appointment
summary: Mindbody Get Active Appointment Add-ons
description: Get active appointment add-ons.
operationId: getAddOns
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffId
in: query
required: false
description: Filter to add-ons only performed by this staff member.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetAddOnsResponse'
examples:
Getaddons200Example:
summary: Default getAddOns 200 example
x-microcks-default: true
value:
PaginationResponse: {}
AddOns: &id044
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/appointmentoptions:
get:
tags:
- Appointment
summary: Mindbody This Endpoint Has No Query Parameters
description: This endpoint has no query parameters.
operationId: getAppointmentOptions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetAppointmentOptionsResponse'
examples:
Getappointmentoptions200Example:
summary: Default getAppointmentOptions 200 example
x-microcks-default: true
value:
Options: &id046
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/availabledates:
get:
tags:
- Appointment
summary: Mindbody Returns a List of Dates to Narrow Down Staff Availability When
description: Returns a list of dates to narrow down staff availability when booking. Dates are those which staff are scheduled to work and do not guarantee booking availabilities. After this
call is made, use GET BookableItems to retrieve availabilities for specific dates before booking.
operationId: getAvailableDates
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.sessionTypeId
in: query
required: true
description: required requested session type ID.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: 'The end date of the requested date range.
Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.locationId
in: query
required: false
description: optional requested location ID.
schema:
type: integer
format: int32
example: 123456
- name: request.staffId
in: query
required: false
description: optional requested staff ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDate
in: query
required: false
description: "The start date of the requested date range. If omitted, the default is used.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetAvailableDatesResponse'
examples:
Getavailabledates200Example:
summary: Default getAvailableDates 200 example
x-microcks-default: true
value:
AvailableDates: &id047
- '2026-05-28T14:30:00Z'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/bookableitems:
get:
tags:
- Appointment
summary: Mindbody Returns a List of Availabilities with the Information Needed to Book
description: 'Returns a list of availabilities with the information needed to book appointments. Availabilities include information such as the location and its amenities, staff members, programs,
and session types. Recommended to use with GET AvailableDates to see what dates the staff is scheduled to work and narrow down the dates searched. Recommended to use with GET ActiveSessionTimes
to see which increments each business allows for booking appointments. Notes: - With a wider range of dates, this call may take longer to return results. - With a higher number of request.sessionTypeIds,
this call may take longer to return results.'
operationId: getBookableItems
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.sessionTypeIds
in: query
required: true
description: A list of the requested session type IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.appointmentId
in: query
required: false
description: If provided, filters out the appointment with this ID.
schema:
type: integer
format: int32
example: 123456
- name: request.endDate
in: query
required: false
description: 'The end date of the requested date range.
Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.ignoreDefaultSessionLength
in: query
required: false
description: When `true`, availabilities that are non-default return, for example, a 30-minute availability with a 60-minute default session length.
When `false`, only availabilities
that have the default session length return.
schema:
type: boolean
example: true
- name: request.includeResourceAvailability
in: query
required: false
description: When `true`, resource availabilities for the session type are returned.
When `false`, resource availabilities are not returned default.
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: A list of the requested location IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffIds
in: query
required: false
description: A list of the requested staff IDs. Omit parameter to return all staff availabilities.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start date of the requested date range.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetBookableItemsResponse'
examples:
Getbookableitems200Example:
summary: Default getBookableItems 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Availabilities: &id048
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/scheduleitems:
get:
tags:
- Appointment
summary: Mindbody Returns a List of Schedule Items, Including Appointments,
description: Returns a list of schedule items, including appointments, availabilities, and unavailabilities. Unavailabilities are the times at which appointments cannot be booked, for example,
on holidays or after hours when the business is closed.
operationId: getScheduleItems
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: "The end date of the requested date range.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.ignorePrepFinishTimes
in: query
required: false
description: 'When `true`, appointment preparation and finish unavailabilities are not returned.
Default: **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: A list of requested location IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffIds
in: query
required: false
description: A list of requested staff IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start date of the requested date range.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetScheduleItemsResponse'
examples:
Getscheduleitems200Example:
summary: Default getScheduleItems 200 example
x-microcks-default: true
value:
PaginationResponse: {}
StaffMembers: &id094
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/staffappointments:
get:
tags:
- Appointment
summary: Mindbody Returns a List of Appointments by Staff Member
description: Returns a list of appointments by staff member.
operationId: getStaffAppointments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.appointmentIds
in: query
required: false
description: A list of the requested appointment IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.clientId
in: query
required: false
description: The client ID to be returned.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: 'The end date of the requested date range.
Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: A list of the requested location IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffIds
in: query
required: false
description: List of staff IDs to be returned. Omit parameter to return staff appointments for all staff.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: 'The start date of the requested date range. If omitted, the default is used.
Default: **today''s date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.useSiteSettingsStaffName
in: query
required: false
description: When `true`, the staff DisplayName will be populated based on site-level settings. When `false` or omitted, the staff DisplayName will contain only the FirstName.
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStaffAppointmentsResponse'
examples:
Getstaffappointments200Example:
summary: Default getStaffAppointments 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Appointments: &id100
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/unavailabilities:
get:
tags:
- Appointment
summary: Mindbody Returns a List of Unavailabilities. Unavailabilities Are the Times at
description: Returns a list of unavailabilities. Unavailabilities are the times at which appointments cannot be booked, for example, on holidays or after hours when the business is closed.
operationId: getUnavailabilities
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: "The end date of the requested date range.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffIds
in: query
required: false
description: A list of requested staff IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start date of the requested date range.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUnavailabilitiesResponse'
examples:
Getunavailabilities200Example:
summary: Default getUnavailabilities 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Unavailabilities: &id106
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/addappointment:
post:
tags:
- Appointment
summary: Mindbody A User Token is Required for This Endpoint. to Book an Appointment,
description: 'A user token is required for this endpoint. To book an appointment, you must use a location ID, staff ID, client ID, session type ID, and the StartDateTime of the appointment. You can
get most of this information using GET BookableItems. Note: Request deduplication is enabled for this endpoint. More information can be found in the [Request Deduplication Page](https://developers.mindbodyonline.com/ui/documentation/public-api
#/net-standard-library/mindbody-public-api-v6-0/request-deduplication). Use the `X-RequestDeduplication-Skip` header to bypass deduplication if necessary. This may be useful in scenarios where you
want to ensure a new appointment is created regardless of previous identical requests.'
operationId: addAppointment
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddAppointmentRequest'
examples:
AddappointmentRequestExample:
summary: Default addAppointment request example
x-microcks-default: true
value:
ClientId: example-value
LocationId: 123456
SessionTypeId: 123456
StaffId: 123456
StartDateTime: '2026-05-28T14:30:00Z'
ApplyPayment: true
Duration: 1
EndDateTime: '2026-05-28T14:30:00Z'
GenderPreference: example-value
Notes: Example note for Mindbody Public API.
ProviderId: example-value
ResourceIds: &id012
- 1
SendEmail: true
StaffRequested: true
Test: true
IsWaitlist: true
IsRequest: true
PartnerExternalId: example-value
AddAppointmentRequestId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddAppointmentResponse'
examples:
Addappointment200Example:
summary: Default addAppointment 200 example
x-microcks-default: true
value:
Appointment: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/addappointmentaddon:
post:
tags:
- Appointment
summary: Mindbody This Endpoint Books an Add-on on Top of an Existing, Regular
description: This endpoint books an add-on on top of an existing, regular appointment. To book an add-on, you must use an existing appointment ID and session type ID. You can get a session type
ID using `GET AppointmentAddOns`.
operationId: addAppointmentAddOn
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddAppointmentAddOnRequest'
examples:
AddappointmentaddonRequestExample:
summary: Default addAppointmentAddOn request example
x-microcks-default: true
value:
ApplyPayment: true
AppointmentId: 123456
SessionTypeId: 123456
StaffId: 123456
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddAppointmentAddOnResponse'
examples:
Addappointmentaddon200Example:
summary: Default addAppointmentAddOn 200 example
x-microcks-default: true
value:
AppointmentId: 123456
AddOnAppointmentId: 123456
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/addmultipleappointments:
post:
tags:
- Appointment
summary: Mindbody A User Token is Required for This Endpoint. to Book Appointments, You
description: A user token is required for this endpoint. To book appointments, you must provide a location ID, staff ID, client ID, session type ID, and the StartDateTime for each appointment.
You can retrieve most of this information using the GET BookableItems endpoint. This endpoint will handle errors that occur during the appointment creation process and return a list of errors,
as well as the request object that generated each outcome. You can pass the AddAppointmentRequestId for each request, or it will be automatically filled. This is intended to facilitate
matching each request with the corresponding outcome. This endpoint will send one notification when multiple Appointments are booked by one Client on a given day.
operationId: addMultipleAppointments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddMultipleAppointmentsRequest'
examples:
AddmultipleappointmentsRequestExample:
summary: Default addMultipleAppointments request example
x-microcks-default: true
value:
AddAppointmentRequests: &id025
- {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddMultipleAppointmentsResponse'
examples:
Addmultipleappointments200Example:
summary: Default addMultipleAppointments 200 example
x-microcks-default: true
value:
AddAppointmentOutcomes: &id026
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/availabilities:
put:
tags:
- Appointment
summary: Mindbody To Update the Information for a Specific Availability or
description: 'To update the information for a specific availability or unavailability of the staff.
Note: You must have a staff user token with the required permissions.'
operationId: updateAvailability
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAvailabilityRequest'
examples:
UpdateavailabilityRequestExample:
summary: Default updateAvailability request example
x-microcks-default: true
value:
AvailabilityIds: &id120
- 1
PublicDisplay: {}
DaysOfWeek: &id121
- {}
ProgramIds: &id122
- 1
StartDateTime: '2026-05-28T14:30:00Z'
EndDateTime: '2026-05-28T14:30:00Z'
LocationId: 123456
UnavailableDescription: Example note for Mindbody Public API.
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAvailabilityResponse'
examples:
Updateavailability200Example:
summary: Default updateAvailability 200 example
x-microcks-default: true
value:
StaffMembers: &id123
- {}
Errors: &id124
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
post:
tags:
- Appointment
summary: Mindbody Add Availabilities and Unavailabilities for a Staff Member.
description: 'Add availabilities and unavailabilities for a staff member.
Note: You must have a staff user token with the required permissions.'
operationId: addAvailabilities
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddAvailabilitiesRequest'
examples:
AddavailabilitiesRequestExample:
summary: Default addAvailabilities request example
x-microcks-default: true
value:
Test: true
LocationID: 1
StaffIDs: &id013
- 1
ProgramIDs: &id014
- 1
StartDateTime: '2026-05-28T14:30:00Z'
EndDateTime: '2026-05-28T14:30:00Z'
DaysOfWeek: &id015
- {}
UnavailableDescription: Example note for Mindbody Public API.
IsUnavailable: true
PublicDisplay: {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddAvailabilitiesResponse'
examples:
Addavailabilities200Example:
summary: Default addAvailabilities 200 example
x-microcks-default: true
value:
StaffMembers: &id016
- {}
Errors: &id017
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/updateappointment:
post:
tags:
- Appointment
summary: Mindbody To Update the Information for a Specific Appointment, You Must Have a
description: "To update the information for a specific appointment, you must have a staff user token with the proper permissions. Note that you can only update the appointment’s `StartDateTime`, `EndDateTime`,
`StaffId`, `Notes`, and `SessionTypeId`."
operationId: updateAppointment
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAppointmentRequest'
examples:
UpdateappointmentRequestExample:
summary: Default updateAppointment request example
x-microcks-default: true
value:
AppointmentId: 123456
EndDateTime: '2026-05-28T14:30:00Z'
Execute: example-value
GenderPreference: example-value
Notes: Example note for Mindbody Public API.
PartnerExternalId: example-value
ProviderId: example-value
ResourceIds: &id119
- 1
SendEmail: true
SessionTypeId: 123456
StaffId: 123456
StartDateTime: '2026-05-28T14:30:00Z'
ApplyPayment: true
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAppointmentResponse'
examples:
Updateappointment200Example:
summary: Default updateAppointment 200 example
x-microcks-default: true
value:
Appointment: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/appointmentfromwaitlist:
delete:
tags:
- Appointment
summary: Mindbody Remove an Appointment from Waitlist
description: Remove an appointment from waitlist
operationId: removeFromWaitlist
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.waitlistEntryIds
in: query
required: true
description: A list of `WaitlistEntryIds` to remove from the waiting list.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/availability:
delete:
tags:
- Appointment
summary: Mindbody This Endpoint Deletes the Availability or Unavailability
description: 'This endpoint deletes the availability or unavailability. Note: You must have a staff user token with the required permissions.'
operationId: deleteAvailability
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: deleteAvailabilityRequest.availabilityId
in: query
required: false
description: The ID of the availability or unavailability.
schema:
type: integer
format: int32
example: 123456
- name: deleteAvailabilityRequest.test
in: query
required: false
description: "When `true`, indicates that this is a test request and no data is deleted from the subscriber’s database. When `false`, the record will be deleted. Default: **false**"
schema:
type: boolean
example: true
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/appointment/deleteappointmentaddon:
delete:
tags:
- Appointment
summary: Mindbody This Endpoint Can Be Used to Early-cancel a Booked Appointment Add-on
description: This endpoint can be used to early-cancel a booked appointment add-on.
operationId: deleteAppointmentAddOn
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: id
in: query
required: true
description: The request query parameter.
schema:
type: integer
format: int32
example: 1
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/classdescriptions:
get:
tags:
- Class
summary: Mindbody To Find Class Descriptions Associated with **scheduled Classes**, Pass
description: To find class descriptions associated with **scheduled classes**, pass `StaffId`, `StartClassDateTime`, `EndClassDateTime`, or `LocationId` in the request.
operationId: getClassDescriptions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classDescriptionId
in: query
required: false
description: The ID of the requested client.
schema:
type: integer
format: int32
example: 123456
- name: request.endClassDateTime
in: query
required: false
description: Filters the results to class descriptions for scheduled classes that happen before the given date and time.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.includeInactive
in: query
required: false
description: Includes inactive class descriptions, defaulting to true. When set to false, it filters out inactive class descriptions.
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: Filters results to classes descriptions for schedule classes as the given location.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: A list of requested program IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.staffId
in: query
required: false
description: Filters results to class descriptions for scheduled classes taught by the given staff member.
schema:
type: integer
format: int32
example: 123456
- name: request.startClassDateTime
in: query
required: false
description: Filters the results to class descriptions for scheduled classes that happen on or after the given date and time.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassDescriptionsResponse'
examples:
Getclassdescriptions200Example:
summary: Default getClassDescriptions 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClassDescriptions: &id050
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/classes:
get:
tags:
- Class
summary: Mindbody Get Scheduled Classes
description: Get scheduled classes.
operationId: getClasses
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classDescriptionIds
in: query
required: false
description: The requested class description IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.classIds
in: query
required: false
description: The requested class IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.classScheduleIds
in: query
required: false
description: The requested classSchedule Ids.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.clientId
in: query
required: false
description: The client ID of the client who is viewing this class list. Based on identity, the client may be able to see additional information, such as membership specials.
schema:
type: string
example: example-value
- name: request.endDateTime
in: query
required: false
description: "The requested end date for filtering. NOTE: ClassDate does not take Class Time into consideration.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.hideCanceledClasses
in: query
required: false
description: 'When `true`, canceled classes are removed from the response.
When `false`, canceled classes are included in the response.
Default: **false**'
schema:
type: boolean
example: true
- name: request.lastModifiedDate
in: query
required: false
description: When included in the request, only records modified on or after the `LastModifiedDate` specified are included in the response.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: A list of location IDs on which to base the search.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: A list of program IDs on which to base the search.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.schedulingWindow
in: query
required: false
description: 'When `true`, classes outside scheduling window are removed from the response.
When `false`, classes are included in the response, regardless of the scheduling window.
Default:
**false**'
schema:
type: boolean
example: true
- name: request.semesterIds
in: query
required: false
description: A list of semester IDs on which to base the search.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sessionTypeIds
in: query
required: false
description: A list of session type IDs on which to base the search.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.staffIds
in: query
required: false
description: The requested IDs of the teaching staff members.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDateTime
in: query
required: false
description: "The requested start date for filtering. This also determines what you will see for the ‘BookingWindow’ StartDateTime in the response. For example, if you pass a StartDateTime that
is on OR before the BookingWindow ‘Open’ days of the class, you will retrieve the actual ‘StartDateTime’ for the Booking Window. If you pass a StartDateTime that is after the BookingWindow ‘date’,
then you will receive results based on that start date. NOTE: ClassDate does not take Class Time into consideration."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: 'The unique ID of the client who is viewing this class list. Based on identity, the client may be able to see additional information, such as membership specials. Note: you need to
provide the ''UniqueClientId'' OR the ''ClientId''. If both are provided, the ''UniqueClientId'' takes precedence.'
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassesResponse'
examples:
Getclasses200Example:
summary: Default getClasses 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Classes: &id052
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/classschedules:
get:
tags:
- Class
summary: Mindbody Get Class Schedules
description: Get class schedules.
operationId: getClassSchedules
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classScheduleIds
in: query
required: false
description: 'The class schedule IDs.
Default: **all**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.endDate
in: query
required: false
description: 'The end date of the range. Return any active enrollments that occur on or before this day.
Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: 'The location IDs.
Default: **all**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: 'The program IDs.
Default: **all**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sessionTypeIds
in: query
required: false
description: 'The session type IDs.
Default: **all**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.staffIds
in: query
required: false
description: 'The staff IDs.
Default: **all**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start date of the range. Return any active enrollments that occur on or after this day.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassSchedulesResponse'
examples:
Getclassschedules200Example:
summary: Default getClassSchedules 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClassSchedules: &id051
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/classvisits:
get:
tags:
- Class
summary: Mindbody Returns a List of Visits That Contain Information for a Specified
description: Returns a list of visits that contain information for a specified class. On success, this request returns the class object in the response with a list of visits.
operationId: getClassVisits
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.classID
in: query
required: true
description: The class ID.
schema:
type: integer
format: int32
example: 1
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.lastModifiedDate
in: query
required: false
description: When included in the request, only records modified on or after the `LastModifiedDate` specified are included in the response.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.useSiteSettingsStaffName
in: query
required: false
description: When `true`, the staff DisplayName will be populated based on site-level settings. When `false` or omitted, the staff DisplayName will contain only the FirstName.
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassVisitsResponse'
examples:
Getclassvisits200Example:
summary: Default getClassVisits 200 example
x-microcks-default: true
value:
Class: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/courses:
get:
tags:
- Class
summary: Mindbody This Endpoint Will Provide All the Data Related to Courses Depending
description: 'This endpoint will provide all the data related to courses depending on the access level.
Note: The Authorization is an optional header.If Authorization header is not passed, the
response will be masked else full response will be provided.'
operationId: getCourses
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: getCoursesRequest.courseIDs
in: query
required: false
description: Return only courses that are available for the specified CourseIds.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: getCoursesRequest.endDate
in: query
required: false
description: The end date range. Any active courses that are on or before this day.
(optional) Defaults to StartDate.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: getCoursesRequest.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: getCoursesRequest.locationIDs
in: query
required: false
description: Return only courses that are available for the specified LocationIds.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: getCoursesRequest.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: getCoursesRequest.programIDs
in: query
required: false
description: Return only courses that are available for the specified ProgramIds.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: getCoursesRequest.semesterIDs
in: query
required: false
description: Return only courses that are available for the specified SemesterIds.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: getCoursesRequest.staffIDs
in: query
required: false
description: Return only courses that are available for the specified StaffIds.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: getCoursesRequest.startDate
in: query
required: false
description: The start date range. Any active courses that are on or after this day.
(optional) Defaults to today.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCoursesReponse'
examples:
Getcourses200Example:
summary: Default getCourses 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Courses: &id072
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/semesters:
get:
tags:
- Class
summary: Mindbody This Endpoint Retrieves the Business Class Semesters
description: This endpoint retrieves the business class semesters.
operationId: getSemesters
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When true, the response only contains semesters which are activated. When false, only deactivated semesters are returned. Default: **All semesters**'
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: 'The end date for the range. All semesters that are on or before this day. Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.semesterIDs
in: query
required: false
description: The requested semester IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start date for the range. All semesters that are on or after this day. Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetSemestersResponse'
examples:
Getsemesters200Example:
summary: Default getSemesters 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Semesters: &id096
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/waitlistentries:
get:
tags:
- Class
summary: Mindbody Returns a List of Waiting List Entries for a Specified Class Schedule
description: Returns a list of waiting list entries for a specified class schedule or class. The request requires staff credentials and either a class schedule ID or class ID.
operationId: getWaitlistEntries
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classIds
in: query
required: false
description: 'The requested class IDs. If a class ID is present, the request automatically disregards any class schedule IDs in the request.
Either `ClassScheduleIds`, `ClientIds`, `WaitlistEntryIds`,
or `ClassIds` is required; the others become optional.
Default: **all ClassIds**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.classScheduleIds
in: query
required: false
description: 'The requested class schedule IDs. If a class ID is present, the request automatically disregards any class schedule IDs in the request.
Either `ClassScheduleIds`, `ClientIds`,
`WaitlistEntryIds`, or `ClassIds` is required; the others become optional.
Default: **all ClassScheduleIds**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.clientIds
in: query
required: false
description: 'The requested client IDs.
Either `ClassScheduleIds`, `ClientIds`, `WaitlistEntryIds`, or `ClassIds` is required; the others become optional.
Default: **all ClientIds**'
schema:
type: array
items:
type: string
example:
- example-value
- name: request.hidePastEntries
in: query
required: false
description: 'When `true`, indicates that past waiting list entries are hidden from clients.
When `false`, indicates that past entries are not hidden from clients.
Default: **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.waitlistEntryIds
in: query
required: false
description: 'The requested waiting list entry IDs.
Either `ClassScheduleIds`, `ClientIds`, `WaitlistEntryIds`, or `ClassIds` is required; the others become optional.
Default: **all
WaitlistEntryIds**'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetWaitlistEntriesResponse'
examples:
Getwaitlistentries200Example:
summary: Default getWaitlistEntries 200 example
x-microcks-default: true
value:
PaginationResponse: {}
WaitlistEntries: &id107
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/addclassschedule:
post:
tags:
- Class
summary: Mindbody This Endpoint Adds a Class Schedule. for a Single Day Schedule, the
description: This endpoint adds a class schedule. For a single day schedule, the EndDate parameter can be omitted.
operationId: addClassSchedule
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClassEnrollmentScheduleRequest'
examples:
AddclassscheduleRequestExample:
summary: Default addClassSchedule request example
x-microcks-default: true
value:
ClassDescriptionId: 123456
LocationId: 123456
StartDate: '2026-05-28T14:30:00Z'
EndDate: '2026-05-28T14:30:00Z'
StartTime: '2026-05-28T14:30:00Z'
EndTime: '2026-05-28T14:30:00Z'
DaySunday: true
DayMonday: true
DayTuesday: true
DayWednesday: true
DayThursday: true
DayFriday: true
DaySaturday: true
StaffId: 123456
StaffPayRate: 1
ResourceId: 123456
MaxCapacity: 1
WebCapacity: 1
WaitlistCapacity: 1
BookingStatus: Active
AllowOpenEnrollment: true
AllowDateForwardEnrollment: true
PricingOptionsProductIds: &id005
- 1
ShowToPublic: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WrittenClassSchedulesInfo'
examples:
Addclassschedule200Example:
summary: Default addClassSchedule 200 example
x-microcks-default: true
value:
ClassId: 123456
ClassInstanceIds: &id001
- 1
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/addclienttoclass:
post:
tags:
- Class
summary: Mindbody This Endpoint Adds a Client to a Class or to a Class Waiting List. to
description: "This endpoint adds a client to a class or to a class waiting list. To prevent overbooking a class or booking outside the schedule windows set forth by the business, it is necessary to
first check the capacity level of the class (‘MaxCapacity’ and 'TotalBooked’) and the 'IsAvailable’ parameter by running the GetClasses REQUEST. It is helpful to use this endpoint in the following
situations: * Use after calling `GET Clients` and `GET Classes` so that you are sure which client to book in which class. * If adding a client to a class from a waiting list, use this call after
you call `GET WaitlistEntries` and determine the ID of the waiting list from which you are moving the client. * If adding a client to a class and using a pricing option that the client has already
purchased, use this call after you call `GET ClientServices` to determine the ID of the pricing option that the client wants to use. If you add a client to a class and the client purchases a new
pricing option, use `GET Services`, `GET Classes`, and then `POST CheckoutShoppingCart` in place of this call. This endpoint also supports cross-regional class bookings. If you want to perform a
cross-regional class booking, set `CrossRegionalBooking` to `true`. This endpoint does not support adding a user to a waiting list using a cross-regional client pricing option(service). Cross-regional
booking workflows do not support client service scheduling restrictions. When performing a cross-regional class booking, this endpoint loops through the first ten sites that the client is associated
with, looks for client pricing options at each of those sites, and then uses the oldest client pricing option found.It is important to note that this endpoint only loops through a maximum of ten
associated client sites. If a `ClientID` is associated with more than ten sites in an organization, this endpoint only loops through the first ten.If you know that a client has a client service
at another site, you can specify that site using"
operationId: addClientToClass
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientToClassRequest'
examples:
AddclienttoclassRequestExample:
summary: Default addClientToClass request example
x-microcks-default: true
value:
ClientId: example-value
ClassId: 123456
Test: true
RequirePayment: true
Waitlist: true
SendEmail: true
WaitlistEntryId: 123456
ClientServiceId: 123456
CrossRegionalBooking: true
CrossRegionalBookingClientServiceSiteId: 123456
UniqueId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientToClassResponse'
examples:
Addclienttoclass200Example:
summary: Default addClientToClass 200 example
x-microcks-default: true
value:
Visit: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/cancelsingleclass:
post:
tags:
- Class
summary: Mindbody This Endpoint Will Cancel a Single Class from Studio
description: This endpoint will cancel a single class from studio.
operationId: cancelSingleClass
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CancelSingleClassRequest'
examples:
CancelsingleclassRequestExample:
summary: Default cancelSingleClass request example
x-microcks-default: true
value:
ClassID: 1
HideCancel: true
SendClientEmail: true
SendStaffEmail: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CancelSingleClassResponse'
examples:
Cancelsingleclass200Example:
summary: Default cancelSingleClass 200 example
x-microcks-default: true
value:
Class: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/removeclientfromclass:
post:
tags:
- Class
summary: Mindbody Remove a Client from a Class
description: Remove a client from a class.
operationId: removeClientFromClass
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveClientFromClassRequest'
examples:
RemoveclientfromclassRequestExample:
summary: Default removeClientFromClass request example
x-microcks-default: true
value:
ClassId: 123456
ClientId: example-value
UniqueClientId: 123456
Test: true
SendEmail: true
LateCancel: true
VisitId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveClientFromClassResponse'
examples:
Removeclientfromclass200Example:
summary: Default removeClientFromClass 200 example
x-microcks-default: true
value:
Class: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/removeclientsfromclasses:
post:
tags:
- Class
summary: Mindbody This Endpoint Can Be Utilized for Removing Multiple Clients from
description: This endpoint can be utilized for removing multiple clients from multiple classes in one request.
operationId: removeClientsFromClasses
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveClientsFromClassesRequest'
examples:
RemoveclientsfromclassesRequestExample:
summary: Default removeClientsFromClasses request example
x-microcks-default: true
value:
Details: &id116
- {}
Test: true
SendEmail: true
LateCancel: true
Limit: 10
Offset: 10
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveClientsFromClassesResponse'
examples:
Removeclientsfromclasses200Example:
summary: Default removeClientsFromClasses 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Classes: &id117
- {}
Errors: &id118
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/removefromwaitlist:
post:
tags:
- Class
summary: Mindbody This Endpoint Does Not Return a Response. if a Call to This Endpoint
description: This endpoint does not return a response. If a call to this endpoint results in a 200 OK HTTP status code, then the call was successful.
operationId: removeFromWaitlist
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.waitlistEntryIds
in: query
required: true
description: A list of `WaitlistEntryIds` to remove from the waiting list.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/substituteclassteacher:
post:
tags:
- Class
summary: Mindbody Substitute a Class Teacher
description: Substitute a class teacher.
operationId: substituteClassTeacher
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SubstituteClassTeacherRequest'
examples:
SubstituteclassteacherRequestExample:
summary: Default substituteClassTeacher request example
x-microcks-default: true
value:
ClassId: 123456
StaffId: 123456
OverrideConflicts: true
SendClientEmail: true
SendOriginalTeacherEmail: true
SendSubstituteTeacherEmail: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SubstituteClassTeacherResponse'
examples:
Substituteclassteacher200Example:
summary: Default substituteClassTeacher 200 example
x-microcks-default: true
value:
Class: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/updateclassschedule:
post:
tags:
- Class
summary: Mindbody This Endpoint Updates a Class Schedule
description: This endpoint updates a class schedule.
operationId: updateClassSchedule
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClassEnrollmentScheduleRequest'
examples:
UpdateclassscheduleRequestExample:
summary: Default updateClassSchedule request example
x-microcks-default: true
value:
ClassId: 123456
ClassDescriptionId: 123456
LocationId: 123456
StartDate: '2026-05-28T14:30:00Z'
EndDate: '2026-05-28T14:30:00Z'
StartTime: '2026-05-28T14:30:00Z'
EndTime: '2026-05-28T14:30:00Z'
DaySunday: true
DayMonday: true
DayTuesday: true
DayWednesday: true
DayThursday: true
DayFriday: true
DaySaturday: true
StaffId: 123456
StaffPayRate: 1
ResourceId: 123456
MaxCapacity: 1
WebCapacity: 1
WaitlistCapacity: 1
BookingStatus: Active
AllowOpenEnrollment: true
AllowDateForwardEnrollment: true
RetainScheduleChanges: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WrittenClassSchedulesInfo'
examples:
Updateclassschedule200Example:
summary: Default updateClassSchedule 200 example
x-microcks-default: true
value:
ClassId: 123456
ClassInstanceIds: *id001
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/class/updateclassschedulenotes/{classScheduleId}:
patch:
tags:
- Class
summary: Mindbody This Endpoint Updates the Notes of Class Instances Based on the
description: 'This endpoint updates the notes of class instances based on the schedule''s schedule ID. Note: Every coming class instance for the given ScheduleID will have the notes updated the same
way.'
operationId: updateClassScheduleNotes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: classScheduleId
in: path
required: true
description: The request template parameter.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClassScheduleNotesRequest'
examples:
UpdateclassschedulenotesRequestExample:
summary: Default updateClassScheduleNotes request example
x-microcks-default: true
value:
Notes: Example note for Mindbody Public API.
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/activeclientmemberships:
get:
tags:
- Client
summary: Mindbody Please Note That Client Memberships with Location Restrictions Can
description: Please note that client memberships with location restrictions can only be used to pay for scheduled services at the site to which they belong. Memberships with location
restrictions can not be used to pay for scheduled services at other sites within an organization.
operationId: getActiveClientMemberships
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The ID of the client for whom memberships are returned.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: "Used to retrieve a client’s memberships from multiple sites within an organization when the client is associated with more than ten sites. To change which ten sites are searched, change
this offset value. A value of 0 means that no sites are skipped and the first ten sites are returned. You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations`
to determine how many sites the client is associated with. Note that you must always have `CrossRegionalLookup` s"
schema:
type: integer
format: int32
example: 10
- name: request.crossRegionalLookup
in: query
required: false
description: "Used to retrieve a client’s memberships from multiple sites within an organization. When included and set to `true`, it searches a maximum of ten sites with which this client is associated.
When a client is associated with more than ten sites, use `ClientAssociatedSitesOffset` as many times as needed to search the additional sites with which the client is associated. You can use
the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations` to determine how many sites the"
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: Filters results to memberships that can be used to pay for scheduled services at that location. This parameter can not be passed when `CrossRegionalLookup` is `true`.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.uniqueClientId
in: query
required: false
description: The Unique ID of the client for whom memberships are returned. Note that UniqueClientId takes precedence over ClientId if both are provided.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetActiveClientMembershipsResponse'
examples:
Getactiveclientmemberships200Example:
summary: Default getActiveClientMemberships 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClientMemberships: &id041
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/activeclientsmemberships:
get:
tags:
- Client
summary: Mindbody The Endpoint Returns a List of Memberships for Multiple Clients We
description: The endpoint returns a list of memberships for multiple clients we pass in query parameter. Please note that clients memberships with location restrictions can only be used to pay
for scheduled services at the site to which they belong. Memberships with location restrictions can not be used to pay for scheduled services at other sites within an organization.
operationId: getActiveClientsMemberships
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientIds
in: query
required: true
description: 'The ID of the client for whom memberships are returned. Maximum allowed : 200.'
schema:
type: array
items:
type: string
example:
- example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: "Used to retrieve a client’s memberships from multiple sites within an organization when the client is associated with more than ten sites. To change which ten sites are searched, change
this offset value. A value of 0 means that no sites are skipped and the first ten sites are returned. You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations`
to determine how many sites the client is associated with. Note that you must always have `CrossRegionalLookup` s"
schema:
type: integer
format: int32
example: 10
- name: request.crossRegionalLookup
in: query
required: false
description: "Used to retrieve a client’s memberships from multiple sites within an organization. When included and set to `true`, it searches a maximum of ten sites with which this client is associated.
When a client is associated with more than ten sites, use `ClientAssociatedSitesOffset` as many times as needed to search the additional sites with which the client is associated. You can use
the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations` to determine how many sites the"
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: Filters results to memberships that can be used to pay for scheduled services at that location. This parameter can not be passed when `CrossRegionalLookup` is `true`.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetActiveClientsMembershipsResponse'
examples:
Getactiveclientsmemberships200Example:
summary: Default getActiveClientsMemberships 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClientMemberships: &id042
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientaccountbalances:
get:
tags:
- Client
summary: Mindbody Get Account Balance Information for One or More Client(s)
description: Get account balance information for one or more client(s).
operationId: getClientAccountBalances
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientIds
in: query
required: true
description: The list of clients IDs for which you want account balances.
schema:
type: array
items:
type: string
example:
- example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.balanceDate
in: query
required: false
description: 'The date you want a balance relative to. Default: **the current date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.classId
in: query
required: false
description: The class ID of the event for which you want a balance.
schema:
type: integer
format: int32
example: 123456
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientAccountBalancesResponse'
examples:
Getclientaccountbalances200Example:
summary: Default getClientAccountBalances 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Clients: &id053
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientcompleteinfo:
get:
tags:
- Client
summary: Mindbody This Endpoint Returns Complete Client Information Along with List of
description: This endpoint returns complete client information along with list of purchased services, contract details, membership details and arrival programs for a specific client.
operationId: getClientCompleteInfo
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: Filters results to client with these ID.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: consumer-identity-token
in: header
required: false
description: A consumers authorization token to replace the need of clientId in the request.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: "Used to retrieve a client’s pricing options from multiple sites within an organization when the client is associated with more than ten sites. To change which ten sites are searched,
change this offset value. A value of 0 means that no sites are skipped and the first ten sites are returned. You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations`
to determine how many sites the client is associated with. Note that you must always have `CrossRegionalLooku"
schema:
type: integer
format: int32
example: 10
- name: request.crossRegionalLookup
in: query
required: false
description: Used to retrieve a clients pricing options from multiple sites within an organization.When included and set to `true`, it searches a maximum of ten sites with which this client is
associated.When a client is associated with more than ten sites, use `ClientAssociatedSitesOffset` as many times as needed to search the additional sites with which the client is associated.
You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations` to determine how many sites th
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: "Filters results to pricing options that are purchased on or before this date. Default: **today’s date**."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.excludeInactiveSites
in: query
required: false
description: 'When this flag is set to `true`, will exclude inactive sites from the response Default: **false**'
schema:
type: boolean
example: true
- name: request.requiredClientData
in: query
required: false
description: Used to retrieve list of purchased services, contract details, membership details and arrival programs for a specific client. Default `ClientServices`, `ClientContracts`,
`ClientMemberships` and `ClientArrivals` will be returned when `RequiredClientDatais` not set. When `RequiredClientData` is set to `Contracts` then only `ClientContracts` will be returned in
the response. When `RequiredClientData` is set to Services then only `ClientServices` will be returned in the response. When `RequiredClie
schema:
type: array
items:
type: string
example:
- example-value
- name: request.showActiveOnly
in: query
required: false
description: 'When `true`, includes active services only. Set this field to `true` when trying to determine if a client has a service that can pay for a class or appointment. Default: **false**'
schema:
type: boolean
example: true
- name: request.startDate
in: query
required: false
description: "Filters results to pricing options that are purchased on or after this date. Default: **today’s date**."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: The unique ID of the client who is viewing this class list.
schema:
type: integer
format: int32
example: 123456
- name: request.useActivateDate
in: query
required: false
description: 'When this flag is set to `true`, the date filtering will use activate date to filter the pricing options. When this flag is set to `false`, the date filtering will use purchase date
to filter the pricing options. Default: **false**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientCompleteInfoResponse'
examples:
Getclientcompleteinfo200Example:
summary: Default getClientCompleteInfo 200 example
x-microcks-default: true
value:
Client: {}
ClientServices: &id054
- {}
ClientContracts: &id055
- {}
ClientMemberships: &id056
- {}
ClientArrivals: &id057
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientcontracts:
get:
tags:
- Client
summary: Mindbody Get Contracts That a Client Has Purchased
description: Get contracts that a client has purchased.
operationId: getClientContracts
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The ID of the client (RssId).
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: "Determines how many sites are skipped over when retrieving a client’s cross regional contracts. Used when a client ID is linked to more than ten sites in an organization. Only a maximum
of ten site databases are queried when this call is made and `CrossRegionalLookup` is set to `true`. To change which sites are queried, change this offset value. Default: **0**"
schema:
type: integer
format: int32
example: 10
- name: request.crossRegionalLookup
in: query
required: false
description: "When `true`, indicates that the requesting client’s cross regional contracts are returned, if any.
When `false`, indicates that cross regional contracts are not returned."
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.uniqueClientId
in: query
required: false
description: The unique ID of the requested client.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientContractsResponse'
examples:
Getclientcontracts200Example:
summary: Default getClientContracts 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Contracts: &id058
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientdirectdebitinfo:
get:
tags:
- Client
summary: Mindbody This Endpoint Returns Direct Debit Info Stored on a Client's Account
description: "This endpoint returns direct debit info stored on a client's account. This endpoint requires staff user credentials. A null response from this endpoint indicates that the client has
no usable direct debit information on their account.Use the POST AddClientDirectDebitInfo endpoint to add direct debit information to a client’s account."
operationId: getDirectDebitInfo
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: clientId
in: query
required: false
description: The ID of the client.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DirectDebitInfo'
examples:
Getdirectdebitinfo200Example:
summary: Default getDirectDebitInfo 200 example
x-microcks-default: true
value:
NameOnAccount: example-value
RoutingNumber: example-value
AccountNumber: example-value
AccountType: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
delete:
tags:
- Client
summary: "Mindbody This Endpoint Deletes Direct Debit Info from a Client’s Account. This"
description: "This endpoint deletes direct debit info from a client’s account. This endpoint requires staff user credentials."
operationId: deleteDirectDebitInfo
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: clientId
in: query
required: false
description: The ID of the client.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientduplicates:
get:
tags:
- Client
summary: Mindbody This Endpoint Gets Client Records That Would Be Considered Duplicates
description: This endpoint gets client records that would be considered duplicates based on case-insensitive matching of the client's first name, last name, and email. For there to be results,
all three parameters must match a client record. This endpoint requires staff user credentials. An empty `ClientDuplicates` object in the response from this endpoint indicates that there were
no client records found that match the first name, last name, and email fields passed in. If one client record is returned, it is not a duplicate itself, but no other client record can be
created or updated that would match this client's first name, last name, and email combination. If more than one client record is returned, these clients are duplicates of each other.We
recommend discussing with the business how they would like to resolve duplicate records in the event the response contains more than one client record.Businesses can use the Merge Duplicate
Clients tool in the Core Business Mode software to resolve the duplicate client records.
operationId: getClientDuplicates
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.email
in: query
required: false
description: The client email to match on when searching for duplicates.
schema:
type: string
example: kinlane@example.com
- name: request.firstName
in: query
required: false
description: The client first name to match on when searching for duplicates.
schema:
type: string
example: example-value
- name: request.lastName
in: query
required: false
description: The client last name to match on when searching for duplicates.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientDuplicatesResponse'
examples:
Getclientduplicates200Example:
summary: Default getClientDuplicates 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClientDuplicates: &id059
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientformulanotes:
get:
tags:
- Client
summary: 'Mindbody ***QueryParams***: Enables to Retrieve Cross Regional Formula Notes'
description: '***QueryParams***: Enables to retrieve cross regional formula notes for a client, or for a specific appointment. The two parameters are optional, however at least one must be provided.
This endpoint supports pagination.'
operationId: getClientFormulaNotes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.appointmentId
in: query
required: false
description: The appointment ID of an appointment in the studio specified in the header of the request.
schema:
type: integer
format: int32
example: 123456
- name: request.clientId
in: query
required: false
description: The client ID of the client whose formula notes are being requested.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientFormulaNotesResponse'
examples:
Getclientformulanotes200Example:
summary: Default getClientFormulaNotes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
FormulaNotes: &id060
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientindexes:
get:
tags:
- Client
summary: Mindbody Client Indexes Are Used to Analyze Client Demographics. a Business
description: Client indexes are used to analyze client demographics. A business owner can set up different categories with sets of values which they can assign to each client. Client indexes are
used in client searches, for tagging clients so that the owner can send mass emails to similar groups, and for many reports. For more information, see Client Indexes and [Client Index Values
(video tutorial)](https://support.mindbodyonline.com/s/article/203261653-Clien t-indexes-and-client-index-values-video-tutorial?language=en_USclient).
operationId: getClientIndexes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.requiredOnly
in: query
required: false
description: When `true`, filters the results to only indexes that are required on creation.
When `false` or omitted, returns all of the client indexes.
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientIndexesResponse'
examples:
Getclientindexes200Example:
summary: Default getClientIndexes 200 example
x-microcks-default: true
value:
ClientIndexes: &id061
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientpurchases:
get:
tags:
- Client
summary: Mindbody Gets a List of Purchases Made by a Specific Client
description: Gets a list of purchases made by a specific client.
operationId: getClientPurchases
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The ID of the client you are querying for purchases.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: 'Filters results to purchases made before this timestamp.
Default: **end of today**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.saleId
in: query
required: false
description: Filters results to the single record associated with this ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDate
in: query
required: false
description: 'Filters results to purchases made on or after this timestamp.
Default: **now**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: The unique ID of the requested client.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientPurchasesResponse'
examples:
Getclientpurchases200Example:
summary: Default getClientPurchases 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Purchases: &id062
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientreferraltypes:
get:
tags:
- Client
summary: Mindbody Gets a List of Referral Types. Referral Types Are Options That New
description: Gets a list of referral types. Referral types are options that new clients can choose to identify how they learned about the business. Referral types are typically used for the
sign-up process.
operationId: getClientReferralTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.includeInactive
in: query
required: false
description: When `true`, filters the results to include subtypes and inactive referral types.
When `false`, includes no subtypes and only active types. Default:**false**
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientReferralTypesResponse'
examples:
Getclientreferraltypes200Example:
summary: Default getClientReferralTypes 200 example
x-microcks-default: true
value:
ReferralTypes: &id063
- example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientrewards:
get:
tags:
- Client
summary: Mindbody Gets the Client Rewards
description: Gets the client rewards.
operationId: getClientRewards
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The ID of the client.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: 'The end date of transaction. Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.startDate
in: query
required: false
description: 'The start date of transaction. Default: **today**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientRewardsResponse'
examples:
Getclientrewards200Example:
summary: Default getClientRewards 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Balance: 1
Transactions: &id002
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
post:
tags:
- Client
summary: Mindbody Earns or Redeems Rewards Points for a Given Client, Based on Site
description: Earns or redeems rewards points for a given client, based on site settings. Cross regional rewards are not supported at this time.
operationId: updateClientRewards
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientRewardsRequest'
examples:
UpdateclientrewardsRequestExample:
summary: Default updateClientRewards request example
x-microcks-default: true
value:
ClientId: example-value
Points: 1
Action: example-value
Source: example-value
SourceId: 123456
ActionDateTime: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientRewardsResponse'
examples:
Updateclientrewards200Example:
summary: Default updateClientRewards 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Balance: 1
Transactions: *id002
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clients:
get:
tags:
- Client
summary: Mindbody This Endpoint Requires Staff User Credentials. This Endpoint Supports
description: This endpoint requires staff user credentials. This endpoint supports pagination. See Pagination for a description of the Pagination information.
operationId: getClients
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientIDs
in: query
required: false
description: "The requested client IDs. Default: **all IDs** that the authenticated user’s access level allows.
Note: You can fetch information for maximum 20 clients at once."
schema:
type: array
items:
type: string
example:
- example-value
- name: request.includeInactive
in: query
required: false
description: 'When `true`, indicates the results to include active and inactive clients.
When `false`, indicates that only those clients who are marked as active should be returned. Default:
**false**'
schema:
type: boolean
example: true
- name: request.isProspect
in: query
required: false
description: When `true`, filters the results to include only those clients marked as prospects for the business.
When `false`, indicates that only those clients who are not marked
prospects should be returned.
schema:
type: boolean
example: true
- name: request.lastModifiedDate
in: query
required: false
description: Filters the results to include only the clients that have been modified on or after this date.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.searchText
in: query
required: false
description: Text to use in the search. Can include FirstName, LastName, and Email. Note that user credentials must be provided.
schema:
type: string
example: example-value
- name: request.uniqueIds
in: query
required: false
description: "Filters results to clients with these `UniqueIDs`. This parameter cannot be used with `ClientIDs` or `SearchText`. Default: **all UniqueIDs** that the authenticated user’s access level
allows."
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientsResponse'
examples:
Getclients200Example:
summary: Default getClients 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Clients: &id067
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientschedule:
get:
tags:
- Client
summary: Mindbody This Endpoint Can Be Utilized to Retrieve Scheduled Visits Which is
description: This endpoint can be utilized to retrieve scheduled visits which is associated with the requested client.
operationId: getClientSchedule
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: The number of sites to skip when returning the site associated with a client.
schema:
type: integer
format: int32
example: 10
- name: request.clientId
in: query
required: false
description: The ID of the requested client.
schema:
type: string
example: example-value
- name: request.crossRegionalLookup
in: query
required: false
description: When `true`, indicates that past and scheduled client visits across all sites in the region are returned. When `false`, indicates that only visits at the current site are
returned.
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: "The date past which class visits are not returned. Default is today’s date"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.includeWaitlistEntries
in: query
required: false
description: 'When `true`, waitlist entries are included in the response. When `false`, waitlist entries are removed from the response. Default: **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.startDate
in: query
required: false
description: The date before which class visits are not returned. Default is the end date
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: 'The unique ID of the requested client. Note: you need to provide the ''UniqueClientId'' OR the ''ClientId''. If both are provided, the ''UniqueClientId'' takes precedence.'
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientScheduleResponse'
examples:
Getclientschedule200Example:
summary: Default getClientSchedule 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Visits: &id064
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientservices:
get:
tags:
- Client
summary: Mindbody Get Pricing Options That a Client Has Purchased
description: Get pricing options that a client has purchased.
operationId: getClientServices
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classId
in: query
required: false
description: Filters results to only those pricing options that can be used to pay for this class.
schema:
type: integer
format: int32
example: 123456
- name: request.classScheduleID
in: query
required: false
description: Filters results to pricing options which are associated with one of the ClassScheduleIDs
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: "Used to retrieve a client’s pricing options from multiple sites within an organization when the client is associated with more than ten sites. To change which ten sites are searched,
change this offset value. A value of 0 means that no sites are skipped and the first ten sites are returned. You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations`
to determine how many sites the client is associated with. Note that you must always have `CrossRegionalLooku"
schema:
type: integer
format: int32
example: 10
- name: request.clientId
in: query
required: false
description: "The ID of the client to query. The results are a list of pricing options that the client has purchased. Note that “service” and “pricing option” are synonymous in this section of the
documentation."
schema:
type: string
example: example-value
- name: request.clientIds
in: query
required: false
description: The IDs of the clients to query. The results are a list of pricing options that the clients have purchased. ClientId parameter takes priority over ClientIds due to backward
compatibility. So if you want to use ClientIds, then ClientId needs to be empty. Either of ClientId or ClientIds need to be specified
schema:
type: array
items:
type: string
example:
- example-value
- name: request.crossRegionalLookup
in: query
required: false
description: "Used to retrieve a client’s pricing options from multiple sites within an organization. When included and set to `true`, it searches a maximum of ten sites with which this client is
associated. When a client is associated with more than ten sites, use `ClientAssociatedSitesOffset` as many times as needed to search the additional sites with which the client is associated.
You can use the `CrossRegionalClientAssociations` value from `GET CrossRegionalClientAssociations` to determine how many sites"
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: "Filters results to pricing options that are purchased on or before this date. Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.excludeInactiveSites
in: query
required: false
description: 'When this flag is set to `true`, will exclude inactive sites from the response. Default: **false**'
schema:
type: boolean
example: true
- name: request.ignoreCrossRegionalSiteLimit
in: query
required: false
description: "Used to specify if the number of cross regional sites used to search for client’s pricing options should be ignored. Default: **false**"
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: Filters results to pricing options that can be used at the listed location IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: Filters results to pricing options that belong to one of the given program IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sessionTypeId
in: query
required: false
description: Filters results to pricing options that will pay for the given session type ID. Use this to find pricing options that will pay for a specific appointment type.
schema:
type: integer
format: int32
example: 123456
- name: request.showActiveOnly
in: query
required: false
description: 'When `true`, includes active services only. Default: **false**'
schema:
type: boolean
example: true
- name: request.startDate
in: query
required: false
description: "Filters results to pricing options that are purchased on or after this date. Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: The unique ID of the client to query. Note that UniqueClientId takes precedence over ClientId.
schema:
type: integer
format: int32
example: 123456
- name: request.uniqueClientIds
in: query
required: false
description: The Unique IDs of the clients to query. Note that UniqueClientIds collection takes precedence over ClientIds collection.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.useActivateDate
in: query
required: false
description: 'When this flag is set to `true`, the date filtering will use activate date to filter the pricing options. When this flag is set to `false`, the date filtering will use purchase date
to filter the pricing options. Default: **false**'
schema:
type: boolean
example: true
- name: request.visitCount
in: query
required: false
description: A filter on the minimum number of visits a service can pay for.
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientServicesResponse'
examples:
Getclientservices200Example:
summary: Default getClientServices 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ClientServices: &id065
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientvisits:
get:
tags:
- Client
summary: Mindbody Gets the Client Visits for a Specific Client
description: Gets the Client Visits for a specific client.
operationId: getClientVisits
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientAssociatedSitesOffset
in: query
required: false
description: The number of sites to skip when returning the site associated with a client.
schema:
type: integer
format: int32
example: 10
- name: request.clientId
in: query
required: false
description: The ID of the requested client.
schema:
type: string
example: example-value
- name: request.crossRegionalLookup
in: query
required: false
description: When `true`, indicates that past and scheduled client visits across all sites in the region are returned.
When `false`, indicates that only visits at the current site are
returned.
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: 'The date past which class visits are not returned. Default: **today''s date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.order
in: query
required: false
description: The sort order for the results.
When `desc`, results are returned in descending order (newest first).
When `asc`, results are returned in ascending order (oldest
first).
schema:
type: string
example: example-value
- name: request.startDate
in: query
required: false
description: 'The date before which class visits are not returned. Default: **the end date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.uniqueClientId
in: query
required: false
description: 'The unique ID of the requested client. Note: you need to provide the ''UniqueClientId'' OR the ''ClientId''. If both are provided, the ''UniqueClientId'' takes precedence.'
schema:
type: integer
format: int32
example: 123456
- name: request.unpaidsOnly
in: query
required: false
description: 'When `true`, indicates that only visits that have not been paid for are returned.
When `false`, indicates that all visits are returned, regardless of whether they have been paid
for.
Default: **false**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetClientVisitsResponse'
examples:
Getclientvisits200Example:
summary: Default getClientVisits 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Visits: &id066
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/contactlogs:
get:
tags:
- Client
summary: Mindbody This Endpoint Contains a Variety of Filters That Can Return Not Just
description: This endpoint contains a variety of filters that can return not just all contact logs, but also system-generated contact logs, contact logs assigned to specific staff members, and
contact logs of specific types or subtypes.
operationId: getContactLogs
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The ID of the client whose contact logs are being requested.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: 'Filters the results to contact logs created before this date.
Default: **the start date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.showSystemGenerated
in: query
required: false
description: 'When `true`, system-generated contact logs are returned in the results.
Default: **false**'
schema:
type: boolean
example: true
- name: request.staffIds
in: query
required: false
description: Filters the results to return contact logs assigned to one or more staff IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: 'Filters the results to contact logs created on or after this date.
Default: **the current date**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.subtypeIds
in: query
required: false
description: Filters the results to contact logs assigned one or more of these subtype IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.typeIds
in: query
required: false
description: Filters the results to contact logs assigned one or more of these type IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetContactLogsResponse'
examples:
Getcontactlogs200Example:
summary: Default getContactLogs 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ContactLogs: &id070
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/contactlogtypes:
get:
tags:
- Client
summary: Mindbody This Endpoint Contains a Variety of Filters That Can Return Not Just
description: This endpoint contains a variety of filters that can return not just all contact logs, but also system-generated contact logs, contact logs assigned to specific staff members, and
contact logs of specific types or subtypes.
operationId: getContactLogTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.contactLogTypeId
in: query
required: false
description: "The requested ContactLogType ID. Default: **all** IDs that the authenticated user’s access level allows."
schema:
type: integer
format: int32
example: 123456
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetContactLogTypesResponse'
examples:
Getcontactlogtypes200Example:
summary: Default getContactLogTypes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ContactLogTypes: &id069
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/crossregionalclientassociations:
get:
tags:
- Client
summary: Mindbody Returns a List of Sites That a Particular Client ID (also Referred to
description: Returns a list of sites that a particular client ID (also referred to as an RSSID) or a client email address is associated with in a cross-regional organization. Either the
`ClientID` or `Email` parameter is required. If both are provided, the `ClientID` is used. Use this endpoint to retrieve information for other Public API endpoints, about the same client at
multiple sites within an organization. To use this endpoint, your developer account must have been granted permission to the site's entire organization. Note that this endpoint does not work
on the Developer Sandbox site, as it is not set up for cross-regional use cases.
operationId: getCrossRegionalClientAssociations
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: false
description: "Looks up the cross regional associations by the client’s ID."
schema:
type: string
example: example-value
- name: request.email
in: query
required: false
description: "Looks up the cross regional associations by the client’s email address."
schema:
type: string
example: kinlane@example.com
- name: request.excludeInactiveSites
in: query
required: false
description: 'Used to exclude inactive and deleted sites from the results. When this flag is set to `true`, client profiles associated with inactive and deleted sites are not getting returned. When
this flag is set to `false`,client profiles associated with inactive and deleted sites are getting returned. Default: **true**'
schema:
type: boolean
example: true
- name: request.firstName
in: query
required: false
description: First name (used for email queries)
schema:
type: string
example: example-value
- name: request.lastName
in: query
required: false
description: Last name (used for email queries)
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.uniqueClientId
in: query
required: false
description: "Looks up the cross regional associations by the unique client’s ID. Note: you need to provide the 'UniqueClientId' OR the 'ClientId' OR the 'Email'. 'UniqueClientId' takes precedence
when provided. If not, but both 'ClientId' and 'Email' are provided, 'ClientId' is used by default."
schema:
type: integer
format: int32
example: 123456
- name: request.v2
in: query
required: false
description: Use newer method
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCrossRegionalClientAssociationsResponse'
examples:
Getcrossregionalclientassociations200Example:
summary: Default getCrossRegionalClientAssociations 200 example
x-microcks-default: true
value:
PaginationResponse: {}
CrossRegionalClientAssociations: &id073
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/customclientfields:
get:
tags:
- Client
summary: Mindbody Get a Site's Configured Custom Client Fields
description: Get a site's configured custom client fields.
operationId: getCustomClientFields
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomClientFieldsResponse'
examples:
Getcustomclientfields200Example:
summary: Default getCustomClientFields 200 example
x-microcks-default: true
value:
PaginationResponse: {}
CustomClientFields: &id074
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/requiredclientfields:
get:
tags:
- Client
summary: Mindbody Gets the List of Fields That a New Client Has to Fill Out in Business
description: Gets the list of fields that a new client has to fill out in business mode, specifically for the sign-up process. `AddClient` and `UpdateClient` validate against these fields. This
endpoint has no query parameters.
operationId: getRequiredClientFields
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetRequiredClientFieldsResponse'
examples:
Getrequiredclientfields200Example:
summary: Default getRequiredClientFields 200 example
x-microcks-default: true
value:
RequiredClientFields: &id089
- example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/addarrival:
post:
tags:
- Client
summary: Mindbody Marks a Client as Arrived for a Specified Location. a Staff User Token
description: 'Marks a client as arrived for a specified location. A staff user token must be included with staff assigned the LaunchSignInScreen permission. When used on a site that is part of a region,
the following additional logic will apply: * When a client exists within the region but not at the studio where the arrival is being logged, a local client record will be automatically created.
* If the local client does not have an applicable local membership or pricing option, a membership or pricing option will be automatically used if it exists elsewhere within the region.'
operationId: addArrival
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddArrivalRequest'
examples:
AddarrivalRequestExample:
summary: Default addArrival request example
x-microcks-default: true
value:
ClientId: example-value
LocationId: 123456
ArrivalTypeId: 123456
LeadChannelId: 123456
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddArrivalResponse'
examples:
Addarrival200Example:
summary: Default addArrival 200 example
x-microcks-default: true
value:
ArrivalAdded: true
ClientService: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/addclient:
post:
tags:
- Client
summary: Mindbody Starting the Week of May 11th, 2020 All Versions of the Public API
description: Starting the week of May 11th, 2020 all versions of the Public API will no longer allow duplicate clients to be created. This applies to both adding a client and updating a client
record. A duplicate client is created when two profiles have the same first name, last name and email.
Creates a new client record at the specified business.Passing a User Token as
Authorization will create a client and respect Business Mode required fields.Omitting the token will create a client and respect Consumer Mode required fi elds. To make sure you are collecting
all required pieces of information, first run GetRequired ClientFields.
If you have purchased an Ultimate tier then this endpoint will automatically start showing new opportunity on
Sales Pipeline.
operationId: addClient
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientRequest'
examples:
AddclientRequestExample:
summary: Default addClient request example
x-microcks-default: true
value:
FirstName: Alex
LastName: Lane
AccountBalance: 49.99
Action: {}
Active: true
AddressLine1: 123 Market St
AddressLine2: 123 Market St
ApptGenderPrefMale: true
BirthDate: '2026-05-28T14:30:00Z'
City: San Francisco
ClientCreditCard: {}
ClientIndexes: &id018
- {}
ClientRelationships: &id019
- {}
Country: US
CreationDate: '2026-05-28T14:30:00Z'
CustomClientFields: &id020
- {}
Email: kinlane@example.com
EmergencyContactInfoEmail: kinlane@example.com
EmergencyContactInfoName: example-value
EmergencyContactInfoPhone: '+15551234567'
EmergencyContactInfoRelationship: example-value
FirstAppointmentDate: '2026-05-28T14:30:00Z'
Gender: example-value
HomeLocation: {}
HomePhone: '+15551234567'
IsCompany: true
IsProspect: true
LastFormulaNotes: Example note for Mindbody Public API.
LastModifiedDateTime: '2026-05-28T14:30:00Z'
Liability: {}
LiabilityRelease: true
MembershipIcon: 1
MiddleName: example-value
MobilePhone: '+15551234567'
MobileProvider: 1
NewId: example-value
Notes: Example note for Mindbody Public API.
PhotoUrl: https://example.mindbodyonline.com/resource/abc123
PostalCode: '94110'
ProspectStage: {}
RedAlert: example-value
ReferredBy: example-value
SalesReps: &id021
- {}
SiteId: -99
State: CA
Status: Active
Test: true
UniqueId: 123456
WorkExtension: example-value
WorkPhone: '+15551234567'
YellowAlert: example-value
SendScheduleEmails: true
SendAccountEmails: true
SendPromotionalEmails: true
SendScheduleTexts: true
SendAccountTexts: true
SendPromotionalTexts: true
LockerNumber: example-value
ReactivateInactiveClient: true
LeadChannelId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientResponse'
examples:
Addclient200Example:
summary: Default addClient 200 example
x-microcks-default: true
value:
Client: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/addclientdirectdebitinfo:
post:
tags:
- Client
summary: "Mindbody This Endpoint Adds Direct Debit Info to a Client’s Account. This"
description: "This endpoint adds direct debit info to a client’s account. This endpoint requires staff user credentials."
operationId: addClientDirectDebitInfo
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientDirectDebitInfoRequest'
examples:
AddclientdirectdebitinfoRequestExample:
summary: Default addClientDirectDebitInfo request example
x-microcks-default: true
value:
Test: true
ClientId: example-value
NameOnAccount: example-value
RoutingNumber: example-value
AccountNumber: example-value
AccountType: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientDirectDebitInfoResponse'
examples:
Addclientdirectdebitinfo200Example:
summary: Default addClientDirectDebitInfo 200 example
x-microcks-default: true
value:
ClientId: example-value
NameOnAccount: example-value
RoutingNumber: example-value
AccountNumber: example-value
AccountType: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/addclientformulanote:
post:
tags:
- Client
summary: Mindbody This Endpoint Adds a Formula Note for a Specified Client or Specified
description: This endpoint adds a formula note for a specified client or specified client appointment. A staff user token must be included with staff assigned permission to view client profile
or have both ViewAppointmentDetails and ModifyAppointment permissions.
operationId: addFormulaNote
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddFormulaNoteRequest'
examples:
AddformulanoteRequestExample:
summary: Default addFormulaNote request example
x-microcks-default: true
value:
ClientId: example-value
Note: example-value
AppointmentId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FormulaNoteResponse'
examples:
Addformulanote200Example:
summary: Default addFormulaNote 200 example
x-microcks-default: true
value:
Id: 123456
ClientId: example-value
AppointmentId: 123456
EntryDate: '2026-05-28T14:30:00Z'
Note: example-value
SiteId: -99
SiteName: example-value
StaffFirstName: example-value
StaffLastName: example-value
StaffDisplayName: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/addcontactlog:
post:
tags:
- Client
summary: Mindbody Add a Contact Log to a Client's Account
description: Add a contact log to a client's account.
operationId: addContactLog
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddContactLogRequest'
examples:
AddcontactlogRequestExample:
summary: Default addContactLog request example
x-microcks-default: true
value:
ClientId: example-value
ContactMethod: example-value
AssignedToStaffId: 123456
Text: example-value
FollowupByDate: '2026-05-28T14:30:00Z'
ContactName: example-value
IsComplete: true
Comments: &id023
- Example note for Mindbody Public API.
Types: &id024
- {}
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ContactLog'
examples:
Addcontactlog200Example:
summary: Default addContactLog 200 example
x-microcks-default: true
value:
Id: 123456
Text: example-value
CreatedDateTime: '2026-05-28T14:30:00Z'
FollowupByDate: '2026-05-28T14:30:00Z'
ContactMethod: example-value
ContactName: example-value
Client: {}
CreatedBy: {}
AssignedTo: {}
Comments: &id003
- {}
Types: &id004
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/mergeclients:
post:
tags:
- Client
summary: Mindbody This Endpoint Helps to Merge Clients
description: This endpoint helps to merge clients.
operationId: mergeClient
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/MergeClientsRequest'
examples:
MergeclientRequestExample:
summary: Default mergeClient request example
x-microcks-default: true
value:
SourceClientId: 123456
TargetClientId: 123456
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/sendautoemail:
post:
tags:
- Client
summary: Mindbody This Endpoint Requires Staff User Credentials
description: This endpoint requires staff user credentials.
operationId: sendAutoEmail
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SendAutoEmailRequest'
examples:
SendautoemailRequestExample:
summary: Default sendAutoEmail request example
x-microcks-default: true
value:
ClientId: example-value
EmailType: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/sendpasswordresetemail:
post:
tags:
- Client
summary: Mindbody Send a Password Reset Email to a Client
description: Send a password reset email to a client.
operationId: sendPasswordResetEmail
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SendPasswordResetEmailRequest'
examples:
SendpasswordresetemailRequestExample:
summary: Default sendPasswordResetEmail request example
x-microcks-default: true
value:
UserEmail: kinlane@example.com
UserFirstName: example-value
UserLastName: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/suspendcontract:
post:
tags:
- Client
summary: Mindbody Suspend Client Contract
description: Suspend client contract
operationId: suspendContract
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SuspendContractRequest'
examples:
SuspendcontractRequestExample:
summary: Default suspendContract request example
x-microcks-default: true
value:
ClientId: example-value
ClientContractId: 123456
SuspensionType: example-value
SuspensionStart: '2026-05-28T14:30:00Z'
Duration: 1
DurationUnit: 1
OpenEnded: true
SuspensionNotes: Example note for Mindbody Public API.
SuspensionFee: 1.0
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SuspendContractResponse'
examples:
Suspendcontract200Example:
summary: Default suspendContract 200 example
x-microcks-default: true
value:
Contract: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/terminatecontract:
post:
tags:
- Client
summary: Mindbody This Endpoint Terminates a Client Contract. This Endpoint Requires
description: This endpoint terminates a client contract. This endpoint requires staff user credentials with TerminateClientContract permission.
operationId: terminateContract
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TerminateContractRequest'
examples:
TerminatecontractRequestExample:
summary: Default terminateContract request example
x-microcks-default: true
value:
ClientId: example-value
ClientContractId: 123456
TerminationDate: '2026-05-28T14:30:00Z'
TerminationCode: example-value
TerminationComments: Example note for Mindbody Public API.
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/TerminateContractResponse'
examples:
Terminatecontract200Example:
summary: Default terminateContract 200 example
x-microcks-default: true
value:
Contract: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/updateclient:
post:
tags:
- Client
summary: Mindbody Starting the Week of May 11th, 2020 All Versions of the Public API
description: 'Starting the week of May 11th, 2020 all versions of the Public API will no longer allow duplicate clients to be created. This applies to both adding a client and updating a client record.
A duplicate client is created when two profiles have the same first name, last name and email.
Updates an existing client for a specific subscriber.Passing a User Token as Authorization respects
Business Mode required fields.Omitting the token respects Consumer Mode required fields.To make sure you are collecting all required pieces of information, first run GetRequiredClientFields.
. Use this endpoint as follows: * If you need to update the `ReferredBy` parameter, use this endpoint after calling `GET ClientReferralTypes`. * When updating a client''s home location, use after
calling `GET Locations`. * If you are updating a client''s stored credit card, use after calling `GET AcceptedCardTypes` so that you can make sure the card is a type that is accepted at the subscriber.
* If this endpoint is used on a cross-regional site, passing in a client''s RSSID and email address creates a cross-regional link. This means that the client is created in cross-regional sites where
the client does not exist and `GET CrossRegionalClientAssociations` returns all appropriate cross-regional sites. * When `CrossRegionalUpdate` is omitted or set to `true`, the client''s updated
information is propagated to all of the region''s sites. If `CrossRegionalUpdate` is set to `false`, only the local client is updated. * Important: Starting in June 2025, the fields RSSID, Prefix,
Name, Email, Birthday, Phone, and Address will automatically update cross-regionally when changed, regardless of the CrossRegionalUpdate setting. The update is rolling out on a per customer basis
and is expected to complete to all customers by September 2025. Note that the following items cannot be updated for a cross-regional client: * `ClientIndexes` * `ClientRelationships` * `CustomClientFields`
* `SalesReps` * `SendAccountE'
operationId: updateClient
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientRequest'
examples:
UpdateclientRequestExample:
summary: Default updateClient request example
x-microcks-default: true
value:
Client: {}
Test: true
CrossRegionalUpdate: true
NewId: example-value
LeadChannelId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientResponse'
examples:
Updateclient200Example:
summary: Default updateClient 200 example
x-microcks-default: true
value:
Client: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/updateclientcontractautopays:
post:
tags:
- Client
summary: Mindbody This Endpoint Can Be Used to Update the Amount And/or the Item of a
description: "This endpoint can be used to update the amount and/or the item of a client’s autopay schedule."
operationId: updateClientContractAutopays
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientContractAutopaysRequest'
examples:
UpdateclientcontractautopaysRequestExample:
summary: Default updateClientContractAutopays request example
x-microcks-default: true
value:
ClientContractId: 123456
AutopayStartDate: '2026-05-28T14:30:00Z'
AutopayEndDate: '2026-05-28T14:30:00Z'
ProductId: 123456
ReplaceWithProductId: 123456
Amount: 49.99
OverwriteAllProductIDs: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Contract'
examples:
Updateclientcontractautopays200Example:
summary: Default updateClientContractAutopays 200 example
x-microcks-default: true
value:
Id: 123456
Name: Sunset Yoga Studio
Description: Example note for Mindbody Public API.
AssignsMembershipId: 123456
AssignsMembershipName: example-value
SoldOnline: true
ContractItems: &id037
- {}
IntroOffer: example-value
AutopaySchedule: {}
NumberOfAutopays: 1
AutopayTriggerType: example-value
ActionUponCompletionOfAutopays: example-value
ClientsChargedOn: example-value
ClientsChargedOnSpecificDate: '2026-05-28T14:30:00Z'
DiscountAmount: 49.99
DepositAmount: 49.99
FirstAutopayFree: true
LastAutopayFree: true
ClientTerminateOnline: true
MembershipTypeRestrictions: &id038
- {}
LocationPurchaseRestrictionIds: &id039
- 1
LocationPurchaseRestrictionNames: &id040
- example-value
AgreementTerms: example-value
RequiresElectronicConfirmation: true
AutopayEnabled: true
FirstPaymentAmountSubtotal: 49.99
FirstPaymentAmountTax: 49.99
FirstPaymentAmountTotal: 49.99
RecurringPaymentAmountSubtotal: 49.99
RecurringPaymentAmountTax: 49.99
RecurringPaymentAmountTotal: 49.99
TotalContractAmountSubtotal: 49.99
TotalContractAmountTax: 49.99
TotalContractAmountTotal: 49.99
PromoPaymentAmountSubtotal: 49.99
PromoPaymentAmountTax: 49.99
PromoPaymentAmountTotal: 49.99
NumberOfPromoAutopays: 1
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/updateclientservice:
post:
tags:
- Client
summary: Mindbody Updates the Active Date And/or Expiration Date of a Client Pricing
description: Updates the active date and/or expiration date of a client pricing option. This request requires staff user credentials. If the active date is modified, the expiration date is also
modified accordingly. If the expiration date is modified, the active date is unchanged.
operationId: updateClientService
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientServiceRequest'
examples:
UpdateclientserviceRequestExample:
summary: Default updateClientService request example
x-microcks-default: true
value:
ServiceId: 123456
ActiveDate: '2026-05-28T14:30:00Z'
ExpirationDate: '2026-05-28T14:30:00Z'
Count: 10
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientServiceResponse'
examples:
Updateclientservice200Example:
summary: Default updateClientService 200 example
x-microcks-default: true
value:
ClientService: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/updateclientvisit:
post:
tags:
- Client
summary: Mindbody Updates the Status of the Specified Visit
description: Updates the status of the specified visit.
operationId: updateClientVisit
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientVisitRequest'
examples:
UpdateclientvisitRequestExample:
summary: Default updateClientVisit request example
x-microcks-default: true
value:
VisitId: 123456
Makeup: true
SignedIn: true
ClientServiceId: 123456
Execute: example-value
Test: true
SendEmail: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientVisitResponse'
examples:
Updateclientvisit200Example:
summary: Default updateClientVisit 200 example
x-microcks-default: true
value:
Visit: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/updatecontactlog:
post:
tags:
- Client
summary: Mindbody Update a Contact Log on a Client's Account
description: Update a contact log on a client's account.
operationId: updateContactLog
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateContactLogRequest'
examples:
UpdatecontactlogRequestExample:
summary: Default updateContactLog request example
x-microcks-default: true
value:
Id: 123456
Test: true
AssignedToStaffId: 123456
Text: example-value
ContactName: example-value
FollowupByDate: '2026-05-28T14:30:00Z'
ContactMethod: example-value
IsComplete: true
Comments: &id125
- {}
Types: &id126
- {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ContactLog'
examples:
Updatecontactlog200Example:
summary: Default updateContactLog 200 example
x-microcks-default: true
value:
Id: 123456
Text: example-value
CreatedDateTime: '2026-05-28T14:30:00Z'
FollowupByDate: '2026-05-28T14:30:00Z'
ContactMethod: example-value
ContactName: example-value
Client: {}
CreatedBy: {}
AssignedTo: {}
Comments: *id003
Types: *id004
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/uploadclientdocument:
post:
tags:
- Client
summary: Mindbody Uploads a Document File for a Specific Client. Returns a String
description: Uploads a document file for a specific client. Returns a string representation of the image byte array. The maximum size file that can be uploaded is **4MB**.
operationId: uploadClientDocument
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UploadClientDocumentRequest'
examples:
UploadclientdocumentRequestExample:
summary: Default uploadClientDocument request example
x-microcks-default: true
value:
ClientId: example-value
File: {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UploadClientDocumentResponse'
examples:
Uploadclientdocument200Example:
summary: Default uploadClientDocument 200 example
x-microcks-default: true
value:
FileSize: 1
FileName: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/uploadclientphoto:
post:
tags:
- Client
summary: "Mindbody Uploads a Client’s Profile Photo. the Maximum File Size is 4 MB and"
description: "Uploads a client’s profile photo. The maximum file size is 4 MB and acceptable file types are: * bmp * jpeg * gif * tiff * png"
operationId: uploadClientPhoto
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UploadClientPhotoRequest'
examples:
UploadclientphotoRequestExample:
summary: Default uploadClientPhoto request example
x-microcks-default: true
value:
Bytes: example-value
ClientId: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UploadClientPhotoResponse'
examples:
Uploadclientphoto200Example:
summary: Default uploadClientPhoto 200 example
x-microcks-default: true
value:
ClientId: example-value
PhotoUrl: https://example.mindbodyonline.com/resource/abc123
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/clientformulanote:
delete:
tags:
- Client
summary: Mindbody This Endpoint Deletes an Existing Formula Note. a Staff User Token
description: This endpoint deletes an existing formula note. A staff user token must be included with staff assigned permission to view client profile or have both ViewAppointmentDetails and
ModifyAppointment permissions.
operationId: deleteClientFormulaNote
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The client ID of the client whose formula note needs to be deleted.
schema:
type: string
example: example-value
- name: request.formulaNoteId
in: query
required: true
description: The formula note ID for the note to be deleted.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/client/deletecontactlog:
delete:
tags:
- Client
summary: Mindbody This Endpoint Deletes Contactlog of Client. This Endpoint Requires
description: This endpoint deletes contactlog of client. This endpoint requires staff user credentials.
operationId: deleteContactLog
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: true
description: The client ID of the client whose Contact Log is being deleted.
schema:
type: string
example: example-value
- name: request.contactLogId
in: query
required: true
description: The Contact Log ID.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.test
in: query
required: false
description: "When `true`, indicates that this is a test request and no data is inserted into the subscriber’s database. When `false`, the database is updated."
schema:
type: boolean
example: true
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/crossSite/copycreditcard:
post:
tags:
- Cross Site
summary: Mindbody Copies the Credit Card Information from One Client to Another,
description: Copies the credit card information from one client to another, regardless of site. The source and target clients must have the same email address.
operationId: copyCreditCard
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CopyCreditCardRequest'
examples:
CopycreditcardRequestExample:
summary: Default copyCreditCard request example
x-microcks-default: true
value:
SourceSiteId: 123456
SourceClientId: example-value
SourceUniqueClientId: 123456
TargetSiteId: 123456
TargetClientId: example-value
TargetUniqueClientId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CopyCreditCardResponse'
examples:
Copycreditcard200Example:
summary: Default copyCreditCard 200 example
x-microcks-default: true
value:
CopiedFrom: {}
CopiedTo: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/enrollment/enrollments:
get:
tags:
- Enrollment
summary: Mindbody Returns a List of Enrollments. an Enrollment is a Service, Such as a
description: 'Returns a list of enrollments. An enrollment is a service, such as a workshop or an event, that a staff member offers to multiple students, who commit to coming to all or most of the
scheduled sessions. Enrollments typically run for a limited time only. When a user token is not passed with the request or the passed user token has insufficient viewing permissions, only the following
staff data is returned in the response: * FirstName * LastName * Id * Bio * DisplayName * ImageUrl'
operationId: getEnrollments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classScheduleIds
in: query
required: false
description: A list of the requested class schedule IDs. If omitted, all class schedule IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.endDate
in: query
required: false
description: 'The end of the date range. The response returns any active enrollments that occur on or before this day.
Default: **StartDate**'
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: List of the IDs for the requested locations. If omitted, all location IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: List of the IDs for the requested programs. If omitted, all program IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sessionTypeIds
in: query
required: false
description: List of the IDs for the requested session types. If omitted, all session types IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.staffIds
in: query
required: false
description: List of the IDs for the requested staff IDs. If omitted, all staff IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDate
in: query
required: false
description: "The start of the date range. The response returns any active enrollments that occur on or after this day.
Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetEnrollmentsResponse'
examples:
Getenrollments200Example:
summary: Default getEnrollments 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Enrollments: &id076
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/enrollment/addclienttoenrollment:
post:
tags:
- Enrollment
summary: Mindbody Book a Client Into an Enrollment
description: Book a client into an enrollment.
operationId: addClientToEnrollment
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClientToEnrollmentRequest'
examples:
AddclienttoenrollmentRequestExample:
summary: Default addClientToEnrollment request example
x-microcks-default: true
value:
ClientId: example-value
ClassScheduleId: 123456
EnrollDateForward: '2026-05-28T14:30:00Z'
EnrollOpen: &id022
- '2026-05-28T14:30:00Z'
Test: true
SendEmail: true
Waitlist: true
WaitlistEntryId: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ClassSchedule'
examples:
Addclienttoenrollment200Example:
summary: Default addClientToEnrollment 200 example
x-microcks-default: true
value:
Classes: &id035
- {}
Clients: &id036
- {}
Course: {}
SemesterId: 123456
IsAvailable: true
Id: 123456
ClassDescription: {}
DaySunday: true
DayMonday: true
DayTuesday: true
DayWednesday: true
DayThursday: true
DayFriday: true
DaySaturday: true
AllowOpenEnrollment: true
AllowDateForwardEnrollment: true
StartTime: '2026-05-28T14:30:00Z'
EndTime: '2026-05-28T14:30:00Z'
StartDate: '2026-05-28T14:30:00Z'
EndDate: '2026-05-28T14:30:00Z'
Staff: {}
Location: {}
FrequencyType: {}
FrequencyInterval: 1
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/enrollment/addenrollmentschedule:
post:
tags:
- Enrollment
summary: Mindbody This Endpoint Adds a Enrollment Schedule. You Can Require Clients to
description: This endpoint adds a enrollment schedule. You can require clients to sign up for the entire enrollment schedule or allow them to pick specific sessions using the AllowOpenEnrollment
parameter.
operationId: addEnrollmentSchedule
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddClassEnrollmentScheduleRequest'
examples:
AddenrollmentscheduleRequestExample:
summary: Default addEnrollmentSchedule request example
x-microcks-default: true
value:
ClassDescriptionId: 123456
LocationId: 123456
StartDate: '2026-05-28T14:30:00Z'
EndDate: '2026-05-28T14:30:00Z'
StartTime: '2026-05-28T14:30:00Z'
EndTime: '2026-05-28T14:30:00Z'
DaySunday: true
DayMonday: true
DayTuesday: true
DayWednesday: true
DayThursday: true
DayFriday: true
DaySaturday: true
StaffId: 123456
StaffPayRate: 1
ResourceId: 123456
MaxCapacity: 1
WebCapacity: 1
WaitlistCapacity: 1
BookingStatus: Active
AllowOpenEnrollment: true
AllowDateForwardEnrollment: true
PricingOptionsProductIds: *id005
ShowToPublic: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WrittenClassSchedulesInfo'
examples:
Addenrollmentschedule200Example:
summary: Default addEnrollmentSchedule 200 example
x-microcks-default: true
value:
ClassId: 123456
ClassInstanceIds: *id001
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/enrollment/updateenrollmentschedule:
post:
tags:
- Enrollment
summary: Mindbody This Endpoint Update a Enrollment Schedule
description: This endpoint update a enrollment schedule.
operationId: updateEnrollmentSchedule
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClassEnrollmentScheduleRequest'
examples:
UpdateenrollmentscheduleRequestExample:
summary: Default updateEnrollmentSchedule request example
x-microcks-default: true
value:
ClassId: 123456
ClassDescriptionId: 123456
LocationId: 123456
StartDate: '2026-05-28T14:30:00Z'
EndDate: '2026-05-28T14:30:00Z'
StartTime: '2026-05-28T14:30:00Z'
EndTime: '2026-05-28T14:30:00Z'
DaySunday: true
DayMonday: true
DayTuesday: true
DayWednesday: true
DayThursday: true
DayFriday: true
DaySaturday: true
StaffId: 123456
StaffPayRate: 1
ResourceId: 123456
MaxCapacity: 1
WebCapacity: 1
WaitlistCapacity: 1
BookingStatus: Active
AllowOpenEnrollment: true
AllowDateForwardEnrollment: true
RetainScheduleChanges: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WrittenClassSchedulesInfo'
examples:
Updateenrollmentschedule200Example:
summary: Default updateEnrollmentSchedule 200 example
x-microcks-default: true
value:
ClassId: 123456
ClassInstanceIds: *id001
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/payroll/commissions:
get:
tags:
- Payroll
summary: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
description: A staff authorization token is not required for this endpoint, but if one is passed, its permissions are honored. Depending on the access permissions configured for the staff member
whose token is passed, the endpoint returns either only the payroll information for that staff member or it returns the payroll information for all staff members.
operationId: getCommissions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDateTime
in: query
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today’s date** * If you do not supply an `EndDateTime`,
the data returns for the period from the `StartDateTime` that you supply to today’s date. * If you do not supply an `EndDateTime` or a `StartDateTime`, data returns for the seven days prior to
today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffId
in: query
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDateTime
in: query
required: false
description: "The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateTime`, the data returns for seven days prior to today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCommissionsResponse'
examples:
Getcommissions200Example:
summary: Default getCommissions 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Commissions: &id068
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/payroll/scheduledserviceearnings:
get:
tags:
- Payroll
summary: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
description: "A staff authorization token is not required for this endpoint, but if one is passed, its permissions are honored. Depending on the access permissions configured for the staff member
whose token is passed, the endpoint returns either only the payroll information for that staff member or it returns the payroll information for all staff members. Note that if a staff member is
not paid for a class, earnings of zero are returned by this endpoint. Note that this endpoint calculates both bonus and no-reg rates for assistants.These rates are not supported by the Payroll report
in the web interface. Note that this endpoint returns both the teacher’s adjusted rate and the assistant’s pay rate when the assistant is paid by the teacher.The Payroll report in the web interface
only returns the teacher’s adjusted rate."
operationId: getScheduledServiceEarnings
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDateTime
in: query
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today’s date** * If you do not supply an `EndDateTime`,
the data returns for the period from the `StartDateTime` that you supply to today’s date. * If you do not supply an `EndDateTime` or a `StartDateTime`, data returns for the seven days prior to
today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.scheduledServiceId
in: query
required: false
description: Filters the results to a single scheduled service. This parameter must be used with a single ScheduledServiceType.
schema:
type: integer
format: int32
example: 123456
- name: request.scheduledServiceType
in: query
required: false
description: 'Filters the results to schedule service earnings for specific types of services. Possible values: * Class * Appointment'
schema:
type: string
example: example-value
- name: request.staffId
in: query
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDateTime
in: query
required: false
description: "The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateTime`, the data returns for seven days prior to today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetScheduledServiceEarningsResponse'
examples:
Getscheduledserviceearnings200Example:
summary: Default getScheduledServiceEarnings 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ScheduledServiceEarnings: &id095
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/payroll/timecards:
get:
tags:
- Payroll
summary: Mindbody This Endpoint Returns Information for All Locations. the **View
description: This endpoint returns information for all locations. The **View reports for all locations permission **is not supported for staff auth tokens.
operationId: getTimeCards
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDateTime
in: query
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today’s date** * If you do not supply an `EndDateTime`,
the data returns for the period from the `StartDateTime` that you supply to today’s date. * If you do not supply an `EndDateTime` or a `StartDateTime`, data returns for the seven days prior to
today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffId
in: query
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDateTime
in: query
required: false
description: "The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateTime`, the data returns for seven days prior to today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetTimeCardsResponse'
examples:
Gettimecards200Example:
summary: Default getTimeCards 200 example
x-microcks-default: true
value:
PaginationResponse: {}
TimeCards: &id103
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/payroll/tips:
get:
tags:
- Payroll
summary: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
description: A staff authorization token is not required for this endpoint, but if one is passed, its permissions are honored. Depending on the access permissions configured for the staff member
whose token is passed, the endpoint returns either only the payroll information for that staff member or it returns the payroll information for all staff members. This endpoint returns
information for all locations.The** View reports for all locations **permission is not supported for staff auth tokens.
operationId: getTips
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDateTime
in: query
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today’s date** * If you do not supply an `EndDateTime`,
the data returns for the period from the `StartDateTime` that you supply to today’s date. * If you do not supply an `EndDateTime` or a `StartDateTime`, data returns for the seven days prior to
today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.staffId
in: query
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startDateTime
in: query
required: false
description: "The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateTime`, the data returns for seven days prior to today’s date."
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetTipsResponse'
examples:
Gettips200Example:
summary: Default getTips 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Tips: &id104
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/pickaspot/v1/class:
get:
tags:
- Pick A Spot
summary: Mindbody This Endpoint Supports Pagination. See Pagination Object for a
description: This endpoint supports pagination. See Pagination object for a description.
operationId: getClassList
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetPickASpotClassResponse'
examples:
Getclasslist200Example:
summary: Default getClassList 200 example
x-microcks-default: true
value:
classes: &id006
- {}
pagination: {}
responseDetails: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/pickaspot/v1/class/{classId}:
get:
tags:
- Pick A Spot
summary: Mindbody Get a Class Filtered by ClassId
description: Get a class filtered by classId.
operationId: getClass
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: classId
in: path
required: true
description: The request template parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetPickASpotClassResponse'
examples:
Getclass200Example:
summary: Default getClass 200 example
x-microcks-default: true
value:
classes: *id006
pagination: {}
responseDetails: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/pickaspot/v1/reservation/{pathInfo}:
get:
tags:
- Pick A Spot
summary: Mindbody Retrieves Reservation for Pick a Spot
description: Retrieves reservation for Pick a Spot.
operationId: getReservation
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: pathInfo
in: path
required: true
description: The request template parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetReservationResponse'
examples:
Getreservation200Example:
summary: Default getReservation 200 example
x-microcks-default: true
value:
Reservations: &id090
- {}
Pagination: {}
ResponseDetails: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
put:
tags:
- Pick A Spot
summary: Mindbody A User Token is Required for This Endpoint
description: A user token is required for this endpoint. This endpoint updates a single reservation.
operationId: updateReservation
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: pathInfo
in: path
required: true
description: The request template parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateReservationResponse'
examples:
Updatereservation200Example:
summary: Default updateReservation 200 example
x-microcks-default: true
value:
Reservation: {}
ResponseDetails: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
post:
tags:
- Pick A Spot
summary: Mindbody Creates a Spot Reservation for a Given Pick-a-spot Class. the Actual
description: 'Creates a spot reservation for a given pick-a-spot class. The actual class visit must be created prior to calling this endpoint. A user token is required for this endpoint. Sample request:
POST /pickaspot/v1/reservation { "SiteId": -1147483363, "LocationId": 1, "ClassId": "64b14ac8c20ae8f0afd2d409", "ReservationExternalId": "44724", // this is a Visit.Id and should be linked to a
specific class visit "MemberExternalId": "100000136", // this is Client''s UniqueId "SpotNumber": "5", "ReservationDisplayName": "ReservationDisplayName", // optional "ReservationType": "Member",
// optional. Can be Member, Guest, Instructor, FamilyMember, "AutoConfirm": false, // optional. Default: false "AutoAssignSpot": false // optional. It will override the "SpotNumber" passed and auto
assign one. Default: false }'
operationId: createReservation
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: pathInfo
in: path
required: true
description: The request template parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateReservationResponse'
examples:
Createreservation200Example:
summary: Default createReservation 200 example
x-microcks-default: true
value:
Reservation: {}
ResponseDetails: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
delete:
tags:
- Pick A Spot
summary: Mindbody A User Token is Required for This Endpoint
description: A user token is required for this endpoint. This endpoint deletes a single reservation.
operationId: deleteReservation
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: pathInfo
in: path
required: true
description: The request template parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/HttpContent'
examples:
Deletereservation200Example:
summary: Default deleteReservation 200 example
x-microcks-default: true
value:
Headers: &id108
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/acceptedcardtypes:
get:
tags:
- Sale
summary: Mindbody Gets a List of Card Types That the Site Accepts. You Can Also Use `GET
description: 'Gets a list of card types that the site accepts. You can also use `GET Sites` to return the Site object, which contains individual accepted card types for requested sites. This endpoint
has no query parameters.The response returns a list of strings. Possible values are: * Visa * MasterCard * Discover * AMEX'
operationId: getAcceptedCardTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/alternativepaymentmethods:
get:
tags:
- Sale
summary: Mindbody Get Alternative and Local Payment Methods That Are Allowed for a Site
description: 'Get alternative and local payment methods that are allowed for a site. These payment methods can later be used in `Initiate Checkout Shopping Cart Using Alternative Payments` and `Initiate
Purchase Contract Using Alternative Payments` to make the payment. The currently supported alternative payments are: - iDEAL - Apple Pay **Notes:** - This endpoint is only available for Studios
on MBPS (Mindbody Payments) with Stripe payment processor. - This endpoint only supports the online store location (LocationId = 98). If LocationId is not provided, it will default to 98.'
operationId: getAlternativePaymentMethods
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: false
description: The client ID
schema:
type: string
example: example-value
- name: request.locationId
in: query
required: false
description: 'The location ID Default: **null** (Online store location)'
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetAlternativePaymentMethodsResponse'
examples:
Getalternativepaymentmethods200Example:
summary: Default getAlternativePaymentMethods 200 example
x-microcks-default: true
value:
PaymentMethods: &id045
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/contracts:
get:
tags:
- Sale
summary: Mindbody Returns the Contracts and Autopay Options That Are Available on a
description: Returns the contracts and autopay options that are available on a location-by-location basis. Depending on the configurations established by the site, this endpoint returns options
that can be used to sign up clients for recurring payments for services offered by the business.
operationId: getContracts
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.locationId
in: query
required: true
description: The ID of the location that has the requested contracts and AutoPay options.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.contractIds
in: query
required: false
description: When included, the response only contains details about the specified contract IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.promoCode
in: query
required: false
description: PromoCode to apply
schema:
type: string
example: example-value
- name: request.soldOnline
in: query
required: false
description: 'When `true`, the response only contains details about contracts and AutoPay options that can be sold online. When `false`, all contracts are returned. Default: **false**'
schema:
type: boolean
example: true
- name: request.uniqueClientId
in: query
required: false
description: The ID of the client.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetContractsResponse'
examples:
Getcontracts200Example:
summary: Default getContracts 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Contracts: &id071
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/custompaymentmethods:
get:
tags:
- Sale
summary: Mindbody Get Payment Methods That Can Be Used to Pay for Sales at a Site
description: Get payment methods that can be used to pay for sales at a site.
operationId: getCustomPaymentMethods
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomPaymentMethodsResponse'
examples:
Getcustompaymentmethods200Example:
summary: Default getCustomPaymentMethods 200 example
x-microcks-default: true
value:
PaginationResponse: {}
PaymentMethods: &id075
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/giftcardbalance:
get:
tags:
- Sale
summary: "Mindbody Returns a Gift Card’s Remaining Balance"
description: "Returns a gift card’s remaining balance."
operationId: getGiftCardBalance
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: barcodeId
in: query
required: false
description: The barcode ID of the gift card for which you want the balance.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetGiftCardBalanceResponse'
examples:
Getgiftcardbalance200Example:
summary: Default getGiftCardBalance 200 example
x-microcks-default: true
value:
BarcodeId: example-value
RemainingBalance: 49.99
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/giftcards:
get:
tags:
- Sale
summary: Mindbody Returns Information About Gift Cards That Can Be Purchased
description: Returns information about gift cards that can be purchased.
operationId: getGiftCards
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.ids
in: query
required: false
description: 'Filters the results to the requested gift card IDs.
Default: **all** gift cards.'
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.includeCustomLayouts
in: query
required: false
description: 'When `true`, includes custom gift card layouts.
When `false`, includes only system layouts. Default: **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: When included, returns gift cards that are sold at the provided location ID.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.soldOnline
in: query
required: false
description: 'When `true`, only returns gift cards that are sold online.
Default: **false**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetGiftCardResponse'
examples:
Getgiftcards200Example:
summary: Default getGiftCards 200 example
x-microcks-default: true
value:
PaginationResponse: {}
GiftCards: &id078
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/packages:
get:
tags:
- Sale
summary: Mindbody A Package is Typically Used to Combine Multiple Services And/or
description: A package is typically used to combine multiple services and/or products into a single offering. Staff members can check out multiple appointments while selling the package, and can
discount the items included. For example, a spa might bundle a massage, a pedicure, a manicure, a facial, and a few selected beauty products into a package.
operationId: getPackages
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: 'The location ID to use to determine the tax for the products that this request returns.
Default: **online store**'
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.packageIds
in: query
required: false
description: A list of the packages IDs to filter by.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sellOnline
in: query
required: false
description: 'When `true`, only returns products that can be sold online.
When `false`, all products are returned.
Default: **false**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetPackagesResponse'
examples:
Getpackages200Example:
summary: Default getPackages 200 example
x-microcks-default: true
value:
Packages: &id082
- {}
PaginationResponse: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/products:
get:
tags:
- Sale
summary: Mindbody Get Retail Products Available for Purchase at a Site
description: Get retail products available for purchase at a site.
operationId: getProducts
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.categoryIds
in: query
required: false
description: A list of revenue category IDs to filter by. Use this ID when calling the GET Categories endpoint.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: 'The location ID to use to determine the tax for the products that this request returns.
Default: **online store**'
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.productIds
in: query
required: false
description: The barcode number of the product to be filter by.
schema:
type: array
items:
type: string
example:
- example-value
- name: request.searchText
in: query
required: false
description: A search filter, used for searching by term.
schema:
type: string
example: example-value
- name: request.secondaryCategoryIds
in: query
required: false
description: A list of secondary categories to filter by. Use this ID when calling the GET Categories endpoint.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sellOnline
in: query
required: false
description: 'When `true`, only products that can be sold online are returned.
When `false`, all products are returned.
Default: **false**'
schema:
type: boolean
example: true
- name: request.subCategoryIds
in: query
required: false
description: A list of subcategory IDs to filter by. Use this ID when calling the GET Categories endpoint.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetProductsResponse'
examples:
Getproducts200Example:
summary: Default getProducts 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Products: &id007
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
put:
tags:
- Sale
summary: Mindbody Update Retail Products Available for Purchase at a Site
description: Update retail products available for purchase at a site.
operationId: updateProducts
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UpdateProductRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetProductsResponse'
examples:
Updateproducts200Example:
summary: Default updateProducts 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Products: *id007
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/productsinventory:
get:
tags:
- Sale
summary: Mindbody Get Retail Products Inventory Data Available at a Site
description: Get retail products inventory data available at a site.
operationId: getProductsInventory
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.barcodeIds
in: query
required: false
description: When included, the response only contains details about the specified Barcode Ids.
schema:
type: array
items:
type: string
example:
- example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: When included, the response only contains details about the specified location Ids.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.productIds
in: query
required: false
description: When included, the response only contains details about the specified product Ids.
schema:
type: array
items:
type: string
example:
- example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetProductsInventoryResponse'
examples:
Getproductsinventory200Example:
summary: Default getProductsInventory 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ProductsInventory: &id084
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/purchasecontractstatus:
get:
tags:
- Sale
summary: Mindbody Fetches the Status of an Initiate Purchase Contract Given AccessToken
description: 'Fetches the status of an initiate purchase contract given accessToken. This endpoint complements the `Initiate Purchase Contract Using Alternative Payments` endpoint. `Initiate Purchase
Contract Using Alternative Payments` endpoint will capture the intent to purchase a contract, and return a redirect URL for the end user to make the payment. Once the payment concludes, the end
user will be redirected back to the PaymentAuthenticationCallbackUrl, which was provided while invoking the `Initiate Purchase Contract Using Alternative Payments` endpoint. You can then invoke
this endpoint to obtain the `PurchaseContractResponse`. **For a comprehensive guide, follow this tutorial:** [Purchase a Contract](https://developers.mindbodyonline.com/ui/documentation/public -api#/http/tutorials/purchase-a-contract)
The currently supported alternative payments are: - iDEAL - Apple Pay'
operationId: getPurchaseContractStatus
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: accessToken
in: query
required: true
description: The request query parameter.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseContractResponse'
examples:
Getpurchasecontractstatus200Example:
summary: Default getPurchaseContractStatus 200 example
x-microcks-default: true
value:
ClientId: example-value
UniqueClientId: 123456
LocationId: 123456
ContractId: 123456
ClientContractId: 123456
Totals: {}
PaymentProcessingFailures: &id011
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/sales:
get:
tags:
- Sale
summary: Mindbody Get Sales Completed at a Site
description: Get sales completed at a site.
operationId: getSales
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endSaleDateTime
in: query
required: false
description: Filters results to sales that happened before this date and time.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.paymentMethodId
in: query
required: false
description: Filters results to sales paid for by the given payment method ID which indicates payment method(s) (i.e. cash, VISA, AMEX, Check, etc.).
schema:
type: integer
format: int32
example: 123456
- name: request.saleId
in: query
required: false
description: The sale ID associated with the particular item. It Filters results to the requested sale ID.
schema:
type: integer
format: int32
example: 123456
- name: request.startSaleDateTime
in: query
required: false
description: Filters results to sales that happened after this date and time.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetSalesResponse'
examples:
Getsales200Example:
summary: Default getSales 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Sales: &id093
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/services:
get:
tags:
- Sale
summary: Mindbody Get Pricing Options Available for Purchase at a Site
description: Get pricing options available for purchase at a site
operationId: getServices
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.classId
in: query
required: false
description: Filters to the pricing options for the specified class ID.
schema:
type: integer
format: int32
example: 123456
- name: request.classScheduleId
in: query
required: false
description: Filters to the pricing options for the specified class schedule ID.
schema:
type: integer
format: int32
example: 123456
- name: request.hideRelatedPrograms
in: query
required: false
description: 'When `true`, indicates that pricing options of related programs are omitted from the response.
Default: **false**'
schema:
type: boolean
example: true
- name: request.includeDiscontinued
in: query
required: false
description: 'When `true`, indicates that the filtered pricing option list includes discontinued pricing options.
Default: **false**'
schema:
type: boolean
example: true
- name: request.includeSaleInContractOnly
in: query
required: false
description: 'When `true`, indicates that the filtered pricing option list includes sale in contract only pricing options.
Default: **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: When specified, for each returned pricing option, `TaxRate` and `TaxIncluded` are calculated according to the specified location. Note that this does not filter results to only
services provided at the given location, and for locations where Value-Added Tax (VAT) rules apply, the `TaxRate` is set to zero.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: Filters to pricing options with the specified program IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.sellOnline
in: query
required: false
description: 'When `true`, filters the pricing options to display only those available for online purchase. This parameter is only applicable in Business Mode (when a staff authentication header
is included) and ignored in Consumer Mode (when no authentication header is passed).
Default: `false` (for staff users)
Business Mode: This parameter controls the filtering behavior.
Staff users can set this to `true` to show only pricing options that can be sold online, or `false` to show all available pr'
schema:
type: boolean
example: true
- name: request.serviceIds
in: query
required: false
description: Filters to the pricing options with the specified IDs. In this context, service and pricing option are used interchangeably. These are the `PurchasedItems[].Id` returned from GET
Sales.
schema:
type: array
items:
type: string
example:
- example-value
- name: request.sessionTypeIds
in: query
required: false
description: Filters to the pricing options with the specified session types IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.staffId
in: query
required: false
description: Sets `Price` and `OnlinePrice` to the particular pricing of a specific staff member, if allowed by the business.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetServicesResponse'
examples:
Getservices200Example:
summary: Default getServices 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Services: &id097
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
put:
tags:
- Sale
summary: Mindbody Update Unit Price and Online Price of Provided Services
description: Update unit price and online price of provided services.
operationId: updateServices
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UpdateServiceRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateServiceResponse'
examples:
Updateservices200Example:
summary: Default updateServices 200 example
x-microcks-default: true
value:
Services: &id127
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/transactions:
get:
tags:
- Sale
summary: Mindbody This Endpoint Returns a List of Transaction Details of Processed Sales
description: This endpoint returns a list of transaction details of processed sales.
operationId: getTransactions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.clientId
in: query
required: false
description: Filters results to the requested client ID.
schema:
type: integer
format: int32
example: 123456
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: Filters the transaction results with the ID number associated with the location of the sale.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.saleId
in: query
required: false
description: Filters the transaction results with the ID number associated with the sale.
schema:
type: integer
format: int32
example: 123456
- name: request.status
in: query
required: false
description: Filters the transaction results by the estimated transaction status.
schema:
type: string
example: example-value
- name: request.transactionEndDateTime
in: query
required: false
description: "Filters the transaction results that happpened before this date and time. Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.transactionId
in: query
required: false
description: Filters the transaction results with the ID number generated when the sale is processed.
schema:
type: integer
format: int32
example: 123456
- name: request.transactionStartDateTime
in: query
required: false
description: "Filters the transaction results that happpened after this date and time. Default: **today’s date**"
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetTransactionsResponse'
examples:
Gettransactions200Example:
summary: Default getTransactions 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Transactions: &id105
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/checkoutshoppingcart:
post:
tags:
- Sale
summary: Mindbody This Endpoint Provides a Wide Range of Functionality. for Example, You
description: "This endpoint provides a wide range of functionality. For example, you can use it when a client purchases new pricing options, retail products, packages, and tips. You can also combine
purchasing a new pricing option and many other functions, such as booking a client into a class, booking a new appointment for a client, enrolling a client into an enrollment or course, or reconciling
an unpaid, already booked appointment or class. Use this call when a client purchases: * a pricing option, after calling `GET Services` and choosing a specific pricing option’s ID * a retail product,
after calling `GET Products` and choosing a specific retail product’s ID * a package, after calling `GET Packages` and choosing a specific package’s ID * a tip to give to a staff member, after calling
`GET Staff` and choosing a specific staff member ID, and the amount that the client wants to tip The documentation provides explanations of the request body and response, as well as the cart item
metadata, payment item metadata, and purchased cart items. This endpoint had been updated to support Strong Customer Authentication (SCA). **Note :** Protect yourself from processor fees and credit
card fraud.Remember to always protect your web forms that leverage POST CheckoutShoppingCart, POST PurchaseContract or POST PurchaseGiftCard with a CAPTCHA!"
operationId: checkoutShoppingCart
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CheckoutShoppingCartRequest'
examples:
CheckoutshoppingcartRequestExample:
summary: Default checkoutShoppingCart request example
x-microcks-default: true
value:
Items: &id032
- {}
Payments: &id033
- {}
CartId: example-value
ClientId: example-value
UniqueClientId: 123456
PayerClientId: example-value
UniquePayerClientId: 123456
Test: true
InStore: true
CalculateTax: true
PromotionCode: example-value
SendEmail: true
LocationId: 123456
Image: example-value
ImageFileName: example-value
ConsumerPresent: true
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
TransactionIds: &id034
- 1
IsBillingPostalCodeRequired: true
EnforceLocationRestrictions: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CheckoutShoppingCartResponse'
examples:
Checkoutshoppingcart200Example:
summary: Default checkoutShoppingCart 200 example
x-microcks-default: true
value:
ShoppingCart: {}
Classes: &id008
- {}
Appointments: &id009
- {}
Enrollments: &id010
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/completecheckoutshoppingcart:
post:
tags:
- Sale
summary: Mindbody This Endpoint Complements the InitiateCheckoutShoppintCart Endpoint
description: 'This endpoint complements the InitiateCheckoutShoppintCart endpoint. Please visit its documentation to understand further. The currently supported alternative payments are: - iDEAL -
Apple Pay **How to use :** InitiateCheckoutShoppingCart and CompleteCheckoutShoppingCart endpoints work together. InitiateCheckoutShoppingCart endpoint will capture the intent to perform a checkout,
and return a redirect URL for the end user to make the payment. Once the payment concludes, the end user will be redirected back to the PaymentAuthenticationCallbackUrl, which was provided while
invoking the InitiateCheckoutShoppingCart endpoint. You can then invoke the CompleteCheckoutShoppingCart endpoint to complete the remaining checkout activities and obtain the CheckoutShoppingCartResponse.
**For a comprehensive guide, follow this tutorial:** [Checkout Shopping Cart Using Alternative Payments](https://developers.mindbodyonline.com/ui/documentation/public -api#/http/tutorials/checkout-shopping-cart-using-alternative-payments)
**Notes:** - This endpoint is only available for Studios on MBPS (Mindbody Payments) with Stripe payment processor. - Protect yourself from processor fees. Remember to always protect your web forms
that leverage POST InitiateCheckoutShoppingCart or POST CompleteCheckoutShoppingCart with a CAPTCHA!'
operationId: completeCheckoutShoppingCartUsingAlternativePayments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CompleteCheckoutShoppingCartUsingAlternativePaymentsRequest'
examples:
CompletecheckoutshoppingcartusingalternativepaymentsRequestExample:
summary: Default completeCheckoutShoppingCartUsingAlternativePayments request example
x-microcks-default: true
value:
AccessToken: example-value
ClientId: example-value
Test: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CheckoutShoppingCartResponse'
examples:
Completecheckoutshoppingcartusingalternativepayments200Example:
summary: Default completeCheckoutShoppingCartUsingAlternativePayments 200 example
x-microcks-default: true
value:
ShoppingCart: {}
Classes: *id008
Appointments: *id009
Enrollments: *id010
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/initiatecheckoutshoppingcart:
post:
tags:
- Sale
summary: Mindbody This Endpoint Provides a Wide Range of Functionality. for Example, You
description: "This endpoint provides a wide range of functionality. For example, you can use it when a client purchases new pricing options, retail products, packages, and tips. You can also combine
purchasing a new pricing option and many other functions, such as booking a client into a class, booking a new appointment for a client, enrolling a client into an enrollment or course, or reconciling
an unpaid, already booked appointment or class. Use this call when a client purchases: * a pricing option, after calling `GET Services` and choosing a specific pricing option’s ID * a retail product,
after calling `GET Products` and choosing a specific retail product’s ID * a package, after calling `GET Packages` and choosing a specific package’s ID * a tip to give to a staff member, after calling
`GET Staff` and choosing a specific staff member ID, and the amount that the client wants to tip The documentation provides explanations of the request body and response, as well as the cart item
metadata, payment item metadata, and purchased cart items. The currently supported alternative payments are: - iDEAL - Apple Pay **How to use :** InitiateCheckoutShoppingCart and CompleteCheckoutShoppingCart
endpoints work together. InitiateCheckoutShoppingCart endpoint will capture the intent to perform a checkout, and return a redirect URL for the end user to make the payment. Once the payment concludes,
the end user will be redirected back to the PaymentAuthenticationCallbackUrl, which was provided while invoking the InitiateCheckoutShoppingCart endpoint. You can then invoke the CompleteCheckoutShoppingCart
endpoint to complete the remaining checkout activities and obtain the CheckoutShoppingCartResponse. **For a comprehensive guide, follow this tutorial:** [Checkout Shopping Cart Using Alternative
Payments](https://developers.mindbodyonline.com/ui/documentation/public -api#/http/tutorials/checkout-shopping-cart-using-alternative-payments) **Notes:** - This endpoint is only available for Studios
on "
operationId: initiateCheckoutShoppingCartUsingAlternativePayments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InitiateCheckoutShoppingCartUsingAlternativePaymentsRequest'
examples:
InitiatecheckoutshoppingcartusingalternativepaymentsRequestExample:
summary: Default initiateCheckoutShoppingCartUsingAlternativePayments request example
x-microcks-default: true
value:
ClientId: example-value
Items: &id109
- {}
Payments: &id110
- {}
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
CartId: example-value
PayerClientId: example-value
Test: true
InStore: true
CalculateTax: true
PromotionCode: example-value
SendEmail: true
LocationId: 123456
TransactionIds: &id111
- 1
IsBillingPostalCodeRequired: true
EnforceLocationRestrictions: true
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/initiatepurchasecontract:
post:
tags:
- Sale
summary: Mindbody Allows a Client to Sign Up for a Contract or Autopay Using the
description: 'Allows a client to sign up for a contract or autopay using the information returned from the `GET Contracts` endpoint. The client can pay with allowed alternative and local payment methods
returned from `Get Alternative Payment Method`. The client must exist at the site specified before this call is made. The currently supported alternative payments are: - iDEAL - Apple Pay **For
a comprehensive guide, follow this tutorial:** [Purchase a Contract](https://developers.mindbodyonline.com/ui/documentation/public -api#/http/tutorials/purchase-a-contract) **Notes:** - This endpoint
is only available for Studios on MBPS (Mindbody Payments) with Stripe payment processor. - This endpoint only supports the online store location (LocationId = 98). If LocationId is not provided,
it will default to 98. - This endpoint only supports those payment methods as obtained from the GetAlternativePaymentMethods endpoint. - Protect yourself from processor fees and credit card fraud.
Remember to always protect your web forms that leverage POST CheckoutShoppingCart, POST PurchaseContract or POST PurchaseGiftCard with a CAPTCHA!'
operationId: initiatePurchaseContractUsingAlternativePayments
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InitiatePurchaseContractRequest'
examples:
InitiatepurchasecontractusingalternativepaymentsRequestExample:
summary: Default initiatePurchaseContractUsingAlternativePayments request example
x-microcks-default: true
value:
ClientId: example-value
ContractId: 123456
PaymentMethodId: 123456
Test: true
LocationId: 123456
PromotionCode: example-value
PromotionCodes: &id112
- example-value
SendNotifications: true
SalesRepId: 123456
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/purchaseaccountcredit:
post:
tags:
- Sale
summary: Mindbody Allows a Client to Purchase Account Credit from a Business
description: Allows a client to purchase account credit from a business.
operationId: purchaseAccountCredit
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseAccountCreditRequest'
examples:
PurchaseaccountcreditRequestExample:
summary: Default purchaseAccountCredit request example
x-microcks-default: true
value:
ClientId: example-value
Test: true
LocationId: 123456
SendEmailReceipt: true
SalesRepId: 123456
ConsumerPresent: true
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
PaymentInfo: {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseAccountCreditResponse'
examples:
Purchaseaccountcredit200Example:
summary: Default purchaseAccountCredit 200 example
x-microcks-default: true
value:
AmountPaid: 49.99
ClientId: example-value
SaleId: 123456
EmailReceipt: true
PaymentProcessingFailures: &id113
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/purchasecontract:
post:
tags:
- Sale
summary: Mindbody Allows a Client to Sign Up for a Contract or Autopay Using the
description: "Allows a client to sign up for a contract or autopay using the information returned from the `GET Contracts` endpoint. The client can pay with a new credit card or with a stored credit
card. The client must exist at the site specified before this call is made. This endpoint allows a developer to specify whether a client pays now or pays on the `StartDate`. If you are building
a client-facing experience, you should talk with the business owner to understand the owner’s policies before you give clients a choice of the two payment types. This endpoint also allows a developer
to specify a `ProrateDate`. If the date is passed, the Totals returned will always include the pro-rate amount for instant payment, like: - `FirstPaymentOccurs` = `Instant` => returns instant
payment total for the contract + pro-rate amount. - `FirstPaymentOccurs` = `StartDate` => returns pro-rate amount + contract amount requiring instant payment. The rest of the contract will be
due on `StartDate`. - Pro-rate amount payment on `StartDate` is not supported by this endpoint. This endpoint has been updated to support Strong Customer Authentication (SCA). **Note:** Protect
yourself from processor fees and credit card fraud. Remember to always protect your web forms that leverage POST CheckoutShoppingCart, POST PurchaseContract or POST PurchaseGiftCard with a CAPTCHA!"
operationId: purchaseContract
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseContractRequest'
examples:
PurchasecontractRequestExample:
summary: Default purchaseContract request example
x-microcks-default: true
value:
ContractId: 123456
Test: true
LocationId: 123456
ClientId: example-value
UniqueClientId: 123456
StartDate: '2026-05-28T14:30:00Z'
FirstPaymentOccurs: example-value
ClientSignature: example-value
PromotionCode: example-value
PromotionCodes: &id114
- example-value
CreditCardInfo: {}
StoredCardInfo: {}
SendNotifications: true
SalesRepId: 123456
UseDirectDebit: true
UseAccountCredit: true
ConsumerPresent: true
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
ProrateDate: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseContractResponse'
examples:
Purchasecontract200Example:
summary: Default purchaseContract 200 example
x-microcks-default: true
value:
ClientId: example-value
UniqueClientId: 123456
LocationId: 123456
ContractId: 123456
ClientContractId: 123456
Totals: {}
PaymentProcessingFailures: *id011
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/purchasegiftcard:
post:
tags:
- Sale
summary: Mindbody Allows a Client to Purchase a Gift Card from a Business in a Variety
description: Allows a client to purchase a gift card from a business in a variety of designs. The card can be emailed to the recipient on a specific day, and a card title and a personal message
can be added. **Note** Protect yourself from processor fees and credit card fraud.Remember to always protect your web forms that leverage POST CheckoutShoppingCart, POST PurchaseContract or
POST PurchaseGiftCard with a CAPTCHA!
operationId: purchaseGiftCard
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseGiftCardRequest'
examples:
PurchasegiftcardRequestExample:
summary: Default purchaseGiftCard request example
x-microcks-default: true
value:
LocationId: 123456
PurchaserClientId: example-value
GiftCardId: 123456
Test: true
LayoutId: 123456
SendEmailReceipt: true
RecipientEmail: kinlane@example.com
RecipientName: example-value
Title: example-value
GiftMessage: example-value
DeliveryDate: '2026-05-28T14:30:00Z'
PaymentInfo: {}
SalesRepId: 123456
ConsumerPresent: true
PaymentAuthenticationCallbackUrl: https://example.mindbodyonline.com/resource/abc123
BarcodeId: example-value
SenderName: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseGiftCardResponse'
examples:
Purchasegiftcard200Example:
summary: Default purchaseGiftCard 200 example
x-microcks-default: true
value:
BarcodeId: example-value
Value: 1.0
AmountPaid: 49.99
FromName: example-value
LayoutId: 123456
EmailReceipt: true
PurchaserClientId: example-value
PurchaserEmail: kinlane@example.com
RecipientEmail: kinlane@example.com
SaleId: 123456
PaymentProcessingFailures: &id115
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/returnsale:
post:
tags:
- Sale
summary: Mindbody Return a Comped Sale for a Specified Sale ID in Business Mode. the
description: Return a comped sale for a specified sale ID in business mode. The sale is returnable only if it is a sale of a service, product or gift card and it has not been used. Currently,
only the comp payment method is supported.
operationId: returnSale
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ReturnSaleRequest'
examples:
ReturnsaleRequestExample:
summary: Default returnSale request example
x-microcks-default: true
value:
SaleId: 123456
ReturnReason: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReturnSaleResponse'
examples:
Returnsale200Example:
summary: Default returnSale 200 example
x-microcks-default: true
value:
ReturnSaleID: 1
TrainerID: 1
Amount: 49.99
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/updateproductprice:
post:
tags:
- Sale
summary: Mindbody This Endpoint Updates the Retail Price and an Online Price for a
description: This endpoint updates the retail price and an online price for a product. Passing at least one of them is mandatory.
operationId: updateProductPrice
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateProductPriceRequest'
examples:
UpdateproductpriceRequestExample:
summary: Default updateProductPrice request example
x-microcks-default: true
value:
BarcodeId: example-value
Price: 49.99
OnlinePrice: 49.99
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateProductPriceResponse'
examples:
Updateproductprice200Example:
summary: Default updateProductPrice 200 example
x-microcks-default: true
value:
Product: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/sale/updatesaledate:
put:
tags:
- Sale
summary: Mindbody This Endpoint Updates the SaleDate and Returns the Details of the Sale
description: This endpoint updates the SaleDate and returns the details of the sale.
operationId: updateSaleDate
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSaleDateRequest'
examples:
UpdatesaledateRequestExample:
summary: Default updateSaleDate request example
x-microcks-default: true
value:
SaleID: 1
SaleDate: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSaleDateResponse'
examples:
Updatesaledate200Example:
summary: Default updateSaleDate 200 example
x-microcks-default: true
value:
Sale: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/activationcode:
get:
tags:
- Site
summary: Mindbody Before You Can Use This Endpoint, MINDBODY Must Approve Your Developer
description: Before you can use this endpoint, MINDBODY must approve your developer account for live access. If you have finished testing in the sandbox and are ready to begin working with
MINDBODY customers, log into your account and request to go live. See [Accessing Business Data From MINDBODY](https://developers.mindbodyonline.com/PublicDocumentation/V6#
accessing-business-data) for more information about the activation code and how to use it. Once you are approved, this endpoint returns an activation code.This endpoint supports only one site
per call.
operationId: getActivationCode
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetActivationCodeResponse'
examples:
Getactivationcode200Example:
summary: Default getActivationCode 200 example
x-microcks-default: true
value:
ActivationCode: example-value
ActivationLink: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/categories:
get:
tags:
- Site
summary: Mindbody Gets the Categories
description: Gets the categories.
operationId: getCategories
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When `true`, the response only contains categories which are activated. When `false`, only deactivated categories are returned. Default: **All Categories**'
schema:
type: boolean
example: true
- name: request.categoryIds
in: query
required: false
description: When included, the response only contains details about the specified category Ids.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.service
in: query
required: false
description: 'When `true`, the response only contains details about Revenue Categories. When `false`, only Product Revenue Categories are returned. Default: **All Categories**'
schema:
type: boolean
example: true
- name: request.subCategoryIds
in: query
required: false
description: When included, the response only contains details about the specified subcategory Ids.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetCategoriesResponse'
examples:
Getcategories200Example:
summary: Default getCategories 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Categories: &id049
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/genders:
get:
tags:
- Site
summary: Mindbody The Endpoint Returns a List of Configured Client Gender Options for a
description: The endpoint returns a list of configured client gender options for a site. Custom gender options are assignable to client genders only. Currently, custom values returned from this
endpoint cannot be used as input for other endpoints to specify the genders of staff or client preferences.
operationId: getGenders
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetGendersResponse'
examples:
Getgenders200Example:
summary: Default getGenders 200 example
x-microcks-default: true
value:
GenderOptions: &id077
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/liabilitywaiver:
get:
tags:
- Site
summary: Mindbody Gets Liability Waiver Content at the Specified Business
description: Gets Liability Waiver content at the specified business. This endpoint requires staff user credentials.
operationId: getLiabilityWaiver
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetLiabilityWaiverResponse'
examples:
Getliabilitywaiver200Example:
summary: Default getLiabilityWaiver 200 example
x-microcks-default: true
value:
LiabilityWaiver: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/locations:
get:
tags:
- Site
summary: Mindbody Get Locations for a Site
description: Get locations for a site.
operationId: getLocations
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetLocationsResponse'
examples:
Getlocations200Example:
summary: Default getLocations 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Locations: &id079
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/memberships:
get:
tags:
- Site
summary: Mindbody Get the Memberships at a Site
description: Get the memberships at a site.
operationId: getMemberships
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.membershipIds
in: query
required: false
description: "The requested membership IDs.
Default: **all** IDs that the authenticated user’s access level allows."
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetMembershipsResponse'
examples:
Getmemberships200Example:
summary: Default getMemberships 200 example
x-microcks-default: true
value:
Memberships: &id080
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/mobileproviders:
get:
tags:
- Site
summary: Mindbody Get the List of Mobile Providers That Are Supported by the Business
description: Get the list of mobile providers that are supported by the business.
operationId: getMobileProviders
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When `true`, the response only contains mobile providers which are activated. When `false`, only deactivated mobile providers are returned. Default: **All Mobile Providers**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetMobileProvidersResponse'
examples:
Getmobileproviders200Example:
summary: Default getMobileProviders 200 example
x-microcks-default: true
value:
MobileProviders: &id081
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/paymenttypes:
get:
tags:
- Site
summary: Mindbody Get Payment Types for a Site
description: Get payment types for a site.
operationId: getPaymentTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When `true`, the response only contains payment types which are activated. When `false`, only deactivated payment types are returned. Default: **All Payment Types**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetPaymentTypesResponse'
examples:
Getpaymenttypes200Example:
summary: Default getPaymentTypes 200 example
x-microcks-default: true
value:
PaymentTypes: &id083
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/programs:
get:
tags:
- Site
summary: Mindbody Get Service Categories Offered at a Site
description: Get service categories offered at a site.
operationId: getPrograms
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.onlineOnly
in: query
required: false
description: 'If `true`, filters results to show only those programs that are shown online.
If `false`, all programs are returned.
Default: **false**'
schema:
type: boolean
example: true
- name: request.programIds
in: query
required: false
description: Program Ids to filter for
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.scheduleType
in: query
required: false
description: 'A schedule type used to filter the returned results. Possible values are: * All * Class * Enrollment * Appointment * Resource * Media * Arrival'
schema:
$ref: '#/components/schemas/RequestScheduleTypeEnum'
example: {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetProgramsResponse'
examples:
Getprograms200Example:
summary: Default getPrograms 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Programs: &id085
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/promocodes:
get:
tags:
- Site
summary: Mindbody Gets a List of Promocodes at the Specified Business. This Endpoint
description: Gets a list of promocodes at the specified business. This endpoint requires staff user credentials. This staff member should have enabled the Set up promotions / **Semester
discounts** staff permission.
operationId: getPromoCodes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.activeOnly
in: query
required: false
description: 'If true, filters results to show only promocodes that are active. If **false**, all promocodes are returned. Default: **true**'
schema:
type: boolean
example: true
- name: request.endDate
in: query
required: false
description: Filters results to promocodes that were activated before this date.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.lastModifiedDate
in: query
required: false
description: Filters results to promocodes that were modified on or after this date.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.onlineOnly
in: query
required: false
description: 'If `true`, filters results to show only promocodes that can be used for online sale. If `false`, all promocodes are returned. Default: **false**'
schema:
type: boolean
example: true
- name: request.startDate
in: query
required: false
description: Filters results to promocodes that were activated after this date.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetPromoCodesResponse'
examples:
Getpromocodes200Example:
summary: Default getPromoCodes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
PromoCodes: &id086
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/prospectstages:
get:
tags:
- Site
summary: Mindbody Get the List of Prospect Stages That Represent the Prospect Stage
description: Get the list of prospect stages that represent the prospect stage options for prospective clients.
operationId: getProspectStages
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When `true`, the response only contains prospect stages which are activated. When `false`, only deactivated prospect stages are returned. Default: **All Prospect Stages**'
schema:
type: boolean
example: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetProspectStagesResponse'
examples:
Getprospectstages200Example:
summary: Default getProspectStages 200 example
x-microcks-default: true
value:
ProspectStages: &id087
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/relationships:
get:
tags:
- Site
summary: Mindbody This Endpoint Retrieves the Business Site Relationships
description: This endpoint retrieves the business site relationships.
operationId: getRelationships
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.active
in: query
required: false
description: 'When `true`, the response only contains relationships which are activated. When `false`, only deactivated relationships are returned. Default: **All Relationships**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetRelationshipsResponse'
examples:
Getrelationships200Example:
summary: Default getRelationships 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Relationships: &id088
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/resourceavailabilities:
get:
tags:
- Site
summary: Mindbody Get Resource Availabilities Used at a Site
description: Get resource availabilities used at a site.
operationId: getResourceAvailabilities
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.endDate
in: query
required: false
description: End date. If default, StartDate is used.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: Filter by location ids (optional)
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: Filter by program ids (optional)
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.resourceIds
in: query
required: false
description: Filter on resourceIds
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.scheduleTypes
in: query
required: false
description: Filter by schedule types (optional)
schema:
type: array
items:
$ref: '#/components/schemas/RequestScheduleTypeEnum'
example:
- {}
- name: request.startDate
in: query
required: false
description: Start time
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetResourceAvailabilitiesResponse'
examples:
Getresourceavailabilities200Example:
summary: Default getResourceAvailabilities 200 example
x-microcks-default: true
value:
PaginationResponse: {}
ResourceAvailabilities: &id091
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/resources:
get:
tags:
- Site
summary: Mindbody Get Resources Used at a Site
description: Get resources used at a site.
operationId: getResources
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.includeInactive
in: query
required: false
description: Enable to include inactive
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationIds
in: query
required: false
description: Filter by location ids (optional)
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.programIds
in: query
required: false
description: Filter by program ids (optional)
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.resourceIds
in: query
required: false
description: Filter on resourceIds
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.scheduleTypes
in: query
required: false
description: Filter by schedule types (optional)
schema:
type: array
items:
$ref: '#/components/schemas/RequestScheduleTypeEnum'
example:
- {}
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/sessiontypes:
get:
tags:
- Site
summary: Mindbody Get the Session Types Used at a Site
description: Get the session types used at a site.
operationId: getSessionTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.onlineOnly
in: query
required: false
description: 'When `true`, indicates that only the session types that can be booked online should be returned.
Default: **false**'
schema:
type: boolean
example: true
- name: request.programIDs
in: query
required: false
description: Filters results to session types that belong to one of the given program IDs. If omitted, all program IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetSessionTypesResponse'
examples:
Getsessiontypes200Example:
summary: Default getSessionTypes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
SessionTypes: &id098
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/sites:
get:
tags:
- Site
summary: Mindbody Gets a List of Sites That the Developer Has Permission to View
description: 'Gets a list of sites that the developer has permission to view. * Passing in no `SiteIds` returns all sites that the developer has access to. * Passing in one `SiteIds` returns more
detailed information about the specified site. Important Behavior Notice: When calling GetSites without specifying a SiteId, or when passing multiple SiteIds, the response will include only limited
data for each site. This is expected behavior designed to help identify accessible sites without returning full site-level configuration details. To retrieve complete information for a specific
site, please make a separate GetSites request using a single SiteId. This design helps reduce payload size for multi-site queries, but we recognize it may require additional requests when full detail
is needed. If your integration depends on full site-level data, we recommend retrieving the list of site IDs first, then querying each one individually as needed.'
operationId: getSites
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.includeLeadChannels
in: query
required: false
description: This is an optional parameter to get lead channels for a Site.
schema:
type: boolean
example: true
- name: request.includePerStaffPricing
in: query
required: false
description: Include whether or not studios have per staff pricing enabled.
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.siteIds
in: query
required: false
description: List of the requested site IDs. When omitted, returns all sites that the source has access to.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetSitesResponse'
examples:
Getsites200Example:
summary: Default getSites 200 example
x-microcks-default: true
value:
PaginationResponse: {}
Sites: &id099
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/addclientindex:
post:
tags:
- Site
summary: Mindbody Creates a New Client Index Record at the Specified Business
description: Creates a new client index record at the specified business. This endpoint requires staff user credentials.
operationId: addClientIndex
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddSiteClientIndexRequest'
examples:
AddclientindexRequestExample:
summary: Default addClientIndex request example
x-microcks-default: true
value:
ClientIndexName: example-value
Active: true
ShowOnNewClient: true
ShowOnEnrollmentRoster: true
EditOnEnrollmentRoster: true
SortOrder: 1
ShowInConsumerMode: true
RequiredConsumerMode: true
RequiredBizMode: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddSiteClientIndexResponse'
examples:
Addclientindex200Example:
summary: Default addClientIndex 200 example
x-microcks-default: true
value:
ClientIndexID: 1
ClientIndexName: example-value
Active: true
ShowOnNewClient: true
ShowOnEnrollmentRoster: true
EditOnEnrollmentRoster: true
SortOrder: 1
ShowInConsumerMode: true
RequiredConsumerMode: true
RequiredBizMode: true
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/addpromocode:
post:
tags:
- Site
summary: Mindbody Creates a New Promocode Record at the Specified Business
description: Creates a new promocode record at the specified business. This endpoint requires staff user credentials. This staff memeber should have enabled the **Set up promotions / Semester
discounts** staff permission.
operationId: addPromoCode
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddPromoCodeRequest'
examples:
AddpromocodeRequestExample:
summary: Default addPromoCode request example
x-microcks-default: true
value:
Code: example-value
Name: Sunset Yoga Studio
Active: true
Discount: {}
ActivationDate: '2026-05-28T14:30:00Z'
ExpirationDate: '2026-05-28T14:30:00Z'
MaxUses: 1
DaysAfterCloseDate: 1
AllowOnline: true
DaysValid: &id027
- example-value
ApplicableItems: &id028
- {}
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddPromoCodeResponse'
examples:
Addpromocode200Example:
summary: Default addPromoCode 200 example
x-microcks-default: true
value:
PromoCode: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/deactivatepromocode:
post:
tags:
- Site
summary: Mindbody Deactivates an Existing Promocode Record at the Specified Business
description: Deactivates an existing promocode record at the specified business. This endpoint requires staff user credentials. This staff memeber should have enabled the **Set up promotions /
Semester discounts** staff permission.
operationId: deactivatePromoCode
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeactivatePromoCodeRequest'
examples:
DeactivatepromocodeRequestExample:
summary: Default deactivatePromoCode request example
x-microcks-default: true
value:
PromotionId: 123456
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/site/updateclientindex:
post:
tags:
- Site
summary: Mindbody Updates an Exisitng Client Index Record at the Specified Business
description: Updates an exisitng client index record at the specified business. This endpoint requires staff user credentials.
operationId: updateClientIndex
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSiteClientIndexRequest'
examples:
UpdateclientindexRequestExample:
summary: Default updateClientIndex request example
x-microcks-default: true
value:
ClientIndexID: 1
ClientIndexName: example-value
Active: true
ShowOnNewClient: true
ShowOnEnrollmentRoster: true
EditOnEnrollmentRoster: true
SortOrder: 1
ShowInConsumerMode: true
RequiredConsumerMode: true
RequiredBizMode: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSiteClientIndexResponse'
examples:
Updateclientindex200Example:
summary: Default updateClientIndex 200 example
x-microcks-default: true
value:
ClientIndexID: 1
ClientIndexName: example-value
Active: true
ShowOnNewClient: true
ShowOnEnrollmentRoster: true
EditOnEnrollmentRoster: true
SortOrder: 1
ShowInConsumerMode: true
RequiredConsumerMode: true
RequiredBizMode: true
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/imageurl:
get:
tags:
- Staff
summary: Mindbody Retrieves the Available Image URLs for a Specified Staff Member,
description: "Retrieves the available image URLs for a specified staff member, including desktop and mobile versions.
The resolution of these images is determined by the Mindbody product at
the time the image is uploaded. Staff images are automatically resized within Core (typically around 200×151 pixels), and this endpoint surfaces only the stored versions. The API does not resize
or limit the images itself .
For more information about how image sizes are managed in Mindbody product, refer to the related support article: [link here](https://support.mindbodyonline.com/s/article/203253783-Staff-prof
iles-Creating-logins-updating-info-and-enabling-settings?language=en_US )."
operationId: getStaffImageUrl
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.staffId
in: query
required: false
description: The ID of the staff member whose image URL details you want to retrieve.
schema:
type: integer
format: int32
example: 123456
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStaffImageURLResponse'
examples:
Getstaffimageurl200Example:
summary: Default getStaffImageUrl 200 example
x-microcks-default: true
value:
ImageURL: example-value
MobileImageURL: example-value
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/salesreps:
get:
tags:
- Staff
summary: Mindbody This Endpoint Returns the Basic Details of the Staffs That Are Marked
description: This endpoint returns the basic details of the staffs that are marked as sales reps.
operationId: getSalesReps
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.activeOnly
in: query
required: false
description: 'When `true`, will return only active reps data. Default : **false**'
schema:
type: boolean
example: true
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.salesRepNumbers
in: query
required: false
description: This is the list of the sales rep numbers for which the salesrep data will be fetched.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetSalesRepsResponse'
examples:
Getsalesreps200Example:
summary: Default getSalesReps 200 example
x-microcks-default: true
value:
PaginationResponse: {}
SalesReps: &id092
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/sessiontypes:
get:
tags:
- Staff
summary: Mindbody Gets a List of Active Session Types for a Specific Staff Member. a
description: Gets a list of active session types for a specific staff member. A staff user token must be included with staff assigned the ManageStaffPayRates permission.
operationId: getStaffSessionTypes
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.staffId
in: query
required: true
description: The ID of the staff member whose session types you want to return.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.onlineOnly
in: query
required: false
description: 'When `true`, indicates that only the session types that can be booked online should be returned. Default: **false**'
schema:
type: boolean
example: true
- name: request.programIds
in: query
required: false
description: Filters results to session types that belong to one of the given program IDs. If omitted, all program IDs return.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStaffSessionTypesResponse'
examples:
Getstaffsessiontypes200Example:
summary: Default getStaffSessionTypes 200 example
x-microcks-default: true
value:
PaginationResponse: {}
StaffSessionTypes: &id102
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/staff:
get:
tags:
- Staff
summary: Mindbody When a User Token is Not Passed with the Request or the Passed User
description: 'When a user token is not passed with the request or the passed user token has insufficient viewing permissions, only the following staff data is returned in the response: * FirstName
* LastName * Id * Bio * DisplayName * ImageUrl * EmpID'
operationId: getStaff
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
- name: request.filters
in: query
required: false
description: 'Filters to apply to the search. Possible values are: * StaffViewable * AppointmentInstructor * ClassInstructor * Male * Female'
schema:
type: array
items:
type: string
example:
- example-value
- name: request.limit
in: query
required: false
description: Number of results to include, defaults to 100
schema:
type: integer
format: int32
example: 1
- name: request.locationId
in: query
required: false
description: Return only staff members that are available at the specified location. You must supply a valid `SessionTypeID` and `StartDateTime` to use this parameter.
schema:
type: integer
format: int32
example: 123456
- name: request.offset
in: query
required: false
description: Page offset, defaults to 0.
schema:
type: integer
format: int32
example: 1
- name: request.sessionTypeId
in: query
required: false
description: Return only staff members that are available for the specified session type. You must supply a valid `StartDateTime` and `LocationID` to use this parameter.
schema:
type: integer
format: int32
example: 123456
- name: request.staffIds
in: query
required: false
description: A list of the requested staff IDs.
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- name: request.startDateTime
in: query
required: false
description: Return only staff members that are available at the specified date and time. You must supply a valid `SessionTypeID` and `LocationID` to use this parameter.
schema:
type: string
format: date-time
example: '2026-05-28T14:30:00Z'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStaffResponse'
examples:
Getstaff200Example:
summary: Default getStaff 200 example
x-microcks-default: true
value:
PaginationResponse: {}
StaffMembers: &id101
- {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/staffpermissions:
get:
tags:
- Staff
summary: Mindbody Get Configured Staff Permissions for a Staff Member
description: Get configured staff permissions for a staff member.
operationId: getStaffPermissions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: request.staffId
in: query
required: true
description: The ID of the staff member whose permissions you want to return.
schema:
type: integer
format: int32
example: 123456
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetStaffPermissionsResponse'
examples:
Getstaffpermissions200Example:
summary: Default getStaffPermissions 200 example
x-microcks-default: true
value:
UserGroup: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/addstaff:
post:
tags:
- Staff
summary: Mindbody Creates a New Staff Member Record at the Specified Business. the
description: Creates a new staff member record at the specified business. The `FirstName` and `LastName` parameters are always required for this request.
operationId: addStaff
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddStaffRequest'
examples:
AddstaffRequestExample:
summary: Default addStaff request example
x-microcks-default: true
value:
FirstName: Alex
LastName: Lane
Email: kinlane@example.com
IsMale: true
HomePhone: '+15551234567'
WorkPhone: '+15551234567'
MobilePhone: '+15551234567'
Bio: example-value
Address: 123 Market St
Address2: 123 Market St
City: San Francisco
State: CA
Country: US
PostalCode: '94110'
ClassAssistant: true
ClassAssistant2: true
IndependentContractor: true
AppointmentInstructor: true
AlwaysAllowDoubleBooking: true
ClassTeacher: true
EmploymentStart: '2026-05-28T14:30:00Z'
EmploymentEnd: '2026-05-28T14:30:00Z'
SortOrder: 1
ProviderIDs: &id031
- example-value
Notes: Example note for Mindbody Public API.
EmpID: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AddStaffResponse'
examples:
Addstaff200Example:
summary: Default addStaff 200 example
x-microcks-default: true
value:
Staff: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/assignsessiontype:
post:
tags:
- Staff
summary: Mindbody Assigns a Staff Member to an Appointment Session Type with Staff
description: Assigns a staff member to an appointment session type with staff specific properties such as time length and pay rate. A staff user token must be included with staff assigned the
ManageStaffPayRates permission.
operationId: assignStaffSessionType
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AssignStaffSessionTypeRequest'
examples:
AssignstaffsessiontypeRequestExample:
summary: Default assignStaffSessionType request example
x-microcks-default: true
value:
StaffId: 123456
SessionTypeId: 123456
Active: true
TimeLength: 1
PrepTime: 1
FinishTime: 1
PayRateType: example-value
PayRateAmount: 49.99
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AssignStaffSessionTypeResponse'
examples:
Assignstaffsessiontype200Example:
summary: Default assignStaffSessionType 200 example
x-microcks-default: true
value:
StaffId: 123456
SessionTypeId: 123456
PayRateType: example-value
PayRateAmount: 49.99
TimeLength: 1
PrepTime: 1
FinishTime: 1
Active: true
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/staffavailability:
post:
tags:
- Staff
summary: Mindbody Enables to Add Staff Availability or Unavailability for a Given Staff
description: Enables to add staff availability or unavailability for a given staff member.
operationId: addStaffAvailability
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddStaffAvailabilityRequest'
examples:
AddstaffavailabilityRequestExample:
summary: Default addStaffAvailability request example
x-microcks-default: true
value:
StaffId: 123456
IsAvailability: true
DaysOfWeek: &id029
- example-value
StartTime: example-value
EndTime: example-value
StartDate: example-value
EndDate: example-value
Description: Example note for Mindbody Public API.
ProgramIds: &id030
- 1
LocationId: 123456
Status: Active
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/updatestaff:
post:
tags:
- Staff
summary: Mindbody Updates an Existing Staff Member Record at the Specified Business. the
description: Updates an existing staff member record at the specified business. The ID is a required parameters for this request.
operationId: updateStaff
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStaffRequest'
examples:
UpdatestaffRequestExample:
summary: Default updateStaff request example
x-microcks-default: true
value:
ID: 1
FirstName: Alex
LastName: Lane
Email: kinlane@example.com
IsMale: true
HomePhone: '+15551234567'
WorkPhone: '+15551234567'
MobilePhone: '+15551234567'
Bio: example-value
Address: 123 Market St
Address2: 123 Market St
City: San Francisco
State: CA
Country: US
PostalCode: '94110'
ClassAssistant: true
ClassAssistant2: true
IndependentContractor: true
AppointmentInstructor: true
AlwaysAllowDoubleBooking: true
ClassTeacher: true
EmploymentStart: '2026-05-28T14:30:00Z'
EmploymentEnd: '2026-05-28T14:30:00Z'
SortOrder: 1
ProviderIDs: &id128
- example-value
Active: true
Notes: Example note for Mindbody Public API.
EmpID: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStaffResponse'
examples:
Updatestaff200Example:
summary: Default updateStaff 200 example
x-microcks-default: true
value:
Staff: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/staff/updatestaffpermissions:
post:
tags:
- Staff
summary: Mindbody Assigns a Permission Group to a Staff Member. a Staff User Token Must
description: Assigns a permission group to a staff member. A staff user token must be included with staff assigned the ManageStaffPayRates permission.
operationId: updateStaffPermissions
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStaffPermissionsRequest'
examples:
UpdatestaffpermissionsRequestExample:
summary: Default updateStaffPermissions request example
x-microcks-default: true
value:
StaffId: 123456
PermissionGroupName: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateStaffPermissionsResponse'
examples:
Updatestaffpermissions200Example:
summary: Default updateStaffPermissions 200 example
x-microcks-default: true
value:
UserGroup: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/usertoken/issue:
post:
tags:
- User Token
summary: Mindbody When Users Interact with Your Public API Integration as Staff Members,
description: When users interact with your Public API integration as staff members, they need to get a staff user token for authentication. You can use the issue endpoint to get a staff user
token, then pass the token in the headers for all of your requests.
operationId: issueToken
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/IssueRequest'
examples:
IssuetokenRequestExample:
summary: Default issueToken request example
x-microcks-default: true
value:
Username: example-value
Password: example-value
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueResponse'
examples:
Issuetoken200Example:
summary: Default issueToken 200 example
x-microcks-default: true
value:
TokenType: example-value
AccessToken: example-value
Expires: '2026-05-28T14:30:00Z'
User: {}
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/usertoken/renew:
post:
tags:
- User Token
summary: Mindbody Renews a Token. Can Be Used to Extend the Lifetime of a Token
description: 'Renews a token. Can be used to extend the lifetime of a token. Current lifetime expansion: 24hrs from current expiration, up to 7 renewals.'
operationId: renewToken
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
/public/v6/usertoken/revoke:
delete:
tags:
- User Token
summary: Mindbody Revokes the User Token in the Authorization Header
description: Revokes the user token in the Authorization header.
operationId: revokeToken
parameters:
- name: version
in: path
required: true
description: version of the api.
schema:
type: string
example: example-value
- name: siteId
in: header
required: true
description: ID of the site from which to pull data.
schema:
type: string
example: example-value
- name: authorization
in: header
required: false
description: A staff user authorization token.
schema:
type: string
example: example-value
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
security:
- ApiKeyAuth: []
components:
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: API-Key
description: Mindbody-issued API key (server-to-server). Required on every request.
OAuth2:
type: oauth2
description: OpenID Connect bearer token issued by Mindbody Identity Service (signin.mindbodyonline.com). Required for endpoints that act on behalf of a staff or client user.
flows:
authorizationCode:
authorizationUrl: https://signin.mindbodyonline.com/connect/authorize
tokenUrl: https://signin.mindbodyonline.com/connect/token
scopes:
openid: OpenID Connect base scope.
profile: User profile claims.
email: User email claim.
offline_access: Issue a refresh token.
Mindbody.Api.Public.v6: Access the Mindbody Public API v6 on behalf of the user.
schemas:
Action11Enum:
type: string
description: Action11Enum enumeration.
enum:
- Earned
- Redeemed
- Returned
- Removed
- LateCanceled
Action1Enum:
type: string
description: Action1Enum enumeration.
enum:
- None
- Added
- Updated
- Failed
- Removed
Action8Enum:
type: string
description: Action8Enum enumeration.
enum:
- None
- Added
- Updated
- Failed
- Removed
ActionEnum:
type: string
description: ActionEnum enumeration.
enum:
- None
- Added
- Updated
- Failed
- Removed
ActivationTypeEnum:
type: string
description: ActivationTypeEnum enumeration.
enum:
- OnFirstVisit
- OnPurchase
AddAppointmentAddOnRequest:
type: object
description: Implementation of the 'AddAppointmentAddOnRequest' model. Creates an add-on for an appointment
properties:
ApplyPayment:
type: boolean
description: 'When `true`, indicates that a payment should be applied to the appointment. Currently only ApplyPayment=false is implemented. Default: **true**'
example: true
AppointmentId:
type: integer
format: int32
description: The appointment ID the add-on is getting added to.
example: 123456
SessionTypeId:
type: integer
format: int32
description: The session type associated with the new appointment add-on.
example: 123456
StaffId:
type: integer
format: int32
description: 'The ID of the staff member who is adding the new appointment add-on. Default: staff member performing the appointment.'
example: 123456
Test:
type: boolean
description: 'When `true`, indicates that the method is to be validated, but no new appointment add-on data is added. Default: **false**'
example: true
AddAppointmentAddOnResponse:
type: object
description: Implementation of the 'AddAppointmentAddOnResponse' model.
properties:
AppointmentId:
type: integer
format: int32
description: This is the id of the main appointment we added on to
example: 123456
AddOnAppointmentId:
type: integer
format: int32
description: This is the id for the newly created add-on appointment
example: 123456
AddAppointmentOutcome:
type: object
description: Implementation of the 'AddAppointmentOutcome' model. Contains information about an appointment creation outcome.
properties:
Appointment:
$ref: '#/components/schemas/Appointment'
description: The appointment details if created.
Error:
$ref: '#/components/schemas/ApiError'
description: The error message if the appointment creation failed.
Request:
$ref: '#/components/schemas/AddAppointmentRequest'
description: The request details for the appointment creation.
AddAppointmentRequest:
type: object
description: Implementation of the 'AddAppointmentRequest' model. Represents a request to add a new appointment, including details such as client information, appointment timing, location, and
additional preferences.
properties:
ClientId:
type: string
description: The RRSID of the client for whom the new appointment is being made.
example: example-value
LocationId:
type: integer
format: int32
description: The ID of the location where the new appointment is to take place.
example: 123456
SessionTypeId:
type: integer
format: int32
description: The session type associated with the new appointment.
example: 123456
StaffId:
type: integer
format: int32
description: The ID of the staff member who is adding the new appointment.
example: 123456
StartDateTime:
type: string
format: date-time
description: The start date and time of the new appointment.
example: '2026-05-28T14:30:00Z'
ApplyPayment:
type: boolean
description: 'When `true`, indicates that a payment should be applied to the appointment.
Default: **true**'
example: true
Duration:
type: integer
format: int32
description: The duration of the appointment. This parameter is used to change the default duration of an appointment.
example: 1
EndDateTime:
type: string
format: date-time
description: "The end date and time of the new appointment.
Default: **StartDateTime**, offset by the staff member’s default appointment duration."
example: '2026-05-28T14:30:00Z'
GenderPreference:
type: string
description: "The client’s service provider gender preference."
example: example-value
Notes:
type: string
description: Any general notes about this appointment.
example: Example note for Mindbody Public API.
ProviderId:
type: string
description: If a user has Complementary and Alternative Medicine features enabled, this parameter assigns a provider ID to the appointment.
example: example-value
ResourceIds:
type: array
items:
type: integer
format: int32
description: A list of resource IDs to associate with the new appointment.
example: *id012
SendEmail:
type: boolean
description: 'Whether to send client an email for cancellations. An email is sent only if the client has an email address and automatic emails have been set up.
Default: **false**'
example: true
StaffRequested:
type: boolean
description: When `true`, indicates that the staff member was requested specifically by the client.
example: true
Test:
type: boolean
description: 'When true, indicates that the method is to be validated, but no new appointment data is added.
Default: **false**'
example: true
IsWaitlist:
type: boolean
description: 'When `true`, indicates that the client should be added to a specific appointment waiting list. When `false`, the client should not be added to the waiting list. Default: **false**'
example: true
IsRequest:
type: boolean
description: 'Indicates whether to add an appointment request for review. If `true`, the appointment will be added as a request, bypassing the `IsWaitlist` parameter and two validations: 1. If
a consumer is adding the appointment for another person. 2. If a staff member without permission to add appointments for other staff members is adding the appointment for another staff member.
This also allows anonymous calls (without an authentication token) to this endpoint. The `AllowClientsToBookAppointments` option'
example: true
PartnerExternalId:
type: string
description: Optional external key for api partners.
example: example-value
AddAppointmentRequestId:
type: integer
format: int32
description: A unique identifier for tracking the AddAppointmentRequest. This ID is not stored and is used to match each request with its corresponding response. The request object will also
be returned in the response, with the same ID value. - For single requests, this value will be ignored. - For multiple requests, if no value is provided, the system will generate an
identifier ranging from 0 to (number of requests - 1).
example: 123456
AddAppointmentResponse:
type: object
description: Implementation of the 'AddAppointmentResponse' model.
properties:
Appointment:
$ref: '#/components/schemas/Appointment'
description: Contains information about the appointment.
AddArrivalRequest:
type: object
description: Implementation of the 'AddArrivalRequest' model.
properties:
ClientId:
type: string
description: The ID of the requested client.
example: example-value
LocationId:
type: integer
format: int32
description: The ID of the location for the requested arrival.
example: 123456
ArrivalTypeId:
type: integer
format: int32
description: 'The ID of the arrival program (service category) under which this arrival is to be logged. If this is not provided, the program ID of the first arrival pricing option found will
be used. OPTIONAL: will take first payment found if not provided Default: **null**'
example: 123456
LeadChannelId:
type: integer
format: int32
description: The ID of the Lead Channel ID from lead management. If this is supplied then it will map lead channel on the lead management. If this is not supplied then it wont save anything.
This parameters required to track the lead channel if new client added while adding arrival of client on non home location.
example: 123456
Test:
type: boolean
description: 'When `true`, indicates that the arrival log is to be validated, but no new arrival data is added. When `false`, the arrival is logged and the database is affected. Default: **false**'
example: true
AddArrivalResponse:
type: object
description: Implementation of the 'AddArrivalResponse' model.
properties:
ArrivalAdded:
type: boolean
description: When `true`, indicates that the arrival was added to the database.
example: true
ClientService:
$ref: '#/components/schemas/ClientService'
description: "Contains information about the pricing option being used to pay for the client’s current service session."
AddAvailabilitiesRequest:
type: object
description: Implementation of the 'AddAvailabilitiesRequest' model.
properties:
Test:
type: boolean
description: When `true`, the request ensures that its parameters are valid without affecting real data. When `false`, the request performs as intended and may affect live client data.
(optional) Defaults to false.
example: true
LocationID:
type: integer
format: int32
description: Location of availability.
Not used when IsUnavailable is `true`.
example: 1
StaffIDs:
type: array
items:
type: integer
format: int32
description: A list of requested staff IDs.
(optional) Defaults to staff ID of user credentials. Use 0 for all.
example: *id013
ProgramIDs:
type: array
items:
type: integer
format: int32
description: A list of program IDs.
(optional) Defaults to all.
Not used when IsUnavailable is true.
example: *id014
StartDateTime:
type: string
format: date-time
description: The start date and time of the new availabilities or unavailabilities.
example: '2026-05-28T14:30:00Z'
EndDateTime:
type: string
format: date-time
description: The end date and time of the new availabilities or unavailabilities.
example: '2026-05-28T14:30:00Z'
DaysOfWeek:
type: array
items:
$ref: '#/components/schemas/DaysOfWeekEnum'
description: The days of the week to set.
(optional) Defaults to all.
example: *id015
UnavailableDescription:
type: string
description: Description of unavalability.
Only used when IsUnavailable is true.
example: Example note for Mindbody Public API.
IsUnavailable:
type: boolean
description: 'When `true`, indicates that unavailability is getting added. When `false`, indicates that availability is getting added. Default: **false**'
example: true
PublicDisplay:
$ref: '#/components/schemas/PublicDisplay1Enum'
description: Sets the public display of the availability.