demo · v141
Identity Card Preview
FedCM's account picker can now show phone numbers, usernames, and custom disclosure text in addition to — or instead of — the traditional name and email fields. Configure your synthetic IdP below and watch the browser-chrome account card update live. The JSON panel shows the exact IdentityProviderAccountList shape your IdP endpoint would return.
IdP field configuration
Account presets
Account chooser preview
Choose an account to continue to demo.example
IdentityProviderAccountList JSON
the IdP accounts endpoint
// GET /fedcm/accounts.json
{
"accounts": [{
"id": "user_4571",
"name": "Adaeze Okafor", // traditional
"email": "adaeze@example.com", // traditional
"username": "ada_o", // NEW in Chrome 141
"phone_number": "+44 7700 900123", // NEW in Chrome 141
"picture": "https://idp.example/u/4571.png"
}]
}
the RP navigator.credentials.get() call
const credential = await navigator.credentials.get({
identity: {
providers: [{
configURL: "https://idp.example/fedcm.json",
clientId: "rp-client-id",
// NEW: tell Chrome which fields to request/show
fields: ["username", "phone_number"]
}]
}
});
// credential.token carries the signed assertion
why this matters
Some IdPs don't use email addresses at all — think Truecaller (phone-first), Snapchat (username-first), or enterprise directories that identify users by employee ID. The original FedCM spec assumed every account had a name and email. Alternative fields removes that assumption: an IdP can now surface whatever identifier the user recognises themselves by, and the RP can request only what it needs in the consent disclosure.