Download OpenAPI specification:Download
The Kontakto Business Data Service is a high-performance, low-latency API for accessing Finnish business data from multiple sources.
Engineered with exceptional speed in mind, Kontakto is an ideal solution for powering real-time, user-facing applications where performance is critical.
Create an account at Kontakto.fi and get your API key.
Returns company details based on the business ID
businessId required | string Example: 1234567-8 Business ID of the company |
{- "id": "string",
- "businessId": "string",
- "vatId": "string",
- "businessName": "string",
- "auxiliaryNames": [
- "string"
], - "parallelNames": [
- "string"
], - "operationalStatus": true,
- "statusAsOf": "string",
- "statusDescription": "string",
- "countryCode": "string",
- "languageCode": "string",
- "domicileCity": "string",
- "domicileCode": "string",
- "industryDescription": "string",
- "industryAsOf": "string",
- "tol2008Code": "string",
- "legalForm": "string",
- "legalFormCode": "string",
- "legalFormAsOf": "string",
- "sector": "associations_and_foundations",
- "establishmentDate": "string",
- "otherAddress": [
- {
- "city": "string",
- "poBox": true,
- "source": "string",
- "street": "string",
- "careOf": "string",
- "country": "string",
- "postalCode": "string",
- "addressType": "string"
}
], - "website": [
- {
- "name": "string",
- "source": "string",
- "content": "string",
- "website": "string",
- "registered": true,
- "description": "string",
- "websiteType": "string",
- "websiteStatus": "string"
}
], - "domain": [
- {
- "domain": "string",
- "source": "string",
- "description": "string"
}
], - "phoneNumber": [
- {
- "source": "string",
- "numberType": "string",
- "countryCode": "string",
- "phoneNumber": "string"
}
], - "register": [
- {
- "asOf": "string",
- "registry": "string",
- "authority": "string",
- "registered": true,
- "registerId": "string",
- "registrationStatusDescription": "string"
}
], - "eInvoiceAddress": [
- {
- "public": true,
- "address": "string",
- "sending": true,
- "receiving": true,
- "attachments": true,
- "businessId": "string",
- "operatorId": "string",
- "addressName": "string",
- "addressType": "string",
- "lastUpdated": "string",
- "operatorName": "string",
- "primaryReceivingAddress": true
}
], - "kontaktoRating": {
- "asOf": "string",
- "color": "string",
- "reason": "string",
- "reasonCode": "string"
}
}
Search companies with compact results for typeahead functionality. Hides black-rated companies and companies who have requested to be hidden from Kontakto platform by default. You can use advanced search to get all companies and do the filtering manually.
Use Cases: Perfect for autocomplete dropdowns, company selection forms, and quick company lookups. Returns essential company information including business ID, name, auxiliary names, and Kontakto rating.
q | string Example: q=Ratkaisu Search query |
limit | string Example: limit=10 Maximum number of results |
{- "hits": [
- {
- "businessId": "3535345-5",
- "businessName": "Oy Ratkaisu Ab",
- "auxiliaryNames": [
- "Insinööritoimisto Ratkaisu",
- "Ratkaisu Asiantuntijapalvelut"
], - "kontaktoRating": "green",
- "parallelNames": [ ]
}
], - "estimatedTotalHits": 0,
- "processingTimeMs": 0
}
Advanced company search with filtering and field projection capabilities.
Filtering: Use operations =
, !=
, >=
, >
, <=
, <
, IN
, NOT IN
, TO
, EXISTS
, NOT EXISTS
, IS NULL
, IS NOT NULL
, IS EMPTY
, IS NOT EMPTY
, CONTAINS
, NOT CONTAINS
, STARTS WITH
, NOT STARTS WITH
Field Projection: Use the fields
parameter to specify which fields to include in the response. You can use any fields specified in the company schema, including nested fields with dot notation (e.g., kontaktoRating.color
). If omitted, returns complete company data.
q | string Search query |
filter | string Filter syntax |
fields | string Comma-separated list of fields to include in the response. Use dot notation for nested fields (e.g., 'kontaktoRating.color'). If omitted, returns complete company data. Examples: 'businessId,businessName' for minimal data, 'businessId,businessName,kontaktoRating.color,address.city' for specific fields. |
limit | number Default: 10 Maximum number of results (1-100, default: 10) |
offset | number Default: 0 Number of results to skip |
{- "q": "Kontakto",
- "filter": "kontaktoRating.color = \"green\" AND postalAddress.city = \"Helsinki\"",
- "fields": "businessId,businessName,kontaktoRating.color,address.city,website",
- "limit": 10,
- "offset": 0
}
{- "hits": [
- {
- "id": "string",
- "businessId": "string",
- "vatId": "string",
- "businessName": "string",
- "auxiliaryNames": [
- "string"
], - "parallelNames": [
- "string"
], - "operationalStatus": true,
- "statusAsOf": "string",
- "statusDescription": "string",
- "countryCode": "string",
- "languageCode": "string",
- "domicileCity": "string",
- "domicileCode": "string",
- "industryDescription": "string",
- "industryAsOf": "string",
- "tol2008Code": "string",
- "legalForm": "string",
- "legalFormCode": "string",
- "legalFormAsOf": "string",
- "sector": "associations_and_foundations",
- "establishmentDate": "string",
- "otherAddress": [
- {
- "city": "string",
- "poBox": true,
- "source": "string",
- "street": "string",
- "careOf": "string",
- "country": "string",
- "postalCode": "string",
- "addressType": "string"
}
], - "website": [
- {
- "name": "string",
- "source": "string",
- "content": "string",
- "website": "string",
- "registered": true,
- "description": "string",
- "websiteType": "string",
- "websiteStatus": "string"
}
], - "domain": [
- {
- "domain": "string",
- "source": "string",
- "description": "string"
}
], - "phoneNumber": [
- {
- "source": "string",
- "numberType": "string",
- "countryCode": "string",
- "phoneNumber": "string"
}
], - "register": [
- {
- "asOf": "string",
- "registry": "string",
- "authority": "string",
- "registered": true,
- "registerId": "string",
- "registrationStatusDescription": "string"
}
], - "eInvoiceAddress": [
- {
- "public": true,
- "address": "string",
- "sending": true,
- "receiving": true,
- "attachments": true,
- "businessId": "string",
- "operatorId": "string",
- "addressName": "string",
- "addressType": "string",
- "lastUpdated": "string",
- "operatorName": "string",
- "primaryReceivingAddress": true
}
], - "kontaktoRating": {
- "asOf": "string",
- "color": "string",
- "reason": "string",
- "reasonCode": "string"
}
}
], - "query": "Kontakto",
- "processingTimeMs": 15,
- "limit": 10,
- "offset": 0,
- "estimatedTotalHits": 471
}
Search Finnish postal codes with comprehensive location information. Returns postal code details including municipality names in Finnish and Swedish, administrative areas, and geographic codes. Ideal for address validation and location-based applications.
q | string Example: q=Helsinki Search query |
limit | string Example: limit=10 Maximum number of results |
{- "hits": [
- {
- "date": "2024-01-01",
- "postcode": "00100",
- "postcodeFiName": "Helsinki",
- "postcodeSvName": "Helsingfors",
- "postcodeAbbrFi": "HKI",
- "postcodeAbbrSv": "HFO",
- "validFrom": "2024-01-01",
- "typeCode": "1",
- "adAreaCode": "01",
- "adAreaFi": "Uusimaa",
- "adAreaSv": "Nyland",
- "municipalCode": "091",
- "municipalNameFi": "Helsinki",
- "municipalNameSv": "Helsingfors",
- "municipalLanguageRatioCode": "1",
- "country": "FI"
}
], - "estimatedTotalHits": 0,
- "processingTimeMs": 0
}
Fast address suggestions for checkout forms, registration workflows, and autocomplete functionality. Returns essential address information optimized for user interface components including unique address identifiers for form handling.
q required | string >= 2 characters Example: q=Mannerheimintie Search query (minimum 2 characters) |
limit | string Example: limit=10 Maximum number of results |
{- "hits": [
- {
- "id": "b75f82f3-4075-461a-b033-aa35724a3155",
- "addressFin": "Mannerheimintie 1",
- "addressSwe": "Mannerheimvägen 1",
- "addressNameFin": "Mannerheimintie",
- "addressNameSwe": "Mannerheimvägen",
- "numberPartOfAddressNumber": 71,
- "postalCode": "00100",
- "postalOfficeFin": "Helsinki",
- "postalOfficeSwe": "Helsingfors",
- "domicileCode": "091",
- "country": "FI"
}
], - "estimatedTotalHits": 0,
- "processingTimeMs": 0,
- "source": "Suomen ympäristökeskuksen (Syke)"
}
Advanced address search with filtering and field projection capabilities. Ideal for complex queries requiring detailed address information with geographic coordinates and municipality data.
Filtering: Use operations =
, !=
, >=
, >
, <=
, <
, IN
, NOT IN
, TO
, EXISTS
, NOT EXISTS
, IS NULL
, IS NOT NULL
, IS EMPTY
, IS NOT EMPTY
, CONTAINS
, NOT CONTAINS
, STARTS WITH
, NOT STARTS WITH
Field Projection: Use the fields
parameter to specify which fields to include in the response. You can use any fields specified in the address schema, including nested fields with dot notation (e.g., coordinates.longitude
). If omitted, returns complete address data.
Pagination: Use limit
and offset
parameters for result pagination. The hasMore
field indicates if additional results are available.
query required | string non-empty Search query |
limit | number Maximum number of results |
offset | number Number of results to skip |
filters | Array of strings Meilisearch filter expressions |
fields | string Comma-separated list of fields to include in the response. Use dot notation for nested fields (e.g., 'coordinates.longitude'). If omitted, returns complete address data. Examples: 'id,addressFin,postalCode' for minimal data, 'id,addressFin,postalCode,coordinates' for specific fields. |
{- "query": "Mannerheimintie Helsinki",
- "limit": 20,
- "offset": 0,
- "filters": [
- "postalCode = 00100"
], - "fields": "id,addressFin,postalCode,coordinates"
}
{- "hits": [
- {
- "id": "b75f82f3-4075-461a-b033-aa35724a3155",
- "addressFin": "Mannerheimintie 1",
- "addressSwe": "Mannerheimvägen 1",
- "addressNameFin": "Mannerheimintie",
- "addressNameSwe": "Mannerheimvägen",
- "numberPartOfAddressNumber": 71,
- "postalCode": "00100",
- "postalOfficeFin": "Helsinki",
- "postalOfficeSwe": "Helsingfors",
- "municipalityNumber": "091",
- "domicileCode": "091",
- "coordinates": {
- "longitude": 24.945831,
- "latitude": 60.169856
}, - "country": "FI",
- "buildings": [
- {
- "id": "building-uuid-123",
- "buildingKey": "building-key-123",
- "permanentBuildingIdentifier": "PERM123456",
- "propertyIdentifier": "PROP789",
- "completionDate": "2020-01-15",
- "demolitionDate": null,
- "mainPurpose": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "usageStatus": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "facadeMaterial": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "heatingMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "heatingEnergySource": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "materialLoadBearing": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "constructionMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "protectionMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "volume": 15000.5,
- "numberOfStoreys": 8,
- "grossFloorArea": 2500.75,
- "totalArea": 2200.25,
- "floorArea": 2000,
- "apartmentCount": 16,
- "isAccessible": true,
- "votingDistrictNumber": "001",
- "cultureHistoricalSignificance": null,
- "coordinates": {
- "longitude": 24.945831,
- "latitude": 60.169856
}, - "pointLocationSrid": 4326,
- "modifiedTimestampUtc": "2024-01-15T10:30:00Z",
- "createdAt": "2024-01-01T00:00:00Z",
- "updatedAt": "2024-01-15T10:30:00Z"
}
]
}
], - "estimatedTotalHits": 0,
- "processingTimeMs": 0,
- "query": "string",
- "limit": 0,
- "offset": 0,
- "hasMore": true,
- "source": "Suomen ympäristökeskuksen (Syke)"
}
Fetch complete address information by unique address identifier. Returns detailed address data including building information, coordinates, and all available fields.
id required | string Example: b75f82f3-4075-461a-b033-aa35724a3155 Unique address identifier |
{- "id": "b75f82f3-4075-461a-b033-aa35724a3155",
- "addressFin": "Mannerheimintie 1",
- "addressSwe": "Mannerheimvägen 1",
- "addressNameFin": "Mannerheimintie",
- "addressNameSwe": "Mannerheimvägen",
- "numberPartOfAddressNumber": 71,
- "postalCode": "00100",
- "postalOfficeFin": "Helsinki",
- "postalOfficeSwe": "Helsingfors",
- "municipalityNumber": "091",
- "domicileCode": "091",
- "coordinates": {
- "longitude": 24.945831,
- "latitude": 60.169856
}, - "country": "FI",
- "buildings": [
- {
- "id": "building-uuid-123",
- "buildingKey": "building-key-123",
- "permanentBuildingIdentifier": "PERM123456",
- "propertyIdentifier": "PROP789",
- "completionDate": "2020-01-15",
- "demolitionDate": null,
- "mainPurpose": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "usageStatus": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "facadeMaterial": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "heatingMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "heatingEnergySource": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "materialLoadBearing": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "constructionMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "protectionMethod": {
- "id": "purpose-1",
- "descriptionFi": "Asuinrakennus",
- "descriptionSv": "Bostadshus",
- "descriptionEn": "Residential building"
}, - "volume": 15000.5,
- "numberOfStoreys": 8,
- "grossFloorArea": 2500.75,
- "totalArea": 2200.25,
- "floorArea": 2000,
- "apartmentCount": 16,
- "isAccessible": true,
- "votingDistrictNumber": "001",
- "cultureHistoricalSignificance": null,
- "coordinates": {
- "longitude": 24.945831,
- "latitude": 60.169856
}, - "pointLocationSrid": 4326,
- "modifiedTimestampUtc": "2024-01-15T10:30:00Z",
- "createdAt": "2024-01-01T00:00:00Z",
- "updatedAt": "2024-01-15T10:30:00Z"
}
]
}