OpenAPI

API reference

Every public endpoint, its parameters, and its response type — generated from the OpenAPI document. For walkthroughs and examples, see the API guides.

OpenAPI document

Programmatic access to multi-market filings, as-filed financials, supply chain, people, and market data. Authenticate with an API key (X-API-Key). Base URL: https://api.openfilings.org.

curl -s https://api.openfilings.org/api/v1/openapi.json | head

Endpoint index

Markets

Markets covered by your plan.

GET/api/v1/markets

List markets in your plan

Catalog of markets for the caller's plan.

  • 200 ProductMarketsOut

operationId: get_api_v1_markets

Entities

Issuer search and identity lookup.

GET/api/v1/entities/lookup

Look up an issuer by LEI, ISIN, or ticker

One catalogue issuer by LEI, ISIN, or ticker (+ market_id when ambiguous).

ParamInTypeNotes
leiquerystring—
isinquerystring—
canonical_keyquerystring—
tickerquerystring—
market_idquerystring—
  • 200 ProductEntityLookupOut

operationId: get_api_v1_entities_lookup

Filings

Filing history, full-text search, sections, and KPIs.

GET/api/v1/filings/{filing_id}/earnings-event

Get a filing's earnings release

SEC ex99-1 earnings flash attached to an 8-K Item 2.02 (same filing row).

ParamInTypeNotes
filing_id*pathstring—
  • 200 ProductEarningsEventOut

operationId: get_api_v1_filings_by_filing_id_earnings_event

GET/api/v1/filings/{filing_id}/kpis

Get a filing's KPIs

ParamInTypeNotes
filing_id*pathstring—
include_groupsqueryboolean—
include_red_flagsqueryboolean—
include_goldqueryboolean—
  • 200 ProductFilingKpisOut

operationId: get_api_v1_filings_by_filing_id_kpis

GET/api/v1/filings/{filing_id}/sections

List a filing's sections

ParamInTypeNotes
filing_id*pathstring—
  • 200 ProductFilingSectionsOut

operationId: get_api_v1_filings_by_filing_id_sections

GET/api/v1/filings/{filing_id}/sections/{section_key}

Get one filing section

ParamInTypeNotes
filing_id*pathstring—
section_key*pathstring—
content_formatquerystring—
partquerystring—
  • 200 ProductFilingSectionOut

operationId: get_api_v1_filings_by_filing_id_sections_by_section_key

GET/api/v1/filings/discover

Discover filings across markets

Cross-market filing discovery. Same payload as MCP list_filings. Omit market scoping: all resolved listings are searched. Use query for names, ticker for symbols, lei/isin for structured IDs (not in ticker). Prefer GET /filings/discover over legacy /tickers/{ticker}/filings?market_id=us.

ParamInTypeNotes
queryquerystring—
tickerquerystring—
cn_tickerquerystring—
hk_tickerquerystring—
leiquerystring—
isinquerystring—
limitqueryinteger—
since_yearqueryinteger—
form_typesquerystring[]—
  • 200 ProductDiscoveryOut

operationId: get_api_v1_filings_discover

GET/api/v1/filings/resolve

Find a filing by ticker, form, and date

ParamInTypeNotes
ticker*querystring—
market_idquerystring—
form_typequerystring—
filing_datequerystring—
filing_idquerystring—
  • 200 ProductFilingResolveOut

operationId: get_api_v1_filings_resolve

GET/api/v1/red-flags/screen

Screen issuers by red flag

Issuers with a red flag in the window, one card each. The card is the newest filing in the window that still has a flag judged event, or not yet judged. Boilerplate and unclear are left out. A bare call uses 90 days; pass window_days (1 to 1825) or window for any other length. Metered.

ParamInTypeNotes
rule_idquerystringExact rule id
severityquerystringCRITICAL, HIGH, MEDIUM, or LOW
market_idquerystring—
window_daysqueryinteger—
windowquerystring7d, 1m, 3m, 6m, 1y, 3y, 5y. Must agree with window_days.
limitqueryinteger—
cursorquerystring—
  • 200 RedFlagScreenOut

