ServiceChannel Compliance API

The Compliance API from ServiceChannel — 3 operation(s) for compliance.

Operations 5

GET /workorders/{workOrderId}/compliance Get the current compliance details for a work order #
PUT /workorders/{workOrderId}/compliance Update the compliance for a work order #
PATCH /workorders/{workOrderId}/compliance Partial update the compliance for a work order #
GET /workorders/{workOrderId}/compliance/history Get the compliance history for a work order #
POST /workorders/compliances/attachments Add compliances attachment #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/servicechannel-compliance-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

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

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

OpenAPI Specification

servicechannel-compliance-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: bearer.v1
  title: Fixxbook.Bearer.Api.V1 AfterHours Compliance API
  isOdataApi: false
  relativePath: ''
  discoveryPath: docs/bearer.v1
  _isAuthorizedAccess: true
servers:
- url: https://sb2fixxbook.servicechannel.com:443/api
security:
- oauth2: []
tags:
- name: Compliance
paths:
  /workorders/{workOrderId}/compliance:
    get:
      tags:
      - Compliance
      summary: Get the current compliance details for a work order
      operationId: GETv3_workorders_{workOrderId}_compliance
      parameters:
      - name: workOrderId
        in: path
        description: Numeric Id of the Work order to perform action with.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Compliance on the specified work order are in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceResponse'
        '400':
          description: "Bad Request - the request could not be understood or was missing required parameters.\n            <br/>Error codes:\n            <br/> 502 - WorkOrder compliance has not been found"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            <br/> 504 — API call rejected by security permissions"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: "Something went wrong, and the server was unable to complete your request.\n            <br/>Error codes:\n            501 — Internal Error"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
    put:
      tags:
      - Compliance
      summary: Update the compliance for a work order
      operationId: PUTv3_workorders_{workOrderId}_compliance
      parameters:
      - name: workOrderId
        in: path
        description: Numeric Id of the Work order to perform action with.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: Indicates that the request succeeded and that the requested information is in the response.
        '400':
          description: "Bad Request - the request could not be understood or was missing required parameters.\n            <br/>Error codes:\n            <br/> 503 - Request is invalid"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            <br/> 504 — API call rejected by security permissions"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: "Something went wrong, and the server was unable to complete your request.\n            <br/>Error codes:\n            501 — Internal Error"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  description: File to attach to the compliance
                  format: binary
                UpdateWorkOrderComplianceRequest:
                  type: application/json
                  description: "Request to update a compliance for a work order.\n            <br />Pass the following parameters in the request:\n             • **Status**: Compliance Status.\n              ◦ **Open**.\n              ◦ **Expired**.\n              ◦ **InvalidDocument**.\n              ◦ **Pass**.\n              ◦ **PassWithRecommendation**.\n              ◦ **Fail**.\n             • **ValidFromDate**: Only when Status is Pass or Pass with Recommendation.\n             • **ValidToDate**: Only when Status is Pass or Pass with Recommendation.\n             • **Comment**: Available for all statuses.\n             • **Attachment**: Overrides the file sent via formData.\n            <br />**Example Object for the Compliance Request**\n            \n                {\n                  \"Status\": \"Open\",\n                  \"ValidFromDate\": null,\n                  \"ValidToDate\": null,\n                  \"Comment\": \"test comment\",\n                  \"Attachment\": \n                  {\n                    \"Name\": \"\", \n                    \"Uri\": \"\"\n                  }\n                }"
    patch:
      tags:
      - Compliance
      summary: Partial update the compliance for a work order
      operationId: PATCHv3_workorders_{workOrderId}_compliance
      parameters:
      - name: workOrderId
        in: path
        description: Numeric Id of the Work order to perform action with.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: Indicates that the request succeeded and that the requested information is in the response.
        '400':
          description: "Bad Request - the request could not be understood or was missing required parameters.\n            <br/>Error codes:\n            <br/> 503 - Request is invalid"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            <br/> 504 — API call rejected by security permissions"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: "Something went wrong, and the server was unable to complete your request.\n            <br/>Error codes:\n            501 — Internal Error"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PartialUpdateWorkOrderComplianceRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PartialUpdateWorkOrderComplianceRequest'
        description: Request to update a compliance for a work order.
        required: true
  /workorders/{workOrderId}/compliance/history:
    get:
      tags:
      - Compliance
      summary: Get the compliance history for a work order
      operationId: GETv3_workorders_{workOrderId}_compliance_history
      parameters:
      - name: workOrderId
        in: path
        description: Numeric Id of the Work order to perform action with.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Compliance history on the specified work order are in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceHistoryResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceHistoryResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            <br/> 504 — API call rejected by security permissions"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: "Something went wrong, and the server was unable to complete your request.\n            <br/>Error codes:\n            501 — Internal Error"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
  /workorders/compliances/attachments:
    post:
      tags:
      - Compliance
      summary: Add compliances attachment
      operationId: POSTv3_workorders_compliances_attachments
      responses:
        '201':
          description: Created indicates that the request resulted in a new resource created before the response was sent.
        '400':
          description: Bad Request - the request could not be understood or was missing required parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "Indicates that the requested resource requires authentication.\n            <br/>Error codes:\n            <br/> 504 - API call rejected by security permissions;"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: Indicates that a generic error has occurred on the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  description: File to attach to Comment
                  format: binary
