Mews Service overbooking limits API

The Service overbooking limits API from Mews — 3 operation(s) for service overbooking limits.

OpenAPI Specification

mews-com-service-overbooking-limits-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: BookingEngineApi Account notes Service overbooking limits API
  version: v1
servers:
- url: https://api.mews.com
tags:
- name: Service overbooking limits
paths:
  /api/connector/v1/serviceOverbookingLimits/getAll:
    post:
      tags:
      - Service overbooking limits
      summary: Get all service overbooking limits
      description: Returns all service overbooking limits. Note 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: serviceOverbookingLimits_getAll
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverbookingLimitFilterParameters'
            example:
              ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
              AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
              Client: Sample Client 1.0.0
              ServiceIds:
              - bd26d8db-86da-4f96-9efc-e5a4654a4a94
              - 8c1bd738-a505-4b29-aa71-9ecc2982b843
              ServiceOverbookingLimitIds:
              - e654f217-d1b5-46be-a820-e93ba568dfac
              CollidingUtc:
                StartUtc: '2024-11-01T00:00:00Z'
                EndUtc: '2024-11-30T00:00:00Z'
              UpdatedUtc:
                StartUtc: '2024-11-01T00:00:00Z'
                EndUtc: '2024-11-30T00:00:00Z'
              ActivityStates:
              - Active
              EnterpriseIds:
              - 3fa85f64-5717-4562-b3fc-2c963f66afa6
              - 4d0201db-36f5-428b-8d11-4f0a65e960cc
              Limitation:
                Count: 100
                Cursor: e7f26210-10e7-462e-9da8-ae8300be8ab7
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceOverbookingLimitResult'
              example:
                ServiceOverbookingLimits:
                - Id: e654f217-d1b5-46be-a820-e93ba568dfac
                  ServiceId: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  FirstTimeUnitStartUtc: '2024-11-01T00:00:00Z'
                  LastTimeUnitStartUtc: '2024-11-30T00:00:00Z'
                  Limit: 10
                  CreatedUtc: '2024-01-31T10:48:06Z'
                  UpdatedUtc: '2024-01-31T10:58:06Z'
                  IsActive: true
                Cursor: e654f217-d1b5-46be-a820-e93ba568dfac
        '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'
      x-restricted: true
  /api/connector/v1/serviceOverbookingLimits/set:
    post:
      tags:
      - Service overbooking limits
      summary: Set service overbooking limits
      description: Adds new service overbooking limits with the specified conditions. Past overbooking limits cannot be updated outside of `OperationalEditableHistoryInterval`. Care is needed to specify `FirstTimeUnitStartUtc` and `LastTimeUnitStartUtc` in the correct format - see [Datetimes](https://mews-systems.gitbook.io/connector-api/guidelines/serialization#datetimes). This operation supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property/).
      operationId: serviceOverbookingLimits_set
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverbookingLimitSetParameters'
            example:
              ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
              AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
              Client: Sample Client 1.0.0
              ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
              SetServiceOverbookingLimits:
              - FirstTimeUnitStartUtc: '2024-11-01T00:00:00Z'
                LastTimeUnitStartUtc: '2024-11-30T00:00:00Z'
                Limit: 10
              EnterpriseId: 3fa85f64-5717-4562-b3fc-2c963f66afa6
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unit'
        '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'
      x-restricted: true
  /api/connector/v1/serviceOverbookingLimits/clear:
    post:
      tags:
      - Service overbooking limits
      summary: Clear service overbooking limits
      description: Deletes service overbooking limits that exactly match the specified conditions. This operation is intended to be used alongside `serviceOverbookingLimits/set`. The specified conditions must be met exactly. The time interval, however, does not need to correspond to an existing service overbooking limit in the system, instead the API uses a splicing algorithm to work out how to divide up any existing service overbooking limit to meet the specified time interval. Past overbooking limits cannot be cleared outside of `OperationalEditableHistoryInterval`. Care is needed to specify `FirstTimeUnitStartUtc` and `LastTimeUnitStartUtc` in the correct format - see [Datetimes](https://mews-systems.gitbook.io/connector-api/guidelines/serialization#datetimes). This operation supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property/).
      operationId: serviceOverbookingLimits_clear
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverbookingLimitClearParameters'
            example:
              ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
              AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
              Client: Sample Client 1.0.0
              ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
              ClearServiceOverbookingLimits:
              - FirstTimeUnitStartUtc: '2024-11-01T00:00:00Z'
                LastTimeUnitStartUtc: '2024-11-30T00:00:00Z'
              EnterpriseId: 3fa85f64-5717-4562-b3fc-2c963f66afa6
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unit'
        '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'
      x-restricted: true
components:
  schemas:
    ServiceOverbookingLimitFilterParameters:
      title: ServiceOverbookingLimitFilterParameters
      required:
      - AccessToken
      - Client
      - ClientToken
      - Limitation
      - ServiceIds
      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
        ServiceIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of `Service` associated with the service overbooking limits.
        ServiceOverbookingLimitIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the service overbooking limits.
          nullable: true
        CollidingUtc:
          title: Time interval
          allOf:
          - $ref: '#/components/schemas/TimeFilterInterval'
          description: Interval in which the service overbooking limit is active.
          nullable: true
        UpdatedUtc:
          title: Time interval
          allOf:
          - $ref: '#/components/schemas/TimeFilterInterval'
          description: Interval in which the service overbooking limits were updated.
          nullable: true
          x-max-interval-in-months: 3
        ActivityStates:
          type: array
          items:
            $ref: '#/components/schemas/ActivityState'
          description: Whether to return only active, only deleted, or both types of record. If not specified, only active records will be returned.
          nullable: true
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimitFilterParameters
    ServiceOverbookingLimit:
      title: Service overbooking limit
      required:
      - CreatedUtc
      - FirstTimeUnitStartUtc
      - Id
      - IsActive
      - LastTimeUnitStartUtc
      - Limit
      - ServiceId
      - UpdatedUtc
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier of the service overbooking limit.
          format: uuid
        ServiceId:
          type: string
          description: Unique identifier of the `Service`.
          format: uuid
        FirstTimeUnitStartUtc:
          minLength: 1
          type: string
          description: Start of the time interval, expressed as the timestamp for the start of the first [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units/), in UTC timezone ISO 8601 format.
          format: date-time
        LastTimeUnitStartUtc:
          minLength: 1
          type: string
          description: End of the time interval, expressed as the timestamp for the start of the last [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units/), in UTC timezone ISO 8601 format.
          format: date-time
        Limit:
          type: integer
          description: Number of overbookings allowed for the `Service`.
          format: int32
        CreatedUtc:
          minLength: 1
          type: string
          description: Timestamp in UTC timezone ISO 8601 format when the service overbooking was created.
          format: date-time
        UpdatedUtc:
          minLength: 1
          type: string
          description: Timestamp in UTC timezone ISO 8601 format when the service overbooking was updated.
          format: date-time
        IsActive:
          type: boolean
          description: Whether the service overbooking limit is still active.
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimit
    Unit:
      type: object
      additionalProperties: false
    ActivityState:
      title: Activity state
      enum:
      - Deleted
      - Active
      type: string
    ServiceOverbookingLimitClearData:
      title: Service overbooking limits clear parameters
      required:
      - FirstTimeUnitStartUtc
      - LastTimeUnitStartUtc
      type: object
      properties:
        FirstTimeUnitStartUtc:
          minLength: 1
          type: string
          description: Start of the time interval, expressed as the timestamp for the start of the first [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units), in UTC timezone ISO 8601 format.
          format: date-time
        LastTimeUnitStartUtc:
          minLength: 1
          type: string
          description: 'End of the time interval, expressed as the timestamp for the start of the last [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units), in UTC timezone ISO 8601 format. The maximum size of time interval depends on the service''s time unit: 367 hours if hours, 367 days if days, or 60 months if months.'
          format: date-time
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimitClearData
    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
    ServiceOverbookingLimitSetParameters:
      title: ServiceOverbookingLimitSetParameters
      required:
      - AccessToken
      - Client
      - ClientToken
      - ServiceId
      - SetServiceOverbookingLimits
      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.
        EnterpriseId:
          type: string
          description: Unique identifier of the enterprise. Required when using [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property), ignored otherwise.
          format: uuid
          nullable: true
        ServiceId:
          type: string
          description: Unique identifier of the [Service](https://mews-systems.gitbook.io/connector-api/operations/services#service) overbooking limits will be set in.
          format: uuid
        SetServiceOverbookingLimits:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            $ref: '#/components/schemas/ServiceOverbookingLimitSetData'
          description: Collection of service overbooking limits to be set.
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimitSetParameters
    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
    ServiceOverbookingLimitClearParameters:
      title: ServiceOverbookingLimitClearParameters
      required:
      - AccessToken
      - ClearServiceOverbookingLimits
      - Client
      - ClientToken
      - ServiceId
      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.
        EnterpriseId:
          type: string
          description: Unique identifier of the enterprise. Required when using [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property), ignored otherwise.
          format: uuid
          nullable: true
        ServiceId:
          type: string
          description: Unique identifier of the [Service](https://mews-systems.gitbook.io/connector-api/operations/services#service) overbooking limits will be set in.
          format: uuid
        ClearServiceOverbookingLimits:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            $ref: '#/components/schemas/ServiceOverbookingLimitClearData'
          description: Collection of service overbooking limits to be cleared.
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimitClearParameters
    ServiceOverbookingLimitResult:
      title: ServiceOverbookingLimitResult
      required:
      - ServiceOverbookingLimits
      type: object
      properties:
        ServiceOverbookingLimits:
          type: array
          items:
            $ref: '#/components/schemas/ServiceOverbookingLimit'
          description: Service overbooking limits of the default service.
        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: ServiceOverbookingLimitResult
    ServiceOverbookingLimitSetData:
      title: Service overbooking limits set parameters
      required:
      - FirstTimeUnitStartUtc
      - LastTimeUnitStartUtc
      - Limit
      type: object
      properties:
        FirstTimeUnitStartUtc:
          minLength: 1
          type: string
          description: Start of the time interval, expressed as the timestamp for the start of the first [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units), in UTC timezone ISO 8601 format.
          format: date-time
        LastTimeUnitStartUtc:
          minLength: 1
          type: string
          description: 'End of the time interval, expressed as the timestamp for the start of the last [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units), in UTC timezone ISO 8601 format. The maximum size of time interval depends on the service''s [time unit](https://mews-systems.gitbook.io/connector-api/concepts/time-units): 367 days.'
          format: date-time
        Limit:
          maximum: 2147483647
          minimum: 0
          type: integer
          description: Number of overbookings allowed for the `Service`. Must be non-negative.
          format: int32
      additionalProperties: false
      x-schema-id: ServiceOverbookingLimitSetData
    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