Indian Stock Market API – NSE/BSE Fundamentals (Tickertape)
Pricing
from $14.00 / 1,000 stock profiles
Indian Stock Market API – NSE/BSE Fundamentals (Tickertape)
NSE/BSE stock fundamentals API for fintech apps, PMS/RIA research and quant teams, built on Tickertape: 10-year financials, quarterly results, promoter/FII/DII/MF shareholding history, ratios, forecasts, peers, NIFTY index constituents and a custom ratio screener. $0.02 per full profile.
Pricing
from $14.00 / 1,000 stock profiles
Rating
0.0
(0)
Developer
Daemon Data
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
3
Monthly active users
15 hours ago
Last modified
Categories
Security
Limited permissionsShare
NSE/BSE stock fundamentals from Tickertape as JSON in one call. Tickertape does not publish a documented public API, and NSE and BSE license their official data feeds; this Actor reads the data that Tickertape's public stock pages load and returns it as JSON:
curl -X POST "https://api.apify.com/v2/acts/data_daemon~tickertape-stocks-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" \-d '{"stocks": ["RELIANCE", "TCS"]}'
$20 per 1,000 full stock profiles and $2 per 1,000 index or screener rows, read live from Tickertape on every run. Checked on 5 November 2026: Tickertape's screener covered 6,028 NSE/BSE stocks and listed 77 indices.
Indian Stock Market API (Tickertape) is a pay-per-result Apify Actor that returns NSE and BSE stock data from Tickertape's public pages as JSON, CSV or Excel: full stock profiles (live quote, key ratios, scorecard, 10 years of income statement, balance sheet and cash flow, quarterly results, promoter / pledged / FII / DII / mutual-fund shareholding history, dividends, corporate actions, analyst forecasts, top holders and peers), index constituents (NIFTY 50, NIFTY NEXT 50, NIFTY 500, NIFTY BANK, NIFTY IT, SENSEX and more) and a custom ratio screener. It is for fintech, broker and advisory apps, RIA and PMS research teams, quant backtesting and screener newsletters. Price: $20 per 1,000 full profiles and $2 per 1,000 index or screener rows; no Tickertape login, proxy, browser or exchange data licence. On 18 October 2026 Tickertape listed 77 indices; a NIFTY 500 constituent run returns 500 rows for $1.
No Tickertape login, no proxy, no browser. Pay per stock.
What teams run, and what it costs
| You are | You schedule | Cost |
|---|---|---|
| Fintech / broker / advisory app | Full profiles for NIFTY 500, weekly | 500 × $0.02 = ~$10 per refresh |
| RIA / PMS research team | Full profiles for a 50-stock watchlist, weekly | ~$1 per week |
| Quant / backtesting | One-off full profiles for NIFTY 500 (10-year statements + shareholding history) | ~$10 once |
| Screener / newsletter | Screener run with your filter, daily | a few hundred rows × $0.002 = cents |
| Index tracker | NIFTY 500 constituent list with market cap and ratios, daily | 500 × $0.002 = $1 |
Results arrive as JSON, CSV or Excel, by API, webhook or Google Sheets, or through an AI agent as an MCP tool ("which NIFTY 500 stocks have promoter holding above 60% and P/E under 15?").
Quick start (Python)
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("data_daemon/tickertape-stocks-scraper").call(run_input={"mode": "stocks", "stocks": ["RELIANCE", "TCS", "HDFCBANK"]})for s in client.dataset(run["defaultDatasetId"]).iterate_items():latest = s["shareholding"][-1] if s["shareholding"] else {} # quarters are oldest firstprint(s["ticker"], s["pe"], s["roe"], latest.get("promoter"))
Why use this instead of building it
- The whole stock page in one record. Statement lines come with readable names (Total Revenue, Net Income, EPS, Free Cash Flow), not just codes.
- Shareholding as a trend. Six quarters of promoter, pledged, FII, DII, MF, insurance and retail percentages: compare quarters to spot FII exits or rising promoter pledges.
- Screener plus enrichment. Filter on market cap, P/E, P/B, dividend yield, ROE, ROCE, debt/equity, 1-week to 1-year returns, beta, promoter pledge and FII/DII holding, then pull the full profile for every match in the same run.
- Never a failed run on a typo. An unknown index name, a stock that does not exist or a screener with no matches finishes successfully with 0 rows and a status message that says why, so schedules and webhooks keep working.
- Fast. Index and screener rows arrive in seconds; a 50-stock full-profile run finishes in about a minute. Plain HTTP, no browser.
From an AI assistant: add the MCP connector https://mcp.apify.com/?tools=data_daemon/tickertape-stocks-scraper in Claude, ChatGPT, Cursor or VS Code and ask for the data in plain words.
Input
Stocks mode (default when stocks is filled in):
{ "mode": "stocks", "stocks": ["RELIANCE", "TCS", "Infosys"] }
Index mode:
{ "mode": "index", "indexSid": "NIFTY NEXT 50", "fullProfile": false }
Screener mode:
{"mode": "screener","screenerMatch": { "mrktCapf": { "g": 5000 }, "apef": { "l": 20 }, "divYield": { "g": 1.5 } },"screenerSortBy": "divYield","fullProfile": false}
| Field | Description |
|---|---|
mode | stocks, index or screener. When empty, the mode follows whichever of stocks, screenerMatch or indexSid you filled in (in that order). |
stocks | NSE tickers, company names or Tickertape URLs. Empty input falls back to the example tickers RELIANCE, TCS, HDFCBANK. |
indexSid | Any of Tickertape's 77 indices by name or id: NIFTY 50, NIFTY NEXT 50, NIFTY 100, NIFTY 200, NIFTY 500, NIFTY BANK, NIFTY IT, NIFTY AUTO, NIFTY FMCG, NIFTY PHARMA, NIFTY METAL, NIFTY REALTY, NIFTY PSU BANK, NIFTY FIN SERVICE, NIFTY MIDCAP 100, NIFTY MIDCAP 150, NIFTY SMALLCAP 100, NIFTY SMALLCAP 250, SENSEX, BSE 500, or ids such as .NSEI, .NN50, .NIFTYIT, or the index page URL. Defaults to NIFTY 50. |
screenerMatch | Filter object. g = greater than, l = less than. Codes: mrktCapf (market cap ₹ crore), apef (P/E), pbr (P/B), divYield, roe, roce, dbtEqt, pr1w, 4wpct, 26wpct, 52wpct (1-year return %), beta, promShrPled, forInstHldng, domInstHldng, sector. |
screenerSortBy, screenerSortDesc, screenerFields | Sorting and extra ratio columns for screener rows. |
fullProfile | Fetch the complete profile per stock (default on in stocks mode, off in index / screener). |
maxItems | Cap on records (0 = no limit). |
Output
Full profile (abridged; values from a real run, lists shortened). Time series (shareholding, the statements) are ordered oldest first, so the latest quarter or year is the last entry:
{"ticker": "RELIANCE","name": "Reliance Industries Ltd","sector": "Oil & Gas - Refining & Marketing","industry": "Oil & Gas Refining & Marketing","isin": "INE002A01018","lastPrice": 1211.2,"quote": { "price": 1211.2, "change": -3.8, "changePercent": -0.31, "volume": 17225283 },"marketCapCr": 1639061.09,"pe": 20.29,"pb": 1.51,"dividendYield": 0.5,"roe": 7.71,"week52High": 1611.8,"week52Low": 1152.2,"scorecard": [{ "name": "Performance", "tag": "Low", "colour": "red", "description": "Hasn't fared well - amongst the low performers" },{ "name": "Valuation", "tag": "High", "colour": "red", "description": "Seems to be overvalued vs the market average" }],"shareholding": [{ "date": "2025-03-31", "promoter": 50.11, "promoterPledged": 0, "foreignInstitutions": 19.06, "mutualFunds": 9.21, "retail": 7.4 },{ "date": "2026-06-30", "promoter": 49.62, "promoterPledged": 0, "foreignInstitutions": 16.9, "mutualFunds": 9.93, "retail": 7.04 }],"incomeStatementAnnual": [{ "period": "FY 2017", "Total Revenue": 314717, "Net Income": 29901, "EPS": 22.72 },{ "period": "FY 2026", "Total Revenue": 1086181, "Net Income": 80775, "EPS": 59.69 },{ "period": "TTM", "Total Revenue": 1143448, "Net Income": 74727, "EPS": 55.22 }],"balanceSheetAnnual": [ "…" ],"cashFlowAnnual": [ "…" ],"incomeStatementQuarterly": [ "…" ],"analystForecast": { "analystCount": 24, "buyPercent": 100 },"dividends": { "past": [{ "exDate": "2026-06-05T00:00:00.000Z", "dividend": 6, "subType": "Final" }] },"corporateActions": { "past": [{ "type": "bonus", "value": "1:1", "exDate": "2024-10-28T00:00:00.000Z" }] },"mutualFundHoldings": [{ "fund": "ICICI Pru Large Cap Fund", "weightPercent": 5.46, "rank": 3 }],"peers": [{ "ticker": "IOC", "name": "Indian Oil Corporation Limited", "ratios": { "apef": 4.37, "pbr": 0.82, "ttmPe": 5.47, "divDps": 6.33, "52wpct": -15.16 } }],"investmentChecklist": [{ "title": "Intrinsic value", "state": "checked", "description": "Current price is less than the intrinsic value" }]}
Scorecard entries carry Tickertape's tag (Low / Avg / High, Good / Bad), colour and description; checklist state is checked, unchecked or none. Peer ratios use Tickertape's codes (apef P/E, pbr P/B, ttmPe, divDps, 52wpct, marketCap). The full record also has ratiosRaw, keyRatios, announcements, legalEvents, upcomingEvents, investorPresentations, annualReports and Tickertape's aiSummary.
Index row (lightweight, fullProfile: false):
{"index": "NIFTY IT","indexSid": ".NIFTYIT","ticker": "HCLTECH","name": "HCL Technologies Ltd","sector": "Information Technology","lastPrice": 1380,"change1dPct": 1.47,"marketCapCr": 373406.08,"pe": 22.44,"pb": 4.97,"dividendYield": 3.92,"roe": 22.98,"week52High": 1780.1,"week52Low": 1030,"freeFloatPct": 100.72,"url": "https://www.tickertape.in/stocks/hcl-technologies-HCLT"}
Screener rows echo Tickertape's field codes (mrktCapf, apef, pbr, divYield, roe, roce, dbtEqt, pr1w, 4wpct, 26wpct, 52wpct, 52wHigh, 52wLow, beta, promShrPled, forInstHldng, domInstHldng, subindustry, plus any screenerFields you add) and also carry lastPrice, marketCapCr, pe, pb, dividendYield, roe, week52High and week52Low, so the Output table reads the same for every mode.
Download as JSON, CSV or Excel, or connect via API, webhooks and Google Sheets.
Scheduling & automation
- Weekly fundamentals database. Save
{ "mode": "index", "indexSid": "NIFTY 500", "fullProfile": true }as a task, open Schedules and run it weekly. Each run writes a fresh dataset; keep the latest or diff two runs byticker. - Daily screener feed. Save a screener task (for example the ROE > 20% screen), schedule it daily after market close (
0 11 * * 1-5UTC = 16:30 IST) and add a webhook or the Google Sheets, Slack, Make, Zapier or n8n integration from the task's Integrations tab. - Sync call from your backend. One request returns the rows directly:
curl -X POST "https://api.apify.com/v2/acts/data_daemon~tickertape-stocks-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode":"index","indexSid":"NIFTY IT","fullProfile":false}'
- Safe for schedulers. A run never fails because of input: an unknown index, an unmatched stock or an empty screener ends as
SUCCEEDEDwith 0 rows and a status message such asIndex "NIFTY XYZ" is not known to Tickertape …. Only a Tickertape outage with nothing collected marks the run as failed.
Pricing
Pay per event:
- Stock profile – $0.02 per full profile record.
- Quote row – $0.002 per lightweight index or screener row.
Profiling all of NIFTY 50 costs $1; all of NIFTY 500 costs $10. A NIFTY 500 constituent list with market cap and ratios costs $1, and a screener run of a few hundred rows costs cents. Runs that return 0 rows charge nothing.
Tips
- Use
indexmode withfullProfile: trueand a weekly schedule to maintain a fundamentals database for a whole index;maxItemscaps the cost of a test run. - Financial statement values are in ₹ crore, as on Tickertape.
shareholdingdates are quarter-ends, oldest first; the last entry is the latest quarter. Compare the first and last entries to spot promoter or FII trend changes.- Screener filters use Tickertape's field codes; the lightweight rows echo those codes so you can discover more fields to filter on, and
screenerFieldsadds any other code Tickertape's screener supports. - Combine modes in two runs: screen for candidates with
fullProfile: false, then pass the tickers you like tostocksmode for full profiles.
FAQ
How much does it cost to get Indian stock fundamentals?
$0.02 per full stock profile (10 years of statements, quarterly results, shareholding history, dividends, forecasts, peers) and $0.002 per lightweight index or screener row. All of NIFTY 50 with full profiles costs $1.
Which indices are supported?
Any of the 77 indices Tickertape publishes, by name, Tickertape id or index URL: NIFTY 50, NIFTY NEXT 50, NIFTY 100, NIFTY 200, NIFTY 500, NIFTY BANK, NIFTY IT, NIFTY AUTO, NIFTY FMCG, NIFTY PHARMA, NIFTY METAL, NIFTY REALTY, NIFTY PSU BANK, NIFTY FIN SERVICE, NIFTY MIDCAP 100 / 150, NIFTY SMALLCAP 100 / 250, SENSEX, BSE 500 and the other NSE and BSE sector and strategy indices.
What do index rows contain?
Ticker, company name, sector, last price, 1-day change, market cap (₹ crore), P/E, P/B, dividend yield, ROE, 52-week high and low, and free float. Switch on fullProfile for statements, shareholding and forecasts.
Can I run a screener?
Yes. Pass any Tickertape filter object such as {"mrktCapf": {"g": 5000}, "apef": {"l": 20}}. A filter with no matches finishes successfully with 0 rows and a status message.
Does Tickertape have a public API for NSE stock fundamentals?
Tickertape does not publish a documented public API. This Actor reads the data that Tickertape's public stock pages load, without a login, and returns it as JSON: quotes, key ratios, scorecard and 10 years of financial statements for NSE and BSE stocks, plus index member lists. Call it through the Apify API, from Python or Node.js, or from an AI agent, like any Indian stock market API.
Do I need a proxy or login?
No.
Related Actors by Daemon Data
- India IPO Tracker – live IPO GMP, subscription and listing data for India
- India New Company Registrations – companies incorporated in India each day (MCA register): CIN, type, state, NIC activity, capital, registered office
- IIMJobs Scraper – India management, finance and MBA jobs
- Dubai Property Transactions – Dubai Land Department sales, mortgages and gifts
- UK Gazette Insolvency Notices – winding-up petitions, administrations and liquidations
- All Actors by Daemon Data
Support
Found a bug or need another field or source? Open an issue on the Issues tab; issues are usually answered within a day. Custom variants of this Actor are available on request. A quick review on the actor page helps other users find it.
Disclaimer
Data is collected from publicly available Tickertape pages for informational purposes only and is not investment advice. Respect the source website's terms of use.