Skip to main content

IDkollen REST API (v3)

Download OpenAPI specification:Download

License: Proprietary

eID services for Swedish BankID, Freja eID, Norwegian BankID, Vipps MobilePay, Danish MitID, and Finnish Trust Network (FTN).

All endpoints require HTTP Basic authentication with API customer credentials.

Polling

Start operations return 201 with an id. Poll the corresponding GET /{id} endpoint until status is COMPLETED or FAILED. The collect endpoint is rate-limited to 1 request/second; exceeding it returns 429.

BankID SE

Swedish BankID authentication and signing

Start a BankID SE authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
string or null non-empty

Swedish personal identification number. Restricts the session to this user.

ipAddress
string

End-user IP address (or the closest proxy address).

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

pinRequired
boolean
Default: false

Force PIN entry even when biometrics are enabled.

intent
string [ 1 .. 2000 ] characters

Text describing the purpose of the identification shown to the user.

orgNumber
string

Swedish organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "ipAddress": "string",
  • "callbackUrl": "http://example.com",
  • "pinRequired": false,
  • "intent": "string",
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Start a BankID SE phone authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Swedish personal identification number of the user to authenticate.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

pinRequired
boolean
Default: false

Force PIN entry even when biometrics are enabled.

intent
string [ 1 .. 2000 ] characters

Text describing the purpose of the identification shown to the user.

orgNumber
string

Swedish organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

callInitiator
required
string (CallInitiator)
Enum: "USER" "RP"

Whether the user or the relying party (RP) initiated the phone call.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "callbackUrl": "http://example.com",
  • "pinRequired": false,
  • "intent": "string",
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string",
  • "callInitiator": "USER"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Get BankID SE authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Cancel a BankID SE authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Verify a scanned BankID SE QR code

Authorizations:
basicAuth
Request Body schema: application/json
required
qrCode
required
string non-empty

Complete content of the scanned BankID QR code.

Responses

Request samples

Content type
application/json
{
  • "qrCode": "string"
}

Response samples

Content type
application/json
{
  • "ssn": "string",
  • "name": "string",
  • "givenName": "string",
  • "surname": "string",
  • "age": 0,
  • "verifiedAt": "2019-08-24"
}

Start a BankID SE signing

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
string non-empty

Restrict the signing session to this Swedish personal number.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

text
required
string <= 50000 characters

Visible text the user must approve in BankID.

digest
string [ 1 .. 2000 ] characters

Hash digest of an associated file.

ipAddress
string

End-user IP address (or the closest proxy address).

pinRequired
boolean
Default: false

Force PIN entry even when biometrics are enabled.

orgNumber
string

Swedish organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "callbackUrl": "http://example.com",
  • "text": "string",
  • "digest": "string",
  • "ipAddress": "string",
  • "pinRequired": false,
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Start a BankID SE phone signing

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Swedish personal identification number of the user to sign.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

text
required
string <= 50000 characters

Visible text the user must approve in BankID.

digest
string [ 1 .. 2000 ] characters

Hash digest of an associated file.

pinRequired
boolean
Default: false

Force PIN entry even when biometrics are enabled.

orgNumber
string

Swedish organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

callInitiator
required
string (CallInitiator)
Enum: "USER" "RP"

Whether the user or the relying party (RP) initiated the phone call.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "callbackUrl": "http://example.com",
  • "text": "string",
  • "digest": "string",
  • "pinRequired": false,
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string",
  • "callInitiator": "USER"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Get BankID SE signing status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrStartToken": "string",
  • "qrStartSecret": "string",
  • "hintCode": "string"
}

Cancel a BankID SE signing

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a BankID SE age verification

Authorizations:
basicAuth
Request Body schema: application/json
required
minAge
integer >= 1

Minimum age (inclusive).

maxAge
integer >= 1

Maximum age (inclusive).

refId
string

Reference ID returned verbatim in the result and callback.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

