---
title: "Update a collateral package"
method: PATCH
path: "/collateral_management/packages/{packageId}"
tags: ["Collateral Management"]
---

# Update a collateral package

`PATCH /collateral_management/packages/{packageId}`

Permissions required: **Manage Collateral Packages** and **Read vault activity**


Updates an existing collateral package in the Collateral Management service.

## Path parameters

- `packageId` string, required

## Headers

- `Api-Signature` string, required
- `Api-Timestamp` integer, required

## Request body

- CMUpdatePackageRequest — The request payload for updating an existing collateral package. All fields are optional - only provide the fields you want to update.
  - `acceleratedMarginCall` CMAcceleratedMarginCallUpdate — Accelerated Margin Call level configuration for updates. All fields are optional.
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP' — The action to be taken when the collateral package transitions into a Margin Call state
    - `curePeriod` string — The duration of the cure period, specified in a format such as '1h' for 1 hour or '1m' for 1 minute
    - `ltv` string — The LTV threshold at which the Collateral Package will enter into an Accelerated Margin Call state
  - `autoDeleveraging` CMAutoDeleveragingUpdate — Auto-deleveraging configuration for updates. All fields are optional.
    - `levels` CMDeleveragingLevel[] — Array of deleveraging levels, each specifying a price threshold and corresponding liquidation percentage. If provided, replaces all existing levels.
      - `liquidationPercentage` string, required — The percentage of collateral to liquidate when this price level is reached, expressed as a decimal string (e.g., '25' for 25%)
      - `price` string, required — The price threshold at which this deleveraging level is triggered, expressed as a decimal string
  - `clientReferenceId` string — A reference identifier provided by the client for this collateral package
  - `collateralAssetsConfig` CMAssetTrackingConfigUpdate[] — Array of asset tracking configurations. If provided, this will replace the entire existing asset tracking configuration.
    - `asset` CMAssetType, required — Asset symbol or ticker (e.g. BTC)
      - `assetType` string, required
      - `type` 'ANCHORAGECUSTODY' | 'EXTERNAL', required — The type of asset held in the Collateral Package. This can be either `ANCHORAGECUSTODY` for assets held in Anchorage custody, or `EXTERNAL` for assets held outside of Anchorage custody.
    - `liquidationPriority` integer — The priority order for liquidating this asset in the event of a default or margin call
    - `maxStalenessMinutes` integer — Optional maximum staleness in minutes assigned to the asset price in the collateral package configuration, expressed as an integer. If not specified, uses the system default configured (3 minutes)
    - `notes` string — Optional additional notes or comments about the asset tracking configuration
    - `priceSource` 'COINBASEPRO' | 'KRAKEN' | 'KAMINO' | 'BINANCE' — This field specifies the source from which the price information is derived
    - `weight` string — The configured weight assigned to the asset in the collateral package configuration, expressed as a decimal string
  - `critical` CMCriticalUpdate — Critical level configuration for updates. All fields are optional.
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP' — The action to be taken when the collateral package transitions into a Critical state
    - `defaultNotice` boolean — If true, Anchorage Digital will send a default notice to the Pledgor upon entering the critical state
    - `ltv` string — The LTV threshold at which the Collateral Package will enter into the critical state
    - `returnToLtv` string — The LTV that a collateral package must return to before being considered healthy again
    - `warningLtv` string — The LTV at which a warning is sent notifying the parties that the collateral package is close to entering critical state
  - `isActive` boolean — Indicates whether the package should be activated for monitoring or not
  - `ltvRoundingPrecision` integer — Number of decimal places to round LTV values to
  - `marginCall` CMMarginCallUpdate — Margin Call level configuration for updates. All fields are optional.
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP' — The action to be taken when the collateral package transitions into a Margin Call state
    - `curePeriod` string — The duration of the cure period, specified in a format such as '1h' for 1 hour or '1m' for 1 minute
    - `curePeriodProtection` boolean — Indicates whether cure period protection is enabled
    - `ltv` string — The LTV threshold at which the Collateral Package will enter into this state
    - `returnToLtv` string — The LTV that a collateral package must return to before a margin call is fulfilled
    - `topUpType` 'LTV' | 'QUANTITY' — Option on how to satisfy a Margin Call. If ‘LTV’ is selected, the requirement to cure the margin call is to bring the LTV below the ‘returnToLtv’ (healthy state). If ‘QUANTITY’ is selected, the requirement to cure the margin call is to provide the number of units of collateral asset calculated when the margin call was issued, regardless if LTV fluctuates during a potential cure period
    - `warningLtv` string — The LTV at which a warning is sent notifying the parties that the collateral package is close to entering margin call
  - `marginReturn` CMMarginReturnUpdate — Margin Return level configuration for updates. All fields are optional.
    - `action` 'NONE' | 'SWEEP' — The action to be taken when the collateral package transitions into a Margin Return state
    - `ltv` string — The LTV threshold at which the Collateral Package will enter into this state
    - `returnToLtv` string — The LTV that a collateral package must return to before a margin return is fulfilled
    - `returnType` string — The type of margin return (e.g., LTV or QUANTITY)
  - `priceStrategy` 'DEFAULT' | 'BID' | 'ASK' | 'MID' | 'LAST' — This field specifies the pricing strategy to be used for the collateral package. To be implemented in the future

## Response `200`

Successfully updated collateral package