operationId: get_api_v1_red_flags_screen

GET/api/v1/tickers/{ticker}/filings

List a ticker's filings (single market)

Filings for one ticker in one market. For cross-market queries use GET /api/v1/filings/discover.

ParamInTypeNotes
ticker*pathstring—
market_idquerystring—
limitqueryinteger—
since_yearqueryintegerPeriod-end year lower bound (reporting_for >= since_year).
form_typesquerystring[]—
  • 200 ProductListFilingsOut

operationId: get_api_v1_tickers_by_ticker_filings

Financials

As-filed multi-year series and the KPI taxonomy.

GET/api/v1/companies/financials

Get multi-year company financials

Company + period financials (no filing_id). One call for a multi-year series.

ParamInTypeNotes
tickerquerystring—
market_idquerystring—
leiquerystring—
isinquerystring—
canonical_keyquerystring—
fiscal_yearqueryinteger—
fiscal_year_fromqueryinteger—
fiscal_year_toqueryinteger—
fiscal_periodquerystring—
statement_typequerystring—
line_itemsquerystringComma-separated canonical keys, or ALL (default)
as_ofquerystringISO date YYYY-MM-DD
  • 200 CompanyFinancialsOut

operationId: get_api_v1_companies_financials

GET/api/v1/kpi-taxonomy

List KPI codes

Canonical KPI line_item codes (income/balance/cashflow/shares).

ParamInTypeNotes
statement_typequerystring—
marketquerystring—
  • 200 KpiTaxonomyOut

operationId: get_api_v1_kpi_taxonomy

Companies

Earnings releases, supply chain, quotes, and holders.

GET/api/v1/analyst/screen

Screen issuers by our analyst verdict

Issuers by our analyst verdict. Call is the latest primary earnings call. Filing is the latest annual report. A bare call has no date window: the row is already the latest verdict. Metered.

ParamInTypeNotes
stance*querystringComma-separated: strong_buy, buy, hold, sell, strong_sell, no_conviction
sourcequerystringcall or filing. Omit to prefer the call.
market_idquerystring—
window_daysqueryinteger—
windowquerystring—
limitqueryinteger—
cursorquerystring—
  • 200 IssuerScreenOut

operationId: get_api_v1_analyst_screen

GET/api/v1/climate/screen

Screen issuers by climate target

Issuers with a published climate target. Empty while that licence is off.

ParamInTypeNotes
near_term_statusquerystring—
net_zero_year_maxqueryinteger—
market_idquerystring—
limitqueryinteger—
cursorquerystring—
  • 200 IssuerScreenOut

operationId: get_api_v1_climate_screen

GET/api/v1/companies/{market}/{ticker}/earnings-releases

Get earnings calendar

Street earnings calendar rows for this issuer (upcoming + recent reported).

ParamInTypeNotes
market*pathstring—
ticker*pathstring—
limitqueryinteger—
  • 200 EarningsCalendarResponse

operationId: get_api_v1_companies_by_market_by_ticker_earnings_releases

GET/api/v1/companies/{market}/{ticker}/institutional-holders

List institutional holders

Form 13F managers holding the issuer, one row per house. total counts houses after successor CIKs are folded together. limit (default 25, max 500) and offset page that set, largest position first.

ParamInTypeNotes
market*pathstring—
ticker*pathstring—
limitqueryinteger—
offsetqueryinteger—
  • 200 InstitutionalHoldersOut

operationId: get_api_v1_companies_by_market_by_ticker_institutional_holders

GET/api/v1/companies/{market}/{ticker}/market-snapshot

Get market snapshot

Latest quote and market capitalisation for the issuer.

ParamInTypeNotes
market*pathstring—
ticker*pathstring—
rangequerystringYahoo daily close history window (1mo, 6mo, 1y, 2y, 5y, max)
  • 200 MarketSnapshot

operationId: get_api_v1_companies_by_market_by_ticker_market_snapshot

GET/api/v1/companies/{market}/{ticker}/supply-chain

Get supply chain

Named supplier↔customer edges + anonymous concentration disclosures.

