This environment is intended for testing issuance workflows and conducting interoperability sessions. For enquiries or support, please contact support@igrant.io

Session Detail

Inspect a single issuance session

kKGhYqEI3eXBH0T8vfxiKw

token_exchanged
pre-authorized_code


eu.europa.ec.eudi.pid_mdoc

Supply Claims

Submit claims for a credential configuration in this session (for deferred issuance).

Session Logs

14 total
2026-06-15 12:26:54 error /credential Holder proof validation failed
Data:
{
  "expected": "One of: `jwk` (inline JWK), `x5c` (X.509 certificate chain), or `key_attestation` (key attestation JWT with attested_keys)",
  "header_params": [
    "alg",
    "kid",
    "typ"
  ],
  "help": "Include the holder\u0027s public key in the JWT proof header using one of:\n  1. `jwk`: {\"kty\":\"EC\",\"crv\":\"P-256\",\"x\":\"...\",\"y\":\"...\"}\n  2. `x5c`: [\"\u003cbase64-DER-encoded-certificate\u003e\"]\n  3. `key_attestation`: \"\u003ckey-attestation-jwt\u003e\" (with kid referencing a key in attested_keys)",
  "proof_type": "jwt",
  "reason": "JWT proof header does not contain a holder public key. Found header parameters: [\u0027alg\u0027, \u0027kid\u0027, \u0027typ\u0027]. The header contains `kid` (\"did:key:zDnaesQMRTmGLvZC26tmJ53T4Bb8ruiPJ3WW3ub2rM13uq3tz#zDnaesQMRTmGLvZC26tmJ5...\") but `kid` alone is not sufficient \u2014 the issuer cannot resolve external key references. The holder\u0027s public key material must be included directly.",
  "spec_ref": "OID4VCI Section 8.2.1.1 / Appendix F.1"
}
2026-06-15 12:26:54 debug /credential Credential configuration resolved
Data:
{
  "config_id": "eu.europa.ec.eudi.pid_mdoc",
  "credential_identifier": null
}
2026-06-15 12:26:54 debug /credential Credential request body
Data:
{
  "credential_configuration_id": "eu.europa.ec.eudi.pid_mdoc",
  "proofs": {
    "jwt": [
      "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDprZXk6ekRuYWVzUU1SVG1HTHZaQzI2dG1KNTNUNEJiOHJ1aVBKM1dXM3ViMnJNMTN1cTN0eiN6RG5hZXNRTVJUbUdMdlpDMjZ0bUo1M1Q0QmI4cnVpUEozV1czdWIyck0xM3VxM3R6IiwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJpYXQiOjE3ODE1MjY0MTQsImF1ZCI6Imh0dHBzOi8vYXBpLnBsYXlncm91bmQuZnJhbmNlLWlkZW50aXRlLmdvdXYuZnIvaWdyYW50aW8vaXNzdWVyLWJhY2tlbmQiLCJub25jZSI6InlpR3lPbUVKbmlrdjFmSWd0emRMZjlwM0xINnAwQSJ9.XfUKGAZHu7mG4zjoWW8WqIkdGpZfUscMRcs7dUxe8-3gmU6RDz95Xp71_wtmg2uPpk6UBhIm0ZR5lGUAzxwMIg"
    ]
  }
}
2026-06-15 12:26:54 info /credential Credential request received
Data:
{
  "credential_configuration_id": "eu.europa.ec.eudi.pid_mdoc",
  "credential_identifier": null,
  "headers": {
    "accept": "*/*",
    "accept-encoding": "gzip",
    "authorization": "Bearer 0CEQzDK2Sp5cV1c_MKz7o3buOnNbyHlaiTn5ap87ppk",
    "content-length": "568",
    "content-type": "application/json",
    "host": "api.playground.france-identite.gouv.local:32689",
    "traceparent": "00-845302673ec22c4e1a74a456741c5f0c-d7986e62f7323318-00",
    "tracestate": "",
    "via": "1.1 Caddy",
    "x-envoy-attempt-count": "1",
    "x-envoy-external-address": "10.42.7.1",
    "x-envoy-original-path": "/igrantio/issuer-backend/credential",
    "x-forwarded-client-cert": "By=spiffe://cluster.local/ns/igrantio/sa/igrantio-playground-unfold;Hash=a159e3a95787a9a0c4e280d252488fb000dd19877195dd97941e09f109148636;Subject=\"\";URI=spiffe://cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account",
    "x-forwarded-for": "176.219.114.244, 127.0.0.1,10.42.7.1",
    "x-forwarded-host": "api.playground.france-identite.gouv.fr",
    "x-forwarded-proto": "https",
    "x-forwarded-server": "api.playground.france-identite.gouv.fr",
    "x-request-id": "cac914cd-47ba-4272-83ac-06e9b8acc1c6"
  },
  "is_dpop": false,
  "proofs_present": true
}
2026-06-15 12:26:54 info /token Access token issued
Data:
{
  "credential_configuration_ids": [
    "eu.europa.ec.eudi.pid_mdoc"
  ],
  "dpop_bound": false,
  "expires_in": 86400,
  "token_type": "Bearer"
}
2026-06-15 12:26:54 debug /token Authorization details resolved
Data:
{
  "auth_details": null,
  "claims_data_present": false,
  "credential_configuration_ids": [
    "eu.europa.ec.eudi.pid_mdoc"
  ]
}
2026-06-15 12:26:54 info /token Token request received (pre-authorized_code)
Data:
{
  "authorization_details_present": false,
  "client_id": null,
  "dpop_present": false,
  "grant_type": "pre-authorized_code",
  "tx_code_present": true
}
2026-06-15 12:26:54 info /token Wallet attestation validated
Data:
{
  "client_id": "http://10.77.51.49:3000/TubitakWallet",
  "wallet_provider": "http://10.77.51.49:3000"
}
2026-06-15 12:26:54 debug /token Token request received
Data:
{
  "form_body": {
    "grant_type": "urn:ietf:params:oauth:grant-type:pre-authorized_code",
    "pre-authorized_code": "kyDzKLnERHT90JIy9u-7oKob6JgvKJMxlijE8sOT9DY",
    "tx_code": "1234"
  },
  "headers": {
    "accept": "*/*",
    "accept-encoding": "gzip",
    "content-length": "150",
    "content-type": "application/x-www-form-urlencoded",
    "host": "api.playground.france-identite.gouv.local:32689",
    "oauth-client-attestation": "eyJhbGciOiJFUzI1NiIsInR5cCI6Im9hdXRoLWNsaWVudC1hdHRlc3RhdGlvbitqd3QiLCJ4NWMiOlsiTUlJQ2pEQ0NBak9nQXdJQkFnSUNFQUF3Q2dZSUtvWkl6ajBFQXdJd2daY3hDekFKQmdOVkJBWVRBbFJTTVJBd0RnWURWUVFJREFkTGIyTmhaV3hwTVE0d0RBWURWUVFIREFWQ1lYSnBjekVRTUE0R0ExVUVDZ3dIVkhWaWFYUmhhekVyTUNrR0ExVUVDd3dpUlMxSlpHVnVkR2wwZVNCVVpXTm9ibTlzYjJkcFpYTWdSR1Z3WVhKMGJXVnVkREVuTUNVR0ExVUVBd3dlVkhWaWFYUmhheUJGVlVSSklGSmxZV1JsY2lCRFFTQXRJRlJTSURBeE1CNFhEVEkxTVRJd01UQTRNelV6T1ZvWERUSTJNVEl3TVRBNE16VXpPVm93UXpFTE1Ba0dBMVVFQmd3Q1ZGSXhHVEFYQmdOVkJBb01FRlIxWW1sMFlXc2dWbVZ5YVdacFpYSXhHVEFYQmdOVkJBTU1FRlIxWW1sMFlXc2dWbVZ5YVdacFpYSXdXVEFUQmdjcWhrak9QUUlCQmdncWhrak9QUU1CQndOQ0FBUS9hS0o0YjhublZnbEhKbnMrdDVOeDNYV3pOQXkzK2Q2Nm1xV25ka3NYTTVFbithMU8wTDQxdmVLRkRid0tPQUQvUVZVMzJZam1pMDUxSjJ6cDlMRVNvNEhCTUlHK01Bd0dBMVVkRXdFQi93UUNNQUF3RGdZRFZSMFBBUUgvQkFRREFnV2dNQk1HQTFVZEpRUU1NQW9HQ0NzR0FRVUZCd01DTUIwR0ExVWREZ1FXQkJTc0VsZ3RwbVYzNUxVSVNKTzErRkNXVHJ2b0xEQkpCZ05WSFJFRVFqQkFnaHgyWlhKcFptbGxjaTVsZFdScExuUjFZbWwwWVdzdVoyOTJMblJ5Z2lCM2QzY3VkbVZ5YVdacFpYSXVaWFZrYVM1MGRXSnBkR0ZyTG1kdmRpNTBjakFmQmdOVkhTTUVHREFXZ0JTamMrTlJQRDFCbWowS3RnUzJRS0N4R09IdVlEQUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQk9lMVRISy9FRnJaWXZTblE3eG9xdWNMN1N2VFlmTzZibkdQa24ydUJlMUFJZ1M4VUZqK2RVMHdjR2c1WHNUUVkrU01sZDAvYWxJQ1k0cXRmcGlZZExXclE9IiwiTUlJRE1EQ0NBdGFnQXdJQkFnSVVEMUtWdzU2V3VQbG1RNm45a0Naam9uYUZQMkV3Q2dZSUtvWkl6ajBFQXdJd2daY3hDekFKQmdOVkJBWVRBbFJTTVJBd0RnWURWUVFJREFkTGIyTmhaV3hwTVE0d0RBWURWUVFIREFWQ1lYSnBjekVRTUE0R0ExVUVDZ3dIVkhWaWFYUmhhekVyTUNrR0ExVUVDd3dpUlMxSlpHVnVkR2wwZVNCVVpXTm9ibTlzYjJkcFpYTWdSR1Z3WVhKMGJXVnVkREVuTUNVR0ExVUVBd3dlVkhWaWFYUmhheUJGVlVSSklGSmxZV1JsY2lCRFFTQXRJRlJTSURBeE1CNFhEVEkxTVRFeU56RXlNakl6TWxvWERUTTFNVEV5TlRFeU1qSXpNbG93Z1pjeEN6QUpCZ05WQkFZVEFsUlNNUkF3RGdZRFZRUUlEQWRMYjJOaFpXeHBNUTR3REFZRFZRUUhEQVZDWVhKcGN6RVFNQTRHQTFVRUNnd0hWSFZpYVhSaGF6RXJNQ2tHQTFVRUN3d2lSUzFKWkdWdWRHbDBlU0JVWldOb2JtOXNiMmRwWlhNZ1JHVndZWEowYldWdWRERW5NQ1VHQTFVRUF3d2VWSFZpYVhSaGF5QkZWVVJKSUZKbFlXUmxjaUJEUVNBdElGUlNJREF4TUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFbVpJbDVFSERzTlkvWlZRZTUxMUZKRkhva3luSW9GUjFOWTZ1QjEyaDRNUDNSVllON0tISzY5OVdOQzJwaTZLLzEwU1I0Y3RCM0VEbnIwSkYzZVhpVnFPQi9UQ0IrakFTQmdOVkhSTUJBZjhFQ0RBR0FRSC9BZ0VBTUE0R0ExVWREd0VCL3dRRUF3SUJCakFkQmdOVkhRNEVGZ1FVbzNQalVUdzlRWm85Q3JZRXRrQ2dzUmpoN21Bd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3RXdTUVlEVlIwZkJFSXdRREErb0R5Z09vWTRhSFIwY0RvdkwyVjFaR2t1WW1sc1oyVnRMblIxWW1sMFlXc3VaMjkyTG5SeUwyTnliQzlVUWxSTFgxSmxZV1JsY2w5RFFTNWpjbXd3VlFZSUt3WUJCUVVIQVFFRVNUQkhNRVVHQ0NzR0FRVUZCekFDaGpsb2RIUndPaTh2WlhWa2FTNWlhV3huWlcwdWRIVmlhWFJoYXk1bmIzWXVkSEl2WTJWeWRDOVVRbFJMWDFKbFlXUmxjbDlEUVM1amNuUXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWhBUHlkUFYvdHJoWkRLRDdaTlgyam0rV1h3ZnZWUzE2UmJaMDBlQkhxY01IVkFpQnR4NEp5RHFVUjRvTEpsMFV0SlRJRGlBYUtGVUlFakQwcmVHcWJNbEU0cEE9PSJdfQ.eyJpYXQiOjE3ODE1MjY0MTQsImV4cCI6MTc4MTYxMjgxNCwibmJmIjoxNzgxNTI2NDE0LCJpc3MiOiJodHRwOi8vMTAuNzcuNTEuNDk6MzAwMCIsInN1YiI6Imh0dHA6Ly8xMC43Ny41MS40OTozMDAwL1R1Yml0YWtXYWxsZXQiLCJjbmYiOnsiandrIjp7Imt0eSI6IkVDIiwiY3J2IjoiUC0yNTYiLCJ4IjoiYjJHbFg2VGN4cFJoQko0QjZIb1ZLV3J6Q0REUG9seDAtbkEzODFuTDZxYyIsInkiOiJvS1Q4bmRWZlRQUWhUR2U3M2hMSEdXckMySVBHS1lGUWdwRTg4cEp3d0pzIn19LCJ3YWxsZXRfbmFtZSI6IlR1Yml0YWtXYWxsZXQiLCJ3YWxsZXRfbGluayI6Imh0dHA6Ly8xMC43Ny41MS40OTozMDAwL3NzaS93YWxsZXQtcHJvdmlkZXIvdjEvVHViaXRha1dhbGxldCIsImV1ZGlfd2FsbGV0X2luZm8iOnsiZ2VuZXJhbF9pbmZvIjp7IndhbGxldF9wcm92aWRlcl9uYW1lIjoiVHViaXRha1dhbGxldCIsIndhbGxldF9zb2x1dGlvbl9pZCI6IlRCVEtfQ09SRSIsIndhbGxldF9zb2x1dGlvbl92ZXJzaW9uIjoiMSJ9LCJ3c2NkX2luZm8iOnsid3NjZF90eXBlIjoiSFlCUklEIn19fQ.oJuJmozGDfi4eiKt-qikejC2SW0EhKaL_VtJUT6o7JXqpOlX9z54d7yO04SqOl8WpdjuSCrP0KyG1VgLcj2LbA",
    "oauth-client-attestation-pop": "eyJhbGciOiJFUzI1NiIsInR5cCI6Im9hdXRoLWNsaWVudC1hdHRlc3RhdGlvbi1wb3Arand0In0.eyJpYXQiOjE3ODE1MjY0MTQsImV4cCI6MTc4MTUzMDAxNCwibmJmIjoxNzgxNTI2NDE0LCJpc3MiOiJodHRwOi8vMTAuNzcuNTEuNDk6MzAwMC9UdWJpdGFrV2FsbGV0IiwiYXVkIjoiaHR0cHM6Ly9hcGkucGxheWdyb3VuZC5mcmFuY2UtaWRlbnRpdGUuZ291di5mci9pZ3JhbnRpby9pc3N1ZXItYmFja2VuZCIsImp0aSI6IjQ5MTI2ZTllLWJiZDQtNGE0Mi05NjVmLTI1MjY4ZTM5ZjA3YiJ9.grd1kiqWPzKFopdHJdyi4is3BDrpixdV_o875Rbmkz0kI6qNfym0erbtgRC2jJLsoI4z5rZoaa3Xude8tAOxow",
    "traceparent": "00-1fd1fb724e2dcbf72c5799e43b938779-0cb43b80643b6729-01",
    "tracestate": "",
    "via": "1.1 Caddy",
    "x-envoy-attempt-count": "1",
    "x-envoy-external-address": "10.42.7.1",
    "x-envoy-original-path": "/igrantio/issuer-backend/token",
    "x-forwarded-client-cert": "By=spiffe://cluster.local/ns/igrantio/sa/igrantio-playground-unfold;Hash=a159e3a95787a9a0c4e280d252488fb000dd19877195dd97941e09f109148636;Subject=\"\";URI=spiffe://cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account",
    "x-forwarded-for": "176.219.114.244, 127.0.0.1,10.42.7.1",
    "x-forwarded-host": "api.playground.france-identite.gouv.fr",
    "x-forwarded-proto": "https",
    "x-forwarded-server": "api.playground.france-identite.gouv.fr",
    "x-request-id": "d4e2c2cf-2196-970f-9096-4a688f3c8ed5"
  },
  "require_wallet_attestation": false,
  "wa_provided": true,
  "wa_validated_at_par": false
}
2026-06-15 12:26:38 info /credential_offers Credential offer retrieved by wallet
Data:
{
  "offer_id": "CbaWmbBSiY-b2eiH8BCt0Q"
}
2026-06-15 12:26:38 info /credential_offers Credential offer retrieved by wallet
Data:
{
  "offer_id": "CbaWmbBSiY-b2eiH8BCt0Q"
}
2026-06-15 12:26:29 info /credential_offers Credential offer created
Data:
{
  "credential_offer": {
    "credential_configuration_ids": [
      "eu.europa.ec.eudi.pid_mdoc"
    ],
    "credential_issuer": "https://api.playground.france-identite.gouv.fr/igrantio/issuer-backend",
    "grants": {
      "urn:ietf:params:oauth:grant-type:pre-authorized_code": {
        "pre-authorized_code": "kyDzKLnERHT90JIy9u-7oKob6JgvKJMxlijE8sOT9DY",
        "tx_code": {
          "input_mode": "numeric",
          "length": 4
        }
      }
    }
  },
  "grant_type": "pre-authorized_code",
  "offer_id": "CbaWmbBSiY-b2eiH8BCt0Q"
}
2026-06-15 12:26:29 info /credential_offers Pre-authorized code created
Data:
{
  "code": "kyDzKLnERHT90JIy9u-7oKob6JgvKJMxlijE8sOT9DY",
  "credential_configuration_ids": [
    "eu.europa.ec.eudi.pid_mdoc"
  ],
  "tx_code_present": true
}
2026-06-15 12:26:29 info /credential_offers Credential offer requested
Data:
{
  "claims_present": false,
  "credential_configuration_ids": [
    "eu.europa.ec.eudi.pid_mdoc"
  ],
  "grants": {
    "pre_authorized_code": true,
    "tx_code": {
      "input_mode": "numeric",
      "length": 4,
      "value": "1234"
    }
  },
  "require_key_attestation": false,
  "require_wallet_attestation": false,
  "subject_id": null
}

Events

4 total
Type Timestamp Details
token_exchanged 2026-06-15 12:26:54 {'grant_type': 'pre-authorized_code'}
offer_retrieved 2026-06-15 12:26:38 None
offer_retrieved 2026-06-15 12:26:38 None
offer_created 2026-06-15 12:26:29 {'credential_configuration_ids': ['eu.europa.ec.eudi.pid_mdoc']}