- An app’s App ID and App Secret. See Authentication.
- At least one connection that is activated and enabled in a workflow. See Activate Connections.
https://api.hopae.com/connect/v2.
1. Find a connection
status=enabled returns exactly the connections you can start for the default workflow. For each one, note connectionId, flowTypes, and userInputSchema (the fields to send). See Get Connections.
2. Create a verification
- Send one of
connectionId,connectionInstanceId, orproviderId. AddcredentialIdto narrow aproviderIdthat has several connections. An ambiguous one returns400. - Optional:
workflowId(otherwise the default workflow),redirectUri(for redirect flows). - The workflow decides which claims are returned. You do not send claims.
3. Handle the flow
Act onflowType:
4. Poll until finished
Skip this forquery: its create response is already final.
Poll GET /verifications/{id} until the status is completed, failed, or cancelled. Wait polling.intervalMs between calls (each non-terminal response has it). Stop at expiresAt: a verification not finished by then has expired and is deleted, so later calls return 404. See Expiry.
5. Read the result
When the status iscompleted:
Response (abridged)
- Read identity data from
user. To recognise a returning person, useuser.source_id, notsub. - Add
provenance=trueandmissing_claims=trueto the query for the audit trail and the claims the source could not provide. - Read it before
expiresAt. After that the result is gone. See Expiry.
match results, is in Return Data.
Cancel
DELETE /verifications/{id} cancels a verification that has not finished (204). A completed, failed, or cancelled one answers 409 SESSION_INVALID_STATUS_TRANSITION. See Cancel Verification.
Errors
Errors share one envelope. Switch onerror.code and quote request_id to support.

