Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

SEC API

REST API for retrieving SEC EDGAR filings. Returns filing metadata and direct links to official SEC documents.

Features

  • Single endpoint for all supported filing types
  • Returns structured JSON with direct SEC EDGAR URLs
  • Supports 10-K, 10-Q, 8-K, S-1, S-2, S-3, DEF14A, 13D
  • 100 requests/month on free tier
  • Example Response:
[
  {
    "symbol": "GOOG",
    "filing_type": "10-K",
    "submitted_on": "2025-02-05",
    "filing_link": "https://www.sec.gov/Archives/edgar/data/1652044/000165204425000014/goog-20241231.htm"
  }
]

Get API Key

Create an account at omkar.cloud to get your API key, and use it in requests. 100 requests are free every month.

Quick Start

curl -X GET "https://sec-api.omkar.cloud/sec?ticker=GOOG&filing=10-K" \
  -H "API-Key: YOUR_API_KEY"
[
  {
    "symbol": "GOOG",
    "filing_type": "10-K",
    "submitted_on": "2025-02-05",
    "filing_link": "https://www.sec.gov/Archives/edgar/data/1652044/000165204425000014/goog-20241231.htm"
  }
]

Installation

Python

pip install requests
import requests

response = requests.get(
    "https://sec-api.omkar.cloud/sec",
    params={"ticker": "GOOG", "filing": "10-K"},
    headers={"API-Key": "YOUR_API_KEY"}
)

filings = response.json()

Node.js

npm install axios
import axios from "axios";

const response = await axios.get("https://sec-api.omkar.cloud/sec", {
    params: { ticker: "GOOG", filing: "10-K" },
    headers: { "API-Key": "YOUR_API_KEY" }
});

const filings = response.data;

API Reference

Endpoint

GET https://sec-api.omkar.cloud/sec

Headers

Header Required Description
API-Key Yes API key from omkar.cloud/api-key

Parameters

Parameter Required Default Description
ticker Yes Stock ticker symbol
filing No 10-K Filing type

Supported Filing Types

Type Description
10-K Annual report
10-Q Quarterly report
8-K Current report (material events)
S-1 IPO registration statement
S-2 Simplified registration
S-3 Shelf registration
DEF14A Proxy statement
13D Beneficial ownership (>5%)

Response

[
  {
    "symbol": "string",
    "filing_type": "string",
    "submitted_on": "YYYY-MM-DD",
    "filing_link": "string"
  }
]
Field Type Description
symbol string Ticker symbol
filing_type string SEC form type
submitted_on string Submission date
filing_link string SEC EDGAR URL

Examples

Fetch 10-K filings

response = requests.get(
    "https://sec-api.omkar.cloud/sec",
    params={"ticker": "AAPL", "filing": "10-K"},
    headers={"API-Key": "YOUR_API_KEY"}
)

for filing in response.json():
    print(f"{filing['submitted_on']}: {filing['filing_link']}")

Fetch latest 8-K

response = requests.get(
    "https://sec-api.omkar.cloud/sec",
    params={"ticker": "TSLA", "filing": "8-K"},
    headers={"API-Key": "YOUR_API_KEY"}
)

latest = response.json()[0]

Fetch quarterly reports

const { data } = await axios.get("https://sec-api.omkar.cloud/sec", {
    params: { ticker: "MSFT", filing: "10-Q" },
    headers: { "API-Key": "YOUR_API_KEY" }
});

const lastFourQuarters = data.slice(0, 4);

Error Handling

response = requests.get(
    "https://sec-api.omkar.cloud/sec",
    params={"ticker": "INVALID"},
    headers={"API-Key": "YOUR_API_KEY"}
)

if response.status_code == 200:
    data = response.json()
    if not data:
        # No filings found
        pass
elif response.status_code == 401:
    # Invalid API key
    pass
elif response.status_code == 429:
    # Rate limit exceeded
    pass

Rate Limits

Plan Price Requests/Month
Free $0 100
Starter $16 3,000
Grow $48 15,000
Scale $148 75,000

Support

Contact Us on WhatsApp about SEC API

Contact Us on Email about SEC API