---
title: "Extend Loan Term"
method: PATCH
path: "/organizations/{organizationId}/loans/{extendTermLoanId}"
tags: ["lending"]
---

# Extend Loan Term

`PATCH /organizations/{organizationId}/loans/{extendTermLoanId}`

## Request

- Base URL: `https://api.copper.co/platform`
- URL: `https://api.copper.co/platform/organizations/{organizationId}/loans/{extendTermLoanId}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/copper-co/apis/copper-platform-api/docs/organizations/:organizationId/loans/:extendTermLoanId/patch.ts> (a function with typed inputs; its response is checked against the schema)

Request loan term extension. Loan term extension can only be requested within five days of the loan reaching maturity. This request can be initiated by either the borrower or the lender. The resulting request needs to be accepted by the counterparty.

## Path parameters

- `organizationId` string, required
- `extendTermLoanId` string, required

## Headers

- `Content-Type` string

## Request body

- ExtendLoan
  - `newMaturityDate` string, required: The new maturity date as timestamp in epoch milliseconds

## Response `200`

OK

- Loan
  - `amount` string, required: The amount of the loan
  - `borrowerCounterpartyId` string, required: The counterparty ID of the borrower
  - `borrowerOrganizationId` string, required: The organization ID of the borrower. Obfuscated for lender
  - `borrowerPortfolioId` string: The ID of the account which is to be the destination of disbursed funds. Obfuscated for lender
  - `createdAt` string: Timestamp in epoch milliseconds of the loan creation
  - `createdBy` string, required: The ID of the user that created the loan
  - `currency` string, required: Currency code of the asset being lent
  - `debtRatio` string: The LTV of the loan
  - `debtRatioStatus` string
  - `debtRatioUpdatedAt` string: Timestamp in epoch milliseconds when the LTV was last updated
  - `defaultReason` string: The reason for the loan default
  - `embedded` LoanEmbedded
    - `childLoans` Loan[]: The list of child loans - Only applicable for agency lending parent loans
    - `collaterals` Collateral[]: The list of collaterals allocated to their respective loans
      - `amount` string, required: The amount of the transferred collateral
      - `collateralId` string, required: Unique identifier of the collateral
      - `createdAt` string, required: Timestamp in epoch milliseconds of the collateral creation
      - `currency` string, required: Currency code of the asset being used for collateral
      - `loanId` string, required: The ID of the loan
      - `mainCurrency` string, required: Currency code of the network being used to transfer the collateral
      - `portfolioId` string: The account where the collateral is being held
      - `unrealisedAmount` string: The amount of pending collateral funds. Can be positive or negative
      - `updatedAt` string: Timestamp in epoch milliseconds of the last collateral update
    - `counterparties` Counterparty[]: The list of counterparties
      - `backgroundImageId` string: Background image id
      - `counterpartyDescription` string: Counterparty description
      - `counterpartyId` string, required: Counterparty ID
      - `counterpartyName` string, required: Counterparty name
      - `counterpartyType` 'standard' | 'clearloop-exchange' | 'agency-desk', required
      - `extra` CounterpartyExtra
        - `exchangeId` string: Counterparty exchange id
      - `imageId` string: Image id
      - `networkTag` string, required: Counterparty network handle
      - `priority` string: Counterparty priority indicator. The higher the value, the higher the priority
      - `tags` CounterpartyTag[]: Counterparty tags. [See details](/enums/CounterpartyTag)
    - `loanAllocations` LoanAllocation[]: The list of transactions allocated to their respective loans
      - `allocationType` 'disburse' | 'top-up' | 'repay' | 'rebalance' | 'secure-collateral' | 'release-collateral' | 'disburse-externally' | 'top-up-externally' | 'repay-externally', required
      - `amount` string, required: The amount of the loan allocation
      - `counterpartyOrderId` string: The underlying deposit id
      - `createdAt` string, required: Timestamp in epoch milliseconds of the allocation creation
      - `createdBy` string: The ID of the user whose action resulted in the creation of the allocation
      - `currency` string, required: Currency code of the asset being used for collateral
      - `externalFailureDescription` string: The failure description of an allocation. Only populated when status is "failed" and the failure reason is known
      - `extra` LoanAllocationExtra, required
        - `acceptedAt` string: Timestamp in epoch milliseconds of the allocation acceptance
        - `acceptedBy` string: The ID of the user that accepted the allocation
        - `cancelledAt` string: Timestamp in epoch milliseconds of the allocation cancellation
        - `cancelledBy` string: The ID of the user that cancelled the allocation
        - `confirmedAt` string: Timestamp in epoch milliseconds of the allocation confirmation. Only applicable for off-platform loans
        - `confirmedBy` string: The ID of the user that confirmed the allocation. Only applicable for off-platform loans
        - `effectiveDate` string: Timestamp in epoch milliseconds of the effective date of external action. Only applicable for off-platform loans
      - `fromPortfolioId` string: The account that funds are transferred out of. Obfuscated depending on allocation type and requestor
      - `loanAllocationId` string, required: Unique identifier of the loan allocation
      - `loanId` string, required: The ID of the loan
      - `mainCurrency` string, required: Currency code of the network being used to transfer the collateral
      - `orderId` string: The underlying withdrawal id
      - `requestorCounterpartyId` string: The ID of the counterparty whose action resulted in the creation of the allocation
      - `status` 'new' | 'awaiting-acceptance' | 'accepted' | 'cancelled' | 'order-created' | 'awaiting-confirmation' | 'confirmed' | 'awaiting-funds' | 'awaiting-signature' | 'completed' | 'failed', required
      - `terminatedAt` string: Timestamp in epoch milliseconds of the allocation termination
      - `toPortfolioId` string: The account that funds are transferred to. Obfuscated depending on allocation type and requestor
      - `updatedAt` string: Timestamp in epoch milliseconds of the last allocation update
    - `loanInterest` LoanInterest
      - `accruedInterest` string, required: The interest amount accrued since the last interest payment or since the inception of loan
      - `createdAt` string, required: Timestamp in epoch milliseconds of the loan interest creation
      - `interestCurrency` string, required: The currency of the interest payment
      - `lastPaymentAt` string: Timestamp in epoch milliseconds of the last loan interest payment
      - `loanId` string, required: The ID of the loan
      - `loanInterestId` string, required: Unique identifier of the loan interest
      - `realisedInterest` string: The total interest amount paid by the borrower since the inception of loan
      - `unrealisedInterest` string: The amount of pending interest payment
      - `updatedAt` string: Timestamp in epoch milliseconds of the loan interest update
    - `loanModifications` LoanModification[]: The list of modifications to their respective loans
      - `createdAt` string, required: Timestamp in epoch milliseconds of the allocation creation
      - `createdBy` string: The ID of the user whose action resulted in the creation of the allocation
      - `extra` LoanModificationExtra, required
        - `acceptedAt` string: Timestamp in epoch milliseconds of the modification acceptance
        - `acceptedBy` string: The ID of the user that accepted the modification
        - `cancelledAt` string: Timestamp in epoch milliseconds of the modification cancellation
        - `cancelledBy` string: The ID of the user that cancelled the modification
        - `currentInterestRate` string: The current interest rate of the loan in basis points (BPS)
        - `currentMaturityDate` string: The current maturity date as timestamp in epoch milliseconds
        - `newInterestRate` string: The new interest rate for the loan in basis points (BPS)
        - `newMaturityDate` string: The new maturity date as timestamp in epoch milliseconds
      - `loanId` string, required: The ID of the loan
      - `loanModificationId` string, required: Unique identifier of the loan modification
      - `modificationType` 'rerate' | 'extend-term', required
      - `requestorCounterpartyId` string: The ID of the counterparty whose action resulted in the creation of the modification
      - `status` 'awaiting-acceptance' | 'accepted' | 'cancelled', required
      - `updatedAt` string: Timestamp in epoch milliseconds of the last modification update
    - `marginCall` MarginCall
  - `externalId` string, required: Unique identifier for externally originated loans, must be unique
  - `extra` LoanExtra
    - `acceptedAt` string: Timestamp in epoch milliseconds of the loan acceptance
    - `acceptedBy` string: The ID of the user that accepted the loan
    - `approvedAt` string: Timestamp in epoch milliseconds of the loan approval
    - `approvedBy` string: The ID of the user that approved the loan
    - `cancelledAt` string: Timestamp in epoch milliseconds of the loan cancellation
    - `cancelledBy` string: The ID of the user that cancelled the loan
    - `defaultThreshold` string: The LTV threshold at which the loan is in default
    - `defaultedAt` string: Timestamp in epoch milliseconds of the loan default
    - `defaultedBy` string: The ID of the user that defaulted the loan
    - `disbursedAt` string: Timestamp in epoch milliseconds of the loan disbursal
    - `externalDisbursal` boolean: Boolean representing if the loan funds are disbursed and managed off-platform
    - `externalInterestPayment` boolean: Boolean representing if interest payments are managed off-platform
    - `initialLtv` string: The LTV based off the initial collateral requirement
    - `initiallyRequiredCollateralUsd` string: The value of the initially required collateral denominated in US Dollars
    - `lenderFeeShare` string: Portion of interest fees allocated to the principal lender, expressed in basis points
    - `lenderFeeSharePercentage` string: Portion of interest fees allocated to the principal lender, expressed as a percentage
    - `marginCallExpiryPeriod` string: Duration of the margin call expiry period in hours, doesn't apply to ClearLoop loans
    - `marginCallThreshold` string: The LTV threshold at which the loan is in margin call
    - `rebalanceThreshold` string: The LTV threshold at which the borrower can request a rebalance
    - `rejectedAt` string: Timestamp in epoch milliseconds of the loan rejection
    - `rejectedBy` string: The ID of the user that rejected the loan
    - `repaidAt` string: Timestamp in epoch milliseconds of the loan repayment
    - `repaidBy` string: The ID of the user that repaid the loan
    - `requiredCollaterals` RequiredCollateral[]: The amount of the collateral required. Currently only a single collateral currency is supported
      - `amount` string, required: The amount of the collateral required
      - `amountInUsd` string: The value of the collateral denominated in US Dollars
      - `currency` string, required: Currency code of the asset being used for collateral
      - `mainCurrency` string, required: Currency code of the network being used to transfer the collateral
  - `interestRate` string: The interest rate for the loan in basis points (BPS)
  - `lenderCounterpartyId` string, required: The counterparty ID of the lender
  - `lenderOrganizationId` string, required: The organization ID of the lender. Obfuscated for borrower
  - `lenderPortfolioId` string: The ID of the account which is to be used for disbursing the loan to the borrower. Obfuscated for borrower
  - `loanId` string, required: Unique identifier of the loan
  - `loanType` 'agency-lending-parent-loan' | 'agency-inventory' | 'agency-lending-collateralised-child-loan' | 'agency-title-transfer-collateralised-loan' | 'agency-lending-uncollateralised-child-loan' | 'agency-uncollateralised-loan' | 'agency-lending-first-lien-child-loan' | 'agency-clearloop-loan' | 'agency-lending-pledge-collateralised-child-loan' | 'agency-pledge-collateralised-loan' | 'bilateral-lending-title-transfer-collateralised-loan' | 'bilateral-title-transfer-collateralised-loan' | 'bilateral-lending-pledge-collateralised-loan' | 'bilateral-pledge-collateralised-loan' | 'bilateral-lending-uncollateralised-loan' | 'bilateral-uncollateralised-loan', required
  - `mainCurrency` string, required: Currency code of the network being used to transfer the asset
  - `maturityDate` string: Timestamp in epoch milliseconds of the maturity date
  - `originalLoanAmount` string: The original amount of the loan at time of disbursal
  - `originalLoanValue` string: The original value of the loan at time of disbursal
  - `startDate` string: Timestamp in epoch milliseconds the loan is meant to be disbursed and activated
  - `status` 'awaiting-approval' | 'awaiting-acceptance' | 'awaiting-collateral' | 'awaiting-interest-payment' | 'disbursing' | 'active' | 'repaying' | 'defaulting' | 'partially-defaulting' | 'early-termination-in-progress' | 'early-termination-completed' | 'defaulted' | 'default-resolved' | 'cancelled' | 'rejected' | 'errored' | 'repaid' | 'repaying-interest' | 'interest-repaid' | 'securing-collateral' | 'collateral-secured' | 'releasing-collateral' | 'collateral-released' | 'closed', required
  - `terminatedAt` string: Timestamp in epoch milliseconds of the loan termination
  - `unrealisedAmount` string: The amount of pending loan funds; can be positive and negative
  - `updatedAt` string: Timestamp in epoch milliseconds of the most recent loan update

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `409`: Conflict

---

[API](https://skmtc.dev/copper-co/apis/copper-platform-api.md) - [All operations](https://skmtc.dev/copper-co/apis/copper-platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/copper-co/apis/copper-platform-api/revisions/44296120fc7d?raw)
