Copper.co Lending API
The lending API from Copper.co — 34 operation(s) for lending.
The lending API from Copper.co — 34 operation(s) for lending.
openapi: 3.2.0
info:
title: Copper Co Lending API
version: latest
description: 'Operations tagged lending across 2 of this provider''s published API definitions: copper-co-lending-openapi.json, copper-co-platform-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
tags:
- name: lending
paths:
/organizations/{organizationId}/loans:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
get:
description: Retrieve loans
parameters:
- description: The account to filter by
in: query
name: portfolioId
required: false
schema:
type: string
- in: query
name: loanIds
required: false
schema:
items:
type: string
type: array
- description: The loan side to filter by. [See details](/enums/LoanSide)
example:
- lend
in: query
name: loanSide
required: false
schema:
$ref: '#/components/schemas/LoanSide'
type: string
- description: '[See details](/enums/LoanType)'
in: query
name: loanTypes
required: false
schema:
items:
$ref: '#/components/schemas/LoanType'
type: array
- description: The loan status to filter by. [See details](/enums/LoanStatus)
example:
- disbursing,active
in: query
name: statuses
required: false
schema:
items:
$ref: '#/components/schemas/LoanStatus'
type: array
- description: Flag to filter out open loans
in: query
name: isOpen
required: false
schema:
default: 'false'
type: boolean
- description: Flag indicating if collaterals should be included in embedded
in: query
name: includeCollaterals
required: false
schema:
default: 'false'
type: boolean
- description: Flag indicating if counterparties should be included in embedded
in: query
name: includeCounterparties
required: false
schema:
default: 'false'
type: boolean
- description: The number of loans to include in the response
in: query
name: limit
required: false
schema:
type: string
- description: The number of loans to skip in the response
in: query
name: offset
required: false
schema:
type: string
- description: 'The field to sort by. Currently supported: updatedAt'
in: query
name: sortBy
required: false
schema:
default: LoanStatus by relevance
type: string
- description: The direction to sort by - must be used in conjunction with sortBy. [See details](/enums/SortingDirection)
in: query
name: sortDirection
required: false
schema:
$ref: '#/components/schemas/SortingDirection'
default: desc
type: string
- in: path
name: organizationId
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Loans'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Get Loans
tags:
- lending
post:
description: Initiate loan creation. This action can only be carried out by the lender.
parameters:
- in: path
name: organizationId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateLoan'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Create Loan
tags:
- lending
patch:
description: Obtain the loan LTV or needed collateral amount for given loan parameters.
parameters:
- description: application/vnd.calculate-ltv-dry-run+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
requestBody:
content:
application/vnd.calculate-ltv-dry-run+json:
schema:
$ref: '#/components/schemas/CalculateLtvDryRun'
responses:
'200':
content:
application/vnd.calculate-ltv-dry-run+json:
schema:
$ref: '#/components/schemas/LtvDryRunResult'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Calculate Loan LTV Dry Run
tags:
- lending
/organizations/{organizationId}/loans/{acceptExtensionLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the loan term extension request. Only requests that were initiated by the counterparty can be accepted.
parameters:
- description: application/vnd.accept-loan-term-extension+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptExtensionLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan-term-extension+json:
schema:
$ref: '#/components/schemas/ExtendLoan'
responses:
'200':
content:
application/vnd.accept-loan-term-extension+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Term Extension
tags:
- lending
/organizations/{organizationId}/loans/{acceptInterestLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the loan interest payment request.
parameters:
- description: application/vnd.accept-interest-payment+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptInterestLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-interest-payment+json:
schema:
$ref: '#/components/schemas/InterestPaymentAction'
responses:
'200':
content:
application/vnd.accept-interest-payment+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Interest Payment
tags:
- lending
/organizations/{organizationId}/loans/{acceptLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept a loan. This action can only be carried out by the borrower.
parameters:
- description: application/vnd.accept-loan+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan+json:
schema:
$ref: '#/components/schemas/AcceptLoan'
responses:
'200':
content:
application/vnd.accept-loan+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan
tags:
- lending
/organizations/{organizationId}/loans/{acceptRebalanceLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the loan rebalance request. Only a lender can carry out this action.
parameters:
- description: application/vnd.accept-loan-rebalance+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptRebalanceLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan-rebalance+json:
schema:
$ref: '#/components/schemas/ActionLoan'
responses:
'200':
content:
application/vnd.accept-loan-rebalance+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Rebalance
tags:
- lending
/organizations/{organizationId}/loans/{acceptRepaymentLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the full or partial loan repayment request. Only requests that were initiated by the counterparty can be accepted.
parameters:
- description: application/vnd.accept-loan-repayment+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptRepaymentLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan-repayment+json:
schema:
$ref: '#/components/schemas/RepayLoan'
responses:
'200':
content:
application/vnd.accept-loan-repayment+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Repayment
tags:
- lending
/organizations/{organizationId}/loans/{acceptRerateLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the loan interest rerate request. Only the borrower can carry out this action.
parameters:
- description: application/vnd.accept-loan-rerate+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptRerateLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan-rerate+json:
schema:
$ref: '#/components/schemas/LoanModificationAction'
responses:
'200':
content:
application/vnd.accept-loan-rerate+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Rerate
tags:
- lending
/organizations/{organizationId}/loans/{acceptTopUpLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Accept the loan top up request. Only a borrower can carry out this action.
parameters:
- description: application/vnd.accept-loan-top-up+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: acceptTopUpLoanId
required: true
schema:
type: string
requestBody:
content:
application/vnd.accept-loan-top-up+json:
schema:
$ref: '#/components/schemas/ActionLoan'
responses:
'200':
content:
application/vnd.accept-loan-top-up+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Accept Loan Top Up
tags:
- lending
/organizations/{organizationId}/loans/{approveLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
- description: testnet.copper.co
url: https://api.testnet.copper.co/platform
patch:
description: Approve a loan. This action can only be carried out by the lender if a loan is in awaiting-approval state.
parameters:
- description: application/vnd.approve-loan+json
in: header
name: Content-Type
required: false
schema:
type: string
- in: path
name: organizationId
required: true
schema:
type: string
- in: path
name: approveLoanId
required: true
schema:
type: string
responses:
'200':
content:
application/vnd.approve-loan+json:
schema:
$ref: '#/components/schemas/Loan'
description: OK
'400':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- bad-request
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Bad Request
'403':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- forbidden
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Forbidden
'409':
content:
application/json:
schema:
properties:
error:
description: The machine-readable error code
examples:
- conflict
type: string
message:
description: A human-readable message providing more details about the error
type: string
type: object
description: Conflict
summary: Approve Loan
tags:
- lending
/organizations/{organizationId}/loans/{cancelExtensionLoanId}:
servers:
- description: platform.copper.co
url: https://api.copper.co/platform
- description: demo.copper.co
url: https://api.stage.copper.co/platform
# --- truncated at 32 KB (141 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/copper-co/refs/heads/main/openapi/copper-co-lending-api-openapi.yml