Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.cf0.ai/llms.txt

Use this file to discover all available pages before exploring further.

The Filings API provides access to cf0’s global filing explorer. You can search companies across 10 markets, browse available filings from SEC EDGAR and international regulators, trigger ingestion into cf0’s document store, and read individual filing sections as plain text. All Filings endpoints are prefixed with /api/filings.

Supported markets

cf0 maps ISO 3166-1 alpha-2 country codes to regulatory sources:
Country codeSourceRegulator
USsecSEC EDGAR
JPedinetEDINET
KRdartDART
GBfcaFCA / Companies House
CAsedarSEDAR+
INsebiSEBI
AUasxASX
HKhkexHKEX
CNcninfoCNINFO
BRcvmCVM

Search companies

GET /api/filings/search
Prefix search across company name, ticker, and aliases. Returns companies from all supported markets.

Query parameters

q
string
required
Search query. Minimum 1 character.
limit
integer
Maximum results to return. Range: 1–100. Default: 20.

Response

results
array
Array of matching company objects.
total
integer
Number of results returned.
query_ms
number
Server-side query time in milliseconds.
curl "https://api.cf0.ai/api/filings/search?q=nvidia&limit=5" \
  -H "Authorization: Bearer <your-token>"

List markets

GET /api/filings/markets
Returns all supported markets with live company counts.
markets
array
Array of market objects with country code, name, and company count.

Browse a market

GET /api/filings/market/{country}
Returns a paginated, sortable company list for a single market.

Path parameters

country
string
required
ISO 3166-1 alpha-2 country code, e.g. US, JP, GB.

Query parameters

page
integer
Page number. Default: 1.
page_size
integer
Companies per page. Range: 1–200. Default: 50.
sort_by
string
Field to sort by. Default: "market_cap_usd".
sort_order
string
"asc" or "desc". Default: "desc".
sector
string
Filter by sector name.

Get company

GET /api/filings/company/{country}/{local_id}
Look up a single company by market and local identifier (e.g. CIK for US, EDINET code for JP).
curl https://api.cf0.ai/api/filings/company/US/0001045810 \
  -H "Authorization: Bearer <your-token>"

Get company filings

GET /api/filings/company/{country}/{local_id}/filings
Returns the available filing list for a company. For US companies (country=US), this queries SEC EDGAR directly. For other markets, results come from cf0’s filing registry with adapter fallback. Each filing object includes:
filing_ref
string
Source-specific filing reference ID.
form_type
string
Filing form type, e.g. 10-K, 10-Q, 8-K.
filing_date
string
Date the filing was submitted (ISO 8601).
report_date
string
Period-of-report date.
title
string
Human-readable filing title.
ingested
boolean
true if this filing has been ingested into cf0.
curl https://api.cf0.ai/api/filings/company/US/0001045810/filings \
  -H "Authorization: Bearer <your-token>"

Ingest a filing

POST /api/filings/ingest
Start a background ingestion job to download and process a filing into cf0’s document store. Requires organisation membership. If a job already exists for the same filing, returns the existing job without creating a duplicate.

Request body

country
string
required
ISO 3166-1 alpha-2 country code.
local_id
string
required
Company identifier within the source (e.g. CIK for US, EDINET code for JP).
filing_ref
string
required
Source-specific filing reference from the filings list.
company_ticker
string
Exchange ticker or local code.
company_name
string
Human-readable company name.
filing
object
The full filing dict returned by the filings list endpoint. Required for non-US sources.

Response

job
object
The ingestion job, including id, status, and progress_pct.
created
boolean
true if a new job was created; false if an existing job was returned.
curl -X POST https://api.cf0.ai/api/filings/ingest \
  -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{
    "country": "US",
    "local_id": "0001045810",
    "filing_ref": "NVDA_10-K_2024-02-21",
    "company_ticker": "NVDA",
    "company_name": "NVIDIA Corporation"
  }'

Get ingestion job

GET /api/filings/ingest/{job_id}
Returns the status of a specific ingestion job.

List active ingestion jobs

GET /api/filings/ingest/active
Returns all active ingestion jobs for the authenticated organisation.

Stream ingestion progress

GET /api/filings/ingest/stream
SSE endpoint that streams ingestion job progress for your organisation.
Because browser EventSource cannot send custom headers, this endpoint authenticates via a token query parameter instead of the Authorization header.

Query parameters

token
string
required
Your Bearer token (without the Bearer prefix).

SSE events

EventDescription
progressJob status changed — includes job_id, status, progress_pct, company_name
completeJob finished successfully — includes the full job object
errorJob failed — includes job_id and error message
heartbeatKeep-alive ping, emitted every 30 seconds
The stream automatically closes after 5 minutes.
const es = new EventSource(
  `https://api.cf0.ai/api/filings/ingest/stream?token=${token}`
);

es.addEventListener('progress', (e) => {
  const { job_id, status, progress_pct } = JSON.parse(e.data);
  console.log(`Job ${job_id}: ${status} (${progress_pct}%)`);
});

es.addEventListener('complete', (e) => {
  console.log('Ingestion complete:', JSON.parse(e.data));
  es.close();
});

Get filing sections (table of contents)

GET /api/filings/sections/{country}/{filing_id}
Returns the table of contents for an ingested filing — a list of sections with slugs and titles.
sections
array
Array of section objects with item_number and title.
filing_id
string
The filing ID.
source
string
The regulatory source (e.g. "sec").
curl https://api.cf0.ai/api/filings/sections/US/NVDA_10-K_2024-02-21 \
  -H "Authorization: Bearer <your-token>"

Read a filing section

GET /api/filings/read/{country}/{filing_id}/{section_id}
Returns the plain-text content of a single filing section.
source
string
Regulatory source.
filing_id
string
Filing ID.
section
string
Section identifier.
content
string
Full text content of the section in markdown.
curl https://api.cf0.ai/api/filings/read/US/NVDA_10-K_2024-02-21/item-1 \
  -H "Authorization: Bearer <your-token>"