NewConnect Claude, Cursor, ChatGPT, and other AI agents to API Ninjas via our MCP server

ETF API

The ETF API provides detailed information about Exchange-Traded Funds including their price, all holdings, expense ratios, assets under management, and other key metrics. This API is not suitable for live trading or high-frequency trading.

Available endpoints:

  • /v1/etf - Get detailed information for a specific ETF by ticker
  • /v1/etflist - Get a list of every supported ETF ticker symbol
  • /v1/etfsearch - Search for ETFs by AUM, expense ratio, holdings, or country

For data on Mutual Funds, use the Mutual Fund API instead.

(4.5)

From 8,061 users

4,100+

Applications using this API

API Status

Online - All Systems Operational

API Response Times

Average
P50
P75
P90
P95
328ms346ms382ms739ms979ms

Didn't find what you were looking for? Suggest an improvement


/v1/etf GET

https://api.api-ninjas.com/v1/etf

Returns comprehensive information about any ETF by its ticker. This API is not suitable for live trading or high-frequency trading.

Parameters

  • ticker  required

    ETF ticker symbol (e.g., QQQ, SPY, VTI). You must pass the complete ticker symbol, including any exchange suffix (dot notation) when the listing requires it. For example, EUNL.DE, not EUNL.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON object with the following fields or an error if the request is unsuccessful.

  • etf_ticker

    ETF ticker symbol.

  • etf_name

    ETF name.

  • isin

    International Securities Identification Number (ISIN) of the ETF.

  • cusip

    Nine-character Committee on Uniform Security Identification Procedures (CUSIP) identifier for the ETF.

  • country

    Country of the ETF issuer.

  • price premium only

    Current price of the ETF in USD. ETF prices are updated periodically and are not suitable for live trading.

  • expense_ratio premium only

    Annual expense ratio of the ETF as a percentage. For example, 0.2% would be 0.2.

  • aum premium only

    Assets under management of the ETF in USD.

  • num_holdings premium only

    Number of holdings in the ETF.

  • holdings premium only

    Array of all holdings in the ETF, each with ticker, name, and percentage weight.

Sample Request Live Demo!

ticker

Try this API endpoint with all available parameters in our API playground

https://api.api-ninjas.com/v1/etf?ticker=QQQ

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON

Code Examples

1 2 curl -X GET "https://api.api-ninjas.com/v1/etf?ticker=SPY" \ -H "X-Api-Key: YOUR_API_KEY"

If your programming language is not listed in the Code Example above, you can still make API calls by using a HTTP request library written in your programming language and following the above documentation.


/v1/etflist GET Business, Professional, or annual subscriptions Only

https://api.api-ninjas.com/v1/etflist

Returns ETF ticker symbols supported by the ETF API, paginated up to 1000 per call. Useful for discovering which tickers can be passed to /v1/etf or /v1/etfsearch. Increment the offset parameter by 1000 until fewer than 1000 results are returned to walk the entire list.

Parameters

  • offset  optional

    Number of results to skip for pagination. Default 0. Page size is 1000.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of strings (up to 1000 supported ETF ticker symbols starting at offset) or an error if the request is unsuccessful.

Sample Request Live Demo!

offset

Try this API endpoint with all available parameters in our API playground

https://api.api-ninjas.com/v1/etflist

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON

Code Examples

1 2 curl -X GET "https://api.api-ninjas.com/v1/etflist?offset=0" \ -H "X-Api-Key: YOUR_API_KEY"

/v1/etfsearch GET Business, Professional, or annual subscriptions Only

https://api.api-ninjas.com/v1/etfsearch

Search for ETFs matching a combination of filters. Results are sorted by assets under management (descending) and capped at 50 per page. Use the offset parameter to paginate. At least one filter parameter is required.

Parameters

At least one of the following parameters must be provided.

  • min_aum  optional

    Minimum assets under management in USD (e.g. 10000000000 for $10B).

  • max_aum  optional

    Maximum assets under management in USD.

  • min_expense_ratio  optional

    Minimum annual expense ratio as a decimal (e.g. 0.001 for 0.1%).

  • max_expense_ratio  optional

    Maximum annual expense ratio as a decimal.

  • holdings  optional

    Comma-separated list of ticker symbols. Only ETFs that hold every listed ticker will be returned (AND match). Example: AAPL,MSFT.

  • country  optional

    ISO country code of the ETF issuer (e.g. US, CA, DE).

  • offset  optional

    Number of results to skip for pagination. Default 0. Page size is 50.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of up to 50 matching ETFs (sorted by AUM descending) or an error if the request is unsuccessful. Each entry contains the following fields. To retrieve full holdings for a specific result, call /v1/etf with its symbol.

  • symbol

    ETF ticker symbol.

  • name

    ETF name.

  • country

    ISO country code of the ETF issuer.

  • expense_ratio

    Annual expense ratio of the ETF as a decimal (e.g. 0.0009 for 0.09%).

  • aum

    Assets under management of the ETF in USD.

  • num_holdings

    Number of holdings in the ETF.

Sample Request Live Demo!

min_aum
max_aum
min_expense_ratio
max_expense_ratio
holdings
country
offset

Try this API endpoint with all available parameters in our API playground

https://api.api-ninjas.com/v1/etfsearch?min_aum=10000000000&country=US

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON

Code Examples

1 2 curl -X GET "https://api.api-ninjas.com/v1/etfsearch?min_aum=10000000000&country=US" \ -H "X-Api-Key: YOUR_API_KEY"