# List connected accounts

`GET /accounts/{accountID}/connected-accounts`

API version: `v2026.10.00`. Send `X-Moov-Version: v2026.10.00` to get the behavior described here.

> AI agents: search and read all Moov docs with the docs MCP server at https://docs.moov.io/mcp (no API key). Setup: https://docs.moov.io/guides/developer-tools/mcp-ai/docs-mcp/index.md

List or search accounts to which the caller is connected.

All supported query parameters are optional. If none are provided the response will include all connected accounts.
Pagination is supported via the `skip` and `count` query parameters. Searching by name and email will overlap and 
return results based on relevance. Accounts with AccountType `guest` will not be included in the response.

To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/) you'll need 
to specify the `/accounts.read` scope.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `accountID` | path | string | Yes |  |
| `X-Moov-Version` | header | string |  | Set this header to v2026.10.00 to use the API described in this specification. When omitted, the server defaults to v2024.01.00, the earliest supported version, which may not match the behavior documented here. An unrecognized well-formed version uses the latest supported version that is not newer than the requested version, when one exists. For example, `v2026.08.00` uses `v2026.07.00`. A malformed value, such as `2022`, returns a `404` response. Values: `v2026.10.00`. |
| `name` | query | string |  | Filter connected accounts by name. If provided, this query will attempt to find matches against the following Account and Profile fields: <ul> <li>Account `displayName`</li> <li>Individual Profile `firstName`, `middleName`, and `lastName`</li> <li>Business Profile `legalBusinessName`</li> </ul> Filtering by Guest Profile `name` is not currently supported. |
| `email` | query | string |  | Filter connected accounts by email address. Provide the full email address to filter by email. |
| `type` | query | string |  | Filter connected accounts by AccountType. If the `type` parameter is used in combination with `name`, only the corresponding type's name fields will be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`). Filtering by `type=guest` is not currently supported. Values: `individual`, `business`. |
| `foreignID` | query | string |  | Serves as an optional alias from a foreign/external system which can be used to reference this resource. |
| `includeDisconnected` | query | boolean |  | Filter disconnected accounts. If true, the response will include disconnected accounts. |
| `capability` | query | string |  | Filter connected accounts by the capability. Values: `transfers`, `send-funds`, `send-funds.push-to-card`, `money-transfer.push-to-card`, `send-funds.ach`, `send-funds.rtp`, `send-funds.instant-bank`, `send-funds.wire`, `collect-funds`, `collect-funds.card-payments`, `money-transfer.pull-from-card`, `collect-funds.ach`, `wallet`, `wallet.balance`, `card-issuing`, `issuing.cardholder`, `production-app`, `platform.production-app`, `platform.wallet-transfers`, `platform.moov-money`. |
| `capabilityStatus` | query | string |  | Filter connected accounts by the capability. Values: `enabled`, `disabled`, `pending`, `in-review`. |
| `skip` | query | integer (int64) |  | The number of entries to skip when paginating a large result set. |
| `count` | query | integer (int64) |  | Page size. When omitted, the server defaults to `200`. |

## Response 200

The request completed successfully.

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `[].accountID` | string | Yes | Unique identifier for this account. |
| `[].mode` | string | Yes | The operating mode for an account. Values: `sandbox`, `production`. |
| `[].accountType` | string | Yes | The type of entity represented by this account. Values: `individual`, `business`, `guest`. |
| `[].displayName` | string | Yes |  |
| `[].profile` | object | Yes | Describes a Moov account profile. A profile will have a business, individual, or guest depending on the account's type. |
| `[].profile.individual` | object |  | Describes an individual. |
| `[].profile.business` | object |  | Describes a business. |
| `[].profile.guest` | object |  | Describes a guest account profile. |
| `[].metadata` | object |  | Free-form key-value pair list. Useful for storing information that is not captured elsewhere. |
| `[].termsOfService` | object |  | Describes the acceptance of the Terms of Service. |
| `[].termsOfService.acceptedDate` | string (date-time) | Yes | The date and time the terms of service were accepted. |
| `[].termsOfService.acceptedIP` | string | Yes | The IP address (IPv4 or IPv6) from which the terms of service were accepted. |
| `[].capabilities` | array of object |  |  |
| `[].capabilities[].capability` | string | Yes |  |
| `[].capabilities[].status` | string | Yes |  |
| `[].verification` | object | Yes | Describes identity verification status and relevant identity verification documents. |
| `[].verification.verificationStatus` | string |  | Possible states an account verification can be in. Values: `unverified`, `pending`, `resubmit`, `review`, `verified`, `failed`. |
| `[].verification.status` | string | Yes | Possible states an account verification can be in. Values: `unverified`, `pending`, `verified`, `errored`. |
| `[].verification.details` | string |  | Additional detail for a verification status. Values: `failedAutoVerify`, `docDobMismatch`, `docNameMismatch`, `docAddressMismatch`, `docNumberMismatch`, `docIncomplete`, `docFailedRisk`, `potentialAccountSanctionsMatch`, `potentialRepresentativeSanctionsMatch`, `failedOther`. |
| `[].verification.documents` | array of object |  |  |
| `[].foreignID` | string |  | Optional alias from a foreign/external system which can be used to reference this resource. |
| `[].customerSupport` | object |  | User-provided information that can be displayed on credit card transactions for customers to use when contacting a customer support team. This data is only allowed on a business account. |
| `[].customerSupport.phone` | object |  |  |
| `[].customerSupport.email` | string (email) |  |  |
| `[].customerSupport.address` | object |  |  |
| `[].customerSupport.website` | string (uri) |  |  |
| `[].settings` | object |  | User provided settings to manage an account. |
| `[].settings.cardPayment` | object |  | User provided settings to manage card payments. This data is only allowed on a business account. |
| `[].settings.achPayment` | object |  |  |
| `[].createdOn` | string (date-time) | Yes |  |
| `[].updatedOn` | string (date-time) | Yes |  |
| `[].disconnectedOn` | string (date-time) |  |  |

## Errors

| Status | Meaning |
| --- | --- |
| 401 | The request contained missing or expired authentication. |
| 403 | The user is not authorized to make the request. |
| 429 | Request was refused due to rate limiting. |
| 500 | The request failed due to an unexpected error. |
| 504 | The request failed because a downstream service failed to respond. |

## Examples

### cURL

```bash
curl -X GET "https://api.moov.io/accounts/{accountID}/connected-accounts" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.10.00"
```

### Typescript (SDK)

```typescript
import { Moov } from "@moovio/sdk";

const moov = new Moov({
  security: {
    username: "",
    password: "",
  },
});

async function run() {
  const result = await moov.accounts.listConnected({
    accountID: "7e09ffc8-e508-4fd4-a54e-21cff90a1824",
    skip: 60,
    count: 20,
  });

  console.log(result);
}

run();
```

Full reference with SDK examples in every language: https://docs.moov.io/api/v2026.10.00/moov-accounts/accounts/list-connections/
