Canopy Cards API
The Cards API from Canopy — 3 operation(s) for cards.
The Cards API from Canopy — 3 operation(s) for cards.
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-cards-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 Cards 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: Cards
paths:
/revolving/v1/accounts/{account_id}/line_of_credit/{line_of_credit_id}/cards:
post:
tags:
- Cards
summary: Issue a card for a line of credit
description: Issues a card for a line of credit.
operationId: LineOfCreditCardsCBV_create_card_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__cards_post
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
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateLineOfCreditCardSchema'
description: Card issuance parameters
responses:
'201':
description: Returns the issued card details
content:
application/json:
schema:
$ref: '#/components/schemas/LineOfCreditCardResponse'
'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'
get:
tags:
- Cards
summary: Get cards for a line of credit
operationId: LineOfCreditCardsCBV_get_cards_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__cards_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
responses:
'200':
description: Returns the card details
content:
application/json:
schema:
$ref: '#/components/schemas/LineOfCreditCardsResponse'
'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}/cards/{card_id}:
put:
tags:
- Cards
summary: Update the status of a card for a line of credit (freeze, unfreeze, cancel)
description: Updates the status of a card for a line of credit.
operationId: LineOfCreditCardsCBV_update_card_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__cards__card_id__put
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: card_id
in: path
required: true
schema:
type: string
description: ID of the Card
title: Card Id
description: ID of the Card
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateLineOfCreditCardSchema'
description: Card issuance parameters
responses:
'200':
description: Returns the card details with the updated status
content:
application/json:
schema:
$ref: '#/components/schemas/LineOfCreditCardResponse'
'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'
get:
tags:
- Cards
summary: Get a card for a line of credit
description: Gets a card for a line of credit.
operationId: LineOfCreditCardsCBV_get_card_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__cards__card_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: card_id
in: path
required: true
schema:
type: string
description: ID of the Card
title: Card Id
description: ID of the Card
responses:
'200':
description: Returns the card details
content:
application/json:
schema:
$ref: '#/components/schemas/LineOfCreditCardResponse'
'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}/cards/{card_id}/renew:
post:
tags:
- Cards
summary: Renew a card for a line of credit
description: Renews a card for a line of credit.
operationId: LineOfCreditCardsCBV_renew_card_revolving_v1_accounts__account_id__line_of_credit__line_of_credit_id__cards__card_id__renew_post
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: card_id
in: path
required: true
schema:
type: string
description: ID of the Card
title: Card Id
description: ID of the Card
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateLineOfCreditCardSchema'
description: Card issuance parameters
responses:
'201':
description: Returns the renewed card details
content:
application/json:
schema:
$ref: '#/components/schemas/LineOfCreditCardResponse'
'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'
components:
schemas:
IssuerProcessor:
type: string
enum:
- STRIPE
- FIRSTDATA
- MOCK_FOR_TESTING
title: IssuerProcessor
IssuerProcessorCardShippingInfo:
properties:
address:
$ref: '#/components/schemas/AddressDetails'
phone_number:
type: string
title: Phone Number
name:
type: string
title: Name
require_signature:
type: boolean
title: Require Signature
default: true
shipping_service:
$ref: '#/components/schemas/IssuerProcessorCardShippingService'
default: STANDARD
type: object
required:
- address
- phone_number
- name
title: IssuerProcessorCardShippingInfo
CardStatusResponse:
properties:
status:
$ref: '#/components/schemas/IssuerProcessorCardStatus'
description: The status of the card.
hidden: false
cancellation_reason:
$ref: '#/components/schemas/IssuerProcessorCardCancellationReason'
description: The reason the card was cancelled, if applicable.
type: object
required:
- status
title: CardStatusResponse
description: The status of the card.
IssuerProcessorCardCancellationReason:
type: string
enum:
- LOST
- STOLEN
- CUSTOMER_REQUESTED
title: IssuerProcessorCardCancellationReason
IssuerProcessorCardBrand:
type: string
enum:
- VISA
- MASTERCARD
title: IssuerProcessorCardBrand
IssuerProcessorCardType:
type: string
enum:
- PHYSICAL
- VIRTUAL
title: IssuerProcessorCardType
ErrBadRequestSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Your request is invalid.
type: object
required:
- message
title: ErrBadRequestSchema
IssuerProcessorCardStatusInput:
type: string
enum:
- ACTIVE
- INACTIVE
- CANCELED
title: IssuerProcessorCardStatusInput
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
IssuerProcessorCardSpendingLimits:
properties:
amount_cents:
type: integer
title: Amount Cents
interval_type:
$ref: '#/components/schemas/IssuerProcessorCardSpendingLimitIntervalType'
type: object
required:
- amount_cents
- interval_type
title: IssuerProcessorCardSpendingLimits
AddressDetails:
properties:
line1:
type: string
title: Line1
city:
type: string
title: City
state:
type: string
title: State
postal_code:
type: string
title: Postal Code
country:
type: string
title: Country
line2:
type: string
title: Line2
type: object
required:
- line1
- city
- state
- postal_code
- country
title: AddressDetails
IssuerProcessorCardShippingService:
type: string
enum:
- STANDARD
- EXPRESS
- PRIORITY
title: IssuerProcessorCardShippingService
LineOfCreditCardsResponse:
properties:
results:
items:
$ref: '#/components/schemas/LineOfCreditCardResponse'
type: array
title: Results
description: The cards associated with the line of credit.
hidden: false
type: object
required:
- results
title: LineOfCreditCardsResponse
description: Response schema for retrieving line of credit cards endpoint.
IssuerProcessorCardStatus:
type: string
enum:
- ACTIVE
- INACTIVE
- CANCELED
- PENDING
title: IssuerProcessorCardStatus
ErrConflictSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Entity already exists.
type: object
required:
- message
title: ErrConflictSchema
LineOfCreditCardResponse:
properties:
account_id:
type: string
title: Account Id
description: The ID of the account associated with the line of credit.
hidden: false
card_id:
type: string
title: Card Id
description: The ID of the card associated with the the line of credit.
hidden: false
line_of_credit_id:
type: string
title: Line Of Credit Id
description: The ID of the line of credit.
hidden: false
issuer_card_id:
type: string
title: Issuer Card Id
description: The issuer generated ID of the card.
hidden: false
issuer_cardholder_id:
type: string
title: Issuer Cardholder Id
description: The issuer generated ID of the cardholder.
hidden: false
cardholder_details:
$ref: '#/components/schemas/CardholderDetails'
description: The cardholder details.
hidden: false
issuer_name:
$ref: '#/components/schemas/IssuerProcessor'
description: The issuer name.
hidden: false
card_type:
$ref: '#/components/schemas/IssuerProcessorCardType'
description: The card type.
hidden: false
card_brand:
$ref: '#/components/schemas/IssuerProcessorCardBrand'
description: The card brand (VISA, MASTERCARD, etc).
hidden: false
exp_month:
type: integer
title: Exp Month
description: The expiration month of the card.
hidden: false
exp_year:
type: integer
title: Exp Year
description: The expiration year of the card.
hidden: false
last_digits:
type: string
title: Last Digits
description: The last 4 digits of the card number.
hidden: false
card_status:
$ref: '#/components/schemas/CardStatusResponse'
hidden: false
spending_limits:
items:
$ref: '#/components/schemas/IssuerProcessorCardSpendingLimits'
type: array
title: Spending Limits
description: The configured spending limits for the card.
hidden: false
card_metadata:
additionalProperties: true
type: object
title: Card Metadata
description: The metadata of the card.
hidden: false
created_at:
type: string
title: Created At
description: The datetime the card was created.
hidden: false
replaced_by_card_id:
type: string
title: Replaced By Card Id
description: The ID of the card that replaced this card.
type: object
required:
- account_id
- card_id
- line_of_credit_id
- issuer_card_id
- issuer_cardholder_id
- cardholder_details
- issuer_name
- card_type
- card_brand
- exp_month
- exp_year
- last_digits
- card_status
- spending_limits
- card_metadata
- created_at
title: LineOfCreditCardResponse
description: Response schema for retrieving line of credit cards endpoint for a single card.
UpdateLineOfCreditCardSchema:
properties:
status:
$ref: '#/components/schemas/IssuerProcessorCardStatusInput'
description: The new status of the card.
examples:
- ACTIVE
hidden: false
cancellation_reason:
$ref: '#/components/schemas/IssuerProcessorCardCancellationReason'
description: The reason the card was cancelled, if applicable.
examples:
- LOST
type: object
required:
- status
title: UpdateLineOfCreditCardSchema
description: Request schema for updating a card for a line of credit.
CardholderDetails:
properties:
email:
type: string
title: Email
first_name:
type: string
title: First Name
last_name:
type: string
title: Last Name
phone_number:
type: string
title: Phone Number
type: object
required:
- email
- first_name
- last_name
- phone_number
title: CardholderDetails
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
IssuerProcessorCardSpendingLimitIntervalType:
type: string
enum:
- DAILY
- WEEKLY
- MONTHLY
- YEARLY
title: IssuerProcessorCardSpendingLimitIntervalType
CreateLineOfCreditCardSchema:
properties:
type:
$ref: '#/components/schemas/IssuerProcessorCardType'
description: The type of card to create.
examples:
- PHYSICAL
- VIRTUAL
hidden: false
spending_limits:
items:
$ref: '#/components/schemas/IssuerProcessorCardSpendingLimits'
type: array
title: Spending Limits
description: The spending limits for the card.
examples:
- amount_cents: 100000
interval_type: DAILY
hidden: false
cardholder:
$ref: '#/components/schemas/CardholderDetails'
description: The cardholder information for the card.
examples:
- email: john.doe@example.com
name: John Doe
phone_number: 123-456-7890
hidden: false
shipping_info:
$ref: '#/components/schemas/IssuerProcessorCardShippingInfo'
description: The shipping information for the card.
examples:
- address:
city: Springfield
country: US
line_1: 123 Main St
postal_code: '62701'
state: IL
name: John Doe
phone_number: 123-456-7890
require_signature: true
shipping_service: EXPRESS
metadata:
additionalProperties: {}
type: object
title: Metadata
description: Metadata that can be associated with the card.
examples:
- key: value
issuer:
$ref: '#/components/schemas/IssuerProcessor'
description: The issuer of the card.
examples:
- STRIPE
hidden: false
type: object
required:
- type
- spending_limits
- cardholder
- issuer
title: CreateLineOfCreditCardSchema
description: Request schema for issuing a card for a line of credit.
ErrNotFoundSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- Entity not found.
type: object
required:
- message
title: ErrNotFoundSchema
ErrServerErrorSchema:
properties:
message:
type: string
title: Message
description: The error message
examples:
- A server error has occurred.
type: object
required:
- message
title: ErrServerErrorSchema
securitySchemes:
HTTPBearer:
type: http
scheme: bearer