All APIsexpand_more
Large shareholding reports (5%+ filings)
/stable/large-holding-reports10 tokens per callBusiness+Returns large shareholding reports and change reports filed on EDINET, one filing at a time: filer, issuer, filing and obligation dates, change reason, total holding ratio (current and previous) and each holder and joint holder. Corrections are collapsed to the latest version of each filing set. Ratios are decimals. For now, historical filings are included only where the filer is a listed company; filings by unlisted filers such as asset managers are included from 2026-10-19 onward while their history is being backfilled.
What you can do with this API
- check_circleCheck whether a new 5%+ holder has appeared in a stock you own
- check_circleTrack how a particular investor or company is building or reducing stakes
- check_circleReview change reasons (purchases, disposals, pledges and so on) in one list
Example URL
https://api.zenithcode.net/stable/large-holding-reports?symbol=7203&holder=E03606&from=2026-10-01&to=2026-10-19&includeHolders=true&limit=50Shown without percent-encoding for readability. Non-ASCII values are encoded automatically when sent.
Parameters
| Parameter | Required | Description | Example |
|---|---|---|---|
symbolstring | Optional | Issuer securities code (e.g. 7203 = Toyota Motor) | 7203 |
holderstring | Optional | Filer EDINET code (E followed by 5 digits) | E03606 |
fromstring | Optional | Earliest filing date (YYYY-MM-DD) | 2026-10-01 |
tostring | Optional | Latest filing date (YYYY-MM-DD). Up to 93 days after from when neither symbol nor holder is given | 2026-10-19 |
includeHoldersselect | Optional | Whether to include each holder and joint holder (default true) Allowed values: true, false | true |
limitnumber | Optional | Maximum number of filings to return (default 50, max 200) | 50 |
Try it
Run it with your own parameters and check the response as a table, JSON or CSV. Sign-in required; each run uses 10 tokens.
travel_exploreTry in the API ViewerResponse example (real data)
Response fields
docId | string | |
docTypeCode350 = 大量保有報告書・変更報告書 / 360 = 訂正報告書 | string | 350 = 大量保有報告書・変更報告書 / 360 = 訂正報告書 |
isCorrection | boolean | |
reportTitle | string | |
reportKindinitial = 大量保有報告書 / change = 変更報告書 | string | initial = 大量保有報告書 / change = 変更報告書 |
reportNumber変更報告書の No. | number | 変更報告書の No. |
isSpecialException特例対象株券等(機関投資家の特例報告) | boolean | 特例対象株券等(機関投資家の特例報告) |
isShortTermTransfer短期大量譲渡 | boolean | 短期大量譲渡 |
submittedAt | string | |
filingDate表紙の提出日(訂正は原本の提出日) | string | 表紙の提出日(訂正は原本の提出日) |
obligationDate報告義務発生日 | string | 報告義務発生日 |
changeReason | string | |
filer | object | |
issuer | object | |
holdersCount | number | |
jointHoldersCount | number | |
totalSharesHeld | number | |
totalOutstandingShares | number | |
holdingRatio合計の保有割合(0〜1 の小数) | number | 合計の保有割合(0〜1 の小数) |
holdingRatioPrev前回報告時の合計の保有割合(0〜1 の小数) | number | 前回報告時の合計の保有割合(0〜1 の小数) |
holdingRatioChange今回 − 前回(0〜1 の小数。前回が無ければ null) | number | 今回 − 前回(0〜1 の小数。前回が無ければ null) |
purposeOfHolding提出者が 1 人の書類のみ。複数名は holders を参照 | string | 提出者が 1 人の書類のみ。複数名は holders を参照 |
holders | array | |
coverageall = 全提出者(EDINET の縦覧期間=2021 年 10 月中旬以降)。listed-filers-only = 過去分は提出者が上場会社の書類のみ(取り込みが欠けたときだけ) | string | all = 全提出者(EDINET の縦覧期間=2021 年 10 月中旬以降)。listed-filers-only = 過去分は提出者が上場会社の書類のみ(取り込みが欠けたときだけ) |
sourceUrl | string |
Related APIs
FAQ
How far back do the filings go?expand_more
All filings, including those by unlisted filers such as asset managers, for the EDINET public inspection period (from mid-October 2021, about five years). Older filings are not available because EDINET does not return them. The coverage field reads all.
How is this different from /stable/large-holders?expand_more
large-holders is the yearly reference table in the annual report. This endpoint returns each filing as it is made, so you can follow purchases and disposals with dates.
How many tokens does one call use?expand_more
10 tokens per call, regardless of how many rows come back. Your monthly allowance depends on your plan.
Do I need an account to try it?expand_more
Use the API Viewer to run it with your own parameters. Sign up for free and sign in (no credit card). Each run uses this API's tokens.
Can I get CSV instead of JSON?expand_more
Add format=csv to the URL to get CSV, ready for spreadsheets or pandas.
Can I get labels in English?expand_more
With neither lang nor Accept-Language, labels such as sector names are returned in English; add lang=ja or send Accept-Language: ja for Japanese. Company and sector names are always returned in both languages as nameJa / nameEn and sectorJa / sectorEn. Field names are the same in both languages.

