Retrieve SEC Form 144 filings related to restricted and control securities sales using the API. Access structured real-time filing data, including issuer, seller, broker, and securities transaction details directly from SEC sources.
All requests require an API token in the Authorization header.
Authorization: AUTH_TOKEN
| Parameter | Type | Required | Description |
|---|---|---|---|
| query_type | string | No |
Search type.
Supported:
|
| query_value | string | Yes | Search value based on query_type |
| from | integer | Yes | Pagination starting offset |
| size | integer | Yes | Number of records to return (Maximum:100) |
| sort_order | string | Yes | ASC or DESC |
{
"query_type": "cik",
"query_value": "320193",
"from": 0,
"size": 10,
"sort_order": "DESC"
}
<?php
$url = "https://api.secfilingdata.com/v1/filings/form144/";
$auth_token = 'AUTH_TOKEN';
$postData = array(
'query_type' => 'cik',
'query_value' => '320193',
'from' => 0,
'size' => 10,
'sort_order' => 'DESC'
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($postData));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Authorization: ' . $auth_token,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
import requests
url = "https://api.secfilingdata.com/v1/filings/form144/"
headers = {
"Content-Type": "application/json",
"Authorization": "AUTH_TOKEN"
}
payload = {
"query_type": "cik",
"query_value": "320193",
"from": 0,
"size": 10,
"sort_order": "DESC"
}
response = requests.post(
url,
headers=headers,
json=payload
)
print(response.json())
const url = "https://api.secfilingdata.com/v1/filings/form144/";
const payload = {
query_type: "cik",
query_value: "320193",
from: 0,
size: 10,
sort_order: "DESC"
};
fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "AUTH_TOKEN"
},
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
const axios = require("axios");
const url = "https://api.secfilingdata.com/v1/filings/form144/";
const payload = {
query_type: "cik",
query_value: "320193",
from: 0,
size: 10,
sort_order: "DESC"
};
axios.post(url, payload, {
headers: {
"Content-Type": "application/json",
"Authorization": "AUTH_TOKEN"
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
curl --location 'https://api.secfilingdata.com/v1/filings/form144/' \
--header 'Content-Type: application/json' \
--header 'Authorization: AUTH_TOKEN' \
--data '{
"query_type":"cik",
"query_value":"320193",
"from":0,
"size":10,
"sort_order":"DESC"
}'
package main
import (
"bytes"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
url := "https://api.secfilingdata.com/v1/filings/form144/"
payload := []byte(`{
"query_type":"cik",
"query_value":"320193",
"from":0,
"size":10,
"sort_order":"DESC"
}`)
req, _ := http.NewRequest(
"POST",
url,
bytes.NewBuffer(payload),
)
req.Header.Set(
"Content-Type",
"application/json",
)
req.Header.Set(
"Authorization",
"AUTH_TOKEN",
)
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;
public class Main {
public static void main(String[] args)
throws Exception {
URL url = new URL(
"https://api.secfilingdata.com/v1/filings/form144/"
);
HttpURLConnection conn =
(HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty(
"Content-Type",
"application/json"
);
conn.setRequestProperty(
"Authorization",
"AUTH_TOKEN"
);
conn.setDoOutput(true);
String jsonInputString = "{"
+ "\"query_type\":\"cik\","
+ "\"query_value\":\"320193\","
+ "\"from\":0,"
+ "\"size\":10,"
+ "\"sort_order\":\"DESC\""
+ "}";
try(OutputStream os =
conn.getOutputStream()) {
byte[] input =
jsonInputString.getBytes("utf-8");
os.write(input, 0, input.length);
}
Scanner scanner =
new Scanner(conn.getInputStream());
while(scanner.hasNext()) {
System.out.println(
scanner.nextLine()
);
}
scanner.close();
}
}
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
var client = new HttpClient();
client.DefaultRequestHeaders.Add(
"Authorization",
"AUTH_TOKEN"
);
var json = @"{
""query_type"": ""cik"",
""query_value"": ""320193"",
""from"": 0,
""size"": 10,
""sort_order"": ""DESC""
}";
var content = new StringContent(
json,
Encoding.UTF8,
"application/json"
);
var response = await client.PostAsync(
"https://api.secfilingdata.com/v1/filings/form144/",
content
);
var result =
await response.Content
.ReadAsStringAsync();
Console.WriteLine(result);
}
}
require 'net/http'
require 'json'
require 'uri'
url = URI(
"https://api.secfilingdata.com/v1/filings/form144/"
)
http = Net::HTTP.new(
url.host,
url.port
)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] =
"application/json"
request["Authorization"] =
"AUTH_TOKEN"
request.body = {
query_type: "cik",
query_value: "320193",
from: 0,
size: 10,
sort_order: "DESC"
}.to_json
response = http.request(request)
puts response.body
[
{
"issuerInfo": {
"issuerCik": "0001851112",
"issuerName": "RISKIFIED LTD.",
"secFileNumber": "001-40692",
"issuerAddress": {
"street1": "220 5TH AVENUE",
"city": "NEW YORK",
"stateOrCountry": "NY",
"zipCode": "10001"
},
"issuerContactPhone": "(203) 300-9264",
"nameOfPersonForWhoseAccountTheSecuritiesAreToBeSold": "Qumra Capital Israel I Ltd.",
"relationshipsToIssuer": "Director"
},
"securitiesInformation": [
{
"securitiesClassTitle": "\t Class A ordinary shares",
"brokerOrMarketMakerDetails": {
"name": "Oppenheimer & Co. Inc.",
"address": {
"street1": "85 Broad st. ",
"city": "New York",
"stateOrCountry": "NY",
"zipCode": "10004"
}
},
"numberOfUnitsToBeSold": 500000,
"aggregateMarketValue": 2445000,
"noOfUnitsOutstanding": 104034048,
"approxSaleDate": "2026-05-21",
"securitiesExchangeName": "Nadaq"
}
],
"securitiesToBeSold": [
{
"securitiesClassTitle": "Class A ordinary shares",
"acquiredDate": "2016-01-31",
"natureOfAcquisitionTransaction": "Private Placement",
"nameOfPersonFromWhomAcquired": "From the Issuer",
"isGiftTransaction": false,
"amountOfSecuritiesAcquired": 312500,
"paymentDate": "2016-01-31",
"natureOfPayment": "Cash"
},
{
"securitiesClassTitle": "Class A ordinary shares",
"acquiredDate": "2020-05-05",
"natureOfAcquisitionTransaction": "Private Placement",
"nameOfPersonFromWhomAcquired": "From the Issuer",
"isGiftTransaction": false,
"amountOfSecuritiesAcquired": 187500,
"paymentDate": "2020-05-05",
"natureOfPayment": "Cash"
}
],
"nothingToReportFlagOnSecuritiesSoldInPast3Months": true,
"securitiesSoldInPast3Months": [],
"remarks": "",
"noticeSignature": {
"noticeDate": "2026-05-21",
"planAdoptionDates": [],
"signature": "Qumra Capital Israel I Ltd."
}
}
]
Content-Type: application/json
json_encode($postData)
| Status Code | Description |
|---|---|
| 200 | Successful request |
| 204 | No results found |
| 400 | Invalid request parameters |
| 401 | Unauthorized / Invalid token |
| 500 | Internal server error |