---
title: "Release restriction"
method: PATCH
path: "/corporate/v1/restricted-funds/{restrictedFundsId}"
tags: ["Restricted funds"]
---

# Release restriction

`PATCH /corporate/v1/restricted-funds/{restrictedFundsId}`

## Request

- Base URL: `https://sandbox.pismolabs.io`
- URL: `https://sandbox.pismolabs.io/corporate/v1/restricted-funds/{restrictedFundsId}`
- Auth: HTTP bearer

Releases all or part of the funds from an existing restriction by restricted funds ID.

NOTE:
- This endpoint requires an account token - an access token encoded with an external account ID. Tokens can expire quickly, which can result in a `401 Unauthorized` message.
This endpoint generates the following events:
- [Platform authorization created](https://developers.pismo.io/events/docs/platform-authorization-platform-authorization-1)
- [Account balance changed](https://developers.pismo.io/events/docs/availables-change-available-1)
- [Restricted Funds created or released](https://developers.pismo.io/events/docs/corporate-restricted-funds-1)
- [Account balance changed](https://developers.pismo.io/events/docs/account-balances-balance-change-1)

See [Data and reporting](doc:data-reporting-overview) for more information on events and setting up event notifications.

## Path parameters

- `restrictedFundsId` string, required

## Request body

- RestrictedFundsReleaseRequest: Create funds restriction request body
  - `amount` number, float, required: Amount requested by the operation The final applied amount might vary (refer to `applied_amount`) based on execution rules and the available balance at the time of execution.<br> **Note**: * For `RESTRICT_FUNDS`, this is the amount to be held. * For `RELEASE_FUNDS`, this is the amount to be released. * For `EXECUTE_FUNDS`, this is the amount to be debited from the held funds. * Precision follows the currency's minor units. For example: * Two decimals (USD, EUR): values use increments of 0.01 * Three decimals (BHD, JOD, KWD, OMR, TND): values use increments of 0.001 * Four‑decimal (CLF): values use increments of 0.0001
  - `operation` RestrictedFundsRequestOperation, required: Represents the data of the hold or release transaction.
    - `tracking_id` string, required: A unique payment tracking number provided by the client. If an existing `tracking_id` is found on the Pismo platform, the API returns a `409` error. This field is: * Unique within the organization * Immutable: It can't be updated * Not recyclable: You can't reuse a `tracking_id`
    - `soft_descriptor` string: Brief description that helps identify a restriction
    - `metadata` Metadata: Key-value pairs that contain data intended for storage on the Pismo platform.<br> **Note**: The `metadata` field includes a `corporate_metadata` object with the following attributes: * `credit_external_account_id`: present when supplied in the credit leg. * `debit_external_account_id`: present when supplied in the debit leg. * `earmark_id`: present when supplied in the debit leg. The `corporate_metadata` attribute must be an object. A type mismatch results in an error as described in the responses section.<br> **Note**: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to [Get started with Pismo APIs](ref:get-started-with-pismo-apis#metadata).
  - `soft_descriptor` string: Brief description that helps identify a restriction

## Response `200`

OK

- RestrictedFunds
  - `restricted_funds_id` string, required: Restricted funds ID. Only accepts letters, digits, periods, underscores and hyphens. `maxLength: 60`
  - `hold_method` 'STRICT' | 'FLEXIBLE' | 'RECURRENT', required: Determines how the Pismo platform processes the restriction request in relation to the available balance at the time of execution. Notes: - `STRICT` applies the full requested amount or fails (no partial holds). - `FLEXIBLE` can apply only the available portion, resulting in a partial hold. - `RECURRENT` behaves like `FLEXIBLE` at creation time. After creation, the restriction automatically applies to each incoming credit, re-restricting funds whenever a credit is posted, until the restriction reaches its target amount or `increase_datetime_limit` is reached.
  - `requested_amount` number, float, required: Amount originally requested at the time the restriction was created; remains unchanged after the initial request.
  - `held_amount` number, float, required: Amount held by restriction
  - `created_at` string, date-time, required: Date and time when the restriction was created, displayed in ISO 8601 format.<br> `minLength: 1` `maxLength: 30`
  - `soft_descriptor` string: Brief description that helps identify a restriction
  - `operations` RestrictedFundsOperation[]: List of operations performed to restrict or release funds
    - `tracking_id` string, required: A unique payment tracking number provided by the client. If an existing `tracking_id` is found on the Pismo platform, the API returns a `409` error. This field is: * Unique within the organization * Immutable: It can't be updated * Not recyclable: You can't reuse a `tracking_id`
    - `type` 'RESTRICT_FUNDS' | 'RELEASE_FUNDS' | 'EXECUTE_FUNDS', required: Represents the kind of financial operation being performed. Indicates whether the operation increased a funds restriction, released funds, or executed (debited) held funds.
    - `status` 'PROCESSING' | 'SUCCEEDED' | 'FAILED' | 'TIMED_OUT', required: Indicates the operation’s current execution state
    - `processing_code` string, required: Processing code used to create the underlying transaction. Each operation type uses a default processing code.<br> `minLength: 1` `maxLength: 6`
    - `requested_amount` number, float, required: Amount requested by the operation The final applied amount might vary (refer to `applied_amount`) based on execution rules and the available balance at the time of execution.<br> **Note**: * For `RESTRICT_FUNDS`, this is the amount to be held. * For `RELEASE_FUNDS`, this is the amount to be released. * For `EXECUTE_FUNDS`, this is the amount to be debited from the held funds. * Precision follows the currency's minor units. For example: * Two decimals (USD, EUR): values use increments of 0.01 * Three decimals (BHD, JOD, KWD, OMR, TND): values use increments of 0.001 * Four‑decimal (CLF): values use increments of 0.0001
    - `applied_amount` number, float, required: Amount actually executed by the operation at the time it was applied Depending on the `hold_method`, this value might be different from `requested_amount`. Hold method: * `STRICT` holds require the full requested amount. If that amount cannot be held, the operation fails. * `FLEXIBLE` might apply only the available portion Type: - For `RESTRICT_FUNDS`, it is the portion of the requested amount that was successfully held. - For `RELEASE_FUNDS`, it is the portion that was actually released back to the available balance. - For `EXECUTE_FUNDS`, it is the portion of the held funds that was actually debited from the restricted amount.
    - `created_at` string, date-time, required: Date and time when the restriction was created, displayed in ISO 8601 format.<br> `minLength: 1` `maxLength: 30`
    - `soft_descriptor` string: Brief description that helps identify a restriction
    - `applied_at` string, date-time: Date and time when the financial operation was actually executed, displayed in ISO 8601 format.<br> `minLength: 1` `maxLength: 30`
    - `metadata` Metadata: Key-value pairs that contain data intended for storage on the Pismo platform.<br> **Note**: The `metadata` field includes a `corporate_metadata` object with the following attributes: * `credit_external_account_id`: present when supplied in the credit leg. * `debit_external_account_id`: present when supplied in the debit leg. * `earmark_id`: present when supplied in the debit leg. The `corporate_metadata` attribute must be an object. A type mismatch results in an error as described in the responses section.<br> **Note**: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to [Get started with Pismo APIs](ref:get-started-with-pismo-apis#metadata).
  - `type` 'REGULATORY' | 'JUDICIAL': The type/nature of the restriction. Notes: - `REGULATORY`: Restriction created for regulatory or operational reasons - `JUDICIAL`: Restriction created to comply with a judicial order
  - `metadata` RestrictedFundsMainMetadata: Key-value pairs containing data intended for storage in the Pismo system.<br> This metadata applies when you don't send metadata for the restricted‑funds operation. It covers cases such as automatic recurrent operations or held‑funds expiration. **Note**: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to [Get started with Pismo APIs](ref:get-started-with-pismo-apis#metadata).
  - `increase_datetime_limit` string, date-time: The date and time limit, in RFC 3339 format, up to which a `RECURRENT` restriction continues applying to incoming credits on the account. Notes: - Only accepted on creation when `hold_method` is `RECURRENT` - Must not be in the past
  - `release_datetime` string, date-time: Specifies the date and time when any remaining held funds will be automatically released to the account. The value must be provided in RFC 3339 format. **Note**: The specified date and time must be in the future.

## Other responses

- `400`: Bad Request
- `409`: Conflict
- `429`: Too many requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/pismo/apis/banking-transaction-banking.md) - [All operations](https://skmtc.dev/pismo/apis/banking-transaction-banking/llms.txt) - [OpenAPI document](https://skmtc.dev/pismo/apis/banking-transaction-banking/revisions/1334306c9303?raw)
