API · Filings

Search filings

Find filings by company, year, document type or market.

POST/api/v1/data/filings/search

Returns a list of matching filings with company_name, year, quarter, document_type, market and a plain-text citation_label. Nordic rows and company-scoped US rows also carry a docid. Use the page_ids returned from other endpoints with the snapshot endpoint.

When to use this

  • "Show me every annual report Neste has filed since 2020."
  • "Which companies released a stock-exchange release this week?"
  • "Is there a 10-Q for Apple FY2025 Q2?"

Body

FieldTypeDescription
companystringCompany name or ticker (fuzzy match). Examples: "Neste", "NESTE", "Apple", "AAPL".
year_fromintegerEarliest fiscal year (e.g. 2020).
year_tointegerLatest fiscal year (e.g. 2024).
document_typestringannual_report | interim_report | stock_exchange_release | 10-K | 10-Q | 8-K
marketstringnordic | us. Omit to search both.
limitinteger
default: 20
Max results (1–100).

Example

curl
curl https://api.clarifo.com/api/v1/data/filings/search \
  -H "Authorization: Bearer $CLARIFO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "company": "Neste",
    "year_from": 2022,
    "document_type": "annual_report"
  }'

Response

json
{
  "filings": [
    {
      "docid": "722df34e9f191a97518a8560755cb9e9",
      "company_name": "Neste Oyj",
      "year": "2024",
      "fiscal_year": "2024",
      "document_type": "annual_report",
      "document_type_label": "Annual Report",
      "page_count": 142,
      "market": "nordic",
      "citation_label": "Neste Oyj Annual Report (FY 2024)",
      "citation_markdown": "Neste Oyj Annual Report (FY 2024)",
      "metadata_quality": {
        "period_end": "not_tracked_for_nordic_filings",
        "filed_date": "not_tracked_for_nordic_filings"
      }
    }
  ],
  "total": 1,
  "has_more": false,
  "total_available": 1,
  "resolution": {
    "input_company": "Neste",
    "resolved_name": "Neste Oyj",
    "market": "nordic",
    "ticker": "NESTE"
  }
}

US rows without a company

With "market": "us" and no company, the endpoint lists filings across all US issuers from the SEC filing index, newest filed first. These rows have no docid, an integer year, and SEC metadata instead:

json
{
  "company_name": "Apple Inc.",
  "ticker": "AAPL",
  "cik": "0000320193",
  "year": 2025,
  "fiscal_year": 2025,
  "period_end": "2025-09-27",
  "filed_date": "2025-10-31",
  "document_type": "10-K",
  "document_type_label": "Annual Report (10-K)",
  "accession_number": "0000320193-25-000079",
  "citation_label": "Apple Inc. Annual Report (10-K) (FY 2025)",
  "citation_markdown": "Apple Inc. Annual Report (10-K) (FY 2025)",
  "result_kind": "filing",
  "market": "us"
}

Response fields

FieldDescription
filings[].yearFiscal year the filing reports on. A string on Nordic rows, an integer on US rows; handle both. fiscal_year carries the same value.
filings[].quarterFiscal quarter for interim filings; absent on annual filings.
filings[].docidFiling id. Absent on US rows listed without a company.
filings[].period_end, filed_dateUS only. Nordic rows carry metadata_quality noting these are not tracked.
filings[].result_kindUS only: filing, or company_index for a one-row-per-issuer fallback with no filing-level year.
totalNumber of rows in this response.
total_availableTotal matches before limit, when known.
has_moretrue when more matches exist than were returned.
resolutionHow company was resolved, when a company was given.

Empty fields are omitted rather than sent as null.

Tips

  • Omit market to search Nordic + US in one call (concurrent backends — no latency cost).
  • For broad screens, leave company blank and combine document_type + year range.
  • Maximum limit is 100 and the REST endpoint has no offset. When has_more is true, narrow the year range or document_type to page through results.