ParamInTypeNotes
market*pathstring—
ticker*pathstring—
as_ofquerystringAs-of date (YYYY-MM-DD); only used when include_expired=false
include_expiredquerybooleanInclude edges past valid_to (default true — no 1y display cutoff)
disclosure_limitqueryinteger—
hopsqueryinteger1 = direct edges only, 2 = also walk one step from resolved counterparties
include_correlationsquerybooleanAttach multi-horizon price correlations on hop-1 resolved edges
  • 200 CompanySupplyChainOut

operationId: get_api_v1_companies_by_market_by_ticker_supply_chain

GET/api/v1/holders/screen

Screen issuers by mandate length

Issuers with a current mandate at least this many years old. officer and director are a seat. shareholder is a disclosed holding. match.since_meaning says which. A relation with no dated mandate in scope is a 400, not an empty page. Metered.

ParamInTypeNotes
relationquerystringdirector, officer, or shareholder
min_tenure_yearsqueryinteger—
market_idquerystring—
limitqueryinteger—
cursorquerystring—
  • 200 IssuerScreenOut

operationId: get_api_v1_holders_screen

GET/api/v1/institutional-managers/{manager_cik}

Get a 13F manager's holdings

One Form 13F manager's latest book, largest positions first.

ParamInTypeNotes
manager_cik*pathstring—
limitqueryinteger—
offsetqueryinteger—
  • 200 Manager13fBookOut

operationId: get_api_v1_institutional_managers_by_manager_cik

GET/api/v1/press/screen

Screen issuers by press tier

One issuer per tier in the window: the latest release, not every wire.

ParamInTypeNotes
tierquerystring—
market_idquerystring—
window_daysqueryinteger—
windowquerystring—
limitqueryinteger—
cursorquerystring—
  • 200 IssuerScreenOut

operationId: get_api_v1_press_screen

GET/api/v1/screen

Screen issuers by intersecting signals

Issuers that match every include and none of the excludes. One window_days applies to every dated predicate. A bare call uses 21 days. exclude_pattern is the exception: a pattern is a multi-year state, so it keeps its own lookback. At least one include is required. Metered.

ParamInTypeNotes
window_daysqueryinteger—
windowquerystring—
market_idquerystring—
streetquerystringComma-separated recommendation keys
insiderquerystringA or D
patternquerystring—
kindquerystring—
red_flagquerystringRule id to require
holdersquerystringdirector, officer, or shareholder. Defaults to director when only min_tenure_years is sent.
min_tenure_yearsqueryinteger—
analystquerystringstrong_buy, buy, hold, sell, strong_sell, or no_conviction
analyst_sourcequerystringcall or filing. Omit to prefer the call.
exclude_red_flagquerystring—
exclude_patternquerystring—
exclude_kindquerystring—
limitqueryinteger—
cursorquerystring—
  • 200 IssuerScreenOut

operationId: get_api_v1_screen

GET/api/v1/street/screen

Screen issuers by analyst recommendation

Issuers by analyst recommendation, one card each. A dual listing is several rows. The card uses the home listing when that listing has a snapshot; otherwise the listing with the most analysts, and match.listing says which. match.as_of is the date of the weekly sweep. Metered.

ParamInTypeNotes
recommendation_keyquerystringstrong_buy, buy, hold, sell, or strong_sell
market_idquerystring—
window_daysqueryintegerKeep snapshots dated within this many days. A bare call uses 21.
windowquerystring7d, 1m, 3m, 6m, 1y, 3y, 5y. Must agree with window_days.
limitqueryinteger—
cursorquerystring—
  • 200 StreetScreenOut

operationId: get_api_v1_street_screen

Press releases

Issuer press releases.

GET/api/v1/filings/{filing_id}/press-releases

List press releases around a filing

Press releases near a filing date (±14 day window). Free plans get the preview, not a 403 — see the ticker route above.

ParamInTypeNotes
filing_id*pathstring—
limitqueryinteger—
  • 200 ProductListPressReleasesOut

operationId: get_api_v1_filings_by_filing_id_press_releases

