curl --request GET \
--url 'https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token='import requests
url = "https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=', 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://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"accession_number": "0000905729-26-000009",
"company_cik": "0000803164",
"company_name": "CHOICEONE FINANCIAL SERVICES INC",
"company_symbol": "COFS",
"filing_date": "2026-01-05T19:54:05Z",
"footnotes": null,
"form_type": "4",
"html_url": "https://www.sec.gov/Archives/edgar/data/0000803164/000090572926000009//Archives/edgar/data/803164/000090572926000009/0000905729-26-000009-index.htm",
"id": "695c171b1bd4be0001967659",
"is_10b5": false,
"owner": {
"insider_cik": "0001788991",
"insider_name": "Gregory McConnell",
"insider_title": "",
"is_director": true,
"is_officer": false,
"is_ten_percent_owner": false,
"raw_signature": "/s/ Sarah A. Harper, by Power of Attorney"
},
"remaining_shares": "34400",
"traded_percentage": "0.68%",
"transactions": [
{
"acquired_or_disposed": "A",
"conversion_exercise_price_derivative": "",
"date_deemed_execution": null,
"date_exercisable": null,
"date_expiration": null,
"date_transaction": "2026-01-01T00:00:00Z",
"is_derivative": false,
"ownership": "d",
"post_transaction_quantity": "34400",
"price_per_share": "29.52",
"remaining_underlying_shares": "",
"security_title": "Common Stock",
"shares": "233",
"transaction_code": "a",
"transaction_id": "0000803164_0000905729-26-000009_nd_t_0",
"underlying_security_title": "",
"underlying_shares": "",
"voluntarily_reported": false
}
],
"updated": 1767642907
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
Insider Transaction
Returns insider transaction data from SEC Form 4 filings. Use /filings endpoint for grouped filing view (transactions nested under each filing) or /transactions endpoint for flattened individual transaction view. Both endpoints support the same query parameters.
curl --request GET \
--url 'https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token='import requests
url = "https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=', 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://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.benzinga.com/api/v1/sec/insider_transactions/{view_type}?token=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"accession_number": "0000905729-26-000009",
"company_cik": "0000803164",
"company_name": "CHOICEONE FINANCIAL SERVICES INC",
"company_symbol": "COFS",
"filing_date": "2026-01-05T19:54:05Z",
"footnotes": null,
"form_type": "4",
"html_url": "https://www.sec.gov/Archives/edgar/data/0000803164/000090572926000009//Archives/edgar/data/803164/000090572926000009/0000905729-26-000009-index.htm",
"id": "695c171b1bd4be0001967659",
"is_10b5": false,
"owner": {
"insider_cik": "0001788991",
"insider_name": "Gregory McConnell",
"insider_title": "",
"is_director": true,
"is_officer": false,
"is_ten_percent_owner": false,
"raw_signature": "/s/ Sarah A. Harper, by Power of Attorney"
},
"remaining_shares": "34400",
"traded_percentage": "0.68%",
"transactions": [
{
"acquired_or_disposed": "A",
"conversion_exercise_price_derivative": "",
"date_deemed_execution": null,
"date_exercisable": null,
"date_expiration": null,
"date_transaction": "2026-01-01T00:00:00Z",
"is_derivative": false,
"ownership": "d",
"post_transaction_quantity": "34400",
"price_per_share": "29.52",
"remaining_underlying_shares": "",
"security_title": "Common Stock",
"shares": "233",
"transaction_code": "a",
"transaction_id": "0000803164_0000905729-26-000009_nd_t_0",
"underlying_security_title": "",
"underlying_shares": "",
"voluntarily_reported": false
}
],
"updated": 1767642907
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
{
"data": [
{
"accession_number": "0000905729-26-000009",
"company_cik": "0000803164",
"company_name": "CHOICEONE FINANCIAL SERVICES INC",
"company_symbol": "COFS",
"filing_date": "2026-01-05T19:54:05Z",
"footnotes": null,
"form_type": "4",
"html_url": "https://www.sec.gov/Archives/edgar/data/0000803164/000090572926000009//Archives/edgar/data/803164/000090572926000009/0000905729-26-000009-index.htm",
"id": "695c171b1bd4be0001967659",
"is_10b5": false,
"owner": {
"insider_cik": "0001788991",
"insider_name": "Gregory McConnell",
"insider_title": "",
"is_director": true,
"is_officer": false,
"is_ten_percent_owner": false,
"raw_signature": "/s/ Sarah A. Harper, by Power of Attorney"
},
"remaining_shares": "34400",
"traded_percentage": "0.68%",
"transactions": [
{
"acquired_or_disposed": "A",
"conversion_exercise_price_derivative": "",
"date_deemed_execution": null,
"date_exercisable": null,
"date_expiration": null,
"date_transaction": "2026-01-01T00:00:00Z",
"is_derivative": false,
"ownership": "d",
"post_transaction_quantity": "34400",
"price_per_share": "29.52",
"remaining_underlying_shares": "",
"security_title": "Common Stock",
"shares": "233",
"transaction_code": "a",
"transaction_id": "0000803164_0000905729-26-000009_nd_t_0",
"underlying_security_title": "",
"underlying_shares": "",
"voluntarily_reported": false
}
],
"updated": 1767642907
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
Authorizations
Path Parameters
Response format: 'filings' returns grouped filing view with transactions nested, 'transactions' returns flattened individual transaction view
filings, transactions Query Parameters
Page offset. For optimization, performance and technical reasons, page offsets are limited from 0 - 100000. Limit the query results by other parameters such as date. Default is 0
Number of results returned. Limit 1000
Start date in YYYY-MM-DD format
End date in YYYY-MM-DD format
Records last Updated Unix timestamp (UTC). This will force the sort order to be Greater Than or Equal to the timestamp indicated
Date in YYYY-MM-DD format
Chamber
House, Senate Fields
Search keys type
symbol, accession_number, cik, id Search keys
Display
flat, nested Response
Insider Transaction data. Response structure varies by endpoint: /filings returns nested filing data, /transactions returns flattened transaction data
Show child attributes
Show child attributes
Was this page helpful?