Company records in Latvia
Your agent looks up companies in Latvia through Latvian Company Data. The data comes from Latvian Open Data Portal (data.gov.lv) — Uzņēmumu reģistra atvērtie dati CKAN datastore_search API.
Latvian Company Data
Look up a Latvian company by number or name, returning identity, status, address, registration date and current officers where available.
- Source
- Latvian Open Data Portal (data.gov.lv) — Uzņēmumu reģistra atvērtie dati CKAN datastore_search API
- Price per call
- €0.05 · x402 $0.054
- Returns
- Name and number, Status, Address, Officers
- Last recorded test
- 5 Nov 2026, 100% of its tests passed on their latest run
- Method
- Computed by fixed rules and lookups; no AI model writes the answer.
What your agent sends
| Field | Type | Required | What it is |
|---|---|---|---|
task | string | No | Free-text input — first matching registration number or company name is used |
reg_number | string | No | Latvian registration number (11 digits) |
company_name | string | No | Latvian company name (fuzzy match) |
Example answer
{
"status": "Reģistrēts",
"address": "Mārupes nov., Mārupes pag., Lidosta \"Rīga\", Tehnikas iela 3",
"atvk_code": "807600",
"reg_number": "40003245752",
"company_name": "Air Baltic Corporation AS",
"company_type": "Akciju sabiedrība",
"jurisdiction": "LV",
"postal_index": "1053",
"register_type": "Komercreģistrs",
"sepa_creditor_id": "LV78ZZZ40003245752",
"termination_date": null,
"company_type_code": "AS",
"registration_date": "1995-02-08"
} Fields that come back
| Field | Type | Appears |
|---|---|---|
status | string | Always (present in every successful answer) |
address | string | Usually (present for most inputs) |
atvk_code | string | Usually (present for most inputs) |
legal_form | string or null | Always (present in every successful answer) |
legal_name | string | Always (present in every successful answer) |
reg_number | string | Always (present in every successful answer) |
vat_number | string or null | Usually (present for most inputs) |
company_name | string | Always (present in every successful answer) |
company_type | string | Always (present in every successful answer) |
jurisdiction | string | Always (present in every successful answer) |
postal_index | string | Usually (present for most inputs) |
register_type | string | Always (present in every successful answer) |
sepa_creditor_id | string | Usually (present for most inputs) |
termination_date | string | Sometimes (present only for some inputs) |
tier_2_available | boolean | Always (present in every successful answer) |
ubo_availability | string | Always (present in every successful answer) |
company_type_code | string | Always (present in every successful answer) |
date_incorporated | string or null | Always (present in every successful answer) |
registration_date | string | Always (present in every successful answer) |
registered_address | string or null | Always (present in every successful answer) |
legal_representatives | array or null | Usually (present for most inputs) |
primary_registration_id | string or null | Always (present in every successful answer) |
tier_2_available_reason | string | Always (present in every successful answer) |
ubo_availability_reason | string | Always (present in every successful answer) |
total_legal_representatives | integer or null | Usually (present for most inputs) |
How to call it
# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
-H "Authorization: Bearer $STRALE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"capability_slug": "latvian-company-data",
"inputs": {
"reg_number": "40003245752"
},
"max_price_cents": 5
}' {
"tool": "strale_execute",
"arguments": {
"slug": "latvian-company-data",
"inputs": {
"reg_number": "40003245752"
},
"max_price_cents": 5
}
} import { Strale } from "straleio";
const strale = new Strale({ apiKey: process.env.STRALE_API_KEY! });
const result = await strale.do({
capability_slug: "latvian-company-data",
inputs: {
"reg_number": "40003245752"
},
max_price_cents: 5,
}); import os
from straleio import Strale, DoRequest
strale = Strale(api_key=os.environ["STRALE_API_KEY"])
result = strale.do(DoRequest(
capability_slug="latvian-company-data",
inputs={
"reg_number": "40003245752",
},
max_price_cents=5,
)) # No account. The first request answers 402 with the price in USDC;
# an x402 client pays it from your wallet and repeats the request.
curl -i 'https://api.strale.io/x402/v2/latvian-company-data?reg_number=40003245752' Limitations
Only current officers are listed; no birth dates
Lists persons currently entitled to represent the entity, including board members and chairs, from the Latvian Enterprise Register’s open dataset. Historical and resigned officers are excluded, and `date_of_birth` is always null.
What to do instead: For historical officer data, order an extract from the Latvian Enterprise Register (info.ur.gov.lv)
New filings can take a day to appear
The Latvian Open Data Portal publishes a daily snapshot. Filings submitted today may not be reflected in the API response until the next daily refresh.
Owners and financial statements are not included
This capability returns the structured register record only. Beneficial owners (Patiesie labuma guvēji) and financial statements (Gada pārskatu finanšu dati) are published as separate data.gov.lv datasets and are not included in this response.
Creditor identifiers and postal indexes can be missing
The SEPA creditor identifier and postal index fields are populated for most actively registered legal entities but may be missing for older or terminated records.
Bundled checks for Latvia
No bundled check for Latvia.
Screen the company or its people
Results are matches for a person to review, not a verdict.
- Sanctions Check €0.20
- PEP Check €0.05
- Adverse Media Check €0.20