Du er ikke logget på
CPR Direkte matcher

Welcome to the documentation of the CPR Direkte matcher. Here you will find the following:

How is it working?

Geomatic's CPR matcher allows you to look up persons in the Danish CPR registry. It works by calling CPR's own CPR Direkte webservice. For further details about what data is available and why you would use this API instead of the CPR Direkte webservice read here.

Using CPR Direkte matcher API

The API for CPR Direkte matcher follows the standard API for matchers.

The Request

To find a match using CPR Direkte matcher, you need to make a GET request that looks as follows:

https://apps.conzoom.eu/api/v1/match/dk/cpr?in_x1=?&in_x2=?...

Input Arguments

As explained in the general documentation you pass the input to the CPR Direkte matcher in as the in_* query string parameters. For CPR Direkte matcher you can use the following in_* parameters:

Parameter Name Description
in_person_id CPR number The CPR number of the person supplied in the format DDMMYY-XXXX or DDMMYYXXXX.
in_name Name This argument must contain the name of the person.
in_birth_date Date of birth The date of birth of the person supplied in the format DDMMYY.
in_tele_per_key Tele person id The ID of a person from teledata.
in_kvhx Kvhx Use this argument if you have the kvhx or kvh. If you supply this, then you can omit the other arguments.
in_muni Kommune code If used, this argument must contain the kommune code.
in_strcode Street code If used, this argument must contain the street code.
in_stednavn Stednavn Stednavn is a town name that is used as part of a Danish address, when the street name of an address appears in multiple towns within the same post code.
in_adr Address Use this argument if you have the entire address as a single text string. If you supply this, then you can omit the other arguments.
in_houno House number If used, this argument must contain house number and/or letter. The argument can also handle floor/apartment number if this comes after the house number.
in_str Street If used, this argument must contain the street name. The street name can optionally be followed by housenumber/letter and floor/apartment number, but these can also be supplied as seperate arguments if desired.
in_pcode Post code / City If used, This argument must contain the post code and/or postaldistrikt/town/city name.
in_apt Apartment If used, this argument should contain floor, apartment number and/or door specifier.

Allowed Combinations of Input Arguments

Due to limitations in the CPR Direkte webservice, you have to use one of the following combiniations of inputs when matching:

Optional parameters specific for the CPR matcher

Optional parameters

You can add the following optional arguments as query string parameters:

The Response

The structure of match response is described here in the general documentation. For specific examples, see the example section below.

Batching

If you need to do multiple match requests, you can batch them using a batch request. This works in a very similiar way to the single match request.

Examples

Successful match

The following example will try to match on name Ole Stinson and address Vestervang 9 st 0053, 8000 Aarhus C:

https://apps.conzoom.eu/api/v1/match/dk/cpr?in_name=Ole Stinson&in_adr=Vestervang 9 st 0053, 8000 Aarhus C&vars=per_cpr_status,per_name,unadr_name

Unsuccessful match

The following example will try to match on name Luther Stinson and address Vestervang 9 st 0053, 8000 Aarhus C, but there is no person with that name on the address.

https://apps.conzoom.eu/api/v1/match/dk/cpr?in_name=Luther Stinson&in_adr=Vestervang 9 st 0053, 8000 Aarhus C&vars=per_cpr_status,per_name,unadr_name

Match Variables

In order to tell how good a match was, or the reason why no match was found, the CPR Direkte matcher returns the match variables.

A match variable outputs a category, which tells something about how good a match was. Below you can see the categories for the different match variables. Normally you only need to use one of them, unless you are investigating why a particular input is not matching as expected.

Detailed Match Variable

The detailed match variable is defined specifically for the CPR Direkte matcher. It would for most scenerios suffice to use this.

Specifik Matchkode - per_matchlvl_detail

ID Name Description
m Match
x No Match
i Insufficient Input
am Ambigious
dc CPR Not Available

Generic Match Variables

The generic match variables has some common categories that are shared among different matchers. These are useful if you are programming generically against different matchers, and want a common way of handling matches.

There is a generic match variable for each domain that is being matched. Therefore, these variables can be useful to inspect if you interested in matches on a particular domain.

Matchkode - per_matchlvl

ID Name Description
i Utilstrækkeligt input
x Ingen match
m Match