nvNeuralVerge
Corporate registry

Latvia Company Filings API and MCP — Annual Reports by Financial Year

Send a registration number and get the company's filed annual reports as a list, newest first: financial year, report type, period and whether the report is consolidated.

You send
A Latvian registration number or a link to the record on the register
You get back
Filed annual reports, newest first, with financial year, type and kinds of report
Coverage
Latvia — entities on Register of Enterprises.
Price
1 point per returned record — $1 per 1,000
Billed per record actually returned, capped by max_items. A request that returns nothing costs nothing.
Comparison

Ways to get this data

Three approaches teams use today, and where each one runs into trouble.

ApproachWhat it takesCostTrade-off
Register of Enterprises directlyOpen the company on Register of Enterprises and page through the listUsually free, sometimes per-documentA different interface, language and data shape for every country you add
Collecting it yourselfBuild and host a crawler per register, then keep each one aliveInfrastructure and maintenanceRegisters change their pages without warning, and nobody is on the hook when yours breaks
NeuralVergeOne request, the same shape as every other source in the catalog$1 per 1,000, misses not billedCovers Latvia — other countries are separate sources with the same request format
Response

What you get back

Every field in the example response below.

FieldTypeDescription
companystringRegistration number you sent.
company_idstringRegistration number as resolved.
max_itemsnumberCap on records returned.
start_pagenumberResult page the run started from.
partialbooleanTrue when the run stopped before reaching max_items.
machine.total_itemsnumberNumber of records returned.
machine.total_foundnumberTotal filings on the register for the company.
machine.first_itemobjectFirst returned record, same shape as items.
machine.items[]arrayReturned filings.
machine.items[].registration_numberstringRegistration number with the year, e.g. 40003000642-2025.
machine.items[].document_numberstringSame value as registration_number in the sample.
machine.items[].company_registration_numberstringRegistration number of the company.
machine.items[].namestringReport name, e.g. Annual report 2025 (with consolidated report).
machine.items[].typestringReport type, e.g. Annual report or Annual report, consolidated.
machine.items[].financial_yearnumberFinancial year of the report.
machine.items[].periodstringReporting period.
machine.items[].kinds[]arrayReport kind codes as published, e.g. GP and K.
machine.items[].consolidatedbooleanTrue when a consolidated report was filed.
machine.items[].urlstringLink to the entity on the register.
machine.items[].rawstringThe register's own notation for the entry.
machine.items[].datenullNull in the sample.
machine.items[].statusnullNull in the sample.
machine.items[].addressnullNull in the sample.
machine.items[].formatnullNull in the sample.
machine.page_countnumberResult pages read.
machine.blockedbooleanTrue when the register could not be read.
Response

Example response

A real response, as returned.

{
  "session_id": "11111111-1111-1111-1111-111111111111",
  "kind": "lv_company_filings",
  "company": "40003000642",
  "company_id": "40003000642",
  "max_items": 2,
  "start_page": 1,
  "partial": false,
  "human": "# Latvia — Register of Enterprises — company filings\n\n- **Company:** 40003000642\n- **Results:** 2 of 30 found\n- **Proxy traffic:** 2.2 KB",
  "machine": {
    "total_items": 2,
    "first_item": {
      "registration_number": "40003000642-2025",
      "document_number": "40003000642-2025",
      "company_registration_number": "40003000642",
      "name": "Annual report 2025 (with consolidated report)",
      "status": null,
      "address": null,
      "url": "https://info.ur.gov.lv/#/legal-entity/40003000642",
      "company_type": null,
      "incorporation_date": null,
      "date": null,
      "type": "Annual report, consolidated",
      "financial_year": 2025,
      "period": "2025",
      "kinds": [
        "GP",
        "K"
      ],
      "consolidated": true,
      "format": null,
      "raw": "2025 (GP, K)"
    },
    "items": [
      {
        "registration_number": "40003000642-2025",
        "document_number": "40003000642-2025",
        "company_registration_number": "40003000642",
        "name": "Annual report 2025 (with consolidated report)",
        "status": null,
        "address": null,
        "url": "https://info.ur.gov.lv/#/legal-entity/40003000642",
        "company_type": null,
        "incorporation_date": null,
        "date": null,
        "type": "Annual report, consolidated",
        "financial_year": 2025,
        "period": "2025",
        "kinds": [
          "GP",
          "K"
        ],
        "consolidated": true,
        "format": null,
        "raw": "2025 (GP, K)"
      },
      {
        "registration_number": "40003000642-2024",
        "document_number": "40003000642-2024",
        "company_registration_number": "40003000642",
        "name": "Annual report 2024",
        "status": null,
        "address": null,
        "url": "https://info.ur.gov.lv/#/legal-entity/40003000642",
        "company_type": null,
        "incorporation_date": null,
        "date": null,
        "type": "Annual report",
        "financial_year": 2024,
        "period": "2024",
        "kinds": [
          "GP"
        ],
        "consolidated": false,
        "format": null,
        "raw": "2024 (GP)"
      }
    ],
    "total_found": 30,
    "page_count": 1,
    "blocked": false,
    "proxy_traffic_bytes": 2296
  },
  "total_points": 2
}
Integration

How to run it

The same lookup works from the app, the API, or as a tool an agent can call mid-task.

Results come back in the same envelope as every other source: a session id, a readable summary, the structured result and the points charged.

curl -X POST https://api.neuralverge.ai/functions/v1/run-lv-company-filings \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"company":"40003000642","max_items":2}'
Use cases

What teams use it for

Where this field shows up in an actual workflow.

Track reporting history

See which financial years have an annual report on file.

Spot consolidated reporting

Tell groups that file consolidated reports from single entities.

Due diligence

Check that a counterparty keeps filing annual reports before you extend credit.

Monitoring

Check the latest filed financial year for each company in a watch list.

Coverage & limits

Coverage, freshness and limits

What this source covers, how fresh it is, and where it stops.

Coverage

Latvia — entities on Register of Enterprises.

Freshness

Read at request time, so the answer reflects the register as it stands when you ask.

Handling

Register of Enterprises is a public register. Every response carries the source URL it was read from and a session id you can trace.

What it will not do
  • —Lists the filings and their financial year. The sample has no per-document dates or download links, and the link points to the company record.
  • —Some summary fields such as status and address are null on this source; use the Latvia company lookup for those.
  • —The report kind codes come as the register publishes them (GP, K in the sample).
FAQ

Questions, answered

No. It lists which annual reports are filed, by financial year and kind. It does not read the figures inside them.

Related

Related sources

Try latvia company filings on your own data

One request format across every source in the catalog.

Get started