Introduktion
STS-UUID2CPR-PROXY er en støtte-service på NSP, der tillader opslag i Digitaliseringsstyrelsens NemLog-in opslagstjenester. Servicen udstiller et simpelt REST-interface, og kræver ikke sikkerhedsbillet. Servicen består af følgende oprationer
- /service/lookup/{uuid}
- /service/lookup-pid-cpr/{pid}
/service/lookup-uuid-rid/{uuid}
Snitfladebeskrivelse
Generelt
Servicen udstiller 3 operationer via GET. Operationerne er beskrevet i en OpenAPI-specifikation, som kan hentes på stien /uuid2cpr-proxy-api/openapi. For nuværende version af servicen ser specifikationen ud som nedenfor.
openapi: 3.0.0
info:
title: Uuid2Cpr Proxy service
description: Intern NSP service der kan anvendes til at kalde NemLogin opslags services.
version: "1.0.0"
servers:
- url: '%endpoint%'
paths:
/service/lookup/{uuid}:
get:
summary: Hent cpr-nummer ud fra uuid.
description: Hent cpr-nummer ud fra uuid.
parameters:
- in: path
name: uuid
schema:
type: string
required: true
description: Uuid
responses:
200:
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/cpr'
404:
description: Det givne uuid har intet cpr-nummer tilknyttet.
500:
description: Der opstod en fejl under opslag af cpr-nummer.
/service/lookup-pid-cpr/{pid}:
get:
summary: Hent cpr-nummer ud fra pid.
description: Hent cpr-nummer ud fra pid.
parameters:
- in: path
name: pid
schema:
type: string
required: true
description: Pid
responses:
200:
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/cpr'
404:
description: Det givne pid har intet cpr-nummer tilknyttet.
500:
description: Der opstod en fejl under opslag af cpr-nummer.
/service/lookup-uuid-rid/{uuid}:
get:
summary: Hent rid ud fra uuid.
description: Hent rid ud fra uuid.
parameters:
- in: path
name: uuid
schema:
type: string
required: true
description: Uuid
responses:
200:
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/rid'
404:
description: Det givne uuid har intet rid tilknyttet.
500:
description: Der opstod en fejl under opslag af rid.
components:
responses:
'404':
description: "Resource findes ikke."
schemas:
cpr:
type: object
required:
- value
properties:
value:
type: string
rid:
type: object
required:
- value
properties:
value:
type: string
Eksempler
Herunder illustreres et par eksempel-requests og de tilhørende responses for de forskellige services.
Service lookup
Cpr-nummer findes
Dette eksempel viser tilfældet hvor uuid'et har et matchende cpr-nummer.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup/UI:DK-E:G:2634ccc3-225a-44ee-94bc-565904f46ead
Response:
HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json
Content-Length: 22
Date: Wed, 09 Mar 2022 15:28:08 GMT
{"value":"2501879875"}
Cpr-nummer findes ikke
Dette eksempel viser tilfældet hvor uuid'et ikke har et matchende cpr-nummer.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup/UI:DK-E:G:2634ccc3-225a-44ee-94bc-000000000000
Response:
HTTP/1.1 404 Not Found Connection: keep-alive Content-Type: application/json Content-Length: 74 Date: Wed, 08 Mar 2023 09:40:41 GMT Uuid UI:DK-E:G:2634ccc3-225a-44ee-94bc-000000000000 has no associated cpr.
Service lookup-pid-cpr
Cpr-nummer findes
Dette eksempel viser tilfældet hvor pid har et matchende cpr-nummer.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup-pid-cpr/9208-2002-2-199567135534
Response:
HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json
Content-Length: 22
Date: Fri, 24 Feb 2023 12:26:53 GMT
{"value":"2501879875"}
Cpr-nummer findes ikke
Dette eksempel viser tilfældet hvor pid ikke har et matchende cpr-nummer.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup-pid-cpr/9208-2002-2-000000000000
Response:
HTTP/1.1 404 Not Found Connection: keep-alive Content-Type: application/json Content-Length: 51 Date: Wed, 01 Mar 2023 05:43:12 GMT Pid 9208-2002-2-000000000000 has no associated cpr.
Service lookup-uuid-rid
Rid findes
Dette eksempel viser tilfældet hvor uuid har et matchende rid.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup-uuid-rid/UI:DK-E:G:2634ccc3-225a-44ee-94bc-565904f46ead
Response:
HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json
Content-Length: 20
Date: Fri, 24 Feb 2023 12:44:22 GMT
{"value":"72976780"}
Rid findes ikke
Dette eksempel viser tilfældet hvor uuid ikke har et matchende rid.
Request:
curl -i localhost:8080/uuid2cpr-proxy-api/service/lookup-uuid-rid/UI:DK-E:G:2634ccc3-225a-44ee-94bc-000000000000
Response:
HTTP/1.1 404 Not Found Connection: keep-alive Content-Type: application/json Content-Length: 74 Date: Wed, 01 Mar 2023 05:45:00 GMT Uuid UI:DK-E:G:2634ccc3-225a-44ee-94bc-000000000000 has no associated rid.