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

# Update cancellation policies

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

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.

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