Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Som klient sender man et ReplicationRequest til servicen. Headeren skal indeholde en DGWS 1.0.1 header.

Bemærk at registerVersion-parameteren er frivillig. Hvis den udelades, svarer det til angive værdien 1.

Herudover skal der også vælges et register og en datatype. En liste af registre og deres datatyper kan findes på siden Stamdataregistre og tilhørende datatyper. På siden kan man bl.a. se, at registreret "cpr" fx har datatypen "person". Et request for dette vil se ud som følgende forespørgesel herunder.

Nærmere beskrivelse af registre og deres datatyper kan læses på siden Dokumentation af stamdataregistre.

Forespørgsel:                            

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Header>
                    …  ---  
  </S:Header>
  <S:Body>
    <ns1:ReplicationRequest xmlns:ns1="http://nsi.dk/2011/10/21/StamdataKrs/">
      <register>cpr</register>
      <datatype>person</datatype>
      <version>1</version>
      <registerVersion>1</registerVersion>
      <offset>0</offset>
    </ns1:ReplicationRequest>
  </S:Body>
</S:Envelope>

Headeren skal indeholde en DGWS 1.0.1 header.

Bemærk at registerVersion-parameteren er frivillig. Hvis den udelades, svarer det til angive værdien 1.

Hvis alt går Hvis alt går som forventet og forespørgslen bliver godkendt modtages et svar:

...

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Header>
                     ---
  </S:Header>
  <S:Body>
    <ns1:ReplicationResponse xmlns:ns1="http://nsi.dk/2011/10/21/StamdataKrs/">
      <atom:feed xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://nsi.dk/-/stamdata/3.0/cpr">
        <atom:id>tag:nsi.dkersonLookupWithSubscriptionIntegrationTest.java,2011:cpr/person/v1</atom:id>
        <atom:updated>2011-10-25T07:02:08.045Z</atom:updated>
        <atom:title>Stamdata Registry Feed</atom:title>
        <atom:author>
          <atom:name>National Sundheds IT</atom:name>
        </atom:author>
                    …
           ---  
      </atom:feed>
    </ns1:ReplicationResponse>
  </S:Body>
</S:Envelope>

...

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Header>
                     --- 
  </S:Header>
  <S:Body>
    <ns1:ReplicationRequest xmlns:ns1="http://nsi.dk/2021/03/03/StamdataRfs/">
        <register>cpr</register>
       <datatype>person</datatype>
       <version>1</version>
       <registerVersion>1</registerVersion>
       <idList>
           <id>1112579876</id>
           <id>2211657418</id>
       </idList>
       <filter>filter 1</filter>
   </ns1:ReplicationRequest>
  </S:Body>
</S:Envelope>

...

Her følger et mere detaljeret output fra KRS. Tolkning af dette er beskrevet i afsnittet efter.

Code Block
languagexml
  <atom:feed xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://nsi.dk/-/stamdata/3.0/cpr">
    <atom:id>tag:nsi.dk,2011:cpr/person/v1</atom:id>
    <atom:updated>2011-11-07T09:56:12.278Z</atom:updated>
    <atom:title>Stamdata Registry Feed</atom:title>
    <atom:author>
      <atom:name>National Sundheds IT</atom:name>
    </atom:author>
    <atom:entry>
      <atom:id>tag:nsi.dk,2011:cpr/person/v1/13206597710000000085</atom:id>
      <atom:title/>
      <atom:updated>2011-11-07T09:56:11.000Z</atom:updated>
      <atom:content type="application/xml">
        <person>
          <cpr>0102451234</cpr>
          <koen>M</koen>
          <fornavn>Hans</fornavn>
          <mellemnavn/>
          <efternavn>Hansen</efternavn>
          <coNavn></coNavn>
          <lokalitet/>
          <vejnavn>Ligusterv&#xE6;nget</vejnavn>
          <bygningsnummer>42</bygningsnummer>
          <husnummer>123</husnummer>
          <etage>12</etage>
          <sideDoerNummer>th.</sideDoerNummer>
          <bynavn>Enby</bynavn>
          <postnummer>1448</postnummer>
          <postdistrikt>N&#xF8;ddebo</postdistrikt>
          <status>01</status>
          <gaeldendeCPR>3105459876</gaeldendeCPR>
          <foedselsdato>1947-12-24T00:00:00+01:00</foedselsdato>
          <stilling/>
          <vejKode>740</vejKode>
          <kommuneKode>314</kommuneKode>
          <validFrom>2011-11-07T10:56:21+01:00</validFrom>
          <validTo>2012-11-07T10:56:11+01:00</validTo>
        </person>
      </atom:content>
    </atom:entry>
  </atom:feed>

