> ## Documentation Index
> Fetch the complete documentation index at: https://dev.nickel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Nickel Banking cards

> Returns your Nickel Banking debit cards, newest first: status, last four digits, expiration, spending limits and lifetime spend. The full card number and CVC are never returned.

When the list would be empty because your organization has no active Nickel Banking account, or because the team member the API key belongs to can't see cards, the response is a `403` that says which. An `accountId` that isn't one of your accounts returns an empty list.



## OpenAPI

````yaml /nickel-api-docs.yaml get /nickelBanking/cards
openapi: 3.0.3
info:
  title: Nickel API
  description: >-
    This is the specification for the Nickel Rest API. The API lets you
    programmatically interact with the Nickel server. It uses resource oriented
    URLs, accepts and returns JSON encoded payloads and uses standard HTTP
    response codes. It is not a direct API to move money, but instead allows you
    to interact with Nickel as you would on a web interface.
  termsOfService: https://www.nickel.com/terms-of-service
  contact:
    email: support@nickel.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.0.0
servers:
  - url: https://rest.staging.nickel.com
    description: Sandbox / Staging
  - url: https://rest.nickel.com
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Payment
    description: Payments from your customers to you
  - name: Disbursement
    description: Payouts made from Nickel to you
  - name: Payment Link
    description: A request for payment against an invoice
  - name: Customer
    description: A customer record to request payments against
  - name: Charge Authorization
    description: >-
      An authorization for your customer to allow you to charge their payment
      method directly
  - name: Webhook
    description: Create a webhook for nickel to send updates to
  - name: File
    description: A file you can use to attach to invoices or debit authorizations
  - name: Vendor
    description: Manage vendors for accounts payable
  - name: Bill
    description: Bills from vendors and bill payments
  - name: Bill Payment Method
    description: >-
      A merchant's payment methods used to pay bills (bank accounts and cards on
      file)
  - name: Vendor Delivery Method
    description: >-
      How a vendor receives funds — bank account (ACH), check mailing address,
      or international wire (SWIFT) details
  - name: Nickel Banking
    description: Your Nickel Banking accounts, debit cards, check deposits and transactions
externalDocs:
  description: Find out more about Nickel
  url: https://nickel.com
