Archived docs.You are viewing v0.13.0. For current guidance, useLatest. Report archive issues onGitHub.
Complete eSignet login and render a pre-authorized-code offer
const url = 'https://example.com/oid4vci/offer/callback?code=example&state=example';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/oid4vci/offer/callback?code=example&state=example'Public and unauthenticated. Consumes the login state, exchanges the eSignet code with private_key_jwt, validates the id_token, completes the exact registry-backed Relay evaluation, and only then mints one single-use pre-authorized_code bound to that immutable transaction. Denied, unavailable, malformed, source-free, or provenance-invalid evaluations produce no offer. When configured, the offer also includes one numeric tx_code (PIN) shown out-of-band from the QR. Returns 404 when the pre-authorized-code flow is disabled.
Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Responses
Section titled “Responses”Offer page with the credential offer URI and optional tx_code PIN
Login state, eSignet code, or id_token is invalid
object
Examplegenerated
{ "error": "example", "error_description": "example"}Registry-backed evaluation or issuance policy denied the transaction
object
Examplegenerated
{ "error": "example", "error_description": "example"}Pre-authorized-code flow is disabled
OpenID4VCI issuer failed
object
Examplegenerated
{ "error": "example", "error_description": "example"}