Datavask
Datavask (address cleaning) takes an address as someone wrote it — misspelt, abbreviated, in any order — and finds the DAR addresses it means. The line is read into street, house number, floor, door, supplementary town name, postcode and town; each candidate is scored by how many edits each of those is away from what was written; and the answer gets a category that says how far to trust the best one. Use it to clean a customer list, or to check an address typed without autocomplete.
/datavask/adresser
1 look-up when the answer offers at least one address, however many it offers. An answer with none is free.
| Parameter | Description |
|---|---|
| betegnelse | Required. The address as one line of text, e.g. Amagerbrogade 217A, kl. 5, 2300 København S. At most 200 characters; missing or longer answers 400 QueryParameterFormatError. |
A street name with a typo, the town abbreviated
Request
GET https://api.getaddress.dk/datavask/adresser?betegnelse=Amagerbrogde%20217A%2C%20kl.%205%2C%202300%20Kbh%20S&api-key={your-api-key}
Response
{
"kategori": "B",
"resultater": [
{
"adresse": {
"id": "3bba05d4-c8c4-4c90-8a64-a4dff11b9d1b",
"vejnavn": "Amagerbrogade",
"adresseringsvejnavn": "Amagerbrogade",
"husnr": "217A",
"etage": "kl",
"dør": "5",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S",
"stormodtagerpostnr": null,
"stormodtagerpostnrnavn": null,
"status": 1,
"darstatus": 3,
"virkningstart": "2013-01-03T13:56:48.627",
"virkningslut": null,
"adgangsadresseid": "099f3e28-4fb8-4c61-86a1-edff5df52409",
"href": "https://api.getaddress.dk/adresser/3bba05d4-c8c4-4c90-8a64-a4dff11b9d1b"
},
"aktueladresse": {
"id": "3bba05d4-c8c4-4c90-8a64-a4dff11b9d1b",
"vejnavn": "Amagerbrogade",
"adresseringsvejnavn": "Amagerbrogade",
"husnr": "217A",
"etage": "kl",
"dør": "5",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S",
"stormodtagerpostnr": null,
"stormodtagerpostnrnavn": null,
"status": 1,
"darstatus": 3,
"virkningstart": "2013-01-03T13:56:48.627",
"virkningslut": null,
"adgangsadresseid": "099f3e28-4fb8-4c61-86a1-edff5df52409",
"href": "https://api.getaddress.dk/adresser/3bba05d4-c8c4-4c90-8a64-a4dff11b9d1b"
},
"vaskeresultat": {
"variant": {
"vejnavn": "Amagerbrogade",
"husnr": "217A",
"etage": "kl",
"dør": "5",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S"
},
"afstand": 1,
"forskelle": {
"vejnavn": 1,
"husnr": 0,
"etage": 0,
"dør": 0,
"supplerendebynavn": 0,
"postnr": 0,
"postnrnavn": 0
},
"parsetadresse": {
"vejnavn": "amagerbrogde",
"husnr": "217a",
"etage": "kl",
"dør": "5",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "kbh s"
},
"ukendtetokens": [],
"anvendtstormodtagerpostnummer": null
}
}
]
}
The answer
| Field | Description |
|---|---|
| kategori |
A: the best result matches exactly, and nothing else comes as close.B: one result is clearly best — house number, floor, door and postcode (or town) are right
and the street name is at most a typo or two away. Safe to use.C: uncertain. The results are candidates; let a person choose, or treat the address as not found.
An answer with no results is always C.
|
| resultater | Up to 10 results, best first. |
| adresse | The matched address: its id, street, house number, floor, door, postcode, status and validity, and an href to the full record at /adresser/{id}. |
| aktueladresse | The address as it is now. This service holds current addresses only, so it is always the same record as adresse. |
| vaskeresultat.variant | The matched address's own parts, as they were compared. |
| vaskeresultat.forskelle | Per part, the number of edits between what was written and variant. |
| vaskeresultat.afstand | The total of forskelle: 0 is an exact match. |
| vaskeresultat.parsetadresse | How the line was read, lower-cased. |
| vaskeresultat.ukendtetokens | Words in the line that fitted no part. |
| vaskeresultat.anvendtstormodtagerpostnummer | Always null. |
/datavask/adgangsadresser
The same for access addresses: a floor or door in the line is ignored, and each result carries
adgangsadresse and aktueladgangsadresse in place of adresse and
aktueladresse, with no etage or dør. 1 look-up when the answer
offers at least one access address; free otherwise.
Request
GET https://api.getaddress.dk/datavask/adgangsadresser?betegnelse=Amagerbrogade%20217A%2C%202300%20K%C3%B8benhavn%20S&api-key={your-api-key}
Response
{
"kategori": "A",
"resultater": [
{
"adgangsadresse": {
"id": "099f3e28-4fb8-4c61-86a1-edff5df52409",
"vejnavn": "Amagerbrogade",
"adresseringsvejnavn": "Amagerbrogade",
"husnr": "217A",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S",
"stormodtagerpostnr": null,
"stormodtagerpostnrnavn": null,
"status": 1,
"darstatus": 3,
"virkningstart": "2012-12-10T13:52:28.567",
"virkningslut": null,
"href": "https://api.getaddress.dk/adgangsadresser/099f3e28-4fb8-4c61-86a1-edff5df52409"
},
"aktueladgangsadresse": {
"id": "099f3e28-4fb8-4c61-86a1-edff5df52409",
"vejnavn": "Amagerbrogade",
"adresseringsvejnavn": "Amagerbrogade",
"husnr": "217A",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S",
"stormodtagerpostnr": null,
"stormodtagerpostnrnavn": null,
"status": 1,
"darstatus": 3,
"virkningstart": "2012-12-10T13:52:28.567",
"virkningslut": null,
"href": "https://api.getaddress.dk/adgangsadresser/099f3e28-4fb8-4c61-86a1-edff5df52409"
},
"vaskeresultat": {
"variant": {
"vejnavn": "Amagerbrogade",
"husnr": "217A",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "København S"
},
"afstand": 0,
"forskelle": {
"vejnavn": 0,
"husnr": 0,
"supplerendebynavn": 0,
"postnr": 0,
"postnrnavn": 0
},
"parsetadresse": {
"vejnavn": "amagerbrogade",
"husnr": "217a",
"supplerendebynavn": null,
"postnr": "2300",
"postnrnavn": "københavn s"
},
"ukendtetokens": [],
"anvendtstormodtagerpostnummer": null
}
}
]
}
The answer has DAWA's shape, but the scoring is our own: the same line can get a different category, distances or order than DAWA gave it. See Differences from DAWA.