EDGAR Form 13F data sets (index)
GET /api/edgar-13f-datasetsThe SEC's bulk Form 13F Data Sets: every quarterly (2013Q2-2023Q4) and rolling three-month (2024-) archive the SEC publishes, newest first, with its window, size and download URL, plus the seven tables each archive carries (SUBMISSION, COVERPAGE, OTHERMANAGER, OTHERMANAGER2, SIGNATURE, SUMMARYPAGE, INFOTABLE) and the readme. Read from sec.gov's own listing, cached 6 hours. Pair with edgar-13f-dataset-head to read a bounded head of one table without downloading the archive.
Input
| Field | Type | Description |
|---|---|---|
limit | number | Data sets to return, newest first (1-200, default 60). |
Example output
{
"total": 54,
"count": 1,
"latest": "01jun2026-31aug2026",
"dataSets": [
{
"id": "01jun2026-31aug2026",
"from": "2026-06-01",
"to": "2026-08-31",
"quarter": null,
"label": "2026 June July August 13F",
"file": "01jun2026-31aug2026_form13f.zip",
"url": "https://www.sec.gov/files/datastandardsinnovation/data/form-13f-data-sets/01jun2026-31aug2026_form13f.zip",
"sizeMb": 96.05
}
],
"tables": [
"SUBMISSION",
"COVERPAGE",
"OTHERMANAGER",
"OTHERMANAGER2",
"SIGNATURE",
"SUMMARYPAGE",
"INFOTABLE"
],
"readmeUrl": "https://www.sec.gov/files/form_13f_readme.pdf",
"source": "https://www.sec.gov/data-research/sec-markets-data/form-13f-data-sets",
"note": "Each data set is one zip of seven TSV tables flattened from every 13F filed in the window."
}
Try it - see the 402 challenge (free)
curl -i "https://agent402.tools/api/edgar-13f-datasets?limit=3"
The response is HTTP 402 Payment Required with exact payment requirements. Any x402 v2 client pays automatically and retries:
Paid call (JavaScript agent)
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
import { metaTitle, metaDescription } from "./seo-meta.js";
const client = new x402Client();
client.setSpendControls?.(false); // @x402/core 2.23+ refuses anything over $1 or off the pegged-asset list by default; keep your own ceiling in code instead
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agent402.tools/api/edgar-13f-datasets?limit=3");
Related tools
US gov dataset search
GET /api/gov-dataSearch 300,000+ US government datasets on catalog.data.gov (Catalog API): titles, publishing org, formats, and direct re…
try in playground →US weather alerts
GET /api/weather-alertsActive National Weather Service alerts for a US state as clean JSON: event, severity, headline, affected areas, onset/ex…
try in playground →Recent earthquakes (USGS)
GET /api/earthquakesReal-time USGS earthquake feed: magnitude, place, time, depth, coordinates. Live government data, no key. ?minMag=4.5&pe…
try in playground →