Skip to main content

Credentials API Reference

The ISBE credential system exposes two distinct APIs:

ServiceBase URL (PRO)Purpose
Credential Issuerhttps://identity-credentials-issuer.pro.cloud-w.envs.redisbe.comIssue, query, and revoke VCs for employees and representatives.
Credential IDPhttps://identity-credentials-idp.pro.cloud-w.envs.redisbe.comAuthenticate users in ISBE portals via VC presentation (federated OIDC).

Both services are implemented in Django and expose interactive Swagger/OpenAPI documentation at GET /swagger.

Service interaction diagram​

The following diagram shows the complete issuance and use sequence of an IsbePortalLearCredential, from the initial request to portal authentication.

API authentication​

Credential Issuer​

Most Issuer endpoints require a Keycloak Bearer token:

Authorization: Bearer <access_token_keycloak>

The Issuer verifies the token signature against the Keycloak JWKS configured in KEYCLOAK_JWKS_URI.

Internal integration endpoints are protected with an API Key:

x-api-key: <INTERNAL_API_KEY>

Credential IDP​

Internal integration endpoints are protected with an API Key:

x-api-key: <CONNECTOR_API_KEY>

The standard OIDC endpoints (/accounts/*, /.well-known/openid-configuration) are public or protected by the OAuth2 flow itself.

The admin panel (/admin/) requires Django admin user authentication.

Monitoring​

Both services expose Prometheus metrics at:

GET /metrics

The /metrics endpoint is public (no authentication required). The metrics namespace is configurable via the PROMETHEUS_METRIC_NAMESPACE environment variable.

The health status of each service is available at:

GET /health