Mindbody · Arazzo Workflow

Mindbody Book Appointment

Version 1.0.0

Find bookable appointment availabilities and book an appointment into an open slot.

1 workflow 1 source API 1 provider
View Spec View on GitHub FitnessWellnessBeautySchedulingBookingPoint-of-SaleStudiosSalonsSpasWebhookArazzoWorkflows

Provider

mindbody

Workflows

book-appointment
Check availability for a session type and book an appointment when a slot is open.
Looks up bookable availabilities, and if one or more open slots are returned, books an appointment for the client with the chosen staff member and session type.
2 steps inputs: apiKey, authorization, clientId, endDate, locationId, sessionTypeId, siteId, staffId, startDateTime outputs: appointmentId, availabilities
1
findAvailabilities
Retrieve the bookable availabilities for the requested session type and date range.
2
createAppointment
Book the appointment for the client into the open slot using the chosen location, staff member, and session type.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Mindbody Book Appointment
  summary: Find bookable appointment availabilities and book an appointment into an open slot.
  description: >-
    A core scheduling flow for appointment-based wellness services. The
    workflow queries the bookable availabilities for a session type and date
    range, branches on whether any open slots were returned, and only when an
    availability exists does it create the appointment for the client. Every
    step inlines the Mindbody API-Key, SiteId, and staff authorization headers
    along with its request body so the flow can be read and executed without
    opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: appointmentApi
  url: ../openapi/mindbody-appointment-api-openapi.yml
  type: openapi
workflows:
- workflowId: book-appointment
  summary: Check availability for a session type and book an appointment when a slot is open.
  description: >-
    Looks up bookable availabilities, and if one or more open slots are
    returned, books an appointment for the client with the chosen staff member
    and session type.
  inputs:
    type: object
    required:
    - apiKey
    - siteId
    - authorization
    - sessionTypeId
    - clientId
    - locationId
    - staffId
    - startDateTime
    properties:
      apiKey:
        type: string
        description: The Mindbody-issued API key sent in the API-Key header.
      siteId:
        type: string
        description: The ID of the site from which to pull data and write records.
      authorization:
        type: string
        description: A staff user authorization (OAuth bearer) token.
      sessionTypeId:
        type: integer
        description: The session type to search availabilities for.
      clientId:
        type: string
        description: The RSSID of the client the appointment is being made for.
      locationId:
        type: integer
        description: The ID of the location where the appointment takes place.
      staffId:
        type: integer
        description: The ID of the staff member providing the appointment.
      startDateTime:
        type: string
        description: The start date and time of the appointment / availability search.
      endDate:
        type: string
        description: The end date for the availability search.
  steps:
  - stepId: findAvailabilities
    description: >-
      Retrieve the bookable availabilities for the requested session type and
      date range.
    operationId: getBookableItems
    parameters:
    - name: version
      in: path
      value: '6'
    - name: API-Key
      in: header
      value: $inputs.apiKey
    - name: siteId
      in: header
      value: $inputs.siteId
    - name: authorization
      in: header
      value: $inputs.authorization
    - name: request.sessionTypeIds
      in: query
      value: $inputs.sessionTypeId
    - name: request.startDate
      in: query
      value: $inputs.startDateTime
    - name: request.endDate
      in: query
      value: $inputs.endDate
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      availabilities: $response.body#/Availabilities
    onSuccess:
    - name: hasAvailability
      type: goto
      stepId: createAppointment
      criteria:
      - context: $response.body
        condition: $.Availabilities.length > 0
        type: jsonpath
    - name: noAvailability
      type: end
      criteria:
      - context: $response.body
        condition: $.Availabilities.length == 0
        type: jsonpath
  - stepId: createAppointment
    description: >-
      Book the appointment for the client into the open slot using the chosen
      location, staff member, and session type.
    operationId: addAppointment
    parameters:
    - name: version
      in: path
      value: '6'
    - name: API-Key
      in: header
      value: $inputs.apiKey
    - name: siteId
      in: header
      value: $inputs.siteId
    - name: authorization
      in: header
      value: $inputs.authorization
    requestBody:
      contentType: application/json
      payload:
        ClientId: $inputs.clientId
        LocationId: $inputs.locationId
        SessionTypeId: $inputs.sessionTypeId
        StaffId: $inputs.staffId
        StartDateTime: $inputs.startDateTime
        ApplyPayment: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      appointmentId: $response.body#/Appointment/Id
      appointmentStatus: $response.body#/Appointment/Status
  outputs:
    availabilities: $steps.findAvailabilities.outputs.availabilities
    appointmentId: $steps.createAppointment.outputs.appointmentId

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/mindbody-book-appointment-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.