Insider Trades
curl --request POST \
--url https://win.oneshotagent.com/v1/tools/lookup/company-insider-tradesimport requests
url = "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades")
.asString();require 'uri'
require 'net/http'
url = URI("https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_bodyCompanies & finance
Insider Trades
Insider transactions reported for a company in quarterly Forms 3, 4 and 5 datasets
POST
/
v1
/
tools
/
lookup
/
company-insider-trades
Insider Trades
curl --request POST \
--url https://win.oneshotagent.com/v1/tools/lookup/company-insider-tradesimport requests
url = "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades")
.asString();require 'uri'
require 'net/http'
url = URI("https://win.oneshotagent.com/v1/tools/lookup/company-insider-trades")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_bodyLook up a company’s reported insider transactions by issuer CIK or exact ticker: insiders and roles, filing dates, transaction codes, shares and prices. For example, “Which insiders bought or sold GFS?” or “Show transaction amounts, beyond the filing documents listed by company_filings.” Quarterly Forms 3, 4 and 5 transaction filings, posted about a week after each quarter ends. The current quarter’s filings are not yet included. Filings without transaction rows are excluded. All reporting owners of a filing accompany its transactions; the source does not assign individual transaction rows to individual owners.
The API reads the stored quarterly releases; calling this tool does not contact the source. Exactly one of
cik and ticker is required. Invalid inputs and unavailable datasets are refused before payment.
Input
cik: Issuer CIK, 1 to 10 digits; exactly one of cik or ticker is requiredticker: Exact issuer ticker, case insensitive; exactly one of ticker or cik is requiredfiled_after: First filing date inclusive, YYYY-MM-DDfiled_before: Last filing date inclusive, YYYY-MM-DDcode: Transaction code, such as P or Slimit: Page size, 1-100, default 25offset: Transactions to skip, 0-10000, default 0
Result
Results are underdata. Transactions are ordered by filing date descending, then accession and source row order. total counts transaction rows before paging. Each row includes every reporting insider on its filing; joint filings are not counted twice. Owner addresses, holdings, signatures and footnotes are excluded.
as_of is the newest loaded quarter’s end. retrieved_at is when that release was acquired. Coverage states the first loaded quarter, which starts at 2024q1 during normal backfill. An empty result means no matching transactions in the loaded quarters and filters; it does not prove no insider activity occurred.
const result = await agent.tool('lookup/company-insider-trades', { cik: '1709048' });
{
"success": true,
"data": {
"issuer": {
"cik": "0001709048",
"name": "GLOBALFOUNDRIES Inc.",
"ticker": "GFS"
},
"transactions": [
{
"accession_number": "0001628280-26-063835",
"form": "4",
"filed_on": "2026-09-29",
"insiders": [
{
"name": "Raman Pradheepa",
"cik": "0002112738",
"relationships": [
"Officer"
],
"title": "Chief People Officer"
}
],
"derivative": false,
"security_title": "Ordinary Shares",
"transaction_date": "2026-09-25",
"code": "F",
"acquired_or_disposed": "D",
"shares": 2222,
"price_per_share": 49,
"shares_owned_after": 2145,
"direct_or_indirect": "D",
"nature_of_ownership": null
}
],
"total": 1,
"limit": 25,
"offset": 0,
"source": "US Securities and Exchange Commission",
"as_of": "2026-09-30",
"retrieved_at": "2026-10-28T20:43:40.000Z",
"coverage": "Quarterly Forms 3, 4 and 5 transaction filings, posted about a week after each quarter ends. The current quarter’s filings are not yet included. Filings without transaction rows are excluded. All reporting owners of a filing accompany its transactions; the source does not assign individual transaction rows to individual owners. First loaded quarter: 2024q1.",
"absence": null
}
}