Skip to main content

Overview

didx:verify has two projects, and each has its own authentication server: Both use the OAuth2 client_credentials grant. Request a token from the server that matches the endpoint you are calling.
A token is scoped to its own server. A Marketplace sc-citizen token is not accepted by the Journey API, and a Journey vc-verify token is not accepted by the Marketplace API.

Marketplace authentication

Use your Marketplace clientId and clientSecret with the sc-citizen scope:
This token authenticates every Marketplace endpoint. It also authenticates the CustomClient3 endpoints in the Journey project, which are served from the Marketplace platform and use sc-citizen (see Journey endpoints on the Marketplace platform).

Journey authentication

Use your Journey clientId and clientSecret with the vc-verify scope:
This token authenticates the /journey/* endpoints on https://verify.dev.securecitizen.cloud.

Response

Both servers return the same token shape:

Using the token

Include the token as a Bearer token in every request:

Journey endpoints on the Marketplace platform

Two Journey endpoints are served from the Marketplace platform rather than the Journey base URL: The rule is simple: authenticate against the server that matches the endpoint’s base URL. These two endpoints sit on the Marketplace platform, so they take a Marketplace sc-citizen token even though they belong to a Journey flow. Each endpoint’s API Reference page shows its base URL and required scope. Every request that processes personal information requires "ConsentReceived": true in the request body. This documents that you have obtained the subject’s informed consent to process their personal data, as required by POPIA.
Requests with ConsentReceived: false will be rejected. This field is audited and required for regulatory compliance.

Checking system status

Before making Marketplace verification calls, you can check whether the Department of Home Affairs (DHA) systems are online:
This returns the current availability of downstream DHA systems so you can anticipate whether calls will succeed or fall back to cached data.

HTTP status codes