Modulr Channel Manager Card API

The Channel Manager Card API from Modulr — 9 operation(s) for channel manager card.

Operations 10

POST /channel-managers/cards/{cardId} Channel Manager Update card #
PATCH /channel-managers/cards/{cardId} Channel Manager Update card #
POST /channel-managers/cards/{cardId}/replace Channel Manager Replace card #
POST /channel-managers/cards/{cardId}/custom-fields Channel Manager Update Card Custom Fields #
POST /channel-managers/cards/enquiry Channel Manager Card enquiry #
POST /channel-managers/accounts/{accountId}/cards Channel Manager Create card #
GET /channel-managers/cards Retrieve channel manager's cards #
GET /channel-managers/cards/activities Retrieve channel manager's card activities #
GET /channel-managers/card-reports Retrieve channel manager's card reports #
GET /channel-managers/card-reports/{reportId}/report Channel Manager download a specific card report #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/modulr-channel-manager-card-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

modulr-channel-manager-card-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Modulr Channel Manager Card API
  description: Modulr API
  license:
    name: © Modulr Finance
    url: https://www.modulrfinance.com
  version: '1.0'
servers:
- url: https://api-sandbox.modulrfinance.com/api-sandbox-token
security:
- modulo_security: []
tags:
- name: Channel Manager Card
paths:
  /channel-managers/cards/{cardId}:
    post:
      tags:
      - Channel Manager Card
      summary: Channel Manager Update card
      description: Update a virtual card
      operationId: channelManagerUpdateCard
      parameters:
      - name: cardId
        in: path
        description: The card id.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channelmanager.UpdateCardRequest'
        required: true
      responses:
        '204':
          description: Virtual card updated successfully
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
    patch:
      tags:
      - Channel Manager Card
      summary: Channel Manager Update card
      description: Update card - for now, the removal of cancellationDate, authWindowStartDate and authWindowEndDate fields is the only allowed action
      operationId: channelManagerUpdateCard_1
      parameters:
      - name: cardId
        in: path
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                oneOf:
                - $ref: '#/components/schemas/channelmanager.Add'
                - $ref: '#/components/schemas/channelmanager.Copy'
                - $ref: '#/components/schemas/channelmanager.Move'
                - $ref: '#/components/schemas/channelmanager.Remove'
                - $ref: '#/components/schemas/channelmanager.Replace'
                - $ref: '#/components/schemas/channelmanager.Test'
        required: true
      responses:
        '204':
          description: Card updated successfully
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
        '403':
          description: Forbidden. Token may be missing or invalid
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/cards/{cardId}/replace:
    post:
      tags:
      - Channel Manager Card
      summary: 'Channel Manager Replace card '
      description: Replace a card, with a reason STOLEN, DAMAGED, LOST, RENEW
      operationId: channelManagerReplaceCard
      parameters:
      - name: cardId
        in: path
        description: The ID of the card
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channelmanager.CardReplacementRequest'
        required: true
      responses:
        '201':
          description: Card replaced successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CardReplacementResponse'
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/cards/{cardId}/custom-fields:
    post:
      tags:
      - Channel Manager Card
      summary: Channel Manager Update Card Custom Fields
      description: Replace the values of a card's custom fields if they exist or create new custom fields with the given values if they do not exist
      operationId: channelManagerUpdateCardCustomFields
      parameters:
      - name: cardId
        in: path
        description: Id of the card for which the custom fields should be updated
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channelmanager.UpdateCardCustomFieldsRequest'
        required: true
      responses:
        '204':
          description: Custom fields updated successfully
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/cards/enquiry:
    post:
      tags:
      - Channel Manager Card
      summary: Channel Manager Card enquiry
      description: Retrieve card details by PAN
      operationId: channelManagerCardEnquiry
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channelmanager.CardEnquiryRequest'
        required: true
      responses:
        '200':
          description: Card enquiry successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CardResponse'
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/accounts/{accountId}/cards:
    post:
      tags:
      - Channel Manager Card
      summary: 'Channel Manager Create card '
      description: Create a new virtual card
      operationId: channelManagerCreateCard
      parameters:
      - name: accountId
        in: path
        description: The account which card funds will be raised from.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/channelmanager.CreateCardRequest'
        required: true
      responses:
        '201':
          description: Virtual card created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CreateCardResponse'
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/cards:
    get:
      tags:
      - Channel Manager Card
      summary: Retrieve channel manager's cards
      description: Retrieve cards owned by the channel manager
      operationId: channelManagerGetCards
      parameters:
      - name: fromCreatedDate
        in: query
        description: Cards created on or after this date. Cannot be older than 7 days. Format is `yyyy-MM-dd'T'HH:mm:ss` with zero offset from UTC. Required if toCreatedDate is supplied.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: 2019-03-01T01:01:01+0000
      - name: toCreatedDate
        in: query
        description: Cards created on or before this date. Format is `yyyy-MM-dd'T'HH:mm:ss` with zero offset from UTC. Optional if fromCreatedDate is supplied.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: 2019-03-01T01:01:01+0000
      - name: statuses
        in: query
        description: Statuses of cards to be retrieved
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - CREATED
          - ACTIVE
          - BLOCKED
          - SUSPENDED
          - CANCELLED
          - EXPIRED
      - name: id
        in: query
        description: The ID of the card to view.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: V000000001
      - name: accountId
        in: query
        description: The ID of account to retrieve cards for.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: A0000001
      - name: externalRef
        in: query
        description: The client reference of the card to retrieve.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: ExampleCardRef123
      - name: customerId
        in: query
        description: The ID of the customer to retrieve cards for.
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: C0000001
      - name: currency
        in: query
        description: Currency to get cards for. Expected ISO Standard currency name i.e. GBP, EUR etc
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: GBP
      - name: customFieldKey
        in: query
        description: Custom Field Key to get cards for
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: BookingReference
      - name: customFieldValue
        in: query
        description: Custom Field Value corresponding to the custom field key to get cards for
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: Booking123
      - name: accountIds
        in: query
        description: Set of account Ids to retrieve cards for.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          uniqueItems: true
        example: A0000001
      - name: channelManagerId
        in: query
        description: The Id of the Channel manager
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: M883412312
      - name: frequencyUsage
        in: query
        description: How many times a card can be authorised against. This parameter is rejected for physical cards
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - SINGLE_USE
          - MULTI_USE
      - name: page
        in: query
        description: Page to fetch (0 indexed)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          minimum: 0
      - name: size
        in: query
        description: Size of page to fetch
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          maximum: 500
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CardPageResponse'
        '204':
          description: Cards successfully retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CardPageResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/cards/activities:
    get:
      tags:
      - Channel Manager Card
      summary: Retrieve channel manager's card activities
      description: Retrieve card activities owned by the channel manager or over specific Date range.View card activities for a single card when a card ID is specified, time frame is optional.
      operationId: channelManagerGetCardActivities
      parameters:
      - name: fromCreatedDate
        in: query
        description: 'Activities with a created date equal to or after this date. Format: ''yyyy-MM-dd''T''HH:mm:ssZ''. Value cannot be more than 7 days in the past when mandatory. Value is optional if only a single Card ID has been provided'
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: 2019-01-01T15:14:38-0000
      - name: toCreatedDate
        in: query
        description: 'Activities with a created date before this date. Format: ''yyyy-MM-dd''T''HH:mm:ssZ''. Value is optional if only a single Card ID has been provided or from date is within last 7 days'
        required: false
        style: form
        explode: true
        schema:
          type: string
        example: 2019-01-01T15:14:38-0000
      - name: statuses
        in: query
        description: Activities with possibly multiple statuses equal to this value. Omitting this is equivalent to supplying all values
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - DECLINED
          - APPROVED
          - SETTLED
          - EXPIRED
          - APPLIED
          - PENDING
      - name: types
        in: query
        description: Activities with possibly multiple types equal to this value. Omitting this is equivalent to supplying all values
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - AUTHORISATION
          - REVERSAL
          - SETTLEMENT
          - REFUND
          - ORIGINAL_CREDIT
          - OFFLINE_TRANSACTION
          - ASI
          - CREDIT_AUTH
          - CREDIT_AUTH_REV
      - name: cards
        in: query
        description: Activities with possibly multiple card IDs equal to this value. Only one of 'cards' or 'accounts' must be supplied
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: accounts
        in: query
        description: Activities with possibly multiple account IDs equal to this value. Only one of 'cards' or 'accounts' must be supplied
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: ids
        in: query
        description: Activities with the specified IDs. Only 'page' and/or 'size' may be used in conjunction with this filter.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          uniqueItems: true
      - name: orderId
        in: query
        description: Activites with specified Order Id
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int64
      - name: channelManagerId
        in: query
        description: Id of channel manager to return activities for
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: sortFields
        in: query
        description: A list of fields to sort the response by. Sorting will be applied in the order the fields are given
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - createdDate
          - orderId
      - name: sortOrders
        in: query
        description: A list of orders to apply to the respective sortFields. The only accepted sortOrders will be ASC and DESC (case insensitive)
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - ASC
          - DESC
      - name: page
        in: query
        description: Page to fetch (0 indexed)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          minimum: 0
      - name: size
        in: query
        description: Size of page to fetch
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          maximum: 500
      responses:
        '200':
          description: Card activity data returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.CardActivityPageResponse'
        '400':
          description: Invalid request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/card-reports:
    get:
      tags:
      - Channel Manager Card
      summary: Retrieve channel manager's card reports
      description: Retrieve card reports owned by the channel manager
      operationId: channelManagerSearchCardReports
      parameters:
      - name: fromReportDate
        in: query
        description: Retrieve reports equal to or after this date
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Retrieve reports equal to or after this date
          example: '2023-01-01'
        example: '2023-01-01'
      - name: toReportDate
        in: query
        description: Retrieve reports equal to or before this date
        required: false
        style: form
        explode: true
        schema:
          type: string
          description: Retrieve reports equal to or before this date
          example: '2023-01-30'
        example: '2023-01-30'
      - name: reportTypes
        in: query
        description: Report types
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/channelmanager.reportTypes'
        example: DAILY_CARD_ACTIVITY
      - name: reportSubjectIds
        in: query
        description: Report subject Ids (Customer BID, Partner BID or Channel Manager BID)
        required: false
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/channelmanager.reportSubjectIds'
        example: C1000001
      - name: page
        in: query
        description: Page to fetch (0 indexed)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          default: 0
          description: Page to fetch (0 indexed)
          minimum: 0
      - name: size
        in: query
        description: The size of the page(s)
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
          description: The size of the page(s)
          maximum: 500
          minimum: 1
      - name: sortField
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          pattern: (reportDate|reportType)
      - name: sortOrder
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: string
          pattern: (asc|desc)
      responses:
        '200':
          description: 'Card reports retrieved successfully '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.ReportPageResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
        '403':
          description: Unauthorised request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/channelmanager.ReportPageResponse'
      security:
      - HMAC: []
      - TOKEN: []
  /channel-managers/card-reports/{reportId}/report:
    get:
      tags:
      - Channel Manager Card
      summary: Channel Manager download a specific card report
      description: Download a specific card report
      operationId: channelManagerRetrieveReport
      parameters:
      - name: reportId
        in: path
        description: ID of the report to retrieve
        required: true
        style: simple
        explode: false
        schema:
          type: string
      responses:
        '200':
          description: Card report retrieved successfully
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/channelmanager.MessageResponse'
        '403':
          description: Forbidden. Token may be missing or invalid
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '404':
          description: Card report not found
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - HMAC: []
      - TOKEN: []
