This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The store() method of the CredentialsContainer stores a set of credentials for the user inside a Credential instance, returning this in a Promise.

This method is restricted to top-level contexts. Calls to it within an <iframe> element will resolve without effect.

Syntax { ... } )


A valid Credential instance.


Promise, resolving to the passed Credential instance.


Storing a password credential at successeful authentication

This code would be executed after a user signs up or logs in and the server confirms the credential is correct.

// Check if the browser supports password credentials (and the Credential Management API)
if ("PasswordCredential" in window) {
  let credential = new PasswordCredential({
    id: "example-username",
    name: "John Doe", // In case of a login, the name comes from the server.
    password: "correct horse battery staple"
  }); => {"Credential stored in the user agent's credential manager.");
  }, (err) => {
    console.error("Error while storing the credential: ", err);


Specification Status Comment
Credential Management Level 1 Working Draft Initial definition.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Chrome Full support 51Edge Full support ≤79Firefox Full support YesIE No support NoOpera No support NoSafari ? WebView Android Full support 51Chrome Android Full support 51Firefox Android Full support YesOpera Android No support NoSafari iOS ? Samsung Internet Android Full support 5.0


Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.