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

# List cards

> Lists the company's cards, newest first, with the assigned user, linked account, and current spending limit.
Terminated cards are excluded unless you pass `includeTerminated=true` or filter `status` explicitly.




## OpenAPI

````yaml /specs/company.openapi.yaml get /developer/company/v2/card
openapi: 3.1.0
info:
  title: Incard Developer API
  version: 0.1.0
  description: OpenAPI definition for the Incard Developer API.
servers:
  - url: https://api.incard.com
    description: Developer Gateway
security:
  - BearerAuth: []
tags:
  - name: ACCOUNTS
    description: Currency accounts and their available balances.
  - name: TRANSACTIONS
    description: Transaction history with filters, pagination, and running balances.
  - name: CARDS
    description: List cards and freeze or unfreeze them.
  - name: INVOICES
  - name: webhooks
paths:
  /developer/company/v2/card:
    get:
      tags:
        - CARDS
      summary: List cards
      description: >
        Lists the company's cards, newest first, with the assigned user, linked
        account, and current spending limit.

        Terminated cards are excluded unless you pass `includeTerminated=true`
        or filter `status` explicitly.
      operationId: list_cards
      parameters:
        - name: take
          in: query
          required: false
          description: Page size, 1–100. Defaults to 10.
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 10
        - name: skip
          in: query
          required: false
          description: Number of cards to skip. Defaults to 0.
          schema:
            type: integer
            minimum: 0
            default: 0
        - name: type
          in: query
          required: false
          description: Card form factor.
          schema:
            type: string
            enum:
              - physical
              - virtual
        - name: status
          in: query
          required: false
          description: >
            Comma-separated statuses. `expired` matches cards whose expiry month
            has passed regardless of status.
          schema:
            type: string
          example: active,frozen
        - name: userIds
          in: query
          required: false
          description: Comma-separated user UUIDs the cards are assigned to.
          schema:
            type: string
        - name: companyAccountIds
          in: query
          required: false
          description: Comma-separated account UUIDs the cards draw from.
          schema:
            type: string
        - name: search
          in: query
          required: false
          description: Case-insensitive match against the card name or last four digits.
          schema:
            type: string
        - name: includeTerminated
          in: query
          required: false
          description: '`true` includes terminated cards when no `status` filter is given.'
          schema:
            type: boolean
        - name: sort
          in: query
          required: false
          description: '`unactivatedFirst` lists `pending` cards before the rest.'
          schema:
            type: string
            enum:
              - unactivatedFirst
      responses:
        '200':
          description: Paginated card collection.
          content:
            application/json:
              schema:
                type: object
                title: CardCollection
                properties:
                  data:
                    description: Cards for the current page.
                    type: array
                    items:
                      $ref: '#/components/schemas/Card'
                  meta:
                    type: object
                    properties:
                      total:
                        description: Total matching cards.
                        type: integer
                      totalPending:
                        description: Matching cards still awaiting activation.
                        type: integer
                      totalNonPending:
                        description: '`total` minus `totalPending`.'
                        type: integer
                      take:
                        type: integer
                      skip:
                        type: integer
                    required:
                      - total
                      - totalPending
                      - totalNonPending
                      - take
                      - skip
                required:
                  - data
                  - meta
              example:
                data:
                  - id: 3f8b2c1d-9e4a-4b7c-8d2e-1f3a5b7c9d0e
                    token: 84de8ea0-e52a-4888-afd2-9d8dd5a42c20
                    name: Marketing spend
                    type: virtual
                    theme: midnight
                    lastFour: '4242'
                    startDate: 07/26
                    expiryDate: 07/29
                    status: active
                    autoConvert: true
                    auth3dsCredential: otpSms
                    createdAt: '2026-07-01T08:30:00.000Z'
                    updatedAt: '2026-07-01T08:30:00.000Z'
                    maxLimits:
                      daily: 10000
                      weekly: 50000
                      monthly: 250000
                      lifetime: 250000
                    user:
                      id: 29b297ca-c617-437e-9c1d-32f494fbf44d
                      firstName: Alex
                      lastName: Example
                      iconUrl: https://cdn.incard.com/avatars/29b297ca.png
                    spendingLimit:
                      type: monthly
                      amount: 5000
                      amountSpent: 1249.5
                      utilization: 24.99
                      resetsAt: '2026-10-01T03:00:00.000Z'
                      isVelocityLimit: false
                    companyAccount:
                      id: 0d6c0a2a-2b08-49bc-89a9-eb936c9ff28c
                      name: Main GBP account
                      currencyCode: GBP
                    currencyCode: GBP
                meta:
                  total: 1
                  totalPending: 0
                  totalNonPending: 1
                  take: 10
                  skip: 0
        '400':
          description: Invalid query parameter.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'take: Number must be less than or equal to 100'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden — insufficient permission for this user
