---
title: "List card external accounts"
method: GET
path: "/card-external-accounts"
tags: ["External Accounts"]
---

# List card external accounts

`GET /card-external-accounts`

## Request

- Base URL: `https://api.natural.com`
- URL: `https://api.natural.com/card-external-accounts`
- Auth: HTTP bearer

List linked card external accounts

## Query parameters

- `cursor` string: Cursor from the previous page.
- `limit` integer: Maximum results per page.
- `customerPartyId` string: Customer party to read for (pty_*). Requires a connected agent with wallets.read permission. Omit to read your own party's banking information.

## Headers

- `X-Instance-ID` string, nullable

## Response `200`

Successful Response

- object
  - `data` object[], required
    - `type` 'cardExternalAccount', required
    - `id` string, required: External account ID (eac_*).
    - `attributes` object, required
      - `brand` 'visa' | 'mastercard' | 'amex' | 'discover' | 'other' | 'unknown', required: Card network brand.
      - `lastFour` string, required: Last four digits of the card number.
      - `nickname` string, required: Name the customer gave the card, e.g. "Work Amex". Defaults to "<Brand> card ending <last4>".
      - `billingAddress` object, nullable, required: The card's billing address on file, for filling a merchant's checkout (the ZIP drives the bank's AVS check).
        - `line1` string, nullable, required
        - `line2` string, nullable, required
        - `city` string, nullable, required
        - `state` string, nullable, required
        - `postalCode` string, nullable, required: ZIP/postal code the bank's AVS check validates at checkout.
        - `country` string, nullable, required
      - `status` 'pending' | 'new' | 'active' | 'disabled' | 'deleted' | 'unknown' | 'verification_failed', required: Lifecycle status of the external account.
      - `createdAt` string, date-time, required: Time when the card was linked.
    - `relationships` object, required
      - `party` object, required: Party that owns the external account.
        - `data` object, required: Related resource identifier.
          - `type` 'party', required: Resource type. Always `party`.
          - `id` string, required
  - `meta` object, required
    - `pagination` object, required
      - `hasMore` boolean, required: Whether more results are available.
      - `nextCursor` string, nullable, required: Cursor for the next page, or null when there are no more results.

## Other responses

- `400`: Validation Error
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found. Returned when the resource does not exist, or when it exists but is not accessible to your account. The two cases are intentionally indistinguishable, so that resource IDs cannot be enumerated by probing.
- `409`: Conflict
- `422`: Validation Error. The response contains one error object for each invalid request value.
- `428`: Precondition Required
- `429`: Too Many Requests
- `500`: Internal Server Error
- `501`: Not Implemented
- `502`: Bad Gateway
- `503`: Service Unavailable

## Changes

- **2026-10-27** `329d90b7e31c`: 1 info
  - added the required property `data/items/attributes/nickname` to the response with the `200` status
- **2026-10-16** `008bb0acca50`: 1 info
  - added the required property `data/items/attributes/billingAddress` to the response with the `200` status
- **2026-10-03** `3f14b9f458e4`: 1 info
  - added the new optional `query` request parameter `customerPartyId`
- **2026-09-30** `6663cdab7a7c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/natural/apis/natural-api/changes/card-external-accounts/get.md)

---

[API](https://skmtc.dev/natural/apis/natural-api.md) - [All operations](https://skmtc.dev/natural/apis/natural-api/llms.txt) - [OpenAPI document](https://skmtc.dev/natural/apis/natural-api/revisions/59c1208fa5dc?raw)
