openapi: 3.0.4
info:
title: Mews Booking Engine API (Distributor) Account notes Restrictions API
version: v1
description: The Mews Booking Engine API (historically the Distributor API, served from /api/distributor/v1) lets developers build guest-facing booking engines that create reservations directly in Mews. It exposes enterprise configuration, availability, pricing, products, vouchers, payment cards, and reservation group creation for front-end client consumption.
x-generated-from: documentation
x-source-url: https://api.mews.com/Swagger/distributor/swagger.json
x-last-validated: '2026-06-02'
servers:
- url: https://api.mews.com
description: Production
- url: https://api.mews-demo.com
description: Demo / sandbox
security:
- MewsClientToken: []
MewsAccessToken: []
tags:
- name: Restrictions
paths:
/api/connector/v1/restrictions/set:
post:
tags:
- Restrictions
summary: Mews Set Restrictions
description: "Adds new restrictions with the specified conditions. For improved efficiency, multiple similar restrictions will be merged into a single restriction. A quota of 150,000 restrictions per service applies, although it is unlikely to be exceeded because of the merging algorithm. For more information about the merging algorithm, see [Restrictions concepts](https://mews-systems.gitbook.io/connector-api/concepts/restrictions).\r\n\r\nCare is needed to specify `StartUtc` and `EndUtc` in the correct format - see [Datetimes](https://mews-systems.gitbook.io/connector-api/guidelines/serialization#datetimes).\r\n\r\nOnly restrictions created through the API are affected by this operation, *not* restrictions created by the user within **Mews Operations**. Similarly, if a user creates a restriction in **Mews Operations**, this will *not* affect restrictions created through the API."
operationId: restrictions_set
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SetRestrictionParameters'
example:
ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
Client: Sample Client 1.0.0
ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
Data:
- Type: Start
ExactRateId: ed4b660b-19d0-434b-9360-a4de2ea42eda
ResourceCategoryId: 773d5e42-de1e-43a0-9ce6-f940faf2303f
StartUtc: '2023-02-15T00:00:00Z'
EndUtc: '2023-02-22T00:00:00Z'
Days:
Monday: false
Tuesday: false
Wednesday: false
Thursday: false
Friday: true
Saturday: true
Sunday: true
MinLength: P0M2DT0H0M0S
MaxLength: P0M7DT0H0M0S
- Type: Start
BaseRateId: e5b538b1-36e6-43a0-9f5c-103204c7f68e
StartUtc: '2023-02-23T00:00:00Z'
EndUtc: '2023-03-03T00:00:00Z'
Days:
Monday: true
Tuesday: true
Wednesday: true
Thursday: true
Friday: true
Saturday: false
Sunday: false
MinAdvance: P0Y0M1DT0H0M0S
MaxAdvance: P0Y0M3DT0H0M0S
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
example: {}
'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'
examples:
RestrictionsSet400Example:
summary: Default restrictions_set 400 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet401Example:
summary: Default restrictions_set 401 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet403Example:
summary: Default restrictions_set 403 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet408Example:
summary: Default restrictions_set 408 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet204Example:
summary: Default restrictions_set 204 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet429Example:
summary: Default restrictions_set 429 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsSet500Example:
summary: Default restrictions_set 500 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'409':
description: The request cannot be completed because the data has changed, causing conflict between the state on the client and the server. To get around this error, try refreshing the data on the client and resubmitting the request.
content:
application/json:
schema:
$ref: '#/components/schemas/ConnectorApiExceptionResult'
examples:
RestrictionsSet409Example:
summary: Default restrictions_set 409 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/api/connector/v1/restrictions/clear:
post:
tags:
- Restrictions
summary: Mews Clear Restrictions
description: "Deletes restrictions that exactly match the specified conditions, using a splicing algorithm. This operation is intended to be used alongside [Set restrictions](https://mews-systems.gitbook.io/connector-api/operations/restrictions#set-restrictions). The specified conditions must be met exactly. The time interval, however, does not need to correspond to an existing restriction in the system, instead the API uses a splicing algorithm to work out how to divide up any existing restrictions to meet the specified time interval. For details about matching conditions and the splicing algorithm, see [Concepts > Restrictions](https://mews-systems.gitbook.io/connector-api/concepts/restrictions).\r\n\r\nOnly restrictions created through the API are affected by this operation, *not* restrictions created by the user within **Mews Operations**. Similarly, if a user creates a restriction in **Mews Operations**, this will *not* affect restrictions created through the API."
operationId: restrictions_clear
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ClearRestrictionParameters'
example:
ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
Client: Sample Client 1.0.0
ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
Data:
- Type: Start
ExactRateId: ed4b660b-19d0-434b-9360-a4de2ea42eda
ResourceCategoryId: 773d5e42-de1e-43a0-9ce6-f940faf2303f
StartUtc: '2023-02-15T00:00:00Z'
EndUtc: '2023-02-22T00:00:00Z'
Days:
Monday: false
Tuesday: false
Wednesday: false
Thursday: false
Friday: true
Saturday: true
Sunday: true
- Type: Start
BaseRateId: e5b538b1-36e6-43a0-9f5c-103204c7f68e
StartUtc: '2023-02-23T00:00:00Z'
EndUtc: '2023-03-03T00:00:00Z'
Days:
Monday: true
Tuesday: true
Wednesday: true
Thursday: true
Friday: true
Saturday: false
Sunday: false
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
example: {}
'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'
examples:
RestrictionsClear400Example:
summary: Default restrictions_clear 400 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear401Example:
summary: Default restrictions_clear 401 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear403Example:
summary: Default restrictions_clear 403 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear408Example:
summary: Default restrictions_clear 408 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear204Example:
summary: Default restrictions_clear 204 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear429Example:
summary: Default restrictions_clear 429 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsClear500Example:
summary: Default restrictions_clear 500 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'409':
description: The request cannot be completed because the data has changed, causing conflict between the state on the client and the server. To get around this error, try refreshing the data on the client and resubmitting the request.
content:
application/json:
schema:
$ref: '#/components/schemas/ConnectorApiExceptionResult'
examples:
RestrictionsClear409Example:
summary: Default restrictions_clear 409 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/api/connector/v1/restrictions/getAll:
post:
tags:
- Restrictions
summary: Mews Get All Restrictions
description: 'Returns all restrictions of the default service provided by the enterprise.
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: restrictions_getAll
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RestrictionFilterParameters'
example:
ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
Client: Sample Client 1.0.0
EnterpriseIds:
- 3fa85f64-5717-4562-b3fc-2c963f66afa6
- 4d0201db-36f5-428b-8d11-4f0a65e960cc
ServiceIds:
- bd26d8db-86da-4f96-9efc-e5a4654a4a94
ResourceCategoryIds:
- 34c29e73-c8db-4e93-b51b-981e42655e03
RateIds:
- ed4b660b-19d0-434b-9360-a4de2ea42eda
Origin: Integration
CollidingUtc:
StartUtc: '2020-02-15T00:00:00Z'
EndUtc: '2020-02-20T00:00:00Z'
CreatedUtc:
StartUtc: '2020-02-05T00:00:00Z'
EndUtc: '2020-02-15T00:00:00Z'
UpdatedUtc:
StartUtc: '2020-02-05T00:00:00Z'
EndUtc: '2020-02-15T00:00:00Z'
Limitation:
Count: 10
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestrictionResult'
example:
Restrictions:
- Id: 40c24757-c16e-4094-91d3-4ca952e488a1
ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
ExternalIdentifier: '5678'
Origin: Integration
Conditions:
Type: Stay
ExactRateId: 7c7e89d6-69c0-4cce-9d42-35443f2193f3
BaseRateId: null
RateGroupId: null
ResourceCategoryId: 86336EAC-4168-46B1-A544-2A47251BF864
ResourceCategoryType: null
StartUtc: '2018-10-09T00:00:00Z'
EndUtc: '2018-10-31T00:00:00Z'
Days:
- Saturday
- Sunday
Exceptions:
MinAdvance: null
MaxAdvance: null
MinLength: P0M2DT0H0M0S
MaxLength: P0M7DT0H0M0S
MinPrice:
Value: 50
Currency: EUR
MaxPrice:
Value: 150
Currency: EUR
- Id: b40ac4a8-f5da-457d-88fe-7a895e1580ab
ServiceId: bd26d8db-86da-4f96-9efc-e5a4654a4a94
ExternalIdentifier: '5678'
Origin: Integration
Conditions:
Type: Start
ExactRateId: null
BaseRateId: e5b538b1-36e6-43a0-9f5c-103204c7f68e
RateGroupId: null
ResourceCategoryId: null
ResourceCategoryType: Room
StartUtc: '2018-10-01T00:00:00Z'
EndUtc: '2018-10-31T00:00:00Z'
Days:
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
Exceptions:
MinAdvance: P0M1DT0H0M0S
MaxAdvance: P0M3DT0H0M0S
MinLength: null
MaxLength: null
MinPrice: null
MaxPrice: null
Cursor: b40ac4a8-f5da-457d-88fe-7a895e1580ab
'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'
examples:
RestrictionsGetAll400Example:
summary: Default restrictions_getAll 400 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll401Example:
summary: Default restrictions_getAll 401 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll403Example:
summary: Default restrictions_getAll 403 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll408Example:
summary: Default restrictions_getAll 408 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll204Example:
summary: Default restrictions_getAll 204 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll429Example:
summary: Default restrictions_getAll 429 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
'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'
examples:
RestrictionsGetAll500Example:
summary: Default restrictions_getAll 500 response
x-microcks-default: true
value:
Message: string
RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
Details: string
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
RestrictionResult:
title: RestrictionResult
required:
- Restrictions
type: object
properties:
Restrictions:
type: array
items:
$ref: '#/components/schemas/Restriction'
description: Restrictions 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
example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
additionalProperties: false
x-schema-id: RestrictionResult
Unit:
type: object
additionalProperties: false
ResourceCategoryTypeEnum:
title: Resource category type
enum:
- Room
- Bed
- Dorm
- Apartment
- Suite
- Villa
- Site
- Office
- MeetingRoom
- ParkingSpot
- Desk
- TeamArea
- Membership
- Tent
- CaravanOrRV
- UnequippedCampsite
- Bike
- ExtraBed
- Cot
- Crib
- ConferenceRoom
- Rooftop
- Garden
- Restaurant
- Amphitheater
- PrivateSpaces
type: string
description: 'Type of the category.
Room
Bed
Dorm
Apartment
Suite
Villa
Site
Office
MeetingRoom
ParkingSpot
Desk
TeamArea
Membership
Tent
CaravanOrRV
UnequippedCampsite
Bike
ExtraBed
Cot
Crib
ConferenceRoom
Rooftop
Garden
Restaurant
Amphitheater
PrivateSpaces'
x-enumNames:
- Room
- Bed
- Dorm
- Apartment
- Suite
- Villa
- Site
- Office
- MeetingRoom
- ParkingSpot
- Desk
- TeamArea
- Membership
- Tent
- CaravanOrRV
- UnequippedCampsite
- Bike
- ExtraBed
- Cot
- Crib
- ConferenceRoom
- Rooftop
- Garden
- Restaurant
- Amphitheater
- PrivateSpaces
x-enumDescriptions:
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
DaysParameters:
title: Days parameters
required:
- Friday
- Monday
- Saturday
- Sunday
- Thursday
- Tuesday
- Wednesday
type: object
properties:
Monday:
type: boolean
description: Monday enabled
example: true
Tuesday:
type: boolean
description: Tuesday enabled
example: true
Wednesday:
type: boolean
description: Wednesday enabled
example: true
Thursday:
type: boolean
description: Thursday enabled
example: true
Friday:
type: boolean
description: Friday enabled
example: true
Saturday:
type: boolean
description: Saturday enabled
example: true
Sunday:
type: boolean
description: Sunday enabled
example: true
additionalProperties: false
x-schema-id: DaysParameters
RestrictionExceptions:
title: Restriction exception
type: object
properties:
MinAdvance:
type: string
description: The minimum time before the reservation starts, you can reserve in ISO 8601 duration format.
nullable: true
example: string
MaxAdvance:
type: string
description: The maximum time before the reservation starts, you can reserve in ISO 8601 duration format.
nullable: true
example: string
MinLength:
type: string
description: Minimal reservation length in ISO 8601 duration format.
nullable: true
example: string
MaxLength:
type: string
description: Maximal reservation length in ISO 8601 duration format.
nullable: true
example: string
MinPrice:
title: Currency value (ver 2018-06-07)
allOf:
- $ref: '#/components/schemas/CurrencyValueOld'
description: Value of the minimum price per time unit.
nullable: true
example: string
MaxPrice:
title: Currency value (ver 2018-06-07)
allOf:
- $ref: '#/components/schemas/CurrencyValueOld'
description: Value of the maximum price
# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mews-systems/refs/heads/main/openapi/mews-systems-restrictions-api-openapi.yml