Mews Accounting categories API

The Accounting categories API from Mews — 1 operation(s) for accounting categories.

OpenAPI Specification

mews-accounting-categories-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Connector Account notes Accounting categories API
  description: General-purpose API that enables partners of Mews to access data and services in Mews Operations
  termsOfService: https://www.mews.com/en/terms-conditions/partners
  contact:
    name: Partner success
    email: partnersuccess@mews.com
  version: v1
servers:
- url: https://api.mews.com
tags:
- name: Accounting categories
paths:
  /api/connector/v1/accountingCategories/getAll:
    post:
      tags:
      - Accounting categories
      summary: Get all accounting categories
      description: "Returns all accounting categories of the enterprise associated with the connector integration. \nNote this operation uses [Pagination](https://mews-systems.gitbook.io/connector-api/guidelines/pagination/) and supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property)."
      operationId: accountingCategories_getAll
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountingCategoryFilterParameters'
            example:
              ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
              AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
              Client: Sample Client 1.0.0
              EnterpriseIds:
              - 3fa85f64-5717-4562-b3fc-2c963f66afa6
              - 4d0201db-36f5-428b-8d11-4f0a65e960cc
              AccountingCategoryIds:
              - 0cf7aa90-736f-43e9-a7dc-787704548d86
              - 0b9560fb-055d-47d3-a6d4-e579c44ca558
              UpdatedUtc:
                StartUtc: '2023-10-01T00:00:00Z'
                EndUtc: '2023-10-31T00:00:00Z'
              ActivityStates:
              - Active
              Limitation:
                Count: 10
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountingCategoryResult'
              example:
                AccountingCategories:
                - Classification: Accommodation
                  EnterpriseId: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  Code: '345'
                  CostCenterCode: '2589'
                  ExternalCode: '3010'
                  Id: 0cf7aa90-736f-43e9-a7dc-787704548d86
                  IsActive: true
                  LedgerAccountCode: '311100'
                  Name: Accommodation
                  PostingAccountCode: '602020'
                  CreatedUtc: '2023-10-01T11:48:57Z'
                  UpdatedUtc: '2023-10-28T11:48:57Z'
                - Classification: null
                  EnterpriseId: 4d0201db-36f5-428b-8d11-4f0a65e960cc
                  Code: '100'
                  CostCenterCode: '2589'
                  ExternalCode: ABVG
                  Id: 0b9560fb-055d-47d3-a6d4-e579c44ca558
                  IsActive: true
                  LedgerAccountCode: '311100'
                  Name: Alcoholic Beverage
                  PostingAccountCode: '602020'
                  CreatedUtc: '2023-10-01T11:48:57Z'
                  UpdatedUtc: '2023-10-28T11:48:57Z'
                Cursor: 0b9560fb-055d-47d3-a6d4-e579c44ca558
        '400':
          description: Error caused by the client app, e.g. in case of malformed request or invalid identifier of a resource. In most cases, such an error signifies a bug in the client app (consumer of the API).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '401':
          description: Error caused by usage of invalid ClientToken, AccessToken, or you may not have the necessary permission to use the endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '403':
          description: Server error that should be reported to the end user of the client app. Happens for example when the server-side validation fails or when a business-logic check is violated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '408':
          description: Error caused by heavy request that takes too long to process (typically tens of seconds). To get around this, request data in smaller batches. For more information, see [Request timeouts](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-timeouts)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '204':
          description: Server has successfully fulfilled the request and there is no additional information to send back.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '429':
          description: Error caused by too many requests sent in a given amount of time. Response contains `Retry-After` header indicating how long the user agent should wait before making a follow-up request. For more information, see [Request limits](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-limits).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
        '500':
          description: Unexpected error on the Mews side. This may be due to a software fault. If such a situation occurs, the error will be logged and the development team notified, however you can raise an issue through GitHub on our [documentation repository](https://github.com/MewsSystems/gitbook-connector-api).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
components:
  schemas:
    ConnectorApiExceptionResult:
      title: ConnectorApiExceptionResult
      type: object
      properties:
        Message:
          type: string
          nullable: true
        RequestId:
          type: string
          nullable: true
        Details:
          nullable: true
      additionalProperties: false
      x-schema-id: ConnectorApiExceptionResult
    AccountingCategoryClassificationEnum:
      title: Accounting category classification
      enum:
      - Accommodation
      - FoodAndBeverage
      - Taxes
      - Payments
      - ExternalRevenue
      - SundryIncome
      - Wellness
      - Sport
      - Technology
      - Facilities
      - Events
      - Tourism
      type: string
      description: '


        Accommodation


        FoodAndBeverage


        Taxes


        Payments


        ExternalRevenue


        SundryIncome


        Wellness


        Sport


        Technology


        Facilities


        Events


        Tourism'
      x-enumNames:
      - Accommodation
      - FoodAndBeverage
      - Taxes
      - Payments
      - ExternalRevenue
      - SundryIncome
      - Wellness
      - Sport
      - Technology
      - Facilities
      - Events
      - Tourism
      x-enumDescriptions:
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
    ActivityStates:
      title: Activity state
      enum:
      - Deleted
      - Active
      type: string
      description: Activity states used for filtering.
    Limitation:
      title: Limitation
      required:
      - Count
      type: object
      properties:
        Count:
          type: integer
          format: int32
        Cursor:
          type: string
          format: uuid
          nullable: true
      additionalProperties: false
      description: Limitation on the quantity of data returned.
      x-schema-id: Limitation
    AccountingCategory:
      title: Accounting category
      required:
      - CreatedUtc
      - EnterpriseId
      - Id
      - IsActive
      - Name
      - UpdatedUtc
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier of the category.
          format: uuid
        EnterpriseId:
          type: string
          description: Unique identifier of the [Enterprise](https://mews-systems.gitbook.io/connector-api/operations/enterprises/#enterprise).
          format: uuid
        IsActive:
          type: boolean
          description: Whether the accounting category is still active.
        Name:
          minLength: 1
          type: string
          description: Name of the category.
        Code:
          type: string
          description: Code of the category within Mews.
          nullable: true
        ExternalCode:
          type: string
          description: Code of the category in external systems.
          nullable: true
        LedgerAccountCode:
          type: string
          description: Code of the ledger account (double entry accounting).
          nullable: true
        PostingAccountCode:
          type: string
          description: Code of the posting account (double entry accounting).
          nullable: true
        CostCenterCode:
          type: string
          description: Code of cost center.
          nullable: true
        Classification:
          allOf:
          - $ref: '#/components/schemas/AccountingCategoryClassificationEnum'
          description: 'Classification of the accounting category allowing cross-enterprise reporting.


            Accommodation


            FoodAndBeverage


            Taxes


            Payments


            ExternalRevenue


            SundryIncome


            Wellness


            Sport


            Technology


            Facilities


            Events


            Tourism'
          nullable: true
        CreatedUtc:
          minLength: 1
          type: string
          description: Creation date and time of the accounting category in UTC timezone in ISO 8601 format.
          format: date-time
        UpdatedUtc:
          minLength: 1
          type: string
          description: Last update date and time of the accounting category in UTC timezone in ISO 8601 format.
          format: date-time
      additionalProperties: false
      x-schema-id: AccountingCategory
    TimeFilterInterval:
      title: Time interval
      type: object
      properties:
        StartUtc:
          type: string
          format: date-time
          nullable: true
        EndUtc:
          type: string
          format: date-time
          nullable: true
      additionalProperties: false
      description: "When a time interval is used for **filtering** (for example in parameters such as `CreatedUtc.StartUtc` / `CreatedUtc.EndUtc`), the following rules apply:\r\n\r\n- **Start equals End (equality mode)**  \r\n  If `StartUtc` and `EndUtc` are exactly the same timestamp, the filter is treated as an equality check for that precise moment in time:\r\n  \r\n  ```\r\n  CreatedUtc == StartUtc\r\n  ```\r\n  \r\n  This does not represent an interval; only records with `CreatedUtc` equal to that exact instant are returned.\r\n\r\n- **Start differs from End (interval mode)**  \r\n  If `StartUtc` and `EndUtc` are different, the filter is evaluated as a half-open interval:\r\n  \r\n  ```\r\n  StartUtc <= CreatedUtc < EndUtc\r\n  ```\r\n  \r\n  In other words, the start is inclusive and the end is exclusive.\r\n\r\nMake sure your integration takes inclusive Start / exclusive End behavior of time intervals into account so that no records at the boundaries are omitted."
      x-schema-id: TimeFilterInterval
    AccountingCategoryResult:
      title: AccountingCategoryResult
      required:
      - AccountingCategories
      type: object
      properties:
        AccountingCategories:
          type: array
          items:
            $ref: '#/components/schemas/AccountingCategory'
          description: Accounting categories of the enterprise.
        Cursor:
          type: string
          description: Unique identifier of the item one newer in time order than the items to be returned. If Cursor is not specified, i.e. null, then the latest or most recent items will be returned.
          format: uuid
          nullable: true
      additionalProperties: false
      x-schema-id: AccountingCategoryResult
    AccountingCategoryFilterParameters:
      title: AccountingCategoryFilterParameters
      required:
      - AccessToken
      - Client
      - ClientToken
      - Limitation
      type: object
      properties:
        ClientToken:
          minLength: 1
          type: string
          description: Token identifying the client application.
        AccessToken:
          minLength: 1
          type: string
          description: Access token of the client application.
        Client:
          minLength: 1
          type: string
          description: Name and version of the client application.
        Limitation:
          allOf:
          - $ref: '#/components/schemas/Limitation'
          description: Limitation on the quantity of data returned and optional Cursor for the starting point of data.
        EnterpriseIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the Enterprises. If not specified, the operation returns data for all enterprises within scope of the Access Token.
          nullable: true
        AccountingCategoryIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the requested [Accounting categories](https://mews-systems.gitbook.io/connector-api/operations/#accounting-category).
          nullable: true
        UpdatedUtc:
          title: Time interval
          allOf:
          - $ref: '#/components/schemas/TimeFilterInterval'
          description: Last update date and time of the accounting category in UTC timezone in ISO 8601 format.
          nullable: true
          x-max-interval-in-months: 3
        ActivityStates:
          type: array
          items:
            $ref: '#/components/schemas/ActivityStates'
          description: Whether to return only active, only deleted or both records.
          nullable: true
      additionalProperties: false
      x-schema-id: AccountingCategoryFilterParameters