Production endpoint
Every endpoint lives under one production host. Versioned under /v1; fields are additive within a version, breaking changes ship under a new prefix.
https://api.sifting.iowss://ws.sifting.ioAn API key, a base URL, and a single request. The same authentication and rate-limiting rules apply across fundamentals and live market data.
Every endpoint lives under one production host. Versioned under /v1; fields are additive within a version, breaking changes ship under a new prefix.
https://api.sifting.iowss://ws.sifting.ioGenerate an API key from your dashboard, then send it on every request, the header form is preferred, the query parameter is accepted as a fallback.
# preferred, query strings can leak in logs
X-API-Key: sft_•••
# accepted fallback
?api_key=sft_•••Resolve a ticker through the search endpoint to verify your key is live before pulling deeper data.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/search?q=apple&limit=5"Predictable rules that hold across every product, every endpoint, every payload.
Every endpoint is pinned under /v1. Within a version, fields are additive, never removed. Breaking changes ship under a new version with a deprecation window.
Tickers are case-insensitive (AAPL = aapl). CIKs are always exposed as 10-digit zero-padded strings ("0000320193"). Accession numbers come back in dashed form ("0000320193-25-000089") and are accepted in either dashed or undashed form on input.
ISO 8601. filed_at, period_end, transaction_date are date-only (YYYY-MM-DD). accepted_at, as_of are full timestamps (YYYY-MM-DDTHH:MM:SSZ). Live-tick timestamps (t) are int64 Unix epoch milliseconds.
XBRL data carries the unit explicitly. Monetary observations come back as { value, unit } where unit is one of USD, USD/shares (EPS), shares, or pure (dimensionless ratios).
List endpoints accept ?limit (default 50, max 200; default 10, max 25 for /insiders) and ?cursor (opaque, from meta.next_cursor on the previous response). meta.next_cursor is null/omitted on the final page; meta.total carries the count and meta.as_of the snapshot timestamp.
All /v1/fnd/us/* responses negotiate gzip when the client sends Accept-Encoding: gzip. Three heavy endpoints, /financials/:ticker, /financials/:ticker/:concept, /screener/:concept/:period, require gzip and return 406 gzip_required if the client didn't ask for it.
Resolve a company across the SEC's US ticker registry and pull its profile, name, CIK, exchanges, SIC industry, and fiscal year end.
/v1/fnd/us/searchSubstring lookup over the SEC ticker registry (~13k US issuers). Matches against ticker (prefix) and company name.
qquerystringrequiredSearch term. Substring against name, prefix against ticker.
limitqueryintegeroptionalMax results. Default 25, max 100.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/search?q=apple&limit=5"{
"data": [
{ "ticker": "AAPL", "name": "Apple Inc.", "cik": "0000320193", "exchange": "Nasdaq" }
],
"meta": { "as_of": "2026-05-02T12:34:56Z" }
}/v1/fnd/us/companies/:tickerName, exchange listings, SIC industry classification, fiscal year end, and entity type for a single issuer.
tickerpathstringrequiredTicker symbol. Case-insensitive (AAPL, aapl, Aapl all resolve identically).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/companies/AAPL"{
"ticker": "AAPL",
"cik": "0000320193",
"name": "Apple Inc.",
"exchanges": ["Nasdaq"],
"other_tickers": [],
"sic_code": "3571",
"sic_description": "Electronic Computers",
"entity_type": "operating",
"fiscal_year_end": "0928"
}Form metadata for every recent SEC filing. Ten-K / 10-Q / 8-K / DEF 14A / SC 13D-G, listed, fetched by accession, and filtered by form or item code.
/v1/fnd/us/sec-filings/:tickerUp to 1000 most recent filings across all form types for a company. Filterable by form and filing-date window.
tickerpathstringrequiredTicker symbol (case-insensitive).
formquerystringoptionalComma-separated list of exact form types, e.g. 10-K,10-Q,10-K/A.
fromquerydateoptionalInclusive lower bound on filed_at (YYYY-MM-DD).
toquerydateoptionalInclusive upper bound on filed_at (YYYY-MM-DD).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from meta.next_cursor on the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/sec-filings/AAPL?form=10-K&limit=10"{
"data": [
{
"accession": "0000320193-26-000013",
"form": "10-Q",
"filed_at": "2026-05-01",
"period_end": "2026-03-28",
"accepted_at": "2026-05-01T16:30:21Z",
"items": "",
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000013/aapl-20260328.htm",
"description": "Form 10-Q",
"has_xbrl": true
}
],
"meta": { "next_cursor": "eyJvIjo1MH0", "as_of": "2026-05-02T12:34:56Z", "total": 1000 }
}/v1/fnd/us/sec-filings/:ticker/:accessionOne filing's metadata plus the full file manifest from its EDGAR archive folder.
tickerpathstringrequiredTicker symbol (case-insensitive).
accessionpathstringrequiredAccession number, accepts dashed (0000320193-26-000013) or undashed (000032019326000013).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/sec-filings/AAPL/0000320193-26-000013"{
"accession": "0000320193-26-000013",
"form": "10-Q",
"filed_at": "2026-05-01",
"period_end": "2026-03-28",
"accepted_at": "2026-05-01T16:30:21Z",
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000013/aapl-20260328.htm",
"description": "Form 10-Q",
"has_xbrl": true,
"ticker": "AAPL",
"cik": "0000320193",
"archive_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000013/",
"files": ["aapl-20260328.htm", "aapl-20260328.xsd", "Financial_Report.xlsx", "..."]
}/v1/fnd/us/events/:ticker8-K filings for material corporate events. Optionally filter by item code (substring match).
tickerpathstringrequiredTicker symbol (case-insensitive).
itemquerystringoptionalSubstring match against the comma-joined 8-K item codes for the filing (e.g. 2.02 to find earnings releases).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/events/AAPL?item=2.02&limit=10"{
"data": [
{
"accession": "0000320193-26-000010",
"filed_at": "2026-04-25",
"accepted_at": "2026-04-25T16:32:11Z",
"items": ["2.02", "9.01"],
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000010/aapl8-k.htm",
"description": "Form 8-K"
}
],
"meta": { "next_cursor": "eyJvIjo1MH0", "as_of": "2026-05-02T12:34:56Z", "total": 124 }
}/v1/fnd/us/ownership/:tickerFilings (and amendments) triggered when an investor crosses the 5% beneficial-ownership threshold. v1 returns metadata + canonical document URL; body parsing is deferred.
tickerpathstringrequiredTicker symbol (case-insensitive).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/ownership/AAPL"{
"data": [
{
"form": "SC 13G/A",
"accession": "0001104659-26-012345",
"filed_at": "2026-02-12",
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000110465926012345/sc13ga.htm",
"description": "Amendment No. 5"
}
],
"meta": { "next_cursor": null, "as_of": "2026-05-02T12:34:56Z", "total": 18 }
}/v1/fnd/us/compensation/:tickerDEF 14A filings (and amendments / additional definitive material). v1 ships metadata + canonical document URL; HTML body parsing for summary compensation tables is deferred.
tickerpathstringrequiredTicker symbol (case-insensitive).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/compensation/AAPL"{
"data": [
{
"form": "DEF 14A",
"accession": "0000320193-26-000005",
"filed_at": "2026-01-08",
"period_end": "2026-02-28",
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000005/aapl-2026def14a.htm"
}
],
"meta": { "next_cursor": null, "as_of": "2026-05-02T12:34:56Z", "total": 12 }
}/v1/fnd/us/earnings/:tickerEvery 8-K filed with item 2.02 ('Results of Operations and Financial Condition') for this company, the canonical timeline of when this company has reported earnings.
tickerpathstringrequiredTicker symbol (case-insensitive).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/earnings/AAPL?limit=20"{
"data": [
{
"accession": "0000320193-25-000077",
"filed_at": "2025-10-30",
"accepted_at": "2025-10-30T16:30:11Z",
"items": ["2.02", "9.01"],
"primary_document_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000077/aapl-20250930.htm",
"description": "Form 8-K"
}
],
"meta": { "next_cursor": "eyJvIjo1MH0", "as_of": "2026-05-02T12:34:56Z", "total": 124 }
}Extracted, machine-readable text from 10-K / 10-Q HTML, Risk Factors, MD&A, Business, Legal Proceedings, Market Risk, plus a year-over-year diff of Risk Factors so you can answer 'what changed?' without reading the full filing.
/v1/fnd/us/sec-filings/:ticker/:accession/sectionsReturns every standard 10-K / 10-Q item we could extract from a filing's primary HTML, as clean text. Missing keys mean we couldn't locate that section in this particular filing, extraction is best-effort, SEC HTML formatting varies.
tickerpathstringrequiredTicker symbol (case-insensitive).
accessionpathstringrequiredAccession number, accepts dashed (0000320193-25-000079) or undashed.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/sec-filings/AAPL/0000320193-25-000079/sections"{
"ticker": "AAPL",
"cik": "0000320193",
"accession": "0000320193-25-000079",
"form": "10-K",
"filed_at": "2025-10-31",
"sections": [
{
"section": "business",
"content": "Apple Inc. designs, manufactures and markets smartphones..."
},
{
"section": "risk-factors",
"content": "The following summarizes factors that could have a material adverse effect on the Company's business..."
}
]
}/v1/fnd/us/sec-filings/:ticker/:accession/sections/:sectionSame data as /sections but returns just one section. Smaller payload, drop straight into a single LLM prompt.
tickerpathstringrequiredTicker symbol (case-insensitive).
accessionpathstringrequiredAccession number, dashed or undashed.
sectionpathenumrequiredbusiness | risk-factors | legal-proceedings | mda | market-risk.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/sec-filings/AAPL/0000320193-25-000079/sections/risk-factors"{
"ticker": "AAPL",
"cik": "0000320193",
"accession": "0000320193-25-000079",
"form": "10-K",
"filed_at": "2025-10-31",
"section": "risk-factors",
"content": "The following summarizes factors that could have a material adverse effect on the Company's business, reputation, results of operations, financial condition and stock price..."
}/v1/fnd/us/risk-factors-diff/:tickerCompares the latest 10-K's Risk Factors against the prior year's. Paragraph-level diff with three buckets: added, removed, modified, the killer 'what changed in this company's risk profile' answer without analyst-hours of reading.
tickerpathstringrequiredTicker symbol (case-insensitive).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/risk-factors-diff/AAPL"{
"ticker": "AAPL",
"cik": "0000320193",
"current": {
"accession": "0000320193-25-000079",
"form": "10-K",
"filed_at": "2025-10-31",
"period_end": "2025-09-27"
},
"previous": {
"accession": "0000320193-24-000123",
"form": "10-K",
"filed_at": "2024-11-01",
"period_end": "2024-09-28"
},
"diff": {
"added": [
"The Company's increased reliance on AI services exposes it to..."
],
"removed": [
"Risks related to the COVID-19 pandemic..."
],
"modified": [
{
"before": "Uncertainty about, or a decline in, global or regional economic conditions can have a significant impact...",
"after": "In addition to an adverse impact on demand for the Company's products and services, uncertainty about..."
}
],
"stats": {
"before_paragraphs": 110,
"after_paragraphs": 101,
"unchanged_count": 55,
"added_count": 7,
"removed_count": 16,
"modified_count": 39
}
}
}Standardized XBRL concept data extracted from 10-K / 10-Q filings. Pull the full bundle, a single concept across periods, or a cross-sectional snapshot for one concept across every filer.
/v1/fnd/us/financials/:tickergzip requiredEvery reported XBRL concept for a company across every period and unit. Payload is large (5+ MB for a mature filer); strictly requires Accept-Encoding: gzip.
tickerpathstringrequiredTicker symbol (case-insensitive).
Accept-EncodingheaderstringrequiredMust include gzip; otherwise the endpoint returns 406 gzip_required.
curl -H "X-API-Key: $KEY" -H "Accept-Encoding: gzip" --compressed \
"https://api.sifting.io/v1/fnd/us/financials/AAPL"{
"ticker": "AAPL",
"cik": "0000320193",
"name": "Apple Inc.",
"concepts": [
{
"taxonomy": "us-gaap",
"concept": "Revenues",
"label": "Revenues",
"description": "Aggregate revenue recognized...",
"series": [
{
"value": 94836000000,
"unit": "USD",
"period_start": "2024-01-01",
"period_end": "2024-03-30",
"fiscal_year": 2024,
"fiscal_period": "Q2",
"form": "10-Q",
"accession": "0000320193-24-000089",
"filed_at": "2024-05-02"
}
]
}
]
}/v1/fnd/us/financials/:ticker/:conceptgzip requiredOne XBRL concept across every reported period for a company. Smaller than the full bundle but still gzip-required.
tickerpathstringrequiredTicker symbol (case-insensitive).
conceptpathstringrequiredXBRL tag in CamelCase (e.g. Revenues, EarningsPerShareBasic, EntityCommonStockSharesOutstanding).
taxonomyqueryenumoptionalus-gaap (default) | dei | ifrs-full | srt.
Accept-EncodingheaderstringrequiredMust include gzip.
curl -H "X-API-Key: $KEY" -H "Accept-Encoding: gzip" --compressed \
"https://api.sifting.io/v1/fnd/us/financials/AAPL/Revenues"{
"ticker": "AAPL",
"cik": "0000320193",
"taxonomy": "us-gaap",
"concept": "Revenues",
"label": "Revenues",
"description": "Aggregate revenue recognized during the period...",
"series": [
{
"value": 94836000000,
"unit": "USD",
"period_start": "2024-01-01",
"period_end": "2024-03-30",
"fiscal_year": 2024,
"fiscal_period": "Q2",
"form": "10-Q",
"accession": "0000320193-24-000089",
"filed_at": "2024-05-02"
}
]
}/v1/fnd/us/screener/:concept/:periodgzip requiredEvery filer's reported value for one concept in one period. The screener primitive, answer 'who reported the highest Revenue in Q1 2024?' in a single call.
conceptpathstringrequiredXBRL tag (e.g. Revenues, Assets).
periodpathstringrequiredSEC calendar period code (see legend below).
taxonomyqueryenumoptionalus-gaap (default) | dei | ifrs-full | srt.
unitquerystringoptionalUnit filter. Default USD. Other examples: shares, USD/shares, pure.
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
Accept-EncodingheaderstringrequiredMust include gzip.
curl -H "X-API-Key: $KEY" -H "Accept-Encoding: gzip" --compressed \
"https://api.sifting.io/v1/fnd/us/screener/Revenues/CY2024Q1?unit=USD&limit=100"{
"taxonomy": "us-gaap",
"concept": "Revenues",
"period": "CY2024Q1",
"unit": "USD",
"label": "Revenues",
"rows": [
{
"cik": "0000320193",
"name": "Apple Inc.",
"value": 90753000000,
"unit": "USD",
"period_end": "2024-03-30",
"accession": "0000320193-24-000089"
}
],
"meta": { "next_cursor": "eyJvIjo1MH0", "as_of": "2026-05-02T12:34:56Z", "total": 4823 }
}/v1/fnd/us/ratios/:tickerStandard fundamental ratios computed from XBRL data, across every reported period (newest-first). Pure XBRL, no stock-price-dependent ratios (P/E, P/B, EV/EBITDA) since this version doesn't carry equity prices.
tickerpathstringrequiredTicker symbol (case-insensitive).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/ratios/AAPL"{
"ticker": "AAPL",
"cik": "0000320193",
"latest": {
"fiscal_year": 2026,
"fiscal_period": "Q2",
"period_end": "2025-03-29",
"form": "10-Q",
"accession": "0000320193-26-000013",
"gross_margin": 0.4696,
"operating_margin": 0.3297,
"net_margin": 0.2782,
"return_on_equity": 1.0730,
"return_on_assets": 0.1701,
"debt_to_equity": 5.0133,
"current_ratio": 0.8933,
"quick_ratio": 0.8588,
"asset_turnover": 0.6115,
"free_cash_flow": 47876000000,
"fcf_margin": 0.2180
},
"history": [
{
"fiscal_year": 2026,
"fiscal_period": "Q2",
"period_end": "2025-03-29",
"gross_margin": 0.4696,
"...": "..."
},
{
"fiscal_year": 2026,
"fiscal_period": "Q1",
"period_end": "2024-12-28",
"gross_margin": 0.4691,
"...": "..."
}
]
}Form 3 / 4 / 5 ownership filings parsed into row-per-transaction shape, and 13F-HR institutional positions for any manager.
/v1/fnd/us/insiders/:tickerInsider ownership filings parsed into a flat row-per-transaction view. Each Form 4 produces one or more rows, buys, sales, grants, option exercises, gifts, and tax withholdings.
tickerpathstringrequiredTicker symbol (case-insensitive).
limitqueryintegeroptionalPage size. Default 10, max 25, each filing in the page may trigger one upstream XML fetch on cold cache.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/insiders/AAPL?limit=20"{
"data": [
{
"accession": "0001140361-26-017175",
"filed_at": "2026-04-25",
"reporter": "MAESTRI LUCA",
"reporter_cik": "0001513362",
"roles": ["officer"],
"officer_title": "Senior Vice President, CFO",
"security": "Common Stock",
"transaction_date": "2026-04-23",
"transaction_code": "S",
"transaction_description": "Open-market sale",
"direction": "disposed",
"shares": 1534,
"price_per_share": 275,
"notional_usd": 421850,
"shares_owned_after": 13366,
"ownership": "direct",
"derivative": false
}
],
"meta": { "next_cursor": "eyJvIjoxMH0", "as_of": "2026-05-02T12:34:56Z", "total": 240 }
}/v1/fnd/us/holdings/:filerLatest 13F-HR positions for an institutional manager. Accepts a ticker (if the manager is also a public issuer) or a CIK (for managers not in the SEC ticker map).
filerpathstringrequiredTicker (e.g. BRK.B for Berkshire) or CIK (e.g. 1037389 for Renaissance Technologies).
limitqueryintegeroptionalPage size. Default 50, max 200.
cursorquerystringoptionalOpaque cursor from the previous page.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/holdings/BRK.B"{
"filer_cik": "0001067983",
"filer_name": "BERKSHIRE HATHAWAY INC",
"accession": "0000950123-26-001234",
"filed_at": "2026-02-14",
"period_end": "2025-12-31",
"total_value_usd": 312456000000,
"positions": [
{
"issuer": "APPLE INC",
"security_type": "COM",
"cusip": "037833100",
"value_usd": 75123000000,
"shares": 280000000,
"shares_type": "SH",
"discretion": "DFND"
}
],
"meta": { "next_cursor": "eyJvIjo1MH0", "as_of": "2026-05-02T12:34:56Z", "total": 47 }
}Upcoming US economic events sourced from official agency calendars, 25 events across 11 source agencies (BLS, BEA, Census, Fed, DOL, EIA, ISM, Conference Board, UMich, NAR, Treasury). Updated hourly, schedule entries appear within 60 minutes of the source agency publishing them.
/v1/fnd/us/economic-calendarSchedule of upcoming US economic releases, CPI, NFP, FOMC, GDP, etc., sourced from official agency calendars. Filter by date range, impact tier, agency, or specific event_id. All parameters are optional; defaults return the next 30 days of US events ordered by scheduled_at.
fromqueryISO date / RFC3339optionalInclusive lower bound on scheduled_at. Defaults to now (UTC). Accepts 2026-05-13 (interpreted as midnight UTC) or 2026-05-13T12:30:00Z.
toqueryISO date / RFC3339optionalExclusive upper bound on scheduled_at. Defaults to from + 30 days. Must be strictly after from. Max range = 365 days.
countryquerystring (ISO 3166-1 α-2)optionalFilter by country code. Default US, only US events at launch.
impactqueryenumoptionallow | medium | high, relative market-impact tier.
agencyqueryenumoptionalBLS | BEA | Census | Fed | DOL | EIA | ISM | ConferenceBoard | UMich | NAR | Treasury, issuing agency.
event_idquerystringoptionalRecurring event identifier (e.g. us_cpi). See the coverage table above for valid IDs.
limitqueryintegeroptionalPage size, 1–500. Default 100.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/us/economic-calendar?impact=high&limit=10"{
"events": [
{
"event_id": "us_cpi",
"name": "US Consumer Price Index",
"country": "US",
"currency": "USD",
"agency": "BLS",
"impact": "high",
"scheduled_at": "2026-05-13T12:30:00Z",
"actual": null,
"previous": null,
"consensus": null,
"released_at": null
},
{
"event_id": "us_fomc_decision",
"name": "FOMC Rate Decision",
"country": "US",
"currency": "USD",
"agency": "Fed",
"impact": "high",
"scheduled_at": "2026-06-17T18:00:00Z",
"actual": null,
"previous": null,
"consensus": null,
"released_at": null
}
],
"count": 2,
"filter": {
"from": "2026-05-04T00:00:00Z",
"to": "2026-06-30T00:00:00Z",
"country": "US",
"impact": "high",
"agency": "",
"event_id": "",
"limit": 100
}
}Real-time tick projections served from Redis (written by MarketEngine, our central market-data ingestion service). Tiny payloads using the Type0 short field names (s, p, b, a, t…). Cache-Control: no-store on every response so edges never serve stale ticks.
/v1/last/trade/:venue/:symbolLatest trade snapshot, symbol, price, size, exchange timestamp. Returns 503 with last_t if the underlying snapshot is older than the staleness threshold (default 5s).
venuepathenumrequiredcrypto | forex. (DEX & DeFi has its own dedicated endpoints below.)
symbolpathstringrequired6–12 uppercase alphanumeric, no separators (e.g. BTCUSDT). Input is upper-cased before validation.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/last/trade/crypto/BTCUSDT"{
"s": "BTCUSDT",
"p": "67234.5",
"P": "0.00432",
"t": 1746189123456
}/v1/last/quote/:venue/:symbolLatest best bid / bid size / ask / ask size / timestamp for a symbol. Same staleness semantics as /trade.
venuepathenumrequiredcrypto | forex. (DEX & DeFi has its own dedicated endpoints below.)
symbolpathstringrequired6–12 uppercase alphanumeric, no separators.
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/last/quote/forex/EURUSD"{
"b": "67234.4",
"B": "1.234",
"a": "67234.6",
"A": "0.987",
"t": 1746189123456
}Real-time on-chain market data. Cross-chain aggregated trade/quote per symbol (one number per symbol, computed across every supported pool on every supported chain), plus per-pair, per-chain total value locked. Cache-Control: no-store on every response.
/v1/last/trade/dex/:symbolCross-chain aggregated last trade for a DEX symbol, one number computed across every pool MarketEngine tracks for that symbol on every supported chain.
symbolpathstringrequired6–12 uppercase alphanumeric, no separator (e.g. ETHUSDT, WBTCUSDT).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/last/trade/dex/ETHUSDT"{
"s": "ETHUSDT",
"p": "3421.85",
"P": "0.512",
"t": 1777813200526
}/v1/last/quote/dex/:symbolBest bid/ask for a DEX symbol, derived from AMM pool depth at the current reserves. DEX pools have no traditional order book, bid/ask reflect the fill price for a small marketable order.
symbolpathstringrequired6–12 uppercase alphanumeric, no separator (e.g. ETHUSDT).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/last/quote/dex/ETHUSDT"{
"b": "3421.40",
"B": "0.85",
"a": "3422.30",
"A": "0.91",
"t": 1777813200526
}/v1/last/tvl/:chain/:pairTotal value locked for a specific token pair on a specific chain. Sums across every pool MarketEngine tracks for that pair on that chain (Uniswap v2/v3 across fee tiers, Curve, etc.).
chainpathenumrequiredeth | base | arbitrum | bsc | polygon, see chain whitelist above.
pairpathstringrequiredTOKEN0-TOKEN1, single hyphen separator. Each leg is 3–10 uppercase alphanumeric (e.g. WETH-USDC).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/last/tvl/polygon/WETH-USDC"{
"chain": "polygon",
"pair": "WETH-USDC",
"usd": "231543.82179",
"r0": "153.96483",
"r1": "231543.82179",
"n": 1,
"v": 1,
"t": 1777813200526
}Per-wallet, per-chain portfolio holdings on supported EVM networks. Native coin and ERC-20 token balances with metadata (symbol, decimals, name, logo) attached to each row. Powers wallet dashboards, portfolio trackers, treasury monitoring, and address-level analytics.
/v1/fnd/dex/wallet/:chain/:addressNative-coin and ERC-20 token holdings for one wallet on one EVM chain. The native row only appears when the wallet has a non-zero native balance.
chainpathenumrequiredeth | base | arbitrum | bsc | polygon.
addresspathstringrequiredEVM wallet address. Must be 0x followed by 40 hex characters. Case-insensitive (canonicalised to lowercase server-side).
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/dex/wallet/eth/0x742d35cc6634c0532925a3b844bc9e7595f0beb1"{
"chain": "eth",
"address": "0x742d35cc6634c0532925a3b844bc9e7595f0beb1",
"tokens": [
{
"symbol": "ETH",
"name": "Ether",
"decimals": 18,
"raw_balance": "2345600000000000000",
"balance": "2.3456",
"native": true
},
{
"contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"symbol": "USDC",
"name": "USD Coin",
"decimals": 6,
"logo": "https://static.alchemyapi.io/images/assets/3408.png",
"raw_balance": "5000000",
"balance": "5"
}
],
"count": 2,
"updated_at": 1746230400
}Every error response carries a JSON body with an error code and a human-readable message. HTTP status follows standard conventions; the error code (snake_case) is the stable machine-readable identifier you should switch on.
{ "error": "error_code", "message": "human-readable details" }(raw message)Malformed query, invalid cursor, bad limit, missing required parameter.
unauthorizedAPI key missing or invalid.
(raw message)Authenticated but not entitled, your subscription doesn't include this product or market.
unknown_ticker:ticker not in the SEC's US ticker registry.
unknown_filer:filer (ticker or CIK) not found.
filing_not_foundSpecific accession isn't in this filer's recent-filings window.
no_13f_filingsFiler has never filed 13F-HR.
not_foundConcept / period / unit combination has no data, or symbol absent from live feed.
section_not_foundRequested filing section couldn't be extracted, body includes `available` (sections that were extracted).
insufficient_filingsRisk-factors diff needs ≥ 2 10-Ks; this filer has fewer on record.
invalid_section:section not in the allowed list, body includes `valid_options`.
invalid_accession_formatAccession number didn't match the dashed/undashed shape.
invalid_date_rangeEconomic calendar: `to` must be strictly after `from`, range capped at 365 days.
gzip_requiredHeavy endpoint called without Accept-Encoding: gzip.
risk_factors_unavailableItem 1A couldn't be extracted from one or both 10-K filings being diffed.
rate_limit_exceededPer-tier rate budget exhausted, inspect Retry-After.
upstream_errorSEC EDGAR returned non-2xx.
malformed_upstreamSEC EDGAR returned an invalid payload, or live snapshot couldn't be parsed.
stale_snapshotLive snapshot older than the configured threshold (default 5s). Body carries last_t and server_now.
upstream_rate_limitedSEC EDGAR throttled our edge, retry shortly.
Limits scale with your plan. Headers on every response surface the current window so client code can self-throttle.
X-RateLimit-LimitToken bucket burst capacity for your subscription tier.
X-RateLimit-RemainingTokens remaining in the current window.
Retry-AfterSeconds to wait before retrying. Sent on 429 responses.
Generate an API key and start hitting fundamentals or live market data endpoints. Need a dataset we don’t yet cover? Tell us.
New to the API? Browse all products, review pricing tiers, or jump straight to US stocks data and crypto data for product-level context.
Base URL · https://api.sifting.io