MCP Tools
MCP tool names, arguments, and recorded responses, grouped like the API.
Each tool below is the MCP call: the tool name, the MCP description, the arguments, and the response fields. Categories match the API groups. A filing id and a document id follow the same rules as Documents.
Entities
Entity Search
entitiesSearch
Autocomplete companies, funds, ETFs, and people. query=AAPL, query=AAPL US, or a name. Returns ungrouped securities, primary listing first. If you already know a ticker, CIK, LEI, FIGI, or series id, call entitiesResolve with id= instead. category defaults to ALL. ISIN and CUSIP match but are never returned.
Arguments
query*stringe.g. AAPLName, ticker, or identifier to search. Tickers accept the bare symbol (AAPL, BRK-B) and the venue-qualified forms AAPL US (space) or AAPL-US (hyphen). Also matches CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. An entity id (CIK, LEI, series id) can return several securities of that issuer or series, ranked primary first. ISIN and CUSIP are accepted for matching but are never returned. See Ids you can send.
category?ALL | EQUITY | ETF | FUND | PERSON | PRIVATE_COMPe.g. ALLALL, EQUITY, ETF, FUND, PERSON, or PRIVATE_COMP. Default ALL. ALL mixes types by relevance. See Entities Overview for type definitions.
limit?integere.g. 10Page size. Maximum 20.
offset?integere.g. 0Number of ranked hits to skip.
Response
Autocomplete page: the query echo plus ranked security-level Entity rows.
The text that was searched.
Echo of the category tab that was searched.
Page size that was applied.
Number of ranked hits that were skipped.
Ungrouped securities ranked by autocomplete score. An entity-id match lists that issuer's or series' lines from our primary pick to less popular classes and listings. A ticker or FIGI match ranks the matching security first.
Entity Reference
entitiesResolve
Look up one listing by id. Tickers (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET, CRD, series id, internal id, FIGI, ISIN, CUSIP. Entity keys return the primary security; ticker/FIGI return that security. ISIN and CUSIP never appear in the response. Examples: id=AAPL; id=0000320193. Prefer this over entitiesSearch when the id is known.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
category?EQUITY | ETF | FUND | PERSON | PRIVATE_COMPEQUITY, ETF, FUND, PERSON, or PRIVATE_COMP. Optional type filter. Do not pass ALL.
Response
Reference result: the id echo plus one Entity, or null on a miss.
The identifier you sent.
Echo of the optional type filter. Null when omitted.
The referenced row, or null if nothing matched. A miss is not an error. When id is an entity key, this is our primary security for that issuer or series.
Entity Securities
entitiesSecurities
List listings for one issuer or series. Same id forms as entitiesResolve (ticker, CIK, LEI, FIGI, …). Primary ordinary/US line first. Miss: entity=null, securities=[]. Use this when you want every line of a known issuer, not an autocomplete page.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
Response
The resolved entity plus its catalog listings, primary line first.
The identifier you sent.
Slim identity of the catalog row the id resolved to, or null if nothing matched.
Number of securities returned.
Listings of that issuer or series, primary ordinary/US line first, then other classes and venues.
Entity Structure
entitiesStructure
Legal-entity hierarchy for one id. Same id forms as entitiesResolve. Needs an LEI on the resolved row. scope=below (default): requested entity at level 1 plus descendants. scope=ultimate: ultimate parent at level 1, full tree. level=-1 all depths; active=-1 both, 1 active, 0 inactive (requested entity always kept). Reconstruct the tree with parent_lei and level.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
scope?below | ultimatee.g. belowbelow or ultimate. Default below. below returns the requested entity as the root and entities under it. ultimate returns the ultimate parent as the root and the full subordinate tree, including siblings of the requested entity.
level?integere.g. -1Depth filter. -1 returns every level. 1-8 returns only nodes at that depth (root is 1).
active?-1 | 0 | 1e.g. -1-1, 0, or 1. Default -1. 1 keeps active nodes, 0 keeps inactive nodes, -1 keeps both. The requested entity is always included when its level matches.
Response
Resolved identity plus a flat legal-entity hierarchy. Reconstruct the tree with parent_lei and level.
The identifier you sent.
Echo of the tree scope that was applied.
Echo of the depth filter that was applied.
Echo of the active filter that was applied.
Slim identity of the catalog row the id resolved to, or null if nothing matched.
LEI of the requested entity. Empty when the row has no LEI or the id did not match.
Root LEI of the returned tree.
True when at least one hierarchy edge was returned.
Number of nodes returned after filters.
Flat hierarchy in parent-before-child order. Empty when the id missed, the entity has no LEI, or filters removed every node.
Documents
Document Search
documentsSearch
Search SEC filings, Japan EDINET filings, and the caller's uploaded files in one list. Without query, each result is kind=filing: parent_id, document_id of the primary file, display, entities, and documents[] with every file (is_primary, display_order). With query, each result is kind=document for the matched file only: excerpts, a slim parent, and no documents array. Uploads are always kind=document. Optional id is any Entity Reference identifier (ticker, CIK, LEI, EDINET, FIGI, and the rest) and scopes the search to that company; a miss is 404. Optional sources is an array of sec, edinet, user; omit it to search every source the caller can access. user requires a signed-in user. Optional filing_type_categories is financials_periodic, current_reports, events (deprecated alias of current_reports, not an IR event), ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, or other. Optional filing_types is annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing, or a raw SEC form / EDINET code such as 10-K or 120. Call documentsTypes to see how groups expand. sort_by is score or date (default score). sort_order is desc or asc. size defaults to 15, cap 30. chunks_size defaults to 5, cap 20, and only applies when query is set. next_id pages. from_date and to_date are inclusive calendar dates on the source filing or upload day. Response is count, size, results. Each result has kind, document_id, source, display, published_at (same value as filed_at, UTC with Z). Pass document_id to documentsContents. Pass parent_id to documentsGet when you need the full file list. For SEC fy/period, EDINET reporting-period dates, or upload folder filters, use secFilingsSearch, edinetFilingsSearch, or userDocumentsSearch.
Arguments
query?stringe.g. iPhoneKeyword search over document text. Omit to list recent filings. Excerpts are returned only when this is set.
id?stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
sources?sec | edinet | user[]sec, edinet, or user. Comma-separated on GET. Omit to search every source you can access. user requires sign-in.
from_date?stringInclusive start calendar date as YYYY-MM-DD or yyyyMMdd. Filters the source filing or upload day (SEC acceptance, EDINET submission, or upload), which is the same clock filed_at is converted from. See filed_at.
to_date?stringInclusive end calendar date as YYYY-MM-DD or yyyyMMdd. Filters the source filing or upload day (SEC acceptance, EDINET submission, or upload), which is the same clock filed_at is converted from. See filed_at.
sort_by?score | datee.g. scorescore or date. Default score. Ignored when query is omitted (browse is always by date).
sort_order?asc | desce.g. descasc or desc. Default desc.
size?integere.g. 15Page size. Default 15. Maximum 30.
chunks_size?integere.g. 5Excerpts per document when query is set. Default 5. Maximum 20.
filing_type_categories?string[]financials_periodic, current_reports, ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, or other. current_reports is 8-K and 6-K style disclosures. events is a deprecated alias of current_reports and is not an IR event. Comma-separated on GET. Optional. Maps to native SEC type_category and EDINET disclosure types. Full expansion: Document Types.
filing_types?string[]annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing, or a raw SEC form / EDINET code (10-K, 8-K, 120). Comma-separated on GET. Optional. Groups and codes: Document Types.
next_id?stringCursor from the previous page. Omit on the first page.
Response
A page of Document items.
Unique documents matching across enabled sources. Present on the first page.
Page size that was applied.
Document items ranked by score or filed_at.
Pass as next_id to fetch the next page. Omitted when there are no more hits.
Document Reference
documentsGet
Look up one id. A filing id (SEC accession or EDINET internal filing id) returns kind=filing with every file in documents[] and document_id set to the primary file (is_primary). A document id, accession|chunk, or exhibit id returns kind=document with a slim parent and no documents array. Uploaded files are kind=document with filing_id null. Pass a document_id to documentsContents, not a filing id. Response is { document_id, kind, document }. document.display has title, type, type_long, description. published_at and filed_at are the same UTC instant. entities[] are Entity items. A miss is 404.
Arguments
id*stringe.g. 0000320193-25-000079|0Document or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
Response
The looked-up document_id plus one Document item.
The document identifier you sent.
The referenced Document item.
Document Contents
documentsContents
Markdown contents for one document. Pass the same id as documentsGet (Document Search document_id, SEC accession, accession|chunk, EDINET filing or document id, or uploaded file id). Optional query searches inside the document. Optional max_tokens (about 4 characters per token) caps this page. page defaults to 1 and is only valid with query. Response JSON has document_id, document (Document item), and content (markdown). document.filed_at is UTC with a Z suffix (SEC Eastern and EDINET Japan wall clocks converted to UTC). More pages set next_page. A miss is 404.
Arguments
id*stringe.g. 0000320193-25-000079|0Document or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
query?stringKeyword search inside this document. Omit to read sequential chunks from the start.
max_tokens?integere.g. 400Soft cap for this page. About 4 characters per token. Omit to return up to 20 chunks.
page?integere.g. 11-based page of in-document hits. Default 1. Valid only when query is set.
Response
Document item plus markdown content for this page.
The document identifier you sent.
The Document item whose body was fetched.
Markdown body for this page.
Page that was returned. Present when query is set.
Next page number when more in-document hits exist. Omit query and raise max_tokens to continue a sequential read.
Document Types
documentsTypes
List filing type groups and every known SEC form and EDINET document type code. filing_type_categories ids are financials_periodic, current_reports, events (deprecated alias of current_reports), ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, other. filing_types group ids are annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing. Each category and group lists the native SEC type_category / EDINET disclosure values and the concrete forms and codes. Pass those ids or a raw form/code on documentsSearch, secFilingsSearch, and edinetFilingsSearch.
Arguments
No arguments.
Response
Filing-type catalog used by Document Search, SEC Filings, and EDINET Translated Filings.
Unified category ids you pass as filing_type_categories, with native SEC and EDINET expansions.
Unified type-group ids you pass as filing_types, with SEC forms and EDINET codes.
Native SEC type_category buckets assigned at ingest.
Every known SEC form type, including /A amendments.
Native EDINET standardized_disclosure_type values.
Every known EDINET document type code with English name and disclosure bucket.
SEC Filings
SEC Filing Search
secFilingsSearch
Search US SEC filings only. Same Document fields as documentsSearch plus SEC submission metadata (type_category, items, report/effectiveness/action dates, ABS and WKSI flags, fund series, related accessions, SIC/EIN/state lists). Optional id is any Entity Reference identifier and scopes to that company's CIK; a miss is 404. Optional filing_type_categories is financials_periodic, current_reports, events (deprecated alias of current_reports), ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, or other. Optional filing_types is a group such as annual_report or a raw SEC form such as 10-K. Optional fy is four-digit years; optional period is FY, Q1, Q2, Q3, or Q4; both read the fiscal header on the filing. from_date and to_date filter SEC acceptance day. sort_by is score or date. size defaults to 15, cap 30. Pass document_id to secFilingsGet or secFilingsContents. Call secFilingsTypes for SEC-only group expansions.
Arguments
query?stringKeyword search over filing text. Omit to list recent filings. Excerpts are returned only when this is set.
id?stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
from_date?stringInclusive start calendar date as YYYY-MM-DD or yyyyMMdd on SEC acceptance day. See filed_at.
to_date?stringInclusive end calendar date as YYYY-MM-DD or yyyyMMdd on SEC acceptance day. See filed_at.
filing_type_categories?string[]financials_periodic, current_reports, ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, or other. current_reports is 8-K and 6-K style disclosures. events is a deprecated alias of current_reports and is not an IR event. Comma-separated on GET. Optional. Maps to native SEC type_category and EDINET disclosure types. Full expansion: Document Types.
filing_types?string[]annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing, or a raw SEC form / EDINET code (10-K, 8-K, 120). Comma-separated on GET. Optional. Groups and codes: Document Types.
fy?string[]Four-digit fiscal years (2024). Comma-separated on GET. Optional. Matches the fiscal year on the submission header.
period?FY | Q1 | Q2 | Q3 | Q4[]FY, Q1, Q2, Q3, or Q4. Comma-separated on GET. Optional. Combine with fy to require both. Matches the fiscal period on the submission header.
sort_by?score | datee.g. scorescore or date. Default score. Ignored when query is omitted (browse is always by date).
sort_order?asc | desce.g. descasc or desc. Default desc.
size?integere.g. 15Page size. Default 15. Maximum 30.
chunks_size?integere.g. 5Excerpts per filing when query is set. Default 5. Maximum 20.
next_id?stringCursor from the previous page. Omit on the first page.
Response
A page of SEC Filing items (Document plus SEC fields).
Matching filings. Present on the first page.
Page size that was applied.
SEC Filing items ranked by score or filed_at.
Pass as next_id to fetch the next page. Omitted when there are no more hits.
SEC Filing Types
secFilingsTypes
List SEC filing type groups and every known SEC form type. filing_type_categories ids are financials_periodic, current_reports, events (deprecated alias of current_reports), ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, other. filing_types group ids are annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing. Each category and group lists native SEC type_category values and concrete forms. Pass those ids or a raw form such as 10-K on secFilingsSearch.
Arguments
No arguments.
Response
SEC filing-type catalog used by SEC Filing Search.
Unified category ids you pass as filing_type_categories, with native SEC expansions.
Unified type-group ids you pass as filing_types, with SEC forms.
Native SEC type_category buckets assigned at ingest.
Every known SEC form type, including /A amendments.
SEC Filing Reference
secFilingsGet
Look up one SEC id. A SEC accession returns kind=filing and every exhibit in documents[]. An exhibit document_id or accession|chunk returns kind=document with parent and no other files. Response is { document_id, kind, document } as a SecFiling (Document fields plus SEC submission metadata on the filing or on the document hit). published_at and filed_at are UTC from SEC Eastern acceptance. An EDINET or uploaded id is 404. A miss is 404.
Arguments
id*stringe.g. 0000320193-24-000123|0Document or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
Response
The looked-up document_id plus one SecFiling item.
The document identifier you sent.
The referenced SecFiling item.
SEC Filings Markdown
secFilingsContents
Markdown contents for one SEC exhibit. Pass the same id as secFilingsGet (SEC Filing Search document_id, accession, or accession|chunk). Optional query searches inside the document. Optional max_tokens (about 4 characters per token) caps this page. page defaults to 1 and is only valid with query. Response JSON has document_id, document (SecFiling item), and content (markdown). document.filed_at is UTC with a Z suffix. More pages set next_page. An EDINET or uploaded id is 404. A miss is 404.
Arguments
id*stringe.g. 0000320193-24-000123|0Document or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
query?stringKeyword search inside this filing. Omit to read sequential chunks from the start.
max_tokens?integere.g. 400Soft cap for this page. About 4 characters per token. Omit to return up to 20 chunks.
page?integere.g. 11-based page of in-document hits. Default 1. Valid only when query is set.
Response
SecFiling item plus markdown content for this page.
The document identifier you sent.
The SecFiling item whose body was fetched.
Markdown body for this page.
Page that was returned. Present when query is set.
Next page number when more in-document hits exist. Omit query and raise max_tokens to continue a sequential read.
EDINET Translated Filings
EDINET Filing Search
edinetFilingsSearch
Search Japan EDINET filings (English translations) only. Requires Japan filings access. Same Document fields as documentsSearch plus EDINET form, period, exhibit, and filer-list metadata (standardized_disclosure_type, edinet_document_type_code, filing_period_start/end, ordinance/legal status, Japan tickers, LEIs). Optional id is any Entity Reference identifier and scopes to that company's EDINET code; a miss is 404. Optional filing_type_categories uses the same ids as documentsSearch (correspondence, orders_notices, and trust_indenture do not apply to EDINET). Optional filing_types is a group such as annual_report or a three-digit EDINET code such as 120. Optional fy is a four-digit year on filing_period_end. Optional period_start and period_end (YYYY-MM-DD) also filter filing_period_end. from_date and to_date filter EDINET submission day. sort_by is score or date. size defaults to 15, cap 30. Pass document_id to edinetFilingsGet or edinetFilingsContents. Call edinetFilingsTypes for EDINET-only group expansions.
Arguments
query?stringKeyword search over translated filing text. Omit to list recent filings. Excerpts are returned only when this is set.
id?stringCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
from_date?stringInclusive start calendar date as YYYY-MM-DD or yyyyMMdd on EDINET submission day. See filed_at.
to_date?stringInclusive end calendar date as YYYY-MM-DD or yyyyMMdd on EDINET submission day. See filed_at.
filing_type_categories?string[]financials_periodic, current_reports, ownership, proxies_agm, registrations_offerings, mna_tenders, correspondence, orders_notices, trust_indenture, or other. current_reports is 8-K and 6-K style disclosures. events is a deprecated alias of current_reports and is not an IR event. Comma-separated on GET. Optional. Maps to native SEC type_category and EDINET disclosure types. Full expansion: Document Types.
filing_types?string[]annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing, or a raw SEC form / EDINET code (10-K, 8-K, 120). Comma-separated on GET. Optional. Groups and codes: Document Types.
fy?string[]Four-digit years (2024). Comma-separated on GET. Optional. Filters the calendar year of filing_period_end.
period_start?stringInclusive start as YYYY-MM-DD or yyyyMMdd on the filing reporting period end (filing_period_end), not submission day.
period_end?stringInclusive end as YYYY-MM-DD or yyyyMMdd on the filing reporting period end (filing_period_end), not submission day.
sort_by?score | datee.g. scorescore or date. Default score. Ignored when query is omitted (browse is always by date).
sort_order?asc | desce.g. descasc or desc. Default desc.
size?integere.g. 15Page size. Default 15. Maximum 30.
chunks_size?integere.g. 5Excerpts per filing when query is set. Default 5. Maximum 20.
next_id?stringCursor from the previous page. Omit on the first page.
Response
A page of EDINET Filing items (Document plus EDINET fields).
Matching filings. Present on the first page.
Page size that was applied.
EDINET Filing items ranked by score or filed_at.
Pass as next_id to fetch the next page. Omitted when there are no more hits.
EDINET Filing Types
edinetFilingsTypes
List EDINET filing type groups and every known FSA document type code. filing_type_categories ids that apply to EDINET are financials_periodic, current_reports, events (deprecated alias of current_reports), ownership, proxies_agm, registrations_offerings, mna_tenders, other. correspondence, orders_notices, and trust_indenture are SEC-only and omitted here. filing_types group ids with EDINET codes are annual_report, periodic_report, current_report, proxy_statement, registration_statement, tender_offer_document, beneficial_ownership_filing, insider_ownership_filing. Pass those ids or a three-digit code such as 120 on edinetFilingsSearch.
Arguments
No arguments.
Response
EDINET filing-type catalog used by EDINET Filing Search.
Unified category ids you pass as filing_type_categories, with native EDINET expansions. SEC-only categories are omitted.
Unified type-group ids you pass as filing_types, with EDINET codes. Groups with no EDINET codes are omitted.
Native EDINET standardized_disclosure_type values.
Every known EDINET document type code with English name and disclosure bucket.
EDINET Filing Reference
edinetFilingsGet
Look up one EDINET id. Requires Japan filings access. An internal filing id returns kind=filing and every exhibit in documents[]. A document id returns kind=document with parent and no other files. Response is { document_id, kind, document } as an EdinetFiling. published_at and filed_at are UTC from Japan submission. A SEC or uploaded id is 404. A miss is 404.
Arguments
id*stringe.g. 4347e8f6-68fa-4971-94bb-e7fdb15c4fc9:168:original.htmlDocument or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
Response
The looked-up document_id plus one EdinetFiling item.
The document identifier you sent.
The referenced EdinetFiling item.
EDINET Filings Markdown
edinetFilingsContents
Markdown contents for one English-translated EDINET exhibit. Requires Japan filings access. Pass the same id as edinetFilingsGet (EDINET Filing Search document_id, internal filing id, or document id). Optional query searches inside the document. Optional max_tokens (about 4 characters per token) caps this page. page defaults to 1 and is only valid with query. Response JSON has document_id, document (EdinetFiling item), and content (markdown). document.filed_at is UTC with a Z suffix from Japan submission. More pages set next_page. A SEC or uploaded id is 404. A miss is 404.
Arguments
id*stringe.g. 4347e8f6-68fa-4971-94bb-e7fdb15c4fc9:168:original.htmlDocument or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
query?stringKeyword search inside this filing. Omit to read sequential chunks from the start.
max_tokens?integere.g. 400Soft cap for this page. About 4 characters per token. Omit to return up to 20 chunks.
page?integere.g. 11-based page of in-document hits. Default 1. Valid only when query is set.
Response
EdinetFiling item plus markdown content for this page.
The document identifier you sent.
The EdinetFiling item whose body was fetched.
Markdown body for this page.
Page that was returned. Present when query is set.
Next page number when more in-document hits exist. Omit query and raise max_tokens to continue a sequential read.
User Documents
User Document Search
userDocumentsSearch
Search files the signed-in user or their organization uploaded. Requires sign-in and upload access. Same Document fields as documentsSearch plus file_type, parent_folder_id, and is_image. Optional file_types filters the stored file type (pdf, docx). Optional parent_folder_ids lists folder ids; include main for files with no parent folder. from_date and to_date filter upload day. sort_by is score or date. size defaults to 15, cap 30. Never send user_id or organization_id. Pass document_id to userDocumentsGet or userDocumentsContents. Call userFiles to list folders and files. Call userDocumentsTypes for stored file types.
Arguments
query?stringKeyword search over uploaded file text. Omit to list recent uploads. Excerpts are returned only when this is set.
from_date?stringInclusive start calendar date as YYYY-MM-DD or yyyyMMdd on upload day. See filed_at.
to_date?stringInclusive end calendar date as YYYY-MM-DD or yyyyMMdd on upload day. See filed_at.
file_types?string[]Uploaded file types (pdf, docx). Comma-separated on GET. Optional.
parent_folder_ids?string[]Folder ids to search. Comma-separated on GET. Optional. Pass main for files in the root folder (no parent).
sort_by?score | datee.g. scorescore or date. Default score. Ignored when query is omitted (browse is always by date).
sort_order?asc | desce.g. descasc or desc. Default desc.
size?integere.g. 15Page size. Default 15. Maximum 30.
chunks_size?integere.g. 5Excerpts per file when query is set. Default 5. Maximum 20.
next_id?stringCursor from the previous page. Omit on the first page.
Response
A page of User Document items (Document plus upload fields).
Matching files. Present on the first page.
Page size that was applied.
User Document items ranked by score or filed_at.
Pass as next_id to fetch the next page. Omitted when there are no more hits.
User Document Types
userDocumentsTypes
List stored upload file types. file_types ids are pdf, doc, docx, ppt, pptx, xls, xlsx, csv, txt, md, jpeg, jpg, png, gif, webp. Pass those ids on userDocumentsSearch. Leading dots are optional.
Arguments
No arguments.
Response
Stored upload file types used by User Document Search.
Stored file types you pass as file_types.
User Document Reference
userDocumentsGet
Look up one uploaded file by id. Requires sign-in and upload access. Accepts a User Document Search or User Files document_id. Identity is the signed-in user and their organization when set; never send user_id or organization_id. Response is { document_id, document } where document is a UserDocument item. A SEC or EDINET id is 404. A miss is 404.
Arguments
id*stringDocument or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
Response
The looked-up document_id plus one UserDocument item.
The document identifier you sent.
The referenced UserDocument item.
User Documents Markdown
userDocumentsContents
Markdown contents for one uploaded file. Requires sign-in and upload access. Pass the same id as userDocumentsGet (User Document Search or User Files document_id). Optional query searches inside the file. Optional max_tokens (about 4 characters per token) caps this page. page defaults to 1 and is only valid with query. Response JSON has document_id, document (UserDocument item), and content (markdown). More pages set next_page. A SEC or EDINET id is 404. A miss is 404. Never send user_id or organization_id.
Arguments
id*stringDocument or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
query?stringKeyword search inside this file. Omit to read sequential chunks from the start.
max_tokens?integerSoft cap for this page. About 4 characters per token. Omit to return up to 20 chunks.
page?integere.g. 11-based page of in-document hits. Default 1. Valid only when query is set.
Response
UserDocument item plus markdown content for this page.
The document identifier you sent.
The UserDocument item whose body was fetched.
Markdown body for this page.
Page that was returned. Present when query is set.
Next page number when more in-document hits exist. Omit query and raise max_tokens to continue a sequential read.
User Files
userFiles
List files and folders in one library view, or search them by name. Requires sign-in and upload access. Omit query to list one folder: parent_folder_id defaults to main (the root). Pass query to search names; omit parent_folder_id to search the whole library, or set it to search only that folder (not nested children). Optional kind is file or folder. size defaults to 50, cap 100. Response is { parent_folder_id, parent_name, path, results, count, size, truncated } when listing or searching inside a folder. Unrestricted name search omits parent_folder_id / path. Each result has kind file or folder, name, parent_folder_id, and path (ancestors from main). Folders have folder_id and created_at. Files have document_id, file_type, file_size, filed_at. Pass file document_id to userDocumentsGet or userDocumentsContents. Never send user_id or organization_id. A missing parent_folder_id is 404.
Arguments
parent_folder_id?stringFolder to list or to restrict a name search. Omit with query to search the whole library. Omit without query to list main (the root). Pass main for the root folder.
query?stringName search over files and folders. Omit to list the folder.
kind?file | folderfile or folder. Omit to return both.
size?integere.g. 50Page size. Default 50. Maximum 100.
Response
Files and folders in the listed folder, or name-search hits.
Folder that was listed or used to scope a name search. main is the library root. Omitted when query searches the whole library.
Name of that folder. main for the library root.
Ancestors from main through the listed folder. Omitted when query searches the whole library.
Name search that was applied. Present when query was set.
Folders first (by name), then files (newest first) when listing. Name-search hits are ranked by similarity.
Number of results on this page.
Page size that was applied.
True when more items exist beyond this page.
Fundamentals
Fundamentals Metrics
fundamentalsMetrics
List fundamentals metric ids. Filters are optional: category, subcategory, metric_data_type (float, integer, string), pit_data_items (default false = non-PIT). Each item has metric, name, category, subcategory, base_code, is_pit, is_non_pit, description, data_type, factor, formula, layer. Categories with metrics today: INCOME_STATEMENT, BALANCE_SHEET, CASH_FLOW, RATIOS, MARKET_DATA, MISCELLANEOUS. Current metrics are all non-PIT. Call this before fundamentals. For standardized income, balance, and cash-flow tables use financialsIncome, financialsBalance, financialsCashFlow.
Arguments
category?INCOME_STATEMENT | BALANCE_SHEET | CASH_FLOW | RATIOS | MARKET_DATA | MISCELLANEOUSe.g. RATIOSINCOME_STATEMENT, BALANCE_SHEET, CASH_FLOW, RATIOS, MARKET_DATA, or MISCELLANEOUS. Omit to return every category. See Fundamentals Overview.
subcategory?stringe.g. LIQUIDITYSub-category that currently has metrics. Can be used without category. See Fundamentals Overview.
metric_data_type?float | integer | stringfloat, integer, or string. Omit to return every type.
pit_data_items?booleane.g. falsetrue returns metrics available in point-in-time datasets. false (default) returns non-PIT period-end metrics.
Response
Fundamentals metric catalog, optionally filtered by category, subcategory, data type, and PIT.
Echo of the category filter, or null when omitted.
Echo of the subcategory filter, or null when omitted.
Echo of the data-type filter, or null when omitted.
Echo of the PIT filter. false when omitted.
Number of metrics in this response.
Categories that currently have at least one metric, in taxonomy order.
Subcategories that currently have at least one metric, in taxonomy order.
Metrics matching the filters, or every metric when filters are omitted.
Fundamentals
fundamentals
Fetch fundamentals values for one company. Required: id (same resolve as entitiesResolve: ticker AAPL / AAPL US / AAPL-US, CIK, LEI, EDINET, CRD, series id, internal id, FIGI, composite FIGI, share-class FIGI; ISIN and CUSIP match but are never returned) and metrics (array of ids from fundamentalsMetrics, max 80). periodicity defaults to [fy]; you may pass fy,quarter,ttm together, but not daily mixed with fiscal periods. Optional period_start, period_end (YYYY-MM-DD), limit (latest N), currency (ISO code; omit to keep reporting currency; latest warehouse spot via USD cross), growth (none, period, or yoy). Response is period rows with a values map keyed by metric id. Unknown metric ids are 400. Unresolved id is 404. For full income/balance/cash-flow tables use financialsIncome, financialsBalance, financialsCashFlow.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
metrics*string[]Metric ids from Fundamentals Metrics. Comma-separated on GET (metrics=revenue,currentRatio). Maximum 80.
periodicity?fy | quarter | ttm | daily[]fy, quarter, ttm, and/or daily. Default fy. You may combine fy, quarter, and ttm. daily cannot mix with fiscal periods.
period_start?stringInclusive period-end start (YYYY-MM-DD). Falls back to periods on or after this date.
period_end?stringInclusive period-end end (YYYY-MM-DD). Falls back to periods on or before this date.
limit?integere.g. 4Latest N periods after the date filter. Omit for all matching periods up to 100 fiscal or 252 daily.
currency?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
growth?none | period | yoye.g. nonenone, period, or yoy. Default none. period is adjacent percent change. yoy is the same fiscal period in the prior year.
Response
Resolved identity, requested metrics, and one observation per period.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
fy, quarter, ttm, and/or daily that were applied.
Echo of period_start, or null.
Echo of period_end, or null.
Echo of limit, or null when omitted (full available history up to the cap).
none, period, or yoy that was applied.
Requested display currency plus reporting and trading legs. Omit currency on the request to keep reporting amounts as stored.
Catalog rows for the requested ids, in request order.
Number of period observations.
Period observations, oldest to newest, tagged with periodicity.
Financials
Financials Metrics
financialsMetrics
List standardized financial statement line ids. Optional statement=income, balance, or cashflow. Each item has metric, name, parent, level, sign, row_type, include_when. Call this before financialsIncome, financialsBalance, or financialsCashFlow. Ids match fundamentalsMetrics for statement lines.
Arguments
statement?income | balance | cashflowe.g. incomeincome, balance, or cashflow. Omit for all three.
Response
Standardized statement layout, optionally filtered by statement.
Echo of the statement filter, or null when omitted.
Number of lines in this response.
Statement lines in display order.
Income Statement
financialsIncome
Get the standardized income statement. Required id (same resolve as entitiesResolve). periodicity=fy|quarter|ttm (default fy). include_ltm=true only with fy. Optional period_start, period_end, limit, currency (ISO; omit for reporting; latest warehouse spot), growth=none|period|yoy. columns include filing (slim Document: document_id, filing_id, source, filing_type, backlink_url, source_document_url, source_filing_url) and filing_match (exact, date, heuristic, or none) for statement forms only. Pass filing.document_id to documentsGet as id. LTM and TTM are filing_match none. Line ids match financialsMetrics. Unresolved id is 404.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
periodicity?fy | quarter | ttme.g. fyfy, quarter, or ttm. Default fy. fy is fiscal year, quarter is Q1-Q4, ttm is last twelve months.
include_ltm?booleane.g. falseWhen periodicity=fy, append a Last-12M column if it is not the same as the latest FY. Ignored (400) on quarter or ttm.
period_start?stringInclusive period-end start (YYYY-MM-DD).
period_end?stringInclusive period-end end (YYYY-MM-DD).
limit?integere.g. 4Latest N periods after the date filter. Omit for all matching periods up to 100.
currency?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
growth?none | period | yoye.g. nonenone, period, or yoy. Default none. period is adjacent percent change. yoy is the same fiscal period in the prior year.
Response
Standardized income statement table: period columns and nested line rows.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
Always income.
fy, quarter, or ttm that was applied.
True when a Last-12M column was appended.
Echo of period_start, or null.
Echo of period_end, or null.
Echo of limit, or null when omitted.
none, period, or yoy that was applied.
Requested display currency plus reporting and trading legs. Omit currency on the request to keep reporting amounts as stored.
Number of period columns.
Period columns, oldest to newest.
Statement lines in display order. values[i] matches columns[i].
Balance Sheet
financialsBalance
Get the standardized balance sheet. Required id (same resolve as entitiesResolve). periodicity=fy|quarter|ttm (default fy). include_ltm=true only with fy. Optional period_start, period_end, limit, currency, growth=none|period|yoy. columns include filing and filing_match (exact, date, heuristic, or none). Pass filing.document_id to documentsGet as id. Line ids match financialsMetrics. Unresolved id is 404.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
periodicity?fy | quarter | ttme.g. fyfy, quarter, or ttm. Default fy. fy is fiscal year, quarter is Q1-Q4, ttm is last twelve months.
include_ltm?booleane.g. falseWhen periodicity=fy, append a Last-12M column if it is not the same as the latest FY.
period_start?stringInclusive period-end start (YYYY-MM-DD).
period_end?stringInclusive period-end end (YYYY-MM-DD).
limit?integere.g. 4Latest N periods after the date filter. Omit for all matching periods up to 100.
currency?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
growth?none | period | yoye.g. nonenone, period, or yoy. Default none. period is adjacent percent change. yoy is the same fiscal period in the prior year.
Response
Standardized balance sheet table: period columns and nested line rows.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
Always balance.
fy, quarter, or ttm that was applied.
True when a Last-12M column was appended.
Echo of period_start, or null.
Echo of period_end, or null.
Echo of limit, or null when omitted.
none, period, or yoy that was applied.
Requested display currency plus reporting and trading legs. Omit currency on the request to keep reporting amounts as stored.
Number of period columns.
Period columns, oldest to newest.
Statement lines in display order. values[i] matches columns[i].
Cash Flow Statement
financialsCashFlow
Get the standardized cash-flow statement. Required id (same resolve as entitiesResolve). periodicity=fy|quarter|ttm (default fy). include_ltm=true only with fy. Optional period_start, period_end, limit, currency, growth=none|period|yoy. columns include filing and filing_match (exact, date, heuristic, or none). Cash-flow net income is cashflowNetIncome. Unresolved id is 404.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
periodicity?fy | quarter | ttme.g. fyfy, quarter, or ttm. Default fy. fy is fiscal year, quarter is Q1-Q4, ttm is last twelve months.
include_ltm?booleane.g. falseWhen periodicity=fy, append a Last-12M column if it is not the same as the latest FY.
period_start?stringInclusive period-end start (YYYY-MM-DD).
period_end?stringInclusive period-end end (YYYY-MM-DD).
limit?integere.g. 4Latest N periods after the date filter. Omit for all matching periods up to 100.
currency?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
growth?none | period | yoye.g. nonenone, period, or yoy. Default none. period is adjacent percent change. yoy is the same fiscal period in the prior year.
Response
Standardized cash-flow statement table: period columns and nested line rows.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
Always cashflow.
fy, quarter, or ttm that was applied.
True when a Last-12M column was appended.
Echo of period_start, or null.
Echo of period_end, or null.
Echo of limit, or null when omitted.
none, period, or yoy that was applied.
Requested display currency plus reporting and trading legs. Omit currency on the request to keep reporting amounts as stored.
Number of period columns.
Period columns, oldest to newest.
Statement lines in display order. values[i] matches columns[i].
Revenue Segments
financialsRevenueSegments
Product and geography revenue for one company. Required id (same resolve as entitiesResolve). periodicity is fy or quarter; omit it for both annual and quarterly columns. Each result has period (FY, Q1, Q2, Q3, Q4), fiscal_year, currency (ISO code of the amounts), date (period end), and period_start. filing.source_document_url is the SEC exhibit. product and geography are null when that cut does not tie. A negative client incentive or elimination is included when the other lines need it. Members are never mixed across currencies. Year-to-date columns are not quarters. Operating segments are not geography. Issuers without a SEC CIK are 404. Pass filing.document_id to documentsGet as id.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
periodicity?fy | quarterfy or quarter. Omit for both.
Response
Tied product and geography cuts, newest period end first.
Echo of the id you sent, after normalize.
The Entity item: one catalog row at security grain (a company listing, ETF or fund share class, person, or private company). Same object on Entity Search, Entity Reference, and later groups that attach companies (Documents entities[]). Rows are not grouped by issuer. ISINs and CUSIPs are never included. See The Entity item.
Echo of periodicity. Null when both durations were returned.
Value in
- "fy"
- "quarter"
Number of periods in this response.
Periods, newest date first.
XBRL
XBRL Concepts
xbrlConcepts
List XBRL tags this filer used on recent statement filings (10-K, 10-Q, 20-F, 40-F). Required id (same resolve as entitiesResolve). Optional q substring (Revenue, us-gaap:NetIncome). Optional accession. consolidated defaults true. Issuers without a SEC CIK are 404. Call this before xbrlSearch so you pass real concept ids. Then xbrlSearch or xbrlGet, then documentsGet with filing.document_id as id.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
q?stringe.g. RevenueSubstring match on the prefixed tag (Revenue, us-gaap:NetIncome). Omit to list recent tags.
accession?stringSEC accession or Document id. Omit to scan recent statement filings.
consolidated?booleane.g. truetrue (default) keeps facts with no dimensions. false includes segments.
limit?integere.g. 50Maximum tags. Default 50. Maximum 200.
Response
Tags this filer used, newest period_end first.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
Echo of q, or null.
Echo of the accession filter, or null.
Echo of consolidated.
Number of tags in this response.
Tags in recency order.
XBRL Search
xbrlSearch
Search SEC XBRL facts for one company. Required id (same resolve as entitiesResolve). Pass concepts (array of tags from xbrlConcepts, max 20), q (substring resolved against recent statement filings), or accession. Default period_start is five years ago unless you pass accession or period_start. period_end is inclusive. period_type is duration, instant, or all (default all). consolidated defaults true. limit default 50, cap 200. Issuers without a SEC CIK are 404. Response results are XbrlFact items with filing (document_id, filing_id, backlink_url, source_document_url, source_filing_url). Pass filing.document_id to documentsGet or xbrlGet as id.
Arguments
id*stringe.g. AAPLCompany or listing id. Same resolve as Entity Reference: ticker (AAPL, AAPL US, AAPL-US), CIK, LEI, EDINET code, CRD, SEC series id, internal id, FIGI, composite FIGI, and share-class FIGI. ISIN and CUSIP match but are never returned. See Ids you can send.
concepts?string[]Prefixed tags from XBRL Concepts. Comma-separated on GET. Maximum 20. Required unless q or accession is set.
q?stringSubstring used to resolve tags on recent statement filings when concepts is omitted.
accession?stringSEC accession or Document id. Restricts facts to that filing.
period_start?stringInclusive period_end start (YYYY-MM-DD). Default five years ago unless accession is set.
period_end?stringInclusive period_end end (YYYY-MM-DD).
period_type?duration | instant | alle.g. allduration, instant, or all. Default all. duration is income and cash flow. instant is balance.
consolidated?booleane.g. truetrue (default) keeps facts with no dimensions. false includes segments.
limit?integere.g. 50Maximum facts. Default 50. Maximum 200.
Response
A page of XBRL facts, newest period_end first.
Echo of the id you sent, after normalize.
Subset of the Entity item (names, tickers, profile link, cik, lei). Echoed on Entity Securities, Entity Structure, Fundamentals, and Financials as a resolve receipt — not a second company object. See The Entity item.
Echo of q, or null.
Tags that were queried after resolving q.
Echo of the accession filter, or null.
Inclusive lower bound on period_end (YYYY-MM-DD). Null when omitted.
Echo of period_end, or null.
Echo of consolidated.
Number of facts in this response.
Facts, newest period_end first.
XBRL Filing Facts
xbrlGet
All consolidated XBRL facts for one SEC filing. Required id is a documentsGet document_id, SEC accession, or accession|chunk. Optional q or concepts to slice. period_type is duration, instant, or all. consolidated defaults true. include_footnotes=true adds footnotes[]. limit default 500, cap 2000. truncated is true when the cap was hit. Response is { document_id, filing, results }. A miss is 404.
Arguments
id*stringe.g. 0000320193-23-000106Document or filing id. SEC accession, accession|chunk, exhibit document_id, EDINET internal filing id or document_id, or an uploaded file id from Document Search. See The Document item.
q?stringSubstring used to resolve tags in this filing when concepts is omitted.
concepts?string[]Prefixed tags. Comma-separated on GET. Maximum 20.
period_end?stringInclusive period_end end (YYYY-MM-DD).
period_type?duration | instant | alle.g. allduration, instant, or all. Default all.
consolidated?booleane.g. truetrue (default) keeps facts with no dimensions. false includes segments.
include_footnotes?booleane.g. falsetrue adds footnotes on each fact from the footnote table.
limit?integere.g. 500Maximum facts. Default 500. Maximum 2000.
Response
Facts from one SEC filing.
SEC accession that was looked up.
Slim Document for this filing.
Echo of q, or null.
Tags that were queried after resolving q.
Echo of consolidated.
True when the fact cap was hit.
Number of facts in this response.
Facts, newest period_end first.
Screener
Screener
screener
Screen the fundamental universe. First call screenerMetrics to get metric ids, then call screener with conditions and fields. A condition is {field, operator, values}. Numeric operators: over, over_eq, under, under_eq, between, exactly, not_exactly, zero, not_zero, has_data, percentile, rank, percent_total. Keyword: exactly. Boolean: true/false. Dates: over/under/between/exactly. Defaults: universe=equity, primary_only=true, actively_trading=true, size=20, sort_by=marketCap_usd desc. Return fields are metric ids (display_ticker, display_name_short, marketCap_usd, PE). ISINs are never returned. Pass display_ticker to entitiesResolve.
Arguments
conditions?object[]Filters to AND together. Each item is a metric id, an operator, and values. Unknown ids are an error. See Screener Overview.
field*stringMetric id from Screener Metrics (marketCap_usd, PE, ttmRevenue_usd).
operator*stringover, over_eq, under, under_eq, between, exactly, not_exactly, not_zero, zero, has_data, display_only, percentile, rank, percent_total, true, or false. See Screener Overview for which operators each type accepts.
values?string | number | boolean[]Comparison values. over/under/exactly need one value. between needs two.
fields?string[]Metric ids to return on each row. Omit to get ticker, short name, exchange, USD market cap, and GICS sector. Maximum 40.
universe?equity | etf | fund | person | private_company | securitiese.g. equityequity, etf, fund, person, private_company, or securities. Default equity. equity is operating companies. securities is equity+ETF+fund. See Screener Overview.
primary_only?booleane.g. truetrue returns one row per issuer or fund series (the primary listing). false returns every share class and venue line.
actively_trading?booleane.g. truetrue keeps listings treated as actively trading. Pass false to include inactive lines.
page?integere.g. 11-based page index.
size?integere.g. 20Page size. Maximum 100.
sort_by?stringe.g. marketCap_usdMetric id to sort by. Must be sortable (see Screener Metrics).
sort_order?asc | desce.g. descasc or desc. Default desc.
Response
A page of screened rows plus the filters that were applied.
Universe that was applied.
Whether the primary-only grain was applied.
Whether the actively-trading filter was applied.
1-based page index that was applied.
Page size that was applied.
Rows matching the filters.
Number of pages at this size.
True when another page exists.
True when this is not the first page.
Metric id used for sort.
Sort direction.
Metric ids returned on each row.
Filters that were applied after defaults and validation, not including universe/primary virtual fields.
Matching rows at security or entity grain, depending on primary_only.
Screener Metrics
screenerMetrics
List screener metric ids. Call this before screener. Optional filters combine: category is a slug, query searches id, display name, and category. Omit both to receive every metric. category is one of entity_attributes (Entity Attributes), entity_info (Entity Info), security_info (Security Info), price_and_volume (Price & Volume), income_statement (Income Statement), balance_sheet (Balance Sheet), cash_flow_statement (Cash Flow Statement), financial_ratios (Financial Ratios), key_metrics (Key Metrics), shares_and_float (Shares & Float), dividends_and_buybacks (Dividends & Buybacks), analyst_estimates (Analyst Estimates), technical (Technical), other (Other). query examples: marketCap, P/E, revenue. Each item is one flat metric id (revenue, ttmRevenue, and revenue_usd are separate ids). Fields: id, name, type, categories, operators, options, sortable, filterable, filter_only. Use id as conditions[].field or as a return field. ISINs are omitted.
Arguments
query?stringe.g. marketCapOptional case-insensitive search over metric id, name, and category. Combines with category. Omit to skip text search.
category?stringPicker group slug. entity_attributes (Entity Attributes), entity_info (Entity Info), security_info (Security Info), price_and_volume (Price & Volume), income_statement (Income Statement), balance_sheet (Balance Sheet), cash_flow_statement (Cash Flow Statement), financial_ratios (Financial Ratios), key_metrics (Key Metrics), shares_and_float (Shares & Float), dividends_and_buybacks (Dividends & Buybacks), analyst_estimates (Analyst Estimates), technical (Technical), or other (Other). Omit to return every category. Combines with query.
Response
Metric catalog. category and query narrow the same flat list; both are null when omitted.
Echo of the search text, or null when omitted.
Echo of the category slug, or null when omitted.
Number of metrics in this response.
Every category slug you can pass as category, in picker order.
Metrics matching category and query, or every public metric when both are omitted.
Time Series
Time Series Metrics
timeseriesMetrics
List chart series ids. Call this before timeseries. With no query and no category, the response is category ids and counts. Pass query, category, or both for a page (default 20, max 50). category is one of entity_attributes, entity_info, security_info, price_and_volume, income_statement, balance_sheet, cash_flow_statement, financial_ratios, key_metrics, shares_and_float, dividends_and_buybacks, analyst_estimates, technical, other. Each item has id, name, category, and grain. Pass id as series on timeseries. Do not invent ids.
Arguments
query?stringe.g. revenueCase-insensitive search over series id and name. Combines with category. Omit to skip text search.
category?stringe.g. income_statementPicker group slug. entity_attributes, entity_info, security_info, price_and_volume, income_statement, balance_sheet, cash_flow_statement, financial_ratios, key_metrics, shares_and_float, dividends_and_buybacks, analyst_estimates, technical, or other. Omit to return every category. Combines with query.
limit?integere.g. 20Page size when query or category is set. Default 20. Maximum 50.
offset?integere.g. 0Number of matching series to skip. Default 0.
Response
Series catalog. With no query and no category, metrics is empty and categories lists every group.
Search text, or null when omitted.
Category slug, or null when omitted.
Number of series matching query and category. Zero when both are omitted.
Page size applied to metrics.
Number of matches skipped.
Every category that has at least one series, in picker order.
Matching series for this page. Empty when query and category are both omitted.
Time Series
timeseries
Fetch dated points for companies. Required: ids (same resolve as entitiesResolve: ticker AAPL / AAPL US / AAPL-US, CIK, LEI, EDINET, CRD, series id, internal id, FIGI, composite FIGI, share-class FIGI; ISIN and CUSIP match but are never returned; max 8) and series (ids from timeseriesMetrics, max 8). range defaults to 5Y and is one of 3M, 1Y, 3Y, 5Y, 10Y, ALL. from and to are YYYY-MM-DD and replace range when either is set. Each result is {id, series, points: [{date, value}]}. Empty points means that pair has no values in the window. Unresolved ids are listed in unresolved and are not an error. Unknown series ids are 400. Values stay in the stored currency. Do not invent series ids.
Arguments
ids*string[]Company ids. Same ids as Entity Reference. Comma-separated on GET. Maximum 8.
series*string[]Series ids from Time Series Metrics. Comma-separated on GET (series=revenue__annual,close__daily). Maximum 8.
range?3M | 1Y | 3Y | 5Y | 10Y | ALLe.g. 5YLookback. 3M, 1Y, 3Y, 5Y, 10Y, or ALL. Default 5Y. Ignored when from or to is set.
from?stringInclusive start date, YYYY-MM-DD. Replaces range when set. Either side may be omitted.
to?stringInclusive end date, YYYY-MM-DD. Replaces range when set. Either side may be omitted.
Response
Resolved companies, the series requested, and one result per company and series.
Lookback that was applied, or null when from or to was set.
Requested start date, or null when range was used or from was omitted.
Requested end date, or null when range was used or to was omitted.
Companies that resolved. id is the id you sent.
Ids that did not resolve.
Series that were requested, in request order.
One row per resolved company and series. points is empty when that pair has no values in the window.
Forex
Forex Currencies
forexCurrencies
List ISO currency codes implied by listed forex pairs. No parameters. Use a code as forexQuotes base/quote, forexConvert from_currency/to_currency, or fundamentals/financials currency. Latest warehouse spots only — there is no historical period-end FX book.
Arguments
No arguments.
Response
ISO codes present on listed pairs, sorted.
Number of currency codes.
ISO 4217 codes (USD, EUR, CAD), plus metals or other codes that appear on listed pairs.
Forex Quotes
forexQuotes
Latest forex spots from the warehouse. Optional pairs (array of EURUSD / EUR/USD). Unknown pairs are 404. Optional base and quote (ISO) filter when pairs is omitted. limit defaults to 50, cap 500. Each quote has pair, base, quote, price (quote per one base), change, volume, as_of. Not historical, not forwards.
Arguments
pairs?string[]Listed pairs (EURUSD, EUR/USD). Comma-separated on GET. Omit to page latest quotes.
base?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
quote?stringISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
limit?integere.g. 50Page size when pairs is omitted. Default 50, maximum 500. Ignored when pairs is set.
Response
Latest spots for the selected pairs or a page of listed pairs.
Echo of requested pairs, or null when paging the book.
Echo of the base filter, or null.
Echo of the quote filter, or null.
Page size that was applied, or null when pairs was set.
Number of quotes returned.
Latest spots, sorted by pair.
Forex Convert
forexConvert
Convert amount (default 1) from from_currency to to_currency. ISO codes, case-insensitive. Uses a listed pair or inverse when present, otherwise a USD cross (via=USD). Same currency returns rate 1. No listed path is 404. Latest warehouse spot only — not historical.
Arguments
from_currency*stringe.g. EURISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
to_currency*stringe.g. USDISO 4217 code (USD, EUR, CAD). Case-insensitive. Latest warehouse spot; crosses that are not a listed pair convert via USD. See Forex.
amount?numbere.g. 1Amount in from_currency. Default 1.
Response
Converted amount at the latest warehouse spot.
ISO code after normalize.
ISO code after normalize.
Amount that was converted.
to_currency per one from_currency.
amount times rate.
Listed pair used when a direct or inverse quote exists.
USD when the rate is a USD cross. Null for a listed pair or identical codes.
Warehouse version timestamp of the quotes used.
Watchlists
Watchlists
watchlists
List watchlists for the signed-in user, including organization lists they can see. Each row has watchlist_id, name, description, is_favourite, updated_at, entity_count, and shared. Pass watchlist_id to watchlistEntities or watchlistsUpdate. page starts at 1. size default 50, max 100. This does not create a watchlist.
Arguments
page?integere.g. 11-indexed page. Default 1.
size?integere.g. 50Page size. Default 50. Maximum 100.
Response
One page of watchlists, newest update first.
Watchlists the caller can see.
Page that was returned.
Page size that was applied.
True when more watchlists exist beyond this page.
Watchlists on this page.
Watchlist Entities
watchlistEntities
Read one page of companies on a watchlist. watchlist_id comes from watchlists. page starts at 1. size default 20, max 25, because each row is resolved. Each result id is a catalog id (AAPL US, a CIK, a LEI). Pass that id to entities, documents, financials, or watchlistsUpdate remove. entity is the Entity item, the same object as entitiesResolve, with resolved true. When the row no longer resolves, id is still returned and entity is omitted.
Arguments
watchlist_id*stringWatchlist id from Watchlists.
page?integere.g. 11-indexed page. Default 1. Newest additions first.
size?integere.g. 20Companies on this page. Default 20. Maximum 25.
Response
One page of companies on the watchlist.
Watchlist that was read.
Watchlist name.
Companies on the watchlist.
Page that was returned.
Page size that was applied.
True when more companies exist beyond this page.
Companies on this page, newest first.
Update Watchlist
watchlistsUpdate
Add and/or remove companies on one watchlist. watchlist_id comes from watchlists. add and remove take the same ids as Entity Reference: ticker (AAPL, AAPL US), CIK, LEI, EDINET code, FIGI. At most 20 ids in each list. Pass at least one of add or remove. remove runs first, then add, so an id in both lists ends on the watchlist. Ids that do not resolve are returned in unresolved and are not stored. Adding a company already on the list keeps it and still returns it in added.
Arguments
watchlist_id*stringWatchlist id from Watchlists.
add?string[]Catalog ids to add. Same ids as Entity Reference. At most 20. Optional when remove is set.
remove?string[]Catalog ids to remove. Same ids as Entity Reference, or the id returned by Watchlist Entities. At most 20. Optional when add is set.
Response
What was added, what was removed, and ids that did not resolve.
Watchlist that was updated.
Companies requested in add that resolved. Includes companies that were already on the list.
Companies requested in remove that were on the list.
Ids that did not match a catalog row, or a remove id that was not on the list and did not resolve.
Coverage
Entity Coverage
coverageEntities
Coverage of the entity catalog. Listings by category, top venues, and how often CIK, LEI, FIGI, and EDINET code are present. No arguments. Not a price tape. ISIN and CUSIP are never returned.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
SEC Filing Coverage
coverageSecFilings
Coverage of the SEC filing index. Filings, documents, chunks, the entities they name, and the year the history starts. No arguments. Live and backfill use the same parser.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
EDINET Coverage
coverageEdinetFilings
Coverage of translated EDINET filings. Filings, documents, chunks, the companies they name, and the year the history starts. No arguments. Calls require Japan access.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
Fundamentals Coverage
coverageFundamentals
Coverage of the fundamentals metric catalog. How many metrics each category publishes, and how many are point-in-time. No arguments. This is the catalog, not one company's history.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
Financials Coverage
coverageFinancials
Coverage of standardized financial statements. How many lines each statement publishes. No arguments. Annual, quarterly, or trailing twelve months. Revenue segments are an XBRL tie, not a fourth statement.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
XBRL Coverage
coverageXbrl
Coverage of XBRL facts. Forms are 10-K, 10-Q, 20-F, and 40-F, plus amendments. No arguments. Concepts are per filing. This call does not scan the facts table.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
Screener Coverage
coverageScreener
Coverage of the screener field catalog. How many fields each category publishes. No arguments. A screen is the latest snapshot, not statement history.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
Time Series Coverage
coverageTimeseries
Coverage of the time series catalog. How many series each category publishes. No arguments. A fetch is up to 8 companies and 8 series. Values stay in the stored currency.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.
Forex Coverage
coverageForex
Coverage of listed forex spots. No arguments. Quotes are the latest spot. Convert tries the listed pair, then the inverse, then a USD cross. No history.
Arguments
No arguments.
Response
Coverage of one endpoint group. Stats, charts, tables, and notes. Built by the coverage pipeline. The request does not scan the warehouse.
Group id. entities, sec-filings, edinet-filings, fundamentals, financials, xbrl, screener, timeseries, or forex.
Group title.
What this bundle is for.
When warehouse totals in this bundle were built. Null when the bundle is catalog-only.
How the numbers are produced, and what the request does not do.
System of record for the counts.
When the dated history starts. The corpus continues through the latest filing, so no end date is pinned.
Headline numbers.
Distributions. Points are label plus value.
Lists that do not fit a chart.
Nuance a buyer needs before treating a count as the whole corpus.