## Get Instruments `client.V1.Instruments.GetInstruments(ctx, query) (*V1InstrumentGetInstrumentsResponse, error)` **get** `/v1/instruments` Retrieves a list of tradeable instruments. ### Parameters - `query V1InstrumentGetInstrumentsParams` - `EasyToBorrow param.Field[bool]` Filter by easy to borrow status - `InstrumentIDs param.Field[[]string]` Comma-separated OEMS instrument UUIDs - `InstrumentType param.Field[V1InstrumentGetInstrumentsParamsInstrumentType]` 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. - `const V1InstrumentGetInstrumentsParamsInstrumentTypeCommonStock V1InstrumentGetInstrumentsParamsInstrumentType = "COMMON_STOCK"` - `const V1InstrumentGetInstrumentsParamsInstrumentTypePreferredStock V1InstrumentGetInstrumentsParamsInstrumentType = "PREFERRED_STOCK"` - `const V1InstrumentGetInstrumentsParamsInstrumentTypeOption V1InstrumentGetInstrumentsParamsInstrumentType = "OPTION"` - `const V1InstrumentGetInstrumentsParamsInstrumentTypeCash V1InstrumentGetInstrumentsParamsInstrumentType = "CASH"` - `const V1InstrumentGetInstrumentsParamsInstrumentTypeOther V1InstrumentGetInstrumentsParamsInstrumentType = "OTHER"` - `IsLiquidationOnly param.Field[bool]` Filter by liquidation only status - `IsMarginable param.Field[bool]` Filter by marginable status - `IsRestricted param.Field[bool]` Filter by restricted status - `IsShortProhibited param.Field[bool]` Filter by short prohibited status - `IsThresholdSecurity param.Field[bool]` Filter by threshold security status - `PageSize param.Field[int64]` The number of items to return per page. Only used when page_token is not provided. - `PageToken param.Field[string]` Token for retrieving the next or previous page of results. Contains encoded pagination state; when provided, page_size is ignored. ### Returns - `type V1InstrumentGetInstrumentsResponse struct{…}` - `Data InstrumentCoreList` - `ID string` Unique OEMS instrument identifier (UUID) - `CountryOfIssue string` The ISO country code of the instrument's issue - `Currency string` The ISO currency code in which the instrument is traded - `EasyToBorrow bool` Indicates if the instrument is classified as Easy-To-Borrow - `IsLiquidationOnly bool` Indicates if the instrument is liquidation only and cannot be bought - `IsMarginable bool` Indicates if the instrument is marginable - `IsRestricted bool` Indicates if the instrument is restricted from trading - `IsShortProhibited bool` Indicates if short selling is prohibited for the instrument - `IsThresholdSecurity bool` Indicates if the instrument is on the Regulation SHO Threshold Security List - `IsTradable bool` Indicates if the instrument is tradable - `Symbol string` The trading symbol for the instrument - `Venue string` The MIC code of the primary listing venue - `Adv string` Average daily share volume from the security definition. - `Expiry Time` The expiration date for options instruments - `InstrumentType SecurityType` The type of security (e.g., Common Stock, ETF) - `const SecurityTypeCommonStock SecurityType = "COMMON_STOCK"` - `const SecurityTypePreferredStock SecurityType = "PREFERRED_STOCK"` - `const SecurityTypeOption SecurityType = "OPTION"` - `const SecurityTypeCash SecurityType = "CASH"` - `const SecurityTypeOther SecurityType = "OTHER"` - `LongMarginRate string` The percent of a long position's value you must post as margin - `Name string` The full name of the instrument or its issuer - `NotionalAdv string` 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. - `PreviousClose string` Last close price from the security definition. - `ShortMarginRate string` The percent of a short position's value you must post as margin - `StrikePrice string` The strike price for options instruments ### Example ```go package main import ( "context" "fmt" "github.com/clear-street/clear-street-go" "github.com/clear-street/clear-street-go/option" ) func main() { client := clearstreet.NewClient( option.WithAPIKey("My API Key"), ) response, err := client.V1.Instruments.GetInstruments(context.TODO(), clearstreet.V1InstrumentGetInstrumentsParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response) } ``` #### Response ```json { "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 } } ```