components:
  schemas:
    ServiceChannel.Api.Model.Workorders.Compliance.ComplianceAttachment:
      type: object
      properties:
        Name:
          type: string
        Uri:
          type: string
    ? ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_ServiceChannel.Api.Model.Workorders.Compliance.ComplianceAttachment
    : type: object
      properties:
        Value:
          $ref: '#/components/schemas/ServiceChannel.Api.Model.Workorders.Compliance.ComplianceAttachment'
    ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceAttachment:
      type: object
      properties:
        Name:
          type: string
        Uri:
          type: string
    ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceResponse:
      type: object
      properties:
        Status:
          type: string
        Attachment:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceAttachment'
        ValidFromDate:
          format: date-time
          type: string
        ValidToDate:
          format: date-time
          type: string
        RemediationDueDate:
          format: date-time
          type: string
        Comment:
          type: string
        HistoryItemsCount:
          format: int32
          type: integer
    ? ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_ServiceChannel.Api.Model.Workorders.Compliance.WorkOrderComplianceStatus
    : type: object
      properties:
        Value:
          enum:
          - Open
          - Expired
          - InvalidDocument
          - Pass
          - PassWithRecommendation
          - Fail
          - FailWithRemediation
          type: string
    ServiceChannel.Services.WebApi.Models.Response.Compliance.GetComplianceHistoryResponse:
      type: object
      properties:
        Items:
          type: array
          items:
            $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceHistoryItem'
    ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.String:
      type: object
      properties:
        Value:
          type: string
    ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.Nullable_System.DateTimeOffset:
      type: object
      properties:
        Value:
          format: date-time
          type: string
    ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceHistoryItem:
      type: object
      properties:
        Status:
          type: string
        Attachment:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceAttachment'
        ValidFromDate:
          format: date-time
          type: string
        ValidToDate:
          format: date-time
          type: string
        RemediationDueDate:
          format: date-time
          type: string
        Comment:
          type: string
        UpdatedBy:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceUser'
        UpdatedDate:
          format: date-time
          type: string
    ServiceChannel.Services.WebApi.Models.Response.Compliance.ComplianceUser:
      type: object
      properties:
        Id:
          format: int32
          type: integer
        UserName:
          type: string
        Name:
          type: string
        FullName:
          type: string
        Email:
          type: string
    ServiceChannel.Services.WebApi.Models.Request.Compliance.PartialUpdateWorkOrderComplianceRequest:
      type: object
      properties:
        Status:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_ServiceChannel.Api.Model.Workorders.Compliance.WorkOrderComplianceStatus'
        Attachment:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_ServiceChannel.Api.Model.Workorders.Compliance.ComplianceAttachment'
        ValidFromDate:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.Nullable_System.DateTimeOffset'
        ValidToDate:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.Nullable_System.DateTimeOffset'
        RemediationDueDate:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.Nullable_System.DateTimeOffset'
        Comment:
          $ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Compliance.PatchedDataWrapper_System.String'
    System.Object:
      type: object
      properties: {}
    ServiceChannel.Services.Messaging.ErrorResponse:
      description: The error response object
      type: object
      properties:
        ErrorCodes:
          description: The list of error codes. Go to /basics/general/response-codes/#internal-error-codes-and-messages to map error codes to error reasons.
          type: array
          items:
            enum:
            - NotAllowed
            - EmptyProvider
            - InvalidProviderId
            - UnknownProvider
            - ProviderAlreadyExists
            - ProviderIdNotExists
            - TimeoutExpiredError
            - EmptyContract
            - ContractUndefined
            - EmptySubscriber
            - InvalidSubscriberId
            - UnknownSubscriber
            - InactiveSubscriber
            - EmptySubscriberId
            - SubscriberIdNotExists
            - InternalError
            - DataNotFound
            - BadRequest
            - UnAuthorized
            - UnSupportedApplication
            - SubsidiaryUserDisabled
            - EmptyLocation
            - InvalidLocationId
            - UnknownLocation
            - LocationNotBelongsToSubscriber
            - EmptyLocationCountry
            - LocationAlreadyExists
            - InvalidStoreId
            - LocationEmptyState
            - NoAccessToLocation
            - LocationAddressValidationError
            - LocationAddressRequestValidationError
            - InvalidLocationNoteHeader
            - NoAccessToUpdateProtectedNote
            - InvalidBusinessHoursFormat
            - WorkingHoursIntersect
            - InvalidDayOfWeek
            - DuplicateDayOfWeek
            - InvalidBusinessHoursInitialSetup
            - BusinessHoursIsEmpty
            - InvalidHolidayRepeatByType
            - EmptyHolidayListOfDays
            - EmptyHolidayListOfMonths
            - InvalidHolidayMonthName
            - InvalidHolidayNameLength
            - InvalidHolidayRepeatEvery
            - DuplicateMonth
            - InvalidHolidayFrequency
            - InvalidHolidayStartDate
            - InvalidCloseAllDay
            - HolidayDoesNotExist
            - InvalidFormatParameter
            - InvalidLocationCity
            - InvalidLocationZip
            - InvalidLocationLatitude
            - InvalidLocationLongitude
            - InvalidLocationEmail
            - InvalidLocationName
            - InvalidLocationState
            - InvalidLocationAddlAddress
            - InvalidLocationMainAddress
            - InvalidLocationCountry
            - InvalidLocationRegion
            - InvalidLocationDistrict
            - InvalidLocationPhone
            - InvalidLocationContact
            - InvalidLocationFaxNumber
            - LocationCountryNotFound
            - LocationStateNotFound
            - LocationCityNotFound
            - LocationIdNotExists
            - InvalidLocationEmailLength
            - LocationStateIdNotFound
            - IncorrectCombinationStateAndStateId
            - InvalidSubscriberIds
            - InvalidLocalizationSettings
            - LandlordResponsibilityNotFound
            - LandlordResponsibilityAlreadyExists
            - EmptyLocationIds
            - AttachmentNotExist
            - InvalidTradeId
            - InvalidCategoryId
            - InvalidOverrideCategoryId
            - InvalidOverridePriorityId
            - LeaseNoteExceedMaxLength
            - InvalidOverrideProviderRank
            - InvalidOverrideNTE
            - DuplicateRows
            - InvalidPriorityId
            - LocationNotFound
            - EmptyTrade
            - InvalidTrade
            - TradeNotBelongsToSubscriber
            - InvalidPrimaryTrade
            - InvalidTradeForSubscriber
            - InvalidCategoryForSubscriber
            - GlCodeAlreadyExists
            - GlCodeNotExists
            - InvalidGlCodeUpdate
            - EmptyGlCode
            - TradeAlreadyExists
            - InvalidNTETrade
            - TradeNotExists
            - TradeAlreadyInUse
            - TradeWithTheSameNameHasBeenDeleted
            - TradeInUsePMServices
            - TradeInUseProposalError
            - TradeInUseRFPError
            - TradeInUseChecklistError
            - TradeInUseBudgetControl
            - TradeInUseGlCode
            - TradeInUseDynamicProviderAssignments
            - TradeInUseInvoice
            - TradeInUseLandlordResponsibilities
            - TradeInUseWO
            - TradeInUseEquipmentType
            - TradeInUseRFP
            - TradeInUseConnector
            - TradeInUseContractedService
            - TradeInUseIVR
            - TradeInUseSiteAccess
            - TradeInUseGLCodes
            - TradeInUseCIWO
            - TradeInUseOrganizationPermissions
            - TradeСreationError
            - EmptyUser
            - EmptyCreatedBy
            - InvalidUserName
            - NotProviderUser
            - UserHasNoPermissions
            - RestrictedAccount
            - UserAlreadyExists
            - UserHasNoPermissionsEditWO
            - UserEmailAddressIsMissing
            - UserIsNotRTAdmin
            - InvalidSubsriberProviderId
            - LanguageNameNotFound
            - InvalidLanguageId
            - LanguageIdNotFound
            - UseBothSubscriberIdProviderId
            - EmptyWoProblem
            - InvalidWoProblemSource
            - InvalidWoProblemDescription
            - InvalidWoProblemCode
            - InvalidWoStatus
            - InvalidWoNte
            - InvalidWoCaller
            - InvalidWoCallDate
            - InvalidWoScheduledDate
            - InvalidWoScheduledDateGreaterThanMaxAllowed
            - EmptyWoCategory
            - InvalidWoCategory
            - EmptyWoPriority
            - InvalidWoPriority
            - InvalidWoCurrency
            - InvalidWoSetupId
            - AttachmentsRequired
            - InvalidWoIdentifier
            - EquipmentRequired
            - WoNteOverflow
            - InvalidWoPurchaseNumber
            - InvalidWoStateForUpdate
            - InvalidPagingParameter
            - InvalidWoNumber
            - CheckInDenied
            - CheckOutDenied
            - WoScheduledDateLessThenReassignDate
            - WoScheduledDateLessThenCallDate
            - InvalidWoActionReason
            - EmptySubscriberProperty
            - WorkOrderUpdateError
            - MissedWoNteDetails
            - InvalidLinkedWoIdentifier
            - WoIsOnHold
            - InvalidWoTrade
            - InvalidStarScore
            - WorkOrderAlreadyRated
            - AttachmentThumbnailNotAvailable
            - InvalidWoIdentifierOrPin
            - InvalidTimeZoneHeader
            - RefrigerantWasUsedShouldBeYesOrNo
            - CheckInDeniedOutsideGeolocation
            - CheckOutDeniedOutsideGeolocation
            - LeakDetectorAuditShouldBeCreated
            - CheckInOutPremature
            - WorkOrderAttachmentsSizeExceeded
            - WorkOrderNotFound
            - WorkOrderCreateError
            - InvalidWoProjectedCompletionDate
            - InvalidFollowUpWo
            - InvalidWeatherEventId
            - InvalidSiteAuditLinkedWo
            - InvalidSetupId
            - IssueListNotFound
            - InvalidIssueListField
            - SiteAuditCompleted
            - CheckSiteAuditError
            - SaveSiteAuditError
            - RemoveSiteAuditError
            - InactiveTemplateType
            - SiteAuditNotFound
            - SiteAuditUpdateError
            - InvalidSiteAuditParameters
            - InvalidAdditionalApprovalCode
            - InvalidAdditionalApprovalCodeValue
            - AdditionalApprovalCodeIsDisabled
            - InvalidOtherDesc
            - InvalidTax2Name
            - InvoiceInconsistentAmounts
            - InvoiceInvalidTotal
            - InvoiceTotalGreaterNte
            - InvoiceExists
            - CreatingInvoiceError
            - DuplInvNumber
            - InvoiceTotalNull
            - InvComplDateNull
            - InvDateLessComplDate
            - InvoiceNotAuto
            - ESignatureRequired
            - InvWoNotFound
            - InvWrongWoCurr
            - InvWoCurrNotFound
            - InvoicingDisabled
            - InvCreationUnexpectedRes
            - InvoiceInvalidLaborAmount
            - InvoiceInvalidMaterialAmount
            - InvDateOld
            - InvDateGreater
            - InvoiceMaterialDescriptionLengthOverflow
            - InvoiceTaxNotValidated
            - InvoiceMaterialPartNumberLengthOverflow
            - TaxValidationError
            - TaxExemptionError
            - InvalidInvoiceNumber
            - GetApprovalLevelsError
            - InvoiceAddUsersToMliLevelsError
            - InvoiceAddDeleteLocationsToMliLevelUserError
            - InvoiceUpdateMLiLevelError
            - InvoiceDeleteMliLevelError
            - InvoiceDeleteUsersFromMliLevelError
            - ApprovalLevelNameLengthOverflow
            - GstTaxError
            - Tax2Error
            - GetApprovalLevelsAndLocationsByUserError
            - GetAssignedUserShortInfoError
            - AssignAllLocationsToApprovalLevelAndUserError
            - GetLocationsForApprovalLevelAndAssignedUserError
            - GetLocationsBySubscriberError
            - AssignUserWithLocationsToApprovalLevelError
            - ReAssignUserWithLocationsToNewApprovalLevelError
            - ReAssignLocationsToApprovalLevelAndUserError
            - OutstandingBalance
            - InvoiceTaxDetailsEmpty
            - InvoiceTaxDetailsIncorrectSum
            - MultipleUsersForLocationIsNotAllowed
            - UserAssignedToOtherLevel
            - UserDoesNotExist
            - LaborLineItemRequired
            - MaterialLineItemRequired
            - InvoiceDoesntExist
            - InvoiceStarUnstarFailed
            - InvoiceBatchUpdateInvalidInvoiceStatusError
            - InvoiceBatchUpdateLimitExceededError
            - InvoiceNotAvailableForCurrentUser
            - InvoiceBatchUpdateInvalidRuleSetStructure
            - InvoiceBatchUpdateInvalidMliStructure
            - InvoiceBatchUpdateStatusError
            - InvoiceMaterialUnitTypeInvalid
            - ExistingBatchNumber
            - InvoiceResolutionTextRequired
            - GetInvoiceDefaultApprovalCodesError
            - InvoiceInvalidTravelAmount
            - InvoiceTravelDescriptionLengthOverflow
            - InvoiceTravelUnitTypeInvalid
            - TravelLineItemRequired
            - TravelDetailsDisabled
            - OnOffShoreDisabled
            - InvoiceInvalidLaborCount
            - InvoiceInvalidMaterialCount
            - InvoiceInvalidTravelCount
            - SubscriberNotRegisteredForTaxValidation
            - ManyDecimalsInAmountError
            - DecimalPartQstTaxError
            - LaborRatesDiscrepancy
            - PayInvoicesError
            - InvoiceNumberRequirementsError
            - InvoiceNumberIncorrect
            - InvoiceNumberRegExPatternError
            - GetInvoicesPendingApprovalByLocationError
            - ReAssignInvoicesToUsersFailed
            - ReAssignInvoicesUsersMatched
            - GetUsersForReassignInvoiceError
            - InvalidTimeRangeActivity
            - OutsourcedSourceInvoiceNotFound
            - OthersLineItemsDisabled
            - InvoiceInvalidOtherAmount
            - InvoiceInvalidOtherCount
            - InvoiceOtherDescriptionLengthOverflow
            - OtherLineItemRequired
            - OtherLineItemsNotNegativeValueRequired
            - InvalidLaborSkillLevel
            - InvalidLaborType
            - InvalidTechnicianQuantity
            - GetInvoicesCommonCategoriesError
            - InvoiceExplainDisputeEmpty
            - InvoiceAdditionalApprovalCodeHeaderError
            - TemplateParseSuccess
            - TemplateIncorrectHeaderError
            - TemplateEmptyTemplateError
            - TemplateWrongFieldsCountError
            - TemplateFieldNotFoundError
            - TemplateFieldRequiredError
            - TemplateParseIntError
            - TemplateFieldSizeError
            - TemplateInvalidValueError
            - TemplateFieldFormatError
            - TemplateFieldMaxRangeError
            - TemplateFieldMinRangeError
            - TemplateProviderNotEntered
            - TemplateInvalidSubscriberError
            - TemplateVendorNotFoundError
            - TemplateMissedProviderError
            - TemplateProviderNotFoundError
            - TemplateProviderSubsccriberLinkError
            - TemplateTradeDispatchRankError
            - TemplateInvalidTradeForSubscriberError
            - TemplateStoreNotFoundError
            - TemplateNotStoresForStateError
            - TemplateNotStoresForCountryError
            - TemplateNotStoresForDistrictError
            - TemplateNotStoresForRegionError
            - TemplateMultiplePimaryProvidersForTradeStoreError
            - TemplateDuplicatePrimaryRelationshipError
            - TemplateAmbiguousDataError
            - TemplateIncorrectSubscriber
            - TemplateDuplicateRanking
            - TemplateLongitudeRangeError
            - TemplateLatitudeRangeError
            - InvoiceMaterialPartNameLengthOverflow
            - TemplateTradeLocationExclusion
            - TemplateInvalidStateError
            - TemplateMissedSubscriberError
            - TemplateMissedStoreIdError
            - TemplateInvalidSubscriberIdError
            - TemplateOpenCloseDateError
            - TemplateInvalidCountryError
            - TemplateInvalidStateForCountryError
            - TemplateInvalidLocationTypeError
            - TemplateMissingFullAndShortNameError
            - TemplateMissingCountryError
            - TemplateDuplicatedDataError
            - TemplateParentLocationNotFoundError
            - TemplateParseDateTimeError
            - TemplateParseDecimalError
            - TemplateSquareValueRangeError
            - TemplateInvalidSquareMeasureError
            - TemplateTypeLabelCanNotBeUpdatedError
            - TemplateTypeLabelHaveToBeLocationForNotInventory
            - TemplateInvalidPrimarySupplyLocation
            - TemplateInvalidHomestoreLocationNumber
            - TemplateErrorDuringCreation
            - TemplateLocationNotFoundError
            - TemplateDuplicatedLocationFoundError
            - TemplateInvalidLocationHeaderError
            - TemplateDuplicatedLocationHeaderError
            - TemplateHeaderContainsEmptyFieldsError
            - TemplateLocHeadersShortHeaderError
            - TemplateHeaderContainsDuplicatesError
            - TemplateLocationNotesStoreIdFieldLengthError
            - TemplateLocationNotesNoteValueFieldLengthError
            - TemplateErrorInvalidZipCode
            - TemplateMissingLocationNoteHeader
            - TemplateMissingLocationNoteIdHeader
            - TemplateInvalidSecondarySupplyLocation
            - TemplateLocationWasNotCreated
            - TemplateTruckNameIsEmpty
            - TemplateWrongFormat
            - TemplateSubscriberN

# --- truncated at 32 KB (82 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/servicechannel/refs/heads/main/openapi/servicechannel-compliance-api-openapi.yml