Siden beskriver de REST tjenester på Datafordeleren, der udstiller CPR data for private anvendere.

Få en introduktion til REST på Datafordeleren, hvis du har brug for en introduktion til og vejledning i, hvordan man kan anvende webservices, som udstilles på Datafordeleren.

Få en guide til helt konkrete anvisninger til at bruge en webservice fra Datafordeleren i Guide til REST på Selvbetjeningen.

Læs mere om CPR data til private virksomheder i CPRs dokumentation.



Sideinformation




Introduktion

Generelt
CPR private webservices udstiller udelukkende aktuelle data, og der kan ikke hentes data på personer, der har status = ’nedlagt’.I tilfælde hvor der er navne- og adressebeskyttelse på personer, vil adresser, udrejse/indrejse og navn ikke medtages i output.

Antal forekomster
Webservicemetoderne til private vil altid kun returnere 0 eller 1 forekomst. Såfremt de angivne søgeparametre giver match på flere forekomster, vil der komme et tomt resultat.Hvis du bruger count som parameter i et servicekald returneres -1 i svar, hvor der er mere end 1 resultat.

Adresser på døde personer
Døde personer har aldrig en aktuel adresse, udrejseindrejse eller forsvinding. Derfor vil personens seneste historiske adresse eller udrejse/indrejse blive vist i output. Oplysninger om forsvindinger vil altid komme med i output.Hvis personer som er døde, udrejst eller forsvundet har en kontaktadresse, vil den komme med i output.

Søgning på navne
Der kan søges på både aktuelle og historiske navnedele i tjenesten, men det er kun muligt at søge på en enkelt navnedel ud over efternavn. Særligt for parameteren navn.fornavne.eq skal man være opmærksom på, at tjenesten kun understøtter, at der søges på én fornavnedel ud over efternavnet. Hedder en person fx. Peter Frank Petersen anvendes følgende søgning: navn.fornavne.eq=Peter&navn.efternavn.eq=Petersen eller navn.fornavne.eq=Frank&navn.efternavn.eq=PetersenHvis man søger med navn.fornavne.eq=Peter%20Frank&navn.efternavn.eq=Petersen (dvs. to navnedele i fornavnet) vil det ikke virke.

Generelt om outputparametre
Hvor muligt leveres altid VirkningFra og VirkningTil samt tilhørende usikkerhedsmarkeringer.

Generelt om fejlkoder
Beskrivelsen af fejlkoder fremgår af siden Fejlkoder, som indeholder en liste over systemets fejlkoder med tilhørende beskeder og beskrivelser af fejlen.

Url opbygning for REST
Url for de enkelte services er opbygget af et endpoint efterfulgt af registernavn, servicenavn, versionen af servicen, servicetype (REST eller WFS etc.) samt metodenavn for REST services. Efter ? tilføjes parametre i kaldet, der kan indeholde generelle kaldeparametre for REST services og metode specifikke parametre.

Endpointet indeholder værtsnavnet, med et præfiks for miljøet hvis det ikke er produktionsmiljøet der tilgås. Hvis der er tale om fortrolige eller følsomme data, følger S5 og at servicen skal kaldes med certifikat derfor certservices - se miljøbeskrivelser.

Læs mere om sammensætning af url'er på siden REST på Datafordeleren eller se eksempler på, at parametre bliver tilføjet til url'er på Datafordeleren - eks. på anvendelse af bitemporalitet eller User stories.



Url-struktur for REST services <endpoint>/register/service/version/servicetype/metode?
Eksempel på url med certifikat

https://s5-certservices.datafordeler.dk/CPR/CprPrivateAdressName/2.0.0/rest/PrivatePersonCurrentAdressName?navn.fornavne.eq=x&navn.efternavn.eq=x&cadr.vejadresseringsnavn.eq=x&cadr.husnummer.eq=x&cadr.postnummer.eq=x



