---
title: "The Schedule 13D and 13G record of a stock or ETF listing: each filer's latest 13D or 13G, largest block first, with its event date, the block's shares (restated onto today's split basis) and percent of class, the change since the filer's previous 13D or 13G, a 13D's Item 4 purpose, and every reporting person on the cover pages with their own amount, percent and sole or shared voting and dispositive power. Reporting persons on one filing each claim the same block, so never add them together. A listing with no 13D or 13G returns an empty list."
method: GET
path: "/v1/stocks/{ticker}/beneficial-ownership"
tags: ["StockOwnership"]
---

# The Schedule 13D and 13G record of a stock or ETF listing: each filer's latest 13D or 13G, largest block first, with its event date, the block's shares (restated onto today's split basis) and percent of class, the change since the filer's previous 13D or 13G, a 13D's Item 4 purpose, and every reporting person on the cover pages with their own amount, percent and sole or shared voting and dispositive power. Reporting persons on one filing each claim the same block, so never add them together. A listing with no 13D or 13G returns an empty list.

`GET /v1/stocks/{ticker}/beneficial-ownership`

## Request

- Base URL: `https://api.equibles.com`
- URL: `https://api.equibles.com/v1/stocks/{ticker}/beneficial-ownership`
- Auth: HTTP bearer

## Path parameters

- `ticker` string, required

## Query parameters

- `limit` integer
- `offset` integer

## Response `200`

OK

- BeneficialOwnershipResponse: A listing's Schedule 13D and 13G record: each filer's latest filing, largest block first.
  - `listingNotice` ListingNotice: What happened to a requested ticker that no longer trades. "delisted": the company has no current US listing, so the answer is its history. "renamed": the company now trades as successorTicker, its current US presentation ticker (possibly another share class). A listed series (short volume, short interest, off-exchange volume, fails-to-deliver, congressional trades) is the retired ticker's own; a company-level read is the company's data.
    - `status` string, nullable: "delisted" or "renamed".
    - `ticker` string, nullable: The retired ticker as listed.
    - `delistedOn` string, date, nullable: The day the retired listing stopped trading, when known.
    - `successorTicker` string, nullable: For "renamed", the company's current US presentation ticker; null for "delisted".
  - `ticker` string, nullable: The listed ticker read.
  - `note` string, nullable: Reporting persons on one filing each claim the same block, so never add them together.
  - `data` BeneficialOwnershipBlockDto[], nullable
    - `filerName` string, nullable
    - `filerCik` string, nullable
    - `filingType` string, nullable: Schedule13D or Schedule13G.
    - `isAmendment` boolean
    - `eventDate` string, date
    - `filingDate` string, date
    - `accessionNumber` string, nullable
    - `rules` string[], nullable: The Rule 13d-1 paragraphs a 13G is filed under: 13d-1(b), 13d-1(c) or 13d-1(d); empty for a 13D.
    - `shares` integer: The lead person's shares, restated onto today's split basis.
    - `filedShares` integer: The lead person's shares as filed.
    - `percentOfClass` number, double, nullable
    - `changeShares` integer, nullable: Restated shares against the filer's previous 13D or 13G for the listing; null without one.
    - `priorEventDate` string, date, nullable
    - `splitUnresolved` boolean: True when a split after the event cannot be attributed to the listing, so counts stay as filed.
    - `hasCoverPage` boolean: False for an older filing whose cover pages were never read, so its reporting persons are unknown.
    - `status` string, nullable: current; unconfirmed (no filing in 24 months; the schedule stays in force, so the block is kept and never assumed sold); below_threshold (the latest filing reports under 5%); exited (no shares); or security_retired (the issuer no longer trades in the US).
    - `purpose` StatedPurposeDto: The purpose a Schedule 13D states in Item 4 ("Purpose of Transaction").
      - `state` string, nullable: stated (categories lists each purpose), none_stated (Item 4 states none of the classified purposes) or not_restated (an amendment that does not restate Item 4, so the earlier 13D's purpose stands).
      - `summary` string, nullable: The purposes' names joined, or why there are none.
      - `categories` StatedPurposeCategoryDto[], nullable
        - `token` string, nullable: A stable token for the purpose: ControlOrBoard, StrategicAlternatives, CapitalReturn, MergerStance, PassiveInvestment or Other.
        - `name` string, nullable
        - `quote` string, nullable: The filing's own sentence stating it.
    - `persons` BeneficialOwnershipPersonDto[], nullable
      - `name` string, nullable
      - `cik` string, nullable: The person's SEC CIK as a 13D states it; a 13G names persons without one.
      - `typeCodes` string[], nullable: The cover page's type-of-reporting-person codes, such as IA, HC, PN or IN.
      - `citizenshipOrOrganization` string, nullable
      - `aggregateAmountOwned` integer
      - `percentOfClass` number, double, nullable
      - `soleVotingPower` integer
      - `sharedVotingPower` integer
      - `soleDispositivePower` integer
      - `sharedDispositivePower` integer
      - `isLead` boolean: True for the filing's lead reporting person.
  - `meta` PageMeta
    - `limit` integer
    - `offset` integer
    - `count` integer
    - `hasMore` boolean
    - `total` integer, nullable

## Other responses

- `400`: Bad Request
- `404`: Not Found

## Changes

- **2026-11-06** `666e06778588`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/equibles/apis/equibles-api/changes/v1/stocks/:ticker/beneficial-ownership/get.md)

---

[API](https://skmtc.dev/equibles/apis/equibles-api.md) - [All operations](https://skmtc.dev/equibles/apis/equibles-api/llms.txt) - [OpenAPI document](https://skmtc.dev/equibles/apis/equibles-api/revisions/83f13ba1a993?raw)
