ETF API

The ETF API provides detailed information about Exchange-Traded Funds including their holdings, expense ratios, assets under management, and other key metrics.

/v1/etf GET

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

Returns comprehensive information about any ETF by its ticker. For live pricing data, please use the Stock Price API with the same ticker.


Parameters

  • ticker  required

    ETF ticker symbol (e.g., QQQ, SPY, VTI).

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

  • 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.

  • 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

    Number of holdings in the ETF.

  • holdings

    Array of top holdings in the ETF, each with ticker, name, and percentage weight. Free users only get access to the first 3 holdings. Premium users get access to all holdings.

Sample Request Live Demo!

ticker
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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 { "etf_ticker": "QQQ", "etf_name": "Invesco QQQ Trust", "isin": "US46090E1038", "cusip": "46090E103", "country": "US", "expense_ratio": 0.2, "aum": 305184502800, "num_holdings": 101, "holdings": [ { "ticker": "MSFT", "num_shares": 61773595, "weight": 0.08689999999999999, "value": 27752405289.7, "last_updated": 1747184735 }, { "ticker": "AAPL", "num_shares": 124827810, "weight": 0.08239, "value": 26312454069.9, "last_updated": 1747184735 }, { "ticker": "NVDA", "num_shares": 202754805, "weight": 0.07809, "value": 24938841015, "last_updated": 1747184735 }, "..." ] }

Code Examples

1 2 3 4 5 6 7 8 import requests ticker = 'QQQ' api_url = 'https://api.api-ninjas.com/v1/etf?ticker={}'.format(ticker) response = requests.get(api_url, headers={'X-Api-Key': 'YOUR_API_KEY'}) if response.status_code == requests.codes.ok: print(response.text) else: print("Error:", response.status_code, response.text)

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.