Start an eID attempt in your own UI
Authenticate the user in your own interface instead of sajn’s hosted page. You show the QR code and the button that opens the eID app; sajn talks to the eID provider.
Flow:
POST /api/v1/login/sessionsto create the sessionPOSThere, from your server, with the user’s IP address. ShowqrCodeon desktop, or openautoStartUrlfrom a tap on mobilePOST /api/v1/login/sessions/{id}/pollevery 1 to 2 seconds and show the newqrCode- When
statusisCOMPLETED, read the result withGET /api/v1/login/sessions/{id}
Calling this again while an attempt runs returns that attempt. After a FAILED or EXPIRED attempt, calling it starts a new one while attemptsRemaining is above 0. The client must use your own BankID certificate.
Authorizations
API key, e.g. Authorization: Bearer sajn_svc_.... Not scope-limited: acts with its owner's workspace role.
Headers
API version for this request. Without it, the request uses the organization's default version; an organization without a default is pinned to the latest version by its first request.
2026-09, 2026-10 ID of the workspace this request acts in, from GET /api/v1/workspaces. Without it, an API key acts in its default workspace. The token's user must be a member of the workspace; an OAuth token only accepts the workspace it was granted for. A workspace that doesn't exist or can't be reached returns 403 WORKSPACE_ACCESS_DENIED.
Makes retries safe. A retry with the same key and the same request replays the stored response for 24 hours (header Idempotent-Replayed: true); the same key with a different request returns 400.
255Path Parameters
The login session ID, from POST /api/v1/login/sessions.
Body
Body
The IP address of the person authenticating, as your server sees it. Never your server's own address.
^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$The eID to authenticate with, such as SE_BANKID. Leave it out when the client allows one method.
SE_BANKID The user agent of the person's browser. It improves the eID provider's risk check and lets autoStartUrl return to the right browser.
1024Where the eID app sends a user on the same device when they are done. Must be registered on the client. Leave it out and the user switches back by hand.
Response
200
The login session.
SE_BANKID Render this as a QR code for a user on another device. It changes every second, so show the qrCode from each poll.
Opens the eID app on this device if you build the link yourself. Null when the call resumed an attempt that was already running.
Open this on the user's device, from a tap, to launch the eID app. Null when the call resumed an attempt that was already running.
When the user must have finished this attempt by.

