---
title: "Update cancellation policies"
method: POST
path: "/api/connector/v1/cancellationPolicies/update"
tags: ["Cancellation policies"]
---

# Update cancellation policies

`POST /api/connector/v1/cancellationPolicies/update`

## Request

- Base URL: `https://api.mews.com`
- URL: `https://api.mews.com/api/connector/v1/cancellationPolicies/update`
- Auth: none declared
- TypeScript: <https://skmtc.dev/mews/apis/connector-api/docs/api/connector/v1/cancellationPolicies/update/post.ts> (a function with typed inputs; its response is checked against the schema)

Updates one or more existing cancellation policies. Only the fields that are set are updated. Cancellation policies managed by portfolio cannot be updated. This operation supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property/).

## Request body

- MultipleCancellationPolicyUpdateParameters
  - `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.
  - `EnterpriseId` string, uuid, nullable: Unique identifier of the enterprise. Required when using [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property), ignored otherwise.
  - `CancellationPolicyUpdates` CancellationPolicyUpdateParameters[], required: Details of the cancellation policies to be updated.
    - `CancellationPolicyId` string, uuid, required: Unique identifier of the cancellation policy to be updated.
    - `Applicability` CancellationPolicyApplicabilityUpdateValue
      - `Value` 'Creation' | 'Start' | 'StartDate': Applicability mode of the cancellation policy. Creation Start StartDate
    - `FeeExtents` CancellationFeeExtentIEnumerableUpdateValue
      - `Value` CancellationFeeExtentEnum[], nullable: Value which is to be updated.
    - `ApplicabilityOffset` StringUpdateValue
      - `Value` string, nullable: Value which is to be updated.
    - `FeeMaximumTimeUnits` Int32NullableUpdateValue
      - `Value` integer, nullable: Value which is to be updated.
    - `AbsoluteFee` CurrencyValueUpdateValue
      - `Value` CurrencyValue: Absolute value of the fee.
        - `Currency` string, currency, required: ISO-4217 code of the `Currency`.
        - `Value` number, double, required: Amount in the currency.
    - `RelativeFee` DecimalUpdateValue
      - `Value` number, double: Value which is to be updated.
    - `Name` StringUpdateValue
      - `Value` string, nullable: Value which is to be updated.
    - `ExternalIdentifier` StringUpdateValue
      - `Value` string, nullable: Value which is to be updated.

## Response `200`

OK

- CancellationPolicyModificationResult
  - `CancellationPolicies` CancellationPolicyModificationData[], required: Cancellation policies affected by the operation.
    - `Id` string, uuid, required: Unique identifier of the cancellation policy.
    - `EnterpriseId` string, uuid, required: Unique identifier of the enterprise the cancellation policy belongs to.
    - `CreatedUtc` string, date-time, required: Creation date and time of the cancellation policy in UTC timezone in ISO 8601 format.
    - `UpdatedUtc` string, date-time, required: Last update date and time of the cancellation policy in UTC timezone in ISO 8601 format.
    - `IsActive` boolean, required: Whether the cancellation policy is still active.
    - `Applicability` 'Creation' | 'Start' | 'StartDate', required: Applicability mode of the cancellation policy. Creation Start StartDate
    - `FeeExtents` CancellationFeeExtentEnum[], required: Extent for the cancellation fee, i.e. what should be in scope for the automatic payment.
    - `ApplicabilityOffset` string, required: Offset from which the fee is applied in ISO 8601 duration format.
    - `FeeMaximumTimeUnits` integer, nullable: Maximum number of time units the cancellation fee is applicable to.
    - `AbsoluteFee` CurrencyValue, required: Absolute value of the fee.
      - `Currency` string, currency, required: ISO-4217 code of the `Currency`.
      - `Value` number, double, required: Amount in the currency.
    - `RelativeFee` number, double, required: Relative value of the fee, as a percentage of the reservation price.
    - `Name` string, nullable: Name of the cancellation policy.
    - `ExternalIdentifier` string, nullable: Identifier of the cancellation policy from an external system, unique within the enterprise, that can be used to reference the policy from your own system.
    - `IsPortfolioManaged` boolean, required: Whether the cancellation policy is managed by the portfolio. Policies managed by the portfolio cannot be updated or deleted through this resource.

## 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).

## Changes

- **2026-08-12** `66301d8e85af`: 1 info
  - added the required property `CancellationPolicies/items/IsPortfolioManaged` to the response with the `200` status
- **2026-08-04** `81933a8ff730`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/mews/apis/connector-api/changes/api/connector/v1/cancellationPolicies/update/post.md)

---

[API](https://skmtc.dev/mews/apis/connector-api.md) - [All operations](https://skmtc.dev/mews/apis/connector-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mews/apis/connector-api/revisions/1b5e94dfeb79?raw)
