# Mindbody integration

> Booking, scheduling, and client management for salons, spas, gyms, and wellness studios via the Mindbody Public API v6.

- Authentication: apiKey

## Tools (149)

- **Add Appointment**: 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
- **Add Appointment Add On**: 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
- **Add Arrival**: 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 th
- **Add Availabilities**: Add availabilities and unavailabilities for a staff member.<br /> Note: You must have a staff user token with the required permissions.
- **Add Class Schedule**: This endpoint adds a class schedule. For a single day schedule, the EndDate parameter can be omitted.
- **Add Client**: 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
- **Add Client Direct Debit Info**: This endpoint adds direct debit info to a client’s account. This endpoint requires staff user credentials.
- **Add Client Index**: Creates a new client index record at the specified business. This endpoint requires staff user credentials.
- **Add Client To Class**: 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
- **Add Client To Enrollment**: Book a client into an enrollment.
- **Add Contact Log**: Add a contact log to a client's account.
- **Add Enrollment Schedule**: 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 AllowOpenEnrollmen
- **Add Formula Note**: 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
- **Add Promo Code**: 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
- **Add Staff**: Creates a new staff member record at the specified business. The `FirstName` and `LastName` parameters are always required for this request.
- **Add Staff Availability**: Enables to add staff availability or unavailability for a given staff member.
- **Assign Staff Session Type**: 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 M
- **Cancel Single Class**: This endpoint will cancel a single class from studio.
- **Checkout Shopping Cart**: 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 com
- **Complete Checkout Shopping Cart Using Alternative Payments**: This endpoint complements the InitiateCheckoutShoppintCart endpoint. Please visit its documentation to understand further. The currently supported alternative payments are: - i
- **Copy Credit Card**: Copies the credit card information from one client to another, regardless of site. The source and target clients must have the same email address.
- **Create Reservation**: 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.
- **Deactivate Promo Code**: 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
- **Delete Appointment Add On**: This endpoint can be used to early-cancel a booked appointment add-on.
- **Delete Availability**: This endpoint deletes the availability or unavailability. Note: You must have a staff user token with the required permissions.
- **Delete Client Formula Note**: 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 Mo
- **Delete Contact Log**: This endpoint deletes contactlog of client. This endpoint requires staff user credentials.
- **Delete Direct Debit Info**: This endpoint deletes direct debit info from a client’s account. This endpoint requires staff user credentials.
- **Delete Reservation**: A user token is required for this endpoint. This endpoint deletes a single reservation.
- **Get Accepted Card Types**: 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
- **Get Activation Code**: 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 MIND
- **Get Active Client Memberships**: 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 restrictio
- **Get Active Clients Memberships**: 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
- **Get Active Session Times**: 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
- **Get Add Ons**: Get active appointment add-ons.
- **Get Alternative Payment Methods**: 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` an
- **Get Appointment Options**: This endpoint has no query parameters.
- **Get Available Dates**: 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 ca
- **Get Bookable Items**: Returns a list of availabilities with the information needed to book appointments. Availabilities include information such as the location and its amenities, staff members, program
- **Get Categories**: Gets the categories.
- **Get Class**: Get a class filtered by classId.
- **Get Class Descriptions**: To find class descriptions associated with **scheduled classes**, pass `StaffId`, `StartClassDateTime`, `EndClassDateTime`, or `LocationId` in the request.
- **Get Classes**: Get scheduled classes.
- **Get Class List**: This endpoint supports pagination. See Pagination object for a description.
- **Get Class Schedules**: Get class schedules.
- **Get Class Visits**: 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.
- **Get Client Account Balances**: Get account balance information for one or more client(s).
- **Get Client Complete Info**: This endpoint returns complete client information along with list of purchased services, contract details, membership details and arrival programs for a specific client.
- **Get Client Contracts**: Get contracts that a client has purchased.
- **Get Client Duplicates**: 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,
- **Get Client Formula Notes**: ***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 provi
- **Get Client Indexes**: 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 ar
- **Get Client Purchases**: Gets a list of purchases made by a specific client.
- **Get Client Referral Types**: 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 sig
- **Get Client Rewards**: Gets the client rewards.
- **Get Clients**: This endpoint requires staff user credentials. This endpoint supports pagination. See Pagination for a description of the Pagination information.
- **Get Client Schedule**: This endpoint can be utilized to retrieve scheduled visits which is associated with the requested client.
- **Get Client Services**: Get pricing options that a client has purchased.
- **Get Client Visits**: Gets the Client Visits for a specific client.
- **Get Commissions**: 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 membe
- **Get Contact Logs**: 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
- **Get Contact Log Types**: 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
- **Get Contracts**: 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
- **Get Courses**: This endpoint will provide all the data related to courses depending on the access level.<br /> Note: The Authorization is an optional header.If Authorization header is not passed
- **Get Cross Regional Client Associations**: 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 `Client
- **Get Custom Client Fields**: Get a site's configured custom client fields.
- **Get Custom Payment Methods**: Get payment methods that can be used to pay for sales at a site.
- **Get Direct Debit Info**: 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 tha
- **Get Enrollments**: 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 t
- **Get Genders**: 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
- **Get Gift Card Balance**: Returns a gift card’s remaining balance.
- **Get Gift Cards**: Returns information about gift cards that can be purchased.
- **Get Liability Waiver**: Gets Liability Waiver content at the specified business. This endpoint requires staff user credentials.
- **Get Locations**: Get locations for a site.
- **Get Memberships**: Get the memberships at a site.
- **Get Mobile Providers**: Get the list of mobile providers that are supported by the business.
- **Get Packages**: 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 ca
- **Get Payment Types**: Get payment types for a site.
- **Get Products**: Get retail products available for purchase at a site.
- **Get Products Inventory**: Get retail products inventory data available at a site.
- **Get Programs**: Get service categories offered at a site.
- **Get Promo Codes**: 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 disco
- **Get Prospect Stages**: Get the list of prospect stages that represent the prospect stage options for prospective clients.
- **Get Purchase Contract Status**: Fetches the status of an initiate purchase contract given accessToken. This endpoint complements the `Initiate Purchase Contract Using Alternative Payments` endpoint. `Initiate Pu
- **Get Relationships**: This endpoint retrieves the business site relationships.
- **Get Required Client Fields**: 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. T
- **Get Reservation**: Retrieves reservation for Pick a Spot.
- **Get Resource Availabilities**: Get resource availabilities used at a site.
- **Get Resources**: Get resources used at a site.
- **Get Sales**: Get sales completed at a site.
- **Get Sales Reps**: This endpoint returns the basic details of the staffs that are marked as sales reps.
- **Get Scheduled Service Earnings**: 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 membe
- **Get Schedule Items**: Returns a list of schedule items, including appointments, availabilities, and unavailabilities. Unavailabilities are the times at which appointments cannot be booked, for example,
- **Get Semesters**: This endpoint retrieves the business class semesters.
- **Get Services**: Get pricing options available for purchase at a site
- **Get Session Types**: Get the session types used at a site.
- **Get Sites**: 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 m
- **Get Staff**: 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:
- **Get Staff Appointments**: Returns a list of appointments by staff member.
- **Get Staff Image U R L**: Retrieves the available image URLs for a specified staff member, including desktop and mobile versions. <br /> The resolution of these images is determined by the Mindbody produc
- **Get Staff Permissions**: Get configured staff permissions for a staff member.
- **Get Staff Session Types**: 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.
- **Get Time Cards**: This endpoint returns information for all locations. The **View reports for all locations permission **is not supported for staff auth tokens.
- **Get Tips**: 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 membe
- **Get Transactions**: This endpoint returns a list of transaction details of processed sales.
- **Get Unavailabilities**: 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.
- **Get Waitlist Entries**: 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.
- **Initiate Checkout Shopping Cart Using Alternative Payments**: 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 com
- **Initiate Purchase Contract Using Alternative Payments**: 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
- **Issue Token**: 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 t
- **Merge Client**: This endpoint helps to merge clients.
- **Purchase Account Credit**: Allows a client to purchase account credit from a business.
- **Purchase Contract**: 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 cr
- **Purchase Gift Card**: 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
- **Remove Client From Class**: Remove a client from a class.
- **Remove Clients From Classes**: This endpoint can be utilized for removing multiple clients from multiple classes in one request.
- **Remove From Waitlist**: Remove an appointment from waitlist
- **Remove From Waitlist (Class)**: 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.
- **Renew Token**: Renews a token. Can be used to extend the lifetime of a token. Current lifetime expansion: 24hrs from current expiration, up to 7 renewals.
- **Return Sale**: 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, o
- **Revoke Token**: Revokes the user token in the Authorization header.
- **Send Auto Email**: This endpoint requires staff user credentials.
- **Send Password Reset Email**: Send a password reset email to a client.
- **Substitute Class Teacher**: Substitute a class teacher.
- **Suspend Contract**: Suspend client contract
- **Terminate Contract**: This endpoint terminates a client contract. This endpoint requires staff user credentials with TerminateClientContract permission.
- **Update Appointment**: 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`,
- **Update Availability**: To update the information for a specific availability or unavailability of the staff.<br /> Note: You must have a staff user token with the required permissions.
- **Update Class**: This endpoint updates one or more editable properties of a class identified by the provided ClassId. Supported properties include class-level attributes such as the theme name and
- **Update Class Schedule**: This endpoint updates a class schedule.
- **Update Class Schedule Notes**: 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
- **Update Client**: 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
- **Update Client Contract Autopays**: This endpoint can be used to update the amount and/or the item of a client’s autopay schedule.
- **Update Client Index**: Updates an exisitng client index record at the specified business. This endpoint requires staff user credentials.
- **Update Client Rewards**: Earns or redeems rewards points for a given client, based on site settings. Cross regional rewards are not supported at this time.
- **Update Client Service**: 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
- **Update Client Visit**: Updates the status of the specified visit.
- **Update Contact Log**: Update a contact log on a client's account.
- **Update Enrollment Schedule**: This endpoint update a enrollment schedule.
- **Update Pricing Option**: Update Pricing Option data such as name, details, price, discontinued using PricingOptionId(product id)
- **Update Product Price**: This endpoint updates the retail price and an online price for a product. Passing at least one of them is mandatory.
- **Update Products**: Update retail products available for purchase at a site.
- **Update Reservation**: A user token is required for this endpoint. This endpoint updates a single reservation.
- **Update Sale Date**: This endpoint updates the SaleDate and returns the details of the sale.
- **Update Services**: Update unit price and online price of provided services.
- **Update Staff**: Updates an existing staff member record at the specified business. The ID is a required parameters for this request.
- **Update Staff Permissions**: Assigns a permission group to a staff member. A staff user token must be included with staff assigned the ManageStaffPayRates permission.
- **Upload Client Document**: 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**.
- **Upload Client Photo**: Uploads a client’s profile photo. The maximum file size is 4 MB and acceptable file types are: * bmp * jpeg * gif * tiff * png

Connect Mindbody in General Input: https://www.generalinput.com/apps/mindbody