GET/api/v1/tickers/{ticker}/press-releases

List a ticker's press releases

Press releases published by the issuer, newest first.

ParamInTypeNotes
ticker*pathstring—
marketquerystringListing market. Omit to resolve the issuer on its home market.
market_idquerystring—
isinquerystring—
subject_codequeryinteger—
tierqueryinteger—
limitqueryinteger—
  • 200 ProductListPressReleasesOut

operationId: get_api_v1_tickers_by_ticker_press_releases

People & insiders

Officers, directors, and insider transactions.

GET/api/v1/people

Search people

Directory of officers, directors, and major shareholders.

ParamInTypeNotes
qquerystringSearch on the person / institution name
kindquerystringOne of person, institution
relationquerystringCurrent role filter: officer, director, major_shareholder, significant_control
marketquerystringMarket id of the issuer
canonical_keyquerystringAll parties holding a current role at one issuer
tickerquerystringListed symbol; pass market_id when ambiguous
market_idquerystringIssuer listing market with ticker (identity). Distinct from market, which filters all people on a market.
leiquerystring—
isinquerystring—
sortquerystringcompanies (mandate count, default), ownership (max stake), name, name_desc, tenure (longest current filing-derived mandate; needs since_date, excludes MarketScreener), renewal (until_date in the next 180 days — term up for renewal, not outgoing; almost only CN)
limitqueryinteger—
offsetqueryinteger—
min_tenure_yearsqueryintegerCurrent mandate started at least this many years ago. since_date is the seat for an officer or director, and the disclosed holding for a major shareholder.
  • 200 PersonListResponse

operationId: get_api_v1_people

GET/api/v1/people/{slug}

Get a person

Profile for <name-slug>-<id prefix>; the name part is decorative.

ParamInTypeNotes
slug*pathstring—
  • 200 PersonProfileResponse

operationId: get_api_v1_people_by_slug

GET/api/v1/people/{slug}/companies

List a person's roles and holdings

Paged mandates — institutional holders run to hundreds of positions.

ParamInTypeNotes
slug*pathstring—
relationquerystring—
limitqueryinteger—
offsetqueryinteger—
  • 200 PersonRolesResponse

operationId: get_api_v1_people_by_slug_companies

GET/api/v1/people/{slug}/insider-transactions

List a person's insider transactions

Insider transactions attributed to this party. Free plans get the preview, not a 403 — same stripping as the ticker and filing routes.

ParamInTypeNotes
slug*pathstring—
limitqueryinteger—
  • 200 PersonInsiderTransactionsResponse

operationId: get_api_v1_people_by_slug_insider_transactions

GET/api/v1/people/facets

Get people search facets

Counts by kind, relation, and market for the people search filters.

  • 200 PeopleFacetsResponse

operationId: get_api_v1_people_facets

GET/api/v1/tickers/{ticker}/insider-transactions

List a ticker's insider transactions

Insider transactions (SEC Form 4 and equivalents) reported for the issuer.

ParamInTypeNotes
ticker*pathstring—
marketquerystring—
market_idquerystring—
isinquerystring—
transaction_codequerystring—
acquired_disposedquerystring—
since_datequerystringISO date YYYY-MM-DD
limitqueryinteger—
  • 200 ProductListInsiderTransactionsOut

operationId: get_api_v1_tickers_by_ticker_insider_transactions

Corporate events

Corporate actions and issuer lifecycle events.

GET/api/v1/lifecycle-events

List corporate events across markets

Market-wide lifecycle tape — who left the list, which bids completed. Public like the insider-trades explorer. Each row still names the filing that evidences it.

ParamInTypeNotes
kindquerystring—
kindsquerystringComma-separated kinds when not filtering to one
market_idquerystring—
sincequerystring—
untilquerystring—
qquerystringIssuer name, ticker, or LEI fragment
limitqueryinteger—
offsetqueryinteger—
exclude_debtquerybooleanDrop LSE Official List note/bond cancellations (Exits tape)
page_byquerystringissuer = page of companies with all their events; event = raw rows
  • 200 MarketLifecycleEventsOut

