demo · v132

Custom account labels & filtering

The IDP returns multiple accounts with labels: personal, work, admin, student. The RP filters with accountHints. v132 lets IDPs ship arbitrary labels; RPs ship arbitrary hints; the browser does the filter so neither side leaks user identity to the other.

IDP returns these accounts

RP applies accountHints

show only accounts labelled:

spec excerpt

// IDP /accounts response (Chrome 132+)
{
  "accounts": [
    {
      "id": "p1", "name": "Pat User", "email": "pat@gmail.example",
      "labels": ["personal", "default"]
    },
    {
      "id": "w1", "name": "Pat User (Acme)", "email": "pat@acme.example",
      "labels": ["work", "admin"]
    }
  ]
}

// RP get() call
navigator.credentials.get({
  identity: { providers: [{
    configURL: "https://idp.example/fedcm/config.json",
    clientId: "client-abc",
    accountHints: ["work"]   // <-- v132
  }]}
});

see also