Providers
Get Providers
List every provider available to an app, optionally including activation state.
GET
Returns the full provider catalog available in the current environment for the given app. By default the response is the plain
Added by
Provider catalog (no per-app activation data). Pass include=activation to upgrade each entry with the app’s status and an activation block describing where the provider is in the activation flow and what (if anything) is still required.
Request
Bearer <API_KEY> from Console > Developers > Workspace API Keys.Path parameters
Client identifier of the app.
Query parameters
Set to
activation to include the per-app activation state alongside each provider.Accepted as a single value (?include=activation) or repeated (?include=activation&include=...). Unknown values are ignored; passing nothing (or omitting the parameter) returns the plain catalog.Response
The response is a plain JSON array. Each entry is aProvider. With ?include=activation, each entry is a Provider plus the status and activation fields below.
Provider (always present)
Provider identifier (e.g.,
mitid, bankidse, ftn, passport).Human-readable provider name.
Provider description.
URL of the provider logo.
ISO country codes the provider serves.
Verification flow types the provider supports (
qr, redirect, push, dc).Available OIDC scopes for the provider.
Levels of Assurance the provider can issue.
Default LoA when the upstream IDP does not return one.
0 means unspecified.Digital ID type:
1 (Centralized IdP), 2 (Chip-based), 3 (Decentralized Wallet).disclosure (provider returns IDP-derived attribute claims) or match (provider verifies caller-supplied identity values). Omitted when not applicable.For match-model providers:
per_field (one outcome per matched field) or aggregate (single verdict). Omitted for disclosure providers.true iff the provider’s derived activation status is activated — equivalent to status === 'activated'. false for every other status, including providers that have never been added to the app.true when the provider is activated but its stored provider config fails the provider’s configSchema validation (missing or malformed credentials, etc.). Use it to surface a “finish setup” nudge in the UI.Added by ?include=activation
Per-app provider status, derived from the latest activation ticket.One of:
not_activated— never submitted, or the provider has not been added to the app.activation_requested— a registration-type submission has been received and is waiting for operator review.activation_processing— operator review is in progress, or (sandboxdemo: true) the brief auto-approve window is still open.rejected— the latest submission failed validation or was rejected by operator review. Resubmit via Submit Activation.activated— provider is ready for live verifications.
Activation block. Always present when
include=activation is set, even when nothing has been submitted (in that case status is not_activated and id, requestedAt, etc. are omitted).Sandbox behavior
Sandbox runs the same activation flow as production and writes real tickets, soactivation.id is present and statuses are real:
- Providers that have never been added to the app (no entry in
apps.providers) are omitted from the response. - By default, statuses match production: direct providers read as
activated, registration providers stay atactivation_requesteduntil an operator reviews them, and contract providers read asnot_activated. - When the activation was submitted with
demo: true(see Submit Activation), registration and contract providers read asactivation_processing, then flip toactivatedabout 1 second later.
Errors
| Status | Body | When |
|---|---|---|
401 | INVALID_API_KEY | Missing or malformed Authorization header. |
403 | RESOURCE_FORBIDDEN | The API key’s organization does not own client_id. |
404 | RESOURCE_NOT_FOUND | No app matches client_id. |

