naftiko: 1.0.0-alpha2
info:
label: "Mindbody Public API v6 \u2014 Payroll"
description: "Payroll \u2014 4 operations. Lead operation: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if. Self-contained Naftiko capability covering one Mindbody business\
\ surface."
tags:
- Mindbody
- Mindbody Public API v6
- Payroll
created: '2026-05-28'
modified: '2026-05-28'
binds:
- namespace: env
keys:
MINDBODY_API_KEY: MINDBODY_API_KEY
capability:
consumes:
- type: http
namespace: public-api-v6-payroll
baseUri: https://api.mindbodyonline.com
description: "Mindbody Public API v6 \u2014 Payroll business capability. Self-contained, no shared references."
authentication:
type: apikey
key: API-Key
value: '{{env.MINDBODY_API_KEY}}'
placement: header
resources:
- name: payroll-commissions
path: /payroll/commissions
operations:
- name: getCommissions
method: GET
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
inputParameters:
- name: version
in: path
type: string
required: true
description: version of the api.
- name: siteId
in: header
type: string
required: true
description: ID of the site from which to pull data.
- name: authorization
in: header
type: string
required: false
description: A staff user authorization token.
- name: request.endDateTime
in: query
type: string
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today\u2019s date** * If you do not supply an `EndDateTime`,\
\ the data returns for the period from the `StartDateTime` that you supply to today\u2019s date. * If you do not supply a"
- name: request.limit
in: query
type: integer
required: false
description: Number of results to include, defaults to 100
- name: request.locationId
in: query
type: integer
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
- name: request.offset
in: query
type: integer
required: false
description: Page offset, defaults to 0.
- name: request.staffId
in: query
type: integer
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
- name: request.startDateTime
in: query
type: string
required: false
description: The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateT
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: payroll-scheduledserviceearnings
path: /payroll/scheduledserviceearnings
operations:
- name: getScheduledServiceEarnings
method: GET
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
inputParameters:
- name: version
in: path
type: string
required: true
description: version of the api.
- name: siteId
in: header
type: string
required: true
description: ID of the site from which to pull data.
- name: authorization
in: header
type: string
required: false
description: A staff user authorization token.
- name: request.endDateTime
in: query
type: string
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today\u2019s date** * If you do not supply an `EndDateTime`,\
\ the data returns for the period from the `StartDateTime` that you supply to today\u2019s date. * If you do not supply a"
- name: request.limit
in: query
type: integer
required: false
description: Number of results to include, defaults to 100
- name: request.locationId
in: query
type: integer
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
- name: request.offset
in: query
type: integer
required: false
description: Page offset, defaults to 0.
- name: request.scheduledServiceId
in: query
type: integer
required: false
description: Filters the results to a single scheduled service. This parameter must be used with a single ScheduledServiceType.
- name: request.scheduledServiceType
in: query
type: string
required: false
description: 'Filters the results to schedule service earnings for specific types of services. Possible values: * Class * Appointment'
- name: request.staffId
in: query
type: integer
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
- name: request.startDateTime
in: query
type: string
required: false
description: The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateT
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: payroll-timecards
path: /payroll/timecards
operations:
- name: getTimeCards
method: GET
description: Mindbody This Endpoint Returns Information for All Locations. the **View
inputParameters:
- name: version
in: path
type: string
required: true
description: version of the api.
- name: siteId
in: header
type: string
required: true
description: ID of the site from which to pull data.
- name: authorization
in: header
type: string
required: false
description: A staff user authorization token.
- name: request.endDateTime
in: query
type: string
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today\u2019s date** * If you do not supply an `EndDateTime`,\
\ the data returns for the period from the `StartDateTime` that you supply to today\u2019s date. * If you do not supply a"
- name: request.limit
in: query
type: integer
required: false
description: Number of results to include, defaults to 100
- name: request.locationId
in: query
type: integer
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
- name: request.offset
in: query
type: integer
required: false
description: Page offset, defaults to 0.
- name: request.staffId
in: query
type: integer
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
- name: request.startDateTime
in: query
type: string
required: false
description: The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateT
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: payroll-tips
path: /payroll/tips
operations:
- name: getTips
method: GET
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
inputParameters:
- name: version
in: path
type: string
required: true
description: version of the api.
- name: siteId
in: header
type: string
required: true
description: ID of the site from which to pull data.
- name: authorization
in: header
type: string
required: false
description: A staff user authorization token.
- name: request.endDateTime
in: query
type: string
required: false
description: "The end of the date range for the payroll information to be returned. The maximum allowed date range is 14 days.
Default: **Today\u2019s date** * If you do not supply an `EndDateTime`,\
\ the data returns for the period from the `StartDateTime` that you supply to today\u2019s date. * If you do not supply a"
- name: request.limit
in: query
type: integer
required: false
description: Number of results to include, defaults to 100
- name: request.locationId
in: query
type: integer
required: false
description: A LocationId that you want to retrieve payroll information for. If you do not supply a `LocationId`, data from all locations is returned.
- name: request.offset
in: query
type: integer
required: false
description: Page offset, defaults to 0.
- name: request.staffId
in: query
type: integer
required: false
description: A list of staff IDs that you want to retrieve payroll information for. If you do not supply a `StaffId`, all active staff members return, ordered by staff ID.
- name: request.startDateTime
in: query
type: string
required: false
description: The beginning of the date range for the payroll information to be returned. The maximum allowed date range is 14 days. * If you do not supply a `StartDateTime`, data returns for the
seven days prior to the `EndDateTime` that you supply. * If you do not supply either a `StartDateTime` or an `EndDateT
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
namespace: public-api-v6-payroll-rest
port: 8080
description: "REST adapter for Mindbody Public API v6 \u2014 Payroll. One Spectral-compliant resource per consumed operation, prefixed with /v1."
resources:
- path: /v1/payroll/commissions
name: v1-payroll-commissions
description: REST surface for /v1/payroll/commissions.
operations:
- method: GET
name: getCommissions
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
call: public-api-v6-payroll.getCommissions
with:
version: rest.version
siteId: rest.siteId
authorization: rest.authorization
request.endDateTime: rest.request.endDateTime
request.limit: rest.request.limit
request.locationId: rest.request.locationId
request.offset: rest.request.offset
request.staffId: rest.request.staffId
request.startDateTime: rest.request.startDateTime
outputParameters:
- type: object
mapping: $.
- path: /v1/payroll/scheduledserviceearnings
name: v1-payroll-scheduledserviceearnings
description: REST surface for /v1/payroll/scheduledserviceearnings.
operations:
- method: GET
name: getScheduledServiceEarnings
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
call: public-api-v6-payroll.getScheduledServiceEarnings
with:
version: rest.version
siteId: rest.siteId
authorization: rest.authorization
request.endDateTime: rest.request.endDateTime
request.limit: rest.request.limit
request.locationId: rest.request.locationId
request.offset: rest.request.offset
request.scheduledServiceId: rest.request.scheduledServiceId
request.scheduledServiceType: rest.request.scheduledServiceType
request.staffId: rest.request.staffId
request.startDateTime: rest.request.startDateTime
outputParameters:
- type: object
mapping: $.
- path: /v1/payroll/timecards
name: v1-payroll-timecards
description: REST surface for /v1/payroll/timecards.
operations:
- method: GET
name: getTimeCards
description: Mindbody This Endpoint Returns Information for All Locations. the **View
call: public-api-v6-payroll.getTimeCards
with:
version: rest.version
siteId: rest.siteId
authorization: rest.authorization
request.endDateTime: rest.request.endDateTime
request.limit: rest.request.limit
request.locationId: rest.request.locationId
request.offset: rest.request.offset
request.staffId: rest.request.staffId
request.startDateTime: rest.request.startDateTime
outputParameters:
- type: object
mapping: $.
- path: /v1/payroll/tips
name: v1-payroll-tips
description: REST surface for /v1/payroll/tips.
operations:
- method: GET
name: getTips
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
call: public-api-v6-payroll.getTips
with:
version: rest.version
siteId: rest.siteId
authorization: rest.authorization
request.endDateTime: rest.request.endDateTime
request.limit: rest.request.limit
request.locationId: rest.request.locationId
request.offset: rest.request.offset
request.staffId: rest.request.staffId
request.startDateTime: rest.request.startDateTime
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: public-api-v6-payroll-mcp
port: 9090
transport: http
description: "MCP adapter for Mindbody Public API v6 \u2014 Payroll. One tool per consumed operation, routed inline through this capability's consumes block."
tools:
- name: staff-authorization-token-is-not
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
hints:
readOnly: true
destructive: false
idempotent: true
call: public-api-v6-payroll.getCommissions
with:
version: tools.version
siteId: tools.siteId
authorization: tools.authorization
request.endDateTime: tools.request.endDateTime
request.limit: tools.request.limit
request.locationId: tools.request.locationId
request.offset: tools.request.offset
request.staffId: tools.request.staffId
request.startDateTime: tools.request.startDateTime
outputParameters:
- type: object
mapping: $.
- name: staff-authorization-token-is-not-2
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
hints:
readOnly: true
destructive: false
idempotent: true
call: public-api-v6-payroll.getScheduledServiceEarnings
with:
version: tools.version
siteId: tools.siteId
authorization: tools.authorization
request.endDateTime: tools.request.endDateTime
request.limit: tools.request.limit
request.locationId: tools.request.locationId
request.offset: tools.request.offset
request.scheduledServiceId: tools.request.scheduledServiceId
request.scheduledServiceType: tools.request.scheduledServiceType
request.staffId: tools.request.staffId
request.startDateTime: tools.request.startDateTime
outputParameters:
- type: object
mapping: $.
- name: this-endpoint-returns-information-all
description: Mindbody This Endpoint Returns Information for All Locations. the **View
hints:
readOnly: true
destructive: false
idempotent: true
call: public-api-v6-payroll.getTimeCards
with:
version: tools.version
siteId: tools.siteId
authorization: tools.authorization
request.endDateTime: tools.request.endDateTime
request.limit: tools.request.limit
request.locationId: tools.request.locationId
request.offset: tools.request.offset
request.staffId: tools.request.staffId
request.startDateTime: tools.request.startDateTime
outputParameters:
- type: object
mapping: $.
- name: staff-authorization-token-is-not-3
description: Mindbody A Staff Authorization Token is Not Required for This Endpoint, but if
hints:
readOnly: true
destructive: false
idempotent: true
call: public-api-v6-payroll.getTips
with:
version: tools.version
siteId: tools.siteId
authorization: tools.authorization
request.endDateTime: tools.request.endDateTime
request.limit: tools.request.limit
request.locationId: tools.request.locationId
request.offset: tools.request.offset
request.staffId: tools.request.staffId
request.startDateTime: tools.request.startDateTime
outputParameters:
- type: object
mapping: $.