openapi: 3.0.3 info: title: Mindbody Public API v6 Appointment Sale API 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 security: - ApiKeyAuth: [] tags: - name: Sale description: Sale operations. paths: /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: - {} '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: - {} '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: - {} '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: - {} '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: - {} 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: - {} '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: - {} '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: - {} '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: - {} '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: - {} '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: - {} '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: - {} '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: - {} '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: - {} Payments: - {} 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: - 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: - {} Appointments: - {} Enrollments: - {} '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: - {} Appointments: - {} Enrollments: - {} '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: - {} Payments: - {} 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: - 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: - 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: - {} '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: - 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: - {} '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: - {} '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: [] components: schemas: StatusEnum: type: string description: StatusEnum enumeration. enum: - None - Requested - Booked - Completed - Confirmed - Arrived - NoShow - Cancelled - LateCancelled BookingWindow: type: object description: Implementation of the 'BookingWindow' model. The booking window for registration properties: StartDateTime: type: string format: date-time description: Date and time that the booking window opens; that is, the first day of sales. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: Date and time that the booking window closes; that is, the last day of sales. example: '2026-05-28T14:30:00Z' DailyStartTime: type: string format: date-time description: The time that the booking window opens; that is, the time that the store opens. example: '2026-05-28T14:30:00Z' DailyEndTime: type: string format: date-time description: The time that the booking window closes; that is, the time that the store closes. example: '2026-05-28T14:30:00Z' PurchasedItem: type: object description: Implementation of the 'PurchasedItem' model. properties: SaleDetailId: type: integer format: int32 description: The ID which gets assigned to the item when item is added to the cart. example: 123456 Id: type: integer format: int32 description: The ID of the purchased item. Use this ID when calling the GET Services or GET Products endpoint. example: 123456 IsService: type: boolean description: When `true`, indicates that the purchased item was a pricing option for a service. example: true BarcodeId: type: string description: The barcode number of the purchased item. Use this ID when calling the GET Products endpoint. example: example-value Description: type: string description: The description of the sale transaction/pricing option. example: Example note for Mindbody Public API. ContractId: type: integer format: int32 description: The contract purchased by the client. Use this ID when calling the GET Contract endpoint. example: 123456 CategoryId: type: integer format: int32 description: The revenue category ID used for sale. Use this ID when calling the GET Categories endpoint. example: 123456 SubCategoryId: type: integer format: int32 description: The ID of revenue subcategory. example: 123456 UnitPrice: type: number format: double description: er Unit Price of the item purchased. example: 49.99 Quantity: type: integer format: int32 description: 'Quantity of the purchased item, applicable for products only. Note: Negative numbers indicate returned items.' example: 10 DiscountPercent: type: number format: double description: The percent discount that was applied to the items subtotal. example: 1.0 DiscountAmount: type: number format: double description: The total discount amount that was applied to the items subtotal. example: 49.99 Tax1: type: number format: double description: A decimal representation of the first tax rate that was applied to the items subtotal. example: 1.0 Tax2: type: number format: double description: A decimal representation of the second tax rate that was applied to the items subtotal. example: 1.0 Tax3: type: number format: double description: A decimal representation of the third tax rate that was applied to the items subtotal. example: 1.0 Tax4: type: number format: double description: A decimal representation of the fourth tax rate that was applied to the items subtotal. example: 1.0 Tax5: type: number format: double description: A decimal representation of the fifth tax rate that was applied to the items subtotal. example: 1.0 TaxAmount: type: number format: double description: Total tax amount that is summation of tax1, tax2, tax3, tax4 and tax5. example: 49.99 TotalAmount: type: number format: double description: The items total, once discounts and/or tax was applied. example: 49.99 Notes: type: string description: Note made by the customer while purchasing item. example: Example note for Mindbody Public API. Returned: type: boolean description: When `true`, indicates that the purchased item is returned, `false` otherwise. example: true PaymentRefId: type: integer format: int32 description: The payment reference ID generated during payment of sold item. example: 123456 ExpDate: type: string format: date-time description: The expiration date of the pricing option purchased. example: '2026-05-28T14:30:00Z' ActiveDate: type: string format: date-time description: The activation date of pricing option purchased. example: '2026-05-28T14:30:00Z' GiftCardBarcodeId: type: string description: Gift Card BarcodeId example: example-value AlternativePaymentMethod: type: object description: Implementation of the 'AlternativePaymentMethod' model. DTO object for alternative payment methods. properties: Id: type: integer format: int32 description: The ID of the alternative payment method. example: 123456 Name: type: string description: The name of the alternative payment method. example: Sunset Yoga Studio ScheduleTypeEnum: type: string description: ScheduleTypeEnum enumeration. enum: - All - Class - Enrollment - Appointment - Resource - Media - Arrival CompleteCheckoutShoppingCartUsingAlternativePaymentsRequest: type: object description: Implementation of the 'CompleteCheckoutShoppingCartUsingAlternativePaymentsRequest' model. The API Request model for Complete Checkout Shopping Cart API. properties: AccessToken: type: string description: The Access Token generated during Pre-Payment step. example: example-value ClientId: type: string description: The RSSID of the client making the purchase. A cart can be validated without a client ID, but a client ID must be specified to complete a sale. example: example-value Test: type: boolean description: 'When `true`, indicates that the contents of the cart are validated, but the transaction does not take place. You should use this parameter during testing and when checking the calculated totals of the items in the cart.
When `false`, the transaction takes place and the database is affected.
Default: **false**' example: true GetServicesResponse: type: object description: Implementation of the 'GetServicesResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. Services: type: array items: $ref: '#/components/schemas/Service' description: Contains information about the services. example: - {} ResourceAvailability: type: object description: Implementation of the 'ResourceAvailability' model. An availability of a resource properties: ResourceId: type: integer format: int32 description: Id example: 123456 StartDateTime: type: string format: date-time description: Starts example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: Ends example: '2026-05-28T14:30:00Z' UpdateProductPriceResponse: type: object description: Implementation of the 'UpdateProductPriceResponse' model. Update Product Price Response Model properties: Product: $ref: '#/components/schemas/Product' description: Contains information about the product. ContractItem: type: object description: Implementation of the 'ContractItem' model. properties: Id: type: string description: The ID of the item. example: example-value Name: type: string description: The name of the item. example: Sunset Yoga Studio Description: type: string description: A description of the item. example: Example note for Mindbody Public API. Type: type: string description: The type of the item. example: example-value Price: type: number format: double description: The price of the item. example: 49.99 Quantity: type: integer format: int32 description: The quantity of the item. example: 10 OneTimeItem: type: boolean description: When `true`, indicates that the item is charged only once.
When `false`, indicates that the item is charged multiple times. example: true Liability: type: object description: Implementation of the 'Liability' model. properties: AgreementDate: type: string format: date-time description: The date and time at which the client agreed to the liability waiver for the business. example: '2026-05-28T14:30:00Z' IsReleased: type: boolean description: The client’s liability release status.
When `true`, indicates that the client has agreed to the liability release for the business.
When `false`, indicates that the client has not agreed to the liability release for the business. example: true ReleasedBy: type: integer format: int32 description: An ID indicating who released liability for the client. If the client agreed to the liability waiver by signing into an account online, this value is `null`. If a staff member marked the waiver as signed on behalf of the client, it is the staff member’s ID. `0` indicates that the business owner marked the liability waiver as signed on behalf of the client. example: 1 CustomClientFieldValue: type: object description: Implementation of the 'CustomClientFieldValue' model. The value of a custom client field properties: Value: type: string description: The value of a specific custom field for a client. example: example-value Id: type: integer format: int32 description: The ID of the custom client field. example: 123456 DataType: type: string description: The data type of the field. example: example-value Name: type: string description: The name of the field. example: Sunset Yoga Studio ClassSchedule: type: object description: Implementation of the 'ClassSchedule' model. Represents a single class instance. The class meets at the start time, goes until the end time. properties: Classes: type: array items: $ref: '#/components/schemas/Class' description: Contains information about a class. example: - {} Clients: type: array items: $ref: '#/components/schemas/Client' description: Contains information about clients. example: - {} Course: $ref: '#/components/schemas/Course' description: Contains information about the course that the enrollment is a part of. SemesterId: type: integer format: int32 description: The semester ID for the enrollment (if any). example: 123456 IsAvailable: type: boolean description: When `true`, indicates that the enrollment shows in consumer mode, has not started yet, and there is room in each class of the enrollment.
When `false`, indicates that either the enrollment does not show in consumer mode, has already started, or there is no room in some classes of the enrollment. example: true Id: type: integer format: int32 description: The unique ID of the class schedule. example: 123456 ClassDescription: $ref: '#/components/schemas/ClassDescription' description: Contains information about the class. DaySunday: type: boolean description: When `true`, indicates that this schedule occurs on Sundays. example: true DayMonday: type: boolean description: When `true`, indicates that this schedule occurs on Mondays. example: true DayTuesday: type: boolean description: When `true`, indicates that this schedule occurs on Tuesdays. example: true DayWednesday: type: boolean description: When `true`, indicates that this schedule occurs on Wednesdays. example: true DayThursday: type: boolean description: When `true`, indicates that this schedule occurs on Thursdays. example: true DayFriday: type: boolean description: When `true`, indicates that this schedule occurs on Fridays. example: true DaySaturday: type: boolean description: When `true`, indicates that this schedule occurs on Saturdays. example: true AllowOpenEnrollment: type: boolean description: When `true`, indicates that the enrollment allows booking after the enrollment has started. example: true AllowDateForwardEnrollment: type: boolean description: When `true`, indicates that this the enrollment shows in consumer mode, the enrollment has not started yet, and there is room in each class of the enrollment. example: true StartTime: type: string format: date-time description: The time this class schedule starts. example: '2026-05-28T14:30:00Z' EndTime: type: string format: date-time description: The time this class schedule ends. example: '2026-05-28T14:30:00Z' StartDate: type: string format: date-time description: The date this class schedule starts. example: '2026-05-28T14:30:00Z' EndDate: type: string format: date-time description: The date this class schedule ends. example: '2026-05-28T14:30:00Z' Staff: $ref: '#/components/schemas/Staff' description: Contains information about the staff member who is regularly scheduled to teach the class. Location: $ref: '#/components/schemas/Location' description: Contains information about the regularly scheduled location of this class. FrequencyType: $ref: '#/components/schemas/FrequencyTypeEnum' description: The class schedule recurrence type. FrequencyInterval: type: integer format: int32 description: The interval between class schedule occurencies. example: 1 Course: type: object description: Implementation of the 'Course' model. A course. properties: Id: type: integer format: int32 description: The course ID. example: 123456 Name: type: string description: The course name. example: Sunset Yoga Studio Description: type: string description: A description of the course. example: Example note for Mindbody Public API. Notes: type: string description: Any notes that have been written about the course. example: Example note for Mindbody Public API. StartDate: type: string format: date-time description: Date and time that the course starts. example: '2026-05-28T14:30:00Z' EndDate: type: string format: date-time description: Date and time that the course ends. example: '2026-05-28T14:30:00Z' Location: $ref: '#/components/schemas/Location' description: Contains information about the location. Organizer: $ref: '#/components/schemas/Staff' description: Contains information about the staff member in charge of organizing the event. Program: $ref: '#/components/schemas/Program' description: Contains information about the service category to which the course belongs. ImageUrl: type: string description: The URL of the image associated with this course, if one exists. example: https://example.mindbodyonline.com/resource/abc123 Sale: type: object description: Implementation of the 'Sale' model. Contains the Sale details. properties: Id: type: integer format: int32 description: The sale ID. example: 123456 SaleDate: type: string format: date-time description: The date the item was sold. example: '2026-05-28T14:30:00Z' SaleTime: type: string description: The time the item was sold. example: example-value SaleDateTime: type: string format: date-time description: The date and time the item was sold. example: '2026-05-28T14:30:00Z' OriginalSaleDateTime: type: string format: date-time description: The date and time the item was sold originally. example: '2026-05-28T14:30:00Z' SalesRepId: type: integer format: int32 description: The sales representative ID example: 123456 ClientId: type: string description: The ID of the client who made the purchase. example: example-value RecipientClientId: type: integer format: int32 description: Recipient Client Id example: 123456 PurchasedItems: type: array items: $ref: '#/components/schemas/PurchasedItem' description: Contains the `PurchasedItem` objects that describe the purchased items. example: - {} LocationId: type: integer format: int32 description: The ID of the location where the sale takes place. example: 123456 Payments: type: array items: $ref: '#/components/schemas/SalePayment' description: Contains the `SalePayment` objects that describe the payments that contributed to this sale. example: - {} GetCustomPaymentMethodsResponse: type: object description: Implementation of the 'GetCustomPaymentMethodsResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. PaymentMethods: type: array items: $ref: '#/components/schemas/CustomPaymentMethod' description: Contains information about the custom payment methods. example: - {} PurchaseContractResponseTotals: type: object description: Implementation of the 'PurchaseContractResponseTotals' model. Totals for the purchase properties: Total: type: number format: double description: Total payment amount example: 49.99 SubTotal: type: number format: double description: Sub total. For VAT, sum of asking prices (include taxes, excludes discounts). For non vat, excludes taxes and discounts. example: 49.99 Discount: type: number format: double description: Discount example: 1.0 Tax: type: number format: double description: Tax example: 1.0 Color: type: object description: Implementation of the 'Color' model. A color used by products. properties: Id: type: integer format: int32 description: The unique ID of the product color. example: 123456 Name: type: string description: The name of the color of product. example: Sunset Yoga Studio AssignedClientIndex: type: object description: Implementation of the 'AssignedClientIndex' model. Represents a client index value assigned to a client properties: Id: type: integer format: int32 description: The index ID assigned to the client. example: 123456 ValueId: type: integer format: int32 description: The index’s value ID. example: 123456 AppointmentGenderPreferenceEnum: type: string description: AppointmentGenderPreferenceEnum enumeration. enum: - None - Female - Male CreditCardInfo: type: object description: Implementation of the 'CreditCardInfo' model. Information about an individual credit card properties: CreditCardNumber: type: string description: The model property of type str. example: example-value ExpMonth: type: string description: The model property of type str. example: example-value ExpYear: type: string description: The model property of type str. example: example-value BillingName: type: string description: The model property of type str. example: example-value BillingAddress: type: string description: The model property of type str. example: 123 Market St BillingCity: type: string description: The model property of type str. example: example-value BillingState: type: string description: The model property of type str. example: example-value BillingPostalCode: type: string description: The model property of type str. example: example-value SaveInfo: type: boolean description: The model property of type bool. example: true CardId: type: string description: Card Id of a stored instruments card example: example-value CVV: type: string description: CVV of the card example: example-value GiftCard: type: object description: Implementation of the 'GiftCard' model. properties: Id: type: integer format: int32 description: The gift card's `ProductID`. example: 123456 LocationIds: type: array items: type: integer format: int32 description: The IDs of the locations where the gift card is sold. example: - 1 Description: type: string description: A description of the gift card. example: Example note for Mindbody Public API. EditableByConsumer: type: boolean description: When `true`, indicates that the gift card can be edited by the client. example: true CardValue: type: number format: double description: The value of the gift card. example: 1.0 SalePrice: type: number format: double description: The sale price of the gift card, if applicable. example: 49.99 SoldOnline: type: boolean description: When `true`, indicates that the gift card is sold online. example: true MembershipRestrictionIds: type: array items: type: integer format: int32 description: A list of IDs for membership restrictions, if this card is restricted to members with certain types of memberships. example: - 1 GiftCardTerms: type: string description: The terms of the gift card. example: example-value ContactInfo: type: string description: Contact information for the gift card. example: example-value DisplayLogo: type: boolean description: When `true`, indicates that the logo should be displayed on the gift card. example: true Layouts: type: array items: $ref: '#/components/schemas/GiftCardLayout' description: A list of layouts available for the gift card. example: - {} AppointmentStatusEnum: type: string description: AppointmentStatusEnum enumeration. enum: - None - Requested - Booked - Completed - Confirmed - Arrived - NoShow - Cancelled - LateCancelled Appointment: type: object description: Implementation of the 'Appointment' model. Contains information about an appointment. properties: GenderPreference: $ref: '#/components/schemas/GenderPreferenceEnum' description: 'The prefered gender of the appointment provider. Possible values are: * None * Female * Male' Duration: type: integer format: int32 description: The duration of the appointment. example: 1 ProviderId: type: string description: If a user has Complementary and Alternative Medicine features enabled, this property indicates the provider assigned to the appointment. example: example-value Id: type: integer format: int32 description: The unique ID of the appointment. example: 123456 Status: $ref: '#/components/schemas/StatusEnum' description: 'The status of this appointment. Possible values are: * None * Requested * Booked * Completed * Confirmed * Arrived * NoShow * Cancelled * LateCancelled' StartDateTime: type: string format: date-time description: The date and time the appointment is to start. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The date and time the appointment is to end. example: '2026-05-28T14:30:00Z' Notes: type: string description: Any notes associated with the appointment. example: Example note for Mindbody Public API. PartnerExternalId: type: string description: Optional external key for api partners. example: example-value StaffRequested: type: boolean description: When `true`, indicates that the staff member was requested specifically by the client. example: true ProgramId: type: integer format: int32 description: The ID of the program to which this appointment belongs. example: 123456 SessionTypeId: type: integer format: int32 description: The ID of the session type of this appointment. example: 123456 LocationId: type: integer format: int32 description: The ID of the location where this appointment is to take place. example: 123456 StaffId: type: integer format: int32 description: The ID of the staff member providing the service for this appointment. example: 123456 Staff: $ref: '#/components/schemas/AppointmentStaff' description: Staff for the appointment ClientId: type: string description: The RSSID of the client who is booked for this appointment. example: example-value FirstAppointment: type: boolean description: When `true`, indicates that this is the client’s first appointment at this site. 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 WaitlistEntryId: type: integer format: int32 description: The unique ID of the appointment waitlist. example: 123456 ClientServiceId: type: integer format: int32 description: The ID of the pass on the client’s account that is to pay for this appointment. example: 123456 Resources: type: array items: $ref: '#/components/schemas/ResourceSlim' description: The resources this appointment is to use. example: - {} AddOns: type: array items: $ref: '#/components/schemas/AddOnSmall' description: Any AddOns associated with the appointment example: - {} OnlineDescription: type: string description: Online Description associated with the appointment example: Example note for Mindbody Public API. ClassDescription: type: object description: Implementation of the 'ClassDescription' model. Represents a class definition. The class meets at the start time, goes until the end time. properties: Active: type: boolean description: When `true`, indicates that the business can assign this class description to new class schedules.
When `false`, indicates that the business cannot assign this class description to new class schedules. example: true Description: type: string description: The long version of the class description. example: Example note for Mindbody Public API. Id: type: integer format: int32 description: The class description's ID. example: 123456 ImageURL: type: string description: The class description's image URL, if any. If it does not exist, nothing is returned. example: example-value LastUpdated: type: string format: date-time description: The date this class description was last modified. example: '2026-05-28T14:30:00Z' Level: $ref: '#/components/schemas/Level' description: The level information about this class. Name: type: string description: The name of this class description. example: Sunset Yoga Studio Notes: type: string description: Any notes about the class description. example: Example note for Mindbody Public API. Prereq: type: string description: Any prerequisites for the class. example: example-value Program: $ref: '#/components/schemas/Program' description: Contains information about the class description's program. SessionType: $ref: '#/components/schemas/SessionType' description: Contains information about the class description's session type. Category: type: string description: The category of this class description. example: example-value CategoryId: type: integer format: int32 description: The category ID of this class description. example: 123456 Subcategory: type: string description: The subcategory of this class description. example: example-value SubcategoryId: type: integer format: int32 description: The subcategory ID of this class description. example: 123456 PurchaseContractResponse: type: object description: Implementation of the 'PurchaseContractResponse' model. Response model for POST PurchaseContract endpoint properties: ClientId: type: string description: The ID of the client who is purchasing the contract. example: example-value UniqueClientId: type: integer format: int32 description: The Unique ID of the client who is purchasing the contract. example: 123456 LocationId: type: integer format: int32 description: The ID of the location where the contract is being purchased. example: 123456 ContractId: type: integer format: int32 description: The ID of the general contract being purchased. example: 123456 ClientContractId: type: integer format: int32 description: The ID of the specific contract being purchased by this specific client, not to be confused with the `ContractId`, which refers to a general contract that the business offers. example: 123456 Totals: $ref: '#/components/schemas/PurchaseContractResponseTotals' description: Purchase totals PaymentProcessingFailures: type: array items: $ref: '#/components/schemas/PaymentProcessingFailure' description: Contains information only if SCA challenge is indicated. example: - {} GiftCardLayout: type: object description: Implementation of the 'GiftCardLayout' model. Gift card layout properties: LayoutId: type: integer format: int32 description: The ID of the layout. example: 123456 LayoutName: type: string description: The name of the layout. example: example-value LayoutUrl: type: string description: The URL of the layout. example: https://example.mindbodyonline.com/resource/abc123 Availability: type: object description: Implementation of the 'Availability' model. A staff availability entry properties: Id: type: integer format: int32 description: The ID of the availability. example: 123456 Staff: $ref: '#/components/schemas/Staff' description: Contains information about staff members. SessionType: $ref: '#/components/schemas/SessionType' description: Contains information about the types of sessions. Programs: type: array items: $ref: '#/components/schemas/Program' description: Contains information about the programs. example: - {} StartDateTime: type: string format: date-time description: The date and time the availability starts in the site local time zone. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The date and time the availability ends in the site local time zone. example: '2026-05-28T14:30:00Z' BookableEndDateTime: type: string format: date-time description: The time of day that the last appointment can start in the site local time zone. example: '2026-05-28T14:30:00Z' Location: $ref: '#/components/schemas/Location' description: Contains information about the location. PrepTime: type: integer format: int32 description: Prep time in minutes example: 1 FinishTime: type: integer format: int32 description: Finish time in minutes example: 1 IsMasked: type: boolean description: When `true`, indicates that the staff member's name for availabilty is masked. When `false`, indicates that the staff member's name for availabilty is not masked. example: true ShowPublic: type: boolean description: When `true`, indicates that the schedule is shown to the clients. When `false`, indicates that the schedule is hidden from the clients. example: true ResourceAvailabilities: type: array items: $ref: '#/components/schemas/ResourceAvailability' description: Contains information about resources availability for the specified session type. example: - {} Client: type: object description: Implementation of the 'Client' model. The Client. properties: AppointmentGenderPreference: $ref: '#/components/schemas/AppointmentGenderPreference1Enum' description: The gender of staff member with whom the client prefers to book appointments. BirthDate: type: string format: date-time description: The client’s date of birth. example: '2026-05-28T14:30:00Z' Country: type: string description: The client’s country. example: US CreationDate: type: string format: date-time description: The date the client’s profile was created and added to the business, either by the client from the online store, or by a staff member. This value always returns in the format `yyyy-mm-ddThh:mm:ss:ms`. example: '2026-05-28T14:30:00Z' CustomClientFields: type: array items: $ref: '#/components/schemas/CustomClientFieldValue' description: Contains information about the custom fields used for clients in the business. example: - {} ClientCreditCard: $ref: '#/components/schemas/ClientCreditCard' description: Contains information about the client’s credit card. ClientIndexes: type: array items: $ref: '#/components/schemas/AssignedClientIndex' description: Contains the IDs of the client’s assigned ClientIndexes and ClientIndexValues. If an index is already assigned to the client, it is overwritten with the passed index value. You cannot currently remove client indexes using the Public API. Only the indexes passed in the request are returned in the response. example: - {} ClientRelationships: type: array items: $ref: '#/components/schemas/ClientRelationship' description: Contains information about the relationship between two clients. This parameter does not include all of the relationships assigned to the client, only the ones passed in the request. example: - {} FirstAppointmentDate: type: string format: date-time description: The date of the client’s first booked appointment at the business. example: '2026-05-28T14:30:00Z' FirstClassDate: type: string format: date-time description: The date of the clients first booked class at the business. example: '2026-05-28T14:30:00Z' FirstName: type: string description: The client’s first name. example: Alex Id: type: string description: The client’s ID, as configured by the business owner. This is the client’s barcode ID if the business owner assigns barcodes to clients. This ID is used throughout the Public API for client-related Public API calls. When used in a POST `UpdateClient` request, the `Id` is used to identify the client for the update. example: example-value IsCompany: type: boolean description: When `true`, indicates that the client should be marked as a company at the business.
When `false`, indicates the client is an individual and does not represent a company. example: true IsProspect: type: boolean description: This value is set only if the business owner allows individuals to be prospects.
When `true`, indicates that the client should be marked as a prospect for the business.
When `false`, indicates that the client should not be marked as a prospect for the business. example: true LastName: type: string description: The client’s last name. example: Lane Liability: $ref: '#/components/schemas/Liability' description: Contains the client’s liability agreement information for the business. LiabilityRelease: type: boolean description: 'Passing `true` sets the client’s liability information as follows: * `IsReleased` is set to `true`. * `AgreementDate` is set to the time zone of the business when the call was processed. * `ReleasedBy` is set to `null` if the call is made by the client, `0` if the call was made by the business owner, or to a specific staff member’s ID if a staff member made the call. Passing `false` sets the client’s liability information as follows: * `IsReleased` is set to `false`. * `AgreementDate` is set to ' example: true MembershipIcon: type: integer format: int32 description: The ID of the [membership icon](https://support.mindbodyonline.com/s/article/203259703-Member ship-Setup-screen?language=en_US) displayed next to the client’s name, if the client has a membership on their account. example: 1 MobileProvider: type: integer format: int32 description: The client’s mobile provider. example: 1 Notes: type: string description: Any notes entered on the client’s account by staff members. This value should never be shown to clients unless the business owner has a specific reason for showing them. example: Example note for Mindbody Public API. State: type: string description: The client’s state. example: CA UniqueId: type: integer format: int32 description: The client’s system-generated ID at the business. This value cannot be changed by business owners and is always unique across all clients at the business. This ID is not widely used in the Public API, but can be used by your application to uniquely identify clients. example: 123456 LastModifiedDateTime: type: string format: date-time description: The UTC date and time when the client’s information was last modified. example: '2026-05-28T14:30:00Z' RedAlert: type: string description: Contains any red alert information entered by the business owner for the client. example: example-value YellowAlert: type: string description: Contains any yellow alert information entered by the business owner for the client. example: example-value MiddleName: type: string description: The client’s middle name. example: example-value ProspectStage: $ref: '#/components/schemas/ProspectStage' description: Contains information about the client [prospect stage](https://support.mindbodyonline.com/s/article/206176457-Prosp ect-Stages?language=en_US). Email: type: string description: The client’s email address. example: kinlane@example.com MobilePhone: type: string description: The client’s mobile phone number. example: '+15551234567' HomePhone: type: string description: The client’s home phone number. example: '+15551234567' WorkPhone: type: string description: The client’s work phone number. example: '+15551234567' AccountBalance: type: number format: double description: The client’s current [account balance](https://mindbody-online-support.force.com/support/s/articl e/203262013-Adding-account-payments-video-tutorial?language=en_US). example: 49.99 AddressLine1: type: string description: The first line of the client’s street address. example: 123 Market St AddressLine2: type: string description: The second line of the client’s street address, if needed. example: 123 Market St City: type: string description: The client’s city. example: San Francisco PostalCode: type: string description: The client’s postal code. example: '94110' WorkExtension: type: string description: The client’s work phone extension number. example: example-value ReferredBy: type: string description: Specifies how the client was referred to the business. You can get a list of possible strings using the `GetClientReferralTypes` endpoint. example: example-value PhotoUrl: type: string description: The URL of the client’s photo for the client profile. example: https://example.mindbodyonline.com/resource/abc123 EmergencyContactInfoName: type: string description: The name of the client’s emergency contact. example: example-value EmergencyContactInfoEmail: type: string description: The email address of the client’s emergency contact. example: kinlane@example.com EmergencyContactInfoPhone: type: string description: The phone number of the client’s emergency contact. example: '+15551234567' EmergencyContactInfoRelationship: type: string description: The client’s relationship with the emergency contact. example: example-value Gender: type: string description: The gender of the client. example: example-value LastFormulaNotes: type: string description: The last [formula note](https://support.mindbodyonline.com/s/article/203259903-Appoin tments-Formula-notes?language=en_US) entered for the client. example: Example note for Mindbody Public API. Active: type: boolean description: When `true`, indicates that the client’s profile is marked as active on the site.
When `false`, the client’s profile is inactive. Defaults to `true` based on the assumption that if a client is currently inactive OR is to be marked inactive, this property will explicitly be mapped/set to `false`. example: true SalesReps: type: array items: $ref: '#/components/schemas/SalesRep' description: A list of sales representatives. example: - {} Status: type: string description: 'The status of the client in the business. Possible values are: * Declined * Non-Member * Active * Expired * Suspended * Terminated' example: Active Action: $ref: '#/components/schemas/Action1Enum' description: The action taken. SendAccountEmails: type: boolean description: 'When `true`, indicates that the client has opted to receive general account notifications by email. This property is editable.
Default: **false**' example: true SendAccountTexts: type: boolean description: When `true`, indicates that the client has opted to receive general account notifications by text message. This parameter cannot be updated by developers. If included in a request, it is ignored. example: true SendPromotionalEmails: type: boolean description: 'When `true`, indicates that the client has opted to receive promotional notifications by email. This property is editable.
Default: **false**' example: true SendPromotionalTexts: type: boolean description: When `true`, indicates that the client has opted to receive promotional notifications by text message. This parameter cannot be updated by developers. If included in a request, it is ignored. example: true SendScheduleEmails: type: boolean description: 'When `true`, indicates that the client has opted to receive schedule notifications by email. This property is editable.
Default: **false**' example: true SendScheduleTexts: type: boolean description: When `true`, indicates that the client has opted to receive schedule notifications by text message. This parameter cannot be updated by developers. If included in a request, it is ignored. example: true HomeLocation: $ref: '#/components/schemas/Location' description: Information about the Home Location for this client LockerNumber: type: string description: The clients locker number. example: example-value ClientType: $ref: '#/components/schemas/ClientType' description: The client's assigned client type. Returns null if the client has no client type assigned. For more information, see [Client Types](https://support.mindbodyonline.com/s/article/203259193-Clien t-Types). Transaction: type: object description: Implementation of the 'Transaction' model. properties: TransactionId: type: integer format: int32 description: The transaction ID. example: 123456 SaleId: type: integer format: int32 description: The sale ID. example: 123456 ClientId: type: integer format: int32 description: The ID of the client who made the purchase. example: 123456 Amount: type: number format: double description: The amount charged on the card example: 49.99 Settled: type: boolean description: Whether it is settled or not example: true Status: type: string description: Status of the transaction example: Active TransactionTime: type: string format: date-time description: Time of card swiped example: '2026-05-28T14:30:00Z' AuthTime: type: string format: date-time description: Time of card authorized example: '2026-05-28T14:30:00Z' LocationId: type: integer format: int32 description: The ID of the location where the sale takes place. example: 123456 MerchantId: type: string description: Merchant ID of the studio example: example-value TerminalId: type: string description: Terminal ID used for payment. Not applicable for CNP/Bank example: example-value CardExpirationMonth: type: string description: Expiry month of the card example: example-value CardExpirationYear: type: string description: Expiry year of the card example: example-value CCLastFour: type: string description: Last 4 digits of CC example: example-value CardType: type: string description: Type of the card example: example-value CCSwiped: type: boolean description: Whether card is swiped or not example: true ACHLastFour: type: string description: Customer’s ACH last 4 digits example: example-value CheckoutItemWrapper: type: object description: Implementation of the 'CheckoutItemWrapper' model. properties: Item: $ref: '#/components/schemas/CheckoutItem' description: Information about an item in the cart. SalesNotes: type: string description: Sales Notes for the product example: Example note for Mindbody Public API. DiscountAmount: type: number format: double description: The amount the item is discounted. This parameter is ignored for packages. example: 49.99 AppointmentBookingRequests: type: array items: $ref: '#/components/schemas/CheckoutAppointmentBookingRequest' description: A list of appointments to be booked then paid for by this item. This parameter applies only to pricing option items. example: - {} EnrollmentIds: type: array items: type: integer format: int32 description: A list of enrollment IDs that this item is to pay for. This parameter applies only to pricing option items. example: - 1 ClassIds: type: array items: type: integer format: int32 description: A list of class IDs that this item is to pay for. This parameter applies only to pricing option items. example: - 1 CourseIds: type: array items: type: integer format: int32 description: A list of course IDs that this item is to pay for. This parameter applies only to pricing option items. example: - 1 VisitIds: type: array items: type: integer format: int32 description: A list of visit IDs that this item is to pay for. This parameter applies only to pricing option items. example: - 1 AppointmentIds: type: array items: type: integer format: int32 description: A list of appointment IDs that this item is to reconcile. example: - 1 Id: type: integer format: int32 description: The item’s unique ID within the cart. example: 123456 Quantity: type: integer format: int32 description: The number of this item to be purchased. example: 10 Staff: type: object description: Implementation of the 'Staff' model. The Staff properties: Address: type: string description: The address of the staff member who is teaching the class. example: 123 Market St AppointmentInstructor: type: boolean description: When `true`, indicates that the staff member offers appointments.
When `false`, indicates that the staff member does not offer appointments. example: true AlwaysAllowDoubleBooking: type: boolean description: When `true`, indicates that the staff member can be scheduled for overlapping services.
When `false`, indicates that the staff can only be scheduled for one service at a time in any given time-frame. example: true Bio: type: string description: The staff member’s biography. This string contains HTML. example: example-value City: type: string description: The staff member’s city. example: San Francisco Country: type: string description: The staff member’s country. example: US Email: type: string description: The staff member’s email address. example: kinlane@example.com FirstName: type: string description: The staff member’s first name. example: Alex DisplayName: type: string description: The staff member’s Nickname. example: example-value HomePhone: type: string description: The staff member’s home phone number. example: '+15551234567' Id: type: integer format: int32 description: The ID assigned to the staff member. example: 123456 IndependentContractor: type: boolean description: When `true`, indicates that the staff member is an independent contractor. When `false`, indicates that the staff member is not an independent contractor. example: true IsMale: type: boolean description: When `true`, indicates that the staff member is male. When `false`, indicates that the staff member is female. example: true LastName: type: string description: The staff member’s last name. example: Lane MobilePhone: type: string description: The staff member’s mobile phone number. example: '+15551234567' Name: type: string description: The staff member’s name. example: Sunset Yoga Studio PostalCode: type: string description: The staff member’s postal code. example: '94110' ClassTeacher: type: boolean description: When `true`, indicates that the staff member can teach classes. When `false`, indicates that the staff member cannot teach classes. example: true SortOrder: type: integer format: int32 description: If configured by the business owner, this field determines a staff member’s weight when sorting. Use this field to sort staff members on your interface. example: 1 State: type: string description: The staff member’s state. example: CA WorkPhone: type: string description: The staff member’s work phone number. example: '+15551234567' ImageUrl: type: string description: The URL of the staff member’s image, if one has been uploaded. example: https://example.mindbodyonline.com/resource/abc123 ClassAssistant: type: boolean description: Is the staff an assistant example: true ClassAssistant2: type: boolean description: Is the staff an assistant2 example: true EmploymentStart: type: string format: date-time description: The start date of employment example: '2026-05-28T14:30:00Z' EmploymentEnd: type: string format: date-time description: The end date of employment example: '2026-05-28T14:30:00Z' ProviderIDs: type: array items: type: string description: A list of ProviderIds for the staff. example: - example-value Rep: type: boolean description: return true if staff is sales Rep 1 else false. example: true Rep2: type: boolean description: return true if staff is sales Rep 2 else false. example: true Rep3: type: boolean description: return true if staff is sales Rep 3 else false. example: true Rep4: type: boolean description: return true if staff is sales Rep 4 else false. example: true Rep5: type: boolean description: return true if staff is sales Rep 5 else false. example: true Rep6: type: boolean description: return true if staff is sales Rep 6 else false. example: true StaffSettings: $ref: '#/components/schemas/StaffSetting' description: This object contains the staff settings. Appointments: type: array items: $ref: '#/components/schemas/Appointment' description: A list of appointments for the staff. example: - {} Unavailabilities: type: array items: $ref: '#/components/schemas/Unavailability' description: A list of unavailabilities for the staff. example: - {} Availabilities: type: array items: $ref: '#/components/schemas/Availability' description: A list of availabilities for the staff. example: - {} EmpID: type: string description: The EmpID assigned to the staff member. example: example-value Relationship: type: object description: Implementation of the 'Relationship' model. Jim is a RelationshipName1 of John. John is a RelationshipName2 of Jim. properties: Id: type: integer format: int32 description: The ID of the relationship. example: 123456 RelationshipName1: type: string description: The name of the first relationship. example: example-value RelationshipName2: type: string description: The name of the second relationship. example: example-value GetProductsInventoryResponse: type: object description: Implementation of the 'GetProductsInventoryResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. ProductsInventory: type: array items: $ref: '#/components/schemas/ProductsInventory' description: Contains information about the products inventory. example: - {} Amenity: type: object description: Implementation of the 'Amenity' model. Definition of a location amenity properties: Id: type: integer format: int32 description: The ID number of the amenity. example: 123456 Name: type: string description: The name of the amenity, for example, food or lockers. example: Sunset Yoga Studio AddOnSmall: type: object description: Implementation of the 'AddOnSmall' model. properties: Id: type: integer format: int32 description: The unique ID of the appointment add-on booking. example: 123456 Name: type: string description: The name of the appointment add-on. example: Sunset Yoga Studio StaffId: type: integer format: int32 description: The ID of the staff member providing the service for this add-on. example: 123456 TypeId: type: integer format: int32 description: The ID of the session type of this appointment. example: 123456 CheckoutPaymentInfo: type: object description: Implementation of the 'CheckoutPaymentInfo' model. properties: Type: type: string description: 'The type of payment. Possible values are: * CreditCard - Indicates that this payment item is a credit card. * StoredCard - Indicates that this payment item is a credit card stored on the client’s account. * DirectDebit - Indicates that this payment item is a direct debit. * EncryptedTrackData - Indicates that this payment item is a swiped credit card. * TrackData - Indicates that this payment item is a swiped credit card. * DebitAccount - Indicates that funds should be debited from the client’s ' example: example-value Metadata: type: string description: 'Contains information about the cart’s payments. Possible values vary according to the Type property, as below: * CreditCard Keys - amount, creditCardNumber, expMonth, expYear, cvv, billingName, billingAddress, billingCity, billingState, billingPostalCode, saveInfo, cardId * StoredCard Keys - amount, lastFour * DirectDebit Keys - amount * EncryptedTrackData Keys - amount, trackData * TrackData Keys - amount, trackData * DebitAccount Keys - amount * Custom Keys - amount, id * Comp Keys - amount * ' example: example-value AppointmentStaff: type: object description: Implementation of the 'AppointmentStaff' model. properties: Id: type: integer format: int32 description: The model property of type int. example: 123456 FirstName: type: string description: The model property of type str. example: Alex LastName: type: string description: The model property of type str. example: Lane DisplayName: type: string description: The model property of type str. example: example-value GetPackagesResponse: type: object description: Implementation of the 'GetPackagesResponse' model. properties: Packages: type: array items: $ref: '#/components/schemas/Package' description: Contains information about the resulting packages. example: - {} PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. GetSalesResponse: type: object description: Implementation of the 'GetSalesResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. Sales: type: array items: $ref: '#/components/schemas/Sale' description: Contains the Sale objects, each of which describes the sale and payment for a purchase event. example: - {} PricingRelationships: type: object description: Implementation of the 'PricingRelationships' model. properties: PaysFor: type: array items: type: integer format: int32 description: The model property of type List[int]. example: - 1 PaidBy: type: array items: type: integer format: int32 description: The model property of type List[int]. example: - 1 ShoppingCart: type: object description: Implementation of the 'ShoppingCart' model. Represents a shopping cart. properties: Id: type: string description: The shopping cart ID. example: example-value CartItems: type: array items: $ref: '#/components/schemas/CartItem' description: Contains information about the items in the shopping cart. example: - {} SubTotal: type: number format: double description: The cart’s total cost before taxes and discounts were applied. example: 49.99 DiscountTotal: type: number format: double description: The monetary amount removed from the cart’s total cost by applied discounts. example: 49.99 TaxTotal: type: number format: double description: The monetary amount paid in taxes, included in the cart’s `GrandTotal`. example: 49.99 GrandTotal: type: number format: double description: The cart’s total cost, including taxes and discounts. example: 49.99 Transactions: type: array items: $ref: '#/components/schemas/TransactionResponse' description: Contains information returned from the first call to CheckoutShoppingCart. example: - {} SaleId: type: integer format: int32 description: The ID of the sale associated with the shopping cart. example: 123456 InitiatePurchaseContractRequest: type: object description: Implementation of the 'InitiatePurchaseContractRequest' model. Request to initiate a purchase contract. properties: ClientId: type: string description: The ID of the client. Note that this is not the same as the client’s unique ID. example: example-value ContractId: type: integer format: int32 description: The ID of the contract being purchased. example: 123456 PaymentMethodId: type: integer format: int32 description: 'The type of alternative payment. Possible values are: * 997 - Indicates that the payment method is iDEAL. * 801 - Indicates that the payment method is Apple Pay.' example: 123456 Test: type: boolean description: 'When `true`, the Public API validates input information, but does not commit it, so no client data is affected.
When `false` or omitted, the transaction is committed, and client data is affected.
This endpoint DOES NOT support the `Test` parameter.
Default: **false**' example: true LocationId: type: integer format: int32 description: 'The ID of the location where the client is purchasing the contract; used for AutoPays. If no location ID is supplied, it defaults to the online store, represented by a null value. Default: **null** (Online store location)' example: 123456 PromotionCode: type: string description: A promotion code, if one applies. Promotion codes are applied to items that are both marked as pay now in a contract and are discounted by the promotion code. If a pay now item is an autopay item, its autopay price is the price at the time of checkout, so, if a promotion code was applied, all autopays are scheduled using that discounted price. example: example-value PromotionCodes: type: array items: type: string description: Promotion codes, if they apply. Promotion codes are applied to items that are both marked as pay now in a contract and are discounted by the promotion code. If a pay now item is an autopay item, its autopay price is the price at the time of checkout, so, if a promotion code was applied, all autopays are scheduled using that discounted price. example: - example-value SendNotifications: type: boolean description: 'When `true`, indicates that email and SMS notifications should be sent to the client after purchase.
Default: **true**' example: true SalesRepId: type: integer format: int32 description: The ID of the staff member to be marked as the sales rep for this contract sale. example: 123456 PaymentAuthenticationCallbackUrl: type: string description: The URL consumer is redirected to after the payment. example: https://example.mindbodyonline.com/resource/abc123 ClientService: type: object description: Implementation of the 'ClientService' model. A service that is on a client's account. properties: ActiveDate: type: string format: date-time description: The date that this pricing option became active and could be used to pay for services. example: '2026-05-28T14:30:00Z' Count: type: integer format: int32 description: The number of service sessions this pricing option contained when first purchased. example: 10 Current: type: boolean description: When `true`, there are service sessions remaining on the pricing option that can be used pay for the current session.
When `false`, the client cannot use this pricing option to pay for other services. example: true ExpirationDate: type: string format: date-time description: The date when the pricing option expires and can no longer be used to pay for services, even if unused service sessions remain on the option; expressed as UTC. example: '2026-05-28T14:30:00Z' Id: type: integer format: int32 description: The unique ID assigned to this pricing option, specific to when it was purchased by the client. example: 123456 ProductId: type: integer format: int32 description: The unique ID of this pricing option, not specific to any client's purchase of it. example: 123456 Name: type: string description: The name of this pricing option. example: Sunset Yoga Studio PaymentDate: type: string format: date-time description: The date on which the client paid for this pricing option. example: '2026-05-28T14:30:00Z' Program: $ref: '#/components/schemas/Program' description: Contains information about the service category this service falls under. Remaining: type: integer format: int32 description: The number of service sessions remaining in the pricing option that can still be used. example: 1 SiteId: type: integer format: int32 description: The ID of the subscriber site associated with this pricing option. example: -99 Action: $ref: '#/components/schemas/Action1Enum' description: The action taken. ClientID: type: string description: The Client ID assigned to this pricing option, specific to when it was purchased by the client. example: example-value Returned: type: boolean description: Identification for purchased service is returned or not. example: true Class: type: object description: Implementation of the 'Class' model. Represents a single class instance. The class meets at the start time, goes until the end time. properties: ClassScheduleId: type: integer format: int32 description: The ID used to retrieve the class schedule for the desired class. example: 123456 Visits: type: array items: $ref: '#/components/schemas/Visit' description: Contains information about visits. example: - {} Clients: type: array items: $ref: '#/components/schemas/Client' description: Contains information about clients. example: - {} Location: $ref: '#/components/schemas/Location' description: Contains information about a location. Resource: $ref: '#/components/schemas/ResourceSlim' description: Contains information about a resource, such as a room, assigned to a class. MaxCapacity: type: integer format: int32 description: The maximum number of clients allowed in the class. example: 1 WebCapacity: type: integer format: int32 description: The maximum number of clients allowed to sign up online for the class. example: 1 TotalBooked: type: integer format: int32 description: The total number of clients booked in the class. example: 1 TotalSignedIn: type: integer format: int32 description: The total number of clients signed into the class. example: 1 TotalBookedWaitlist: type: integer format: int32 description: The total number of booked clients on the waiting list for the class. example: 1 WebBooked: type: integer format: int32 description: The total number of clients who signed up online for the class. example: 1 SemesterId: type: integer format: int32 description: The ID of the semester that the class is a part of, if any. example: 123456 IsCanceled: type: boolean description: When `true`, indicates that the class has been cancelled.
When `false`, indicates that the class has not been cancelled. example: true Substitute: type: boolean description: When `true`, indicates that the class is being taught by a substitute teacher.
When `false`, indicates that the class is being taught by its regular teacher. example: true Active: type: boolean description: When `true`, indicates that the class is shown to clients when in consumer mode.
When `false`, indicates that the class is not shown to clients when in consumer mode. example: true IsWaitlistAvailable: type: boolean description: When `true`, indicates that the clients can be placed on a waiting list for the class.
When `false`, indicates that the clients cannot be placed on a waiting list for the class. example: true IsEnrolled: type: boolean description: When `true`, indicates that the client with the given `ClientId` is enrolled in this class.
When `false`, indicates that the client with the given `ClientId` is not enrolled in this class. example: true HideCancel: type: boolean description: When `true`, indicates that this class is hidden when cancelled.
When `false`, indicates that this class is not hidden when cancelled. example: true Id: type: integer format: int32 description: The unique identifier for the class. example: 123456 IsAvailable: type: boolean description: When `true`, indicates that the client with the given client ID can book this class.
When `false`, indicates that the client with the given client ID cannot book this class. example: true StartDateTime: type: string format: date-time description: The time this class is scheduled to start. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The time this class is scheduled to end. example: '2026-05-28T14:30:00Z' LastModifiedDateTime: type: string format: date-time description: The last time this class was modified. example: '2026-05-28T14:30:00Z' ClassDescription: $ref: '#/components/schemas/ClassDescription' description: Contains information that defines the class. Staff: $ref: '#/components/schemas/Staff' description: Contains information about the staff member. BookingWindow: $ref: '#/components/schemas/BookingWindow' description: Contains information about the window for booking. BookingStatus: $ref: '#/components/schemas/BookingStatusEnum' description: Contains the booking’s payment status. VirtualStreamLink: type: string description: The link to the Mindbody-hosted live stream for the class. This is `null` when no live stream is configured for the class. example: example-value WaitListSize: type: integer format: int32 description: The maximum number allowed on the waiting list for the class. example: 1 ClassNotes: type: string description: Notes for the class example: Example note for Mindbody Public API. ReturnSaleResponse: type: object description: Implementation of the 'ReturnSaleResponse' model. ReturnSaleResponse properties: ReturnSaleID: type: integer format: int32 description: The returned sale ID example: 1 TrainerID: type: integer format: int32 description: The trainer ID who returned the sale example: 1 Amount: type: number format: double description: The returned amount example: 49.99 ProductsInventory: type: object description: Implementation of the 'ProductsInventory' model. properties: ProductId: type: integer format: int32 description: A ProductId of the product. example: 123456 BarcodeId: type: string description: The Id is barcode Id of the product. example: example-value LocationId: type: integer format: int32 description: The LocationId of the product. example: 123456 UnitsLogged: type: integer format: int32 description: UnitsLogged of the product. example: 1 UnitsSold: type: integer format: int32 description: UnitsSold of the product. example: 1 UnitsInStock: type: integer format: int32 description: The units in stock of the product example: 1 ReorderLevel: type: integer format: int32 description: ReorderLevel of the product. example: 1 MaxLevel: type: integer format: int32 description: MaxLevel of the product. example: 1 CreatedDateTimeUTC: type: string format: date-time description: CreatedDateTimeUTC of the product. example: '2026-05-28T14:30:00Z' ModifiedDateTimeUTC: type: string format: date-time description: ModifiedDateTimeUTC of the product. example: '2026-05-28T14:30:00Z' Visit: type: object description: Implementation of the 'Visit' model. Represents a specific visit to a class properties: AppointmentId: type: integer format: int32 description: The appointment’s ID. example: 123456 AppointmentGenderPreference: $ref: '#/components/schemas/AppointmentGenderPreferenceEnum' description: 'The gender of staff member with whom the client prefers to book appointments. Possible values are: * Female - Indicates that the client prefers to book appointments with female staff members. * Male - Indicates that the client prefers to book appointments with male staff members. * None - Indicates that the client does not have a staff member gender preference.' AppointmentStatus: $ref: '#/components/schemas/AppointmentStatusEnum' description: The status of the appointment. ClassId: type: integer format: int32 description: The class ID that was used to retrieve the visits. example: 123456 ClientId: type: string description: The ID of the client associated with the visit. example: example-value ClientPhotoUrl: type: string description: PhotoUrl for the client example: https://example.mindbodyonline.com/resource/abc123 ClientUniqueId: type: integer format: int32 description: The unique ID of the client associated with the visit. example: 123456 StartDateTime: type: string format: date-time description: The time this class is scheduled to start. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The date and time the visit ends. The Public API returns UTC dates and times. For example, a class that occurs on June 25th, 2018 at 2:15PM (EST) appears as “2018-06-25T19:15:00Z” because EST is five hours behind UTC. Date time pairs always return in the format YYYY-MM-DDTHH:mm:ssZ. example: '2026-05-28T14:30:00Z' Id: type: integer format: int32 description: The ID of the visit. example: 123456 LastModifiedDateTime: type: string format: date-time description: When included in the request, only records modified on or after the specified `LastModifiedDate` are included in the response. The Public API returns UTC dates and times. For example, a class that occurs on June 25th, 2018 at 2:15PM (EST) appears as “2018-06-25T19:15:00Z” because EST is five hours behind UTC. Date time pairs always return in the format YYYY-MM-DDTHH:mm:ssZ. example: '2026-05-28T14:30:00Z' LateCancelled: type: boolean description: When `true`, indicates that the class has been `LateCancelled`.
When `false`, indicates that the class has not been `LateCancelled`. example: true SiteId: type: integer format: int32 description: The ID of the business where the visit is booked. example: -99 LocationId: type: integer format: int32 description: The ID of the location where the visit took place or is to take place. example: 123456 MakeUp: type: boolean description: 'When `true`, the client can make up this session and a session is not deducted from the pricing option that was used to sign the client into the enrollment. When the client has the make-up session, a session is automatically removed from a pricing option that matches the service category of the enrollment and is within the same date range of the missed session.
When `false`, the client cannot make up this session. See [Enrollments: Make-ups](https://support.mindbodyonline.com/s/article/203' example: true Name: type: string description: The name of the class. example: Sunset Yoga Studio ServiceId: type: integer format: int32 description: The unique ID assigned to this pricing option when it was purchased by the client. example: 123456 ServiceName: type: string description: The name of the pricing option at the site where it was purchased. example: example-value Service: $ref: '#/components/schemas/ClientService' description: The details of the pricing option at the site where it was purchased. ProductId: type: integer format: int32 description: The ID of the pricing option at the site where it was purchased. example: 123456 SignedIn: type: boolean description: When `true`, indicates that the client has been signed in.
When `false`, indicates that the client has not been signed in. example: true StaffId: type: integer format: int32 description: The ID of the staff member who is teaching the class. example: 123456 WebSignup: type: boolean description: When `true`, indicates that the client signed up online.
When `false`, indicates that the client was signed up by a staff member. example: true Action: $ref: '#/components/schemas/Action1Enum' description: The action taken. Missed: type: boolean description: When `true`, indicates that the class has been `Missed`.
When `false`, indicates that the class has not been `Missed`. example: true VisitType: type: integer format: int32 description: Indicates the Id of visit type. example: 1 TypeGroup: type: integer format: int32 description: Indicates the Id of type group. example: 1 TypeTaken: type: string description: Indicates the service type taken. example: example-value SalesRep: type: object description: Implementation of the 'SalesRep' model. properties: FirstName: type: string description: The first name of the sales representative. example: Alex Id: type: integer format: int32 description: The staff ID of the sales representative. example: 123456 LastName: type: string description: The last name of the sales representative. example: Lane SalesRepNumber: type: integer format: int32 description: This value is the number that identifies the type of sales representative assigned to this client. One to six types of sales representatives can be assigned to a client at any given time, depending on site settings. example: 1 SalesRepNumbers: type: array items: type: integer format: int32 description: A list of the different types of sales representative functions assigned to this staff member. example: - 1 SalePayment: type: object description: Implementation of the 'SalePayment' model. properties: Id: type: integer format: int32 description: A unique identifier for this payment. example: 123456 Amount: type: number format: double description: The total amount of sales that were made on the sale date, including all payment methods that were used and taxes that were collected. example: 49.99 Method: type: integer format: int32 description: The method used to make this payment. example: 1 Type: type: string description: The payment method type used for the client’s purchase. example: example-value Notes: type: string description: Payment notes that are entered under the selected payment method in the Retail screen before completing the sale. example: Example note for Mindbody Public API. TransactionId: type: integer format: int32 description: The ID of transaction. Use this ID when calling the GET Transactions endpoint. example: 123456 PaginationResponse: type: object description: Implementation of the 'PaginationResponse' model. Contains information about the pagination to use. properties: RequestedLimit: type: integer format: int32 description: Limit from pagination request example: 10 RequestedOffset: type: integer format: int32 description: Offset from pagination request example: 10 PageSize: type: integer format: int32 description: Number of results returned in this response example: 1 TotalResults: type: integer format: int32 description: Total number of results in dataset example: 1 GenderPreferenceEnum: type: string description: GenderPreferenceEnum enumeration. enum: - None - Female - Male CheckoutAlternativePaymentInfo: type: object description: Implementation of the 'CheckoutAlternativePaymentInfo' model. Request object to capture Alternative Payment information. properties: PaymentMethodId: type: integer format: int32 description: 'The type of alternative payment. Possible values are: * 997 - Indicates that this payment item is iDEAL. * 801 - Indicates that this payment item is Apple Pay.' example: 123456 Amount: type: number format: double description: The amount to be paid example: 49.99 ClientType: type: object description: Implementation of the 'ClientType' model. Represents a client's type classification. properties: Id: type: integer format: int32 description: The unique identifier for the client type. example: 123456 Name: type: string description: The display name of the client type. example: Sunset Yoga Studio Location: type: object description: Implementation of the 'Location' model. properties: AdditionalImageURLs: type: array items: type: string description: A list of URLs of any images associated with this location. example: - example-value Address: type: string description: The first line of the location’s street address. example: 123 Market St Address2: type: string description: A second address line for the location’s street address, if needed. example: 123 Market St Amenities: type: array items: $ref: '#/components/schemas/Amenity' description: A list of strings representing amenities available at the location. example: - {} BusinessDescription: type: string description: The business description for the location, as configured by the business owner. example: Example note for Mindbody Public API. City: type: string description: The location’s city. example: San Francisco Description: type: string description: A description of the location. example: Example note for Mindbody Public API. HasClasses: type: boolean description: When `true`, indicates that classes are held at this location.
When `false`, Indicates that classes are not held at this location. example: true Id: type: integer format: int32 description: The ID assigned to this location. example: 123456 Latitude: type: number format: double description: The location’s latitude. example: 1.0 Longitude: type: number format: double description: The location’s longitude. example: 1.0 Name: type: string description: The name of this location. example: Sunset Yoga Studio Phone: type: string description: The location’s phone number. example: '+15551234567' PhoneExtension: type: string description: The location’s phone extension. example: example-value PostalCode: type: string description: The location’s postal code. example: '94110' SiteID: type: integer format: int32 description: The ID number assigned to this location. example: 1 StateProvCode: type: string description: The location’s state or province code. example: example-value Tax1: type: number format: double description: A decimal representation of the location’s first tax rate. Tax properties are provided to apply all taxes to the purchase price that the purchase is subject to. Use as many tax properties as needed to represent all the taxes that apply in the location. Enter a decimal number that represents the appropriate tax rate. For example, for an 8% sales tax, enter 0.08. example: 1.0 Tax2: type: number format: double description: A decimal representation of the location’s second tax rate. See the example in the description of Tax1. example: 1.0 Tax3: type: number format: double description: A decimal representation of the location’s third tax rate. See the example in the description of Tax1. example: 1.0 Tax4: type: number format: double description: A decimal representation of the location’s fourth tax rate. See the example in the description of Tax1. example: 1.0 Tax5: type: number format: double description: A decimal representation of the location’s fifth tax rate. See the example in the description of Tax1. example: 1.0 TotalNumberOfRatings: type: integer format: int32 description: The number of reviews that clients have left for this location. example: 1 AverageRating: type: number format: double description: The average rating for the location, out of five stars. example: 1.0 TotalNumberOfDeals: type: integer format: int32 description: The number of distinct introductory pricing options available for purchase at this location. example: 1 GetAlternativePaymentMethodsResponse: type: object description: Implementation of the 'GetAlternativePaymentMethodsResponse' model. Response for the GetAlternativePaymentMethods method. properties: PaymentMethods: type: array items: $ref: '#/components/schemas/AlternativePaymentMethod' description: Contains information about the alternative payment methods. example: - {} AutopaySchedule: type: object description: Implementation of the 'AutopaySchedule' model. properties: FrequencyType: type: string description: 'Defines how often clients are charged. Possible values are: * SetNumberOfAutopays * MonthToMonth' example: example-value FrequencyValue: type: integer format: int32 description: The interval of AutoPay frequency, combined with `FrequencyTimeUnit`. This value is null if `FrequencyType` is `MonthToMonth`. example: 1 FrequencyTimeUnit: type: string description: 'Defines the time unit that sets how often to run the AutoPay, combined with `FrequencyValue`. This value is null if `FrequencyType` is `MonthToMonth`. Possible values are: * Weekly * Monthly * Yearly' example: example-value PurchaseAccountCreditRequest: type: object description: Implementation of the 'PurchaseAccountCreditRequest' model. properties: ClientId: type: string description: The ID of the location where the account credit is being sold. example: example-value Test: type: boolean description: When `true`, allows you to test the request without affecting the database. When `false`, the request is carried out and the database is affected. example: true LocationId: type: integer format: int32 description: The ID of the location where the account credit is being sold. example: 123456 SendEmailReceipt: type: boolean description: When `true`, indicates that a purchase receipt email should be sent to the purchasing client, if all settings are correctly configured.
When `false`, no email is sent to the purchaser. example: true SalesRepId: type: integer format: int32 description: The ID of the staff member to be marked as the sales rep for this account credit sale. example: 123456 ConsumerPresent: type: boolean description: 'When `true`, indicates that the consumer is present or otherwise able to successfully negotiate an SCA challenge. It is not a good idea to have this always be false as that could very likely lead to a bank declining all transactions for the merchant. Defaults to false. Default: **false**' example: true PaymentAuthenticationCallbackUrl: type: string description: The URL consumer is redirected to if the bank requests SCA. This field is only needed if ConsumerPresent is true. example: https://example.mindbodyonline.com/resource/abc123 PaymentInfo: $ref: '#/components/schemas/CheckoutPaymentInfo' description: Contains information about the payment. Size: type: object description: Implementation of the 'Size' model. properties: Id: type: integer format: int32 description: The unique ID of the product size. example: 123456 Name: type: string description: The name of the size of product. example: Sunset Yoga Studio Program: type: object description: Implementation of the 'Program' model. properties: Id: type: integer format: int32 description: The service category’s ID. example: 123456 Name: type: string description: The name of this service category. example: Sunset Yoga Studio ScheduleType: $ref: '#/components/schemas/ScheduleTypeEnum' description: 'The service category’s schedule type. Possible values are: * All * Class * Enrollment * Appointment * Resource * Arrival' CancelOffset: type: integer format: int32 description: The offset to use for the service category. example: 10 ContentFormats: type: array items: type: string description: 'The content delivery platform(s) used by the service category. Possible values are: * InPerson * Livestream:Mindbody * Livestream:Other' example: - example-value PricingRelationships: $ref: '#/components/schemas/PricingRelationships' description: Pricing relationships UpdateSaleDateRequest: type: object description: Implementation of the 'UpdateSaleDateRequest' model. Update Sales Date Request Model properties: SaleID: type: integer format: int32 description: The Sale ID for which saleDate needs to be updated. This is the `Sale[].Id` returned from GET Sales. example: 1 SaleDate: type: string format: date-time description: The sale date which needs to be modified. example: '2026-05-28T14:30:00Z' ResourceSlim: type: object description: Implementation of the 'ResourceSlim' model. Contains information about resources, such as rooms. properties: Id: type: integer format: int32 description: The ID of the resource being used for this appointment. example: 123456 Name: type: string description: The name of the resource being used for this appointment. example: Sunset Yoga Studio CustomPaymentMethod: type: object description: Implementation of the 'CustomPaymentMethod' model. properties: Id: type: integer format: int32 description: The ID of the custom payment method. example: 123456 Name: type: string description: The name of the custom payment method. example: Sunset Yoga Studio ProspectStage: type: object description: Implementation of the 'ProspectStage' model. properties: Active: type: boolean description: When `true`, indicates that the client is a prospect at the business and has not yet purchased any of the business pricing options. When `false`, indicates that the client has already purchased at least one pricing option from the business. example: true Description: type: string description: A description of the prospect stage. example: Example note for Mindbody Public API. Id: type: integer format: int32 description: The ID of the prospect stage assigned to the client. example: 123456 PurchaseGiftCardResponse: type: object description: Implementation of the 'PurchaseGiftCardResponse' model. properties: BarcodeId: type: string description: The barcode ID assigned to the purchased gift card. example: example-value Value: type: number format: double description: The monetary value of the gift card. example: 1.0 AmountPaid: type: number format: double description: The amount paid for the gift card by the purchaser. example: 49.99 FromName: type: string description: The name of the purchaser. example: example-value LayoutId: type: integer format: int32 description: The ID of the layout used for this gift card. example: 123456 EmailReceipt: type: boolean description: Whether or not an email receipt was sent to the purchaser. If true, a receipt was sent. example: true PurchaserClientId: type: string description: The client ID of the purchaser. example: example-value PurchaserEmail: type: string description: The purchaser’s email address. example: kinlane@example.com RecipientEmail: type: string description: The recipient’s email address. example: kinlane@example.com SaleId: type: integer format: int32 description: The sale ID of the gift card. example: 123456 PaymentProcessingFailures: type: array items: $ref: '#/components/schemas/PaymentProcessingFailure' description: Any cart processing failures, for example when SCA challenged, the cart is in PaymentAuthenticationRequired state and at least one of the failures listed will provide an authentication Url. example: - {} CheckoutItem: type: object description: Implementation of the 'CheckoutItem' model. properties: Type: type: string description: 'The type of item. Possible values are: * Service - Indicates that this item is a pricing option. * Product - Indicates that this item is a retail product. * Package - Indicates that this item is a package. * Tip - Indicates that this item is a tip.' example: example-value Metadata: type: string description: Contains information about the item to be purchased. See [Cart Item Metadata](https://developers.mindbodyonline.com/PublicDocumentation /V6#cart-item-metadata) for more information. example: example-value GetGiftCardResponse: type: object description: Implementation of the 'GetGiftCardResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. GiftCards: type: array items: $ref: '#/components/schemas/GiftCard' description: Contains information about the gift cards. example: - {} ClientCreditCard: type: object description: Implementation of the 'ClientCreditCard' model. A client credit card. properties: Address: type: string description: The billing address for the credit card. example: 123 Market St CardHolder: type: string description: The name of the card holder. example: example-value CardNumber: type: string description: The credit card number. example: example-value CardType: type: string description: The type of credit card, for example Visa or MasterCard. example: example-value City: type: string description: The city in which the billing address is located. example: San Francisco ExpMonth: type: string description: The month in which the credit card expires. example: example-value ExpYear: type: string description: The year in which the credit card expires. example: example-value LastFour: type: string description: The last four digits of the credit card number. example: example-value PostalCode: type: string description: The postal code where the billing address is located. example: '94110' State: type: string description: The state that the billing address is located in. example: CA GetGiftCardBalanceResponse: type: object description: Implementation of the 'GetGiftCardBalanceResponse' model. properties: BarcodeId: type: string description: The gift card's barcode ID. example: example-value RemainingBalance: type: number format: double description: The gift card's remaining balance. example: 49.99 PaymentProcessingFailure: type: object description: Implementation of the 'PaymentProcessingFailure' model. Contains information about any payment processing failure. Specifically for when an SCA challenge is properties: Type: type: string description: Returned only if SCA challenge is indicated. example: example-value Message: type: string description: Returned only if SCA challenge is indicated. example: example-value AuthenticationRedirectUrl: type: string description: Returned only if SCA challenge is indicated. example: https://example.mindbodyonline.com/resource/abc123 ClientRelationship: type: object description: Implementation of the 'ClientRelationship' model. A relation between two clients. properties: RelatedClientId: type: string description: The RSSID of the related client. example: example-value RelatedUniqueId: type: integer format: int32 description: The UniqueId of the related client. example: 123456 Relationship: $ref: '#/components/schemas/Relationship' description: Contains details about the relationship between two clients. RelationshipName: type: string description: The name of the relationship of the related client. example: example-value Delete: type: boolean description: 'When true, the associated relationship is removed from the client’s list of relationships. This property is ignored in all other use cases. Default: *false*' example: true PurchaseGiftCardRequest: type: object description: Implementation of the 'PurchaseGiftCardRequest' model. properties: LocationId: type: integer format: int32 description: The ID of the location where the gift card is being sold. example: 123456 PurchaserClientId: type: string description: The RSSID of the client who is purchasing the gift card. example: example-value GiftCardId: type: integer format: int32 description: The product ID of the gift card being purchased. example: 123456 Test: type: boolean description: When `true`, allows you to test the request without affecting the database.
When `false`, the request is carried out and the database is affected. example: true LayoutId: type: integer format: int32 description: The ID of the layout used for the gift card’s image. example: 123456 SendEmailReceipt: type: boolean description: When `true`, indicates that a purchase receipt email should be sent to the purchasing client, if all settings are correctly configured.
When `false`, no email is sent to the purchaser. example: true RecipientEmail: type: string description: 'The email address to send the gift card image to. This parameter is required if the `LayoutId` is not 0.
Maximum length: **100**' example: kinlane@example.com RecipientName: type: string description: 'The name of the person who is to receive the gift card. This parameter is required if the `LayoutId` is not 0.
Maximum length: **20**' example: example-value Title: type: string description: 'The text to use as the title of the gift card, for example: Happy Birthday, Maria! This parameter is required if the `LayoutId` is not 0.
Maximum length: **20**' example: example-value GiftMessage: type: string description: 'A personal message to include in the gift card.
Maximum length: **300**' example: example-value DeliveryDate: type: string format: date-time description: 'The date that the gift card’s image is to be delivered to the recipient. This parameter cannot be set to a date in the past. This parameter is required if the `LayoutId` is not 0. Default: **today** Minimum: **today**' example: '2026-05-28T14:30:00Z' PaymentInfo: $ref: '#/components/schemas/CheckoutPaymentInfo' description: Contains information about the payment. SalesRepId: type: integer format: int32 description: The ID of the staff member who is to be marked as the sales rep for this gift card purchase. example: 123456 ConsumerPresent: type: boolean description: 'When `true`, indicates that the consumer is available to address any SCA challenge issued by the bank. EU Only.
Default: **false**' example: true PaymentAuthenticationCallbackUrl: type: string description: This is the Url the consumer will be redirected back to after completion of the Banks SCA challenge. example: https://example.mindbodyonline.com/resource/abc123 BarcodeId: type: string description: 'Sets the barcode ID of the giftcard. When not provided, a barcode ID is automatically generated.
If a giftcard with the given barcode ID already exists and the site supports reloadable giftcards, the existing giftcard is reloaded
Maximum length: **100**' example: example-value SenderName: type: string description: 'Overrides the name that would otherwise be populated by specifying PurchaserClientId.
Maximum length: **20**' example: example-value Unavailability: type: object description: Implementation of the 'Unavailability' model. properties: Id: type: integer format: int32 description: The ID of the unavailability. example: 123456 StartDateTime: type: string format: date-time description: The date and time the unavailability starts. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The date and time the unavailability ends. example: '2026-05-28T14:30:00Z' Description: type: string description: A description of the unavailability. example: Example note for Mindbody Public API. StoredCardInfo: type: object description: Implementation of the 'StoredCardInfo' model. properties: LastFour: type: string description: The model property of type str. example: example-value Service: type: object description: Implementation of the 'Service' model. properties: Price: type: number format: double description: The cost of the pricing option when sold at a physical location. example: 49.99 OnlinePrice: type: number format: double description: The cost of the pricing option when sold online. example: 49.99 TaxIncluded: type: number format: double description: The amount of tax included in the price, if inclusive pricing is enabled. example: 1.0 ProgramId: type: integer format: int32 description: The ID of the program that this pricing option applies to. example: 123456 TaxRate: type: number format: double description: The tax rate applied to the pricing option. This field is populated only when you include a `LocationID` in the request. example: 1.0 ProductId: type: integer format: int32 description: The unique ID of this pricing option. This is the `PurchasedItems[].Id` returned from GET Sales. example: 123456 Id: type: string description: The barcode ID of the pricing option. This is the `PurchasedItems[].BarcodeId` returned from GET Sales. example: example-value Name: type: string description: The name of the pricing option. example: Sunset Yoga Studio Count: type: integer format: int32 description: The initial count of usages available for the pricing option. example: 10 SellOnline: type: boolean description: 'When true, filters to the pricing options that can be sold online. Default: *false*' example: true SaleInContractOnly: type: boolean description: When `true`, indicates that the pricing option is allowed to be purchased in a contract or package. When `false`, indicates that the pricing option is not allowed to be purchased in a contract or package. example: true Type: type: string description: The type of the pricing option, either Drop-in, Series, or Unlimited. example: example-value ExpirationType: type: string description: The date the pricing option begins its activation, either the date of sale or the date the client first used it for a visit. example: example-value ExpirationUnit: type: string description: The unit, either days or months, of `ExpirationLength`, indicating how long the pricing option is active for. example: example-value ExpirationLength: type: integer format: int32 description: The number of days or months that the pricing option is active for. example: 1 RevenueCategory: type: string description: The revenue category of the pricing option. example: example-value MembershipId: type: integer format: int32 description: The ID that this pricing option grants membership to. example: 123456 SellAtLocationIds: type: array items: type: integer format: int32 description: The location IDs where this pricing option is sold. example: - 1 UseAtLocationIds: type: array items: type: integer format: int32 description: The location IDs where this pricing option may be used. example: - 1 Priority: type: string description: The priority of the pricing option, either High, Medium, or Low. example: example-value IsIntroOffer: type: boolean description: Indicates if this pricing option is an introductory offer. example: true IntroOfferType: type: string description: When `IsIntroOffer` is true, this indicates if this introductory offer may be purchased by new clients or new and existing clients. example: example-value IsThirdPartyDiscountPricing: type: boolean description: Indicates whether this pricing option is sold at discounted rates by third-party services, such as ClassPass. example: true Program: type: string description: The name of the service category the pricing option belongs to. example: example-value Discontinued: type: boolean description: If the pricing option has been marked discontinued. example: true RestrictToMembershipIds: type: array items: type: integer format: int32 description: Restricted to members of these membership ids. example: - 1 ApplyMemberDiscountsOfMembershipIds: type: array items: type: integer format: int32 description: Discounts applied of these membership ids. example: - 1 ReturnSaleRequest: type: object description: Implementation of the 'ReturnSaleRequest' model. ReturnSaleRequest properties: SaleId: type: integer format: int32 description: The Sale ID of the sale item to be returned. example: 123456 ReturnReason: type: string description: The reason for the return. example: example-value StaffSetting: type: object description: Implementation of the 'StaffSetting' model. contains the information about the staff settings. properties: UseStaffNicknames: type: boolean description: When `true`, `DisplayName` of the staff will be displayed. When `false`, `DisplayName` will be displayed as null. example: true ShowStaffLastNamesOnSchedules: type: boolean description: When `true`, indicates that the Name contains both the `FirstName` and `LastName` of the staff. When `false`, indicates that the Name contains only the `FirstName` of the staff. example: true SessionType: type: object description: Implementation of the 'SessionType' model. SessionType contains information about the session types in a business. properties: Type: $ref: '#/components/schemas/TypeEnum' description: 'Contains the class description session type. Possible values are: * All * Class * Enrollment * Appointment * Resource * Media * Arrival' DefaultTimeLength: type: integer format: int32 description: The default amount of time that a session of this type typically lasts. example: 1 StaffTimeLength: type: integer format: int32 description: The amount of time that a session of this type will last for a specific Staff (when applicable.) example: 1 Id: type: integer format: int32 description: This session type’s unique ID. example: 123456 Name: type: string description: The name of this session type. example: Sunset Yoga Studio OnlineDescription: type: string description: The online description associated with the appointment. example: Example note for Mindbody Public API. NumDeducted: type: integer format: int32 description: The number of sessions that this session type deducts from the pricing option used to pay for this type of session. example: 1 ProgramId: type: integer format: int32 description: This session type’s service category ID. example: 123456 Category: type: string description: This session type’s category. example: example-value CategoryId: type: integer format: int32 description: This session type’s category ID. example: 123456 Subcategory: type: string description: This session type’s subcategory. example: example-value SubcategoryId: type: integer format: int32 description: This session type’s subcategory ID. example: 123456 AvailableForAddOn: type: boolean description: This session type’s Add On Flag. example: true UpdateSaleDateResponse: type: object description: Implementation of the 'UpdateSaleDateResponse' model. Update Sale Date Response Properties properties: Sale: $ref: '#/components/schemas/Sale' description: The updated Sale corresponding to the modified date Level: type: object description: Implementation of the 'Level' model. A session level. properties: Id: type: integer format: int32 description: Contains the Id given to this level. example: 123456 Name: type: string description: Contains the name given to this level. example: Sunset Yoga Studio Description: type: string description: Contains a description of this level. example: Example note for Mindbody Public API. Contract: type: object description: Implementation of the 'Contract' model. properties: Id: type: integer format: int32 description: The contract’s ID at the subscriber’s business. example: 123456 Name: type: string description: The name of the contract. example: Sunset Yoga Studio Description: type: string description: A description of the contract. example: Example note for Mindbody Public API. AssignsMembershipId: type: integer format: int32 description: The ID of the membership that was assigned to the client when the client signed up for a contract. example: 123456 AssignsMembershipName: type: string description: The name of the membership that was assigned to the client when the client signed up for this contract. example: example-value SoldOnline: type: boolean description: When `true`, indicates that this membership is intended to be shown to clients in client experiences.
When `false`, this contract should only be shown to staff members. example: true ContractItems: type: array items: $ref: '#/components/schemas/ContractItem' description: Contains information about the items in the contract. example: - {} IntroOffer: type: string description: 'Defines whether this contract is treated as an introductory offer. If this is an introductory offer, then clients are always charged a set number of times rather than month to month, using their AutoPays. Possible values are: * None * NewConsumer * NewAndReturningConsumer' example: example-value AutopaySchedule: $ref: '#/components/schemas/AutopaySchedule' description: Contains information about the AutoPay schedule. This parameter is null if `AutopayTriggerType` has a value of `PricingOptionRunsOutOrExpires`. NumberOfAutopays: type: integer format: int32 description: The number of times that the AutoPay is to be run. This value is null if `FrequencyType` is `MonthToMonth`. example: 1 AutopayTriggerType: type: string description: 'Defines whether the AutoPay, if applicable to this contract, runs on a set schedule or when the pricing option runs out or expires. Possible values are: * OnSetSchedule * PricingOptionRunsOutOrExpires' example: example-value ActionUponCompletionOfAutopays: type: string description: 'The renewal action to be taken when this AutoPay is completed. Possible values are: * ContractExpires * ContractAutomaticallyRenews' example: example-value ClientsChargedOn: type: string description: 'The value that indicates when clients are charged. Possible values are: * OnSaleDate * FirstOfTheMonth * FifteenthOfTheMonth * LastDayOfTheMonth * FirstOrFifteenthOfTheMonth * FirstOrSixteenthOfTheMonth * FifteenthOrEndOfTheMonth * SpecificDate' example: example-value ClientsChargedOnSpecificDate: type: string format: date-time description: If `ClientsChargedOn` is defined as a specific date, this property holds the value of that date. Otherwise, this property is null. example: '2026-05-28T14:30:00Z' DiscountAmount: type: number format: double description: The calculated discount applied to the items in this contract. example: 49.99 DepositAmount: type: number format: double description: The amount of the deposit required for this contract. example: 49.99 FirstAutopayFree: type: boolean description: When `true`, indicates that the first payment for the AutoPay is free. example: true LastAutopayFree: type: boolean description: When `true`, indicates that the last payment for the AutoPay is free. example: true ClientTerminateOnline: type: boolean description: When `true`, indicates that the client can terminate this contract on the Internet. example: true MembershipTypeRestrictions: type: array items: $ref: '#/components/schemas/MembershipTypeRestriction' description: Contains information about the memberships that can purchase this contract. If null, then no membership restrictions exist, and anyone can purchase the contract. example: - {} LocationPurchaseRestrictionIds: type: array items: type: integer format: int32 description: The IDs of the locations where this contract may be sold. If there are no restrictions, this value is null. example: - 1 LocationPurchaseRestrictionNames: type: array items: type: string description: Location names where the contract may be purchased. If this value is null, there are no restrictions. example: - example-value AgreementTerms: type: string description: Business-defined terms and conditions for the contract. example: example-value RequiresElectronicConfirmation: type: boolean description: When `true`, clients who purchase the contract are prompted to agree to the terms of the contract the next time that they log in. example: true AutopayEnabled: type: boolean description: When `true`, this contract establishes an AutoPay on the client’s account. example: true FirstPaymentAmountSubtotal: type: number format: double description: The subtotal of the amount that the client is to be charged when signing up for the contract. example: 49.99 FirstPaymentAmountTax: type: number format: double description: The amount of tax that the client is to be charged when signing up for the contract. example: 49.99 FirstPaymentAmountTotal: type: number format: double description: The total amount that the client is to be charged when signing up for the contract. example: 49.99 RecurringPaymentAmountSubtotal: type: number format: double description: The subtotal amount that the client is to be charged on an ongoing basis. example: 49.99 RecurringPaymentAmountTax: type: number format: double description: The amount of tax the client is to be charged on an ongoing basis. example: 49.99 RecurringPaymentAmountTotal: type: number format: double description: The total amount that the client is to be charged on an ongoing basis. example: 49.99 TotalContractAmountSubtotal: type: number format: double description: The subtotal amount that the client is to be charged over the lifespan of the contract. example: 49.99 TotalContractAmountTax: type: number format: double description: The total amount of tax the client is to be charged over the lifespan of the contract. example: 49.99 TotalContractAmountTotal: type: number format: double description: The total amount the client is to be charged over the lifespan of the contract. example: 49.99 PromoPaymentAmountSubtotal: type: number format: double description: Subtotal promotional period example: 49.99 PromoPaymentAmountTax: type: number format: double description: Taxes of promotional period example: 49.99 PromoPaymentAmountTotal: type: number format: double description: Total of promotional period example: 49.99 NumberOfPromoAutopays: type: integer format: int32 description: Number of times that the AutoPay runs under the promotional period example: 1 CheckoutShoppingCartRequest: type: object description: Implementation of the 'CheckoutShoppingCartRequest' model. properties: Items: type: array items: $ref: '#/components/schemas/CheckoutItemWrapper' description: A list of the items in the cart. example: - {} Payments: type: array items: $ref: '#/components/schemas/CheckoutPaymentInfo' description: A list of payment information objects to be applied to payment against the items in the cart. example: - {} CartId: type: string description: The unique ID of the shopping cart to be processed. You can use this value to maintain a persistent cart. If you do not specify a cart ID, the MINDBODY software generates one. example: example-value ClientId: type: string description: The RSSID of the client making the purchase. A 'ClientId' OR 'UniqueClientId' must be specified to complete a sale. example: example-value UniqueClientId: type: integer format: int32 description: 'The UniqueId of the client making the purchase. A ''ClientId'' OR ''UniqueClientId'' must be specified to complete a sale. Note: you need to provide the ''UniqueClientId'' OR the ''ClientId''. If both are provided, the ''UniqueClientId'' takes precedence.' example: 123456 PayerClientId: type: string description: The RSSID of the client paying for the purchase. This client needs to have a relationship of type "Pays for" with the client specified in the 'ClientId' or 'UniqueClientId' fields. example: example-value UniquePayerClientId: type: integer format: int32 description: 'The UniqueId of the client paying for the purchase. This client needs to have a relationship of type "Pays for" with the client specified in the ''ClientId'' or ''UniqueClientId'' field. Note: you need to provide the ''UniquePayerClientId'' OR the ''PayerClientId''. If both are provided, the ''UniquePayerClientId'' takes precedence.' example: 123456 Test: type: boolean description: 'When `true`, indicates that the contents of the cart are validated, but the transaction does not take place. You should use this parameter during testing and when checking the calculated totals of the items in the cart.
When `false`, the transaction takes place and the database is affected.
Default: **false**' example: true InStore: type: boolean description: 'When `true`, indicates that the cart is to be completed by a staff member and is to take place at one of the business’ physical locations.
When `false`, indicates that the cart is to be completed by a client from the business’ online store.
Default: **false**' example: true CalculateTax: type: boolean description: 'When `true`, indicates that the tax should be calculated. When `false`, indicates that the tax should not be calculated. Default: **true**' example: true PromotionCode: type: string description: Promotion code to be applied to the cart. example: example-value SendEmail: type: boolean description: 'When `true`, sends a purchase receipt email to the client. Note that all appropriate permissions and settings must be enabled for the client to receive an email.
Default: **false**' example: true LocationId: type: integer format: int32 description: 'The location ID to be used for pulling business mode prices and taxes. If no location ID is supplied, it defaults to the online store, represented by a null value. Default: **null** (the online store)' example: 123456 Image: type: string description: The byte array data of the signature image. example: example-value ImageFileName: type: string description: The name of the signature image being uploaded. example: example-value ConsumerPresent: type: boolean description: When `true`, indicates that the consumer is present or otherwise able to successfully negotiate an SCA challenge. It is not a good idea to have this always be `false` as that could very likely lead to a bank declining all transactions for the merchant. Defaults to `false`. example: true PaymentAuthenticationCallbackUrl: type: string description: The URL consumer is redirected to if the bank requests SCA. This field is only needed if ConsumerPresent is `true` example: https://example.mindbodyonline.com/resource/abc123 TransactionIds: type: array items: type: integer format: int32 description: The list of TransactionIds provided with initial response containing SCA Challenge URLs for ConsumerPresent transactions example: - 1 IsBillingPostalCodeRequired: type: boolean description: the flag to check billing post code is required or not. example: true EnforceLocationRestrictions: type: boolean description: 'When `true`, enforces "sell at" location restrictions on the cart items. When `false`, "sell at" location restrictions are not enforced. Default: **false**' example: true GetContractsResponse: type: object description: Implementation of the 'GetContractsResponse' model. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. Contracts: type: array items: $ref: '#/components/schemas/Contract' description: Contains information about each contract. example: - {} CheckoutAppointmentBookingRequest: type: object description: Implementation of the 'CheckoutAppointmentBookingRequest' model. properties: StaffId: type: integer format: int32 description: The ID of the staff member who is to provide the service being booked. example: 123456 LocationId: type: integer format: int32 description: The ID of the location where the appointment is to take place. example: 123456 SessionTypeId: type: integer format: int32 description: The ID of the session type of this appointment. example: 123456 Resources: type: array items: $ref: '#/components/schemas/ResourceSlim' description: Contains information about the resources to be used for the appointment. example: - {} StartDateTime: type: string format: date-time description: The date and time that the appointment is to start in the business’ timezone. This value must be passed in the format yyyy-mm-ddThh:mm:ss. example: '2026-05-28T14:30:00Z' EndDateTime: type: string format: date-time description: The date and time that the appointment is to end in the business’ timezone. This value must be passed in the format yyyy-mm-ddThh:mm:ss. example: '2026-05-28T14:30:00Z' ProviderId: type: string description: The National Provider Identifier (NPI) of the staff member who is to provide the service. For an explanation of Provider IDs, see [Provider IDs](https://support.mindbodyonline.com/s/article/204075743-Provide r-IDs?language=en_US). example: example-value UpdateServiceResponse: type: object description: Implementation of the 'UpdateServiceResponse' model. A response from the Update Services API method. properties: Services: type: array items: $ref: '#/components/schemas/Service' description: List of services as response example: - {} MembershipTypeRestriction: type: object description: Implementation of the 'MembershipTypeRestriction' model. properties: Id: type: integer format: int32 description: The ID of the membership that is allowed to purchase the contract. example: 123456 Name: type: string description: The name of the membership type. example: Sunset Yoga Studio Product: type: object description: Implementation of the 'Product' model. Represents a product. properties: ProductId: type: integer format: int32 description: The unique ID associated with product. example: 123456 Id: type: string description: The barcode number of the product. This is the `PurchasedItems[].BarcodeId` returned from GET Sales. example: example-value CategoryId: type: integer format: int32 description: The revenue category ID of the product. Use this ID when calling the GET Categories endpoint. example: 123456 SubCategoryId: type: integer format: int32 description: The SubCategory ID of the product. Use this ID when calling the GET Categories endpoint. example: 123456 SecondaryCategoryId: type: integer format: int32 description: The SecondaryCategory ID of the product. Use this ID when calling the GET Categories endpoint. example: 123456 Price: type: number format: double description: The price of the product. example: 49.99 TaxIncluded: type: number format: double description: If tax inclusive-pricing is enabled, this field shows how much tax was added to the price. To fetch this value `LocationId` must be passed as a query parameter. example: 1.0 TaxRate: type: number format: double description: The tax rate that was applied to this purchase. To fetch this value `LocationId` must be passed as a query parameter. example: 1.0 GroupId: type: integer format: int32 description: The unique ID of the product group. example: 123456 Name: type: string description: The name of the product. example: Sunset Yoga Studio OnlinePrice: type: number format: double description: The online price of the product. example: 49.99 ShortDescription: type: string description: A short text description of the product. example: Example note for Mindbody Public API. LongDescription: type: string description: A long, more detailed text description of the product. example: Example note for Mindbody Public API. TypeGroup: type: integer format: int32 description: The Type group of the product. example: 1 SupplierId: type: integer format: int32 description: The unique ID of the supplier of product. example: 123456 SupplierName: type: string description: The Supplier Name of the product. example: example-value ImageURL: type: string description: The URL of the image associated with this product. example: example-value Color: $ref: '#/components/schemas/Color' description: Contains information about color of the product. Size: $ref: '#/components/schemas/Size' description: Contains information about the size of the product. ManufacturerId: type: string description: The ID number attributed to the product by the manufacturer. example: example-value PurchaseAccountCreditResponse: type: object description: Implementation of the 'PurchaseAccountCreditResponse' model. properties: AmountPaid: type: number format: double description: The amount paid for the gift card by the purchaser. example: 49.99 ClientId: type: string description: The client ID of the purchaser. example: example-value SaleId: type: integer format: int32 description: The sale ID of the gift card. example: 123456 EmailReceipt: type: boolean description: Whether or not an email receipt was sent to the purchaser. If true, a receipt was sent. example: true PaymentProcessingFailures: type: array items: $ref: '#/components/schemas/PaymentProcessingFailure' description: Any cart processing failures, for example when SCA challenged, the cart is in PaymentAuthenticationRequired state and at least one of the failures listed will provide an authentication Url. example: - {} FrequencyTypeEnum: type: string description: FrequencyTypeEnum enumeration. enum: - Daily - Weekly - Monthly GetTransactionsResponse: type: object description: Implementation of the 'GetTransactionsResponse' model. Get transactions response properties properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. Transactions: type: array items: $ref: '#/components/schemas/Transaction' description: Contains the transaction objects, each of which describes the transaction details for a purchase event. example: - {} Package: type: object description: Implementation of the 'Package' model. properties: Id: type: integer format: int32 description: The ID of the package. example: 123456 Name: type: string description: The name of the package. example: Sunset Yoga Studio DiscountPercentage: type: number format: double description: The discount percentage applied to the package. example: 1.0 SellOnline: type: boolean description: When `true`, only products that can be sold online are returned.
When `false`, all products are returned. example: true Services: type: array items: $ref: '#/components/schemas/Service' description: Information about the services in the packages. example: - {} Products: type: array items: $ref: '#/components/schemas/Product' description: Information about the products in the packages. example: - {} TransactionResponse: type: object description: Implementation of the 'TransactionResponse' model. properties: TransactionId: type: integer format: int32 description: The Transaction ID. example: 123456 AuthenticationUrl: type: string description: The optional valid URL provided by the bank. example: https://example.mindbodyonline.com/resource/abc123 Action1Enum: type: string description: Action1Enum enumeration. enum: - None - Added - Updated - Failed - Removed CartItem: type: object description: Implementation of the 'CartItem' model. properties: Item: $ref: '#/components/schemas/Any' description: A purchased item; either a pricing option or a retail product. SalesNotes: type: string description: Sales Notes for the Product Purcahsed example: Example note for Mindbody Public API. DiscountAmount: type: number format: double description: The amount of the discount applied to the item. example: 49.99 VisitIds: type: array items: type: integer format: int32 description: The IDs of the booked classes, enrollments, or courses that were reconciled by this cart item. This list is only returned if a valid visit ID was passed in the request’s `VisitIds` list. example: - 1 AppointmentIds: type: array items: type: integer format: int32 description: Gets or sets the item. example: - 1 Appointments: type: array items: $ref: '#/components/schemas/Appointment' description: The IDs of the appointments that were reconciled by this cart item. This list is only returned if a valid appointment ID was passed in the request’s `AppointmentIds` list. example: - {} Id: type: integer format: int32 description: The item’s ID in the current cart. example: 123456 Quantity: type: integer format: int32 description: The quantity of the item being purchased. example: 10 UpdateProductPriceRequest: type: object description: Implementation of the 'UpdateProductPriceRequest' model. Update Product Price Request Model properties: BarcodeId: type: string description: The barcode number of the product. This is the `Products[].Id` returned from GET Products. example: example-value Price: type: number format: double description: The price you sell the product for. example: 49.99 OnlinePrice: type: number format: double description: The online price of the product. example: 49.99 TypeEnum: type: string description: TypeEnum enumeration. enum: - All - Class - Enrollment - Appointment - Resource - Media - Arrival InitiateCheckoutShoppingCartUsingAlternativePaymentsRequest: type: object description: Implementation of the 'InitiateCheckoutShoppingCartUsingAlternativePaymentsRequest' model. The API Request model for Initiate Checkout Shopping Cart API. properties: ClientId: type: string description: The RSSID of the client making the purchase. A cart can be validated without a client ID, but a client ID must be specified to complete a sale. example: example-value Items: type: array items: $ref: '#/components/schemas/CheckoutItemWrapper' description: A list of the items in the cart. example: - {} Payments: type: array items: $ref: '#/components/schemas/CheckoutAlternativePaymentInfo' description: A list of payment information objects to be applied to payment against the items in the cart. example: - {} PaymentAuthenticationCallbackUrl: type: string description: The URL consumer is redirected to after the payment. example: https://example.mindbodyonline.com/resource/abc123 CartId: type: string description: The unique ID of the shopping cart to be processed. You can use this value to maintain a persistent cart. If you do not specify a cart ID, the MINDBODY software generates one. example: example-value PayerClientId: type: string description: The RSSID of the client paying for the purchase. This client needs to have a relationship of type "Pays for" with the client specified in the "ClientId" field. example: example-value Test: type: boolean description: 'When `true`, indicates that the contents of the cart are validated, but the transaction does not take place. You should use this parameter during testing and when checking the calculated totals of the items in the cart.
When `false`, the transaction takes place and the database is affected.
Default: **false**' example: true InStore: type: boolean description: 'When `true`, indicates that the cart is to be completed by a staff member and is to take place at one of the business’ physical locations.
When `false`, indicates that the cart is to be completed by a client from the business’ online store.
Default: **false**' example: true CalculateTax: type: boolean description: 'When `true`, indicates that the tax should be calculated. When `false`, indicates that the tax should not be calculated. Default: **true**' example: true PromotionCode: type: string description: Promotion code to be applied to the cart. example: example-value SendEmail: type: boolean description: 'When `true`, sends a purchase receipt email to the client. Note that all appropriate permissions and settings must be enabled for the client to receive an email.
Default: **false**' example: true LocationId: type: integer format: int32 description: 'The location ID to be used for pulling business mode prices and taxes. If no location ID is supplied, it defaults to the online store, represented by a null value. Default: **null** (the online store)' example: 123456 TransactionIds: type: array items: type: integer format: int32 description: The list of TransactionIds provided with initial response containing SCA Challenge URLs for ConsumerPresent transactions example: - 1 IsBillingPostalCodeRequired: type: boolean description: the flag to check billing post code is required or not. example: true EnforceLocationRestrictions: type: boolean description: 'When `true`, enforces "sell at" location restrictions on the cart items. When `false`, "sell at" location restrictions are not enforced. Default: **false**' example: true CheckoutShoppingCartResponse: type: object description: Implementation of the 'CheckoutShoppingCartResponse' model. The API Response model for Checkout Shopping Cart APIs properties: ShoppingCart: $ref: '#/components/schemas/ShoppingCart' description: Contains information about the shopping cart. Classes: type: array items: $ref: '#/components/schemas/Class' description: Contains information about the classes. example: - {} Appointments: type: array items: $ref: '#/components/schemas/Appointment' description: Contains information about the appointments. example: - {} Enrollments: type: array items: $ref: '#/components/schemas/ClassSchedule' description: Contains information about enrollment class schedules. example: - {} GetProductsResponse: type: object description: Implementation of the 'GetProductsResponse' model. Represents the response object for retrieving products. properties: PaginationResponse: $ref: '#/components/schemas/PaginationResponse' description: Contains information about the pagination used. Products: type: array items: $ref: '#/components/schemas/Product' description: Contains information about the products. example: - {} BookingStatusEnum: type: string description: BookingStatusEnum enumeration. enum: - PaymentRequired - BookAndPayLater - Free PurchaseContractRequest: type: object description: Implementation of the 'PurchaseContractRequest' model. properties: ContractId: type: integer format: int32 description: The ID of the contract being purchased. example: 123456 Test: type: boolean description: 'When `true`, the Public API validates input information, but does not commit it, so no client data is affected.
When `false` or omitted, the transaction is committed, and client data is affected.
Default: **false**' example: true LocationId: type: integer format: int32 description: The ID of the location where the client is purchasing the contract; used for AutoPays. example: 123456 ClientId: type: string description: The ID of the client. Note that this is not the same as the client’s unique ID. example: example-value UniqueClientId: type: integer format: int32 description: 'The unique ID of the client. Note: you need to provide the ''UniqueClientId'' OR the ''ClientId''. If both are provided, the ''UniqueClientId'' takes precedence.' example: 123456 StartDate: type: string format: date-time description: 'The date that the contract starts.
Default: **today’s date**' example: '2026-05-28T14:30:00Z' FirstPaymentOccurs: type: string description: 'The date on which the first payment is to occur. Possible values: * Instant * `StartDate`' example: example-value ClientSignature: type: string description: A representation of the client’s signature. This value can take the form of Base64-encoded byte array. The file type should be PNG. The picture of the client’s signature is uploaded and viewable from the Client Documents page in the Core Business Mode software. The title of the document is:
clientContractSignature-{uniquePurchasedClientContractID}-{contract Name}-{contractStartDate}.{fileType} example: example-value PromotionCode: type: string description: A promotion code, if one applies. Promotion codes are applied to items that are both marked as pay now in a contract and are discounted by the promotion code. If a pay now item is an autopay item, its autopay price is the price at the time of checkout, so, if a promotion code was applied, all autopays are scheduled using that discounted price. example: example-value PromotionCodes: type: array items: type: string description: Promotion codes, if they apply. Promotion codes are applied to items that are both marked as pay now in a contract and are discounted by the promotion code. If a pay now item is an autopay item, its autopay price is the price at the time of checkout, so, if a promotion code was applied, all autopays are scheduled using that discounted price. example: - example-value CreditCardInfo: $ref: '#/components/schemas/CreditCardInfo' description: Contains credit card payment information.
This is only required if `StoredCardInfo` is not passed and both `UseDirectDebit` and `UseAccountCredit` are `false`. StoredCardInfo: $ref: '#/components/schemas/StoredCardInfo' description: Contains information about the stored credit card payment.
This is only required if `CreditCardInfo` is not passed and both `UseDirectDebit` and `UseAccountCredit` and are `false`. SendNotifications: type: boolean description: 'When `true`, indicates that email and SMS notifications should be sent to the client after purchase.
Default: **true**' example: true SalesRepId: type: integer format: int32 description: The ID of the staff member to be marked as the sales rep for this contract sale. example: 123456 UseDirectDebit: type: boolean description: 'When `true`, indicates that the direct debit information stored on the client''s account is to be used to pay for the contract.
This is only required if both `CreditCardInfo` and `StoredCardInfo` are not passed and `UseAccountCredit` is false.
Default: **false**' example: true UseAccountCredit: type: boolean description: 'When `true`, indicates that the account credit of the client''s account is to be used to pay for the contract.
This is only required if both `CreditCardInfo` and `StoredCardInfo` are not passed and `UseDirectDebit` is false.
Default: **false**' example: true ConsumerPresent: type: boolean description: When `true`, indicates that the consumer is present or otherwise able to successfully negotiate an SCA challenge. It is not a good idea to have this always be false as that could very likely lead to a bank declining all transactions for the merchant. Defaults to **false**. example: true PaymentAuthenticationCallbackUrl: type: string description: The URL consumer is redirected to if the bank requests SCA. This field is only needed if ConsumerPresent is true. example: https://example.mindbodyonline.com/resource/abc123 ProrateDate: type: string format: date-time description: Optional, date to prorate contract example: '2026-05-28T14:30:00Z' AppointmentGenderPreference1Enum: type: string description: AppointmentGenderPreference1Enum enumeration. enum: - None - Female - Male 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.