Ownership and holdings

Restricted Stock Sales - Form 144

POSThttps://api.sec-api.io/form-144

Search 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.

Read the guide for this API →

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.

Request body

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.

FieldDescription
accessionNoFiling accession number
formTypeForm type — "144" or "144/A"
filedAtFiling acceptance timestamp
previousAccessionNumberAccession number of an earlier related filing
entities.cikEntity CIK (issuer or reporting person)
entities.tickerEntity ticker symbol
entities.companyNameEntity legal name
entities.fileNoSEC file number

Response

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.

nothingToReportFlagOnSecuritiesSoldInPast3Months: boolean

Whether there have been no securities sales in the past three months.

remarks: optional string

Additional comments or remarks provided in the filing.

Status codes

200Success. The response holds total and data.
400The request body could not be parsed, the Lucene expression in query is malformed, or size is above 50.
403The API key is missing, or it is not valid.
429Too many requests. Slow the request rate and retry.
500Server error. Retry, and report it if it persists.