Mindbody · Schema

Service

Implementation of the 'Service' model.

FitnessWellnessBeautySchedulingBookingPoint of SaleStudiosSalonsSpasWebhooks

Properties

Name Type Description
Price number The cost of the pricing option when sold at a physical location.
OnlinePrice number The cost of the pricing option when sold online.
TaxIncluded number The amount of tax included in the price, if inclusive pricing is enabled.
ProgramId integer The ID of the program that this pricing option applies to.
TaxRate number The tax rate applied to the pricing option. This field is populated only when you include a `LocationID` in the request.
ProductId integer The unique ID of this pricing option. This is the `PurchasedItems[].Id` returned from GET Sales.
Id string The barcode ID of the pricing option. This is the `PurchasedItems[].BarcodeId` returned from GET Sales.
Name string The name of the pricing option.
Count integer The initial count of usages available for the pricing option.
SellOnline boolean When true, filters to the pricing options that can be sold online. Default: *false*
SaleInContractOnly boolean 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 pack
Type string The type of the pricing option, either Drop-in, Series, or Unlimited.
ExpirationType string The date the pricing option begins its activation, either the date of sale or the date the client first used it for a visit.
ExpirationUnit string The unit, either days or months, of `ExpirationLength`, indicating how long the pricing option is active for.
ExpirationLength integer The number of days or months that the pricing option is active for.
RevenueCategory string The revenue category of the pricing option.
MembershipId integer The ID that this pricing option grants membership to.
SellAtLocationIds array The location IDs where this pricing option is sold.
UseAtLocationIds array The location IDs where this pricing option may be used.
Priority string The priority of the pricing option, either High, Medium, or Low.
IsIntroOffer boolean Indicates if this pricing option is an introductory offer.
IntroOfferType string When `IsIntroOffer` is true, this indicates if this introductory offer may be purchased by new clients or new and existing clients.
IsThirdPartyDiscountPricing boolean Indicates whether this pricing option is sold at discounted rates by third-party services, such as ClassPass.
Program string The name of the service category the pricing option belongs to.
Discontinued boolean If the pricing option has been marked discontinued.
RestrictToMembershipIds array Restricted to members of these membership ids.
ApplyMemberDiscountsOfMembershipIds array Discounts applied of these membership ids.
View JSON Schema on GitHub

JSON Schema

public-api-v6-service-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/mindbody/refs/heads/main/json-schema/public-api-v6-service-schema.json",
  "title": "Service",
  "description": "Implementation of the 'Service' model.",
  "type": "object",
  "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
      ]
    }
  }
}