screener.in APIscreener.in ↗
Access Indian stock financials, IPO data, price history, peer comparisons, and company announcements via the screener.in API. 8 endpoints, structured JSON.
curl -X GET 'https://api.parse.bot/scraper/60e3da38-7f8e-48da-9612-d6b90f3261cc/search?query=SBI' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for companies by name or ticker symbol. Returns up to ~8 matching results including ETFs and subsidiaries.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword such as a company name or ticker symbol. |
{
"type": "object",
"fields": {
"data": "array of company objects, each with id (integer), name (string), and url (string relative path)"
},
"sample": {
"data": [
{
"id": 2726,
"url": "/company/RELIANCE/consolidated/",
"name": "Reliance Industries Ltd"
},
{
"id": 2729,
"url": "/company/RPOWER/consolidated/",
"name": "Reliance Power Ltd"
}
],
"status": "success"
}
}About the screener.in API
The screener.in API exposes 8 endpoints covering Indian public company financials, stock listings, IPO details, and BSE filings. The company_details endpoint alone returns over 10 distinct response fields — including quarterly results, profit/loss statements, balance sheet data, cash flow, shareholding patterns, and key ratios — making it a dense single-call source for fundamental analysis of NSE/BSE-listed companies.
Company Financials and Ratios
The company_details endpoint accepts a symbol parameter (e.g. RELIANCE, INFY, SBIN) and an optional consolidated boolean. It returns top_ratios — a key-value map of metrics like Market Cap, Current Price, and Stock P/E — alongside tabular arrays for profit_loss, balance_sheet, quarters, cash_flow, and shareholding. The company_id and warehouse_id fields in the response are numeric identifiers required by the price_history, announcements, and peers endpoints respectively.
Price History and Peer Comparison
price_history takes a company_id and an optional days integer. Shorter lookback periods return daily data; longer periods return weekly-aggregated data. Each dataset object carries a metric, label, and values array of [date, value] pairs covering price, volume, DMA50, and DMA200. The peers endpoint uses a warehouse_id from company_details and returns a tabular structure where the first array is a header row and subsequent rows contain peer companies with metrics like CMP, P/E, market cap, dividend yield, and ROCE.
IPOs, Stock Screens, and Sector Lists
ipo_data accepts an optional type parameter (recent or upcoming) and returns rows with IPO name, date, subscription figures, issue price, listing price, and gain/loss. screen_results requires a numeric screen_id (e.g. 59 for magic-formula, 343087 for fii-buying) and supports an optional slug and page parameter for paginated results. stock_list either returns available sectors (when sector_url is omitted) or paginated stock rows for a given sector path — useful for building sector-level watchlists.
Search and Announcements
The search endpoint takes a query string and returns up to approximately 8 matching company objects, each with an id, name, and relative url. Results include ETFs and subsidiaries, not just primary-listed equities. The announcements endpoint takes a company_id and returns recent BSE filing objects with title, url (direct link to the BSE PDF), and date.
- Pull quarterly earnings tables and year-over-year profit/loss data for a basket of NSE-listed stocks using
company_details. - Track DMA50 and DMA200 crossovers for a watchlist by calling
price_historywith varyingdaysvalues. - Build an IPO calendar feed showing subscription rates, issue prices, and listing gains from
ipo_data. - Compare a company's P/E, ROCE, and dividend yield against sector peers using the
peersendpoint. - Aggregate BSE filing alerts by polling
announcementsfor multiple company IDs. - Screen stocks by pre-defined criteria (magic formula, FII buying) with paginated
screen_results. - Enumerate all companies within a sector using
stock_listwith asector_urland iterate through pages.
| 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 screener.in have an official developer API?+
What does the `company_details` endpoint return beyond basic ratios?+
top_ratios (which maps metric names like Market Cap and Stock P/E to string values), the endpoint returns tabular arrays for profit_loss, quarters, cash_flow, shareholding, and documents (links to recent filings). It also returns company_id and warehouse_id, which are required inputs for the price_history, announcements, and peers endpoints.Can I retrieve intraday or tick-level price data?+
price_history endpoint returns daily data for shorter lookback periods and weekly-aggregated data for longer ones. Intraday or tick-level data is not currently covered. You can fork this API on Parse and revise it to add an intraday endpoint if that data becomes accessible from the source.Does the search endpoint return only NSE/BSE primary-listed stocks?+
search include ETFs and subsidiaries alongside primary-listed equities. The response does not include a field that distinguishes instrument type, so you may need to filter by the returned url path or cross-reference with company_details to determine the exact instrument category.Is there support for custom or user-defined stock screens?+
screen_results endpoint currently supports only pre-defined screens identified by a numeric screen_id. Custom or user-built screener queries with arbitrary financial filters are not exposed. You can fork this API on Parse and revise it to add an endpoint targeting custom screen IDs if needed.