redirectUrl
string <uri>

URL to redirect the user to after completing age verification.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Get BankID SE age verification status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel a BankID SE age verification

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Freja

Freja eID authentication and signing

Start a Freja eID backchannel authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Personal number of the user to authenticate.

country
required
string
Enum: "SWEDEN" "NORWAY" "DENMARK" "FINLAND"

Country of the user's Freja identity document.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

minRegistrationLevel
string
Default: "EXTENDED"
Enum: "EXTENDED" "PLUS"

Minimum required Freja registration level.

orgNumber
string

Organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "country": "SWEDEN",
  • "callbackUrl": "http://example.com",
  • "minRegistrationLevel": "EXTENDED",
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrData": "string"
}

Get Freja eID authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrData": "string"
}

Cancel a Freja eID authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a Freja eID backchannel signing

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Personal number of the user to sign.

country
required
string
Enum: "SWEDEN" "NORWAY" "DENMARK" "FINLAND"

Country of the user's Freja identity document.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

text
required
string non-empty

Text to sign, displayed to the user in the Freja app.

minRegistrationLevel
string
Default: "EXTENDED"
Enum: "EXTENDED" "PLUS"

Minimum required Freja registration level.

orgNumber
string

Organisation number — enables company signatory check.

requestAddress
boolean

Fetch the user's registered address on completion.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "country": "SWEDEN",
  • "callbackUrl": "http://example.com",
  • "text": "string",
  • "minRegistrationLevel": "EXTENDED",
  • "orgNumber": "string",
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrData": "string"
}

Get Freja eID signing status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "autoStartToken": "string",
  • "qrData": "string"
}

Cancel a Freja eID signing

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a Freja eID age verification

Authorizations:
basicAuth
Request Body schema: application/json
required
minAge
integer >= 1

Minimum age (inclusive).

maxAge
integer >= 1

Maximum age (inclusive).

refId
string

Reference ID returned verbatim in the result and callback.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

redirectUrl
string <uri>

URL to redirect the user to after completing age verification.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Get Freja eID age verification status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel a Freja eID age verification

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

BankID NO

Norwegian BankID authentication and signing

Start a Norwegian BankID authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

requestSsn
boolean

Request the user's Norwegian personal number (fødselsnummer).

requestPhone
boolean

Request the user's phone number.

requestEmail
boolean

Request the user's email address.

requestAddress
boolean

Request the user's registered address.

refId
string

Reference ID returned verbatim in the result and callback.

appCallbackUri
string <uri>

(BETA) Deep-link URI to return the user to your app after authentication.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Start a Norwegian BankID backchannel authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Norwegian personal number (fødselsnummer).

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Get Norwegian BankID authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Cancel a Norwegian BankID authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a Norwegian BankID signing

Provide either text (plain text signing) or documents (PDF signing), not both. documents requires the document upload feature to be enabled.

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

text
string <= 118 characters

Text to sign. Mutually exclusive with documents.

refId
string

Reference ID returned verbatim in the result and callback.

documents
Array of strings[ items non-empty ]

Document IDs to sign (from /v3/document). Mutually exclusive with text.

Responses

Request samples