...

Der findes følgende endpoints:

5.2.2     Eksempel: Én eller flere autorisationer

Nedenfor ses et ”solskinsscenarie”, hvor der forespørges på en sundhedsfaglig, der har en enkelt gyldig autorisation.

Forespørgsel:

Og hvis man kalder gennem DCC:

5.2.2     Eksempel: Én eller flere autorisationer

Nedenfor ses et ”solskinsscenarie”, hvor der forespørges på en sundhedsfaglig, der har en enkelt gyldig autorisation.


Forespørgsel:


<?xml <?xml version="1.0" encoding="UTF-8"?>

...

http://stamdatahost:8080/stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.3


Bemærk at kald til DetGodeCPROpslag med en af 1.0.4-versionerne, skal kaldes gennem DCC med en serviceIdentifier:

For 1.0.4

http://stamdatahost:8080/stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.4

DCC:


For 1.0.4.1

http://stamdatahost:8080/stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.4.1For 1.0.4a

DCC:


For 1.0.4a

http://stamdatahost:8080/stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.4a

DCC:


For 1.0.4.1a

http://stamdatahost:8080/stamdata-cpr-ws/service/DetGodeCPROpslag-1.0.4.1a

DCC:


1.0.4


5.3.3     Mangelfuld datagrundlag

...

Servicen returner alt gyldig information i yderregistret baseret på opslag med ydernummeret. Se beskrivelsen af Yderregisteret lisen af data felter.

5.5.1     Endpoints

httphttps://stamdatahost:80808443/stamdata-yder-lookup-ws/service/YderService

Og hvis man kalder gennem DCC:

http://stamdatahost:8080/decoupling/nspservices/YderService

5.5.1     Eksempel: Én eller flere autorisationer

...

  1. http://stamdatahost/stamdata-personinformation/2024/08/v101/person/{cpr}
  2. http://stamdatahost/stamdata-personinformation/2024/v108/01/person/{cpr}/status
  3. http://stamdatahost/stamdata-personinformation/2024/08/01/{cpr}/status
  4. http://stamdatahost/stamdata-personinformation/2024/08/v101/person/{cpr}/age
  5. http://stamdatahost/stamdata-personinformation/2024/08/v101/person/{cpr}/birthday
  6. http://stamdatahost/stamdata-personinformation/v12024/08/01/person/{cpr}/custody
  7. http://stamdatahost/stamdata-personinformation/2024/v108/01/person/{cpr}/name
  8. http://stamdatahost/stamdata-personinformation/v12024/08/01/person/deceased
  9. http://stamdatahost/stamdata-personinformation/2024/08/v101/person/{cpr}/address
  10. http://stamdatahost/stamdata-personinformation/2024/08/01/person/filterByStatusCode

5.6.2 Eksempel 1: Person findes

...

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327402203954940

Response

Der svares med HTTP statuskode 200.

...

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412203954940/status

Response

Der svares med HTTP statuskode 200.

...

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes.

Code Block
languagejs
{ }

5.6.

...

7 Eksempel 5:

...

Alder hentes

I dette eksempel kaldes servicen med et CPR nummer der eksisterer, men ikke har en statusog har alder 29 år i 2024.

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412203954940/statusage

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at status ikke findes200.

