For institutions
The CapitalScope API
Access
API keys belong to an organisation with an Institutional contract. Owners and administrators create and revoke keys in the enterprise dashboard; a key is shown once, so store it like a password. Write to info@FarbeEnterprise.com to set up a contract.
Authentication
Send the key in the Authorization header. Keys in the address are refused, because addresses end up in logs.
curl -H "Authorization: Bearer cs_live_…" \
"https://capitalscope.farbeenterprise.com/api/v1/companies?state=GJ&industry=pharmaceuticals&min_revenue=100&per_page=10"Endpoints
| Endpoint | Returns | Parameters |
|---|---|---|
| GET /api/v1/companies | Public companies | q (name or CIN), state (code, e.g. GJ), industry (slug), listing (listed | unlisted), ipo=true, profitable=true, min_revenue (₹ crore), sort (revenue | name), page, per_page |
| GET /api/v1/companies/{id} | One company: registry details, latest financials, funding summary, current directors, securities and the sources behind them | {id} = id, CIN or slug |
| GET /api/v1/financials/{id} | Every published financial year: all line items in rupees, ratios in percent, and each year's source, date, verification and confidence | {id} = company id, CIN or slug |
| GET /api/v1/funding/{id} | A company's published funding rounds with investors and sources | {id} = company id, CIN or slug |
| GET /api/v1/investors/{id} | An investor with its portfolio and rounds | {id} = id or slug |
| GET /api/v1/unlisted/{id} | An unlisted security: indicative price, confidence, best quotes, the quotes used and a year of daily history | {id} = security id or slug |
| GET /api/v1/pre-ipo | Companies in the IPO pipeline with their latest sourced stage | stage, page, per_page |
| GET /api/v1/screener | The screener, with every screen field per company | The same parameters as the screener page's address, page, per_page |
| GET /api/v1/analyst | A plain-English question answered from the database, with citations | q (the question), explain=true for a model-worded explanation when available |
Lists return up to 100 items per page (25 by default). GET /api/v1 lists the endpoints without a key.
Responses
{
"data": [
{ "id": 1234, "cin": "U24230GJ…", "name": "…", "state": { "code": "GJ", "name": "Gujarat" },
"latest_fiscal_year": 2025, "revenue": 1234500000, "net_profit": 98700000,
"links": { "web": "https://capitalscope.farbeenterprise.com/company/…", "api": "https://capitalscope.farbeenterprise.com/api/v1/companies/1234" } }
],
"meta": { "api_version": "1", "page": 1, "per_page": 10, "total": 42, "generated_at": "…", "docs": "https://capitalscope.farbeenterprise.com/developers" }
}- Amounts are in rupees (not crores); ratios in percent; dates as YYYY-MM-DD; times in UTC (ISO 8601).
- A fiscal year is named by the year it ends in: the year ending 31 March 2025 is 2025.
- Missing values are
null: CapitalScope never fills a gap with an estimate. - Only published records are returned, never drafts or demo data.
Limits
Each key has a per-minute limit and each organisation a daily quota, both set in its contract. Responses carry X-RateLimit-Limit and X-RateLimit-Remaining (for the day); over a limit you get HTTP 429 with Retry-After. The daily quota resets at midnight India time. Usage by day and endpoint is shown in the enterprise dashboard.
Errors
Errors are JSON: { "error": { "code": "…", "message": "…", "docs": "…" } }
400bad_filter, bad_id, bad_question, key_in_url401missing_key, invalid_key ·403contract_inactive, no_api_access404not_found ·429rate_limited, quota_exceeded ·500internal_error
Sources and licences
Every company and financial year comes with its sources. Data from third parties stays subject to their licences — for example, company master data from data.gov.in is used under the Government Open Data Licence – India and must be attributed as the attribution fields say. See data sources and the terms of use; the API may not be used to resell or republish the data.
Not advice
CapitalScope is an information service. Indicative unlisted prices are not exchange prices and should not be treated as guaranteed executable prices; see the disclaimer.