operationId: get_api_v1_lifecycle_events

GET/api/v1/tickers/{ticker}/corporate-events

List a ticker's corporate events

One issuer's lifecycle timeline, newest first. Each event names the filing that evidences it and the regulator item code that produced it, so a reader can check the claim. kind acquisition_or_disposal does not say which side the company was on — the item code cannot distinguish them.

ParamInTypeNotes
ticker*pathstring—
marketquerystring—
market_idquerystring—
isinquerystring—
kindquerystringacquisition_or_disposal | delisting | listing_removal | registration_terminated | control_change | restructuring | ipo | tender_offer_announced | tender_offer_completed | tender_offer_withdrawn | name_change | listing_deficiency | bankruptcy | cybersecurity_incident | auditor_change | non_reliance | late_filing_notice | restatement | audit_opinion | investigation_committee | going_concern | internal_control_weakness | exchange_status | regulatory_action | misconduct | guidance_revision | equity_offering | convertible_issue | capital_reduction | buyback | payment_default | business_suspension | dissolution | creditor_management | litigation
limitqueryinteger—
  • 200 CompanyCorporateEventsOut

operationId: get_api_v1_tickers_by_ticker_corporate_events

Disclosure signals

Auditor changes, non-clean opinions, restatements, investigations, dilution, distress and forecast revisions read from issuers' own notices — per-issuer dossier with computed profile and named patterns, a pattern screen, and the feed.

GET/api/v1/signals

Screen issuers by disclosure pattern

Screen issuers by disclosure pattern, or by a single kind. pattern runs the pattern scan (patterns + profile). kind or family runs a SQL screen (one card per issuer, match says which kind hit and when). Passing both is a 400 — they are different engines. Kind screens default to 7 days only so a bare call answers; pass window_days (1 to 1825) or window (7d, 1m, 3m, 6m, 1y, 3y, 5y). Pattern screens keep their multi-year lookback unless you pass a window, which keeps issuers whose latest trigger falls inside it. A pattern page still reruns that scan; the cursor only shortens the response.

ParamInTypeNotes
patternquerystringdilution_spiral | audit_distress | auditor_churn | accounting_failure | late_filer | guidance_cut_streak | exit_risk (omit: any)
market_idquerystring—
strengthquerystringstrong | moderate
limitqueryinteger—
offsetqueryinteger—
kindquerystringOne disclosure kind (going_concern, litigation, auditor_change, …). SQL screen. Do not combine with pattern.
familyquerystringdilution | audit | reporting | governance | distress | guidance | capital_return | legal. SQL screen. Do not combine with pattern.
window_daysqueryinteger—
windowquerystringAlias for window_days: 7d, 1m, 3m, 6m, 1y, 3y, 5y. Must agree with window_days.
cursorquerystring—
  • 200 SignalScreenOut

operationId: get_api_v1_signals

GET/api/v1/signals/base-rates

Get market reaction base rates per signal

How each signal has moved prices: abnormal return vs the market benchmark (S&P 500, Nikkei 225, KOSPI, Hang Seng, Shanghai Composite) at 2, 5 and 20 trading days after the last close before the event, per market, kind and variant (direction, status, opinion, salience, authority): n, mean, median, quartiles, share negative, t-stat.

ParamInTypeNotes
market_idquerystring—
kindquerystring—
  • 200 SignalBaseRatesOut

operationId: get_api_v1_signals_base_rates

GET/api/v1/signals/events

List disclosure-signal events

The signal feed across issuers, newest first — the stream to alert on.

ParamInTypeNotes
familyquerystringdilution | audit | reporting | governance | distress | guidance | capital_return | legal
kindsquerystringComma-separated kinds (overrides family)
market_idquerystring—
sincequerystring—
untilquerystring—
window_daysqueryinteger—
windowquerystring7d, 1m, 3m, 6m, 1y, 3y, 5y. Do not combine with since.
saliencequerystringnotable | routine
structured_onlyquerybooleanOnly events whose document has been read into fields
limitqueryinteger—
offsetqueryinteger—
  • 200 SignalEventsOut

