Endpoints
/v1/form-144
https://secfeedapi.com/v1/form-144Proposed sales of restricted and control securities: flat fields (seller, relationship, shares, market value, broker, sale date, past 3 months of sales).
| Parameter | Type | Description | Example |
|---|---|---|---|
cik | integer | CIK of the filer, which on Form 144 is usually the person selling, not the issuer. | 1870974 |
startDate | string | Earliest filing date, YYYY-MM-DD. | 2026-10-01 |
endDate | string | Latest filing date, YYYY-MM-DD. | 2026-10-09 |
formType | string | 144 or 144/A. | 144 |
flat.<field> | string or number | Exact match on a flat field, or flat.<field>__gte / __lte for numeric ranges. | flat.aggregateMarketValue__gte=1000000 |
data.<path> | string | Exact match on any value in the original XML, by dotted path. | data.primary_doc.formData.issuerInfo.issuerCik=0001045810 |
fields | string | Set to flat to drop the full XML and return only the flat fields. | flat |
from | integer | Offset for paging. Default 0. | 20 |
size | integer | Filings per page, up to 100. Default 20. | 20 |
- To filter by issuer, use data.primary_doc.formData.issuerInfo.issuerCik with the 10 digit zero padded CIK, or flat.issuerName with the exact name.
Request examples
Every response below is real output from the API, trimmed to the first records.
Latest notices, flat fields only
fields=flat keeps the response small; drop it to get the full filing under data.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?fields=flat&size=2"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/form-144",
params={'fields': 'flat', 'size': '2'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"total": 2629,
"filings": [
{
"accessionNo": "0001921094-26-001086",
"formType": "144",
"filedAt": "2026-10-13",
"cik": 1870974,
"companyName": "Ghamsari Nima",
"flat": {
"issuerCik": "1855747",
"issuerName": "Blend Labs, Inc.",
"seller": "Ghamsari Nima",
"relationship": [
"Officer",
"Director"
],
"securityClass": "Common",
"broker": "Charles Schwab & Co., Inc.",
"sharesToSell": 25098.0,
"aggregateMarketValue": 24474.0,
"sharesOutstanding": 233256934.0,
"approxSaleDate": "10/12/2026",
"exchange": "NYSE",
"acquiredDate": "11/20/2025",
"natureOfAcquisition": "Restricted Stock Lapse",
"acquiredFrom": "BLEND LABS, INC.",
"isGift": false,
"salesPast3Months": [
{
"seller": "NIMA GHAMSARI",
"saleDate": "09/14/2026",
"shares": 17731.0,
"grossProceeds": 25267.0
},
{
"seller": "NIMA GHAMSARI",
"saleDate": "09/21/2026",
"shares": 21009.0,
"grossProceeds": 25024.0
}
],
"planAdoptionDates": [
"06/15/2026"
]
}
},
{
"accessionNo": "0001921094-26-001085",
"formType": "144",
"filedAt": "2026-10-13",
"cik": 1830016,
"companyName": "Nonko Eugene",
"flat": {
"issuerCik": "1818383",
"issuerName": "MediaAlpha, Inc.",
"seller": "Nonko Eugene",
"relationship": [
"Director"
],
...Planned sales worth over $1 million
aggregateMarketValue is the seller's estimate at filing time.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?flat.aggregateMarketValue__gte=1000000&fields=flat&size=2"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/form-144",
params={'flat.aggregateMarketValue__gte': '1000000', 'fields': 'flat', 'size': '2'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"total": 858,
"filings": [
{
"accessionNo": "0001921094-26-001084",
"formType": "144",
"filedAt": "2026-10-13",
"cik": 1564475,
"companyName": "Olivan Javier",
"flat": {
"issuerCik": "1326801",
"issuerName": "Meta Platforms, Inc.",
"seller": "Olivan Javier",
"relationship": [
"Officer"
],
"securityClass": "Class A Common Shares",
"broker": "Charles Schwab & Co., Inc.",
"sharesToSell": 1575.0,
"aggregateMarketValue": 1146757.0,
"sharesOutstanding": 2205128509.0,
"approxSaleDate": "10/12/2026",
"exchange": "NASDAQ",
"acquiredDate": "02/15/2017",
"natureOfAcquisition": "Restricted Stock Unit Lapse",
"acquiredFrom": "Meta Platforms, Inc.",
"isGift": false,
"salesPast3Months": [
{
"seller": "JAVIER OLIVAN",
"saleDate": "07/13/2026",
"shares": 2163.0,
"grossProceeds": 1429787.0
},
{
"seller": "JAVIER OLIVAN",
"saleDate": "07/20/2026",
"shares": 1466.0,
"grossProceeds": 946816.0
}
],
"planAdoptionDates": [
"11/17/2025"
]
}
},
{
"accessionNo": "0001958244-26-000656",
"formType": "144",
"filedAt": "2026-10-13",
"cik": 1754844,
"companyName": "CMXI B.V.",
"flat": {
"issuerCik": "1707753",
"issuerName": "Elastic N.V.",
"seller": "CMXI B.V.",
"relationship": [
"Director"
],
"securityClass": "Ordinary",
...Notices filed in a date range
Dates filter on the filing date.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?startDate=2026-10-01&endDate=2026-10-09&fields=flat&size=1"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/form-144",
params={'startDate': '2026-10-01', 'endDate': '2026-10-09', 'fields': 'flat', 'size': '1'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"total": 634,
"filings": [
{
"accessionNo": "0001950047-26-010150",
"formType": "144",
"filedAt": "2026-10-09",
"cik": 938071,
"companyName": "DUFFIELD DAVID A",
"flat": {
"issuerCik": "1327811",
"issuerName": "WORKDAY, INC.",
"seller": "DAVID A. DUFFIELD TRUST U/T/A 7/14/88",
"relationship": [
"10% Stockholder"
],
"securityClass": "Common",
"broker": "Morgan Stanley Smith Barney LLC Executive Financial Services",
"sharesToSell": 99835.0,
"aggregateMarketValue": 18750011.35,
"sharesOutstanding": 196000000.0,
"approxSaleDate": "10/09/2026",
"exchange": "NASDAQ",
"acquiredDate": "12/27/2007",
"natureOfAcquisition": "Private Placement",
"acquiredFrom": "Issuer",
"isGift": false,
"salesPast3Months": [
{
"seller": "10b5-1 Sales for DAVID A DUFFIELD TRUST U/T/A 7/14/88",
"saleDate": "10/06/2026",
"shares": 99228.0,
"grossProceeds": 18587111.12
},
{
"seller": "10b5-1 Sales for DAVID A DUFFIELD TRUST U/T/A 7/14/88",
"saleDate": "10/01/2026",
"shares": 98446.0,
"grossProceeds": 18415820.68
}
],
"planAdoptionDates": [
"12/02/2025"
]
}
}
]
}Response fields
| Field | Type | Meaning |
|---|---|---|
total | integer | Matching filings. |
filings[].accessionNo | string | Accession number. |
filings[].formType | string | 144 or 144/A. |
filings[].filedAt | string | Filing date. |
filings[].cik / companyName | mixed | Filer CIK and name (usually the seller). |
filings[].flat.issuerCik / issuerName | string | Company whose stock will be sold. |
filings[].flat.seller | string | Person for whose account the shares are sold. |
filings[].flat.relationship[] | array | Officer, Director, 10% owner and so on. |
filings[].flat.securityClass | string | Class of security. |
filings[].flat.broker / exchange | string | Broker handling the sale and the exchange. |
filings[].flat.sharesToSell | number | Shares to be sold. |
filings[].flat.aggregateMarketValue | number | Market value of those shares. |
filings[].flat.sharesOutstanding | number | Issuer shares outstanding. |
filings[].flat.approxSaleDate | string | Expected sale date, MM/DD/YYYY. |
filings[].flat.acquiredDate / natureOfAcquisition / acquiredFrom | string | How and when the shares were acquired. |
filings[].flat.isGift | boolean | The shares were received as a gift. |
filings[].flat.salesPast3Months[].seller / saleDate / shares / grossProceeds | mixed | Sales by the same seller in the prior three months. |
filings[].flat.planAdoptionDates[] | array | 10b5-1 plan adoption dates when reported. |
filings[].data.primary_doc.headerData | object | Submission header (filer CIK, live or test). |
filings[].data.primary_doc.formData.issuerInfo | object | Issuer CIK, name, file number, address, phone, seller name, relationships. |
filings[].data.primary_doc.formData.securitiesInformation | object | Class, broker with address, units to sell, market value, units outstanding, sale date, exchange. |
filings[].data.primary_doc.formData.securitiesToBeSold | object | Acquisition date, nature, source, gift flag, amount, payment date and nature. |
filings[].data.primary_doc.formData.securitiesSoldInPast3Months[] | array | Seller details, class, sale date, amount sold, gross proceeds. |
filings[].data.primary_doc.formData.nothingToReportFlagOnSecuritiesSoldInPast3Months | string | Y when there were no sales in the prior three months. |
filings[].data.primary_doc.formData.remarks | string | Free text remarks. |
filings[].data.primary_doc.formData.noticeSignature | object | Notice date, plan adoption dates and signature. |
How to
How do I see Form 144 notices for one issuer?
Filter on the issuer CIK inside the XML. It is 10 digits with leading zeros.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?data.primary_doc.formData.issuerInfo.issuerCik=0001045810&fields=flat&size=1"
How do I find Form 144 notices handled by one broker?
Match flat.broker exactly, URL encoded.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?flat.broker=Morgan%2520Stanley%2520Smith%2520Barney%2520LLC&fields=flat&size=1"
How do I see amended Form 144 notices?
Set formType=144/A.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?formType=144/A&fields=flat&size=1"
How do I filter by the filer?
cik is the filer's CIK, which for Form 144 is usually the selling person.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?cik=1870974&fields=flat&size=1"
How do I find notices where the shares were a gift?
Filter the original field isGiftTransaction=Y with a data. filter.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?data.primary_doc.formData.securitiesToBeSold.isGiftTransaction=Y&fields=flat&size=1"
How do I filter by issuer name?
Use flat.issuerName with the exact name as filed, URL encoded.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?flat.issuerName=NVIDIA%2520CORP&fields=flat&size=1"
How do I get the complete filing?
Leave out fields=flat; the full XML as JSON is under data.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?size=1"
How do I see recent sales by the same seller?
Read flat.salesPast3Months; each entry has the sale date, shares and gross proceeds.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-144?fields=flat&size=2"
Errors
- Form 144 flat filters on numeric looking text (issuerCik) and on true/false fields (isGift) currently match nothing; use data.<path> for those.
See also the error codes every endpoint shares.
Try it with your own key
500 free calls a month.