%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
--- title: npm-adduser section: 1 description: Add a registry user account --- ### Synopsis <!-- AUTOGENERATED USAGE DESCRIPTIONS START --> <!-- automatically generated, do not edit manually --> <!-- see lib/commands/adduser.js --> ```bash npm adduser aliases: login, add-user ``` <!-- automatically generated, do not edit manually --> <!-- see lib/commands/adduser.js --> <!-- AUTOGENERATED USAGE DESCRIPTIONS END --> Note: This command is unaware of workspaces. ### Description Create or verify a user named `<username>` in the specified registry, and save the credentials to the `.npmrc` file. If no registry is specified, the default registry will be used (see [`config`](/using-npm/config)). The username, password, and email are read in from prompts. To reset your password, go to <https://www.npmjs.com/forgot> To change your email address, go to <https://www.npmjs.com/email-edit> You may use this command multiple times with the same user account to authorize on a new machine. When authenticating on a new machine, the username, password and email address must all match with your existing record. `npm login` is an alias to `adduser` and behaves exactly the same way. ### Configuration <!-- AUTOGENERATED CONFIG DESCRIPTIONS START --> <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> #### `registry` * Default: "https://registry.npmjs.org/" * Type: URL The base URL of the npm registry. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> #### `scope` * Default: the scope of the current project, if any, or "" * Type: String Associate an operation with a scope for a scoped registry. Useful when logging in to or out of a private registry: ``` # log in, linking the scope to the custom registry npm login --scope=@mycorp --registry=https://registry.mycorp.com # log out, removing the link and the auth token npm logout --scope=@mycorp ``` This will cause `@mycorp` to be mapped to the registry for future installation of packages specified according to the pattern `@mycorp/package`. This will also cause `npm init` to create a scoped package. ``` # accept all defaults, and create a package named "@foo/whatever", # instead of just named "whatever" npm init --scope=@foo --yes ``` <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> #### `auth-type` * Default: "legacy" * Type: "legacy", "web", "sso", "saml", "oauth", or "webauthn" NOTE: auth-type values "sso", "saml", "oauth", and "webauthn" will be removed in a future version. What authentication strategy to use with `login`. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> <!-- AUTOGENERATED CONFIG DESCRIPTIONS END --> ### See Also * [npm registry](/using-npm/registry) * [npm config](/commands/npm-config) * [npmrc](/configuring-npm/npmrc) * [npm owner](/commands/npm-owner) * [npm whoami](/commands/npm-whoami) * [npm token](/commands/npm-token) * [npm profile](/commands/npm-profile)