operationId: get_api_v1_signals_events

GET/api/v1/tickers/{ticker}/signals

Get a ticker's disclosure-signal dossier

One issuer's disclosure dossier. - profile — dilution over 12 months (stated new-share and convertible percentages), latest non-clean audit opinion, going-concern state, auditor changes, late filings, restatements, investigations, forecast revisions up / down. - patterns — named combinations (dilution_spiral, audit_distress, auditor_churn, accounting_failure, late_filer, guidance_cut_streak, exit_risk), each with strength, dates, a one-line why and the event_ids behind it. - cases — events grouped into stories (notices that cite each other), newest first; each event carries family, salience (routine | notable), typed fields and evidence.

ParamInTypeNotes
ticker*pathstring—
marketquerystring—
market_idquerystring—
isinquerystring—
  • 200 CompanySignalsOut

operationId: get_api_v1_tickers_by_ticker_signals

Market data

FX and policy rates.

GET/api/v1/fx/movers

Largest currency moves

Largest stored currency moves against USD. change_pct > 0 means the currency gained against the dollar. usd_change_pct and local_per_usd are the raw quote. A currency with no stored history is omitted.

ParamInTypeNotes
window_daysqueryinteger—
windowquerystring—
limitqueryinteger—
  • 200 MoversOut

operationId: get_api_v1_fx_movers

GET/api/v1/fx/rates

Get FX rates

Spot FX rates, in local currency units per 1 USD.

  • 200 FxRatesResponse

operationId: get_api_v1_fx_rates

GET/api/v1/macro/index-moves

Largest index moves

Largest stored index moves. The dates in each row are the closes used.

ParamInTypeNotes
window_daysqueryinteger—
windowquerystring—
categoryquerystring—
limitqueryinteger—
  • 200 MoversOut

operationId: get_api_v1_macro_index_moves

GET/api/v1/macro/rates

Get policy and government bond rates

US Treasury constant-maturity yields, G10 10-year government bond yields, and central-bank policy rates.

ParamInTypeNotes
groupquerystringComma-separated groups: ust,gov10y,ea_curve,policy (default all)
min_valuequerynumberKeep policy or gov10y rows at or above this level
window_daysqueryinteger—
windowquerystring—
changedquerybooleanKeep rows whose level differs from the point N days earlier
  • 200 MacroRatesResponse

operationId: get_api_v1_macro_rates

GET/api/v1/macro/weo

Get IMF World Economic Outlook series

IMF WEO series for one vintage; is_forecast follows the IMF last-actual year.

ParamInTypeNotes
area*querystringISO3, e.g. FRA
subjectquerystring—
vintagequerystringWEO vintage YYYY-MM
  • 200 WeoSeriesResponse

operationId: get_api_v1_macro_weo

GET/api/v1/macro/weo/areas

List IMF World Economic Outlook countries

Countries (not IMF aggregates) in the latest — or given — IMF WEO vintage.

ParamInTypeNotes
vintagequerystringWEO vintage YYYY-MM
  • 200 WeoAreasResponse

operationId: get_api_v1_macro_weo_areas

Documents

Raw document archive (Business plan).

GET/api/v1/documents

List documents

List documents (filings + IR publications) with taxonomy filters.

ParamInTypeNotes
tickerquerystringExchange symbol; pair with market when reused across markets (7203 + jp).
isinquerystring—
leiquerystring—
canonical_keyquerystring—
marketquerystringWith an issuer identifier: disambiguates the ticker. Alone: market filter.
registryquerystring—
categoryquerystring[]Repeatable: category=annual_report&category=proxy
category_groupquerystring—
native_typequerystring—
subtypequerystring—
originquerystring—
fromquerystring—
toquerystring—
fiscal_yearqueryinteger—
archivedquerybooleanOnly documents whose bytes are archived
limitqueryinteger—
cursorquerystring—
  • 200 DocumentListOut

operationId: get_api_v1_documents

GET/api/v1/documents/{document_id}

Get a document

