Skip to content
Get started

Get Instruments

InstrumentGetInstrumentsResponse v1().instruments().getInstruments(InstrumentGetInstrumentsParamsparams = InstrumentGetInstrumentsParams.none(), RequestOptionsrequestOptions = RequestOptions.none())
GET/v1/instruments

Retrieves a list of tradeable instruments.

ParametersExpand Collapse
InstrumentGetInstrumentsParams params
Optional<Boolean> easyToBorrow

Filter by easy to borrow status

Optional<List<String>> instrumentIds

Comma-separated OEMS instrument UUIDs

Optional<InstrumentType> instrumentType

Filter by instrument type. OPTION is not supported on this endpoint; use GET /instruments/options/contracts to list option contracts. If omitted, returns all supported instrument types except options.

COMMON_STOCK("COMMON_STOCK")
PREFERRED_STOCK("PREFERRED_STOCK")
OPTION("OPTION")
CASH("CASH")
OTHER("OTHER")
Optional<Boolean> isLiquidationOnly

Filter by liquidation only status

Optional<Boolean> isMarginable

Filter by marginable status

Optional<Boolean> isRestricted

Filter by restricted status

Optional<Boolean> isShortProhibited

Filter by short prohibited status

Optional<Boolean> isThresholdSecurity

Filter by threshold security status

Optional<Long> pageSize

The number of items to return per page. Only used when page_token is not provided.

formatint64
maximum1000
minimum1
Optional<String> pageToken

Token for retrieving the next or previous page of results. Contains encoded pagination state; when provided, page_size is ignored.

formatbyte
ReturnsExpand Collapse
class InstrumentGetInstrumentsResponse:
List<InstrumentCore> data
String id

Unique OEMS instrument identifier (UUID)

formatuuid
String countryOfIssue

The ISO country code of the instrument’s issue

String currency

The ISO currency code in which the instrument is traded

boolean easyToBorrow

Indicates if the instrument is classified as Easy-To-Borrow

boolean isLiquidationOnly

Indicates if the instrument is liquidation only and cannot be bought

boolean isMarginable

Indicates if the instrument is marginable

boolean isRestricted

Indicates if the instrument is restricted from trading

boolean isShortProhibited

Indicates if short selling is prohibited for the instrument

boolean isThresholdSecurity

Indicates if the instrument is on the Regulation SHO Threshold Security List

boolean isTradable

Indicates if the instrument is tradable

String symbol

The trading symbol for the instrument

String venue

The MIC code of the primary listing venue

Optional<String> adv

Average daily share volume from the security definition.

Optional<LocalDate> expiry

The expiration date for options instruments

formatdate
Optional<SecurityType> instrumentType

The type of security (e.g., Common Stock, ETF)

One of the following:
COMMON_STOCK("COMMON_STOCK")
PREFERRED_STOCK("PREFERRED_STOCK")
OPTION("OPTION")
CASH("CASH")
OTHER("OTHER")
Optional<String> longMarginRate

The percent of a long position’s value you must post as margin

Optional<String> name

The full name of the instrument or its issuer

Optional<String> notionalAdv

Notional ADV (adv × previous_close). The primary liquidity signal used by /instruments/search ranking. Computed at response time so it stays consistent with whatever adv and previous_close show.

Optional<String> previousClose

Last close price from the security definition.

Optional<String> shortMarginRate

The percent of a short position’s value you must post as margin

Optional<String> strikePrice

The strike price for options instruments

Get Instruments

package com.clear_street.api.example;

import com.clear_street.api.client.ClearStreetClient;
import com.clear_street.api.client.okhttp.ClearStreetOkHttpClient;
import com.clear_street.api.models.v1.instruments.InstrumentGetInstrumentsParams;
import com.clear_street.api.models.v1.instruments.InstrumentGetInstrumentsResponse;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        ClearStreetClient client = ClearStreetOkHttpClient.builder()
            .fromEnv()
            .apiKey("My API Key")
            .build();

        InstrumentGetInstrumentsResponse response = client.v1().instruments().getInstruments();
    }
}
{
  "data": [
    {
      "country_of_issue": "US",
      "currency": "USD",
      "easy_to_borrow": true,
      "id": "0f5a1a4e-5b3e-4d8f-9b7a-2b1d0e3f4a5b",
      "instrument_type": "COMMON_STOCK",
      "is_liquidation_only": false,
      "is_marginable": true,
      "is_restricted": false,
      "is_short_prohibited": false,
      "is_threshold_security": false,
      "is_tradable": true,
      "name": "Apple Inc.",
      "symbol": "AAPL",
      "venue": "XNMS"
    }
  ],
  "error": null,
  "metadata": {
    "next_page_token": "cGFnZT0yJmxhc3Rfc3ltYm9sPUdNRQ==",
    "page_number": 1,
    "request_id": "4a5b6c7d-8e9f-0a1b-2c3d-4e5f6a7b8c9d",
    "total_items": 10,
    "total_pages": 5
  }
}
Returns Examples
{
  "data": [
    {
      "country_of_issue": "US",
      "currency": "USD",
      "easy_to_borrow": true,
      "id": "0f5a1a4e-5b3e-4d8f-9b7a-2b1d0e3f4a5b",
      "instrument_type": "COMMON_STOCK",
      "is_liquidation_only": false,
      "is_marginable": true,
      "is_restricted": false,
      "is_short_prohibited": false,
      "is_threshold_security": false,
      "is_tradable": true,
      "name": "Apple Inc.",
      "symbol": "AAPL",
      "venue": "XNMS"
    }
  ],
  "error": null,
  "metadata": {
    "next_page_token": "cGFnZT0yJmxhc3Rfc3ltYm9sPUdNRQ==",
    "page_number": 1,
    "request_id": "4a5b6c7d-8e9f-0a1b-2c3d-4e5f6a7b8c9d",
    "total_items": 10,
    "total_pages": 5
  }
}