Filing Query API
The Query API allows searching and filtering all 20 million filings and exhibits published on the SEC EDGAR database since 1993 to present, with new filings being added in 300 milliseconds after their publication on EDGAR. The API accepts simple and complex search expressions and returns the metadata of matching EDGAR filings in JSON format including form type, accession numbers, filing date and times, filer information such as CIK, ticker and entity name, exhibits and attachments, URLs to the original SEC sources, and many more.
EDGAR filings are searchable by numerous parameters, such as: CIK (Central Index Key), ticker symbol or name of the filer, form type, filing date, accession number, item IDs in case of Form 8-K or Form 1-U filings, exhibit types, series and class contract IDs, and more. Refer to the list of searchable parameters to see all available search options.
The filing search capabilities of the Query API can be tested free of charge in our playground available here. The sanbdox showcases a variety of filing search examples and allows testing the API with own queries in a simple no-code environment.
| Ticker | Filed | Form | Company | CIK | Filing | Details | Submission | Period | Items | Entity (CIK · EIN · ST · File · Film · SIC · FY) | Attachments | XBRL files | … | Details |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| WS | 2026-10-07 06:30 | 8-K | Worthington Steel, Inc. | 1968487 | HTML | Index | TXT | 2026-10-06 | 2.02, 8.01, 9.01 | 1968487 · 922632000 · OH · 001-41830 · 261445422 · 3310 · 0531 | EX-99.1, EX-99.2, EX-99.3, GRAPHIC … | EX-101.SCH, XML | ||
| APOG | 2026-10-06 16:19 | 10-Q | APOGEE ENTERPRISES, INC. | 6845 | HTML | Index | TXT | 2026-08-29 | – | 6845 · 410919654 · MN · 000-06365 · 261444299 · 3231 · 0301 | EX-31.1, EX-31.2, EX-32.1, EX-32.2 | EX-101.SCH, EX-101.CAL, EX-101.DEF … | ||
| COST | 2026-10-06 21:13 | 10-K | COSTCO WHOLESALE CORP /NEW | 909832 | HTML | Index | TXT | 2026-08-30 | – | 909832 · 911223280 · WA · 000-20355 · 261445309 · 5331 · 0830 | EX-21.1, EX-23.1, EX-31.1, EX-32.1 … | EX-101.SCH, EX-101.CAL, EX-101.DEF … | ||
| FSI | 2026-10-06 19:25 | DEF 14A | FLEXIBLE SOLUTIONS INTERNATIONAL INC | 1069394 | HTML | Index | TXT | 2026-10-06 | – | 1069394 · 911922863 · NV · 001-31540 · 261445155 · 2890 · 1231 | – | EX-101.SCH, EX-101.DEF, EX-101.LAB … | ||
| PAXG | 2026-10-06 11:01 | 424B4 | Pine Tree Acquisition Corp. | 2076561 | HTML | Index | TXT | – | – | 2076561 · 000000000 · E9 · 333-292289 · 261442734 · 6770 · 1231 | GRAPHIC, GRAPHIC | – | ||
| WHK | 2026-10-07 00:15 | EFFECT | WhiteHawk Minerals Corp. | 1921603 | HTML | Index | TXT | – | – | 1921603 · 880862160 · DE · 333-299246 · 261445363 · 1311 · 1231 | EFFECT | – | ||
| FUSE | 2026-10-06 17:16 | S-1 | Fusemachines Inc. | 2033383 | HTML | Index | TXT | – | – | 2033383 · 000000000 · 333-299336 · 261444895 · 7373 · 1231 | EX-5.1, EX-10.18, EX-23.1, EX-FILING FEES … | EX-101.SCH, EX-101.CAL, EX-101.DEF … | ||
| – | 2026-10-07 06:10 | 4 | Lin Shih-Yao David | 2098041 | HTML | Index | TXT | 2025-03-25 | – | 1006045 · 770210467 · DE · 3845 · 0103 (+1) | 4 | – | ||
| – | 2026-10-07 06:09 | FWP | JPMorgan Chase Financial Co. LLC | 1665650 | HTML | Index | TXT | – | – | 1665650 · 475462128 · DE · 6021 · 1231 (+1) | GRAPHIC, GRAPHIC | – | ||
| NWCL | 2026-10-06 16:11 | F-1 | newcleo plc | 2131813 | HTML | Index | TXT | – | – | 2131813 · 000000000 · X0 · 333-299328 · 261444143 · 3443 · 1231 | EX-5.1, EX-21.1, EX-23.1, EX-23.2 … | XML | ||
| PUK | 2026-10-07 06:32 | 6-K | PRUDENTIAL PLC | 1116578 | HTML | Index | TXT | 2026-10-07 | – | 1116578 · 000000000 · X0 · 001-15040 · 261445423 · 6311 · 1231 | – | – |
The filings database inlcudes all EDGAR form types without exception, from annual and quarterly reports (Form 10-K, 10-Q, 20-F, 40-F), event-driven filings such as Form 8-K and 6-K, insider trading activities (Form 3, 4, 5), over registration statements (Form S-1, S-3, S-8) and prospectuses (Form 424B2, 424B3, 424B4), to institutional investment manager and company filings (Form 13F, N-PORT) and more than 150 other types ever published. The database includes all filings ever published by any of the 800,000 EDGAR filer entities. A full list of all EDGAR form types is available on the form types page.
Common Use Cases
The EDGAR filing search capability of the Query API is often used as a first step in a multi-process filing ingestion pipeline. For example, the Query API is often used to find the most recently disclosed filings of a specific form type, such as 10-Qs or 8-Ks, to obtain the URLs of those filings, and then download the full text of the filings using the Filing Download API or to convert the filings to PDFs using the PDF Generator API.
Common use cases for the Query API include:
- Submitting recently filed filing exhibits to regulatory authorities
- Monitoring filer compliance with exchange rules
- Powering internal insight analytics platforms
- Backtesting quantitative investment strategies
- Showing EDGAR filings on investor relationships websites
API Endpoint
In order to search and retrieve metadata of EDGAR filings, HTTP POST requests with the search expression as payload are sent to the following API endpoint:
Supported HTTP methods: POST
Request and response content type: JSON
Authentication
To authenticate your API requests, use the API key shown in your user profile. You can utilize your API key in one of two ways. Choose the method that best fits your implementation:
- Authorization Header: Include your API key as an
Authorizationheader in your POST requests. For instance, before sending a POST request to https://api.sec-api.io, ensure the header is set as follows:Authorization: YOUR_API_KEY - Query Parameter: Alternatively, append your API key directly to the URL as a query parameter. For example, when making POST requests, use the URL
https://api.sec-api.io?token=YOUR_API_KEYinstead of the base API endpoint.
Request Parameters
To search, filter and get the metadata of EDGAR filings, send an HTTP POST request with a JSON payload to the API endpoint https://api.sec-api.io. The payload contains the search criteria, the pagination parameters and the optional sort parameters.
query: required string
The search expression in Lucene syntax. The format field:value finds all filings that have value in field. For example, formType:"10-K" finds Form 10-K filings, and ticker:AAPL finds the filings of Apple. The query string can search by any field of the response object, as described in the Response Format section below. For example, search by the CIK of the filer, by series, class or contract IDs, by date ranges of filing times and periods of report, by the event item codes of Form 8-K and 1-U filings, by exhibit types and more. Combine search criteria with the logical operators AND, OR and NOT. For example, formType:"10-K" AND ticker:AAPL finds the Form 10-K filings of Apple. The query string has a maximum length of 3,500 characters. For more search expressions, see the Query String Examples section below and the playground. The complete guide to the Lucene syntax explains the syntax in full.
from: optional string
The position of the first result to return. Use from for pagination. For example, set from to 50 to skip the first 50 filings. The default is 0. The maximum is 10,000, which is also the maximum number of filings that one query string can return. To get all filings of a search, increase from by the value of size (for example, 50) until no more filings are returned or the 10,000 filing limit is reached: 0, 50, 100 and so on. If a query finds more than 10,000 filings, narrow the search with more filter criteria, for example with a date range filter that steps through months or years. For example, search with the filedAt date range filter filedAt:[2021-01-01 TO 2021-01-31] (all filings from January 2021) and page through the results with from. Then do the same for the next month, and so on.
size: optional string
The number of filings that one request returns. For example, set size to 10 to get 10 filings per request. The default is 50. The maximum is 50, which is the maximum number of filings per request.
sort: optional array of object
An array of objects that sets the order of the returned filings. By default, filings are sorted by the filedAt datetime field in descending order, most recent filing first. To sort in ascending order, set order to asc. To sort by a different field, specify that field. For example, to sort filings by periodOfReport in ascending order, set sort to [{ "periodOfReport": { "order": "asc" } }].
Default: [{ "filedAt": { "order": "desc" } }]
order: string
The sort direction: asc (ascending) or desc (descending).
This example payload returns the 50 most recent 10-Q filings:
Query String Examples
The following list demonstrates different query examples that can be used to search EDGAR filings by various criteria.
cik:12345cik:(123, 456, 789)ticker:AAPLticker:(AAPL, MSFT, NVDA, TSLA)companyName:"Nissan Auto Receivables" AND companyName:Trustentities.sic:3714entities.stateOfIncorporation:DEentities.irsNo:710388071entities.fileNo:"001-36743"formType:"10-K"formType:"10-K" OR formType:"10-Q"formType:"10-K" AND NOT formType:"10-K/A"accessionNo:"0001193125-23-265616"filedAt:[2022-01-01 TO 2022-12-31]filedAt:[2021-09-15T14:00:00 TO 2021-09-15T19:00:00]items:"2.02" AND formType:"8-K"items:("2.02", "5.02") AND formType:"8-K"seriesAndClassesContractsInformation.series:S000011051seriesAndClassesContractsInformation. classesContracts.classContract:C000120702seriesAndClassesContractsInformation.classesContracts.ticker:ABRZXformType:"NPORT-P" AND seriesAndClassesContractsInformation. classesContracts.classContract:C000120702documentFormatFiles.type:*21* AND formType:"10-K"formType:EFFECT AND registrationForm:"S-3"id:*formType:"10-K" AND ticker:(AAPL, MSFT, NVDA, TSLA)formType:"10-K" AND documentFormatFiles.type:GRAPHICGood to Know
- Search by CIK:
cik:CIK_OF_INTERESTorcik:(CIK_1, CIK_2, ...)to find filings disclosed by a specific filer using its CIK, or filings from by multiple filers using their respective CIKs. When searching filings by the CIK of the filer, remove leading zeros from the CIK. For example, transform0000320193to320193. An example CIK search can be performed in the playground here. - Search by ticker:
ticker:TICKER_OF_INTERESTorticker:(TICKER_A, TICKER_B, ...)to retrieve filings by one or more ticker symbols of the filing companies. Ticker symbols in the filing search are case-insensitive, meaning thatticker:AAPLandticker:aaplwill return the same results. When performing historical filing searches going back far in time, it is recommended to use a filer's CIK instead of the ticker symbol. This approach accounts for entities that underwent ticker changes or entities that have multiple security classes listed on exchanges trading under different tickers, such as Alphabet's Class A (ticker: GOOGL) and Class C (ticker: GOOG) shares. The Mapping API can be used to resolve and map ticker symbols to CIKs, and vice versa. An example ticker search can be performed in the playground here. - Search by company name:
companyName:"NAME OF COMPANY"to perform a search by the company name. Enclose the company name in double quotes (e.g.,companyName:"My Trust A") to treat the company name as a single search term. This is useful when searching for company names that include whitespaces or special characters like "-", "." and "&". If the company name is a single word, the double quotes are optional. If the company name includes whitespaces and double quotes are omitted, each word is treated as a separate search term combined with an implicitORoperator. For example,companyName:My Trust Ais equivalent tocompanyName:My OR *:Trust OR *:A, which searches for filings with the words "My" in thecompanyNamefield, or "Trust" in any field, or "A" in any field. - Search by EDGAR form type:
formType:"FORM TYPE OF INTEREST"orformType:("FORM TYPE A", "FORM TYPE B", ...)to search for filings by one or multiple EDGAR form types. Ensure to enclose form types in double quotes (e.g.,formType:"10-K"). The Query API provides access to the entire EDGAR filings corpus, allowing searches across all form types without exception. A complete list of form types can be found here. An example form type search can be performed in the playground. - Search across dates:
filedAt:[START_DATE TO END_DATE]to search for filings filed within a specific date and time range. Use square brackets[ ]to include the start and end dates in the search. The date format isYYYY-MM-DDorYYYY-MM-DDTHH:MM:SSfor specific times. The time component is optional. For example,filedAt:[2021-01-01 TO 2021-12-31]captures all filings from midnight January 1, 2021 to midnight December 31, inclusive. An example with a time component isfiledAt:[2021-01-06T14:00:00 TO 2021-01-06T15:00:00], which returns all filings disclosed on January 6, 2021 between 2:00 PM and 3:00 PM (Eastern Time), inclusive. ThefiledAtvalue in a filing metadata object is reported in Eastern Time in reference to the timezone of the EDGAR system. For example2021-01-12T16:00:54-05:00is 4:00:54 PM Eastern Time on January 12, 2021. When performing date-time queries, there is no need to include the timezone offset ("-05:00" or "-04:00"). The API automatically converts all times to Eastern Time. An example of a date-time query is available in the playground here. - Nested Field Search:
documentFormatFiles.type:"EX-21" AND formType:"10-K"- Use nested field search and combine conditions to filter filings where a specific document type is included in a particular form. For example, this query finds 10-K filings that include Exhibit 21 ("EX-21"). Nested fields can be found indocumentFormatFiles,dataFiles,entities,holdings, andseriesAndClassesContractsInformation. Examples of nested field searches are available in our playground here (10-K with Exhibit 21), here (10-K with XBRL data) and here (class contract ID).
Request Examples
The following examples demonstrate a range of Query API requests. These queries are designed to help you retrieve specific EDGAR filings based on criteria such as form types, tickers of the filing companies, date ranges, and exhibit types. More examples can be found in the playground.
Find the most recent 10-Q filings
Return the 50 most recently filed 10-Q filings, sorted by their publication time filedAt, starting with the newest filings.
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pagination: Retrieve more than 10,000 filings
The from parameter is used to paginate through API results and is capped at 10,000. For instance, if a search query like formType:"8-K" AND ticker:AAPL matches 230 filings, but only 50 filings can be returned per API request, the from parameter can be incremented to retrieve all 230 filings. To retrieve all 230 filings:
- Set
"from": "0"for the first 50 filings. - Set
"from": "50"for the next 50, and so on, incrementing by 50 for each subsequent request until no more filings are returned.
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
If the total number of filings exceeds 10,000, the from parameter alone will not be sufficient to retrieve all results. For example, a search for all Form 8-K filings between 2010 and 2020 might return 700,000 filings, but paginating only retrieves the first 10,000.
To fetch the entire set of filings, the query should be broken down into multiple queries, each with a different date range filter. For example, start by searching for all 8-Ks between January 1st and 31st, 2010, and then paginate through the results:
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Once all filings for January 2010 have been retrieved, the date range can be adjusted to February 2010, March 2010, and so on. The process can then continue month by month, year over year, with pagination applied to each date range, until all relevant filings have been retrieved.
Searching across publication times
Return all S-1 filings published in 2021. The set of all results can be paginated by incrementing the from parameter.
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Find Apple's most recent 10-K filings
Return Apple's 10 most recently filed 10-K filings, sorted by filedAt, start with the newest.
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Find Form 10-K filings with Exhibit 21
Return the 10 most recently filed 10-Ks that have exhibit 21, sorted by filedAt, start with the newest.
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Form 8-K with Item 2.02 - Results of Operations and Financial Condition
Return the 10 most recently filed Form 8-K filings for material events that include Item 2.02 (Results of Operations and Financial Condition).
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Form 8-K with Item 7.01 - Regulation FD Disclosures
Return the 10 most recently filed Form 8-K filings for material events that include Item 7.01 (Regulation FD Disclosures).
Response
| Ticker | Company | CIK | Form Type | Filed At | Period Of Report | Filing | Filing Details Page | Complete Submission File | Entities (CIK, EIN, State, Fiscal Year End, File No, Film No, SIC) | Attachments | XBRL Files | ... | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Response Format
The Query API returns the metadata of the filings that match the search expression, in JSON format. The response object has two fields:
total: object
The number of filings that match the query, in two fields: value and relation. The filing count (value) is capped at 10,000 per search query. If a query finds more than 10,000 filings, value is 10,000 and does not show the exact number of matching filings. A value of 10,000 with a relation of gte (greater than or equal) means that more than 10,000 filings match the search criteria. Usually more filings match than one API response can return. To page through the results, increase the from parameter in the next API calls. For example, to get all filings that match the query, increase from by the value of the size parameter (for example, 50) until no more filings are returned or the 10,000 filing limit is reached.
value: integer
The number of filings that match the query, capped at 10,000. A value of 10,000 with relation gte means that more than 10,000 filings match.
relation: string
Either eq, which means that value is exact, or gte, which means that value is a lower bound.
filings: array of objects
The filings that match the search criteria, a maximum of 50 per response. All fields of a filing object are searchable. Each filing has the following fields:
id: string
The unique internal ID of the filing object. One filing can refer to several entities. For example, a Form 4 filing refers to at least one reporting person and one issuer company. In this case, the API creates one filing object per entity. Each object has its own ID, but all objects have the same accessionNo.
accessionNo: string
The unique number that EDGAR assigns to the submission. It consists of the 10-digit CIK of the entity that submitted the filing, a 2-digit year and a 6-digit sequence number, for example 0000028917-20-000033. The CIK in the accession number belongs to the entity that logged in to submit the filing, often a filing agent. It is not necessarily the CIK of the filer. EDGAR counts the sequence numbers per submitting CIK and starts again at 1 on the first business day of each year, so the accession numbers of one filer are usually not consecutive.
formType: string
The EDGAR form type of the filing, for example 10-K or 10-K/A. All 500+ form types are covered, including SEC correspondence. The complete list of all form types is available here.
filedAt: string
The Accepted attribute of the filing in ISO 8601 format: the date and time when the EDGAR system accepted the filing. A filing also has a Filing Date attribute, which shows only the date. The Accepted and Filing Date attributes can show different dates. The filedAt time is not the time the filing became publicly available. No field in the response, and no value in EDGAR, shows the time when a filing became publicly available. For example, SEC comment letters (UPLOAD) and company responses (CORRESP) become public only after the review is completed. Their filedAt date can be one or two months before the day they were published. EDGAR often disseminates a filing within seconds of acceptance. Format: YYYY-MM-DD HH:mm:SS TZ, for example 2019-12-06T14:41:26-05:00. The time zone is always Eastern Time (ET), and the time uses the 24-hour format. The time zone offset is -04:00 during daylight saving time (summer) and -05:00 during standard time (winter).
cik: string
The Central Index Key (CIK) of the entity that this filing object belongs to, without leading zeros, for example 28917. The SEC assigns a CIK to every company and person that files on EDGAR. The CIK is not always the CIK of the issuer. A filing that refers to more than one entity appears once per entity, and each filing object has the CIK of a different entity. For example, the Form 4 filing 0001140361-26-038674 appears twice: once with the CIK 320193 (Apple Inc., the issuer) and once with the CIK 1214156 (Timothy D. Cook, the reporting person). Both objects have the same accessionNo and entities, but a different id, cik, ticker, companyName and companyNameLong. The URLs in linkToTxt and linkToHtml use the EDGAR folder of each CIK, but they point to the same files. To get all filing objects of one filing, search by accessionNo.
ticker: string
The ticker symbol of the filing company, for example AMOT. Companies that are not publicly traded have no ticker, for example mutual funds and asset-backed securities issuers. Persons, such as reporting owners on Form 4, have no ticker either.
companyName: string
The name of the primary filing company or person, for example Allied Motion Technologies Inc.
companyNameLong: string
The long company name, including the filer type (Issuer, Filer or Reporting), for example ALLIED MOTION TECHNOLOGIES INC (0000046129) (Issuer).
description: string
The description of the form, for example Statement of changes in beneficial ownership of securities. For 8-K, 8-K/A, D, D/A, ABS-15G, ABS-15G/A, 1-U and 1-U/A filings, it includes the reported item numbers, for example Form 8-K - Current report - Item 1.03 Item 3.03 Item 5.02 Item 9.01.
linkToFilingDetails: string
The URL of the filing content on sec.gov. To download the filing content, use this URL with the Filing Download API. To convert the filing to a PDF file, use this URL with the PDF Generator API.
linkToTxt: string
The URL of the complete submission text file (.TXT) of the filing. The file contains the full submission: the filing itself, all exhibits and all other attached documents. It can be several hundred MB in size.
linkToHtml: string
The URL of the index page of the filing, also known as the filing detail page, for example sec.gov/Archives/.../0001803599-24-000156-index.htm.
periodOfReport: string, if reported
The end date of the report or of the filing period, in the format YYYY-MM-DD, for example 2021-06-08. The meaning depends on the form type:
- Form 10-K: the fiscal year end date
- Form 4: the transaction date
- Form 13F: the quarter end date
- Proxy filings: the date of the meeting, on some form types
effectivenessDate: string, if reported
The effectiveness date in the format YYYY-MM-DD, for example 2021-06-08. Only some form types report it, for example EFFECT, 18-K and TA-1.
effectivenessTime: string, if reported
The effectiveness time in the format HH:mm:ss, for example 16:00:00. Only EFFECT forms report it.
registrationForm: string, if reported
The registration form type as reported on EFFECT forms, for example S-1.
referenceAccessionNo: string, if reported
The reference accession number as reported on EFFECT forms, for example 0001213900-22-001446.
items: array of strings, if reported
The items as reported on Form 8-K, 8-K/A, D, D/A, ABS-15G, ABS-15G/A, 1-U and 1-U/A, one string per item. Each item is a reportable event. For example: ["Item 3.02: Unregistered Sales of Equity Securities", "Item 9.01: Financial Statements and Exhibits"]
groupMembers: array, if reported
The group members as reported on SC 13G, SC 13G/A, SC 13D and SC 13D/A filings, one string per member. Group members are the members of a group, or the joint filers, in Williams Act filings. The list does not include the filer. For example [ "c N. LITOWITZMAGNETAR CAPITAL PARTNERS LPSUPERNOVA MANAGEMENT LLC" ]
entities: array
All entities that the filing refers to. The first item is always the filing issuer. Each item is an object with the following keys:
companyName: string
The company name of the entity, for example DILLARD'S, INC. (Issuer).
cik: string
The CIK of the entity. Here, leading zeros are not removed, for example 0000028917.
irsNo: optional string
The IRS Employer Identification Number (EIN) of the entity, a nine-digit number that usually appears on the cover page of Form 10-K, for example 710388071.
stateOfIncorporation: optional string
The state of incorporation or jurisdiction of organization of the entity, as a two-character state or country code, for example AR (Arkansas).
fiscalYearEnd: optional string
The fiscal year end of the entity as month and day (MMDD), for example 0201 for February 1.
sic: optional string
The Standard Industrial Classification (SIC) code and industry title of the entity, for example 5311 Retail-Department Stores.
type: optional string
The type of the filing. Same as formType, for example 4.
act: optional string
The act under which the entity filed the filing: 33 (Securities Act of 1933), 34 (Securities Exchange Act of 1934), 40 (Investment Company Act of 1940) or 33 40 if both the 1933 and the 1940 act apply, for example 34.
fileNo: optional string
The SEC file number of the entity in the format ###-#####, for example 001-06140.
filmNo: optional string
The film number of the entity, also known as the Document Control Number (DCN): the microfilm number assigned to the submission. It starts with the two-digit year (format YY######). Subject companies, registrants and reporting owners have a film number. Filed by entities and issuers do not. For example 20575664.
documentFormatFiles: array
All primary files of the filing, including its exhibits. The first item is always the filing itself. The last item is always the complete submission text file (.TXT). The other items can be exhibits, press releases, PDF documents, presentations, graphics, XML files and more. Each item has the following keys:
sequence: optional string
The sequence number of the file, which gives the order of the files in the filing, for example 1.
description: optional string
The description of the file, for example EXHIBIT 31.1.
documentUrl: string
The URL of the file on SEC.gov. The URL includes the file extension, such as .HTML, .PDF, .TXT or .XML.
type: optional string
The EDGAR document type of the file, for example EX-32.1, GRAPHIC or 10-Q.
size: optional string
The size of the file in bytes, for example 6627216.
dataFiles: array
The data files of the filing, mainly used for XBRL filings. Each item has the following keys:
sequence: string
The sequence number of the file, which gives its order in the filing, for example 5.
description: string
The description of the file, for example XBRL INSTANCE DOCUMENT.
documentUrl: string
The URL of the file on SEC.gov. The URL includes the file extension, such as .XSD or .XML.
type: optional string
The type of the file, for example EX-101.INS, EX-101.DEF or EX-101.PRE.
size: optional string
The size of the file in bytes, for example 6627216.
seriesAndClassesContractsInformation: array
The series and the classes or contracts of the filing.
series: string
The series ID that the SEC assigns, in the format S#########, for example S000001297.
name: string
The name of the entity, for example PRUDENTIAL ANNUITIES LIFE ASSUR CORP VAR ACCT B CL 1 SUB ACCTS.
classesContracts: array
The list of classes or contracts. Each item has the following keys:
classContract: string
The class or contract ID that the SEC assigns, in the format C#########, for example C000011787.
name: string
The name of the class or contract as supplied by the filer, for example Class L.
ticker: string
The ticker of the class or contract as supplied by the filer, for example URTLX.
Response Example
This example shows a JSON response with three matching filings. The response contains the total number of filings that match the query and the metadata of the matching filings.
1
{
2
"total": {
3
"value": 10000,
4
"relation": "gte"
5
},
6
"filings": [
7
{
8
"id": "9bb018bb35b26df92204a0afba52c30a",
9
"accessionNo": "0001437749-20-002201",
10
"cik": "924383",
11
"ticker": "GNSS",
12
"companyName": "Genasys Inc.",
13
"companyNameLong": "Genasys Inc. (Filer)",
14
"formType": "10-Q",
15
"periodOfReport": "2019-12-31",
16
"description": "Form 10-Q - Quarterly report [Sections 13 or 15(d)]",
17
"filedAt": "2020-02-10T19:28:05-05:00",
18
"linkToTxt": "https://www.sec.gov/Archives/edgar/data/924383/0001437749-20-002201.txt",
19
"linkToHtml": "https://www.sec.gov/Archives/edgar/data/924383/0001437749-20-002201-index.htm",
20
"linkToFilingDetails": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/lrad20191231_10q.htm",
21
"entities": [
22
{
23
"companyName": "Genasys Inc. (Filer)",
24
"cik": "0000924383",
25
"irsNo": "870361799",
26
"stateOfIncorporation": "DE",
27
"fiscalYearEnd": "0930",
28
"type": "10-Q",
29
"act": "34",
30
"fileNo": "000-24248",
31
"filmNo": "20593428",
32
"sic": "3651 Household Audio & Video Equipment"
33
}
34
],
35
"documentFormatFiles": [
36
{
37
"sequence": "1",
38
"description": "FORM 10-Q",
39
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/lrad20191231_10q.htm",
40
"type": "10-Q",
41
"size": "938119"
42
},
43
{
44
"sequence": "2",
45
"description": "EXHIBIT 31.1",
46
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/ex_171266.htm",
47
"type": "EX-31.1",
48
"size": "13563"
49
},
50
{
51
"sequence": "3",
52
"description": "EXHIBIT 31.2",
53
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/ex_171267.htm",
54
"type": "EX-31.2",
55
"size": "13507"
56
},
57
{
58
"sequence": "4",
59
"description": "EXHIBIT 32.1",
60
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/ex_171268.htm",
61
"type": "EX-32.1",
62
"size": "8102"
63
},
64
{
65
"sequence": "11",
66
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/logo.jpg",
67
"type": "GRAPHIC",
68
"size": "5579"
69
},
70
{
71
"sequence": " ",
72
"description": "Complete submission text file",
73
"documentUrl": "https://www.sec.gov/Archives/edgar/data/924383/000143774920002201/0001437749-20-002201.txt",
74
"type": " ",
75
"size": "6627216"
76
}
77
],
78
"dataFiles": [
79
{
80
"sequence": "5",
81
"description": "XBRL INSTANCE DOCUMENT",
82
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231.xml",
83
"type": "EX-101.INS",
84
"size": "1561458"
85
},
86
{
87
"sequence": "6",
88
"description": "XBRL TAXONOMY EXTENSION SCHEMA",
89
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231.xsd",
90
"type": "EX-101.SCH",
91
"size": "70974"
92
},
93
{
94
"sequence": "7",
95
"description": "XBRL TAXONOMY EXTENSION CALCULATION LINKBASE",
96
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231_cal.xml",
97
"type": "EX-101.CAL",
98
"size": "49944"
99
},
100
{
101
"sequence": "8",
102
"description": "XBRL TAXONOMY EXTENSION DEFINITION LINKBASE",
103
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231_def.xml",
104
"type": "EX-101.DEF",
105
"size": "464656"
106
},
107
{
108
"sequence": "9",
109
"description": "XBRL TAXONOMY EXTENSION LABEL LINKBASE",
110
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231_lab.xml",
111
"type": "EX-101.LAB",
112
"size": "399474"
113
},
114
{
115
"sequence": "10",
116
"description": "XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE",
117
"documentUrl": "/Archives/edgar/data/924383/000143774920002201/lrad-20191231_pre.xml",
118
"type": "EX-101.PRE",
119
"size": "505337"
120
}
121
]
122
},
123
{
124
"id": "df49e5e7adce70be6673b54d616f51a2",
125
"accessionNo": "0001104659-20-015211",
126
"cik": "1529463",
127
"ticker": "FTSI",
128
"companyName": "FTS International, Inc.",
129
"companyNameLong": "FTS International, Inc. (Issuer)",
130
"formType": "4",
131
"periodOfReport": "2020-02-06",
132
"description": "Form 4 - Statement of changes in beneficial ownership of securities",
133
"filedAt": "2020-02-10T21:49:01-05:00",
134
"linkToTxt": "https://www.sec.gov/Archives/edgar/data/1529463/0001104659-20-015211.txt",
135
"linkToHtml": "https://www.sec.gov/Archives/edgar/data/1529463/0001104659-20-015211-index.htm",
136
"linkToFilingDetails": "https://www.sec.gov/Archives/edgar/data/1529463/000110465920015211/xslF345X03/a4.xml",
137
"entities": [
138
{
139
"companyName": "FTS International, Inc. (Issuer)",
140
"cik": "0001529463",
141
"irsNo": "451610731",
142
"stateOfIncorporation": "DE",
143
"fiscalYearEnd": "1231",
144
"sic": "1389 Oil & Gas Field Services, NEC"
145
},
146
{
147
"companyName": "Petersen Buddy (Reporting)",
148
"cik": "0001700869",
149
"type": "4",
150
"act": "34",
151
"fileNo": "001-38382",
152
"filmNo": "20593681"
153
}
154
],
155
"documentFormatFiles": [
156
{
157
"sequence": "1",
158
"description": "4",
159
"documentUrl": "https://www.sec.gov/Archives/edgar/data/1529463/000110465920015211/xslF345X03/a4.xml",
160
"type": "4",
161
"size": " "
162
},
163
{
164
"sequence": "1",
165
"description": "4",
166
"documentUrl": "https://www.sec.gov/Archives/edgar/data/1529463/000110465920015211/a4.xml",
167
"type": "4",
168
"size": "3459"
169
},
170
{
171
"sequence": " ",
172
"description": "Complete submission text file",
173
"documentUrl": "https://www.sec.gov/Archives/edgar/data/1529463/000110465920015211/0001104659-20-015211.txt",
174
"type": " ",
175
"size": "5101"
176
}
177
],
178
"dataFiles": []
179
},
180
{
181
"id": "b5f3f0e95d890fd3107b83ec2d6bc115",
182
"accessionNo": "0001193125-20-030183",
183
"cik": "814453",
184
"ticker": "NWL",
185
"companyName": "NEWELL BRANDS INC.",
186
"companyNameLong": "NEWELL BRANDS INC. (Filer)",
187
"formType": "8-K/A",
188
"periodOfReport": "2020-02-04",
189
"description": "Form 8-K/A - Current report: [Amend] - Item 5.02",
190
"items": [
191
"Item 5.02: Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers: Compensatory Arrangements of Certain Officers"
192
],
193
"filedAt": "2020-02-10T21:59:39-05:00",
194
"linkToTxt": "https://www.sec.gov/Archives/edgar/data/814453/0001193125-20-030183.txt",
195
"linkToHtml": "https://www.sec.gov/Archives/edgar/data/814453/0001193125-20-030183-index.htm",
196
"linkToFilingDetails": "https://www.sec.gov/ix?doc=/Archives/edgar/data/814453/000119312520030183/d884349d8ka.htm",
197
"entities": [
198
{
199
"companyName": "NEWELL BRANDS INC. (Filer)",
200
"cik": "0000814453",
201
"irsNo": "363514169",
202
"stateOfIncorporation": "DE",
203
"fiscalYearEnd": "1231",
204
"type": "8-K/A",
205
"act": "34",
206
"fileNo": "001-09608",
207
"filmNo": "20593687",
208
"sic": "3089 Plastics Products, NEC"
209
}
210
],
211
"documentFormatFiles": [
212
{
213
"sequence": "1",
214
"description": "FORM 8-K/A",
215
"documentUrl": "https://www.sec.gov/ix?doc=/Archives/edgar/data/814453/000119312520030183/d884349d8ka.htm",
216
"type": "8-K/A",
217
"size": "29035"
218
},
219
{
220
"sequence": " ",
221
"description": "Complete submission text file",
222
"documentUrl": "https://www.sec.gov/Archives/edgar/data/814453/000119312520030183/0001193125-20-030183.txt",
223
"type": " ",
224
"size": "152541"
225
}
226
],
227
"dataFiles": [
228
{
229
"sequence": "2",
230
"description": "XBRL TAXONOMY EXTENSION SCHEMA",
231
"documentUrl": "/Archives/edgar/data/814453/000119312520030183/nwl-20200204.xsd",
232
"type": "EX-101.SCH",
233
"size": "3065"
234
},
235
{
236
"sequence": "3",
237
"description": "XBRL TAXONOMY EXTENSION LABEL LINKBASE",
238
"documentUrl": "/Archives/edgar/data/814453/000119312520030183/nwl-20200204_lab.xml",
239
"type": "EX-101.LAB",
240
"size": "18079"
241
},
242
{
243
"sequence": "4",
244
"description": "XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE",
245
"documentUrl": "/Archives/edgar/data/814453/000119312520030183/nwl-20200204_pre.xml",
246
"type": "EX-101.PRE",
247
"size": "11383"
248
},
249
{
250
"sequence": "9",
251
"description": "EXTRACTED XBRL INSTANCE DOCUMENT",
252
"documentUrl": "/Archives/edgar/data/814453/000119312520030183/d884349d8ka_htm.xml",
253
"type": "XML",
254
"size": "3470"
255
}
256
]
257
}
258
]
259
}
FAQ
Common questions about querying the SEC EDGAR Filing Search API, the response shape, and the bulk archives.
How do I pull the most recent quarterly reports filed with the SEC, sorted by filing time?
To retrieve the latest quarterly reports, use the Query API endpoint (https://api.sec-api.io). The form type filter is the EDGAR code for quarterly reports, so the value of formType should be 10-Q. The endpoint returns filing metadata objects whose formType matches the query, with their accession number (accessionNo), filer identifiers (cik, ticker, companyName), and the EDGAR acceptance timestamp (filedAt).
The default sort already orders results by filedAt in descending order (newest first), so no custom sort is needed unless you want to override it. Set size up to the maximum of 50 per response, and step through pages by increasing from in increments of 50.
How do I retrieve every SEC filing made by a specific company using its ticker symbol?
To pull all filings disclosed by a specific company, search the Query API endpoint (https://api.sec-api.io) for filings whose ticker matches the symbol of interest, for example AAPL for Apple. Ticker matching is case-insensitive, so AAPL and aapl return the same results. Each result includes the filer's identifiers (cik, ticker, companyName) and the EDGAR metadata (accessionNo, formType, filedAt, linkToFilingDetails).
For long historical searches, ticker-based queries can miss filings made when the company traded under a different symbol or filed under a separate share-class ticker. In those cases, resolve the ticker to a CIK first using the /mapping endpoint and then query on cik instead. If the universe contains more than 10,000 filings, split the query by a filedAt date range and paginate within each window using from in steps of size.
How do I look up all filings from a company when I only know its CIK identifier?
To pull every filing for a company by its CIK, query the Query API endpoint (https://api.sec-api.io) with the value of cik set to the issuer's CIK with the leading zeros removed — for example, Apple's CIK 0000320193 should be supplied as 320193. The response returns each filing's accessionNo, formType, filedAt, linkToFilingDetails, and the full entities array describing every party referenced on the filing.
CIK-based searches are the recommended approach for historical work because they survive ticker changes and cover all share classes the company has ever filed under. Use size up to 50 per response and increment from to paginate; if more than 10,000 filings match, split the query by filedAt date ranges.
How do I fetch filings for a basket of companies in one request?
To fetch filings for several companies at once, query the Query API endpoint (https://api.sec-api.io) with the value of ticker set to a parenthesized list of the symbols of interest, for example AAPL, MSFT, NVDA, and TSLA grouped together. The endpoint returns all matching filings interleaved, each carrying its own ticker, cik, companyName, formType, and filedAt.
The same parenthesized-list shape works for cik, which is the safer choice when any of the basket companies has changed ticker over the historical window you are searching. Pagination follows the standard pattern of size up to 50 and from incremented by size.
How do I retrieve the metadata for a single filing when I already know its accession number?
To retrieve a specific filing's metadata, query the Query API endpoint (https://api.sec-api.io) with the value of accessionNo set to the EDGAR accession number of the filing, for example 0001193125-23-265616. The response will return the matching filing object with its formType, filedAt, periodOfReport, linkToFilingDetails, documentFormatFiles, dataFiles, and the full entities array.
Note that the endpoint may return more than one filing object for a single accession number: for filings such as Form 4 that reference multiple parties (issuer and reporting person), the API creates a separate result per entity, each with its own internal id but the same accessionNo.
How do I find all filings published within a specific date range?
To list filings within a date window, query the Query API endpoint (https://api.sec-api.io) and constrain filedAt to the desired window — for instance, restrict filedAt to dates between 2022-01-01 and 2022-12-31 to retrieve every filing accepted by EDGAR during calendar year 2022. The bounds use the YYYY-MM-DD format and are inclusive on both ends.
If the window matches more than 10,000 filings, split it into smaller sub-windows (for example month by month) and paginate within each sub-window using from in steps of size. Each result carries the precise acceptance timestamp on filedAt, which is reported in Eastern Time.
How do I narrow a search down to a one-hour publication window on a specific day?
To target a specific hour of the day, query the Query API endpoint (https://api.sec-api.io) and constrain filedAt with timestamps in the YYYY-MM-DDTHH:MM:SS format — for example, set the lower bound to 2021-09-15T14:00:00 and the upper bound to 2021-09-15T15:00:00 to retrieve filings accepted between 2:00 PM and 3:00 PM on September 15, 2021. Both bounds are inclusive.
You do not need to include a timezone offset: the API automatically interprets the timestamps in Eastern Time (the EDGAR system's reference timezone). The filedAt value returned on each filing carries the explicit offset (for example 2021-09-15T14:30:00-04:00) reflecting daylight savings as applicable.
How do I find all filings from companies operating in a particular industry?
To filter by industry, query the Query API endpoint (https://api.sec-api.io) and constrain the nested SIC code on the entities array — the value of entities.sic should be the four-digit SIC code of the industry, for example 3714 for motor vehicle parts and accessories or 6022 for state commercial banks. The SIC code is reported on the filer entity inside each filing's entities array.
Combine the industry filter with a formType constraint to narrow the scope further — for example, restrict to annual reports so that formType is 10-K. Each result's entities[0].sic field carries the matched SIC code and its plain-text description.
How do I restrict a search to filers incorporated in a specific U.S. state?
To restrict by state of incorporation, query the Query API endpoint (https://api.sec-api.io) and constrain the nested state field on the entities array — the value of entities.stateOfIncorporation should be the two-letter state code, for example DE for Delaware or NJ for New Jersey. The state is recorded on each entity inside the filing's entities array.
This filter matches the state on any entity referenced by the filing, which for most form types is the filer or issuer. Combine it with formType or filedAt to narrow the result set further.
How do I find filings disclosing material corporate events such as quarterly earnings announcements?
To locate quarterly earnings announcements, query the Query API endpoint (https://api.sec-api.io) for current-event reports — the value of formType should be 8-K — and constrain the item codes so that items contains 2.02, the EDGAR item number for Results of Operations and Financial Condition. The endpoint returns Form 8-K filings whose items array includes a string starting with Item 2.02, along with the filer's ticker, cik, companyName, and the link to the filing detail page (linkToFilingDetails).
The earnings release itself is usually attached as Exhibit 99.1; you can spot it in the documentFormatFiles array by looking for an entry whose type is EX-99.1. To fetch the underlying document, pass the documentUrl to the /filing-reader endpoint of the Filing Download API.
How do I list 8-K filings that contain non-public information being selectively disclosed?
To list Regulation FD disclosures, query the Query API endpoint (https://api.sec-api.io) for current-event reports — the value of formType should be 8-K — and constrain the item codes so that items contains 7.01, the EDGAR item number for Regulation FD Disclosure. The endpoint returns Form 8-K filings whose items array includes a string starting with Item 7.01.
The disclosed material is typically attached under Exhibit 99.1 inside the filing's documentFormatFiles array (documentFormatFiles.type set to EX-99.1). Combine the item filter with a filedAt date range or a specific ticker or cik to scope the search.
How do I find 8-Ks announcing multiple specific event categories at once, such as both leadership changes and material agreements?
To find Form 8-K filings that touch on more than one event category, query the Query API endpoint (https://api.sec-api.io) for current-event reports — the value of formType should be 8-K — and constrain the item codes so that items matches any of the EDGAR item numbers of interest, for example 1.01 (Entry into a Material Definitive Agreement) together with 5.02 (Departure or Election of Directors and Certain Officers). The endpoint returns 8-K filings whose items array contains any of the requested item strings.
If you need filings that report all of the listed items rather than any of them, repeat the item constraint for each code so that every required item must be present, rather than only one. Each result's items array shows every event reported on that filing, so you can confirm which categories actually matched.
How do I find all annual reports that include the subsidiary list exhibit?
To pull annual reports that include the list of subsidiaries, query the Query API endpoint (https://api.sec-api.io) for annual reports — the value of formType should be 10-K — and constrain the nested exhibit type so that documentFormatFiles.type is EX-21, the EDGAR exhibit code for the subsidiary list. The endpoint returns the 10-K filings whose documentFormatFiles array contains an item of type EX-21.
Each matching filing's documentFormatFiles carries an entry with documentUrl pointing at the exhibit document on sec.gov. Pass that URL to the /filing-reader endpoint of the Filing Download API to retrieve the subsidiary listing itself.
How do I pull only annual reports that have machine-readable financial data attached?
To restrict to annual reports that include XBRL financials, query the Query API endpoint (https://api.sec-api.io) for annual reports — the value of formType should be 10-K — and constrain the nested data-file type on dataFiles.type to match the XBRL taxonomy file types, which all start with EX-101. (for example EX-101.INS for the instance document, EX-101.SCH for the schema, and EX-101.LAB for the label linkbase). The endpoint returns 10-K filings whose dataFiles array contains at least one entry of those types.
Each matching filing exposes the XBRL files in the dataFiles array, with the file URL on dataFiles.documentUrl and the precise taxonomy role on dataFiles.type. The instance document (EX-101.INS) is the canonical machine-readable record of the financial statements.
How do I find annual reports that contain at least one image or graphic file?
To locate annual reports that include images, query the Query API endpoint (https://api.sec-api.io) for annual reports — the value of formType should be 10-K — and constrain the nested exhibit type so that documentFormatFiles.type is GRAPHIC, the EDGAR type code assigned to image attachments such as JPGs and GIFs. The endpoint returns 10-K filings whose documentFormatFiles array contains at least one entry of type GRAPHIC.
Each graphic entry's URL is available on documentFormatFiles.documentUrl, and its size on documentFormatFiles.size. Filings can include many graphics — charts, logos, photos — and a single match is enough for the filing to surface in the results.
How do I limit a search to a specific exhibit type across all forms, for example consent letters from auditors?
To search by exhibit type across all form types, query the Query API endpoint (https://api.sec-api.io) without a formType filter and constrain documentFormatFiles.type to the exhibit code of interest — for example EX-23.1 or EX-23.2 for auditor consent letters (the EX-23 family). Wildcards are supported, so a pattern that begins with EX-23 and ends with * matches every Exhibit 23 variant. The endpoint returns filings whose documentFormatFiles array contains a matching entry, regardless of the parent formType.
Each matched filing's documentFormatFiles shows the exhibit's documentUrl, description, and size. To fetch the exhibit document itself, pass the URL to the /filing-reader endpoint of the Filing Download API.
How do I find filings disclosed by a mutual fund's specific share class or contract?
To filter by a specific share class or contract, query the Query API endpoint (https://api.sec-api.io) and constrain the nested class/contract identifier so that seriesAndClassesContractsInformation.classesContracts.classContract matches the class/contract ID of interest, for example C000120702. The endpoint returns filings whose seriesAndClassesContractsInformation array contains a classesContracts entry whose classContract matches.
The matched object also carries the human-readable class name on seriesAndClassesContractsInformation.classesContracts.name and, when available, the ticker on seriesAndClassesContractsInformation.classesContracts.ticker. Combine the class/contract filter with formType to narrow to a specific fund form, such as Form N-PORT.
How do I look up filings by the ticker of a specific mutual fund class rather than the parent fund company?
To search by a fund share class ticker, query the Query API endpoint (https://api.sec-api.io) and constrain the nested class/contract ticker so that seriesAndClassesContractsInformation.classesContracts.ticker matches the symbol of interest, for example ABRZX. The endpoint returns filings whose seriesAndClassesContractsInformation array contains a classesContracts entry whose ticker matches the supplied symbol.
Using the class-ticker path is the right approach when you want to scope results to a single share class rather than every class of the parent fund (the top-level ticker field is not populated for many mutual fund filers). Each match carries the parent series identifier on seriesAndClassesContractsInformation.series and the class name on seriesAndClassesContractsInformation.classesContracts.name.
How do I list every N-PORT filing tied to a particular fund share class?
To list N-PORT filings for a specific share class, query the Query API endpoint (https://api.sec-api.io) and combine two constraints: the form type filter so that formType is NPORT-P, and the nested class/contract identifier so that seriesAndClassesContractsInformation.classesContracts.classContract matches the class/contract ID of interest, for example C000120702. The endpoint returns the public N-PORT filings whose class/contract list includes the requested identifier.
The periodOfReport field on each Form N-PORT filing represents the quarter-end date the report covers, which is useful when you want to sort the results chronologically by reporting period rather than by filedAt.
How do I search for filings made by a company using its IRS Employer Identification Number?
To search by IRS Employer Identification Number, query the Query API endpoint (https://api.sec-api.io) and constrain the nested IRS number on the entities array so that entities.irsNo matches the EIN of interest, for example 710388071. The endpoint returns filings whose entities array contains an entry whose irsNo matches.
The EIN is recorded on the filer/issuer entity inside entities and is a stable identifier for the legal entity, which is helpful when ticker or company name searches do not disambiguate. Each result's matching entity also carries companyName, cik, and stateOfIncorporation.
How do I find filings associated with a specific SEC file number assigned to a registrant?
To search by SEC file number, query the Query API endpoint (https://api.sec-api.io) and constrain the nested file number on the entities array so that entities.fileNo matches the file number of interest, for example 001-36743. The endpoint returns filings whose entities array contains an entry whose fileNo matches the supplied value.
File numbers are issued by the SEC at registration and identify the registrant under a specific act (for example 001- prefixed numbers for Exchange Act registrations). The matched entity inside entities also carries the registrant's companyName, cik, and act.
How do I exclude amended versions of a form so I only see original filings?
To exclude amendments, query the Query API endpoint (https://api.sec-api.io) and constrain formType so that it is 10-K but is not 10-K/A. EDGAR uses the /A suffix on the form type to mark an amendment, so excluding any value that ends in /A leaves only the originals. The same approach works for other forms with amendment variants, such as 8-K versus 8-K/A or 13F-HR versus 13F-HR/A.
Each returned filing's formType field carries the exact form code, so you can confirm the result set contains no /A variants. If you instead want only amendments, invert the constraint so that formType is the /A variant.
How do I retrieve all insider transaction reports filed for a particular issuer over the past year?
To pull a year of insider transaction reports for one issuer, query the Query API endpoint (https://api.sec-api.io) and combine three constraints: the form type filter so that formType is any of 3, 4, or 5 (the EDGAR codes for initial, change-of, and annual statements of beneficial ownership); the issuer match so that cik is the issuer's CIK with leading zeros stripped, for example 320193 for Apple; and a filedAt window covering the past twelve months. The endpoint returns the insider filings whose issuer entity matches the supplied CIK within the window.
For Form 4 and similar filings, each filing references both an issuer and one or more reporting persons. The Query API creates a separate metadata object per entity, all sharing the same accessionNo, so the entities array on each result identifies which company is the issuer and which party is the reporting insider. To pull the actual transaction-level detail (codes, share counts, prices), pass the accession number to the Insider Trading dataset; the Query API itself returns only filing-level metadata.
How do I find prospectus supplements filed by a specific issuer for a structured-note program?
To pull prospectus supplements for a single issuer, query the Query API endpoint (https://api.sec-api.io) and combine a form type filter — the value of formType should be 424B2, the EDGAR code for prospectus supplements filed under Rule 424(b)(2) used by many structured-note shelf programs — with the issuer match so that cik equals the issuer's CIK with leading zeros stripped, for example 19617. The endpoint returns the matching 424B2 filings with accessionNo, filedAt, and linkToFilingDetails.
Add a filedAt window if you want to scope the search to a specific calendar window. Related 424 sub-types (424B3, 424B4, 424B5, etc.) cover other Rule 424 variants — supply the appropriate code on formType for those.
How do I retrieve all registration statements that became effective in a given year, including the underlying registration form type?
To list registration statements that became effective in a given year, query the Query API endpoint (https://api.sec-api.io) and combine three constraints: the form type filter so that formType is EFFECT (the notice EDGAR posts when a registration statement becomes effective); the underlying registration form so that registrationForm is the form of interest, for example S-3; and a filedAt window covering the year. The endpoint returns EFFECT notices whose registrationForm matches.
Each EFFECT result also carries effectivenessDate (the date the registration became effective) and, when reported, effectivenessTime. Use effectivenessDate rather than filedAt if you want the calendar of effectiveness rather than the calendar of notice acceptance.
How do I link an EFFECT notice back to the original registration filing it made effective?
To trace an EFFECT notice back to the original registration statement, look at the referenceAccessionNo field on the EFFECT filing — it carries the accession number of the underlying registration that the notice made effective. Take that value and query the Query API endpoint (https://api.sec-api.io) with accessionNo set to the referenced accession number to retrieve the full metadata of the original registration filing.
The original filing's formType will match the registrationForm reported on the EFFECT notice (for example S-3, S-1, or F-3), and linkToFilingDetails gives the URL of the underlying registration document on sec.gov.
How do I check the total number of filings that match a query before deciding how to paginate through them?
To see how many filings match a query before paginating, inspect the total object on the Query API response from the endpoint (https://api.sec-api.io). The numeric count is at total.value and the comparison qualifier is at total.relation. When total.relation is eq, the total.value is the exact match count. When total.relation is gte and total.value is 10000, the true count exceeds 10,000 and the API cannot enumerate beyond that cap.
If the relation is gte at the cap, the pagination strategy needs to slice the query into narrower sub-queries — typically by filedAt windows — and paginate each slice separately. If the value is below 10,000, a single sequence of from increments of size will retrieve the entire set.
How do I retrieve more than 10,000 matching filings for a broad query like all 8-Ks filed over a decade?
The Query API endpoint (https://api.sec-api.io) caps each query at 10,000 matches (from cannot exceed 10,000 and total.value is capped at 10,000). To exhaust a broader universe, split the query along filedAt date ranges into windows that each fall below the cap — for a decade of Form 8-K traffic, narrow windows down to a month at a time (or shorter for high-volume months) so that each window's total.value is comfortably under 10,000.
For each window, page through the results by incrementing from in steps of size (maximum 50) until no more filings come back, then advance to the next window and repeat. Sort by filedAt in ascending or descending order consistently across all windows to keep the global ordering predictable.
How do I paginate efficiently through a large result set, fetching the maximum filings allowed per request?
To paginate as efficiently as possible against the Query API endpoint (https://api.sec-api.io), set size to its maximum of 50 and step from by 50 on each subsequent call — for example 0, 50, 100, and so on — until the response returns fewer than 50 filings or from reaches the hard cap of 10000. The default sort orders results by filedAt in descending order (newest first), which is stable as long as no new filings land mid-pagination at the front of the list.
If the query matches more than 10,000 filings (visible on total.relation set to gte with total.value at 10000), pagination alone cannot reach the rest — slice the query into narrower filedAt windows and paginate each window separately.
How do I sort search results by the period a filing covers rather than when it was filed?
To sort by the reporting period instead of the EDGAR acceptance time, override the default sort against the Query API endpoint (https://api.sec-api.io) and order by periodOfReport in ascending or descending order. The periodOfReport field carries the period covered by the filing in YYYY-MM-DD format and has form-specific meaning — for example, fiscal year end for 10-K filings, transaction date for Form 4 filings, and quarter end for Form 13F filings.
Keep in mind that periodOfReport is only present on filings that report a period, so any matching filings without it will sort to the end. Combine the period sort with a filedAt window if you want a stable, bounded set across a paginated walk.