Resolve
GET
https://api.locapi.eu/v1/address/resolveThe complete address for an id from suggest or from a lookup with several candidates. This is the moment an address is billed.
Parameters#
| Parameter | Required | Description |
|---|---|---|
idstring | yes | The id of a suggestion or lookup candidate. Opaque; valid for 24 hours. |
Example#
curl -G "https://api.locapi.eu/v1/address/resolve" \
-H "X-Api-Key: $LOCAPI_API_KEY" \
--data-urlencode "id=adr_v1_…"{
"outcome": "found",
"requestId": "req_0192b0c4-…",
"result": {
"id": "adr_v1_…",
"label": "Unter den Linden 77, 10117 Berlin",
"precision": "building",
"address": {
"street": "Unter den Linden",
"houseNumber": "77",
"houseNumberAddition": null,
"postalCode": "10117",
"city": "Berlin",
"municipality": null,
"region": "Berlin",
"countryCode": "DE",
"location": {
"latitude": 52.5162,
"longitude": 13.3802
}
},
"retrievedAt": "2026-09-28T20:58:10Z"
},
"attribution": []
}Response fields#
Response
outcomestring- found. Anything else is an error response (404, 410, 503).
requestIdstring- The id of this request, also in the X-Request-Id header.
resultResolvedAddress- The full address.
attributionAttribution[]- Credits the source requires for this response; can be empty.
ResolvedAddress object
idstring- The id you resolved; from a found lookup, one you can resolve later without being billed again.
labelstring- The full address as one line, in the country's own notation.
precisionstring- How exact the address is. A lookup only returns building.
addressAddress- The address parts.
retrievedAtstring- When the source answered (UTC).
Address object
streetstring | null- Street name, as the source writes it. Null where the house number belongs to a village rather than a street (see locality).
houseNumberstring | null- House number, without the addition. In Slovakia the number the post writes: the orientation number on a street, otherwise the conscription number. In Czechia as the law writes it: 1903/14 (the orientation number's letter is the addition), or č.ev. 3 for an evidence number.
houseNumberAdditionstring | null- Addition to the house number (A, 1, bis), normalised; in Czechia the lower-case letter the law prescribes (14a); in Latvia the letter, a second number and the building part as the register writes them (A, /13, k-1); in Lithuania the letter and the building part (A, K5, A K2); in Estonia the lower-case letter and a second number as the register writes them (a, /1, a/1); in Denmark the capital letter (K); in France the repetition index as the register writes it (bis, ter, B), where B and bis are different additions.
houseNamestring | null- The house's name, where the register names the house instead of numbering it (Latvia, on the land: Riņņi; Estonia, a farm: Nigula, or a name with a number as one name: Uuetalu/3); houseNumber is then null. Null for an address with a number. A name is never a number, even a name of digits only.
localitystring | null- The village or settlement the address belongs to, where the source names one (Slovenia: the naselje). Not the postal city: Mezgovci ob Pesnici 15 has the postal city Dornava. A name in two official languages reads "Slovenian / Italian". In Estonia the small place or garden cooperative (Koiduvalguse AÜ), else the city district (Kesklinna linnaosa). In Denmark the supplementary town name (Tørring). In France the former commune of a merged commune (Saint-Denis-du-Béhélan).
postalCodestring | null- Postal code from the source, never copied from your input.
citystring | null- The postal city, not a district. Slovakia's register has none; there it is the municipality, as the post allows, and Bratislava or Košice for their boroughs. In Prague, the district the law adds: Praha 6. Latvia has no separate postal city: there it is the city, or else the parish (Vecates pag.). In Lithuania the settlement as the post writes it: a city or town in the nominative (Kaunas), any other settlement in the genitive with its type (Voriškių k.); locality is the same settlement. In Estonia the settlement as the register writes it (Urge küla, Tartu linn); in a city district the city (Tallinn). In Denmark the place of the postal code (Lemvig, København K). In France the postal place: the commune's name where the post names the commune, the city of an arrondissement (Paris), else the post's own place as it writes it (JUAN LES PINS).
municipalitystring | null- Municipality, when the source provides a name. In Latvia the novads (Valmieras nov.), or the state city itself (Rīga). In Lithuania as the law writes it (Varėnos r. sav.). In Estonia the rural or city municipality (Kohila vald, Tallinn). In Denmark empty: the register gives only a code. In France the commune (Antibes); in Paris, Lyon and Marseille the arrondissement (Paris 2e Arrondissement).
regionstring | null- Region or state, when the source provides it.
countryCodestring- ISO 3166-1 alpha-2.
locationLocation | null- Latitude and longitude (WGS84), when the source provides them.
Location object
latitudenumber- Degrees north (WGS84).
longitudenumber- Degrees east (WGS84).
Attribution object
textstring- The credit line to show.
urlstring | null- Where the credit links to, if anywhere.
licensestring | null- The licence identifier, if the source names one.
Errors#
| Status | code | Meaning |
|---|---|---|
| 400 | invalid_request | Invalid request |
| 401 | invalid_api_key | Invalid API key |
| 402 | payment_required | Payment required |
| 403 | account_blocked | Account blocked |
| 404 | not_found | Address not found |
| 410 | reference_expired | Reference expired |
| 422 | country_not_supported | Country not supported |
| 429 | fair_use_exceeded | Fair use exceeded |
| 429 | quota_exceeded | Free allowance used |
| 429 | rate_limit_exceeded | Rate limit exceeded |
| 429 | spend_cap_reached | Monthly spend cap reached |
| 503 | source_unavailable | Address source temporarily unavailable |
Good to know#
- Billed when found. The same
idis billed at most once: resolving it again is answered, but counts towards the fair-use allowance. - The
idof a found lookup is not billed again when you resolve it. - An
idis valid for 24 hours. After that, or when the country has moved to another source, the answer is410 reference_expired: search again. 404 not_foundmeans the address no longer exists in the source.