components:
  schemas:
    channelmanager.CardActivityResponse:
      type: object
      properties:
        id:
          type: string
          description: The card activity identifier. Maximum of 10 alphanumeric characters
          example: X000000001
        orderId:
          type: string
          description: Order identifier which links together related authorisations, reversals & settlements. Maximum of 10 alphanumeric characters
          example: '1234'
        cardId:
          type: string
          description: Card identifier. Maximum of 10 alphanumeric characters
          example: V000000001
        type:
          type: string
          description: Type of card activity
          enum:
          - AUTHORISATION
          - REVERSAL
          - SETTLEMENT
          - REFUND
        status:
          type: string
          description: Status of card activity. Only applies to activities of type AUTHORISATION
          enum:
          - DECLINED
          - APPROVED
          - SETTLED
          - EXPIRED
        reason:
          type: string
          description: The reason why this activity was declined. Only applies to activities with status DECLINED
          example: Account has insufficient funds
        verifiedBy3DS:
          type: boolean
          description: Whether the activity was 3DS enabled
        createdDate:
          type: string
          format: date-time
          description: The creation date of the card activity
          example: 2019-01-29T11:22:00+0000
        transactionAmount:
          type: number
          description: The card activity transaction amount
          example: '123.45'
        transactionCurrency:
          type: string
          description: The 3 letter ISO 4217 card activity transaction currency
          example: EUR
        billingAmount:
          type: number
          description: The card activity billing amount
          example: '678.91'
        billingCurrency:
          type: string
          description: The 3 letter ISO 4217 card activity billing currency
          example: GBP
        fxRate:
          type: number
          description: The FX rate applied to any conversion between transaction & billing amount. Rounded to 6 decimal places and zero padded
          example: '1.123456'
        mcc:
          type: string
          description: The Merchant Category Code (MCC) for the card activity. Follows ISO-18245 format
          example: '5182'
        merchantName:
          type: string
          description: The merchant name
          example: Loudons Cafe
        merchantId:
          type: string
          description: The merchant ID
          example: '123456789012345'
        merchantCountry:
          type: string
          description: The 3 letter ISO 3166 merchant country code
          example: GBR
        acquirerReferenceNumber:
          type: string
          description: The Acquirer Reference Number (ARN)
          example: '123451234512345'
        authorisationInfo:
          $ref: '#/components/schemas/channelmanager.AuthInfo'
          description: Authorisation information of the activity
        cardTokenId:
          type: string
          description: The card token associated with this activity, if a tokenised card was used.
        cardTokenDeviceId:
          type: string
          description: The bound card token device associated with this activity, if a tokenised card was used.
      required:
      - billingAmount
      - billingCurrency
      - cardId
      - createdDate
      - fxRate
      - id
      - mcc
      - orderId
      - transactionAmount
      - transactionCurrency
      - type
    channelmanager.ReportPageResponse:
      type: object
      properties:
        content:
          type: array
          description: List of responses on the current page
          items:
            $ref: '#/components/schemas/channelmanager.ReportResponse'
        size:
          type: integer
          format: int32
          description: Page size
        totalSize:
          type: integer
          format: int64
          description: Total count
        page:
          type: integer
          format: int32
          description: Current page number, 0 based; i.e first-page = 0, second-page = 1
        totalPages:
          type: integer
          format: int32
          description: Total pages
      required:
      - content
      - page
      - size
      - totalPages
      - totalSize
    channelmanager.CardThreeDSecureAuthentication:
      type: object
      properties:
        otpSmsStatus:
          type: string
          description: The SMS one time password authentication status
          enum:
          - NOT_ENROLLED
          - ENROLLED
          - UNENROLLED
          example: ENROLLED
        knowledgeBaseStatus:
          type: string
          description: The knowledge based authentication (KBA) status
          enum:
          - NOT_ENROLLED
          - ENROLLED
          - UNENROLLED
          example: ENROLLED
    channelmanager.UpdateCardHolder:
      type: object
      properties:
        billingAddress:
          $ref: '#/components/schemas/channelmanager.AddressDetail'
          description: Billing address for the card holder. Must be NULL for individual customers.
        shippingAddress:
          $ref: '#/components/schemas/channelmanager.AddressDetail'
          description: Shipping address details for card. Optional for individual customers whose partner has verification type EXTERNAL
        dateOfBirth:
          type: string
          format: date
          description: Cardholder date of birth. Must match date format of yyyy-mm-dd. Required for virtual consumer and physical cards. Must be NULL for individual customers.
          example: '2001-01-01'
        mobileNumber:
          type: string
          description: Cardholder mobile number. Must start with a '+', followed by the country code and then the mobile number. Required for virtual consumer and physical cards.
          example: '+447123456000'
        email:
          type: string
          format: email
          description: Cardholder email
          example: cardholder@example.com
          maxLength: 50
          minLength: 0
    channelmanager.Remove:
      allOf:
      - $ref: '#/components/schemas/channelmanager.PatchOperation'
      description: Remove field
      required:
      - op
      - path
    channelmanager.AuthorisationWindowRequest:
      type: object
      properties:
        startDate:
          type: string
          example: '2025-01-01'
        endDate:
          type: string
          example: '2025-01-01'
    channelmanager.CardReplacementRequest:
      type: object
      description: Replacement
      properties:
        reason:
          type: string
          description: The reason for replacing the card. Can be one of DAMAGED (physical only), LOST, STOLEN, RENEW
          enum:
          - STOLEN
          - DAMAGED
          - LOST
          - RENEW
          example: STOLEN
        externalRef:
          type: string
          description: Client reference for the newly created card. Maximum of 50 alphanumeric characters (including underscore, hyphen and space).
          maxLength: 50
          minLength: 1
          pattern: '[\w-\s]*'
        design:
          $ref: '#/components/schemas/channelmanager.ProductDesignDetail'
          description: Design references for physical card and packaging
        expiry:
          type: string
          description: ISO 8601 date with year & month components only. The supplied value must be in the future (cannot be the current month) and is _inclusive_ of the specified month. If no expiry is selected, the standard product expiry date will be set
          example: 2026-12
        shippingAddress:
          $ref: '#/components/schemas/channelmanager.AddressDetail'
          description: Shipping address details for card. Optional for individual customers whose partner has verification type EXTERNAL
      required:
      - reason
    channelmanager.Test:
      allOf:
      - $ref: '#/components/schemas/channelmanager.PatchOperation'
      - type: object
        properties:
          value:
            $ref: '#/components/schemas/channelmanager.JsonNode'
      description: Test field
      required:
      - op
      - path
      - value
    channelmanager.reportTypes:
      type: array
      description: Report types
      example: DAILY_CARD_ACTIVITY
      items:
        type: string
        description: Report types
        enum:
        - DAILY_CARD_ACTIVITY
        - MONTHLY_CARD_ACTIVITY
        - DAILY_ACCOUNT_FUNDING
        - MONTHLY_ACCOUNT_FUNDING
        - DAILY_AUTH_WINDOW
        - DAILY_CARD_MANAGEMENT
        example: DAILY_CARD_ACTIVITY
    channelmanager.CardPageResponse:
      type: object
      properties:
        content:
          type: array
          description: List of responses on the current page
          items:
            $ref: '#/components/schemas/channelmanager.CardResponse'
        size:
          type: integer
          format: int32
          description: Page size
        totalSize:
          type: integer
          format: int64
          description: Total count
        page:
          type: integer
          format: int32
          description: Current page number, 0 based; i.e first-page = 0, second-page = 1
        totalPages:
          type: integer
          format: int32
          description: Total pages
      required:
      - content
      - page
      - size
      - totalPages
      - totalSize
    channelmanager.AddressDetail:
      type: object
      description: Address details for the cardholder. Optional for individual customers whose partner has verification type EXTERNAL.
      properties:
        addressLine1:
          type: string
          description: First line of address
          example: Floor 10
          maxLength: 50
          minLength: 1
        addressLine2:
          type: string
          description: Second line of address
          example: 80 George Street
          maxLength: 50
          minLength: 0
        postTown:
          type: string
          description: Post town
          example: EDINBURGH
          maxLength: 20
          minLength: 1
        postCode:
          type: string
          description: Postcode
          exampl

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/modulr/refs/heads/main/openapi/modulr-channel-manager-card-api-openapi.yml