demo · v143 · origin trial
Protocol explorer
The Digital Credentials API isn't tied to a single credential format. Each request.protocol string switches the wallet into a different mode — OpenID4VP, OpenID4VCI, ISO mDoc, or the deprecated "preview". This page lays them out: when to use each, what the request body looks like, and which version Chrome 143 actually understands.
Origin trial / behind a flag: Digital Credentials API ships in origin trial through Chrome 143.
The protocol strings below are what current Chrome accepts in the
requests[i].protocol field.
How to pick
- OpenID4VP (presentation) — the broadly-agreed standard. Use this for new RP code asking for any credential.
- OpenID4VCI (issuance) — the issuance counterpart, new in v143. Use this when you're the issuer (DMV, school, employer) handing a credential to a user.
- org.iso.mdoc — the lower-level ISO mdoc transport. Required for legacy mDL deployments not yet on OpenID4VP. Most callers should use OpenID4VP with the mDoc format inside the DCQL instead.
- preview — Chrome's pre-spec protocol. Deprecated. Don't ship new code against it.
navigator.credentials.get({
digital: {
requests: [
{ protocol: "openid4vp", data: dcqlQuery },
{ protocol: "org.iso.mdoc", data: mdocReq },
// Chrome picks the first whose protocol the user's wallet supports.
],
},
});