| Time | Status | User Agent |  |
| :-- | :-- | :-- | :-- |
| Make a request to see history. |

#### URL Expired

The URL for this request expired after 30 days.

subaccountId

uuid

state

string

enum

Filter bank links by state

completedpendingcompletedexpired

Allowed:

`pending``completed``expired`

limit

integer

1 to 1000

Defaults to 250

Maximum number of items to return

cursor

string

The cursor to use for pagination. Identifies your place on the list

accept

string

enum

Defaults to application/json

Generated from available response content types

application/jsonapplication/problem+json

Allowed:

`application/json``application/problem+json`

# ``200      Successful operation

object

items

array of objects

required

items\*

object

\_links

object

required

HAL-style links to related resources.

\_links object

id

string

required

length between 1 and 256

`^[a-zA-Z0-9_-]+$`

The client-provided identifier of the bank link. Must be alphanumeric with hyphens and underscores only.

accountId

uuid

required

The unique identifier of the account that owns this bank link.

subaccountId

uuid

required

The unique identifier of the subaccount associated with this bank link.

state

string

enum

required

Current state of the bank link.

- `pending`: The link has been created and is awaiting user enrollment.
- `completed`: The user has successfully connected their bank account.
- `expired`: The link has expired without being completed.

`pending``completed``expired`

hostedLink

string \| null

required

The hosted URL where the user can complete the bank enrollment. This link expires after 4 hours and is automatically refreshed when retrieved via GET.

linkExpiresAt

date-time \| null

required

Date and time when the hosted link expires, in UTC, following ISO 8601 format.

completedAt

date-time

Date and time when the bank link enrollment was completed, in UTC, following ISO 8601 format. Only present when state is `completed`.

filters

object

The account filtering actually applied to this link, after resolution against the

account's bank-linking policy. Echoes what the hosted session will offer; absent on

links created before filtering existed.

filters object

bankAccounts

array of objects

Summary of bank accounts created from this link. Only present when state is `completed` and accounts exist.

bankAccounts

object

id

uuid

The bank account identifier.

name

string

The display name of the bank account.

mask

string \| null

Last 4 digits of the account number. For `credit` accounts this is the card

number's last 4 — the per-card identity for bank-connected (e.g. American

Express) enrollments. Not guaranteed per-card when the institution combines
multiple cards into one account.

type

string \| null

Normalized account type (e.g. `checking`, `savings`, `credit`).

cardIds

array of uuids

Identifiers of already-enrolled cards linked to this account — matched
immediately at completion when an enrolled card's last 4 equals a credit
account's mask, and over time by transaction-based discovery. A link is an

association to an EXISTING card, not a new enrollment.

cards

array of objects

Cards created from this account at completion (`bank-feed` enrollments),
each paired with its subscription. Present only on credit accounts that
created a card; a created card also appears in `cardIds`.

cards

object

id

uuid

required

subscriptionId

uuid

required

last4digits

string

required

`^\d{4}$`

network

string \| null

required

enrollmentType

string

enum

required

`bank-feed`

createdAt

date-time

required

Date and time when this resource was created, in UTC, following ISO 8601 format.

pagination

object

required

cursor

string

Cursor to use for the next page of results.

hasMore

boolean

required

Whether there are more results available.

# ``400      The server cannot or will not process the request due to something that is perceived to be a client error

# ``401      Authentication credentials were either missing or incorrect

# ``403      Authentication credentials used do not have have permissions to perform the request

# ``500      The server encountered an unexpected condition that prevented it from fulfilling the request

Updated 12 days ago

* * *

ShellNodeRubyPHPPython

Bearer

```

xxxxxxxxxx

curl --request GET \
 \
 --url 'https://api.astrada.co/bank-links?limit=250' \
 \
 --header 'accept: application/json'
```

```

xxxxxxxxxx

{

"items": [\
\
    {\
\
      "_links": {\
\
        "self": {\
\
          "href": "/bank-links/enrollment_792dcb7d"\
\
        },\
\
        "bankAccounts": [\
\
          {\
\
            "href": "/bank-accounts/3a8f2c1d-5e7b-4d9a-b6c8-9f0e1d2a3b4c"\
\
          }\
\
        ]\
\
      },\
\
      "id": "enrollment_792dcb7d",\
\
      "accountId": "8f3a1b2c-4d5e-6f7a-8b9c-0d1e2f3a4b5c",\
\
      "subaccountId": "1fcb895e-9217-4a6f-9d10-5a7dcef86c11",\
\
      "state": "completed",\
\
      "hostedLink": null,\
\
      "linkExpiresAt": null,\
\
      "completedAt": "2025-10-03T10:55:42.000Z",\
\
      "bankAccounts": [\
\
        {\
\
          "id": "3a8f2c1d-5e7b-4d9a-b6c8-9f0e1d2a3b4c",\
\
          "name": "Checking"\
\
        }\
\
      ],\
\
      "createdAt": "2025-10-03T10:25:27.069Z"\
\
    },\
\
    {\
\
      "_links": {\
\
        "self": {\
\
          "href": "/bank-links/enrollment_a1b2c3d4"\
\
        }\
\
      },\
\
      "id": "enrollment_a1b2c3d4",\
\
      "accountId": "8f3a1b2c-4d5e-6f7a-8b9c-0d1e2f3a4b5c",\
\
      "subaccountId": "1fcb895e-9217-4a6f-9d10-5a7dcef86c11",\
\
      "state": "pending",\
\
      "hostedLink": "https://hosted.plaid.com/link/abc123",\
\
      "linkExpiresAt": "2025-10-04T14:25:27.000Z",\
\
      "createdAt": "2025-10-04T10:25:27.069Z"\
\
    }\
\
  ],

"pagination": {

"cursor": "ZXhhbXBsZQ==",

"hasMore": false

}

}

Updated12 days ago

* * *
