Skip to main content

Getting Started

Omni Datastream exposes the same SEC workflows over REST, CLI, JS, Python, and hosted MCP.

First production checks

  1. Verify API health:
curl https://api.secapi.ai/healthz
curl https://api.secapi.ai/readyz
  1. Export your API key as OMNI_DATASTREAM_API_KEY
  2. Make one issuer-resolution request, one filing request, and one statement request
  3. Record the Request-Id header from the first successful response so support can trace the session if needed

API quickstart

curl -H "x-api-key: $OMNI_DATASTREAM_API_KEY" \
  "https://api.secapi.ai/v1/entities/resolve?ticker=AAPL"

curl -H "x-api-key: $OMNI_DATASTREAM_API_KEY" \
  "https://api.secapi.ai/v1/filings/latest?ticker=AAPL&form=10-K"

curl -H "x-api-key: $OMNI_DATASTREAM_API_KEY" \
  "https://api.secapi.ai/v1/statements/balance_sheet?ticker=AAPL&period=annual&limit=1"

JavaScript quickstart

npm install @omni-datastream/sdk-js
import { OmniDatastreamClient } from "@omni-datastream/sdk-js"

const client = new OmniDatastreamClient({
  apiKey: process.env.OMNI_DATASTREAM_API_KEY!,
})

const filing = await client.latestFiling({ ticker: "AAPL", form: "10-K" })
console.log(filing.id, filing.provenance.accessionNumber)

Python quickstart

from omni_datastream_py import OmniDatastreamClient

client = OmniDatastreamClient(
    api_key="YOUR_API_KEY",
    base_url="https://api.secapi.ai",
)

filing = client.latest_filing(ticker="AAPL", form="10-K")
print(filing["id"], filing["provenance"]["accessionNumber"])

CLI quickstart

omni-sec me --json
omni-sec filings latest --ticker AAPL --form 10-K --json
omni-sec statements get --ticker AAPL --statement income-statement --period annual --json

MCP quickstart

  • MCP server: https://api.secapi.ai/mcp
  • install metadata: https://api.secapi.ai/mcp
  • Protected resource metadata: https://api.secapi.ai/.well-known/oauth-protected-resource
  • Authorization server metadata: https://api.secapi.ai/.well-known/oauth-authorization-server

First tools to call

  • entities.resolve
  • filings.search
  • filings.latest
  • sections.get
  • facts.get
  • statements.get

Next docs to read

  • /docs/give-this-prompt-to-your-agent
  • /docs/first-request-flows
  • /docs/advanced-quickstarts
  • /docs/auth-and-pricing
  • /docs/migrate-from-sec-api
  • /docs/migrate-from-financialdatasets-ai
  • /docs/troubleshooting
  • /docs/javascript-sdk
  • /docs/benchmark-workflows
  • /docs/coverage-and-depth
  • /docs/freshness-and-trust
  • /docs/enterprise-commercial
  • /docs/design-partner-support-packet
  • /docs/support-admin