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