- CMPackage — A package of different types of collateral which, together, secure a collection of exposures.
  - `acceleratedMarginCall` CMAcceleratedMarginCall — Accelerated Margin Call level config
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP', required — The action to be taken when the collateral package transitions into a Margin Call state
    - `curePeriod` string, required — The duration of the cure period for the accelerated margin call, specified in a format such as '1h' for 1 hour or '1m' for 1 minute
    - `ltv` string, required — The LTV threshold at which the Collateral Package will enter into an Accelerated Margin Call state, subject to cure period constraints
  - `active` boolean, required — Indicates whether the package has been activated for monitoring or not
  - `clientReferenceId` string, required — Client-provided reference ID for this Collateral Package
  - `collateralAssets` CMCollateralAsset[], required — An array containing objects, where each object represents a specific asset held within the Collateral Package and its associated details
    - `asset` CMAssetType, required — Asset symbol or ticker (e.g. BTC)
      - `assetType` string, required
      - `type` 'ANCHORAGECUSTODY' | 'EXTERNAL', required — The type of asset held in the Collateral Package. This can be either `ANCHORAGECUSTODY` for assets held in Anchorage custody, or `EXTERNAL` for assets held outside of Anchorage custody.
    - `price` string, required — The unweighted current price of the collateral asset, used in the LTV calculation, expressed in USD
    - `quantity` string, required — The quantity of the collateral asset held in the Collateral Package
    - `weight` string, required — The configured weight applied to this collateral asset within the Collateral Package, expressed as a decimal string
    - `weightedValue` string, required — The weighted value of the collateral asset, calculated by applying the `weight` to the asset's value (`price` * `quantity`), expressed in USD
  - `critical` CMCritical, required — Critical level config
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP', required — The action to be taken when the collateral package transitions into a Critical state
    - `defaultNotice` boolean, required — A boolean parameter, if marked TRUE Anchorage will send a default notice to the Pledgor upon entering the critical state
    - `ltv` string, required — The LTV threshold at which the Collateral Package will enter into this state
    - `returnToLtv` string, required — The LTV that a collateral package must return to before transitioning back to a healthy state. This parameter is only configured if action within Critical Object is set to ‘Partial’
    - `warningLtv` string, required — The LTV at which a warning is sent notifying the parties that the collateral package is close to entering a particular state
  - `currentLtv` string — The current Loan-to-Value (LTV) ratio for the Collateral Package, expressed as a decimal string
  - `exposureValue` string, required — The current total value of the Exposure(s) associated with this Collateral Package, expressed in USD
  - `ltvTimestamp` string — Timestamp indicating the last time the `currentLtv` was calculated and updated. This timestamp provides context for the recency of the LTV value
  - `marginCall` CMMarginCall — Margin Call level config
    - `action` 'NONE' | 'PARTIAL' | 'FULL' | 'SWEEP', required — The action to be taken when the collateral package transitions into a Margin Call state
    - `curePeriod` string, required — Time after the margin call that pledgor has to top up collateral and bring the LTV to the ‘returnToLtv’ (healthy state)”. The duration of the cure period, specified in a format such as '1h' for 1 hour or '1m' for 1 minute.
    - `curePeriodProtection` boolean, required — If activated, it prevents the transition of the collateral package to the critical stage while the cure period of a previous margin call lasts
    - `ltv` string, required — The LTV threshold at which the Collateral Package will enter into this state, subject to cure period constraints
    - `returnToLtv` string, required — The LTV that a collateral package must return to before a margin call is considered to be fulfilled and the collateral package is returned to a healthy state
    - `topUpType` 'LTV' | 'QUANTITY', required — Option on how to satisfy a Margin Call. If ‘LTV’ is selected, the requirement to cure the margin call is to bring the LTV below the ‘returnToLtv’ (healthy state). If ‘QUANTITY’ is selected, the requirement to cure the margin call is to provide the number of units of collateral asset calculated when the margin call was issued, regardless if LTV fluctuates during a potential cure period
    - `warningLtv` string, required — The LTV at which a warning is sent notifying the parties that the collateral package is close to entering a particular state
  - `marginReturn` CMMarginReturn — Margin Return level config
    - `action` 'NONE' | 'SWEEP', required — The action to be taken when the collateral package transitions into a Margin Return state
    - `ltv` string, required — The LTV threshold at which the Collateral Package will be eligible for a Margin Return
    - `returnToLtv` string, required — The LTV that a collateral package must return to before a margin return is considered to be fulfilled and the collateral package is returned to a healthy state
  - `packageId` string, required — Unique identifier for the Collateral Package
  - `packageValue` string, required — The current total value of the Collateral Package, calculated using the configured pricing methodology and real-time price data, expressed in USD
  - `pledgorId` string, required — Collateral management participant ID of the Pledgor (borrower) associated with this collateral package
  - `securedPartyId` string, required — Collateral management participant ID of the Secure Party (lender) associated with this collateral package
  - `state` 'MARGIN_RETURN' | 'HEALTHY' | 'MARGIN_CALL' | 'CRITICAL' | 'CLOSED' | 'CURE_PERIOD_EXPIRED' | 'DEFAULTED' — Current state of the Collateral Package

## Other responses

- `400` — Bad Request
- `401` — Unauthenticated
- `403` — Forbidden
- `404` — The specified package was not found.
- `422` — Unprocessable Entity
- `429` — Too Many Requests
- `500` — Internal Server Error

---

[API](https://skmtc.net/anchorage/apis/anchorage-digital-api-reference.md) · [All operations](https://skmtc.net/anchorage/apis/anchorage-digital-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/anchorage/anchorage-digital-api-reference/versions/166864b1ec6d/schema)
