{"openapi":"3.1.0","info":{"title":"Plover Analytics API","description":"Japanese official statistics and company disclosures, read-only, no key. Human reference: /api.html","version":"1"},"paths":{"/api/v1/equity/cohorts":{"get":{"tags":["Peer groups"],"summary":"Catalogue","description":"Every cohort that can be asked for, with how many companies are in it.","operationId":"catalogue_api_v1_equity_cohorts_get","parameters":[{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"ISO date; default the newest vintage","default":"","title":"As Of"},"description":"ISO date; default the newest vintage"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/cohorts/metrics":{"get":{"tags":["Peer groups"],"summary":"Metrics","description":"What a cohort can be compared on, grouped by where the number comes from.","operationId":"metrics_api_v1_equity_cohorts_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/cohorts/members":{"get":{"tags":["Peer groups"],"summary":"Members","description":"Who is in a cohort, with the classification each member carries.","operationId":"members_api_v1_equity_cohorts_members_get","parameters":[{"name":"cohort","in":"query","required":true,"schema":{"type":"string","description":"a cohort spec, e.g. size:core30","title":"Cohort"},"description":"a cohort spec, e.g. size:core30"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","default":"","title":"As Of"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/cohorts/company/{sec_code}":{"get":{"tags":["Peer groups"],"summary":"Company","description":"The cohorts one company belongs to, and its default peer group.","operationId":"company_api_v1_equity_cohorts_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","default":"","title":"As Of"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/cohorts/compare":{"get":{"tags":["Peer groups"],"summary":"Compare","description":"One metric across one cohort: every member ranked, with the cohort's\nown distribution beside them.\n\nThe ranking is over members that HAVE the number. Members that do not are\nreturned separately and counted, because \"not disclosed\" and \"low\" are\ndifferent findings and collapsing them is the easiest way to publish a\nfalse league table.","operationId":"compare_api_v1_equity_cohorts_compare_get","parameters":[{"name":"cohort","in":"query","required":true,"schema":{"type":"string","description":"a cohort spec, e.g. size:core30 or codes:7203,6758","title":"Cohort"},"description":"a cohort spec, e.g. size:core30 or codes:7203,6758"},{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"one of /cohorts/metrics","default":"roe_pct","title":"Metric"},"description":"one of /cohorts/metrics"},{"name":"highlight","in":"query","required":false,"schema":{"type":"string","description":"a security code to locate in the cohort","default":"","title":"Highlight"},"description":"a security code to locate in the cohort"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"'desc' (default) or 'asc'","default":"desc","title":"Order"},"description":"'desc' (default) or 'asc'"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","default":"","title":"As Of"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/cohorts/compare?cohort=size:core30&metric=roe_pct"}},"/api/v1/equity/governance/years":{"get":{"tags":["Boards and pay"],"summary":"Years","description":"Fiscal years available, newest first — the feed for a year picker.","operationId":"years_api_v1_equity_governance_years_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/governance/summary":{"get":{"tags":["Boards and pay"],"summary":"Summary","description":"Coverage first, then the market aggregates — one filing per company.","operationId":"summary_api_v1_equity_governance_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2026; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2026; default latest"},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' for listed filers only, 'false' for unlisted; default both","default":"","title":"Listed"},"description":"'true' for listed filers only, 'false' for unlisted; default both"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/company/{sec_code}":{"get":{"tags":["Boards and pay"],"summary":"Company","description":"One company, one filing: the board, the pay table, the named individuals.","operationId":"company_api_v1_equity_governance_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default the latest filing","default":"","title":"Year"},"description":"fiscal year; default the latest filing"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/history":{"get":{"tags":["Boards and pay"],"summary":"History","description":"One company across every fiscal year it has been extracted for.","operationId":"history_api_v1_equity_governance_history_get","parameters":[{"name":"sec_code","in":"query","required":true,"schema":{"type":"string","description":"4-digit securities code","title":"Sec Code"},"description":"4-digit securities code"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/companies":{"get":{"tags":["Boards and pay"],"summary":"Companies","description":"Search feed for this dataset — a company is here if a board was extracted.\n\nDeliberately not the holdings search: a company can have a board and pay\ntable extracted while disclosing no policy holdings at all, and searching the\nother dataset would tell that user their company is missing.","operationId":"companies_api_v1_equity_governance_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/trend":{"get":{"tags":["Boards and pay"],"summary":"Trend","description":"Matched panel: the same companies in every year, or the trend is an artefact.\n\nCoverage differs by fiscal year — the archive's window opens mid-2021 and\ncloses mid-2026 — so a simple per-year average would move because the\npopulation moved. This restricts to companies with a clean filing in EVERY\nyear of the window and says how many that is.","operationId":"trend_api_v1_equity_governance_trend_get","parameters":[{"name":"years_back","in":"query","required":false,"schema":{"type":"integer","maximum":6,"minimum":2,"default":5,"title":"Years Back"}},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' (default) for listed filers","default":"true","title":"Listed"},"description":"'true' (default) for listed filers"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/screen":{"get":{"tags":["Boards and pay"],"summary":"Screen","description":"Ranked cross-section, one filing per company.\n\n?cohort= ranks inside a peer group instead of across the whole market —\na board that looks ordinary among 3,700 filers can be an outlier in its\nown TOPIX band.","operationId":"screen_api_v1_equity_governance_screen_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"one of /screen/metrics","default":"oldest_boards","title":"Metric"},"description":"one of /screen/metrics"},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest filing","default":"","title":"Year"},"description":"fiscal year; default latest filing"},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' for listed filers only","default":"","title":"Listed"},"description":"'true' for listed filers only"},{"name":"cohort","in":"query","required":false,"schema":{"type":"string","description":"restrict to a cohort, e.g. size:core30 or codes:7203,6758 — see /api/v1/equity/cohorts","default":"","title":"Cohort"},"description":"restrict to a cohort, e.g. size:core30 or codes:7203,6758 — see /api/v1/equity/cohorts"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/governance/screen/metrics":{"get":{"tags":["Boards and pay"],"summary":"Screen Metrics","description":"The metrics /screen accepts, each with its title.","operationId":"screen_metrics_api_v1_equity_governance_screen_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/governance/named":{"get":{"tags":["Boards and pay"],"summary":"Named","description":"Highest-paid named individuals — consolidated basis, see the note.","operationId":"named_api_v1_equity_governance_named_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest filing","default":"","title":"Year"},"description":"fiscal year; default latest filing"},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' for listed filers only","default":"","title":"Listed"},"description":"'true' for listed filers only"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"min_yen","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"floor on consolidated pay","default":0,"title":"Min Yen"},"description":"floor on consolidated pay"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/years":{"get":{"tags":["Shareholder register"],"summary":"Years","description":"Fiscal years available, newest first — the feed for a year picker.","operationId":"years_api_v1_equity_ownership_years_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/ownership/summary":{"get":{"tags":["Shareholder register"],"summary":"Summary","description":"Coverage first, then what the registers say in aggregate.","operationId":"summary_api_v1_equity_ownership_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2026; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2026; default latest"},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' for listed filers only","default":"","title":"Listed"},"description":"'true' for listed filers only"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/companies":{"get":{"tags":["Shareholder register"],"summary":"Companies","description":"Search feed for this dataset — a company is here if a register was\nextracted from its annual report.","operationId":"companies_api_v1_equity_ownership_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":25,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/company/{sec_code}":{"get":{"tags":["Shareholder register"],"summary":"Company","description":"One company's register: the named holders and the whole-book split.","operationId":"company_api_v1_equity_ownership_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default the latest filing","default":"","title":"Year"},"description":"fiscal year; default the latest filing"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/holder/{key}":{"get":{"tags":["Shareholder register"],"summary":"Holder","description":"The reverse view: every register this holder appears in.\n\n`key` is an EDINET code (E01234) where the holder resolved to one, else the\nholder's name exactly as some filing writes it. A register names holders in\nfree text, so a holder that never resolved is only as findable as its name\nis consistent — which is why the resolved code is preferred.","operationId":"holder_api_v1_equity_ownership_holder__key__get","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest filings","default":"","title":"Year"},"description":"fiscal year; default latest filings"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/ownership/holder/E06125"}},"/api/v1/equity/ownership/holders":{"get":{"tags":["Shareholder register"],"summary":"Holders","description":"Who appears in the most registers — nominees excluded by default.","operationId":"holders_api_v1_equity_ownership_holders_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest filings","default":"","title":"Year"},"description":"fiscal year; default latest filings"},{"name":"include_nominees","in":"query","required":false,"schema":{"type":"string","description":"'true' to include nominee and custodian accounts","default":"false","title":"Include Nominees"},"description":"'true' to include nominee and custodian accounts"},{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"one holder_kind to filter to","default":"","title":"Kind"},"description":"one holder_kind to filter to"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/screen":{"get":{"tags":["Shareholder register"],"summary":"Screen","description":"Companies ranked on one register metric, optionally within a cohort.","operationId":"screen_api_v1_equity_ownership_screen_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"one of /screen/metrics","default":"foreign_pct","title":"Metric"},"description":"one of /screen/metrics"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"'desc' or 'asc'","default":"desc","title":"Order"},"description":"'desc' or 'asc'"},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest filings","default":"","title":"Year"},"description":"fiscal year; default latest filings"},{"name":"listed","in":"query","required":false,"schema":{"type":"string","description":"'true' for listed filers only","default":"true","title":"Listed"},"description":"'true' for listed filers only"},{"name":"min_shareholders","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"drop companies with fewer shareholders than this","default":0,"title":"Min Shareholders"},"description":"drop companies with fewer shareholders than this"},{"name":"cohort","in":"query","required":false,"schema":{"type":"string","description":"restrict to a cohort, e.g. size:core30 or codes:7203,6758 — see /api/v1/equity/cohorts","default":"","title":"Cohort"},"description":"restrict to a cohort, e.g. size:core30 or codes:7203,6758 — see /api/v1/equity/cohorts"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/ownership/screen/metrics":{"get":{"tags":["Shareholder register"],"summary":"Screen Metrics","description":"The metrics /screen accepts, with the formula behind each.","operationId":"screen_metrics_api_v1_equity_ownership_screen_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/stakes/summary":{"get":{"tags":["5% filings"],"summary":"Summary","description":"Coverage first, then what the tape shows.","operationId":"summary_api_v1_equity_stakes_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/stakes/recent":{"get":{"tags":["5% filings"],"summary":"Recent","description":"The tape, newest filing first. Page with offset; `total` is the number\nof filings matching the filters, so a reader knows when it has them all.\nFor the whole archive at once use /export.","operationId":"recent_api_v1_equity_stakes_recent_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"activist","in":"query","required":false,"schema":{"type":"string","description":"'true' for filings stating an important-proposal act","default":"","title":"Activist"},"description":"'true' for filings stating an important-proposal act"},{"name":"min_ratio","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"default":0.0,"title":"Min Ratio"}},{"name":"min_change","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"description":"minimum absolute change in percentage points","default":0.0,"title":"Min Change"},"description":"minimum absolute change in percentage points"},{"name":"report_type","in":"query","required":false,"schema":{"type":"string","description":"initial | change | amendment","default":"","title":"Report Type"},"description":"initial | change | amendment"},{"name":"since","in":"query","required":false,"schema":{"type":"string","description":"filed on or after, YYYY-MM-DD","default":"","title":"Since"},"description":"filed on or after, YYYY-MM-DD"},{"name":"until","in":"query","required":false,"schema":{"type":"string","description":"filed on or before, YYYY-MM-DD","default":"","title":"Until"},"description":"filed on or before, YYYY-MM-DD"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/stakes/companies":{"get":{"tags":["5% filings"],"summary":"Companies","description":"Search feed: issuers that at least one 5% report names.","operationId":"companies_api_v1_equity_stakes_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"issuer name or code substring","default":"","title":"Q"},"description":"issuer name or code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/stakes/company/{sec_code}":{"get":{"tags":["5% filings"],"summary":"Company","description":"Who has filed 5% on this company — the view no single filing shows.","operationId":"company_api_v1_equity_stakes_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"history","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"description":"how many past reports to return","default":50,"title":"History"},"description":"how many past reports to return"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/stakes/holder/{key}":{"get":{"tags":["5% filings"],"summary":"Holder","description":"One holder's book: every issuer it has filed on, latest position first.\n\n`key` is the holder's EDINET code, or for a holder with none, the\nholder_key that /holders lists. Joint holders are coded in the filing even\nwhen they never file themselves, so the code identifies a holder across\nevery report it appears in — including the ones EDINET's public filer\nregistry has no row for (match_status = code_not_in_registry).\n\n`reports` is one page, newest first; `reports_total` is the whole book and\n`truncated` says whether this page stops short of it. `current` is the\nlatest report per issuer over the whole book, whatever the page.","operationId":"holder_api_v1_equity_stakes_holder__key__get","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":200,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"skip this many reports; page through with next_offset","default":0,"title":"Offset"},"description":"skip this many reports; page through with next_offset"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/stakes/holder/E12444"}},"/api/v1/equity/stakes/holders":{"get":{"tags":["5% filings"],"summary":"Holders","description":"The most active 5% filers, by family or by filing entity.\n\nGrouped is the default because the alternative misleads: BlackRock files\nunder sixteen EDINET codes and Fidelity thirteen, so an entity ranking puts\nnine BlackRock subsidiaries in a top twenty and reads as nine investors.","operationId":"holders_api_v1_equity_stakes_holders_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"by","in":"query","required":false,"schema":{"type":"string","description":"'group' (default) consolidates a family's filing entities; 'entity' lists them separately","default":"group","title":"By"},"description":"'group' (default) consolidates a family's filing entities; 'entity' lists them separately"},{"name":"filer_type","in":"query","required":false,"schema":{"type":"string","description":"one filer_type to filter to; see /holder-types","default":"","title":"Filer Type"},"description":"one filer_type to filter to; see /holder-types"},{"name":"group","in":"query","required":false,"schema":{"type":"string","description":"one group, to list its entities","default":"","title":"Group"},"description":"one group, to list its entities"},{"name":"activist","in":"query","required":false,"schema":{"type":"string","description":"'true' for holders that have stated an important-proposal act","default":"","title":"Activist"},"description":"'true' for holders that have stated an important-proposal act"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/stakes/holder-types":{"get":{"tags":["5% filings"],"summary":"Holder Types","description":"The filer types, with how many filing entities carry each.","operationId":"holder_types_api_v1_equity_stakes_holder_types_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/stakes/export":{"get":{"tags":["5% filings"],"summary":"Export","description":"The whole tape in one download, streamed: every report (or every\nholder line) matching the filters, oldest first. CSV opens with '#'\nlines carrying the source, the notes and the formulas.","operationId":"export_api_v1_equity_stakes_export_get","parameters":[{"name":"level","in":"query","required":false,"schema":{"type":"string","description":"'filings' (one row per report) or 'holders' (one row per holder line, with its report's columns)","default":"filings","title":"Level"},"description":"'filings' (one row per report) or 'holders' (one row per holder line, with its report's columns)"},{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"'csv' or 'ndjson'","default":"csv","title":"Format"},"description":"'csv' or 'ndjson'"},{"name":"activist","in":"query","required":false,"schema":{"type":"string","description":"'true' for filings stating an important-proposal act","default":"","title":"Activist"},"description":"'true' for filings stating an important-proposal act"},{"name":"report_type","in":"query","required":false,"schema":{"type":"string","description":"initial | change | amendment","default":"","title":"Report Type"},"description":"initial | change | amendment"},{"name":"since","in":"query","required":false,"schema":{"type":"string","description":"filed on or after, YYYY-MM-DD","default":"","title":"Since"},"description":"filed on or after, YYYY-MM-DD"},{"name":"until","in":"query","required":false,"schema":{"type":"string","description":"filed on or before, YYYY-MM-DD","default":"","title":"Until"},"description":"filed on or before, YYYY-MM-DD"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/summary":{"get":{"tags":["Short positions"],"summary":"Summary","description":"Coverage first — it is the honest ceiling on everything after it.","operationId":"summary_api_v1_equity_shorts_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/shorts/recent":{"get":{"tags":["Short positions"],"summary":"Recent","description":"The tape, newest calculation date first.","operationId":"recent_api_v1_equity_shorts_recent_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"min_ratio","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"default":0.0,"title":"Min Ratio"}},{"name":"min_change","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"description":"minimum absolute change in percentage points since the holder's previous report","default":0.0,"title":"Min Change"},"description":"minimum absolute change in percentage points since the holder's previous report"},{"name":"closing","in":"query","required":false,"schema":{"type":"string","description":"'true' for closing reports only, 'false' to exclude them","default":"","title":"Closing"},"description":"'true' for closing reports only, 'false' to exclude them"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/companies":{"get":{"tags":["Short positions"],"summary":"Companies","description":"Issuers by disclosed short, from the open book. Also the search feed.","operationId":"companies_api_v1_equity_shorts_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"issuer name or code substring","default":"","title":"Q"},"description":"issuer name or code substring"},{"name":"sort","in":"query","required":false,"schema":{"type":"string","description":"disclosed_pct | holders | shares","default":"disclosed_pct","title":"Sort"},"description":"disclosed_pct | holders | shares"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/company/{sec_code}":{"get":{"tags":["Short positions"],"summary":"Company","description":"Who is short this company — the view no single report shows.","operationId":"company_api_v1_equity_shorts_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"history","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"description":"how many past reports to return","default":200,"title":"History"},"description":"how many past reports to return"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/holders":{"get":{"tags":["Short positions"],"summary":"Holders","description":"The short sellers, ranked by how many open positions they hold.","operationId":"holders_api_v1_equity_shorts_holders_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/holder/{key}":{"get":{"tags":["Short positions"],"summary":"Holder","description":"One short seller's open book, largest position first.","operationId":"holder_api_v1_equity_shorts_holder__key__get","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/shorts/files":{"get":{"tags":["Short positions"],"summary":"Files","description":"The daily workbooks held, each with the hash of the bytes we read.\n\nThis is the dataset's provenance and its completeness in one table: a day\nthat is not here is a day nobody can recover, because JPX has deleted it.","operationId":"files_api_v1_equity_shorts_files_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":120,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/earnings/summary":{"get":{"tags":["Earnings releases"],"summary":"Summary","description":"Coverage first — it is the honest ceiling on everything after it.","operationId":"summary_api_v1_equity_earnings_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/earnings/recent":{"get":{"tags":["Earnings releases"],"summary":"Recent","description":"The newest current releases, with their headline lines.","operationId":"recent_api_v1_equity_earnings_recent_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"q1 | q2 | q3 | full-year","default":"","title":"Period"},"description":"q1 | q2 | q3 | full-year"},{"name":"fiscal_period","in":"query","required":false,"schema":{"type":"string","description":"fiscal year-end month, e.g. 2027-03","default":"","title":"Fiscal Period"},"description":"fiscal year-end month, e.g. 2027-03"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/earnings/screen":{"get":{"tags":["Earnings releases"],"summary":"Screen","description":"Companies ranked within ONE reporting period — never across periods.","operationId":"screen_api_v1_equity_earnings_screen_get","parameters":[{"name":"sort","in":"query","required":false,"schema":{"type":"string","description":"progress | revenue_yoy | operating_income_yoy | profit_yoy","default":"progress","title":"Sort"},"description":"progress | revenue_yoy | operating_income_yoy | profit_yoy"},{"name":"line","in":"query","required":false,"schema":{"type":"string","description":"for sort=progress: revenue | operating_income | ordinary_income | profit","default":"operating_income","title":"Line"},"description":"for sort=progress: revenue | operating_income | ordinary_income | profit"},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"q1 | q2 | q3 | full-year — one at a time, because progress after three months and after nine do not compare","default":"q1","title":"Period"},"description":"q1 | q2 | q3 | full-year — one at a time, because progress after three months and after nine do not compare"},{"name":"fiscal_period","in":"query","required":false,"schema":{"type":"string","description":"fiscal year-end month, e.g. 2027-03","default":"","title":"Fiscal Period"},"description":"fiscal year-end month, e.g. 2027-03"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"desc | asc","default":"desc","title":"Order"},"description":"desc | asc"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/earnings/companies":{"get":{"tags":["Earnings releases"],"summary":"Companies","description":"Companies with a release in the archive. Also the search feed.","operationId":"companies_api_v1_equity_earnings_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"company name or code substring","default":"","title":"Q"},"description":"company name or code substring"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/earnings/company/{sec_code}":{"get":{"tags":["Earnings releases"],"summary":"Company","description":"One company's releases: results, the company's forecast, progress against it.","operationId":"company_api_v1_equity_earnings_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"doc_key","in":"query","required":false,"schema":{"type":"string","description":"one release to read; default the newest","default":"","title":"Doc Key"},"description":"one release to read; default the newest"},{"name":"wire","in":"query","required":false,"schema":{"type":"integer","maximum":300,"minimum":0,"description":"how many of the company's other disclosures to list","default":40,"title":"Wire"},"description":"how many of the company's other disclosures to list"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/earnings/wire":{"get":{"tags":["Earnings releases"],"summary":"Wire","description":"Every disclosure on the wire, newest first — the index, not the documents.","operationId":"wire_api_v1_equity_earnings_wire_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"earnings | forecast-revision | dividend-forecast | buyback | tender-offer | share-split | … ; empty for everything","default":"","title":"Kind"},"description":"earnings | forecast-revision | dividend-forecast | buyback | tender-offer | share-split | … ; empty for everything"},{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"company name, code or headline substring","default":"","title":"Q"},"description":"company name, code or headline substring"},{"name":"day","in":"query","required":false,"schema":{"type":"string","description":"one disclosure day, YYYY-MM-DD","default":"","title":"Day"},"description":"one disclosure day, YYYY-MM-DD"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/calendar/upcoming":{"get":{"tags":["Earnings calendar"],"summary":"Upcoming","description":"Scheduled earnings announcements between two dates.","operationId":"upcoming_api_v1_equity_calendar_upcoming_get","parameters":[{"name":"start","in":"query","required":false,"schema":{"type":"string","description":"first day, YYYY-MM-DD; default today in Tokyo","default":"","title":"Start"},"description":"first day, YYYY-MM-DD; default today in Tokyo"},{"name":"end","in":"query","required":false,"schema":{"type":"string","description":"last day, YYYY-MM-DD; default start + 13 days","default":"","title":"End"},"description":"last day, YYYY-MM-DD; default start + 13 days"},{"name":"codes","in":"query","required":false,"schema":{"type":"string","description":"comma-separated securities codes; empty = every company","default":"","title":"Codes"},"description":"comma-separated securities codes; empty = every company"},{"name":"market","in":"query","required":false,"schema":{"type":"string","description":"prime, standard, growth or reit","default":"","title":"Market"},"description":"prime, standard, growth or reit"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"the calendar as known on this date","default":"","title":"As Of"},"description":"the calendar as known on this date"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/calendar/company/{sec_code}":{"get":{"tags":["Earnings calendar"],"summary":"Company","description":"Every date a company has carried, list by list — how its plan moved.","operationId":"company_api_v1_equity_calendar_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"lists dated on or before","default":"","title":"As Of"},"description":"lists dated on or before"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/calendar/files":{"get":{"tags":["Earnings calendar"],"summary":"Files","description":"Every JPX list held, newest first, with its hash and archive file.","operationId":"files_api_v1_equity_calendar_files_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/agm/summary":{"get":{"tags":["AGM votes"],"summary":"Summary","description":"Coverage first, then what the votes show.","operationId":"summary_api_v1_equity_agm_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/agm/directors":{"get":{"tags":["AGM votes"],"summary":"Directors","description":"Named directors by the support they actually received.\n\nThe lowest end is the point of the dataset: a director returned on 62% has\na mandate problem that no other public dataset in Japan will tell you\nabout, and the same name can be looked up across companies and years.","operationId":"directors_api_v1_equity_agm_directors_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"'lowest' or 'highest' approval","default":"lowest","title":"Order"},"description":"'lowest' or 'highest' approval"},{"name":"max_pct","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"default":100.0,"title":"Max Pct"}},{"name":"sec_code","in":"query","required":false,"schema":{"type":"string","description":"restrict to one issuer","default":"","title":"Sec Code"},"description":"restrict to one issuer"},{"name":"year","in":"query","required":false,"schema":{"type":"integer","description":"meeting calendar year","default":0,"title":"Year"},"description":"meeting calendar year"},{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"'election', 'dismissal' or 'all'","default":"election","title":"Kind"},"description":"'election', 'dismissal' or 'all'"},{"name":"include_unverified","in":"query","required":false,"schema":{"type":"string","description":"'true' to include rows this platform could not corroborate","default":"","title":"Include Unverified"},"description":"'true' to include rows this platform could not corroborate"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/agm/proposals":{"get":{"tags":["AGM votes"],"summary":"Proposals","description":"Proposals, filterable to the ones worth arguing about.","operationId":"proposals_api_v1_equity_agm_proposals_get","parameters":[{"name":"category","in":"query","required":false,"schema":{"type":"string","description":"e.g. takeover_defence","default":"","title":"Category"},"description":"e.g. takeover_defence"},{"name":"shareholder","in":"query","required":false,"schema":{"type":"string","description":"'true' for shareholder proposals","default":"","title":"Shareholder"},"description":"'true' for shareholder proposals"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"include_unverified","in":"query","required":false,"schema":{"type":"string","description":"'true' to include rows this platform could not corroborate","default":"","title":"Include Unverified"},"description":"'true' to include rows this platform could not corroborate"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/agm/companies":{"get":{"tags":["AGM votes"],"summary":"Companies","description":"Issuers with a meeting on file, searchable by either language.\n\nScoped to this dataset on purpose. A company can file annual reports for\nyears and still have no 臨時報告書 in the window, and pointing a reader at a\ncompany page with no meetings would read as missing data rather than as\nthe coverage gap it is.","operationId":"companies_api_v1_equity_agm_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name in English or Japanese, or securities code","default":"","title":"Q"},"description":"name in English or Japanese, or securities code"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/agm/company/{sec_code}":{"get":{"tags":["AGM votes"],"summary":"Company","description":"Every meeting we hold for one issuer, with its proposals and directors.","operationId":"company_api_v1_equity_agm_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/years":{"get":{"tags":["Facilities"],"summary":"Years","description":"Fiscal years available, newest first — the feed for a year picker.","operationId":"years_api_v1_equity_facilities_years_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/facilities/summary":{"get":{"tags":["Facilities"],"summary":"Summary","description":"Coverage first, then the aggregates — one clean filing per company.","operationId":"summary_api_v1_equity_facilities_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2026; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2026; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/map":{"get":{"tags":["Facilities"],"summary":"Map Points","description":"Every geocoded facility as a compact point list for the map.\n\ncolumns/rows layout to keep the payload small; land_yen and land_area_m2\ncan be null — missing is missing, never zero.","operationId":"map_points_api_v1_equity_facilities_map_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default latest","default":"","title":"Year"},"description":"fiscal year; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/ranking":{"get":{"tags":["Facilities"],"summary":"Ranking","description":"Companies ranked on their disclosed land — the hidden-land screen.\n\nyen_per_m2 ranks cheapest first: large area at negligible book value is\nthe pattern worth finding. Only companies whose filing discloses BOTH\narea and book value can appear there. bs_gap ranks by the land the filing\ndid NOT itemise: balance-sheet land minus disclosed facilities land,\ncomputable only where the balance-sheet gate reconciled.","operationId":"ranking_api_v1_equity_facilities_ranking_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"land_area | land_book | yen_per_m2 | bs_gap","default":"land_area","title":"Metric"},"description":"land_area | land_book | yen_per_m2 | bs_gap"},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/rental/summary":{"get":{"tags":["Facilities"],"summary":"Rental Summary","description":"Coverage and totals for the rental-property fair-value dataset.","operationId":"rental_summary_api_v1_equity_facilities_rental_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/rental/ranking":{"get":{"tags":["Facilities"],"summary":"Rental Ranking","description":"Companies ranked on the market value their rental property discloses.\n\nunrealized = fair value − carrying amount, the officially disclosed gap\nbetween market and book. ratio = fair ÷ carrying, the multiple — small\ncarrying amounts at large multiples are the classic forgotten assets.","operationId":"rental_ranking_api_v1_equity_facilities_rental_ranking_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"unrealized | fair_value | ratio","default":"unrealized","title":"Metric"},"description":"unrealized | fair_value | ratio"},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/companies":{"get":{"tags":["Facilities"],"summary":"Companies","description":"Search feed for this dataset — a company is here if a facilities filing\nwas extracted, clean OR partial: someone searching for a specific company\nmust find it and see its status, not be told it is missing because a gate\nfailed. Aggregates still exclude partials; this list labels them.","operationId":"companies_api_v1_equity_facilities_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or securities code substring","default":"","title":"Q"},"description":"name or securities code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/facilities/company/{sec_code}":{"get":{"tags":["Facilities"],"summary":"Company","description":"Every facility one company disclosed, with the filing's gate status.","operationId":"company_api_v1_equity_facilities_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/summary":{"get":{"tags":["Banks"],"summary":"Summary","description":"How many banks, how recent, and the group totals of what they printed.","operationId":"summary_api_v1_equity_banks_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/companies":{"get":{"tags":["Banks"],"summary":"Companies","description":"Every bank with a parsed filing, newest first, with the headline lines.","operationId":"companies_api_v1_equity_banks_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":100,"default":"","title":"Q"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/company/{sec_code}":{"get":{"tags":["Banks"],"summary":"Company","description":"One bank: its maturity ladder, funding by term, unrealised gains by\ntype, its own VaR sentence, and its Basel rate-risk table.\n\nThe parameter is named `sec_code` because that is what every company-shaped\ndataset here is addressed by, and what the MCP company tool passes. This one\nalso accepts `fi:0134`, the FSA institution code, which resolves to whichever\nfiler files that bank's annual report.","operationId":"company_api_v1_equity_banks_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/ranking":{"get":{"tags":["Banks"],"summary":"Ranking","description":"Banks ranked on one printed line or one derived ratio; clean filings only.","operationId":"ranking_api_v1_equity_banks_ranking_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","default":"afs_bond_diff","title":"Metric"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","default":"","title":"Year"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/irrbb":{"get":{"tags":["Banks"],"summary":"Irrbb","description":"Every institution's Basel rate-risk table, newest reading, ranked on\nΔEVE as a share of Tier 1 — the supervisor's own yardstick.","operationId":"irrbb_api_v1_equity_banks_irrbb_get","parameters":[{"name":"fi_type","in":"query","required":false,"schema":{"type":"string","default":"","title":"Fi Type"}},{"name":"basis","in":"query","required":false,"schema":{"type":"string","default":"consolidated","title":"Basis"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/banks/irrbb/sources":{"get":{"tags":["Banks"],"summary":"Irrbb Sources","description":"Where each institution's rate-risk table was found, or why it was not.","operationId":"irrbb_sources_api_v1_equity_banks_irrbb_sources_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/financials/company/{sec_code}":{"get":{"tags":["Financials"],"summary":"Company","description":"One company's key indicators across fiscal years, with provenance.","operationId":"company_api_v1_equity_financials_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"consolidated | parent; default both","default":"","title":"Basis"},"description":"consolidated | parent; default both"},{"name":"as_filed_in","in":"query","required":false,"schema":{"type":"string","description":"fiscal year (YYYY) of one filing to read as first published","default":"","title":"As Filed In"},"description":"fiscal year (YYYY) of one filing to read as first published"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/statements/{sec_code}":{"get":{"tags":["Financials"],"summary":"Statements","description":"One statement of one filing, every line as filed, current and prior year.","operationId":"statements_api_v1_equity_financials_statements__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"statement","in":"query","required":false,"schema":{"type":"string","description":"bs | pl | ci | cf | ss | summary","default":"bs","title":"Statement"},"description":"bs | pl | ci | cf | ss | summary"},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"consolidated (default where filed) | parent","default":"","title":"Basis"},"description":"consolidated (default where filed) | parent"},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year (YYYY) of the filing; default latest","default":"","title":"Year"},"description":"fiscal year (YYYY) of the filing; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/facts/{sec_code}":{"get":{"tags":["Financials"],"summary":"Facts","description":"Every filed value of one element for one company, across filings and\nthe years each filing restates — the raw panel a model is built on.","operationId":"facts_api_v1_equity_financials_facts__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"element","in":"query","required":true,"schema":{"type":"string","description":"element id, e.g. jppfs_cor:NetSales","title":"Element"},"description":"element id, e.g. jppfs_cor:NetSales"},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"consolidated | parent; default both","default":"","title":"Basis"},"description":"consolidated | parent; default both"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/elements":{"get":{"tags":["Financials"],"summary":"Elements","description":"The element dictionary: what has been tagged, and by how many filings.","operationId":"elements_api_v1_equity_financials_elements_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"substring of the element id or Japanese/English label","default":"","title":"Q"},"description":"substring of the element id or Japanese/English label"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/screen":{"get":{"tags":["Financials"],"summary":"Screen","description":"Ranked cross-section on one key indicator, one filing per company.","operationId":"screen_api_v1_equity_financials_screen_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"one of /screen/metrics","default":"revenue","title":"Metric"},"description":"one of /screen/metrics"},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year of the filing; default each company's latest","default":"","title":"Year"},"description":"fiscal year of the filing; default each company's latest"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/screen/metrics":{"get":{"tags":["Financials"],"summary":"Screen Metrics","description":"The filed metrics /screen accepts, each with its label.","operationId":"screen_metrics_api_v1_equity_financials_screen_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/financials/summary":{"get":{"tags":["Financials"],"summary":"Summary","description":"What the dataset holds — filings by status, companies, fiscal years.","operationId":"summary_api_v1_equity_financials_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/financials/companies":{"get":{"tags":["Financials"],"summary":"Companies","description":"Search box feed: companies with an accepted financial filing.","operationId":"companies_api_v1_equity_financials_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/metrics/{sec_code}":{"get":{"tags":["Financials"],"summary":"Metrics","description":"One company's platform-calculated ratios with formula, inputs and the\nfiler's own figure where it prints one.","operationId":"metrics_api_v1_equity_financials_metrics__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/financials/screener":{"get":{"tags":["Financials"],"summary":"Screener","description":"Cross-section of every company's latest filing on platform-calculated\nratios, filtered and ranked. Companies missing the sort metric are\nexcluded from the ranking and counted in `excluded_missing_sort`.\n\n?cohort= narrows the universe to a peer group before anything is ranked,\nso a rank is a rank inside that group, not inside the market.","operationId":"screener_api_v1_equity_financials_screener_get","parameters":[{"name":"industry","in":"query","required":false,"schema":{"type":"string","description":"EDINET industry (Japanese), e.g. 銀行業; omit for all","default":"","title":"Industry"},"description":"EDINET industry (Japanese), e.g. 銀行業; omit for all"},{"name":"standard","in":"query","required":false,"schema":{"type":"string","description":"Japan GAAP | IFRS | US GAAP","default":"","title":"Standard"},"description":"Japan GAAP | IFRS | US GAAP"},{"name":"min_revenue_yen","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Revenue Yen"}},{"name":"min_assets_yen","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Assets Yen"}},{"name":"roe_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roe Min"}},{"name":"roe_max","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roe Max"}},{"name":"roa_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roa Min"}},{"name":"operating_margin_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Operating Margin Min"}},{"name":"equity_ratio_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Equity Ratio Min"}},{"name":"equity_ratio_max","in":"query","required":false,"schema":{"type":"string","default":"","title":"Equity Ratio Max"}},{"name":"revenue_growth_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Revenue Growth Min"}},{"name":"pbr_implied_max","in":"query","required":false,"schema":{"type":"string","default":"","title":"Pbr Implied Max"}},{"name":"dividend_yield_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Dividend Yield Min"}},{"name":"cash_to_assets_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Cash To Assets Min"}},{"name":"net_cash_to_assets_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Net Cash To Assets Min"}},{"name":"cohort","in":"query","required":false,"schema":{"type":"string","description":"restrict to a cohort, e.g. size:core30, ind33:3650 or codes:7203,6758 — see /api/v1/equity/cohorts","default":"","title":"Cohort"},"description":"restrict to a cohort, e.g. size:core30, ind33:3650 or codes:7203,6758 — see /api/v1/equity/cohorts"},{"name":"sort","in":"query","required":false,"schema":{"type":"string","description":"metric or size field to rank on","default":"roe_pct","title":"Sort"},"description":"metric or size field to rank on"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"desc | asc","default":"desc","title":"Order"},"description":"desc | asc"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/financials/screener?sort=roe_pct&limit=20"}},"/api/v1/equity/financials/screener/options":{"get":{"tags":["Financials"],"summary":"Screener Options","description":"What the screener can filter and sort on, with universe counts.","operationId":"screener_options_api_v1_equity_financials_screener_options_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/segments/company/{sec_code}":{"get":{"tags":["Segments and customers"],"summary":"Company","description":"The segment note as filed: regions, named customers, reportable segments.","operationId":"company_api_v1_equity_segments_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/segments/companies":{"get":{"tags":["Segments and customers"],"summary":"Companies","description":"Search box feed: every company whose annual report has an accepted\nsegment note. The Company Profile reaches all of them, not only the ones\nthe semiconductor mapping happens to name.","operationId":"companies_api_v1_equity_segments_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/segments/supply-chain":{"get":{"tags":["Segments and customers"],"summary":"Supply Chain","description":"The commodity -> company mapping, with names and filing status resolved.","operationId":"supply_chain_api_v1_equity_segments_supply_chain_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/segments/customers":{"get":{"tags":["Segments and customers"],"summary":"Customers","description":"Who names whom: every ≥10% customer any filer discloses, with the revenue.\n\nA directed edge list — filer → customer — in the current fiscal year of\nthe filer's latest note. Names are as the filer wrote them, so the same\ncustomer can appear under several spellings; nothing here is normalised.","operationId":"customers_api_v1_equity_segments_customers_get","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string","maxLength":80,"description":"customer name contains","title":"Name"},"description":"customer name contains"},{"name":"sec_code","in":"query","required":false,"schema":{"type":"string","description":"filer's securities code","title":"Sec Code"},"description":"filer's securities code"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/segments/customers?name=Taiwan"}},"/api/v1/equity/segments/lens/{sec_code}.csv":{"get":{"tags":["Segments and customers"],"summary":"Lens Csv","description":"The lens as one wide table a model can paste: one row per fiscal year,\nfiled regions and customs series side by side, every header line stating\nsource, vintage and trust.","operationId":"lens_csv_api_v1_equity_segments_lens__sec_code__csv_get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/segments/lens/8035.csv"}},"/api/v1/equity/segments/lens/{sec_code}":{"get":{"tags":["Segments and customers"],"summary":"Lens","description":"What the company files by region, beside the customs flows it is mapped\nto, both in the company's own fiscal periods — and the ratio between them,\nwith its formula and its caveat.","operationId":"lens_api_v1_equity_segments_lens__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/equity/segments/lens/8035"}},"/api/v1/equity/segments/concentration":{"get":{"tags":["Segments and customers"],"summary":"Concentration","description":"Who depends on whom, and by how much — the whole disclosed graph.\n\nOne payload: every filer that names a customer, with the amount and the\nshare of its own revenue, plus the reverse view aggregated by the customer\nname as written. Everything here is a filed figure; the shares are\narithmetic on two filed figures and carry their formula.","operationId":"concentration_api_v1_equity_segments_concentration_get","parameters":[{"name":"min_share","in":"query","required":false,"schema":{"type":"number","maximum":100,"minimum":0,"description":"only filers whose combined named-customer dependence reaches this percent","default":0.0,"title":"Min Share"},"description":"only filers whose combined named-customer dependence reaches this percent"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/segments/coverage":{"get":{"tags":["Segments and customers"],"summary":"Coverage","description":"How much of the archive the segment extractor has turned into rows.","operationId":"coverage_api_v1_equity_segments_coverage_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/risks/summary":{"get":{"tags":["Business risks"],"summary":"Summary","description":"Coverage: filings and companies by extraction status.","operationId":"summary_api_v1_equity_risks_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/risks/companies":{"get":{"tags":["Business risks"],"summary":"Companies","description":"Search feed: companies with a business-risks section on file.","operationId":"companies_api_v1_equity_risks_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or securities code substring","default":"","title":"Q"},"description":"name or securities code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/risks/company/{sec_code}":{"get":{"tags":["Business risks"],"summary":"Company","description":"One company's business-risks section, itemised, with what changed\nagainst its previous annual report on file.","operationId":"company_api_v1_equity_risks_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year the report covers, by the calendar year its period ends","default":"","title":"Year"},"description":"fiscal year the report covers, by the calendar year its period ends"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/risks/search":{"get":{"tags":["Business risks"],"summary":"Search","description":"Which companies' latest business-risks section mentions `q`, with the\nitem it appears in. Exact substring match on the filed text — no stemming,\nno synonyms, no translation — so 為替 and 為替レート are different searches.","operationId":"search_api_v1_equity_risks_search_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","description":"text to find, e.g. 為替 or サイバー","title":"Q"},"description":"text to find, e.g. 為替 or サイバー"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/buyback/summary":{"get":{"tags":["Buybacks"],"summary":"Summary","description":"Coverage first, then the market aggregates — one row per authorisation.","operationId":"summary_api_v1_equity_buyback_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/buyback/monthly":{"get":{"tags":["Buybacks"],"summary":"Monthly","description":"Yen bought and yen retired by reporting month — the chart feed.\n\nTwo different acts on one time axis, deliberately: both are yen flows in the\nsame month, and the whole point of the series is that they do not move\ntogether. They are never summed.","operationId":"monthly_api_v1_equity_buyback_monthly_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/buyback/programs":{"get":{"tags":["Buybacks"],"summary":"Programs","description":"One row per authorisation: announced, executed, and what is left.","operationId":"programs_api_v1_equity_buyback_programs_get","parameters":[{"name":"lifecycle","in":"query","required":false,"schema":{"type":"string","description":"one of the lifecycle states","default":"","title":"Lifecycle"},"description":"one of the lifecycle states"},{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or securities code substring","default":"","title":"Q"},"description":"name or securities code substring"},{"name":"min_authorised_yen","in":"query","required":false,"schema":{"type":"number","minimum":0,"default":0,"title":"Min Authorised Yen"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","description":"one of /programs/sorts","default":"unspent_yen","title":"Sort"},"description":"one of /programs/sorts"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/buyback/programs/sorts":{"get":{"tags":["Buybacks"],"summary":"Program Sorts","description":"The sort keys /programs accepts.","operationId":"program_sorts_api_v1_equity_buyback_programs_sorts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/buyback/retirements":{"get":{"tags":["Buybacks"],"summary":"Retirements","description":"Filing-months in which shares were cancelled outright.","operationId":"retirements_api_v1_equity_buyback_retirements_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/buyback/companies":{"get":{"tags":["Buybacks"],"summary":"Companies","description":"Companies with at least one buyback filing — the search feed.","operationId":"companies_api_v1_equity_buyback_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/buyback/company/{sec_code}":{"get":{"tags":["Buybacks"],"summary":"Company","description":"One company: its authorisations, its month-by-month buying, its retirements.","operationId":"company_api_v1_equity_buyback_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/years":{"get":{"tags":["Cross-shareholdings"],"summary":"Years","description":"Fiscal years available, newest first — the feed for a year picker.","operationId":"years_api_v1_equity_years_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/equity/summary":{"get":{"tags":["Cross-shareholdings"],"summary":"Summary","description":"Market-wide totals for one fiscal year: filers covered, policy holdings\nat book value, and the year-on-year change in the number of stakes held.","operationId":"summary_api_v1_equity_summary_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2025; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2025; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/companies":{"get":{"tags":["Cross-shareholdings"],"summary":"Companies","description":"Search box feed: filers with extracted tables and/or companies that are held.","operationId":"companies_api_v1_equity_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name or code substring","default":"","title":"Q"},"description":"name or code substring"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/company/{sec_code}":{"get":{"tags":["Cross-shareholdings"],"summary":"Company","description":"Both directions for one company: what it holds, and who holds it.","operationId":"company_api_v1_equity_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/history":{"get":{"tags":["Cross-shareholdings"],"summary":"History","description":"Multi-year unwind: named policy-holding value per filer, per fiscal year.\n\nThe series the five-year archive exists for. One row per filer-year, so a\ncaller can chart a company's path; the cross-sectional surfaces stay on a\nsingle year.","operationId":"history_api_v1_equity_history_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":40,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/unwind":{"get":{"tags":["Cross-shareholdings"],"summary":"Unwind","description":"Sector unwind ranking: named policy-holding value change, per filer.","operationId":"unwind_api_v1_equity_unwind_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2025; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2025; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/reclassified":{"get":{"tags":["Cross-shareholdings"],"summary":"Reclassified","description":"Filers ranked by policy holdings moved to 純投資目的, not sold.\n\nThe gap this closes: a position reclassified as pure investment vanishes\nfrom the named policy table without a transaction, so an unwind measured on\nthat table alone books it as a disposal. Filings disclose the move\nexplicitly, with the fiscal year and the filer's own reason; this ranks\nwhat left the bucket against what the same filing says was actually sold.","operationId":"reclassified_api_v1_equity_reclassified_get","parameters":[{"name":"year","in":"query","required":false,"schema":{"type":"string","description":"fiscal year, e.g. 2025; default latest","default":"","title":"Year"},"description":"fiscal year, e.g. 2025; default latest"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/equity/claim-check":{"get":{"tags":["Cross-shareholdings"],"summary":"Claim Check","description":"Check a published figure against what the filings support.","operationId":"claim_check_api_v1_equity_claim_check_get","parameters":[{"name":"figure_yen","in":"query","required":true,"schema":{"type":"number","description":"the figure to check, in yen","title":"Figure Yen"},"description":"the figure to check, in yen"},{"name":"companies","in":"query","required":true,"schema":{"type":"string","description":"comma-separated securities codes","title":"Companies"},"description":"comma-separated securities codes"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"date the claim refers to, YYYY-MM-DD","default":"","title":"As Of"},"description":"date the claim refers to, YYYY-MM-DD"},{"name":"measure","in":"query","required":false,"schema":{"type":"string","description":"holdings | reduction","default":"holdings","title":"Measure"},"description":"holdings | reduction"},{"name":"claimed_measurement","in":"query","required":false,"schema":{"type":"string","description":"carrying_amount | acquisition_cost","default":"","title":"Claimed Measurement"},"description":"carrying_amount | acquisition_cost"},{"name":"claimed_entity_scope","in":"query","required":false,"schema":{"type":"string","description":"parent_only | largest_holding_company | second_largest_holding_company | holdco_consolidated","default":"","title":"Claimed Entity Scope"},"description":"parent_only | largest_holding_company | second_largest_holding_company | holdco_consolidated"},{"name":"claimed_share_scope","in":"query","required":false,"schema":{"type":"string","description":"listed | unlisted | both","default":"","title":"Claimed Share Scope"},"description":"listed | unlisted | both"},{"name":"claimed_period_type","in":"query","required":false,"schema":{"type":"string","description":"annual | interim","default":"","title":"Claimed Period Type"},"description":"annual | interim"},{"name":"context","in":"query","required":false,"schema":{"type":"string","description":"the claim's own wording; echoed, never parsed","default":"","title":"Context"},"description":"the claim's own wording; echoed, never parsed"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/us/financials/company/{cik}":{"get":{"tags":["US financials"],"summary":"Company By Cik","description":"One company's key indicators per filing, newest first, each row naming\nthe tag behind every field.","operationId":"company_by_cik_api_v1_us_financials_company__cik__get","parameters":[{"name":"cik","in":"path","required":true,"schema":{"type":"string","title":"Cik"}},{"name":"form","in":"query","required":false,"schema":{"type":"string","description":"10-K (default; also 20-F/40-F) or 10-Q","default":"","title":"Form"},"description":"10-K (default; also 20-F/40-F) or 10-Q"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":12,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/company/320193"}},"/api/v1/us/financials/statements/{cik}":{"get":{"tags":["US financials"],"summary":"Statements By Cik","description":"One statement of one filing, every line as filed, with the comparative\nthe filer tagged.","operationId":"statements_by_cik_api_v1_us_financials_statements__cik__get","parameters":[{"name":"cik","in":"path","required":true,"schema":{"type":"string","title":"Cik"}},{"name":"statement","in":"query","required":false,"schema":{"type":"string","description":"BS | IS | CF | CI | EQ","default":"BS","title":"Statement"},"description":"BS | IS | CF | CI | EQ"},{"name":"form","in":"query","required":false,"schema":{"type":"string","description":"10-K (default; also 20-F/40-F) or 10-Q","default":"","title":"Form"},"description":"10-K (default; also 20-F/40-F) or 10-Q"},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"period end YYYY-MM-DD; default latest","default":"","title":"Period"},"description":"period end YYYY-MM-DD; default latest"},{"name":"fy","in":"query","required":false,"schema":{"type":"string","description":"fiscal year of the filing; default latest","default":"","title":"Fy"},"description":"fiscal year of the filing; default latest"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/statements/320193?statement=IS"}},"/api/v1/us/financials/facts/{cik}":{"get":{"tags":["US financials"],"summary":"Facts By Cik","description":"Every filed value of one tag for one company, across filings — the raw\npanel a model is built on.","operationId":"facts_by_cik_api_v1_us_financials_facts__cik__get","parameters":[{"name":"cik","in":"path","required":true,"schema":{"type":"string","title":"Cik"}},{"name":"tag","in":"query","required":true,"schema":{"type":"string","description":"us-gaap tag, e.g. NetIncomeLoss","title":"Tag"},"description":"us-gaap tag, e.g. NetIncomeLoss"},{"name":"form","in":"query","required":false,"schema":{"type":"string","description":"10-K (default family) | 10-Q | all","default":"","title":"Form"},"description":"10-K (default family) | 10-Q | all"},{"name":"segments","in":"query","required":false,"schema":{"type":"integer","description":"1 to include dimensional (segment) facts","default":0,"title":"Segments"},"description":"1 to include dimensional (segment) facts"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/facts/320193?tag=Revenues"}},"/api/v1/us/financials/companies":{"get":{"tags":["US financials"],"summary":"Companies","description":"Filers with at least one periodic report loaded, by name, ticker or\nCIK — with the ticker, exchange and industry the SEC lists for them.","operationId":"companies_api_v1_us_financials_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"name substring, ticker or CIK","default":"","title":"Q"},"description":"name substring, ticker or CIK"},{"name":"exchange","in":"query","required":false,"schema":{"type":"string","description":"Nasdaq | NYSE | OTC | CBOE | TXSE","default":"","title":"Exchange"},"description":"Nasdaq | NYSE | OTC | CBOE | TXSE"},{"name":"sic","in":"query","required":false,"schema":{"type":"string","description":"SIC code, e.g. 3674","default":"","title":"Sic"},"description":"SIC code, e.g. 3674"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/companies?q=apple"}},"/api/v1/us/financials/tags":{"get":{"tags":["US financials"],"summary":"Tags","description":"Standard (non-custom) taxonomy elements, for finding the tag to ask for.","operationId":"tags_api_v1_us_financials_tags_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"substring of the tag or its standard label","default":"","title":"Q"},"description":"substring of the tag or its standard label"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/tags?q=revenue"}},"/api/v1/us/financials/summary":{"get":{"tags":["US financials"],"summary":"Summary","description":"What is loaded: quarters, filings by form, companies, verdict counts.","operationId":"summary_api_v1_us_financials_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/financials/summary"}},"/api/v1/us/financials/screen":{"get":{"tags":["US financials"],"summary":"Screen","description":"Companies ranked on one key indicator from their latest annual report\n(10-K/20-F/40-F). Ranked within one reporting unit only — a filer\nreporting in CNY is never ranked against one reporting in USD.","operationId":"screen_api_v1_us_financials_screen_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"one of revenue, operating_income, net_income, total_assets, equity, cash, cf_operating, capex, buybacks, dividends_paid","default":"revenue","title":"Metric"},"description":"one of revenue, operating_income, net_income, total_assets, equity, cash, cf_operating, capex, buybacks, dividends_paid"},{"name":"fy","in":"query","required":false,"schema":{"type":"string","description":"fiscal year; default each company's latest annual report","default":"","title":"Fy"},"description":"fiscal year; default each company's latest annual report"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"desc | asc","default":"desc","title":"Order"},"description":"desc | asc"},{"name":"unit","in":"query","required":false,"schema":{"type":"string","description":"only filings reporting in this unit are ranked","default":"USD","title":"Unit"},"description":"only filings reporting in this unit are ranked"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/screen?metric=revenue&limit=20"}},"/api/v1/us/financials/metrics/{company}":{"get":{"tags":["US financials"],"summary":"Metrics","description":"One filer's platform-calculated ratios from its latest annual report,\nwith the formula for each and the tag behind every input.","operationId":"metrics_api_v1_us_financials_metrics__company__get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/metrics/AAPL"}},"/api/v1/us/financials/screener":{"get":{"tags":["US financials"],"summary":"Screener","description":"Every US filer's latest annual report on platform-calculated ratios,\nfiltered and ranked. Companies missing the sort field are excluded from\nthe ranking and counted in `excluded_missing_sort`. Size fields are\nranked within one reporting currency only.","operationId":"screener_api_v1_us_financials_screener_get","parameters":[{"name":"sic","in":"query","required":false,"schema":{"type":"string","description":"SIC code (e.g. 3674) or a 2-digit prefix (37)","default":"","title":"Sic"},"description":"SIC code (e.g. 3674) or a 2-digit prefix (37)"},{"name":"industry","in":"query","required":false,"schema":{"type":"string","description":"substring of the SIC industry title, e.g. motor vehicles","default":"","title":"Industry"},"description":"substring of the SIC industry title, e.g. motor vehicles"},{"name":"exchange","in":"query","required":false,"schema":{"type":"string","description":"Nasdaq | NYSE | OTC | CBOE | TXSE","default":"","title":"Exchange"},"description":"Nasdaq | NYSE | OTC | CBOE | TXSE"},{"name":"tickers","in":"query","required":false,"schema":{"type":"string","description":"comma-separated tickers to rank within","default":"","title":"Tickers"},"description":"comma-separated tickers to rank within"},{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":80,"description":"part of the company's name, its ticker, or its SEC number","default":"","title":"Q"},"description":"part of the company's name, its ticker, or its SEC number"},{"name":"unit","in":"query","required":false,"schema":{"type":"string","description":"reporting currency ranked; size sorts never mix units","default":"USD","title":"Unit"},"description":"reporting currency ranked; size sorts never mix units"},{"name":"min_revenue","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Revenue"}},{"name":"min_assets","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Assets"}},{"name":"roe_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roe Min"}},{"name":"roe_max","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roe Max"}},{"name":"roa_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Roa Min"}},{"name":"operating_margin_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Operating Margin Min"}},{"name":"net_margin_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Net Margin Min"}},{"name":"equity_ratio_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Equity Ratio Min"}},{"name":"equity_ratio_max","in":"query","required":false,"schema":{"type":"string","default":"","title":"Equity Ratio Max"}},{"name":"revenue_growth_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Revenue Growth Min"}},{"name":"cash_to_assets_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Cash To Assets Min"}},{"name":"payout_ratio_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Payout Ratio Min"}},{"name":"buyback_ratio_min","in":"query","required":false,"schema":{"type":"string","default":"","title":"Buyback Ratio Min"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","description":"a metric or a size field to rank on","default":"roe_pct","title":"Sort"},"description":"a metric or a size field to rank on"},{"name":"order","in":"query","required":false,"schema":{"type":"string","description":"desc | asc","default":"desc","title":"Order"},"description":"desc | asc"},{"name":"current_only","in":"query","required":false,"schema":{"type":"boolean","description":"leave out filers whose latest annual report ended more than 18 months ago (delisted, acquired or late)","default":true,"title":"Current Only"},"description":"leave out filers whose latest annual report ended more than 18 months ago (delisted, acquired or late)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/screener?sort=roe_pct&limit=20"}},"/api/v1/us/financials/screener/options":{"get":{"tags":["US financials"],"summary":"Screener Options","description":"What the screener can filter and sort on, with universe counts.","operationId":"screener_options_api_v1_us_financials_screener_options_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/us/financials/industries":{"get":{"tags":["US financials"],"summary":"Industries","description":"The SEC's SIC codes with their industry titles and how many filers\nwith a loaded annual report carry each.","operationId":"industries_api_v1_us_financials_industries_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"substring of the industry title","default":"","title":"Q"},"description":"substring of the industry title"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/industries?q=semiconductor"}},"/api/v1/us/financials/deep":{"get":{"tags":["US deep coverage"],"summary":"Universe","description":"The companies with full filed history, by sector, with depth and freshness.","operationId":"universe_api_v1_us_financials_deep_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/financials/deep"}},"/api/v1/us/financials/deep/{company}":{"get":{"tags":["US deep coverage"],"summary":"Concepts","description":"Every concept this company has filed a value for: label, units, period\ncount, first and last period end — the menu for /indicators and /series.","operationId":"concepts_api_v1_us_financials_deep__company__get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"substring of the tag or its label","default":"","title":"Q"},"description":"substring of the tag or its label"},{"name":"taxonomy","in":"query","required":false,"schema":{"type":"string","description":"us-gaap | dei | srt | ifrs-full | ...","default":"","title":"Taxonomy"},"description":"us-gaap | dei | srt | ifrs-full | ..."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":2000,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/deep/AAPL"}},"/api/v1/us/financials/deep/{company}/indicators":{"get":{"tags":["US deep coverage"],"summary":"Indicators","description":"Key indicators, one row per fiscal year (or quarter), newest first.\nEvery value names the tag and the filing it came from.","operationId":"indicators_api_v1_us_financials_deep__company__indicators_get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}},{"name":"freq","in":"query","required":false,"schema":{"type":"string","description":"annual | quarterly","default":"annual","title":"Freq"},"description":"annual | quarterly"},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"latest | first","default":"latest","title":"Basis"},"description":"latest | first"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: only filings filed by then","default":"","title":"As Of"},"description":"YYYY-MM-DD: only filings filed by then"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":40,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/deep/AAPL/indicators"}},"/api/v1/us/financials/deep/{company}/series":{"get":{"tags":["US deep coverage"],"summary":"Series","description":"Every period of one concept, newest first — or, with basis=all, every\nfiling's version of every period (how a number was revised).","operationId":"series_api_v1_us_financials_deep__company__series_get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}},{"name":"tag","in":"query","required":true,"schema":{"type":"string","description":"e.g. NetIncomeLoss — see /deep/{company} for the menu","title":"Tag"},"description":"e.g. NetIncomeLoss — see /deep/{company} for the menu"},{"name":"taxonomy","in":"query","required":false,"schema":{"type":"string","default":"us-gaap","title":"Taxonomy"}},{"name":"unit","in":"query","required":false,"schema":{"type":"string","description":"default: the unit this tag is filed in most","default":"","title":"Unit"},"description":"default: the unit this tag is filed in most"},{"name":"freq","in":"query","required":false,"schema":{"type":"string","description":"annual | quarterly | all","default":"annual","title":"Freq"},"description":"annual | quarterly | all"},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"latest | first | all","default":"latest","title":"Basis"},"description":"latest | first | all"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: only filings filed by then","default":"","title":"As Of"},"description":"YYYY-MM-DD: only filings filed by then"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/financials/deep/AAPL/series?tag=NetIncomeLoss"}},"/api/v1/us/insiders/company/{sec_code}":{"get":{"tags":["US insiders"],"summary":"Company","description":"Insider filings at one issuer over the last N months, with a summary\nthat counts open-market purchases (P) and sales (S) separately from\nawards, exercises and withholding.","operationId":"company_api_v1_us_insiders_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}},{"name":"months","in":"query","required":false,"schema":{"type":"integer","maximum":120,"minimum":1,"default":12,"title":"Months"}},{"name":"code","in":"query","required":false,"schema":{"type":"string","description":"one transaction code, e.g. P or S; default all","default":"","title":"Code"},"description":"one transaction code, e.g. P or S; default all"},{"name":"include_derivative","in":"query","required":false,"schema":{"type":"boolean","description":"also list option and RSU lines","default":false,"title":"Include Derivative"},"description":"also list option and RSU lines"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/insiders/company/NVDA?months=12"}},"/api/v1/us/insiders/recent":{"get":{"tags":["US insiders"],"summary":"Recent","description":"The latest trades of one code across every issuer, newest first.\nAmendments are left out here so a corrected filing is not counted twice.","operationId":"recent_api_v1_us_insiders_recent_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","description":"transaction code; P = open-market purchase","default":"P","title":"Code"},"description":"transaction code; P = open-market purchase"},{"name":"min_value","in":"query","required":false,"schema":{"type":"number","minimum":0,"description":"shares × price at least this, in dollars","default":0,"title":"Min Value"},"description":"shares × price at least this, in dollars"},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":1,"default":30,"title":"Days"}},{"name":"relationship","in":"query","required":false,"schema":{"type":"string","description":"director | officer | ten_percent","default":"","title":"Relationship"},"description":"director | officer | ten_percent"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/insiders/recent?code=P&min_value=1000000"}},"/api/v1/us/insiders/recent/companies":{"get":{"tags":["US insiders"],"summary":"Recent Companies","description":"Every trade of one code across every issuer in the window, summed per\nissuer, largest value first. Unlike /recent this is never cut to the\nnewest N trades, and a trade filed jointly by several owners counts once.\nAmendments are left out, and so is a line whose price is above $1mn a\nshare or whose value is above $20bn: those are typing errors in the filing.","operationId":"recent_companies_api_v1_us_insiders_recent_companies_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","description":"transaction code; P = open-market purchase","default":"P","title":"Code"},"description":"transaction code; P = open-market purchase"},{"name":"min_value","in":"query","required":false,"schema":{"type":"number","minimum":0,"description":"count only trades of shares × price at least this, in dollars","default":0,"title":"Min Value"},"description":"count only trades of shares × price at least this, in dollars"},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":1,"default":30,"title":"Days"}},{"name":"relationship","in":"query","required":false,"schema":{"type":"string","description":"director | officer | ten_percent","default":"","title":"Relationship"},"description":"director | officer | ten_percent"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/insiders/recent/companies?code=P&days=90"}},"/api/v1/us/insiders/owner/{owner_cik}":{"get":{"tags":["US insiders"],"summary":"Owner","description":"One reporting person's trades across every issuer, newest first.","operationId":"owner_api_v1_us_insiders_owner__owner_cik__get","parameters":[{"name":"owner_cik","in":"path","required":true,"schema":{"type":"string","title":"Owner Cik"}},{"name":"months","in":"query","required":false,"schema":{"type":"integer","maximum":240,"minimum":1,"default":24,"title":"Months"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":300,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/insiders/owner/1214128"}},"/api/v1/us/insiders/summary":{"get":{"tags":["US insiders"],"summary":"Summary","description":"What is loaded: quarters, filings, trades by code.","operationId":"summary_api_v1_us_insiders_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/insiders/summary"}},"/api/v1/us/holdings/issuer":{"get":{"tags":["US 13F holdings"],"summary":"Issuer","description":"Holders of one security in the latest window, ranked by reported value,\nwith each manager's change against the previous window.","operationId":"issuer_api_v1_us_holdings_issuer_get","parameters":[{"name":"cusip","in":"query","required":false,"schema":{"type":"string","description":"9-character CUSIP (8 accepted)","default":"","title":"Cusip"},"description":"9-character CUSIP (8 accepted)"},{"name":"q","in":"query","required":false,"schema":{"type":"string","description":"issuer name to look the CUSIP up by","default":"","title":"Q"},"description":"issuer name to look the CUSIP up by"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/holdings/issuer?cusip=037833100"}},"/api/v1/us/holdings/manager/{manager_cik}":{"get":{"tags":["US 13F holdings"],"summary":"Manager","description":"One manager's latest 13F: positions ranked by value and the filing's own totals.","operationId":"manager_api_v1_us_holdings_manager__manager_cik__get","parameters":[{"name":"manager_cik","in":"path","required":true,"schema":{"type":"string","title":"Manager Cik"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/holdings/manager/1067983"}},"/api/v1/us/holdings/managers":{"get":{"tags":["US 13F holdings"],"summary":"Managers","description":"Managers by name, with their latest filing's size.","operationId":"managers_api_v1_us_holdings_managers_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2,"title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/holdings/managers?q=berkshire"}},"/api/v1/us/holdings/summary":{"get":{"tags":["US 13F holdings"],"summary":"Summary","description":"What is loaded: windows, filings, positions.","operationId":"summary_api_v1_us_holdings_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/holdings/summary"}},"/api/v1/us/stakes/company/{company}":{"get":{"tags":["US 5% holders"],"summary":"Company","description":"Every filer's latest stake in one company, largest first, and the filings behind them.","operationId":"company_api_v1_us_stakes_company__company__get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/stakes/company/DELL"}},"/api/v1/us/stakes/recent":{"get":{"tags":["US 5% holders"],"summary":"Recent","description":"The newest filings across the market: by default, holders who have just filed a new 13D.","operationId":"recent_api_v1_us_stakes_recent_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"13D (active holders), 13G (passive) or all","default":"13D","title":"Kind"},"description":"13D (active holders), 13G (passive) or all"},{"name":"new_only","in":"query","required":false,"schema":{"type":"boolean","description":"first filings only, not amendments","default":true,"title":"New Only"},"description":"first filings only, not amendments"},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":800,"minimum":1,"default":30,"title":"Days"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/stakes/recent?kind=13D"}},"/api/v1/us/stakes/holder/{cik}":{"get":{"tags":["US 5% holders"],"summary":"Holder","description":"A filer's latest filing in each company it has filed on.","operationId":"holder_api_v1_us_stakes_holder__cik__get","parameters":[{"name":"cik","in":"path","required":true,"schema":{"type":"string","title":"Cik"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/stakes/holder/1418226"}},"/api/v1/us/stakes/summary":{"get":{"tags":["US 5% holders"],"summary":"Summary","description":"What is loaded: filings by form, the span of filing dates, the last read.","operationId":"summary_api_v1_us_stakes_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/stakes/summary"}},"/api/v1/us/earnings/calendar":{"get":{"tags":["US reporting calendar"],"summary":"Calendar","description":"Expected and actual 10-K/10-Q filings in a window. Each expected date\nrests on the company's own filing a year earlier, which the row names.","operationId":"calendar_api_v1_us_earnings_calendar_get","parameters":[{"name":"start","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD; default today","default":"","title":"Start"},"description":"YYYY-MM-DD; default today"},{"name":"end","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD; default start + days","default":"","title":"End"},"description":"YYYY-MM-DD; default start + days"},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":120,"minimum":1,"default":14,"title":"Days"}},{"name":"exchange","in":"query","required":false,"schema":{"type":"string","description":"Nasdaq | NYSE | OTC | CBOE | TXSE","default":"","title":"Exchange"},"description":"Nasdaq | NYSE | OTC | CBOE | TXSE"},{"name":"tickers","in":"query","required":false,"schema":{"type":"string","description":"comma-separated tickers","default":"","title":"Tickers"},"description":"comma-separated tickers"},{"name":"report","in":"query","required":false,"schema":{"type":"string","description":"annual | quarterly; default both","default":"","title":"Report"},"description":"annual | quarterly; default both"},{"name":"status","in":"query","required":false,"schema":{"type":"string","description":"expected | filed | overdue; default all","default":"","title":"Status"},"description":"expected | filed | overdue; default all"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/earnings/calendar?days=14"}},"/api/v1/us/earnings/company/{sec_code}":{"get":{"tags":["US reporting calendar"],"summary":"Company","description":"One company's filing history (period end, filing date, lag) and its\nnext expected filings, each resting on a filing a year earlier.","operationId":"company_api_v1_us_earnings_company__sec_code__get","parameters":[{"name":"sec_code","in":"path","required":true,"schema":{"type":"string","title":"Sec Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/earnings/company/AAPL"}},"/api/v1/us/prices/{symbol}":{"get":{"tags":["US prices"],"summary":"Series","description":"One symbol's daily bars, oldest first, with the latest close and the\nchange over the window.","operationId":"series_api_v1_us_prices__symbol__get","parameters":[{"name":"symbol","in":"path","required":true,"schema":{"type":"string","title":"Symbol"}},{"name":"start","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD; default one year back","default":"","title":"Start"},"description":"YYYY-MM-DD; default one year back"},{"name":"end","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD; default latest","default":"","title":"End"},"description":"YYYY-MM-DD; default latest"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":3000,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/prices/AAPL?start=2026-01-01"}},"/api/v1/us/prices":{"get":{"tags":["US prices"],"summary":"Summary","description":"What is loaded: date range, symbols, pulls and what they cost.","operationId":"summary_api_v1_us_prices_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/prices"}},"/api/v1/us/events":{"get":{"tags":["US events"],"summary":"Events","description":"Event days, newest first, with where each date came from.","operationId":"events_api_v1_us_events_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"fomc, cpi, shutdown or results; blank for all","default":"","title":"Kind"},"description":"fomc, cpi, shutdown or results; blank for all"},{"name":"ticker","in":"query","required":false,"schema":{"type":"string","description":"a company's ticker (results only)","default":"","title":"Ticker"},"description":"a company's ticker (results only)"},{"name":"since","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD, first event day","default":"","title":"Since"},"description":"YYYY-MM-DD, first event day"},{"name":"until","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD, last event day","default":"","title":"Until"},"description":"YYYY-MM-DD, last event day"},{"name":"earnings_only","in":"query","required":false,"schema":{"type":"integer","description":"for results: 1 keeps the quarterly results filing only","default":1,"title":"Earnings Only"},"description":"for results: 1 keeps the quarterly results filing only"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/events?kind=fomc&since=2025-01-01"}},"/api/v1/us/events/summary":{"get":{"tags":["US events"],"summary":"Summary","description":"What is loaded: rows and date range by kind, companies read, and the last pulls.","operationId":"summary_api_v1_us_events_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/events/summary"}},"/api/v1/us/ask":{"get":{"tags":["US ask"],"summary":"Ask","description":"Answer a stock question from the data, by code. A question it cannot\nanswer gets {\"detail\": one plain sentence, \"miss\": its kind, \"try\":\nquestions it does answer} (app/ask_miss.py), never a bare error.","operationId":"ask_api_v1_us_ask_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":300,"description":"a question in plain words","title":"Q"},"description":"a question in plain words"},{"name":"prev","in":"query","required":false,"schema":{"type":"string","maxLength":300,"description":"the reader's previous question, so a follow-up (\"and Microsoft?\") is read whole","default":"","title":"Prev"},"description":"the reader's previous question, so a follow-up (\"and Microsoft?\") is read whole"},{"name":"opt","in":"query","required":false,"schema":{"type":"string","maxLength":40,"description":"switches on a ranking's reading, comma-separated: sp500 (S&P 500 members only), all (stocks under $2bn too), tech (Amazon, Tesla and other borderline names counted as tech)","default":"","title":"Opt"},"description":"switches on a ranking's reading, comma-separated: sp500 (S&P 500 members only), all (stocks under $2bn too), tech (Amazon, Tesla and other borderline names counted as tech)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/ask?q=who+owns+apple"}},"/api/v1/us/ask/stream":{"get":{"tags":["US ask"],"summary":"Ask Stream","description":"The answer as server-sent events, so the page can say what is being\ndone while it waits: `{\"say\": \"...\"}` at each step (app/ask_progress.py),\nthen one `{\"answer\": {...}}` or `{\"error\": {\"status\", \"detail\"}}`.","operationId":"ask_stream_api_v1_us_ask_stream_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":300,"description":"a question in plain words","title":"Q"},"description":"a question in plain words"},{"name":"prev","in":"query","required":false,"schema":{"type":"string","maxLength":300,"description":"the reader's previous question","default":"","title":"Prev"},"description":"the reader's previous question"},{"name":"opt","in":"query","required":false,"schema":{"type":"string","maxLength":40,"description":"switches on a ranking's reading (see /api/v1/us/ask)","default":"","title":"Opt"},"description":"switches on a ranking's reading (see /api/v1/us/ask)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/us/ask/readings":{"get":{"tags":["US ask"],"summary":"Readings","description":"Other common readings of a question (\"Did you mean\"), each a whole\nquestion. The page asks for them after an answer made without the model\n(the quick lane), so the answer is not held up; an answer the model read\ncarries them already. Empty when the model is off or finds one reading.","operationId":"readings_api_v1_us_ask_readings_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":300,"description":"a question in plain words","title":"Q"},"description":"a question in plain words"},{"name":"prev","in":"query","required":false,"schema":{"type":"string","maxLength":300,"description":"the reader's previous question","default":"","title":"Prev"},"description":"the reader's previous question"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/ask/readings?q=ford+debt"}},"/api/v1/us/ask/recipes":{"get":{"tags":["US ask"],"summary":"Recipes","operationId":"recipes_api_v1_us_ask_recipes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/us/ask/run/{recipe}":{"get":{"tags":["US ask"],"summary":"Run","description":"Run one shape with its blanks filled explicitly, no word matching.","operationId":"run_api_v1_us_ask_run__recipe__get","parameters":[{"name":"recipe","in":"path","required":true,"schema":{"type":"string","title":"Recipe"}},{"name":"company","in":"query","required":false,"schema":{"type":"string","description":"ticker or name","default":"","title":"Company"},"description":"ticker or name"},{"name":"company_2","in":"query","required":false,"schema":{"type":"string","description":"second ticker or name, for pair questions","default":"","title":"Company 2"},"description":"second ticker or name, for pair questions"},{"name":"industry","in":"query","required":false,"schema":{"type":"string","description":"industry in words, e.g. carmakers","default":"","title":"Industry"},"description":"industry in words, e.g. carmakers"},{"name":"manager","in":"query","required":false,"schema":{"type":"string","description":"13F manager name","default":"","title":"Manager"},"description":"13F manager name"},{"name":"since","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD","default":"","title":"Since"},"description":"YYYY-MM-DD"},{"name":"min_value","in":"query","required":false,"schema":{"type":"string","description":"dollar floor, e.g. 1e10","default":"","title":"Min Value"},"description":"dollar floor, e.g. 1e10"},{"name":"count","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":10,"title":"Count"}},{"name":"metric","in":"query","required":false,"schema":{"type":"string","description":"words for the ranking figure, e.g. 'cheapest' or 'operating margin'","default":"","title":"Metric"},"description":"words for the ranking figure, e.g. 'cheapest' or 'operating margin'"},{"name":"figure","in":"query","required":false,"schema":{"type":"string","description":"a filed line in words, e.g. debt, research spending","default":"","title":"Figure"},"description":"a filed line in words, e.g. debt, research spending"},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":120,"minimum":1,"default":14,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/us/press":{"get":{"tags":["US press releases"],"summary":"Coverage","description":"Which S&P 500 members have a news feed, and the newest poll.","operationId":"coverage_api_v1_us_press_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/press"}},"/api/v1/us/press/{ticker}":{"get":{"tags":["US press releases"],"summary":"Releases","description":"A company's latest press releases and the capital-return figures read from them.","operationId":"releases_api_v1_us_press__ticker__get","parameters":[{"name":"ticker","in":"path","required":true,"schema":{"type":"string","title":"Ticker"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/press/NVDA"}},"/api/v1/us/pay":{"get":{"tags":["US executive pay"],"summary":"Index","description":"Every S&P 500 member's latest fiscal year of pay versus performance.","operationId":"index_api_v1_us_pay_get","parameters":[{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"latest | first","default":"latest","title":"Basis"},"description":"latest | first"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: only proxies filed by then","default":"","title":"As Of"},"description":"YYYY-MM-DD: only proxies filed by then"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/pay"}},"/api/v1/us/pay/{company}":{"get":{"tags":["US executive pay"],"summary":"Company","description":"Every fiscal year of one member's pay versus performance, and every proxy read.","operationId":"company_api_v1_us_pay__company__get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}},{"name":"basis","in":"query","required":false,"schema":{"type":"string","description":"latest | first","default":"latest","title":"Basis"},"description":"latest | first"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: only proxies filed by then","default":"","title":"As Of"},"description":"YYYY-MM-DD: only proxies filed by then"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/pay/JPM"}},"/api/v1/us/company":{"get":{"tags":["US company record"],"summary":"Search","description":"Companies whose ticker or name matches, ticker matches first, up to 20.","operationId":"search_api_v1_us_company_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":80,"description":"ticker or name","title":"Q"},"description":"ticker or name"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/company?q=apple"}},"/api/v1/us/company/logos":{"get":{"tags":["US company record"],"summary":"Logos","description":"Every company logo on file, by ticker and by \"cik:N\": one small map a\npage fetches once to put a logo beside any company it lists.","operationId":"logos_api_v1_us_company_logos_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/us/company/logos"}},"/api/v1/us/company/{company}":{"get":{"tags":["US company record"],"summary":"Company","description":"Who the company is, and each item the site holds for it with how much and how recent.","operationId":"company_api_v1_us_company__company__get","parameters":[{"name":"company","in":"path","required":true,"schema":{"type":"string","title":"Company"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/company/AAPL"}},"/api/v1/us/text/{code}":{"get":{"tags":["US annual report text"],"summary":"Company","description":"The latest annual report: its sections, its risks and the opening of its Business section.","operationId":"company_api_v1_us_text__code__get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/us/text/NVDA"}},"/api/v1/us/text/{code}/section/{key}":{"get":{"tags":["US annual report text"],"summary":"Company Section","description":"One section in full, paragraph by paragraph; headings are flagged.","operationId":"company_section_api_v1_us_text__code__section__key__get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/us/text/{code}/search":{"get":{"tags":["US annual report text"],"summary":"Company Search","description":"The paragraphs of the latest annual report that mention a phrase.","operationId":"company_search_api_v1_us_text__code__search_get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":3,"maxLength":100,"description":"a word or phrase, e.g. tariffs","title":"Q"},"description":"a word or phrase, e.g. tariffs"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/company/{code}":{"get":{"tags":["Company"],"summary":"Company","description":"Every dataset's view of one company, in section order.\n\nA dataset with no rows for this company is listed under `coverage.missing`\nwith its reason, never dropped and never zero; a dataset that fails is an\n`errors` entry and costs the others nothing.","operationId":"company_api_v1_company__code__get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"datasets","in":"query","required":false,"schema":{"type":"string","description":"comma-separated dataset ids","default":"","title":"Datasets"},"description":"comma-separated dataset ids"},{"name":"sections","in":"query","required":false,"schema":{"type":"string","description":"comma-separated section ids","default":"","title":"Sections"},"description":"comma-separated section ids"},{"name":"compact","in":"query","required":false,"schema":{"type":"integer","maximum":1,"minimum":0,"description":"1 = facts and row counts only, no tables","default":0,"title":"Compact"},"description":"1 = facts and row counts only, no tables"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"description":"rows per table","default":50,"title":"Limit"},"description":"rows per table"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: the filings that existed on EDINET by that date","default":"","title":"As Of"},"description":"YYYY-MM-DD: the filings that existed on EDINET by that date"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/company/7203"}},"/api/v1/company/{code}/coverage":{"get":{"tags":["Company"],"summary":"Coverage","description":"Which datasets hold this company and which do not — the matrix alone,\nfor deciding what to fetch before fetching it.","operationId":"coverage_api_v1_company__code__coverage_get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: coverage as it stood on that date","default":"","title":"As Of"},"description":"YYYY-MM-DD: coverage as it stood on that date"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/company/7203/coverage"}},"/api/v1/catalog/manifests":{"get":{"tags":["Catalog"],"summary":"Manifests","description":"Every dataset's manifest, in section order.","operationId":"manifests_api_v1_catalog_manifests_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/catalog/manifests"}},"/api/v1/catalog/manifests/{dataset_id}":{"get":{"tags":["Catalog"],"summary":"Manifest","description":"One dataset's manifest. An unknown id answers with the valid ones —\nnever a bare 404 that leaves a client guessing at spellings.","operationId":"manifest_api_v1_catalog_manifests__dataset_id__get","parameters":[{"name":"dataset_id","in":"path","required":true,"schema":{"type":"string","title":"Dataset Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/catalog/manifests/cpi-jp"}},"/api/v1/catalog/sections":{"get":{"tags":["Catalog"],"summary":"Sections","description":"The fixed section list, each with its dataset ids, in display order.","operationId":"sections_api_v1_catalog_sections_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/catalog/sections"}},"/api/v1/catalog/coverage":{"get":{"tags":["Catalog"],"summary":"Coverage","description":"How much of Japan this server actually holds: datasets, publishers,\nlisted companies and documents parsed.\n\n`filings` counts distinct EDINET documents, so an annual report read by\nseven extractors counts once rather than seven times. `filings_by_family`\nbreaks that total down by document type, which is how a reader checks it.\n\nThe company and filing counts are `null` — never 0 — when the filings\ndatabase is not on this server, so a caller can tell \"none\" from \"not\nhere\".","operationId":"coverage_api_v1_catalog_coverage_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/catalog/coverage"}},"/api/v1/catalog/previews":{"get":{"tags":["Catalog"],"summary":"What the Data menu shows for each page","description":"For each page in the site's Data menu: its main series as a short run\nof points with the latest value, unit and credit line — or a one-line\ndescription (and, for filings, the date they run through) where a page has\nno single series. Values are as published; a price index is given as its\nchange on a year earlier, and a figure the page calculates (a world total,\na net flow) is marked derived with its formula in `calc`.","operationId":"previews_api_v1_catalog_previews_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/catalog/previews"}},"/api/v1/representation/councillors":{"get":{"tags":["Representation"],"summary":"Councillors","description":"Seats per elector across the 45 prefectural constituencies.","operationId":"councillors_api_v1_representation_councillors_get","parameters":[{"name":"base","in":"query","required":false,"schema":{"type":"string","default":"adults18","title":"Base"}},{"name":"period","in":"query","required":false,"schema":{"type":"string","title":"Period"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/catalog/datasets":{"get":{"tags":["Datasets","Catalog"],"summary":"Catalog","description":"Every dataset on the server with its title, publisher, base, frequency\nand a one-paragraph description. The ids here are the `{dataset}` values\nthe dataset endpoints take; the fuller card is /catalog/manifests.","operationId":"catalog_api_v1_catalog_datasets_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"x-example":"/api/v1/catalog/datasets"}},"/api/v1/catalog/health":{"get":{"tags":["Datasets","Catalog"],"summary":"Health Endpoint","description":"Is every dataset current, and did an ingest go quiet?\n\nOne row per dataset: the newest period served, whether it is `stale`\nagainst the dataset's own tolerance, and whether a newer source file was\nfetched but never published (`unpublished_artifact` — a validation failure\nor a crash). Never cached, so it always reflects the running server.\n\nTwo shapes, one report. Default: always 200, for anyone reading it.\n`?strict=1`: 503 when the report says attention, which is the only form a\nplain uptime check can act on. The same URL then covers\nboth failure modes — stale data answers 503, and a service that is down\nanswers nothing at all.","operationId":"health_endpoint_api_v1_catalog_health_get","parameters":[{"name":"strict","in":"query","required":false,"schema":{"type":"integer","description":"1: return 503 instead of 200 when anything needs attention, so an uptime monitor can alert on data going stale or the refresh stopping.","default":0,"title":"Strict"},"description":"1: return 503 instead of 200 when anything needs attention, so an uptime monitor can alert on data going stale or the refresh stopping."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/catalog/health"}},"/api/v1/{dataset}/releases":{"get":{"tags":["Datasets"],"summary":"Releases","description":"Every accepted release of this dataset, newest first: label, latest\nperiod, ingest time, validation result and the SHA-256 of the archived\nsource file. A release is a vintage; `as_of` on /observations reads them.\n\n`known_at` is where the release sits in history and is what `as_of`\ncompares against. It is our fetch time for a release we learned of by\nfetching it, and the agency's own publication date for a backfilled\narchive — `known_at_basis` says which, on every row.","operationId":"releases_api_v1__dataset__releases_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/releases"}},"/api/v1/{dataset}/overview":{"get":{"tags":["Datasets"],"summary":"Overview","description":"The dataset's headline reading: the main series with their latest\nvalue and rates of change, and the release they come from. What the\ndataset's page shows in its stat tiles.","operationId":"overview_api_v1__dataset__overview_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/overview"}},"/api/v1/{dataset}/series":{"get":{"tags":["Datasets"],"summary":"Series List","description":"Every series in the dataset with its latest reading, or the ones\nmatching `q`. Use it to find the codes that /observations takes.","operationId":"series_list_api_v1__dataset__series_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":200,"description":"Search by English name, Japanese name or code; empty lists every series where the dataset allows it","default":"","title":"Q"},"description":"Search by English name, Japanese name or code; empty lists every series where the dataset allows it"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/series?q=electricity"}},"/api/v1/{dataset}/contributions":{"get":{"tags":["Datasets"],"summary":"Contributions","description":"Percentage-point decomposition of headline YoY by major group.","operationId":"contributions_api_v1__dataset__contributions_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"start","in":"query","required":false,"schema":{"type":"string","description":"First period, YYYY-MM","title":"Start"},"description":"First period, YYYY-MM"},{"name":"end","in":"query","required":false,"schema":{"type":"string","description":"Last period, YYYY-MM","title":"End"},"description":"Last period, YYYY-MM"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/contributions?start=2023-01"}},"/api/v1/{dataset}/breadth":{"get":{"tags":["Datasets"],"summary":"Breadth","description":"Share of individually priced items rising/falling year over year.","operationId":"breadth_api_v1__dataset__breadth_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"threshold","in":"query","required":false,"schema":{"type":"number","maximum":50.0,"minimum":0.0,"description":"YoY rate, in percent, above which an item counts as rising","default":2.0,"title":"Threshold"},"description":"YoY rate, in percent, above which an item counts as rising"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp-items/breadth?threshold=2"}},"/api/v1/{dataset}/curve":{"get":{"tags":["Datasets"],"summary":"Curve","description":"The full published curve history: every date × every maturity.\n\nOne payload serves the animated curve, the spread history and the\nmaturity table — the page slices it client-side. Values are official\nyields only; anything derived from them is calculated on the page\nand carries its formula there, per the trust contract.","operationId":"curve_api_v1__dataset__curve_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/jgb-yields/curve"}},"/api/v1/{dataset}/arrivals":{"get":{"tags":["Datasets"],"summary":"Arrivals","description":"Every market × every month, plus the hierarchy that relates them.\n\nOne payload serves the whole inbound page — headline history, recovery\nagainst a baseline year, market mix and the contribution decomposition\n— because each of those is a different slice of the same counts. Only\npublished counts cross the wire; shares, growth rates, recovery indices\nand contributions are calculated on the page and carry their formula\nthere, exactly as the curve surface treats spreads.\n\n`hierarchy` is served rather than assumed: a market's parent has changed\ntwice in the published history (the Middle East grouping from 2020, the\nNordic one from 2023), so the page must be told the structure, never\ninfer it from the codes.","operationId":"arrivals_api_v1__dataset__arrivals_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/jnto-visitors/arrivals"}},"/api/v1/{dataset}/accommodation":{"get":{"tags":["Datasets"],"summary":"Accommodation","description":"Guest nights and occupancy: every area's backbone, one area's detail.\n\nThe cube is area x measure x category x month, and the categories differ\nper measure — 25 nationalities, 6 hotel types, 5 size bands, 2 purposes, 2\nresidences. Shipping all of it would be several megabytes for a page that\ndraws one area at a time, so this follows the trade surface rather than the\narrivals one: the backbone (guest nights, foreign guest nights, room\noccupancy) rides along for all 58 areas, and the dimensional detail is\nserved for the area actually being read. A citable URL therefore names\nexactly one view, and the regions ranking needs no second round trip.\n\nThe municipality series ship in full because they are small: three metrics\nfor 210 towns, and only from 2026, when the survey began publishing them.\n\nAreas are served, not inferred. The 47 prefectures partition the country;\nthe 10 transport-bureau regions are a republication of the same nights and\nare marked `kind: \"region\"` so nothing adds them to the prefectures.","operationId":"accommodation_api_v1__dataset__accommodation_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"area","in":"query","required":false,"schema":{"type":"string","maxLength":4,"description":"Two-digit JIS prefecture code (13 = Tokyo) or a region code; omit for All Japan","title":"Area"},"description":"Two-digit JIS prefecture code (13 = Tokyo) or a region code; omit for All Japan"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/accommodation-jp/accommodation?area=13"}},"/api/v1/{dataset}/prefectures":{"get":{"tags":["Datasets"],"summary":"Prefectures","description":"Every area × every measure × every period, plus the geography.\n\nOne payload serves a whole population surface — the map, the rankings\nand any one prefecture's history are three slices of the same counts,\nand a map needs all 47 areas at once, which /observations (capped at\neight series) cannot give it.\n\nOnly published figures cross the wire. A prefecture's share of foreign\nresidents, its change rate, its crude birth and death rates and its\n65-and-over share are arithmetic on those figures, done on the page so\nthe formula travels with the number, exactly as the curve surface treats\nspreads. Almost everything served here is a count; the exception is a\nseries the dataset marks `kind: \"rate\"` in `indicators` — a published\nrate that cannot be rebuilt from the counts (the total fertility rate is\nthe only one today). Such a series is stored as issued and must never be\nsummed across areas.\n\n`geographies`, `measures` and `bases` are served rather than assumed:\nthe two population datasets carry different measures and, in the\nhistorical one, different reference dates per measure. A surface that\nguessed either would mislabel a year.","operationId":"prefectures_api_v1__dataset__prefectures_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"prefecture","in":"query","required":false,"schema":{"type":"string","maxLength":2,"description":"Two-digit JIS prefecture code, e.g. 13 for Tokyo; omit for every prefecture","title":"Prefecture"},"description":"Two-digit JIS prefecture code, e.g. 13 for Tokyo; omit for every prefecture"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/population-jp/prefectures"}},"/api/v1/{dataset}/trade":{"get":{"tags":["Datasets"],"summary":"Trade","description":"One commodity's trade with every partner, plus world totals for all of them.\n\nThe cube here is commodity × partner × month × (value, quantity) in two\ndirections — far too much to ship in one payload the way /arrivals does, so\nthe partner detail is served for the commodity actually being read while the\nworld totals for every commodity ride along. That is what the page needs to\ndraw its tiles and its commodity comparison without a second round trip, and\nit keeps a citable URL pointing at exactly one view.\n\nOnly published values cross the wire. World totals are the one exception and\nsay so: this table has no world row, so the sum is labelled derived and\ncarries its formula, exactly as a spread or a contribution does.\n\nExport and import commodity codes are separate vocabularies — `70311000` is\nsemiconductors on the import side and audio equipment on the export side —\nso the commodity is always validated against the requested direction's list\nrather than against a shared one.","operationId":"trade_api_v1__dataset__trade_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"flow","in":"query","required":false,"schema":{"type":"string","description":"'exp' or 'imp'","title":"Flow"},"description":"'exp' or 'imp'"},{"name":"commodity","in":"query","required":false,"schema":{"type":"string","description":"published commodity code","title":"Commodity"},"description":"published commodity code"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/trade-semis/trade?flow=exp&commodity=70323050"}},"/api/v1/{dataset}/observations":{"get":{"tags":["Datasets"],"summary":"Observations","description":"Published values for up to eight series.\n\nWith ``as_of=YYYY-MM-DD`` the response is the data *as it stood on that\ndate* — the numbers a reader would have had then, before any later\nrevision. That is what makes a chart citable and a backtest honest, and it\nis served from the append-only vintage history, not reconstructed.\n\nWith ``period=fiscal_quarter`` (or ``fiscal_year``) and ``fy_end``, monthly\nflows are summed into a company's own fiscal periods — what a model built\non that company's reported quarters needs. Only published values that are\nmonthly amounts qualify (customs values and quantities, visitor counts);\nan index, a stock or a rate is refused rather than summed into nonsense,\nand a period missing any month is left out rather than summed short.\n\nWith ``format=csv`` the same numbers come back as one wide table — one\nrow per period, one column per series — under a ``#`` metadata block\nthat states the source, the release, the formula and the vintage, so a\nfile saved from this URL is citable on its own. pandas reads it with\n``read_csv(url, comment=\"#\")``, R with ``read.csv(url, comment.char=\"#\")``.","operationId":"observations_api_v1__dataset__observations_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"series","in":"query","required":true,"schema":{"type":"string","maxLength":200,"description":"Comma-separated series codes, up to eight; find them with /series","title":"Series"},"description":"Comma-separated series codes, up to eight; find them with /series"},{"name":"measure","in":"query","required":false,"schema":{"type":"string","description":"index (as published) or a calculated rate the dataset offers: yoy, mom, ann3m, ... — see the dataset's measures","default":"index","title":"Measure"},"description":"index (as published) or a calculated rate the dataset offers: yoy, mom, ann3m, ... — see the dataset's measures"},{"name":"start","in":"query","required":false,"schema":{"type":"string","description":"First period, YYYY-MM (YYYY-MM-DD for daily series)","title":"Start"},"description":"First period, YYYY-MM (YYYY-MM-DD for daily series)"},{"name":"end","in":"query","required":false,"schema":{"type":"string","description":"Last period, inclusive","title":"End"},"description":"Last period, inclusive"},{"name":"as_of","in":"query","required":false,"schema":{"type":"string","description":"YYYY-MM-DD: the data as it stood on that date, from the vintage history","title":"As Of"},"description":"YYYY-MM-DD: the data as it stood on that date, from the vintage history"},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"'fiscal_quarter' or 'fiscal_year': sum monthly flows into the fiscal periods of a company whose year ends in month fy_end. Flows only.","title":"Period"},"description":"'fiscal_quarter' or 'fiscal_year': sum monthly flows into the fiscal periods of a company whose year ends in month fy_end. Flows only."},{"name":"fy_end","in":"query","required":false,"schema":{"type":"integer","maximum":12,"minimum":1,"description":"Month the fiscal year ends (3 = March)","default":3,"title":"Fy End"},"description":"Month the fiscal year ends (3 = March)"},{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"'json' or 'csv'","default":"json","title":"Format"},"description":"'json' or 'csv'"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/observations?series=0001,0161&measure=yoy&start=2020-01"}},"/api/v1/{dataset}/revisions":{"get":{"tags":["Datasets"],"summary":"Revisions","description":"How one series has been revised, release by release.\n\nOnly releases that actually changed a value appear: the vintage store is\nchange-only, so two consecutive entries for a period are always a real\nrevision, never a republished number. `change` is the difference from the\nvalue the previous release carried — a derived figure, so it travels with\nits formula rather than an Official Statistic badge.","operationId":"revisions_api_v1__dataset__revisions_get","parameters":[{"name":"dataset","in":"path","required":true,"schema":{"title":"Dataset"}},{"name":"series","in":"query","required":true,"schema":{"type":"string","maxLength":40,"description":"One series code","title":"Series"},"description":"One series code"},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"The period whose revision history to show, YYYY-MM; omit for every revised period","title":"Period"},"description":"The period whose revision history to show, YYYY-MM; omit for every revised period"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-example":"/api/v1/cpi-jp/revisions?series=0001&period=2026-07"}},"/api/v1/account/signin-link":{"post":{"tags":["account"],"summary":"Signin Link","description":"Email a single-use sign-in link. Creating an account and signing in are\nthe same action, so this endpoint does not care whether the address is\nalready known — the link decides.","operationId":"signin_link_api_v1_account_signin_link_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/account/session":{"post":{"tags":["account"],"summary":"Create Session","description":"Redeem a link. This is also where an account is created: the address is\nproved by the reader holding a token we only ever sent to it.","operationId":"create_session_api_v1_account_session_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/account/me":{"get":{"tags":["account"],"summary":"Me","description":"Who is signed in. 401 when nobody is — the front end reads 404 (this\nrouter absent) as \"accounts are not switched on\", which is a different\nthing and must stay distinguishable.","operationId":"me_api_v1_account_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/account/signout":{"post":{"tags":["account"],"summary":"Signout","description":"Drop this session. Other devices keep theirs.","operationId":"signout_api_v1_account_signout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/status":{"get":{"tags":["assistant"],"summary":"Status","description":"Whether the caller has a desk. 200 always: the page reads 404 on this\npath as 'the assistant is not switched on', which is a different thing.","operationId":"status_api_v1_assistant_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/desk":{"get":{"tags":["assistant"],"summary":"Desk","operationId":"desk_api_v1_assistant_desk_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/specialists":{"get":{"tags":["assistant"],"summary":"Catalogue","operationId":"catalogue_api_v1_assistant_specialists_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/specialists/{slug}/hire":{"post":{"tags":["assistant"],"summary":"Hire","operationId":"hire_api_v1_assistant_specialists__slug__hire_post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/hires/{hire_id}/update":{"post":{"tags":["assistant"],"summary":"Accept Update","operationId":"accept_update_api_v1_assistant_hires__hire_id__update_post","parameters":[{"name":"hire_id","in":"path","required":true,"schema":{"type":"integer","title":"Hire Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/hires/{hire_id}":{"delete":{"tags":["assistant"],"summary":"Remove Hire","operationId":"remove_hire_api_v1_assistant_hires__hire_id__delete","parameters":[{"name":"hire_id","in":"path","required":true,"schema":{"type":"integer","title":"Hire Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/hires/{hire_id}/run":{"post":{"tags":["assistant"],"summary":"Run Now","operationId":"run_now_api_v1_assistant_hires__hire_id__run_post","parameters":[{"name":"hire_id","in":"path","required":true,"schema":{"type":"integer","title":"Hire Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/companies":{"get":{"tags":["assistant"],"summary":"Companies","description":"Type-ahead for the coverage box: name (English or Japanese), code or\nnickname in, up to eight companies out, each marked if already on the list.\nmarkets=all adds US listed companies (Your Plover's box); the desk's own\ncoverage tools stay Japanese.","operationId":"companies_api_v1_assistant_companies_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"list_id","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"List Id"}},{"name":"markets","in":"query","required":false,"schema":{"type":"string","default":"","title":"Markets"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/coverage":{"get":{"tags":["assistant"],"summary":"Coverage","operationId":"coverage_api_v1_assistant_coverage_get","parameters":[{"name":"list_id","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"List Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["assistant"],"summary":"Add Coverage","operationId":"add_coverage_api_v1_assistant_coverage_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoverageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/coverage/{code}":{"delete":{"tags":["assistant"],"summary":"Remove Coverage","operationId":"remove_coverage_api_v1_assistant_coverage__code__delete","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"list_id","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"List Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/lists":{"get":{"tags":["assistant"],"summary":"Lists","operationId":"lists_api_v1_assistant_lists_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Create List","operationId":"create_list_api_v1_assistant_lists_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/lists/{list_id}":{"patch":{"tags":["assistant"],"summary":"Rename List","operationId":"rename_list_api_v1_assistant_lists__list_id__patch","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Delete List","operationId":"delete_list_api_v1_assistant_lists__list_id__delete","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/hires/{hire_id}/config":{"post":{"tags":["assistant"],"summary":"Configure Hire","description":"Which list a specialist watches; 0 means the main Coverage list.","operationId":"configure_hire_api_v1_assistant_hires__hire_id__config_post","parameters":[{"name":"hire_id","in":"path","required":true,"schema":{"type":"integer","title":"Hire Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HireConfigRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/feed":{"get":{"tags":["assistant"],"summary":"Feed","operationId":"feed_api_v1_assistant_feed_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Post To Feed","operationId":"post_to_feed_api_v1_assistant_feed_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/inbox":{"get":{"tags":["assistant"],"summary":"Inbox","operationId":"inbox_api_v1_assistant_inbox_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/approvals/{approval_id}/approve":{"post":{"tags":["assistant"],"summary":"Approve","operationId":"approve_api_v1_assistant_approvals__approval_id__approve_post","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"integer","title":"Approval Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/approvals/{approval_id}/decline":{"post":{"tags":["assistant"],"summary":"Decline","operationId":"decline_api_v1_assistant_approvals__approval_id__decline_post","parameters":[{"name":"approval_id","in":"path","required":true,"schema":{"type":"integer","title":"Approval Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/threads":{"get":{"tags":["assistant"],"summary":"Threads","operationId":"threads_api_v1_assistant_threads_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"New Thread","operationId":"new_thread_api_v1_assistant_threads_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThreadRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/threads/{thread_id}":{"get":{"tags":["assistant"],"summary":"Thread","operationId":"thread_api_v1_assistant_threads__thread_id__get","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"integer","title":"Thread Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/threads/{thread_id}/messages":{"post":{"tags":["assistant"],"summary":"Ask In Thread","operationId":"ask_in_thread_api_v1_assistant_threads__thread_id__messages_post","parameters":[{"name":"thread_id","in":"path","required":true,"schema":{"type":"integer","title":"Thread Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/runs":{"get":{"tags":["assistant"],"summary":"Runs","operationId":"runs_api_v1_assistant_runs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/runs/{run_id}":{"get":{"tags":["assistant"],"summary":"One Run","operationId":"one_run_api_v1_assistant_runs__run_id__get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/audit":{"get":{"tags":["assistant"],"summary":"Audit","operationId":"audit_api_v1_assistant_audit_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/files":{"get":{"tags":["assistant"],"summary":"Files","operationId":"files_api_v1_assistant_files_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/files/{hire_id}/{path}":{"get":{"tags":["assistant"],"summary":"One File","operationId":"one_file_api_v1_assistant_files__hire_id___path__get","parameters":[{"name":"hire_id","in":"path","required":true,"schema":{"type":"integer","title":"Hire Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/settings":{"get":{"tags":["assistant"],"summary":"Settings","operationId":"settings_api_v1_assistant_settings_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Save Settings","operationId":"save_settings_api_v1_assistant_settings_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/settings/codex":{"get":{"tags":["assistant"],"summary":"Codex Status","operationId":"codex_status_api_v1_assistant_settings_codex_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"delete":{"tags":["assistant"],"summary":"Codex Logout","operationId":"codex_logout_api_v1_assistant_settings_codex_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/settings/codex/login":{"post":{"tags":["assistant"],"summary":"Codex Login","description":"Start Codex's sign-in: a link and a one-time code for OpenAI's page.","operationId":"codex_login_api_v1_assistant_settings_codex_login_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/settings/test":{"post":{"tags":["assistant"],"summary":"Test Model","description":"Checks the stored key, or — with a provider and key in the body — a\nkey not yet stored, so a wrong one is never saved.","operationId":"test_model_api_v1_assistant_settings_test_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyTestRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/connections":{"get":{"tags":["assistant"],"summary":"Connections","operationId":"connections_api_v1_assistant_connections_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Create Connection","description":"A new personal key. The raw key is in this response and nowhere else.","operationId":"create_connection_api_v1_assistant_connections_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/connections/{token_id}":{"delete":{"tags":["assistant"],"summary":"Revoke Connection","operationId":"revoke_connection_api_v1_assistant_connections__token_id__delete","parameters":[{"name":"token_id","in":"path","required":true,"schema":{"type":"integer","title":"Token Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/secrets":{"get":{"tags":["assistant"],"summary":"Secrets","operationId":"secrets_api_v1_assistant_secrets_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Add Secret","operationId":"add_secret_api_v1_assistant_secrets_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/secrets/{secret_id}":{"patch":{"tags":["assistant"],"summary":"Update Secret","operationId":"update_secret_api_v1_assistant_secrets__secret_id__patch","parameters":[{"name":"secret_id","in":"path","required":true,"schema":{"type":"integer","title":"Secret Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Delete Secret","operationId":"delete_secret_api_v1_assistant_secrets__secret_id__delete","parameters":[{"name":"secret_id","in":"path","required":true,"schema":{"type":"integer","title":"Secret Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/mcp-servers":{"get":{"tags":["assistant"],"summary":"Mcp Servers","operationId":"mcp_servers_api_v1_assistant_mcp_servers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Add Mcp Server","operationId":"add_mcp_server_api_v1_assistant_mcp_servers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServerRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/mcp-servers/{server_id}":{"patch":{"tags":["assistant"],"summary":"Update Mcp Server","operationId":"update_mcp_server_api_v1_assistant_mcp_servers__server_id__patch","parameters":[{"name":"server_id","in":"path","required":true,"schema":{"type":"integer","title":"Server Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServerRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Delete Mcp Server","operationId":"delete_mcp_server_api_v1_assistant_mcp_servers__server_id__delete","parameters":[{"name":"server_id","in":"path","required":true,"schema":{"type":"integer","title":"Server Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/mcp-servers/{server_id}/check":{"post":{"tags":["assistant"],"summary":"Check Mcp Server","operationId":"check_mcp_server_api_v1_assistant_mcp_servers__server_id__check_post","parameters":[{"name":"server_id","in":"path","required":true,"schema":{"type":"integer","title":"Server Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/memory":{"get":{"tags":["assistant"],"summary":"Memory View","operationId":"memory_view_api_v1_assistant_memory_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Memory Add","operationId":"memory_add_api_v1_assistant_memory_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Memory Clear","operationId":"memory_clear_api_v1_assistant_memory_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/memory/settings":{"put":{"tags":["assistant"],"summary":"Memory Switch","operationId":"memory_switch_api_v1_assistant_memory_settings_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SwitchBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/memory/{note_id}":{"patch":{"tags":["assistant"],"summary":"Memory Edit","operationId":"memory_edit_api_v1_assistant_memory__note_id__patch","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"integer","title":"Note Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Memory Delete","operationId":"memory_delete_api_v1_assistant_memory__note_id__delete","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"integer","title":"Note Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/data-sources":{"get":{"tags":["assistant"],"summary":"Data Sources","operationId":"data_sources_api_v1_assistant_data_sources_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant"],"summary":"Connect Data Source","operationId":"connect_data_source_api_v1_assistant_data_sources_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataSourceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/data-sources/{source_id}":{"patch":{"tags":["assistant"],"summary":"Update Data Source","operationId":"update_data_source_api_v1_assistant_data_sources__source_id__patch","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"integer","title":"Source Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataSourceUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Delete Data Source","operationId":"delete_data_source_api_v1_assistant_data_sources__source_id__delete","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"integer","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/data-sources/{source_id}/try":{"post":{"tags":["assistant"],"summary":"Try Data Source","description":"Prices for one symbol, so a person sees the connection work.","operationId":"try_data_source_api_v1_assistant_data_sources__source_id__try_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"integer","title":"Source Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive":{"get":{"tags":["assistant"],"summary":"Drive View","operationId":"drive_view_api_v1_assistant_drive_get","parameters":[{"name":"view","in":"query","required":false,"schema":{"type":"string","default":"mydrive","title":"View"}},{"name":"folder","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Folder"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/folders":{"post":{"tags":["assistant"],"summary":"Drive New Folder","operationId":"drive_new_folder_api_v1_assistant_drive_folders_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FolderRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/upload":{"post":{"tags":["assistant"],"summary":"Drive Upload","description":"The file is the raw request body; its name comes in the query.","operationId":"drive_upload_api_v1_assistant_drive_upload_post","parameters":[{"name":"name","in":"query","required":true,"schema":{"type":"string","title":"Name"}},{"name":"parent_id","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Parent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/items/{item_id}":{"patch":{"tags":["assistant"],"summary":"Drive Rename","operationId":"drive_rename_api_v1_assistant_drive_items__item_id__patch","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenameRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Drive Delete","operationId":"drive_delete_api_v1_assistant_drive_items__item_id__delete","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/items/{item_id}/trash":{"post":{"tags":["assistant"],"summary":"Drive Trash","operationId":"drive_trash_api_v1_assistant_drive_items__item_id__trash_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/items/{item_id}/restore":{"post":{"tags":["assistant"],"summary":"Drive Restore","operationId":"drive_restore_api_v1_assistant_drive_items__item_id__restore_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/drive/items/{item_id}/download":{"get":{"tags":["assistant"],"summary":"Drive Download","operationId":"drive_download_api_v1_assistant_drive_items__item_id__download_get","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/google/status":{"get":{"tags":["assistant"],"summary":"Google Status","operationId":"google_status_api_v1_assistant_google_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/google/connect":{"get":{"tags":["assistant"],"summary":"Google Connect","operationId":"google_connect_api_v1_assistant_google_connect_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/google/callback":{"get":{"tags":["assistant"],"summary":"Google Callback","operationId":"google_callback_api_v1_assistant_google_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","default":"","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","default":"","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","default":"","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/google":{"delete":{"tags":["assistant"],"summary":"Google Disconnect","operationId":"google_disconnect_api_v1_assistant_google_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/google/files":{"get":{"tags":["assistant"],"summary":"Google Files","operationId":"google_files_api_v1_assistant_google_files_get","parameters":[{"name":"view","in":"query","required":false,"schema":{"type":"string","default":"mydrive","title":"View"}},{"name":"folder","in":"query","required":false,"schema":{"type":"string","default":"","title":"Folder"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"page","in":"query","required":false,"schema":{"type":"string","default":"","title":"Page"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/series":{"get":{"tags":["assistant"],"summary":"Find Series","description":"Series by name or code, for the pickers on a study: the public search,\nseries only. Under /studies/ because /api/v1/{dataset}/series is the public\nAPI's own route and would take /assistant/series first.","operationId":"find_series_api_v1_assistant_studies_series_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/recipes":{"get":{"tags":["assistant"],"summary":"Study Recipes","operationId":"study_recipes_api_v1_assistant_studies_recipes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/studies":{"get":{"tags":["assistant"],"summary":"List Studies","operationId":"list_studies_api_v1_assistant_studies_get","parameters":[{"name":"archived","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Archived"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["assistant"],"summary":"New Study","operationId":"new_study_api_v1_assistant_studies_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StudyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}":{"get":{"tags":["assistant"],"summary":"Get Study","operationId":"get_study_api_v1_assistant_studies__study_id__get","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}},{"name":"run","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Run"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["assistant"],"summary":"Edit Study","operationId":"edit_study_api_v1_assistant_studies__study_id__put","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StudyEdit"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant"],"summary":"Archive Study","operationId":"archive_study_api_v1_assistant_studies__study_id__delete","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/restore":{"post":{"tags":["assistant"],"summary":"Restore Study","operationId":"restore_study_api_v1_assistant_studies__study_id__restore_post","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/run":{"post":{"tags":["assistant"],"summary":"Run Study","description":"Run a spec as written: no AI, nothing but the server's own work.","operationId":"run_study_api_v1_assistant_studies__study_id__run_post","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StudyRun"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/recipe":{"post":{"tags":["assistant"],"summary":"Run Recipe","description":"A ready-made analysis, filled in with pickers: built and run by code, no AI.","operationId":"run_recipe_api_v1_assistant_studies__study_id__recipe_post","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StudyRecipe"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/ask":{"post":{"tags":["assistant"],"summary":"Ask Study","description":"A question in plain English. The cheapest route that answers it wins:\nthe series are found by search first; one short AI call tries to match\nthe question to a ready-made analysis, which code then runs; only a\nquestion no recipe fits goes to the Study Analyst, which writes a query.\nEither way the newest run is kept with its token count.","operationId":"ask_study_api_v1_assistant_studies__study_id__ask_post","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StudyAsk"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/runs/{run_id}/python":{"get":{"tags":["assistant"],"summary":"Study Python","description":"The study to run on the person's own machine (study_export.py).","operationId":"study_python_api_v1_assistant_studies__study_id__runs__run_id__python_get","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/studies/{study_id}/runs/{run_id}/csv":{"get":{"tags":["assistant"],"summary":"Study Csv","description":"Every kept row, with the sources, the formula and the trust of each\ncolumn above them, so the file stands on its own.","operationId":"study_csv_api_v1_assistant_studies__study_id__runs__run_id__csv_get","parameters":[{"name":"study_id","in":"path","required":true,"schema":{"type":"integer","title":"Study Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/reading":{"get":{"tags":["assistant","assistant"],"summary":"List Reading","operationId":"list_reading_api_v1_assistant_reading_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["assistant","assistant"],"summary":"Save Article","operationId":"save_article_api_v1_assistant_reading_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/reading/extension.zip":{"get":{"tags":["assistant","assistant"],"summary":"Download Extension","description":"No sign-in needed: the extension holds nothing of the reader's.","operationId":"download_extension_api_v1_assistant_reading_extension_zip_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/assistant/reading/{item_id}":{"get":{"tags":["assistant","assistant"],"summary":"Read Article","operationId":"read_article_api_v1_assistant_reading__item_id__get","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["assistant","assistant"],"summary":"Delete Article","operationId":"delete_article_api_v1_assistant_reading__item_id__delete","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/reading/{item_id}/summary":{"post":{"tags":["assistant","assistant"],"summary":"Summarise Article","operationId":"summarise_article_api_v1_assistant_reading__item_id__summary_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/assistant/preview":{"get":{"tags":["assistant","assistant"],"summary":"Preview","description":"The start of an answer for the front page: headline, up to two figures,\nthe source, and what the full answer adds.","operationId":"preview_api_v1_assistant_preview_get","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":300,"title":"Q"}},{"name":"prev","in":"query","required":false,"schema":{"type":"string","maxLength":300,"description":"the reader's previous question, for a follow-up","default":"","title":"Prev"},"description":"the reader's previous question, for a follow-up"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/answers":{"get":{"tags":["answers"],"summary":"Every answer page","operationId":"list_answers_api_v1_answers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/answers/{slug}":{"get":{"tags":["answers"],"summary":"One answer, as the page states it","operationId":"get_answer_api_v1_answers__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"Block":{"properties":{"kind":{"type":"string","title":"Kind"},"text":{"type":"string","title":"Text"}},"type":"object","required":["kind","text"],"title":"Block"},"ConnectionRequest":{"properties":{"label":{"type":"string","title":"Label","default":""}},"type":"object","title":"ConnectionRequest"},"CoverageRequest":{"properties":{"code":{"type":"string","title":"Code"},"list_id":{"type":"integer","title":"List Id","default":0}},"type":"object","required":["code"],"title":"CoverageRequest"},"DataSourceRequest":{"properties":{"provider":{"type":"string","title":"Provider","default":""},"key":{"type":"string","title":"Key","default":""}},"type":"object","title":"DataSourceRequest"},"DataSourceUpdate":{"properties":{"enabled":{"type":"boolean","title":"Enabled","default":true}},"type":"object","title":"DataSourceUpdate"},"FolderRequest":{"properties":{"name":{"type":"string","title":"Name"},"parent_id":{"type":"integer","title":"Parent Id","default":0}},"type":"object","required":["name"],"title":"FolderRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HireConfigRequest":{"properties":{"list_id":{"type":"integer","title":"List Id","default":0}},"type":"object","title":"HireConfigRequest"},"KeyTestRequest":{"properties":{"model_provider":{"type":"string","title":"Model Provider","default":""},"model_key":{"type":"string","title":"Model Key","default":""}},"type":"object","title":"KeyTestRequest"},"LinkRequest":{"properties":{"email":{"type":"string","title":"Email"},"returnTo":{"type":"string","title":"Returnto","default":""}},"type":"object","required":["email"],"title":"LinkRequest"},"ListRequest":{"properties":{"name":{"type":"string","title":"Name","default":""}},"type":"object","title":"ListRequest"},"McpServerRequest":{"properties":{"label":{"type":"string","title":"Label","default":""},"url":{"type":"string","title":"Url","default":""},"auth_kind":{"type":"string","title":"Auth Kind","default":"none"},"header_name":{"type":"string","title":"Header Name","default":""},"secret_id":{"type":"integer","title":"Secret Id","default":0},"enabled":{"type":"boolean","title":"Enabled","default":true}},"type":"object","title":"McpServerRequest"},"MessageRequest":{"properties":{"text":{"type":"string","title":"Text"}},"type":"object","required":["text"],"title":"MessageRequest"},"NoteBody":{"properties":{"text":{"type":"string","title":"Text","default":""}},"type":"object","title":"NoteBody"},"RenameRequest":{"properties":{"name":{"type":"string","title":"Name"}},"type":"object","required":["name"],"title":"RenameRequest"},"RunRequest":{"properties":{"task":{"type":"string","title":"Task","default":""}},"type":"object","title":"RunRequest"},"SaveBody":{"properties":{"url":{"type":"string","title":"Url"},"title":{"type":"string","title":"Title","default":""},"site":{"type":"string","title":"Site","default":""},"published":{"type":"string","title":"Published","default":""},"author":{"type":"string","title":"Author","default":""},"selection":{"type":"boolean","title":"Selection","default":false},"blocks":{"items":{"$ref":"#/components/schemas/Block"},"type":"array","title":"Blocks","default":[]}},"type":"object","required":["url"],"title":"SaveBody"},"SecretRequest":{"properties":{"name":{"type":"string","title":"Name","default":""},"value":{"type":"string","title":"Value","default":""},"note":{"type":"string","title":"Note","default":""}},"type":"object","title":"SecretRequest"},"SessionRequest":{"properties":{"token":{"type":"string","title":"Token"}},"type":"object","required":["token"],"title":"SessionRequest"},"SettingsRequest":{"properties":{"model_provider":{"type":"string","title":"Model Provider","default":""},"model_name":{"type":"string","title":"Model Name","default":""},"monitor_model":{"type":"string","title":"Monitor Model","default":""},"study_model":{"type":"string","title":"Study Model","default":""},"model_key":{"type":"string","title":"Model Key","default":""},"model_base_url":{"type":"string","title":"Model Base Url","default":""},"slack_webhook":{"type":"string","title":"Slack Webhook","default":""},"slack_label":{"type":"string","title":"Slack Label","default":""},"policy":{"additionalProperties":true,"type":"object","title":"Policy","default":{}}},"type":"object","title":"SettingsRequest"},"StudyAsk":{"properties":{"question":{"type":"string","title":"Question"},"stocks":{"type":"boolean","title":"Stocks","default":false}},"type":"object","required":["question"],"title":"StudyAsk"},"StudyEdit":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"question":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Question"},"refresh":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Refresh"},"token_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Token Budget"}},"type":"object","title":"StudyEdit"},"StudyRecipe":{"properties":{"recipe":{"type":"string","title":"Recipe"},"series":{"additionalProperties":true,"type":"object","title":"Series","default":{}},"start":{"type":"string","title":"Start","default":""},"end":{"type":"string","title":"End","default":""},"monthly":{"type":"string","title":"Monthly","default":""},"options":{"additionalProperties":true,"type":"object","title":"Options","default":{}},"title":{"type":"string","title":"Title","default":""}},"type":"object","required":["recipe"],"title":"StudyRecipe"},"StudyRequest":{"properties":{"title":{"type":"string","title":"Title","default":""},"question":{"type":"string","title":"Question","default":""}},"type":"object","title":"StudyRequest"},"StudyRun":{"properties":{"spec":{"additionalProperties":true,"type":"object","title":"Spec"}},"type":"object","required":["spec"],"title":"StudyRun"},"SwitchBody":{"properties":{"enabled":{"type":"boolean","title":"Enabled","default":true}},"type":"object","title":"SwitchBody"},"ThreadRequest":{"properties":{"hire_id":{"type":"integer","title":"Hire Id"},"text":{"type":"string","title":"Text"}},"type":"object","required":["hire_id","text"],"title":"ThreadRequest"},"TryRequest":{"properties":{"symbol":{"type":"string","title":"Symbol","default":""},"start":{"type":"string","title":"Start","default":""},"end":{"type":"string","title":"End","default":""}},"type":"object","title":"TryRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"tags":[{"name":"Catalog","description":"What is on the server: every dataset's card, the sections they sit in, and whether each one is current."},{"name":"Datasets","description":"The same endpoints for every statistical dataset. `{dataset}` is a dataset id from the catalog; which endpoints a dataset offers is listed on its card."},{"name":"Company","description":"One securities code across every dataset on the platform."},{"name":"Cross-shareholdings","description":"Policy shareholdings (政策保有株式) as filed in each company's annual securities report."},{"name":"Shareholder register","description":"The ten largest shareholders as filed in each annual report."},{"name":"5% filings","description":"Large shareholding reports (大量保有報告書): who crossed 5% and when."},{"name":"Boards and pay","description":"Directors, independence and officer pay as filed."},{"name":"AGM votes","description":"Voting results from extraordinary reports (臨時報告書): director approval and proposal outcomes."},{"name":"Buybacks","description":"Share repurchase programmes and monthly progress reports."},{"name":"Financials","description":"Financial statements and the filer's five-year summary as tagged on EDINET, and ratios calculated from them."},{"name":"Segments and customers","description":"Reportable segments, geographic revenue and named customers from each annual report, mapped to customs flows."},{"name":"Facilities","description":"Major facilities and land as filed: sites, book value and rented floor space."},{"name":"Peer groups","description":"Fixed and ad-hoc company cohorts, and one metric ranked across a cohort."},{"name":"Representation","description":"Seats per elector in the House of Councillors, from the population register."}]}