get_related_filings
Return the other filings this filing cites. Call it after list_company_filings or get_filing_parsed, with the aann_ id they returned, when you need the paper trail around a filing rather than the filing alone.
Chinese listed companies print a filing number on most of their filings (e.g. 2026-047) and later filings cite it in their text. This tool follows those citations. Matching is exact and scoped to the same company — those numbers are per-company yearly counters and collide across the market, so a cross-company match would be wrong, not merely noisy.
Unlike get_filing_parsed this has NO recency window: you can ask about a filing of any age. What comes back is title, date and id, so you can feed any aann_ straight back into get_filing_parsed — that step is the one limited to recent filings.
Read the empty case carefully, because two different facts look similar. found=false means we hold no such filing id. found=true with an empty related means we do hold it and it cites nothing we have. own_number tells you the other half of the story: when it is null, this filing prints no number of its own, so nothing can cite it either. About a third of filings carry no printed number, so an empty result is ordinary rather than a sign of missing data.
WHERE COVERAGE ENDS: every filing whose text we hold has been scanned for citations, so an empty related on those is a real answer, not a gap. What is still incomplete is the corpus itself — a sizeable part of the archive is crawled but not yet parsed, and a filing we have not parsed cannot appear on either side of a citation. So a cited filing may be missing simply because we have not processed it yet, which is also why matched_no is worth reading: it names the number that was cited, even when we can only resolve some of them.
aevt_ on an entry is null when the cited filing produced no event. That is normal: we extract only a few event types so far (list_coverage names them), and the citation link itself does not depend on extraction.
Do NOT use this to sweep a company or the market: it takes a single filing id, has no cursor, and follows citations one hop at a time. Do NOT expect the cited filing's text here either — this returns identity only; pass the aann_ to get_filing_parsed for text, and note that step does have a recency window.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| aann_ | Yes | Opaque filing id from list_company_filings, e.g. aann_Kyw46MM1gCnIaBxA. | |
| limit | No | Max related filings to return. See limits.related_limit_max. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | ||
| aann_ | No | ||
| found | Yes | False means we hold no filing under this id at all. An empty `related` list with found=true is a different answer: we have the filing, it just does not cite any filing we hold. | |
| title | No | Original Chinese title. Never translated. | |
| market | No | ||
| reason | No | unknown_filing = no such filing id. | |
| related | No | Newest first. Each entry includes {aann_, title, ann_date, matched_no, extractions, aevt_, event_type}. matched_no is the printed number that tied the two together. extractions is the complete event list; aevt_ and event_type are a single compatibility representative. They are null when the cited filing produced no event. See list_coverage for supported types. | |
| ann_date | No | Filing date, YYYY-MM-DD. | |
| returned | No | ||
| disclaimer | Yes | ||
| own_number | No | This filing's OWN printed number, or null when its text does not carry one (about a third do not). This is also why other filings may fail to link here: without a printed number there is nothing for them to cite. | |
| more_available | No | True when there may be more beyond `limit`. There is no cursor; raise limit (max in list_coverage) if you need more. |