Skip to main content
Press ⌘K to search

Stocks & ETFs

Use /v1/stocks/{ticker}/… for shared stock and ETF trading data. The ticker identifies the exact listing, not every product belonging to its SEC registrant: VOO and VB can share a registrant but must never share market data or institutional positions. ETF-specific profiles and portfolio holdings remain under /v1/etfs.

What you need Resource
Prices, quotes, options, reported short data, settlement data, owners /v1/stocks/{ticker}/…
ETF profile and investments inside its portfolio /v1/etfs
Broader registered-fund series and operations /v1/funds
Registrant filings and text search /v1/filings
Congressional trades /v1/congress/trades?ticker=…
Operating-company financials and issuer-derived forecasts Existing company-focused /v1/stocks/{ticker}/… routes

Compatibility and identity

The established /v1/stocks/{ticker}/… routes are the recommended endpoints for shared trading data, including ETFs. The /v1/securities/{ticker}/… routes below remain compatibility aliases executing the same actions. No HTTP redirect or extra API call is required. Authentication, plan entitlements, query parameters, response fields, pagination, rounding, and quota charges are identical. Existing clients using either spelling continue to work; use /stocks for new integrations.

An ETF profile is not an operating-company profile. Institutional holders are the investors holding ETF shares; ETF portfolio holdings are the investments owned by the ETF; fund owners are registered funds reporting positions in those ETF shares. These are three different queries.

Coverage is dataset-specific

A route accepting an ETF ticker does not guarantee observations exist. Missing stored data is not evidence of zero activity. Options reference coverage can include listings outside the stored security directory; quote access remains plan-entitled.

Cash dividends are stored per exact listing, so /v1/stocks/{ticker}/dividends returns an ETF's own distributions and never the registrant's primary series. Issuer-trained short-interest forecasts and squeeze scores are not supported ETF analytics; reported short interest and days to cover are supported.

A ticker filter on filings selects its SEC registrant. Returned filings can concern sibling fund series. For a specific ETF's portfolio, use its linked NPORT-P series through /v1/etfs/{ticker}/holdings.

Compatibility aliases

The linked dataset references document the exact parameters, examples and response fields for both route spellings. In every alias, ticker is the exact listed symbol (for example EBS, SPY or VOO), and all other parameters and response fields are unchanged.

Alias Same as
GET /v1/securities/{ticker}/prices Daily prices, GET /v1/stocks/{ticker}/prices
GET /v1/securities/{ticker}/technicals/atr Average true range, GET /v1/stocks/{ticker}/technicals/atr
GET /v1/securities/{ticker}/technicals/bollinger-bands Bollinger Bands, GET /v1/stocks/{ticker}/technicals/bollinger-bands
GET /v1/securities/{ticker}/technicals/obv On-balance volume, GET /v1/stocks/{ticker}/technicals/obv
GET /v1/securities/{ticker}/technicals/stochastic Stochastic oscillator, GET /v1/stocks/{ticker}/technicals/stochastic
GET /v1/securities/{ticker}/quote Live quote, GET /v1/stocks/{ticker}/quote
GET /v1/securities/{ticker}/options/expirations Option expirations, GET /v1/stocks/{ticker}/options/expirations
GET /v1/securities/{ticker}/options/chain Option chain, GET /v1/stocks/{ticker}/options/chain
GET /v1/securities/{ticker}/options/contract Option contract, GET /v1/stocks/{ticker}/options/contract
GET /v1/securities/{ticker}/short-volume Short volume, GET /v1/stocks/{ticker}/short-volume
GET /v1/securities/{ticker}/short-interest Short interest, GET /v1/stocks/{ticker}/short-interest
GET /v1/securities/{ticker}/off-exchange-volume Off-exchange volume, GET /v1/stocks/{ticker}/off-exchange-volume
GET /v1/securities/{ticker}/institutional-holders Institutional holders, GET /v1/stocks/{ticker}/institutional-holders
GET /v1/securities/{ticker}/institutional-ownership Institutional ownership history, GET /v1/stocks/{ticker}/institutional-ownership
GET /v1/securities/{ticker}/institutional-activity Top institutional buyers and sellers, GET /v1/stocks/{ticker}/institutional-activity
GET /v1/securities/{ticker}/holder-mix Holder mix, GET /v1/stocks/{ticker}/holder-mix
GET /v1/securities/{ticker}/holders All holders, GET /v1/stocks/{ticker}/holders
GET /v1/securities/{ticker}/ownership-summary Ownership summary, GET /v1/stocks/{ticker}/ownership-summary
GET /v1/securities/{ticker}/beneficial-ownership Schedule 13D and 13G filers, GET /v1/stocks/{ticker}/beneficial-ownership
GET /v1/securities/{ticker}/ownership-signals Ownership signals, GET /v1/stocks/{ticker}/ownership-signals
GET /v1/securities/{ticker}/holder-targets Shareholder targets, GET /v1/stocks/{ticker}/holder-targets
GET /v1/securities/{ticker}/fund-owners Funds holding a stock, GET /v1/stocks/{ticker}/fund-owners
GET /v1/securities/{ticker}/fails-to-deliver Fails to deliver, GET /v1/stocks/{ticker}/fails-to-deliver

Try it with a real key

Every example on this page runs against the live API. A free account includes an API key and MCP access — set up in under a minute.