---
title: "Update reserve rule"
method: PUT
path: "/accounts/entities/{entityId}/reserve-rules/{id}"
tags: ["platforms", "Reserve rules"]
---

# Update reserve rule

`PUT /accounts/entities/{entityId}/reserve-rules/{id}`

## Request

- Base URL: `https://{prefix}.api.sandbox.checkout.com`
- URL: `https://{prefix}.api.sandbox.checkout.com/accounts/entities/{entityId}/reserve-rules/{id}`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `string` scopes: `accounts`
  - API key in header `Authorization`
- TypeScript: <https://skmtc.dev/checkout/apis/checkout-com-api-reference/docs/accounts/entities/:entityId/reserve-rules/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

Update an upcoming reserve rule. Only reserve rules that have never been active can be updated.

## Headers

- `If-Match` string, required

## Request body

- ReserveRuleUpdateRequest
  - `type` 'rolling', required
  - `rolling` RollingReserveRule, required
    - `percentage` number, required: The percentage of captured funds that will be reserved as a collateral balance.
    - `holding_duration` object, required: The length of time the collateral balance will be reserved for.
      - `weeks` integer, required

## Response `200`

Reserve rule updated successfully.

- ReserveRuleWriteResponse
  - `id` string
  - `_links` object
    - `self` Link
      - `href` string, required: The link URL

## Other responses

- `401`: Unauthorized
- `412`: Precondition failed. An invalid ETag value was provided in the If-Match header.
- `422`: Unprocessable entity
- `428`: Precondition required. The If-Match header is required.

---

[API](https://skmtc.dev/checkout/apis/checkout-com-api-reference.md) - [All operations](https://skmtc.dev/checkout/apis/checkout-com-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/checkout/apis/checkout-com-api-reference/revisions/0f1abdb1c3e9?raw)