Content type
application/json
{
  • "redirectUrl": "http://example.com",
  • "text": "string",
  • "refId": "string",
  • "documents": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Get Norwegian BankID signing status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Cancel a Norwegian BankID signing

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a Norwegian BankID age verification

Authorizations:
basicAuth
Request Body schema: application/json
required
minAge
integer >= 1

Minimum age (inclusive).

maxAge
integer >= 1

Maximum age (inclusive).

refId
string

Reference ID returned verbatim in the result and callback.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

redirectUrl
string <uri>

URL to redirect the user to after completing age verification.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Get Norwegian BankID age verification status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel a Norwegian BankID age verification

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Vipps MobilePay

Vipps MobilePay authentication

Start a Vipps authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

requestSsn
boolean

Request the user's Norwegian personal number.

requestPhone
boolean

Request the user's phone number.

requestEmail
boolean

Request the user's email address.

requestAddress
boolean

Request the user's registered address.

refId
string

Reference ID returned verbatim in the result and callback.

appCallbackUri
string <uri>

(BETA) Deep-link URI to return the user to your app after authentication.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Start a Vipps backchannel authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
phone
required
string

Phone number of the user to authenticate.

requestSsn
boolean

Request the user's Norwegian personal number.

requestEmail
boolean

Request the user's email address.

requestAddress
boolean

Request the user's registered address.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "phone": "string",
  • "requestSsn": true,
  • "requestEmail": true,
  • "requestAddress": true,
  • "callbackUrl": "http://example.com",
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{}

Get Vipps authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel a Vipps authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

MitID

Danish MitID authentication and signing

Start a MitID authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

referenceText
string <= 130 characters ^[^%<]*$

Text shown to the user during authentication. Must not contain % or <.

requestPhone
boolean

Request the user's phone number.

requestEmail
boolean

Request the user's email address.

requestAddress
boolean

Request the user's registered address.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "redirectUrl": "http://example.com",
  • "referenceText": "string",
  • "requestPhone": true,
  • "requestEmail": true,
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Start a MitID backchannel authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
ssn
required
string non-empty

Danish CPR number.

bindingMessage
required
string non-empty

Message displayed in the MitID app to bind the session.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "ssn": "string",
  • "bindingMessage": "string",
  • "callbackUrl": "http://example.com",
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Get MitID authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Cancel a MitID authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a MitID signing

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

text
required
string [ 1 .. 600 ] characters

Text to sign, displayed in MitID.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Get MitID signing status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "refId": "string",
  • "status": "PENDING",
  • "bindingMessage": "string"
}

Cancel a MitID signing

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start a MitID age verification

Authorizations:
basicAuth
Request Body schema: application/json
required
minAge
integer >= 1

Minimum age (inclusive).

maxAge
integer >= 1

Maximum age (inclusive).

refId
string

Reference ID returned verbatim in the result and callback.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

redirectUrl
string <uri>

URL to redirect the user to after completing age verification.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Get MitID age verification status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel a MitID age verification

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

FTN

Finnish Trust Network authentication

Start an FTN authentication

Authorizations:
basicAuth
Request Body schema: application/json
required
redirectUrl
string <uri>

URL to redirect the user to after completing the flow.

requestPhone
boolean

Request the user's phone number.

requestEmail
boolean

Request the user's email address.

requestAddress
boolean

Request the user's registered address.

refId
string

Reference ID returned verbatim in the result and callback.

Responses

Request samples

Content type
application/json
{
  • "redirectUrl": "http://example.com",
  • "requestPhone": true,
  • "requestEmail": true,
  • "requestAddress": true,
  • "refId": "string"
}

Response samples

Content type
application/json
Example
{}

Get FTN authentication status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel an FTN authentication

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Start an FTN age verification

Authorizations:
basicAuth
Request Body schema: application/json
required
minAge
integer >= 1

Minimum age (inclusive).

maxAge
integer >= 1

Maximum age (inclusive).

refId
string

Reference ID returned verbatim in the result and callback.

callbackUrl
string <uri>

URL to receive the result callback on success or failure.

redirectUrl
string <uri>

URL to redirect the user to after completing age verification.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{}

Get FTN age verification status

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
Example
{}

Cancel an FTN age verification

Authorizations:
basicAuth
path Parameters
id
required
string non-empty

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Documents

(BETA) Document upload and retrieval for PDF signing

(BETA) Upload a document for signing

Accepts a single PDF file. Returns a document id to be referenced in signing requests.

Authorizations:
basicAuth
Request Body schema: multipart/form-data
required
file
string <binary>

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "hash": "string"
}

(BETA) Download a signed PDF document

Authorizations:
basicAuth
path Parameters
documentId
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}