Services er specificeret til at give JSON som output, og dette er default såfremt output parameter ikke anvendes. Såfremt der angives XML som output parameter, leveres XML baseret på det specificerede JSON skema:

  • Der udføres samme sæt SQL'er (data fremsøgning) uafhængigt af ønsket format, og der hentes kun data der indgår i JSON skemaet.
  • Herefter formateres de fremsøgte data til det ønskede format ud fra JSON skemaet.

Om output er i XML eller JSON er et spørgsmål om syntaks og påvirker IKKE data indholdet.




Generelt for CPR webservices - private

I nedenstående afsnit beskrives de webservices på Datafordeleren, der udstiller CPR data til de private kunders anvendelse (aktuelle såvel som historiske).




Registernavn i SelvbetjeningenCPR
FormatXML/JSON
DLS version3.2.4
Sikkerhedszone

5 - Indeholder fortrolige eller følsomme data.

Adgangsniveau

Indgået aftale med CPR om anvendelse af data påkrævet.

Anvendt udstillingsmodel

Person

Udstillingsmodel forefindes: https://grunddatamodel.datafordeler.dk/

PagingAnvender paging.
Default paging-størrelse: 20
Dato- og tidsformat

Datoformat følger ISO 8601 Date and time format.

Alle datoer skrives med andre ord i formatet yyyy-mm-ddTHH:MM:SS.ssssss, hvor tidsangivelsen kan udelades.

Tidszonen kan angives enten ved (2019-02-05T07:50:14.687580+01:00 (for normaltid/vintertid)), (2019-07-05T07:50:14.687580+02:00 (for sommertid)) eller ved at benytte Z (2019-07-05T07:50:14.687580Z).





Oversigt over services/metoder

REST service

Metode

SLA kategori

Bemærkning

CprPrivateAdressNamePrivatePersonCurrentAdressNameAlmindelig

CprPrivateDateOfBirthName

PrivatePersonCurrentDateOfBirthName

Almindelig

Svartiderne på tjenesten kan opleves som utilstrækkelig. Der vil pågå yderligere svartidsoptimering

CprPrivatePNRPrivatePersonCurrentPNR Simpel





SLA kategorier i produktion- maksimal svartid i sekunder:

  • Simpel: 0.09
  • Almindelig: 1.0
  • Kompleks: 2.5





REST CprPrivateAdressName

Private kunders anvendelse af aktuelle CPR data med søgning på adresse og navn.


Metode - PrivatePersonCurrentAdressName


Eksempel på url med certifikat til version 2.0.0

https://s5-certservices.datafordeler.dk/CPR/CprPrivateAdressName/2.0.0/rest/PrivatePersonCurrentAdressName?navn.fornavne.eq=x&navn.efternavn.eq=x&cadr.vejadresseringsnavn.eq=x&cadr.husnummer.eq=x&cadr.postnummer.eq=x

Inputparametre

Obligatoriske parametre: fornavne (navn.fornavne.eq).

Enten cadr.husnummer.eq eller cadr.bygningsnummer.eq skal være angivet i servicekaldet.

NavnTypeBeskrivelseDefault værdiUUID fra udstillingsmodel

cadr.bygningsnummer.eq

String

Person.CprAdresse.bygningsnummerLigMed - Bygningsnummer er et persondatafelt, og anvendes på Grønland

 

EAID_ACD32207_32F0_4915_AAA8_9E2788B44F2F

cadr.etage.eq

String

Person.CprAdresse.etageLigMed - Angivelse af etage i adressen. 01 - 99 samt kl, k2, k3, st og blank. mz, kv, og pt kan desuden forekomme ved adresseregistreringer.

 

EAID_F7EC8E87_F0CC_497c_8CBA_540BF38A0841

cadr.husnummer.eq

String

Person.CprAdresse.husnummerLigMed - Angiver husnummer for en given bolig

Bemærk - Feltet angiver husnummer på en given bolig. Position 1-3: 001 - 999 eller blanke i alle tre positioner. Position 4: A - Z eller blank. Er de tre første positioner blanke er fjerde position også blank.

 

