Skip to main content
GET
Shareholding Pattern History
Use this endpoint to see how a company’s ownership is divided among promoters, foreign institutional investors (FII), domestic institutional investors (DII), government entities, and the public. Enter a company ticker, such as RELIANCE. By default, the endpoint returns up to eight canonical periodic observations, ordered from newest to oldest.

Choose which patterns to return

  • filing_basis selects the reason for the filing and defaults to periodic:
    • periodic is a regular reporting-period disclosure.
    • pre_listing is a disclosure made before the company’s listing.
    • capital_restructuring follows a material change in the company’s capital structure.
  • For periodic patterns, as_of_date selects an exact quarter-end observation. Common dates are 2025-03-31, 2025-06-30, 2025-09-30, and 2025-12-31.
  • If you provide as_of_date without filing_basis, the request still defaults to periodic.
To explore non-periodic history, select filing_basis=pre_listing or filing_basis=capital_restructuring and initially omit as_of_date. Add a date only when you know the exact observation you want. For example, use ticker=DANGEE, filing_basis=pre_listing, and as_of_date=2018-09-01 to retrieve Dangee Dums’ pre-listing observation. The response always uses the same collection shape. A request without an exact date can return up to eight observations. An exact-date request returns zero or one canonical observation. The API does not substitute an earlier or later observation when the requested date has no exact match.

Reading the response

  • data.patterns contains the matching observations, newest first.
  • as_of_date is the observation date reported for each filing.
  • filing_basis identifies why that filing was submitted.
  • total_shares is the total share count reported in that observation.
  • total_shareholders is the observation’s reported number of shareholders. It may be null when the source does not provide it.
  • Values under shareholding are source-reported percentage points for each headline category.
Share counts and percentages are independently source-reported values. Percentages may not sum to exactly 100 because of rounding, missing categories, or regulatory classifications.

Understanding missing values

  • 0 means the filing reported zero for that category.
  • null means the value was unavailable or could not be mapped to that headline category.
  • patterns: [] means the ticker identifies a valid company, but no canonical observation exactly matches the selected filing basis and date.
To inspect the disclosed holders behind the headline categories, use the Shareholding Pattern Holders endpoint.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

ticker
string
required

Company ticker symbol. Supports formats: plain ticker (RELIANCE), exchange-prefixed with dot (NSE.RELIANCE, BSE.RELIANCE), or colon (NSE:RELIANCE, BSE:RELIANCE), and BSE numeric IDs (BSE.500325). When no exchange is specified, matches against the generic stock ticker.

Example:

"RELIANCE"

filing_basis
enum<string>
default:periodic

Select the normalized filing type. Defaults to periodic. Normalized reason for the filing: a regular reporting-period disclosure, a disclosure before listing, or a disclosure following a material capital-structure change.

Available options:
periodic,
pre_listing,
capital_restructuring
Example:

"periodic"

as_of_date
string<date>

Exact source-reported shareholding observation date in YYYY-MM-DD format. For the default periodic filing basis, common observation dates are quarter ends such as 2025-03-31, 2025-06-30, 2025-09-30, and 2025-12-31. To discover non-periodic records, select pre_listing or capital_restructuring and initially omit this parameter; provide it only when the exact observation date is known. A date-only request still defaults to periodic, and the API never substitutes an earlier or later observation when no exact match exists.

Response

Up to eight canonical shareholding observations for the selected filing basis and exact date, when provided. A valid company without matching observations returns an empty patterns array.

status
enum<string>
required
Available options:
success
data
object
required

Company identity and matching canonical shareholding observations. Patterns is empty when the company is valid but no filing matches the selectors.