Ownership and holdings
Restricted Stock Sales - Form 144
https://api.sec-api.io/form-144Search Form 144 filings, the notices corporate insiders file before they sell restricted or control securities under Rule 144. The dataset holds more than 70,000 filings from October 2022 to present, and new filings are searchable 300 milliseconds after EDGAR publishes them.
Authentication
Send the API key either as a header or as a query parameter. The header is preferred; the query parameter exists for cases where a header cannot be set, such as opening a URL directly in a browser.
Authorization: required header
The API key on its own. Do not prefix it with Bearer or any other word.
Example Authorization: YOUR_API_KEY
token: optional query parameter
The API key, appended to the URL. Use this only when a header is not possible.
A JSON object. Content-Type must be application/json.
query: required string
The search expression in Lucene syntax, written as field:value. Every field listed under Searchable fields can be used, combined with AND, OR, NOT, ranges and wildcards.
Example issuerInfo.issuerTicker:TSLA
from: string, Maximum 10000
Index of the first result to return, used for pagination. Increment by the value of size to page through results.
Default "0"
size: string, Maximum 50
Number of Form 144 filings to return in one response.
Default "50"
sort: array of object
Sort order. Each item maps one field to an order object, for example [{ "filedAt": { "order": "desc" } }].
Default [{ "filedAt": { "order": "desc" } }]
order: string
Either asc or desc.
Searchable fields
Every field below can be used inside query. 65 fields are searchable, and they match the structure of the objects returned in the response.
| Field | Description |
|---|---|
accessionNo | Filing accession number |
formType | Form type — "144" or "144/A" |
filedAt | Filing acceptance timestamp |
previousAccessionNumber | Accession number of an earlier related filing |
entities.cik | Entity CIK (issuer or reporting person) |
entities.ticker | Entity ticker symbol |
entities.companyName | Entity legal name |
entities.fileNo | SEC file number |
A JSON object. Nested attributes are collapsed; expand one to see its fields.
total: object
How many Form 144 filings matched the query.
value: integer
Number of matching filings.
relation: string
Either eq, meaning value is exact, or gte, meaning value is a floor.
data: array of object
The matching Form 144 filings, at most size per response. Every field of a filing object is itself searchable.
id: string
System-internal unique identifier of the filing record.
accessionNo: string
Accession number of the Form 144 filing, for example 0001277575-24-000006.
fileNo: optional string
SEC file number carried on the filing, for example 001-34756.
formType: string
Form type of the filing, either 144 or 144/A.
filedAt: string
Timestamp EDGAR accepted the filing, ISO 8601 in Eastern Time, for example 2024-05-15T16:17:15-04:00.
previousAccessionNumber: optional string
Accession number of an earlier related filing, when the filing references one.
entities: array of object
Every entity named on the filing, covering the issuer and the reporting person.
issuerInfo: object
The issuer of the securities, and the person on whose account they are to be sold.
securitiesInformation: array of object
The securities the insider plans to sell.
securitiesToBeSold: array of object
How the securities proposed for sale were originally acquired.
nothingToReportFlagOnSecuritiesSoldInPast3Months: boolean
Whether there have been no securities sales in the past three months.
securitiesSoldInPast3Months: array of object
Sales of restricted or control securities in the three months before the filing.
remarks: optional string
Additional comments or remarks provided in the filing.
noticeSignature: object
The signature block of the notice.
Status codes
200 | Success. The response holds total and data. |
400 | The request body could not be parsed, the Lucene expression in query is malformed, or size is above 50. |
403 | The API key is missing, or it is not valid. |
429 | Too many requests. Slow the request rate and retry. |
500 | Server error. Retry, and report it if it persists. |