---
title: "Get Accounts"
method: GET
path: "/v1/accounts"
tags: ["Accounts"]
---

# Get Accounts

`GET /v1/accounts`

## Request

- Base URL: `https://api.clearstreet.com`
- URL: `https://api.clearstreet.com/v1/accounts`
- Auth: HTTP bearer

List accounts the authenticated user has permission to access.

Results can be narrowed with the optional `account_id` and `account_name`
filters. `account_id` is a lexicographic prefix match on the decimal account
id (e.g. `100` matches `100345` and `100567`); `account_name` is a
case-insensitive substring match on the account's full name. When both are
supplied an account must match both. When neither is supplied every
accessible account is returned.

## Query parameters

- `page_size` integer
- `page_token` string, byte: Base64URL-encoded pagination token
- `account_id` string
- `account_name` string

## Response `200`

List of accounts

- object
  - `error` ApiError: A direct mapping of tonic::Status, for use in HTTP responses.
    - `code` integer, required: The error code is used to identify the nature of the error. It corresponds to an HTTP status code.
    - `details` object[]
    - `message` string, required: A human-readable message providing more details about the error.
  - `metadata` ResponseMetadata, required: Metadata for the response. This will always contain a request ID which can be used to identify the request to Clear Street for tracing, and optionally may include pagination data.
    - `next_page_token` string, byte, nullable: Base64URL-encoded pagination token
    - `page_number` integer, nullable: Pagination. Included if this was a GET (list) response
    - `previous_page_token` string, byte, nullable: Base64URL-encoded pagination token
    - `request_id` string, required: A unique ID for this request, generated upon ingestion of the request.
    - `total_items` integer, nullable: Total number of items available (not just in this page).
    - `total_pages` integer, nullable: Total number of pages available.
  - `data` Account[], required
    - `account_holder_entity_id` integer, required: The account holder entity identifier
    - `account_holder_entity_kind` 'NATURAL_PERSON' | 'LEGAL_ENTITY' | 'OTHER', required: Whether an account holder is a natural person or a legal entity.
    - `close_date` string, date, nullable: The date the account was closed, if applicable When a null/undefined value is observed, it indicates it does not apply.
    - `full_name` string, required: The full legal name of the account
    - `id` integer, required
    - `open_date` string, date, required: The date the account was opened
    - `options_level` integer, required
    - `short_name` string, required: The short name of the account
    - `status` 'ACTIVE' | 'INACTIVE' | 'CLOSED', required: Account status
    - `subtype` 'CASH' | 'MARGIN' | 'OTHER', required: Account subtype classification providing more granular categorization
    - `type` 'CUSTOMER' | 'OTHER', required: Account type classification

## Other responses

- `403`: Forbidden
- `500`: Internal server error

## Changes

- **2026-10-16** `1bd9eddeffc8`: 1 info
  - added the required property `allOf[subschema #2]/data/items/account_holder_entity_kind` to the response with the `200` status
- **2026-06-22** `df29bedee810`: 2 info
  - added the new optional `query` request parameter `account_id`
  - added the new optional `query` request parameter `account_name`

[Operation history](https://skmtc.dev/clear-street/apis/clear-street-trading-api/changes/v1/accounts/get.md)

---

[API](https://skmtc.dev/clear-street/apis/clear-street-trading-api.md) - [All operations](https://skmtc.dev/clear-street/apis/clear-street-trading-api/llms.txt) - [OpenAPI document](https://skmtc.dev/clear-street/apis/clear-street-trading-api/revisions/52e77ea7d731?raw)