components:
  schemas:
    Card:
      type: object
      title: Card
      description: >-
        A card with its assigned user, linked account, and spending limit, as
        returned by the v2 card endpoints.
      properties:
        id:
          description: Card UUID. Use this in card action endpoints.
          type: string
        token:
          description: >-
            Card token. Matches `card_token` on transactions and the
            `card_tokens` transaction filter.
          type: string
        name:
          description: Card name.
          type: string
        type:
          description: Form factor.
          type: string
          enum:
            - physical
            - virtual
        theme:
          description: (Optional) Visual theme identifier.
          type:
            - string
            - 'null'
        lastFour:
          description: Last four digits of the card number.
          type: string
        startDate:
          description: Valid-from month as `MM/YY`.
          type: string
        expiryDate:
          description: Expiry month as `MM/YY`.
          type: string
        status:
          description: >
            Card status. `pending` cards await activation; `frozen` cards were
            frozen by a team member; `blocked` cards were

            blocked by Incard.
          type: string
          enum:
            - pending
            - active
            - frozen
            - blocked
            - closing
            - terminated
        autoConvert:
          description: >-
            Whether spend in other currencies is auto-converted from the linked
            account.
          type: boolean
        auth3dsCredential:
          description: 3-D Secure challenge method.
          type: string
          enum:
            - otpSms
            - otpSmsPlusBiometric
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        maxLimits:
          description: >-
            Maximum spending limit that can be set for each period. `null` where
            no maximum applies.
          type: object
          properties:
            daily:
              type:
                - number
                - 'null'
            weekly:
              type:
                - number
                - 'null'
            monthly:
              type:
                - number
                - 'null'
            lifetime:
              type:
                - number
                - 'null'
        user:
          description: User the card is assigned to, or `null`.
          oneOf:
            - type: object
              properties:
                id:
                  type: string
                firstName:
                  type: string
                lastName:
                  type: string
                iconUrl:
                  type:
                    - string
                    - 'null'
            - type: 'null'
        spendingLimit:
          description: >-
            Current spending limit. When no limit is configured a default
            monthly velocity limit is reported with `isVelocityLimit: true`.
          type: object
          properties:
            type:
              type: string
              enum:
                - daily
                - weekly
                - monthly
                - lifetime
            amount:
              description: Limit amount in `currencyCode`.
              type: number
            amountSpent:
              description: Amount spent in the current period.
              type: number
            utilization:
              description: '`amountSpent / amount` as a percentage with two decimals.'
              type: number
            resetsAt:
              description: When the period resets. `null` for `lifetime`.
              type:
                - string
                - 'null'
              format: date-time
            isVelocityLimit:
              description: >-
                `true` when this is the default limit rather than one configured
                on the card.
              type: boolean
          required:
            - type
            - amount
            - amountSpent
            - utilization
            - isVelocityLimit
        companyAccount:
          description: Account the card draws from, or `null`.
          oneOf:
            - type: object
              properties:
                id:
                  type: string
                name:
                  type: string
                currencyCode:
                  type: string
            - type: 'null'
        currencyCode:
          description: >-
            Currency of the linked account, falling back to the company base
            currency.
          type: string
      required:
        - id
        - token
        - name
        - type
        - lastFour
        - startDate
        - expiryDate
        - status
        - autoConvert
        - auth3dsCredential
        - createdAt
        - updatedAt
        - maxLimits
        - user
        - spendingLimit
        - companyAccount
        - currencyCode
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: access_token
      description: Short-lived access token. Obtain with your api_key.

````