{
  "openapi": "3.1.0",
  "info": {
    "title": "Program Data",
    "version": "2025-01-01"
  },
  "servers": [
    {
      "url": "https://client.beeline.com/api"
    },
    {
      "url": "https://client-eu.beeline.com/api"
    }
  ],
  "tags": [
    {
      "name": "Billing Term",
      "description": "The Billing Term Category API is comprised of endpoints to retrieve and manage billing term category-related data.\n"
    },
    {
      "name": "Industry",
      "description": "The Industry API is comprised of endpoints to retrieve and manage industry-related data.\n"
    },
    {
      "name": "Invoice",
      "description": "The Invoice API is comprised of endpoints to retrieve and manage invoice-related data.\n"
    },
    {
      "name": "Tax Definition",
      "description": "The Tax Definition API is comprised of endpoints to retrieve and manage tax definition-related data.\n"
    }
  ],
  "paths": {
    "/sites/{clientSiteId}/tax-definitions": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-tax-definition-list",
        "summary": "Tax Definition List",
        "description": "Retrieves a list of tax definitions. Optionally, you can query by status and country code.\n",
        "tags": [
          "Tax Definition"
        ],
        "security": [
          {
            "client_auth": [
              "read:tax_definition"
            ]
          }
        ],
        "parameters": [
          {
            "name": "skip",
            "in": "query",
            "description": "skip a number of records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "top",
            "in": "query",
            "description": "select up to 1000 records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1000
            }
          },
          {
            "name": "countryCode",
            "in": "query",
            "description": "A value representing whether to query tax definitions by country code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "List of tax definitions",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The total count and an array of tax definitions.",
                  "required": [
                    "maxItems",
                    "value"
                  ],
                  "properties": {
                    "maxItems": {
                      "type": "integer",
                      "description": "The total number of tax definitions."
                    },
                    "value": {
                      "type": "array",
                      "description": "An array of tax definition objects.",
                      "items": {
                        "type": "object",
                        "description": "Represents the definition and configuration of a tax, including its related metadata.",
                        "required": [
                          "taxDefinitionId",
                          "name",
                          "taxDefinitionCode",
                          "countryCode",
                          "taxEffectiveFrom",
                          "taxType",
                          "taxCalculation",
                          "taxAllFees",
                          "isActive",
                          "includeInBudgetCalculation"
                        ],
                        "properties": {
                          "taxDefinitionId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the tax definition."
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the tax definition.",
                            "example": "TaxDefinitionName"
                          },
                          "taxDefinitionCode": {
                            "type": "string",
                            "description": "The code of the tax definition.",
                            "example": "TaxDefinitionCode"
                          },
                          "description": {
                            "type": "string",
                            "description": "The description of the tax definition.",
                            "example": "Description of the tax definition"
                          },
                          "countryCode": {
                            "type": "string",
                            "description": "The country code of the tax definition.",
                            "example": "US"
                          },
                          "taxEffectiveFrom": {
                            "description": "The effective date of the tax definition.",
                            "example": "workDate",
                            "type": "string",
                            "enum": [
                              "workDate",
                              "stmtDate",
                              "billPeriodStartDate"
                            ]
                          },
                          "taxType": {
                            "description": "The tax type of the tax definition.",
                            "example": "salesTax",
                            "type": "string",
                            "enum": [
                              "salesTax",
                              "withholding"
                            ]
                          },
                          "taxCalculation": {
                            "description": "The calculation type of the tax definition.",
                            "example": "basic",
                            "type": "string",
                            "enum": [
                              "basic",
                              "taxOnTax",
                              "margin",
                              "taxBasicTax"
                            ]
                          },
                          "taxOnTaxCode": {
                            "type": "string",
                            "description": "The tax on tax code.",
                            "example": "TaxOnTaxDefinitionCode"
                          },
                          "chargeCode": {
                            "type": "string",
                            "description": "The charge code of the tax definition.",
                            "example": "ChargeCode"
                          },
                          "taxAllFees": {
                            "type": "boolean",
                            "description": "Indicates whether all tax fees apply to the tax definition. True if yes. Otherwise, false."
                          },
                          "isActive": {
                            "type": "boolean",
                            "description": "Indicates the status of the tax definition. True if the tax definition is active. Otherwise, false."
                          },
                          "includeInBudgetCalculation": {
                            "type": "boolean",
                            "description": "Indicates whether the tax definition is included in budget calculations. True if yes. Otherwise, false."
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/tax-definitions/{taxDefinitionId}": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "in": "path",
          "name": "taxDefinitionId",
          "description": "The unique identifier of the tax definition.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          }
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-tax-definition-by-id",
        "summary": "Tax Definition by ID",
        "description": "Retrieves a single tax definition by its ID.\n",
        "tags": [
          "Tax Definition"
        ],
        "security": [
          {
            "client_auth": [
              "read:tax_definition"
            ]
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "The tax definition",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "Represents the definition and configuration of a tax, including its related metadata.",
                  "required": [
                    "taxDefinitionId",
                    "name",
                    "taxDefinitionCode",
                    "countryCode",
                    "taxEffectiveFrom",
                    "taxType",
                    "taxCalculation",
                    "taxAllFees",
                    "isActive",
                    "includeInBudgetCalculation"
                  ],
                  "properties": {
                    "taxDefinitionId": {
                      "type": "string",
                      "format": "uuid",
                      "description": "The unique identifier of the tax definition."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the tax definition.",
                      "example": "TaxDefinitionName"
                    },
                    "taxDefinitionCode": {
                      "type": "string",
                      "description": "The code of the tax definition.",
                      "example": "TaxDefinitionCode"
                    },
                    "description": {
                      "type": "string",
                      "description": "The description of the tax definition.",
                      "example": "Description of the tax definition"
                    },
                    "countryCode": {
                      "type": "string",
                      "description": "The country code of the tax definition.",
                      "example": "US"
                    },
                    "taxEffectiveFrom": {
                      "description": "The effective date of the tax definition.",
                      "example": "workDate",
                      "type": "string",
                      "enum": [
                        "workDate",
                        "stmtDate",
                        "billPeriodStartDate"
                      ]
                    },
                    "taxType": {
                      "description": "The tax type of the tax definition.",
                      "example": "salesTax",
                      "type": "string",
                      "enum": [
                        "salesTax",
                        "withholding"
                      ]
                    },
                    "taxCalculation": {
                      "description": "The calculation type of the tax definition.",
                      "example": "basic",
                      "type": "string",
                      "enum": [
                        "basic",
                        "taxOnTax",
                        "margin",
                        "taxBasicTax"
                      ]
                    },
                    "taxOnTaxCode": {
                      "type": "string",
                      "description": "The tax on tax code.",
                      "example": "TaxOnTaxDefinitionCode"
                    },
                    "chargeCode": {
                      "type": "string",
                      "description": "The charge code of the tax definition.",
                      "example": "ChargeCode"
                    },
                    "taxAllFees": {
                      "type": "boolean",
                      "description": "Indicates whether all tax fees apply to the tax definition. True if yes. Otherwise, false."
                    },
                    "isActive": {
                      "type": "boolean",
                      "description": "Indicates the status of the tax definition. True if the tax definition is active. Otherwise, false."
                    },
                    "includeInBudgetCalculation": {
                      "type": "boolean",
                      "description": "Indicates whether the tax definition is included in budget calculations. True if yes. Otherwise, false."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/tax-definitions/{taxDefinitionCode}": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "in": "path",
          "name": "taxDefinitionCode",
          "description": "The code that uniquely identifies the tax definition.",
          "required": true,
          "schema": {
            "type": "string",
            "maxLength": 255
          }
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-tax-definition-by-code",
        "summary": "Tax Definition by Code",
        "description": "Retrieves a single tax definition by its code.\n",
        "tags": [
          "Tax Definition"
        ],
        "security": [
          {
            "client_auth": [
              "read:tax_definition"
            ]
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "The tax definition",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "Represents the definition and configuration of a tax, including its related metadata.",
                  "required": [
                    "taxDefinitionId",
                    "name",
                    "taxDefinitionCode",
                    "countryCode",
                    "taxEffectiveFrom",
                    "taxType",
                    "taxCalculation",
                    "taxAllFees",
                    "isActive",
                    "includeInBudgetCalculation"
                  ],
                  "properties": {
                    "taxDefinitionId": {
                      "type": "string",
                      "format": "uuid",
                      "description": "The unique identifier of the tax definition."
                    },
                    "name": {
                      "type": "string",
                      "description": "The name of the tax definition.",
                      "example": "TaxDefinitionName"
                    },
                    "taxDefinitionCode": {
                      "type": "string",
                      "description": "The code of the tax definition.",
                      "example": "TaxDefinitionCode"
                    },
                    "description": {
                      "type": "string",
                      "description": "The description of the tax definition.",
                      "example": "Description of the tax definition"
                    },
                    "countryCode": {
                      "type": "string",
                      "description": "The country code of the tax definition.",
                      "example": "US"
                    },
                    "taxEffectiveFrom": {
                      "description": "The effective date of the tax definition.",
                      "example": "workDate",
                      "type": "string",
                      "enum": [
                        "workDate",
                        "stmtDate",
                        "billPeriodStartDate"
                      ]
                    },
                    "taxType": {
                      "description": "The tax type of the tax definition.",
                      "example": "salesTax",
                      "type": "string",
                      "enum": [
                        "salesTax",
                        "withholding"
                      ]
                    },
                    "taxCalculation": {
                      "description": "The calculation type of the tax definition.",
                      "example": "basic",
                      "type": "string",
                      "enum": [
                        "basic",
                        "taxOnTax",
                        "margin",
                        "taxBasicTax"
                      ]
                    },
                    "taxOnTaxCode": {
                      "type": "string",
                      "description": "The tax on tax code.",
                      "example": "TaxOnTaxDefinitionCode"
                    },
                    "chargeCode": {
                      "type": "string",
                      "description": "The charge code of the tax definition.",
                      "example": "ChargeCode"
                    },
                    "taxAllFees": {
                      "type": "boolean",
                      "description": "Indicates whether all tax fees apply to the tax definition. True if yes. Otherwise, false."
                    },
                    "isActive": {
                      "type": "boolean",
                      "description": "Indicates the status of the tax definition. True if the tax definition is active. Otherwise, false."
                    },
                    "includeInBudgetCalculation": {
                      "type": "boolean",
                      "description": "Indicates whether the tax definition is included in budget calculations. True if yes. Otherwise, false."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/industries": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-industry-list",
        "summary": "Industry List",
        "description": "Retrieves a list of industries. Optionally, you can query by geography code, labor category code, and/or status.\n",
        "tags": [
          "Industry"
        ],
        "security": [
          {
            "client_auth": [
              "read:industry"
            ]
          }
        ],
        "parameters": [
          {
            "name": "skip",
            "in": "query",
            "description": "skip a number of records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "top",
            "in": "query",
            "description": "select up to 1000 records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1000
            }
          },
          {
            "name": "geographyCode",
            "in": "query",
            "description": "A value representing whether to query by geography code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "laborCategoryCode",
            "in": "query",
            "description": "A value representing whether to query by labor category code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "List of industries",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The total count and an array of industries.",
                  "required": [
                    "maxItems",
                    "value"
                  ],
                  "properties": {
                    "maxItems": {
                      "type": "integer",
                      "description": "The total number of industries."
                    },
                    "value": {
                      "type": "array",
                      "description": "An array of industry objects.",
                      "items": {
                        "type": "object",
                        "description": "Represents the industry.",
                        "required": [
                          "industryId",
                          "geographyCode",
                          "laborCategoryCode",
                          "name",
                          "industryCode",
                          "isActive",
                          "rateCardCalculation",
                          "isResourceTrackingOnly"
                        ],
                        "properties": {
                          "industryId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the industry."
                          },
                          "geographyCode": {
                            "type": "string",
                            "description": "The geography code.",
                            "example": "GeographyCode"
                          },
                          "laborCategoryCode": {
                            "type": "string",
                            "description": "The labor category code.",
                            "example": "LaborCategoryCode"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the industry.",
                            "example": "IndustryName"
                          },
                          "industryCode": {
                            "type": "string",
                            "description": "The industry code.",
                            "example": "IndustryCode"
                          },
                          "description": {
                            "type": "string",
                            "description": "The description of the industry.",
                            "example": "Description of the industry"
                          },
                          "isActive": {
                            "type": "boolean",
                            "description": "Indicates whether the industry is active. True if yes. Otherwise, false.",
                            "example": true
                          },
                          "rateCardCalculation": {
                            "description": "The rate card calculation for the industry.",
                            "example": "billToPay",
                            "type": "string",
                            "enum": [
                              "none",
                              "billToPay",
                              "payToBill"
                            ]
                          },
                          "isResourceTrackingOnly": {
                            "type": "boolean",
                            "description": "Indicates whether the industry is resource tracking only. True if yes. Otherwise, false.",
                            "example": false
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/industry-rotations": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-industry-rotation-list",
        "summary": "Industry Rotation List",
        "description": "Retrieves a list of rotations. Optionally, you can query by tier code and/or status.\n",
        "tags": [
          "Industry"
        ],
        "security": [
          {
            "client_auth": [
              "read:industry"
            ]
          }
        ],
        "parameters": [
          {
            "name": "industryCode",
            "in": "query",
            "description": "A value representing whether to query by industry code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "skip",
            "in": "query",
            "description": "skip a number of records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "top",
            "in": "query",
            "description": "select up to 1000 records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1000
            }
          },
          {
            "name": "tierCode",
            "in": "query",
            "description": "A value representing whether to query by tier code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "List of rotations",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The total count and an array of rotations.",
                  "required": [
                    "maxItems",
                    "value"
                  ],
                  "properties": {
                    "maxItems": {
                      "type": "integer",
                      "description": "The total number of rotations."
                    },
                    "value": {
                      "type": "array",
                      "description": "An array of rotation objects.",
                      "items": {
                        "type": "object",
                        "description": "Represents an industry rotation.",
                        "required": [
                          "rotationId",
                          "industryCode",
                          "tierCode",
                          "name",
                          "rotationCode",
                          "isActive",
                          "maxRequestCount"
                        ],
                        "properties": {
                          "rotationId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the rotation."
                          },
                          "industryCode": {
                            "type": "string",
                            "description": "The code of the industry.",
                            "example": "IndustryCode"
                          },
                          "tierCode": {
                            "type": "string",
                            "description": "The code of the tier.",
                            "example": "TierCode"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the rotation.",
                            "example": "RotationName"
                          },
                          "rotationCode": {
                            "type": "string",
                            "description": "The code of the rotation.",
                            "example": "RotationCode"
                          },
                          "description": {
                            "type": "string",
                            "description": "The description of the rotation.",
                            "example": "Description of the rotation"
                          },
                          "isActive": {
                            "type": "boolean",
                            "description": "Indicates whether the rotation is active. True if yes. Otherwise, false.",
                            "example": true
                          },
                          "maxRequestCount": {
                            "type": "integer",
                            "description": "The maximum request count for the rotation.",
                            "example": 5
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/billing-term-categories": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-billing-term-category-list",
        "summary": "Billing Term Category List",
        "description": "Retrieves a list of billing term categories. Optionally, you can query by industry code, currency code, status, and/or if selectable.\n",
        "tags": [
          "Billing Term"
        ],
        "security": [
          {
            "client_auth": [
              "read:billing_term"
            ]
          }
        ],
        "parameters": [
          {
            "name": "skip",
            "in": "query",
            "description": "skip a number of records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "top",
            "in": "query",
            "description": "select up to 1000 records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1000
            }
          },
          {
            "name": "industryCode",
            "in": "query",
            "description": "A value representing whether to query by industry code.",
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "currencyCode",
            "in": "query",
            "description": "A value representing whether to query by currency code.",
            "schema": {
              "type": "string",
              "maxLength": 3
            },
            "example": "USD"
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "isSelectable",
            "in": "query",
            "description": "A boolean value representing whether to include only selectable billing term categories. True if the billing term category can be selected by an industry supplier. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "List of billing term categories",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The total count and an array of billing term categories.",
                  "required": [
                    "maxItems",
                    "value"
                  ],
                  "properties": {
                    "maxItems": {
                      "type": "integer",
                      "description": "The total number of billing term categories."
                    },
                    "value": {
                      "type": "array",
                      "description": "An array of billing term category objects.",
                      "items": {
                        "type": "object",
                        "description": "Represents a billing term category.",
                        "required": [
                          "billingTermCategoryId",
                          "name",
                          "billingTermCategoryCode",
                          "currencyCode",
                          "isActive",
                          "isSelectable"
                        ],
                        "properties": {
                          "billingTermCategoryId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the billing term category."
                          },
                          "industryId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the industry."
                          },
                          "industryCode": {
                            "type": "string",
                            "description": "The industry code.",
                            "example": "IndustryCode"
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the billing term category.",
                            "example": "BillingTermCategoryName"
                          },
                          "description": {
                            "type": "string",
                            "description": "The description of the billing term category.",
                            "example": "Description of the billing term category"
                          },
                          "billingTermCategoryCode": {
                            "type": "string",
                            "description": "The billing term category code.",
                            "example": "BillingTermCategoryCode"
                          },
                          "currencyCode": {
                            "type": "string",
                            "description": "The currency code.",
                            "example": "USD"
                          },
                          "isActive": {
                            "type": "boolean",
                            "description": "Indicates whether the billing term category is active. True if yes. Otherwise, false.",
                            "example": true
                          },
                          "isSelectable": {
                            "type": "boolean",
                            "description": "Indicates the whether the billing term category is selectable for industry suppliers. True if yes. Otherwise, false.",
                            "example": true
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sites/{clientSiteId}/funding-models": {
      "parameters": [
        {
          "in": "path",
          "name": "clientSiteId",
          "description": "Uniquely identifies a Beeline VMS instance.",
          "required": true,
          "schema": {
            "type": "string",
            "format": "uuid"
          },
          "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
        },
        {
          "name": "api-version",
          "in": "query",
          "description": "The API version of the endpoint",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "2025-01-01"
            ]
          }
        }
      ],
      "get": {
        "operationId": "get-funding-model-list",
        "summary": "Funding Model List",
        "description": "Retrieves a list of funding models. Optionally, you can query by status.\n",
        "tags": [
          "Invoice"
        ],
        "security": [
          {
            "client_auth": [
              "read:invoice"
            ]
          }
        ],
        "parameters": [
          {
            "name": "skip",
            "in": "query",
            "description": "skip a number of records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "top",
            "in": "query",
            "description": "select up to 1000 records",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1000
            }
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "description": "List of funding models",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The total count and an array of funding models.",
                  "required": [
                    "maxItems",
                    "value"
                  ],
                  "properties": {
                    "maxItems": {
                      "type": "integer",
                      "description": "The total number of funding models."
                    },
                    "value": {
                      "type": "array",
                      "description": "An array of funding model objects.",
                      "items": {
                        "type": "object",
                        "description": "Represents a funding model.",
                        "required": [
                          "fundingModelId",
                          "name",
                          "fundingModelCode",
                          "isActive"
                        ],
                        "properties": {
                          "fundingModelId": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The unique identifier of the funding model."
                          },
                          "name": {
                            "type": "string",
                            "description": "The name of the funding model.",
                            "example": "Funding Model Name"
                          },
                          "fundingModelCode": {
                            "type": "string",
                            "description": "The funding model code.",
                            "example": "Code"
                          },
                          "description": {
                            "type": "string",
                            "description": "The description of the funding model.",
                            "example": "Description of the funding model"
                          },
                          "isActive": {
                            "type": "boolean",
                            "description": "Indicates the status of the funding model. True if yes. Otherwise, false.",
                            "example": true
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "description": "A list of errors.",
                      "properties": {
                        "errors": {
                          "type": "array",
                          "items": {
                            "required": [
                              "code",
                              "message"
                            ],
                            "type": "object",
                            "properties": {
                              "code": {
                                "enum": [
                                  "UNEXPECTED_ERROR",
                                  "VALIDATION_ERROR",
                                  "NOT_FOUND",
                                  "REQUEST_LIMIT_EXCEEDED",
                                  "UNSUPPORTED_API_VERSION",
                                  "CONFLICT"
                                ],
                                "type": "string",
                                "description": "One of a server-defined set of error codes."
                              },
                              "message": {
                                "type": "string",
                                "description": "The human-readable representation of the error."
                              },
                              "target": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "Retry-After": {
                "description": "The number of seconds remaining when the endpoint can be called again.",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "rate-limit": {
                    "value": {
                      "errors": [
                        {
                          "code": "REQUEST_LIMIT_EXCEEDED",
                          "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server error",
            "headers": {
              "X-Rate-Limit-Limit": {
                "description": "The rate limit period (eg. 1m, 12h, 1d)",
                "schema": {
                  "type": "string"
                },
                "example": "8h"
              },
              "X-Rate-Limit-Remaining": {
                "description": "The number of calls remaining in the time window",
                "schema": {
                  "type": "integer"
                },
                "example": 10
              },
              "X-Rate-Limit-Reset": {
                "description": "UTC date time (ISO 8601) when the limit resets",
                "schema": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "client-site-id": {
        "in": "path",
        "name": "clientSiteId",
        "description": "Uniquely identifies a Beeline VMS instance.",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        },
        "example": "abc78252-1d8d-4ecf-9651-6b5ba39bba5b"
      },
      "industry-code": {
        "name": "industryCode",
        "in": "query",
        "description": "A value representing whether to query by industry code.",
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "currency-code": {
        "name": "currencyCode",
        "in": "query",
        "description": "A value representing whether to query by currency code.",
        "schema": {
          "type": "string",
          "maxLength": 3
        },
        "example": "USD"
      },
      "is-selectable": {
        "name": "isSelectable",
        "in": "query",
        "description": "A boolean value representing whether to include only selectable billing term categories. True if the billing term category can be selected by an industry supplier. Otherwise, false.\n",
        "schema": {
          "type": "boolean"
        }
      },
      "country-code": {
        "name": "countryCode",
        "in": "query",
        "description": "A value representing whether to query tax definitions by country code.",
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "is-active": {
        "name": "isActive",
        "in": "query",
        "description": "A boolean value representing whether to query by status. True if active. Otherwise, false.\n",
        "schema": {
          "type": "boolean"
        }
      },
      "geography-code": {
        "name": "geographyCode",
        "in": "query",
        "description": "A value representing whether to query by geography code.",
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "labor-category-code": {
        "name": "laborCategoryCode",
        "in": "query",
        "description": "A value representing whether to query by labor category code.",
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "tier-code": {
        "name": "tierCode",
        "in": "query",
        "description": "A value representing whether to query by tier code.",
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "tax-definition-id": {
        "in": "path",
        "name": "taxDefinitionId",
        "description": "The unique identifier of the tax definition.",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "tax-definition-code": {
        "in": "path",
        "name": "taxDefinitionCode",
        "description": "The code that uniquely identifies the tax definition.",
        "required": true,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "api-version": {
        "name": "api-version",
        "in": "query",
        "description": "The API version of the endpoint",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "2025-01-01"
          ]
        }
      },
      "skip": {
        "name": "skip",
        "in": "query",
        "description": "skip a number of records",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "top": {
        "name": "top",
        "in": "query",
        "description": "select up to 1000 records",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 0,
          "maximum": 1000
        }
      }
    },
    "headers": {
      "rate-limit-limit": {
        "description": "The rate limit period (eg. 1m, 12h, 1d)",
        "schema": {
          "type": "string"
        },
        "example": "8h"
      },
      "rate-limit-remaining": {
        "description": "The number of calls remaining in the time window",
        "schema": {
          "type": "integer"
        },
        "example": 10
      },
      "rate-limit-reset": {
        "description": "UTC date time (ISO 8601) when the limit resets",
        "schema": {
          "type": "string",
          "format": "date-time"
        }
      },
      "retry-after": {
        "description": "The number of seconds remaining when the endpoint can be called again.",
        "schema": {
          "type": "integer"
        },
        "example": 10
      }
    },
    "responses": {
      "400": {
        "description": "Bad Request",
        "headers": {
          "X-Rate-Limit-Limit": {
            "description": "The rate limit period (eg. 1m, 12h, 1d)",
            "schema": {
              "type": "string"
            },
            "example": "8h"
          },
          "X-Rate-Limit-Remaining": {
            "description": "The number of calls remaining in the time window",
            "schema": {
              "type": "integer"
            },
            "example": 10
          },
          "X-Rate-Limit-Reset": {
            "description": "UTC date time (ISO 8601) when the limit resets",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "description": "A list of errors.",
              "properties": {
                "errors": {
                  "type": "array",
                  "items": {
                    "required": [
                      "code",
                      "message"
                    ],
                    "type": "object",
                    "properties": {
                      "code": {
                        "enum": [
                          "UNEXPECTED_ERROR",
                          "VALIDATION_ERROR",
                          "NOT_FOUND",
                          "REQUEST_LIMIT_EXCEEDED",
                          "UNSUPPORTED_API_VERSION",
                          "CONFLICT"
                        ],
                        "type": "string",
                        "description": "One of a server-defined set of error codes."
                      },
                      "message": {
                        "type": "string",
                        "description": "The human-readable representation of the error."
                      },
                      "target": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "401": {
        "description": "Unauthorized",
        "headers": {
          "X-Rate-Limit-Limit": {
            "description": "The rate limit period (eg. 1m, 12h, 1d)",
            "schema": {
              "type": "string"
            },
            "example": "8h"
          },
          "X-Rate-Limit-Remaining": {
            "description": "The number of calls remaining in the time window",
            "schema": {
              "type": "integer"
            },
            "example": 10
          },
          "X-Rate-Limit-Reset": {
            "description": "UTC date time (ISO 8601) when the limit resets",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        }
      },
      "403": {
        "description": "Forbidden",
        "headers": {
          "X-Rate-Limit-Limit": {
            "description": "The rate limit period (eg. 1m, 12h, 1d)",
            "schema": {
              "type": "string"
            },
            "example": "8h"
          },
          "X-Rate-Limit-Remaining": {
            "description": "The number of calls remaining in the time window",
            "schema": {
              "type": "integer"
            },
            "example": 10
          },
          "X-Rate-Limit-Reset": {
            "description": "UTC date time (ISO 8601) when the limit resets",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        }
      },
      "404": {
        "description": "Not Found",
        "headers": {
          "X-Rate-Limit-Limit": {
            "description": "The rate limit period (eg. 1m, 12h, 1d)",
            "schema": {
              "type": "string"
            },
            "example": "8h"
          },
          "X-Rate-Limit-Remaining": {
            "description": "The number of calls remaining in the time window",
            "schema": {
              "type": "integer"
            },
            "example": 10
          },
          "X-Rate-Limit-Reset": {
            "description": "UTC date time (ISO 8601) when the limit resets",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "oneOf": [
                {
                  "type": "object",
                  "description": "A list of errors.",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "required": [
                          "code",
                          "message"
                        ],
                        "type": "object",
                        "properties": {
                          "code": {
                            "enum": [
                              "UNEXPECTED_ERROR",
                              "VALIDATION_ERROR",
                              "NOT_FOUND",
                              "REQUEST_LIMIT_EXCEEDED",
                              "UNSUPPORTED_API_VERSION",
                              "CONFLICT"
                            ],
                            "type": "string",
                            "description": "One of a server-defined set of error codes."
                          },
                          "message": {
                            "type": "string",
                            "description": "The human-readable representation of the error."
                          },
                          "target": {
                            "type": [
                              "string",
                              "null"
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                {
                  "type": "null"
                }
              ]
            }
          }
        }
      },
      "429": {
        "description": "Too Many Requests",
        "headers": {
          "Retry-After": {
            "description": "The number of seconds remaining when the endpoint can be called again.",
            "schema": {
              "type": "integer"
            },
            "example": 10
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "description": "A list of errors.",
              "properties": {
                "errors": {
                  "type": "array",
                  "items": {
                    "required": [
                      "code",
                      "message"
                    ],
                    "type": "object",
                    "properties": {
                      "code": {
                        "enum": [
                          "UNEXPECTED_ERROR",
                          "VALIDATION_ERROR",
                          "NOT_FOUND",
                          "REQUEST_LIMIT_EXCEEDED",
                          "UNSUPPORTED_API_VERSION",
                          "CONFLICT"
                        ],
                        "type": "string",
                        "description": "One of a server-defined set of error codes."
                      },
                      "message": {
                        "type": "string",
                        "description": "The human-readable representation of the error."
                      },
                      "target": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    }
                  }
                }
              }
            },
            "examples": {
              "rate-limit": {
                "value": {
                  "errors": [
                    {
                      "code": "REQUEST_LIMIT_EXCEEDED",
                      "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "500": {
        "description": "Internal Server error",
        "headers": {
          "X-Rate-Limit-Limit": {
            "description": "The rate limit period (eg. 1m, 12h, 1d)",
            "schema": {
              "type": "string"
            },
            "example": "8h"
          },
          "X-Rate-Limit-Remaining": {
            "description": "The number of calls remaining in the time window",
            "schema": {
              "type": "integer"
            },
            "example": 10
          },
          "X-Rate-Limit-Reset": {
            "description": "UTC date time (ISO 8601) when the limit resets",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "description": "A list of errors.",
              "properties": {
                "errors": {
                  "type": "array",
                  "items": {
                    "required": [
                      "code",
                      "message"
                    ],
                    "type": "object",
                    "properties": {
                      "code": {
                        "enum": [
                          "UNEXPECTED_ERROR",
                          "VALIDATION_ERROR",
                          "NOT_FOUND",
                          "REQUEST_LIMIT_EXCEEDED",
                          "UNSUPPORTED_API_VERSION",
                          "CONFLICT"
                        ],
                        "type": "string",
                        "description": "One of a server-defined set of error codes."
                      },
                      "message": {
                        "type": "string",
                        "description": "The human-readable representation of the error."
                      },
                      "target": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "schemas": {
      "tax-definition-list": {
        "type": "array",
        "description": "An array of tax definition objects.",
        "items": {
          "type": "object",
          "description": "Represents the definition and configuration of a tax, including its related metadata.",
          "required": [
            "taxDefinitionId",
            "name",
            "taxDefinitionCode",
            "countryCode",
            "taxEffectiveFrom",
            "taxType",
            "taxCalculation",
            "taxAllFees",
            "isActive",
            "includeInBudgetCalculation"
          ],
          "properties": {
            "taxDefinitionId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the tax definition."
            },
            "name": {
              "type": "string",
              "description": "The name of the tax definition.",
              "example": "TaxDefinitionName"
            },
            "taxDefinitionCode": {
              "type": "string",
              "description": "The code of the tax definition.",
              "example": "TaxDefinitionCode"
            },
            "description": {
              "type": "string",
              "description": "The description of the tax definition.",
              "example": "Description of the tax definition"
            },
            "countryCode": {
              "type": "string",
              "description": "The country code of the tax definition.",
              "example": "US"
            },
            "taxEffectiveFrom": {
              "description": "The effective date of the tax definition.",
              "example": "workDate",
              "type": "string",
              "enum": [
                "workDate",
                "stmtDate",
                "billPeriodStartDate"
              ]
            },
            "taxType": {
              "description": "The tax type of the tax definition.",
              "example": "salesTax",
              "type": "string",
              "enum": [
                "salesTax",
                "withholding"
              ]
            },
            "taxCalculation": {
              "description": "The calculation type of the tax definition.",
              "example": "basic",
              "type": "string",
              "enum": [
                "basic",
                "taxOnTax",
                "margin",
                "taxBasicTax"
              ]
            },
            "taxOnTaxCode": {
              "type": "string",
              "description": "The tax on tax code.",
              "example": "TaxOnTaxDefinitionCode"
            },
            "chargeCode": {
              "type": "string",
              "description": "The charge code of the tax definition.",
              "example": "ChargeCode"
            },
            "taxAllFees": {
              "type": "boolean",
              "description": "Indicates whether all tax fees apply to the tax definition. True if yes. Otherwise, false."
            },
            "isActive": {
              "type": "boolean",
              "description": "Indicates the status of the tax definition. True if the tax definition is active. Otherwise, false."
            },
            "includeInBudgetCalculation": {
              "type": "boolean",
              "description": "Indicates whether the tax definition is included in budget calculations. True if yes. Otherwise, false."
            }
          }
        }
      },
      "tax-definition-model": {
        "type": "object",
        "description": "Represents the definition and configuration of a tax, including its related metadata.",
        "required": [
          "taxDefinitionId",
          "name",
          "taxDefinitionCode",
          "countryCode",
          "taxEffectiveFrom",
          "taxType",
          "taxCalculation",
          "taxAllFees",
          "isActive",
          "includeInBudgetCalculation"
        ],
        "properties": {
          "taxDefinitionId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the tax definition."
          },
          "name": {
            "type": "string",
            "description": "The name of the tax definition.",
            "example": "TaxDefinitionName"
          },
          "taxDefinitionCode": {
            "type": "string",
            "description": "The code of the tax definition.",
            "example": "TaxDefinitionCode"
          },
          "description": {
            "type": "string",
            "description": "The description of the tax definition.",
            "example": "Description of the tax definition"
          },
          "countryCode": {
            "type": "string",
            "description": "The country code of the tax definition.",
            "example": "US"
          },
          "taxEffectiveFrom": {
            "description": "The effective date of the tax definition.",
            "example": "workDate",
            "type": "string",
            "enum": [
              "workDate",
              "stmtDate",
              "billPeriodStartDate"
            ]
          },
          "taxType": {
            "description": "The tax type of the tax definition.",
            "example": "salesTax",
            "type": "string",
            "enum": [
              "salesTax",
              "withholding"
            ]
          },
          "taxCalculation": {
            "description": "The calculation type of the tax definition.",
            "example": "basic",
            "type": "string",
            "enum": [
              "basic",
              "taxOnTax",
              "margin",
              "taxBasicTax"
            ]
          },
          "taxOnTaxCode": {
            "type": "string",
            "description": "The tax on tax code.",
            "example": "TaxOnTaxDefinitionCode"
          },
          "chargeCode": {
            "type": "string",
            "description": "The charge code of the tax definition.",
            "example": "ChargeCode"
          },
          "taxAllFees": {
            "type": "boolean",
            "description": "Indicates whether all tax fees apply to the tax definition. True if yes. Otherwise, false."
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates the status of the tax definition. True if the tax definition is active. Otherwise, false."
          },
          "includeInBudgetCalculation": {
            "type": "boolean",
            "description": "Indicates whether the tax definition is included in budget calculations. True if yes. Otherwise, false."
          }
        }
      },
      "funding-model-list": {
        "type": "array",
        "description": "An array of funding model objects.",
        "items": {
          "type": "object",
          "description": "Represents a funding model.",
          "required": [
            "fundingModelId",
            "name",
            "fundingModelCode",
            "isActive"
          ],
          "properties": {
            "fundingModelId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the funding model."
            },
            "name": {
              "type": "string",
              "description": "The name of the funding model.",
              "example": "Funding Model Name"
            },
            "fundingModelCode": {
              "type": "string",
              "description": "The funding model code.",
              "example": "Code"
            },
            "description": {
              "type": "string",
              "description": "The description of the funding model.",
              "example": "Description of the funding model"
            },
            "isActive": {
              "type": "boolean",
              "description": "Indicates the status of the funding model. True if yes. Otherwise, false.",
              "example": true
            }
          }
        }
      },
      "billing-term-category-list": {
        "type": "array",
        "description": "An array of billing term category objects.",
        "items": {
          "type": "object",
          "description": "Represents a billing term category.",
          "required": [
            "billingTermCategoryId",
            "name",
            "billingTermCategoryCode",
            "currencyCode",
            "isActive",
            "isSelectable"
          ],
          "properties": {
            "billingTermCategoryId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the billing term category."
            },
            "industryId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the industry."
            },
            "industryCode": {
              "type": "string",
              "description": "The industry code.",
              "example": "IndustryCode"
            },
            "name": {
              "type": "string",
              "description": "The name of the billing term category.",
              "example": "BillingTermCategoryName"
            },
            "description": {
              "type": "string",
              "description": "The description of the billing term category.",
              "example": "Description of the billing term category"
            },
            "billingTermCategoryCode": {
              "type": "string",
              "description": "The billing term category code.",
              "example": "BillingTermCategoryCode"
            },
            "currencyCode": {
              "type": "string",
              "description": "The currency code.",
              "example": "USD"
            },
            "isActive": {
              "type": "boolean",
              "description": "Indicates whether the billing term category is active. True if yes. Otherwise, false.",
              "example": true
            },
            "isSelectable": {
              "type": "boolean",
              "description": "Indicates the whether the billing term category is selectable for industry suppliers. True if yes. Otherwise, false.",
              "example": true
            }
          }
        }
      },
      "rotation-list": {
        "type": "array",
        "description": "An array of rotation objects.",
        "items": {
          "type": "object",
          "description": "Represents an industry rotation.",
          "required": [
            "rotationId",
            "industryCode",
            "tierCode",
            "name",
            "rotationCode",
            "isActive",
            "maxRequestCount"
          ],
          "properties": {
            "rotationId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the rotation."
            },
            "industryCode": {
              "type": "string",
              "description": "The code of the industry.",
              "example": "IndustryCode"
            },
            "tierCode": {
              "type": "string",
              "description": "The code of the tier.",
              "example": "TierCode"
            },
            "name": {
              "type": "string",
              "description": "The name of the rotation.",
              "example": "RotationName"
            },
            "rotationCode": {
              "type": "string",
              "description": "The code of the rotation.",
              "example": "RotationCode"
            },
            "description": {
              "type": "string",
              "description": "The description of the rotation.",
              "example": "Description of the rotation"
            },
            "isActive": {
              "type": "boolean",
              "description": "Indicates whether the rotation is active. True if yes. Otherwise, false.",
              "example": true
            },
            "maxRequestCount": {
              "type": "integer",
              "description": "The maximum request count for the rotation.",
              "example": 5
            }
          }
        }
      },
      "industry-list": {
        "type": "array",
        "description": "An array of industry objects.",
        "items": {
          "type": "object",
          "description": "Represents the industry.",
          "required": [
            "industryId",
            "geographyCode",
            "laborCategoryCode",
            "name",
            "industryCode",
            "isActive",
            "rateCardCalculation",
            "isResourceTrackingOnly"
          ],
          "properties": {
            "industryId": {
              "type": "string",
              "format": "uuid",
              "description": "The unique identifier of the industry."
            },
            "geographyCode": {
              "type": "string",
              "description": "The geography code.",
              "example": "GeographyCode"
            },
            "laborCategoryCode": {
              "type": "string",
              "description": "The labor category code.",
              "example": "LaborCategoryCode"
            },
            "name": {
              "type": "string",
              "description": "The name of the industry.",
              "example": "IndustryName"
            },
            "industryCode": {
              "type": "string",
              "description": "The industry code.",
              "example": "IndustryCode"
            },
            "description": {
              "type": "string",
              "description": "The description of the industry.",
              "example": "Description of the industry"
            },
            "isActive": {
              "type": "boolean",
              "description": "Indicates whether the industry is active. True if yes. Otherwise, false.",
              "example": true
            },
            "rateCardCalculation": {
              "description": "The rate card calculation for the industry.",
              "example": "billToPay",
              "type": "string",
              "enum": [
                "none",
                "billToPay",
                "payToBill"
              ]
            },
            "isResourceTrackingOnly": {
              "type": "boolean",
              "description": "Indicates whether the industry is resource tracking only. True if yes. Otherwise, false.",
              "example": false
            }
          }
        }
      },
      "tax-effective-from": {
        "type": "string",
        "enum": [
          "workDate",
          "stmtDate",
          "billPeriodStartDate"
        ]
      },
      "tax-type": {
        "type": "string",
        "enum": [
          "salesTax",
          "withholding"
        ]
      },
      "tax-calculation": {
        "type": "string",
        "enum": [
          "basic",
          "taxOnTax",
          "margin",
          "taxBasicTax"
        ]
      },
      "error": {
        "required": [
          "code",
          "message"
        ],
        "type": "object",
        "properties": {
          "code": {
            "enum": [
              "UNEXPECTED_ERROR",
              "VALIDATION_ERROR",
              "NOT_FOUND",
              "REQUEST_LIMIT_EXCEEDED",
              "UNSUPPORTED_API_VERSION",
              "CONFLICT"
            ],
            "type": "string",
            "description": "One of a server-defined set of error codes."
          },
          "message": {
            "type": "string",
            "description": "The human-readable representation of the error."
          },
          "target": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "error-response": {
        "type": "object",
        "description": "A list of errors.",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "required": [
                "code",
                "message"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "enum": [
                    "UNEXPECTED_ERROR",
                    "VALIDATION_ERROR",
                    "NOT_FOUND",
                    "REQUEST_LIMIT_EXCEEDED",
                    "UNSUPPORTED_API_VERSION",
                    "CONFLICT"
                  ],
                  "type": "string",
                  "description": "One of a server-defined set of error codes."
                },
                "message": {
                  "type": "string",
                  "description": "The human-readable representation of the error."
                },
                "target": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              }
            }
          }
        }
      },
      "empty-response": {
        "type": "null"
      },
      "rate-card-direction": {
        "type": "string",
        "enum": [
          "none",
          "billToPay",
          "payToBill"
        ]
      },
      "industry-model": {
        "type": "object",
        "description": "Represents the industry.",
        "required": [
          "industryId",
          "geographyCode",
          "laborCategoryCode",
          "name",
          "industryCode",
          "isActive",
          "rateCardCalculation",
          "isResourceTrackingOnly"
        ],
        "properties": {
          "industryId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the industry."
          },
          "geographyCode": {
            "type": "string",
            "description": "The geography code.",
            "example": "GeographyCode"
          },
          "laborCategoryCode": {
            "type": "string",
            "description": "The labor category code.",
            "example": "LaborCategoryCode"
          },
          "name": {
            "type": "string",
            "description": "The name of the industry.",
            "example": "IndustryName"
          },
          "industryCode": {
            "type": "string",
            "description": "The industry code.",
            "example": "IndustryCode"
          },
          "description": {
            "type": "string",
            "description": "The description of the industry.",
            "example": "Description of the industry"
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates whether the industry is active. True if yes. Otherwise, false.",
            "example": true
          },
          "rateCardCalculation": {
            "description": "The rate card calculation for the industry.",
            "example": "billToPay",
            "type": "string",
            "enum": [
              "none",
              "billToPay",
              "payToBill"
            ]
          },
          "isResourceTrackingOnly": {
            "type": "boolean",
            "description": "Indicates whether the industry is resource tracking only. True if yes. Otherwise, false.",
            "example": false
          }
        }
      },
      "rotation-model": {
        "type": "object",
        "description": "Represents an industry rotation.",
        "required": [
          "rotationId",
          "industryCode",
          "tierCode",
          "name",
          "rotationCode",
          "isActive",
          "maxRequestCount"
        ],
        "properties": {
          "rotationId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the rotation."
          },
          "industryCode": {
            "type": "string",
            "description": "The code of the industry.",
            "example": "IndustryCode"
          },
          "tierCode": {
            "type": "string",
            "description": "The code of the tier.",
            "example": "TierCode"
          },
          "name": {
            "type": "string",
            "description": "The name of the rotation.",
            "example": "RotationName"
          },
          "rotationCode": {
            "type": "string",
            "description": "The code of the rotation.",
            "example": "RotationCode"
          },
          "description": {
            "type": "string",
            "description": "The description of the rotation.",
            "example": "Description of the rotation"
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates whether the rotation is active. True if yes. Otherwise, false.",
            "example": true
          },
          "maxRequestCount": {
            "type": "integer",
            "description": "The maximum request count for the rotation.",
            "example": 5
          }
        }
      },
      "billing-term-category-model": {
        "type": "object",
        "description": "Represents a billing term category.",
        "required": [
          "billingTermCategoryId",
          "name",
          "billingTermCategoryCode",
          "currencyCode",
          "isActive",
          "isSelectable"
        ],
        "properties": {
          "billingTermCategoryId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the billing term category."
          },
          "industryId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the industry."
          },
          "industryCode": {
            "type": "string",
            "description": "The industry code.",
            "example": "IndustryCode"
          },
          "name": {
            "type": "string",
            "description": "The name of the billing term category.",
            "example": "BillingTermCategoryName"
          },
          "description": {
            "type": "string",
            "description": "The description of the billing term category.",
            "example": "Description of the billing term category"
          },
          "billingTermCategoryCode": {
            "type": "string",
            "description": "The billing term category code.",
            "example": "BillingTermCategoryCode"
          },
          "currencyCode": {
            "type": "string",
            "description": "The currency code.",
            "example": "USD"
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates whether the billing term category is active. True if yes. Otherwise, false.",
            "example": true
          },
          "isSelectable": {
            "type": "boolean",
            "description": "Indicates the whether the billing term category is selectable for industry suppliers. True if yes. Otherwise, false.",
            "example": true
          }
        }
      },
      "funding-model-model": {
        "type": "object",
        "description": "Represents a funding model.",
        "required": [
          "fundingModelId",
          "name",
          "fundingModelCode",
          "isActive"
        ],
        "properties": {
          "fundingModelId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the funding model."
          },
          "name": {
            "type": "string",
            "description": "The name of the funding model.",
            "example": "Funding Model Name"
          },
          "fundingModelCode": {
            "type": "string",
            "description": "The funding model code.",
            "example": "Code"
          },
          "description": {
            "type": "string",
            "description": "The description of the funding model.",
            "example": "Description of the funding model"
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates the status of the funding model. True if yes. Otherwise, false.",
            "example": true
          }
        }
      }
    },
    "securitySchemes": {
      "client_auth": {
        "type": "oauth2",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "https://integrations.auth.beeline.com/oauth/token",
            "scopes": {
              "read:tax_definition": "Read access to the Tax Definition service",
              "read:industry": "Read access to the Industry service",
              "read:billing_term": "Read Billing Term data",
              "read:invoice": "Read Invoice data"
            }
          }
        }
      }
    },
    "examples": {
      "rate-limit-error-response": {
        "value": {
          "errors": [
            {
              "code": "REQUEST_LIMIT_EXCEEDED",
              "message": "API calls quota exceeded! Maximum admitted 1000 per 1m."
            }
          ]
        }
      }
    }
  }
}