EAID_83469B46_64B3_49f1_8A47_357349B12725

cadr.postnummer.eq

Integer

Person.CprAdresse.postnummerLigMed - Postnummer

 

EAID_2E49BFE4_0E7D_47e1_934F_4A2BEF38D14E

cadr.sidedoer.eq

String

Person.CprAdresse.sidedoerLigMed - Sidedør nummer for en bolig, hvis værdien ikke er numerisk th. eller tv. og fire cifre, hvis værdien er numerisk.

 

EAID_542068CC_8B0B_41de_845D_63E39479BA22

cadr.vejadresseringsnavn.eq

String

Person.CprAdresse.vejadresseringsnavnLigMed - Forkortelse af adresse som bruges ved forsendelser

 

EAID_F35B588E_8604_45be_88EE_D88095DA8AE1

navn.efternavn.eq

String

Person.Navn.efternavnLigMed - En persons efternavne

 

EAID_D3E09BDA_7174_4555_92F0_A7093671DCCF

navn.fornavne.eq

String

Person.Navn.fornavneLigMed - En persons fornavne og mellemnavne

Sammenkædning af fornavne og mellemnavn



Outputparametre

MetodeSkema
Den inkluderede fil ”CPR_3.2.3_PersonPrivate.json” indeholder output som JSON-schema

Skema - filudtræk og webservices (CPR)






REST CprPrivateDateOfBirthName

Private kunders anvendelse af aktuelle CPR data med søgning på fødselsdato og navn.



Metode - PrivatePersonCurrentDateOfBirthName


Eksempel på url med certifikat til version 2.0.0

https://s5-certservices.datafordeler.dk/CPR/CprPrivateDateOfBirthName/2.0.0/rest/PrivatePersonCurrentDateOfBirthName?navn.fornavne.eq=x&navn.efternavn.eq=y&person.foedselsdato.eq=yyyy-mm-dd

Inputparametre

Obligatoriske parametre: Efternavn (navn.efternavn.eq), fornavne (navn.fornavne.eq) og fødselsdato (person.foedselsdato.eq)

NavnTypeBeskrivelseDefault værdiUUID fra udstillingsmodel

navn.efternavn.eq

String

Person.Navn.efternavnLigMed - En persons efternavne

 

EAID_D3E09BDA_7174_4555_92F0_A7093671DCCF

navn.fornavne.eq

String

Person.Navn.fornavneLigMed - En persons fornavne og mellemnavne

Sammenkædning af fornavne og mellemnavn


person.foedselsdato.eq

Date

Person.Person.foedselsdatoLigMed - Angiver hvilken dato fødslen har fundet sted. 

 

EAID_73A30E1A_3B25_4e2a_A0A0_3CFA34BBB97B


Outputparametre

MetodeSkema
Den inkluderede fil ”CPR_3.2.3_PersonPrivate.json” indeholder output som JSON-schema

Skema - filudtræk og webservices (CPR)






REST CprPrivatePNR

Private kunders anvendelse af aktuelle CPR data med søgning på et personnummer.



Metode - PrivatePersonCurrentPNR

Eksempel på url med certifikat til version 2.0.0

https://s5-certservices.datafordeler.dk/CPR/CprPrivatePNR/2.0.0/rest/PrivatePersonCurrentPNR?pnr.personnummer.eq=xxxxxxxxxx

Inputparametre

NavnTypeBeskrivelseDefault værdiUUID fra udstillingsmodel

pnr.personnummer.eq

String

Person.Personnummer.personnummerLigMed - Entydig identifikation af en person i CPR

 

EAID_674CBE6D_060E_46fe_BA9E_0E84874074F0


Outputparametre

MetodeSkema
Den inkluderede fil ”CPR_3.2.3_PersonPrivate.json” indeholder output som JSON-schema

Skema - filudtræk og webservices (CPR)