---
title: "Get all rules"
method: POST
path: "/api/connector/v1/rules/getAll"
tags: ["Rules"]
---

# Get all rules

`POST /api/connector/v1/rules/getAll`

Returns all rules applied with the reservations.
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).

## Request body

- RuleFilterParameters
  - `ClientToken` string, required — Token identifying the client application.
  - `AccessToken` string, required — Access token of the client application.
  - `Client` string, required — Name and version of the client application.
  - `Limitation` Limitation, required — Limitation on the quantity of data returned.
    - `Count` integer, required
    - `Cursor` string, uuid, nullable
  - `EnterpriseIds` string[], nullable — Unique identifiers of the Enterprises. If not specified, the operation returns data for all enterprises within scope of the Access Token.
  - `Ids` string[], nullable — Unique identifiers of the `Rule`.
  - `ServiceIds` string[], required — Unique identifiers of the `Service`.
  - `UpdatedUtc` TimeFilterInterval — When a time interval is used for **filtering** (for example in parameters such as `CreatedUtc.StartUtc` / `CreatedUtc.EndUtc`), the following rules apply: - **Start equals End (equality mode)** If `StartUtc` and `EndUtc` are exactly the same timestamp, the filter is treated as an equality check for that precise moment in time: ``` CreatedUtc == StartUtc ``` This does not represent an interval; only records with `CreatedUtc` equal to that exact instant are returned. - **Start differs from End (interval mode)** If `StartUtc` and `EndUtc` are different, the filter is evaluated as a half-open interval: ``` StartUtc <= CreatedUtc < EndUtc ``` In other words, the start is inclusive and the end is exclusive. Make sure your integration takes inclusive Start / exclusive End behavior of time intervals into account so that no records at the boundaries are omitted.
    - `StartUtc` string, date-time, nullable
    - `EndUtc` string, date-time, nullable
  - `Extent` RuleExtent, required
    - `RuleActions` boolean, nullable — Whether the response should contain rule actions.
    - `Rates` boolean, nullable — Whether the response should contain rates.
    - `RateGroups` boolean, nullable — Whether the response should contain rate groups.
    - `ResourceCategories` boolean, nullable — Whether the response should contain rate resource categories.
    - `BusinessSegments` boolean, nullable — Whether the response should contain business segments.

## Response `200`

OK

