ishares.com APIishares.com ↗
Access iShares ETF listings, holdings, performance metrics, sector allocations, and fund documents via a structured JSON API. Covers 6 endpoints.
curl -X GET 'https://api.parse.bot/scraper/5574216d-9f38-48cb-9912-dcabc247cc10/list_etfs?limit=3&asset_class=Equity' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve a list of all iShares ETFs with key metadata including ticker, name, asset class, net assets, expense ratio, and YTD return. Optionally filter by asset class and limit results.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of ETFs to return. |
| asset_class | string | Filter by asset class. Accepted values: Equity, Fixed Income, Digital Assets, Commodities, Real Estate, Multi-asset. |
{
"type": "object",
"fields": {
"etfs": "array of ETF summary objects with portfolio_id, ticker, name, isin, cusip, inception_date, asset_class, net_assets, expense_ratio, ytd_return, product_page_url",
"total": "integer total count of returned ETFs"
},
"sample": {
"data": {
"etfs": [
{
"isin": "US46429B6719",
"name": "iShares MSCI China ETF",
"cusip": "46429B671",
"ticker": "MCHI",
"net_assets": 6882213092.98,
"ytd_return": -2.71,
"asset_class": "Equity",
"portfolio_id": "239619",
"expense_ratio": 0.59,
"inception_date": "Mar 29, 2011",
"product_page_url": "/us/products/239619/ishares-msci-china-etf"
}
],
"total": 1
},
"status": "success"
}
}About the ishares.com API
The iShares API provides structured access to BlackRock's iShares ETF catalog across 6 endpoints, returning fund metadata, per-holding detail, and performance figures. The get_etf_holdings endpoint delivers a full holdings array per fund — including weight, market value, CUSIP, ISIN, SEDOL, and sector classification for each position. The list_etfs endpoint supports filtering by asset class across Equity, Fixed Income, Commodities, Real Estate, Digital Assets, and more.
Fund Discovery and Search
The list_etfs endpoint returns all iShares ETFs as an array of summary objects. Each entry includes portfolio_id, ticker, isin, cusip, inception_date, asset_class, net_assets, expense_ratio, and YTD return. The optional asset_class parameter narrows results to a specific category (e.g., Equity or Fixed Income). The search_etfs endpoint accepts a free-text query matched against ticker symbols and fund names, returning portfolio_id, ticker, name, asset_class, and a product_page_url for each match.
Holdings and Sector Breakdown
The get_etf_holdings endpoint accepts either a ticker (e.g., IVV) or a portfolio_id and returns the complete holdings list with per-position fields: ticker, name, sector, asset_class, market_value, weight, shares, cusip, isin, sedol, price, and currency. An optional as_of_date parameter (format YYYYMMDD) retrieves historical snapshots; omitting it returns the most recent available date. Holdings data is not available for all fund types — commodity trusts may return an upstream error. The get_etf_sector_allocation endpoint derives sector weights from the same underlying holdings, returning an array of {sector, weight} pairs sorted by weight descending. This endpoint is primarily useful for equity ETFs.
Performance and Fund Details
The get_etf_details endpoint returns nav, nav_as_of, yield_12m, expense_ratio, asset_class, and a performance object with annualized returns at YTD, 1-year, 3-year, 5-year, and 10-year horizons. Identifiers (isin, cusip, portfolio_id) are also included, making it straightforward to cross-reference results with other data sources.
Literature and Documents
The get_etf_literature endpoint returns available regulatory and marketing documents for a given ETF — including Fact Sheets, Prospectuses, Summary Prospectuses, Annual Reports, Semi-Annual Reports, and Product Briefs. Each document object includes a type field and a download or reference link. At least one of ticker or portfolio_id is required across all detail endpoints.
- Screen equity ETFs by expense ratio and YTD return using
list_etfsfiltered toasset_class=Equity. - Build a holdings overlap tool by comparing
get_etf_holdingsarrays across two or more ETFs. - Track sector drift in a portfolio by polling
get_etf_sector_allocationfor held ETFs over time. - Retrieve prospectus and annual report links via
get_etf_literaturefor compliance or due-diligence workflows. - Cross-reference ETF performance at 3-year and 5-year horizons using the
performanceobject fromget_etf_details. - Resolve an ETF ticker to its ISIN and CUSIP for downstream reconciliation with custody or accounting systems.
- Identify historical holdings snapshots by passing
as_of_datetoget_etf_holdingsfor a point-in-time composition view.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does iShares have an official developer API?+
What does `get_etf_holdings` return, and can I retrieve historical data?+
weight, market_value, shares, price, currency, sector, and multiple security identifiers (cusip, isin, sedol). To get a historical snapshot rather than the most recent data, pass the as_of_date parameter in YYYYMMDD format (e.g., 20250101). Note that holdings data is unavailable for some fund types such as commodity trusts, which return an upstream error.Does the API cover iShares ETFs listed outside the United States?+
Is real-time or intraday price data available?+
get_etf_details endpoint returns nav and nav_as_of reflecting the most recent end-of-day net asset value, not live bid/ask or intraday trade prices. You can fork this API on Parse and revise it to integrate a market data source alongside the fund metadata endpoints.Can I filter `get_etf_holdings` by sector or country directly?+
sector field, so client-side filtering is straightforward. For a pre-aggregated sector view, get_etf_sector_allocation returns sector weights directly without requiring you to aggregate the raw holdings yourself.