Code Block
languagejs
{ "age":29}

5.6.

...

8 Eksempel 6: Alder hentes på person der ikke findes

I dette eksempel kaldes servicen med et CPR nummer der IKKE eksisterer, og har alder 6 år. Samme fejl fåes, hvis alder ikke kan udregnes pga manglende fødselsdato, eller hvis fødselsdatoen fejlagtigt er registreret i fremtiden.

Request

Request i form af curl udtryk.

...

Der svares med HTTP statuskode 200.404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes.

Code Block
languagejs
{"age":6 }

5.6.

...

10 Eksempel 7:

...

Fødselsdag hentes

...

I dette eksempel kaldes servicen med et CPR nummer der IKKE eksisterer.eksisterer, og fødselsdagen 22 marts 1995

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412203954940/agebirthday

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes200.

Code Block
languagejs
{ }
"birthday":"1995-03-22"}

5.6.

...

11 Eksempel 8:

...

Fødselsdag hentes på person der

...

ikke findes

I dette eksempel kaldes servicen med et CPR nummer der eksisterer, men hvoer der ikke er angivet en fødselsdato i den tabel alder udregnes fra. (Samme resultat fåes, hvis fødselsdatoen fejlagtig er registret i fremtiden)

Request

Request i form af curl udtryk.

IKKE eksisterer.

Request

Request i form af curl udtryk.

Code Blockcode
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/2209632741/agebirthday

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at alder CPR nummeret ikke kan udregnesfindes.

Code Block
languagejs
{ }

5.6.

...

12 Eksempel 9:

...

Værge og forældremål hentes

I dette eksempel kaldes servicen med et CPR nummer der eksisterer, og fødselsdagen 24 december 2012er forældre til 2 børn. Børnene er 20. december 2024 1 år (0612234612) henholdsvis 4 år (0711208372) gamle. CPR nummereret har også værgemål over person med cpr 2802064092.

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412203954940/birthdaycustody

Response

Der svares med HTTP statuskode 200.

Code Block
languagejs
{"parentalCustody":[{"birthdayrelationCpr":"2012-12-24"}

...

"0711208372","age":4},{"relationCpr":"0612234612","age":1}],"wardCustody":[{"relationCpr":"2802064092"}]}

5.6.13 Eksempel 10: Værge og forældremål hentes på person der ikke har sådanne

I dette eksempel kaldes servicen med et CPR nummer der IKKE eksisterer.der ikke har værge og fældremål

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412802064092/birthdaycustody

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes. 

Code Block
languagejs
{ }


5.6.

...

14 Eksempel 11:

...

Navn hentes

I dette eksempel kaldes servicen med et CPR nummer der er forældre til 2 børn på 9 og 16 år samt har værgemål over person med cpr 2209632743eksisterer, og personen har 3 navne (fornavn, mellem og efternavn).

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327412203954940/custodyname

Response

Der svares med HTTP statuskode 200.

Code Block
languagejs
{"parentalCustodygivenName":[{"relationCprHelle":,"2209632741middleName",:"ageSejer":9},{"relationCprfamilyName":"2209632742Larsen","age":16}],"wardCustodynameForAddressing":[{"relationCpr":"2209632743"}]"Helle Sejer Larsen"}

5.6.

...

15 Eksempel 12:

...

Navn hentes på person der ikke

...

findes

I dette eksempel kaldes servicen med et CPR der ikke har værge og fældremålnummer der IKKE eksisterer.

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/2209632741/custodyname

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes. 

Code Block
languagejs
{ }

5.6.

...

16 Eksempel 13:

...

Find afdøde personer

I dette eksempel kaldes servicen med et CPR nummer der eksisterer, og personen har 3 navne (fornavn, mellem og efternavn).

Request

Request i form af curl udtryk.

en liste af CPR numre og en dato. Servicen returnere en liste af person id'er fra input listen, som tilhører afdøde personer, som døde før tidspunktet i inputtet.

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" "http://stamdatahost/stamdata-personinformation/v1/person/2209632770/namedeceased?cpr=0810018631&cpr=2609144427&cpr=2203954940&dato=2024-05-30T17:32:28"