- RuleResult
  - `Rules` Rule[], required — Rules used with reservation creations and modifications.
    - `Id` string, uuid, required — Unique identifier of the rule.
    - `ServiceId` string, uuid, required — Unique identifier of the `Service` the rule is assigned to.
    - `Conditions` RuleConditions, required
      - `RateId` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `RateGroupId` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `BusinessSegmentId` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `ResourceCategoryId` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `ResourceCategoryType` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `Origin` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `TravelAgencyId` RuleCondition
        - `Value` string, required — Value of the condition depending on the property. E.g. `ReservationOrigin` in case of origin condition or unique identifier of a rate in case of rate condition.
        - `ConditionType` 'Equals' | 'NotEquals', required — Type of condition.
      - `MinimumTimeUnitCount` integer, nullable — Condition based on minimum amount of time units.
      - `MaximumTimeUnitCount` integer, nullable — Condition based on maximum amount of time units.
    - `CreatedUtc` string, date-time, required — Creation date and time of the rule in UTC timezone in ISO 8601 format.
    - `UpdatedUtc` string, date-time, required — Last update date and time of the rule in UTC timezone in ISO 8601 format.
  - `RuleActions` RuleAction[], nullable — Rule actions applied in rules.
    - `Id` string, uuid, required — Unique identifier of the rule action.
    - `RuleId` string, uuid, required — Unique identifier of the rule.
    - `Data` object, nullable — Additional information about action.
      - `Discriminator` 'Product'
      - `Value` RuleActionProductData
        - `ActionType` 'Add' | 'Delete', required — Action of rule.
        - `ProductId` string, uuid, required — Unique identifier of product.
  - `Rates` RateForExtent[], nullable — Rates used in conditions.
    - `Id` string, uuid, required — Unique identifier of the rate.
    - `GroupId` string, uuid, required — Unique identifier of `Rate Group` where the rate belongs.
    - `ServiceId` string, uuid, required — Unique identifier of the `Service`.
    - `BaseRateId` string, uuid, nullable — Unique identifier of the base `Rate`.
    - `IsBaseRate` boolean, required — Whether the rate is a base rate.
    - `BusinessSegmentId` string, uuid, nullable — Unique identifier of the `Business Segment`.
    - `IsActive` boolean, required — Whether the rate is still active.
    - `IsEnabled` boolean, required — Whether the rate is currently available to customers.
    - `IsPublic` boolean, required — Whether the rate is publicly available.
    - `Type` 'Public' | 'Private' | 'AvailabilityBlock', required — Public Private AvailabilityBlock
    - `Name` string, nullable — Name of the rate (in the default language).
    - `Names` object, required — All translations of the name.
    - `ShortName` string, nullable — Short name of the rate (in the default language).
    - `UpdatedUtc` string, date-time, required — Interval in which the rates were updated.
    - `ExternalNames` object, nullable — All translations of the external name of the rate.
    - `Description` object, nullable — All translations of the description of the rate.
    - `ExternalIdentifier` string, nullable — Identifier of the rate from external system.
  - `RateGroups` RateGroupOld[], nullable — Rate groups used in conditions.
    - `Id` string, uuid — Unique identifier of the rate group.
    - `ServiceId` string, uuid — Unique identifier of the Service that the rate group belongs to.
    - `IsActive` boolean — Whether the rate group is still active.
    - `Name` string, nullable — Name of the rate group.
    - `ExternalIdentifier` string, nullable — External identifier of the rate group.
  - `ResourceCategories` ResourceCategory[], nullable — Resource categories used in conditions.
    - `Id` string, uuid, required — Unique identifier of the category.
    - `EnterpriseId` string, uuid, required — Unique identifier of the `Enterprise`.
    - `ServiceId` string, uuid, required — Unique identifier of the `Service` of the resource category.
    - `IsActive` boolean, required — Whether the category is still active.
    - `Type` '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', required — Type of the category.
    - `Classification` 'StandardSingle' | 'StandardDouble' | 'SuperiorTwin' | 'SuperiorDouble' | 'JuniorSuite' | 'SharedOrDorm' | 'Other' | 'SuperiorSingle' | 'Triple' | 'Family' | 'StandardTwin' | 'Studio' | 'SuperiorTripleRoom' | 'OneBedroomApartment' | 'ThreeBedroomsApartment' | 'TwoBedroomsApartment', required — Classification of the resource category.
    - `Names` object, required — All translations of the name.
    - `ShortNames` object, required — All translations of the short name.
    - `Descriptions` object, required — All translations of the description.
    - `Ordering` integer, required — Ordering of the category, lower number corresponds to lower category (note that neither uniqueness nor continuous sequence is guaranteed).
    - `Capacity` integer, required — Capacity that can be served (e.g. bed count).
    - `ExtraCapacity` integer, required — Extra capacity that can be served (e.g. extra bed count).
    - `ExternalIdentifier` string, nullable — Identifier of the resource category from external system.
    - `AccountingCategoryId` string, uuid, nullable — Unique identifier of the accounting category.
  - `BusinessSegments` BusinessSegment[], nullable — Business segments used in conditions.
    - `Id` string, uuid, required — Unique identifier of the business segment.
    - `ServiceId` string, uuid, required — Unique identifier of the `Service`.
    - `IsActive` boolean, required — Whether the business segment is still active.
    - `Name` string, required — Name of the business segment.
    - `CreatedUtc` string, date-time, required — Creation date and time of the business segment in UTC timezone in ISO 8601 format.
    - `UpdatedUtc` string, date-time, required — Last update date and time of the business segment in UTC timezone in ISO 8601 format.
  - `Cursor` string, uuid, nullable — 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.

## Other responses

- `204` — Server has successfully fulfilled the request and there is no additional information to send back.
- `400` — 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).
- `401` — Error caused by usage of invalid ClientToken, AccessToken, or you may not have the necessary permission to use the endpoint.
- `403` — 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.
- `408` — 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)
- `429` — 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).
- `500` — 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).

---

[API](https://skmtc.net/mews/apis/connector-api.md) · [All operations](https://skmtc.net/mews/apis/connector-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mews/connector-api/versions/81933a8ff730/schema)
