Canopy Statements API
Manage statements on a line of credit for your customers in Canopy.
Manage statements on a line of credit for your customers in Canopy.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/canopyservicing-com:canopyservicing-com-statements-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Canopy Servicing Core Statements API
description: 'Canopy allows you to easily manage credit, installment, or other more complex lending programs from a servicing and compliance perspective -
whether newly launched or migrated from existing systems. using canopy, you can track balances and transactions for each customer of your product, both in real-time and historically.
You can see how various policy and product changes would impact your customers, and readily generate compliance reports and minimize your risk with all real-time information always on hand.
Canopy additionally surfaces information around all of your lending activity through its intuitive ui which provides a customer support interface as well as at-a-glance data needed for compliance and insights.
Simply configure your product`s policies through our create product api endpoint, and then you can immediately begin adding customer accounts and relying on canopy for accurate servicing information.'
contact:
name: Canopy Support
url: https://www.canopyservicing.com/contact
email: support@canopyservicing.com
version: 1.0.0
servers:
- url: Contact sales to enable your sandbox
description: Your private sandbox environment
- url: https://demo-api.us.canopyservicing.com
description: Demo environment
tags:
- name: Statements
description: Manage statements on a line of credit for your customers in Canopy.
paths:
/installment/v1/accounts/{account_id}/installment_loans/{loan_id}/statements:
get:
tags:
- Statements
summary: Get statements for a loan
description: Get statements for a loan.
operationId: StatementCBV_get_loan_statements_installment_v1_accounts__account_id__installment_loans__loan_id__statements_get
security:
- HTTPBearer: []
parameters:
- name: account_id
in: path
required: true
schema:
type: string
title: Account Id
- name: loan_id
in: path
required: true
schema:
type: string
description: ID of the Loan
title: Loan Id
description: ID of the Loan
- name: starting_after
in: query
required: false
schema:
type: string
description: Encoded pagination marker to fetch next page
title: Starting After
description: Encoded pagination marker to fetch next page
- name: ending_before
in: query
required: false
schema:
type: string
description: Encoded pagination marker to fetch previous page
title: Ending Before
description: Encoded pagination marker to fetch previous page
- name: limit
in: query
required: false
schema:
type: integer
description: Maximum number of records to return
title: Limit
description: Maximum number of records to return
- name: effective_at_after
in: query
required: false
schema:
type: string
description: Filter statements by effective date after the given date
examples:
- '2021-01-01T00:00:00Z'
title: Effective At After
description: Filter statements by effective date after the given date
- name: effective_at_before
in: query
required: false
schema:
type: string
description: Filter statements by effective date before the given date
examples:
- '2021-02-01T00:00:00Z'
title: Effective At Before
description: Filter statements by effective date before the given date
responses:
'200':
description: Returns a page of statements for a loan
content:
application/json:
schema:
$ref: '#/components/schemas/infrastructure__utils__pagination__PaginatedResults_GetStatementResponse___1'
'400':
description: Your request is invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrBadRequestSchema'
'404':
description: Entity not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrNotFoundSchema'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
'500':
description: A server error has occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrServerErrorSchema'
/installment/v1/accounts/{account_id}/installment_loans/{loan_id}/statements/{statement_id}:
get:
tags:
- Statements
summary: Get a loan statement by id
description: Get a loan statement by id.
operationId: StatementCBV_get_loan_statement_by_id_installment_v1_accounts__account_id__installment_loans__loan_id__statements__statement_id__get
security:
- HTTPBearer: []
parameters:
- name: account_id
in: path
required: true
schema:
type: string
title: Account Id
- name: loan_id
in: path
required: true
schema:
type: string
description: ID of the Loan
title: Loan Id
description: ID of the Loan
- name: statement_id
in: path
required: true
schema:
type: string
description: ID of the Statement
title: Statement Id
description: ID of the Statement
responses:
'200':
description: Returns a loan statement
content:
application/json:
schema:
$ref: '#/components/schemas/application__schemas__installments__statements__get_statement_response__GetStatementResponse'
'404':
description: Entity not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrNotFoundSchema'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
'500':
description: A server error has occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrServerErrorSchema'
/advance/v1/accounts/{account_id}/advances/{advance_id}/statements/{statement_id}:
get:
tags:
- Statements
summary: Get a statement for an advance
operationId: AdvanceCBV_get_advance_statement_advance_v1_accounts__account_id__advances__advance_id__statements__statement_id__get
security:
- HTTPBearer: []
parameters:
- name: account_id
in: path
required: true
schema:
type: string
title: Account Id
- name: advance_id
in: path
required: true
schema:
type: string
description: The unique identifier of the advance.
title: Advance Id
description: The unique identifier of the advance.
- name: statement_id
in: path
required: true
schema:
type: string
description: The unique identifier of the statement.
title: Statement Id
description: The unique identifier of the statement.
- name: effective_at
in: query
required: false
schema:
type: string
description: The date and time at which to fetch the advance statement
title: Effective At
description: The date and time at which to fetch the advance statement
responses:
'200':
description: Returns a specific statement for the specified advance.
content:
application/json:
schema:
$ref: '#/components/schemas/GetAdvanceStatementResponse'
'404':
description: Entity not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrNotFoundSchema'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
'500':
description: A server error has occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrServerErrorSchema'
/revolving/v1/accounts/{account_id}/line_of_credit/{line_of_credit_id}/statements:
get:
tags:
- Statements
summary: Get statements for a line of credit
description: Gets statements for a line of credit.
operationId: StatementCBV_get_statements_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__statements_get
security:
- HTTPBearer: []
parameters:
- name: account_id
in: path
required: true
schema:
type: string
title: Account Id
- name: line_of_credit_id
in: path
required: true
schema:
type: string
description: ID of the Line of Credit
title: Line Of Credit Id
description: ID of the Line of Credit
- name: starting_after
in: query
required: false
schema:
type: string
description: Encoded pagination marker to fetch next page
title: Starting After
description: Encoded pagination marker to fetch next page
- name: ending_before
in: query
required: false
schema:
type: string
description: Encoded pagination marker to fetch previous page
title: Ending Before
description: Encoded pagination marker to fetch previous page
- name: limit
in: query
required: false
schema:
type: integer
description: Maximum number of records to return
title: Limit
description: Maximum number of records to return
- name: effective_at_after
in: query
required: false
schema:
type: string
description: Filter statements by effective date after the given date
examples:
- '2021-01-01T00:00:00Z'
title: Effective At After
description: Filter statements by effective date after the given date
- name: effective_at_before
in: query
required: false
schema:
type: string
description: Filter statements by effective date before the given date
examples:
- '2021-01-01T00:00:00Z'
title: Effective At Before
description: Filter statements by effective date before the given date
responses:
'200':
description: Returns a page of statements for a line of credit
content:
application/json:
schema:
$ref: '#/components/schemas/infrastructure__utils__pagination__PaginatedResults_GetStatementResponse___2'
'400':
description: Your request is invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrBadRequestSchema'
'404':
description: Entity not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrNotFoundSchema'
'409':
description: Entity already exists.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrConflictSchema'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
'500':
description: A server error has occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrServerErrorSchema'
/revolving/v1/accounts/{account_id}/line_of_credit/{line_of_credit_id}/statements/{statement_id}:
get:
tags:
- Statements
summary: Get a line of credit statement by id
description: Gets a line of credit statement by id.
operationId: StatementCBV_get_statement_by_id_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__statements__statement_id__get
security:
- HTTPBearer: []
parameters:
- name: account_id
in: path
required: true
schema:
type: string
title: Account Id
- name: line_of_credit_id
in: path
required: true
schema:
type: string
description: ID of the Line of Credit
title: Line Of Credit Id
description: ID of the Line of Credit
- name: statement_id
in: path
required: true
schema:
type: string
description: ID of the Statement
title: Statement Id
description: ID of the Statement
responses:
'200':
description: Returns a line of credit statement
content:
application/json:
schema:
$ref: '#/components/schemas/application__schemas__revolving__statements__get_statement_response__GetStatementResponse'
'404':
description: Entity not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrNotFoundSchema'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
'500':
description: A server error has occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrServerErrorSchema'
components:
schemas:
application__schemas__installments__statements__get_statement_response__GetStatementResponse:
properties:
account_id:
type: string
title: Account Id
description: The ID of the account associated with the statement.
hidden: false
loan_id:
type: string
title: Loan Id
description: The ID of the installment loan associated with the statement.
hidden: false
statement_id:
type: string
title: Statement Id
description: The ID of the statement.
hidden: false
statement_inclusive_start:
type: string
title: Statement Inclusive Start
description: The inclusive start date of the statement.
hidden: false
statement_exclusive_end:
type: string
title: Statement Exclusive End
description: The exclusive end date of the statement.
hidden: false
statement_hash:
type: string
title: Statement Hash
description: The unique hash of the statement.
hidden: false
effective_at:
type: string
title: Effective At
description: The effective date of the statement.
hidden: false
created_at:
type: string
title: Created At
description: The creation date of the statement.
hidden: false
details:
additionalProperties: {}
type: object
title: Details
description: The details of the statement.
type: object
required:
- account_id
- loan_id
- statement_id
- statement_inclusive_start
- statement_exclusive_end
- statement_hash
- effective_at
- created_at
title: GetStatementResponse
description: Response schema for the statement related endpoints.
infrastructure__utils__pagination__PaginatedResults_GetStatementResponse___1:
properties:
results:
items:
$ref: '#/components/schemas/application__schemas__installments__statements__get_statement_response__GetStatementResponse'
type: array
title: Results
paging:
$ref: '#/components/schemas/EncodedPagingInfo'
meta:
additionalProperties: {}
type: object
title: Meta
type: object
required:
- results
- paging
title: PaginatedResults[GetStatementResponse]
ErrBadRequestSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Your request is invalid.
type: object
required:
- message
title: ErrBadRequestSchema
application__schemas__revolving__statements__get_statement_response__GetStatementResponse:
properties:
account_id:
type: string
title: Account Id
description: The ID of the account associated with the statement.
hidden: false
line_of_credit_id:
type: string
title: Line Of Credit Id
description: The ID of the line of credit associated with the statement.
hidden: false
statement_id:
type: string
title: Statement Id
description: The ID of the statement.
hidden: false
statement_inclusive_start:
type: string
title: Statement Inclusive Start
description: The inclusive start date of the statement.
hidden: false
statement_exclusive_end:
type: string
title: Statement Exclusive End
description: The exclusive end date of the statement.
hidden: false
statement_hash:
type: string
title: Statement Hash
description: The unique hash of the statement.
hidden: false
effective_at:
type: string
title: Effective At
description: The effective date of the statement.
hidden: false
created_at:
type: string
title: Created At
description: The creation date of the statement.
hidden: false
details:
additionalProperties: {}
type: object
title: Details
description: The details of the statement.
type: object
required:
- account_id
- line_of_credit_id
- statement_id
- statement_inclusive_start
- statement_exclusive_end
- statement_hash
- effective_at
- created_at
title: GetStatementResponse
description: Response schema for the statement related endpoints.
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
infrastructure__utils__pagination__PaginatedResults_GetStatementResponse___2:
properties:
results:
items:
$ref: '#/components/schemas/application__schemas__revolving__statements__get_statement_response__GetStatementResponse'
type: array
title: Results
paging:
$ref: '#/components/schemas/EncodedPagingInfo'
meta:
additionalProperties: {}
type: object
title: Meta
type: object
required:
- results
- paging
title: PaginatedResults[GetStatementResponse]
ErrNotFoundSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Entity not found.
type: object
required:
- message
title: ErrNotFoundSchema
ErrConflictSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Entity already exists.
type: object
required:
- message
title: ErrConflictSchema
EncodedPagingInfo:
properties:
starting_after:
type: string
title: Starting After
description: Encoded pagination marker to fetch next page
ending_before:
type: string
title: Ending Before
description: Encoded pagination marker to fetch previous page
has_more:
type: boolean
title: Has More
description: Indicates if there are more records.
default: false
type: object
title: EncodedPagingInfo
description: Represents paging information encoded as base64 JSON strings.
ErrServerErrorSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- A server error has occurred.
type: object
required:
- message
title: ErrServerErrorSchema
GetAdvanceStatementResponse:
properties:
advance_id:
type: string
title: Advance Id
description: The unique identifier of the advance
hidden: false
statement_id:
type: string
title: Statement Id
description: The unique identifier of the statement
hidden: false
statement_hash:
type: string
title: Statement Hash
description: Hash of the statement content
hidden: false
statement_inclusive_start:
type: string
title: Statement Inclusive Start
description: Start of the statement period (inclusive)
hidden: false
statement_exclusive_end:
type: string
title: Statement Exclusive End
description: End of the statement period (exclusive)
hidden: false
details:
additionalProperties: {}
type: object
title: Details
description: Statement details including balances and activity
type: object
required:
- advance_id
- statement_id
- statement_hash
- statement_inclusive_start
- statement_exclusive_end
title: GetAdvanceStatementResponse
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
securitySchemes:
HTTPBearer:
type: http
scheme: bearer