Document metadata, files and ZIP member manifest.

ParamInTypeNotes
document_id*pathstring—
member_offsetqueryinteger—
  • 200 DocumentDetailOut

operationId: get_api_v1_documents_by_document_id

GET/api/v1/documents/{document_id}/content

Download a document

Redirects (302) to a short-lived download URL for the document's raw bytes.

ParamInTypeNotes
document_id*pathstring—
file_idquerystring—

operationId: get_api_v1_documents_by_document_id_content

GET/api/v1/documents/taxonomy

Get the document taxonomy

Document taxonomy: categories (grouped), IR native types and subtypes.

ParamInTypeNotes
countsquerybooleanInclude document_count per category
  • 200 DocumentTaxonomyOut

operationId: get_api_v1_documents_taxonomy

Account

Watchlist, notifications, and webhooks.

GET/api/user/notifications

List notifications

ParamInTypeNotes
limitqueryinteger—
cursorquerystringNotification id for pagination
unread_onlyqueryboolean—
sincequerystringISO8601 — items created after
since_hoursqueryintegerRelative lower bound in hours (e.g. 24 = last 24h)
untilquerystringISO8601 — items created at or before
event_typesquerystring[]Filter by event type (e.g. filing.discovered)
market_idsquerystring[]Filter by market id (e.g. us, eu)
categoriesquerystring[]Filter by canonical filing category (e.g. material_event)
category_groupsquerystring[]Filter by coarse category group (e.g. periodic, mna)
tickersquerystring[]Filter by ticker
  • 200 NotificationListResponse

operationId: get_api_user_notifications

GET/api/user/notifications/{notification_id}

Get a notification

ParamInTypeNotes
notification_id*pathstring—
  • 200 NotificationItem

operationId: get_api_user_notifications_by_notification_id

PATCH/api/user/notifications/{notification_id}/read

Mark a notification read

ParamInTypeNotes
notification_id*pathstring—
  • 200 NotificationItem

operationId: patch_api_user_notifications_by_notification_id_read

POST/api/user/notifications/read-all

Mark all notifications read

  • 204 Successful Response

operationId: post_api_user_notifications_read_all

GET/api/user/notifications/unread-count

Count unread notifications

  • 200 NotificationUnreadCountResponse

operationId: get_api_user_notifications_unread_count

GET/api/user/watchlist

List your watchlist

  • 200 UserWatchlistResponse

operationId: get_api_user_watchlist

POST/api/user/watchlist

Add a ticker to your watchlist

  • 201 UserWatchlistResponse

operationId: post_api_user_watchlist

DELETE/api/user/watchlist/{ticker}

Remove a ticker from your watchlist

ParamInTypeNotes
ticker*pathstring—
  • 200 UserWatchlistResponse

operationId: delete_api_user_watchlist_by_ticker

PATCH/api/user/watchlist/{ticker}

Update a watchlist entry

ParamInTypeNotes
ticker*pathstring—
  • 200 UserWatchlistResponse

operationId: patch_api_user_watchlist_by_ticker

GET/api/user/webhooks

List webhooks

  • 200 UserWebhookOut[]

operationId: get_api_user_webhooks

POST/api/user/webhooks

Create a webhook

  • 201 UserWebhookOut

operationId: post_api_user_webhooks

DELETE/api/user/webhooks/{webhook_id}

Delete a webhook

ParamInTypeNotes
webhook_id*pathstring—
  • 204 Successful Response

operationId: delete_api_user_webhooks_by_webhook_id

PATCH/api/user/webhooks/{webhook_id}

Update a webhook

ParamInTypeNotes
webhook_id*pathstring—
  • 200 UserWebhookOut

operationId: patch_api_user_webhooks_by_webhook_id

POST/api/user/webhooks/{webhook_id}/test

Send a test webhook

Fire one signed webhook.test ping synchronously so integrators can verify their handler + HMAC verification without waiting for a real filing.

ParamInTypeNotes
webhook_id*pathstring—
  • 200 UserWebhookTestResult

operationId: post_api_user_webhooks_by_webhook_id_test