paths:
  /nickelBanking/cards:
    get:
      tags:
        - Nickel Banking
      summary: List Nickel Banking cards
      description: >-
        Returns your Nickel Banking debit cards, newest first: status, last four
        digits, expiration, spending limits and lifetime spend. The full card
        number and CVC are never returned.


        When the list would be empty because your organization has no active
        Nickel Banking account, or because the team member the API key belongs
        to can't see cards, the response is a `403` that says which. An
        `accountId` that isn't one of your accounts returns an empty list.
      operationId: listNickelBankingCards
      parameters:
        - name: accountId
          in: query
          description: >-
            Only cards that spend from this account (an `id` from List Nickel
            Banking accounts).
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: >-
            Maximum cards to return, newest first. Default 50, maximum 100;
            larger values are clamped to 100.
          required: false
          schema:
            type: integer
            minimum: 1
            example: 50
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NickelBankingCardListResponse'
        '400':
          description: Invalid `limit`
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          $ref: '#/components/responses/NickelBankingRefused'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    NickelBankingCardListResponse:
      type: object
      properties:
        cards:
          type: array
          items:
            $ref: '#/components/schemas/NickelBankingCard'
        hasMore:
          type: boolean
          description: True when more cards matched than `limit` allowed.
    Error:
      required:
        - error
      type: object
      properties:
        error:
          type: string
          description: >-
            A human-readable error message describing what went wrong. Note that
            some 500 responses may return a plain text string instead of this
            JSON object.
        code:
          type: string
          description: >-
            A stable machine-readable code, present on the errors a client can
            act on (e.g. `SHARED_ACCOUNT` on a 409 from the ACH debit
            authorization upload, `REFERENCE_CONFLICT` on a 409 from recording
            an external payment or a debit memo, `NICKEL_BANKING_NOT_ACTIVE` or
            `MISSING_PERMISSION` on a 403 from a Nickel Banking list). Absent
            otherwise.
    NickelBankingCard:
      type: object
      properties:
        id:
          type: string
          example: cmf1card0001qz8x4k2v7c9d3
        accountId:
          type: string
          description: The account the card spends from. Fixed for the card's life.
          example: cmf1nba0001qz8x4k2v7c9d3e
        type:
          type: string
          enum:
            - VIRTUAL
            - PHYSICAL
        status:
          type: string
          description: >-
            A physical card goes `REQUESTED` → `ISSUED` (being printed) →
            `SHIPPED` → `DELIVERED` → `ACTIVE`, and can't be spent until it is
            activated, which is possible from `SHIPPED` on. A virtual card is
            `ACTIVE` or `CLOSED`. `CLOSED` is final.
          enum:
            - REQUESTED
            - ISSUED
            - SHIPPED
            - DELIVERED
            - ACTIVE
            - CLOSED
        closedReason:
          type: string
          nullable: true
          description: >-
            Set only when `status` is `CLOSED`. `MERCHANT`: someone on your team
            closed it. `OVERDRAFT`: Nickel closed your cards when an account was
            overdrawn. `RETURNED_IN_MAIL`: the mailed card came back
            undelivered. `OTHER`: anything else, including the card expiring.
          enum:
            - MERCHANT
            - OVERDRAFT
            - RETURNED_IN_MAIL
            - OTHER
        last4:
          type: string
          nullable: true
          example: '4242'
        expiration:
          type: string
          nullable: true
          description: MM/YYYY. Null until the card exists at the bank.
          example: 03/2029
        cardholderName:
          type: string
          nullable: true
        nickname:
          type: string
          nullable: true
        spendingLimits:
          type: array
          description: >-
            Empty when the card has no limit of its own. With several, the most
            restrictive one that applies wins. `PER_DAY` and `PER_MONTH` reset
            at midnight UTC; `ALL_TIME` is over the life of the card.
          items:
            type: object
            properties:
              interval:
                type: string
                enum:
                  - PER_DAY
                  - PER_MONTH
                  - ALL_TIME
              amountCents:
                type: integer
                format: int64
                example: 500000
        lifetimeSpendCents:
          type: integer
          format: int64
          description: >-
            Completed spend over the card's life, in cents. A refunded purchase
            drops out.
          example: 12345
        billingAddress:
          allOf:
            - $ref: '#/components/schemas/NickelBankingCardAddress'
          nullable: true
          description: >-
            The billing address the card was issued with — what a checkout asks
            for.
        shipment:
          type: object
          nullable: true
          description: Physical cards only.
          properties:
            address:
              $ref: '#/components/schemas/NickelBankingCardAddress'
            trackingNumber:
              type: string
              nullable: true
            shippedAt:
              type: string
              format: date-time
              nullable: true
            deliveredAt:
              type: string
              format: date-time
              nullable: true
              description: >-
                Null until the carrier reports delivery, which USPS may never
                do.
        createdAt:
          type: string
          format: date-time
    NickelBankingCardAddress:
      type: object
      properties:
        line1:
          type: string
          example: 1 Main St
        line2:
          type: string
          nullable: true
        city:
          type: string
          example: Austin
        state:
          type: string
          example: TX
        zip:
          type: string
          example: '78701'
  responses:
    NickelBankingRefused:
      description: >-
        Nickel Banking data this API key can't read. `code` is
        `NICKEL_BANKING_NOT_ACTIVE` when your organization has no active Nickel
        Banking account, or `MISSING_PERMISSION` when the team member the API
        key belongs to lacks the permission this list needs; the message names
        it. Also returned, without a `code`, for an API key without REST API
        access.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````