Response

Der svares med HTTP statuskode 200.

Code Block
languagejs
[{"givenNamecpr":"Helle0810018631"},{"middleNamecpr":"Louise","familyName":"Eskesen","nameForAddressing":"Helle Eskesen2609144427"}]

5.6.

...

17 Eksempel 14:

...

Find personer adresse

I dette eksempel kaldes servicen med et CPR nummer der IKKE eksisterer og har en atkiv status-kode. Den returner personens adresse data (adresse, by og post nummer).

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/v1/person/22096327712203954940/nameaddress

Response

Der svares med HTTP statuskode 404. Bemærk at Content-Type headeren også er application/json når HTTP koden 404 skyldes at CPR nummeret ikke findes.200.

Code Block
languagejs
{ }
"address":"Kastanievej,395,,","zipCode":"8550","cityName":"Ryomgård"}

5.6.

...

18 Eksempel 15:

...

Status hentes

I dette eksempel kaldes ny version af servicen med en liste af CPR numre og en dato. Servicen returnere en liste af person id'er fra input listen, som tilhører afdøde personer, som døde før tidspunktet i inputtetet CPR nummer der eksisterer, og har status 01. Servicen sikre i denne udgave, at foranstillede nuller bebeholdes i svaret.

Request

Request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" http://stamdatahost/stamdata-personinformation/2024/08/v101/person/deceased?cpr=0304784567&cpr=1508902650&dato=2023-07-21T17:32:28

Response

2203954940/status

Response

Der svares Der svares med HTTP statuskode 200.

Code Block
languagejs
[{"cprstatus":"030478456701"},{"cpr":"1508902650"}]

5.6.

...

19 Eksempel 16: Find personer

...

med status

I dette eksempel kaldes servicen med et CPR nummer der eksisterer og har en atkiv status-kode. Den returner personens adresse data (adresse, by og post nummer)en liste af CPR numre, en statuskode og en dato. Servicen returnere en liste af person id'er fra input listen, som tilhører personer med status på tidspunktet i inputtet.

Request

Request Post request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" -H "Content-Type: application/json" "http://stamdatahost/stamdata-personinformation/v1/person/2209632770/address2024/08/01/person/filterByStatusCode?statusCode=01&dato=2024-05-30T17:32:28" --data "[\"0810018631\",\"2609144427\",\"2203954940\"]"

Response

Der svares med HTTP statuskode 200.

Code Block
languagejs
[{"addresscpr":"Bogenhøjvej 230","zipCode":"6666","cityName":"BirkeBy2203954940"}]

5.6.

...

20 Eksempel 17: Finder person der er født på angivede dato

I dette eksempel kaldes ny version af servicen med et CPR nummer der eksisterer, og har status 01. Servicen sikre i denne udgave, at foranstillede nuller bebeholdes i svareten dato. Servicen returnere en liste af person id'er fra input listen, som tilhører personer med status på tidspunktet i inputtet.

Request

Request Get request i form af curl udtryk.

Code Block
languagebash
curl -H "Accept: application/json" -H "Content-Type: application/json" "http://stamdatahost/stamdata-personinformation/2024/08/01v1/person/2209632741/statuspersonsByBirthday?birthday=1995-03-22"

Response

Der svares med HTTP statuskode 200.

Code Block
languagejs
[{"statuscpr":"012203954940"}]

5.7 Yderinformation

Stamdataservicen udstiller en REST service der kan tilgå data om yder. Anvenderguiden kan læses her:

SDM - Guide til anvendere - Yderinformation

5.8 Sikredeinformation

Stamdataservicen udstiller en REST service der kan tilgå data om sikrede. Anvenderguiden kan læses her:

SDM - Guide til anvendere - Sikredeinformation

6     Stamdata Filter Management Service (SFMS)

...