2021-11-18 20:58:02 +00:00
<!DOCTYPE html> < html > < head >
< meta charset = "utf-8" >
2020-11-01 07:54:36 +01:00
< title > npm-access< / title >
< style >
body {
background-color: #ffffff;
color: #24292e;
margin: 0;
line-height: 1.5;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
}
#rainbar {
height: 10px;
background-image: linear-gradient(139deg, #fb8817, #ff4b01, #c12127, #e02aff);
}
a {
text-decoration: none;
color: #0366d6;
}
a:hover {
text-decoration: underline;
}
pre {
margin: 1em 0px;
padding: 1em;
border: solid 1px #e1e4e8;
border-radius: 6px;
display: block;
overflow: auto;
white-space: pre;
background-color: #f6f8fa;
color: #393a34;
}
code {
font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 85%;
padding: 0.2em 0.4em;
background-color: #f6f8fa;
color: #393a34;
}
pre > code {
padding: 0;
background-color: inherit;
color: inherit;
}
h1, h2, h3 {
font-weight: 600;
}
#logobar {
background-color: #333333;
margin: 0 auto;
padding: 1em 4em;
}
#logobar .logo {
float: left;
}
#logobar .title {
font-weight: 600;
color: #dddddd;
float: left;
margin: 5px 0 0 1em;
}
#logobar:after {
content: "";
display: block;
clear: both;
}
#content {
margin: 0 auto;
padding: 0 4em;
}
#table_of_contents > h2 {
font-size: 1.17em;
}
#table_of_contents ul:first-child {
border: solid 1px #e1e4e8;
border-radius: 6px;
padding: 1em;
background-color: #f6f8fa;
color: #393a34;
}
#table_of_contents ul {
list-style-type: none;
padding-left: 1.5em;
}
#table_of_contents li {
font-size: 0.9em;
}
#table_of_contents li a {
color: #000000;
}
header.title {
border-bottom: solid 1px #e1e4e8;
}
header.title > h1 {
margin-bottom: 0.25em;
}
header.title > .description {
display: block;
margin-bottom: 0.5em;
line-height: 1;
}
2024-05-16 05:38:49 -07:00
header.title .version {
font-size: 0.8em;
color: #666666;
}
2020-11-01 07:54:36 +01:00
footer#edit {
border-top: solid 1px #e1e4e8;
margin: 3em 0 4em 0;
padding-top: 2em;
}
< / style >
< / head >
< body >
< div id = "banner" >
< div id = "rainbar" > < / div >
< div id = "logobar" >
< svg class = "logo" role = "img" height = "32" width = "32" viewBox = "0 0 700 700" >
< polygon fill = "#cb0000" points = "0,700 700,700 700,0 0,0" > < / polygon >
< polygon fill = "#ffffff" points = "150,550 350,550 350,250 450,250 450,550 550,550 550,150 150,150" > < / polygon >
< / svg >
< div class = "title" >
npm command-line interface
< / div >
< / div >
< / div >
< section id = "content" >
< header class = "title" >
2025-04-10 14:36:22 -07:00
< h1 id = "----npm-access----1130" >
2024-05-16 05:38:49 -07:00
< span > npm-access< / span >
2025-04-10 14:36:22 -07:00
< span class = "version" > @11.3.0< / span >
2024-05-16 05:38:49 -07:00
< / h1 >
2020-11-01 07:54:36 +01:00
< span class = "description" > Set access level on published packages< / span >
< / header >
< section id = "table_of_contents" >
< h2 id = "table-of-contents" > Table of contents< / h2 >
2022-12-06 22:18:33 -05:00
< div id = "_table_of_contents" > < ul > < li > < a href = "#synopsis" > Synopsis< / a > < / li > < li > < a href = "#description" > Description< / a > < / li > < li > < a href = "#details" > Details< / a > < / li > < li > < a href = "#configuration" > Configuration< / a > < / li > < ul > < li > < a href = "#json" > < code > json< / code > < / a > < / li > < li > < a href = "#otp" > < code > otp< / code > < / a > < / li > < li > < a href = "#registry" > < code > registry< / code > < / a > < / li > < / ul > < li > < a href = "#see-also" > See Also< / a > < / li > < / ul > < / div >
2020-11-01 07:54:36 +01:00
< / section >
< div id = "_content" > < h3 id = "synopsis" > Synopsis< / h3 >
2024-04-30 23:53:22 -07:00
< pre > < code class = "language-bash" > npm access list packages [< user> |< scope> |< scope:team> ] [< package> ]
2022-12-06 22:18:33 -05:00
npm access list collaborators [< package> [< user> ]]
npm access get status [< package> ]
npm access set status=public|private [< package> ]
npm access set mfa=none|publish|automation [< package> ]
2020-11-01 07:54:36 +01:00
npm access grant < read-only|read-write> < scope:team> [< package> ]
npm access revoke < scope:team> [< package> ]
< / code > < / pre >
2023-01-16 22:38:23 -05:00
< p > Note: This command is unaware of workspaces.< / p >
2020-11-01 07:54:36 +01:00
< h3 id = "description" > Description< / h3 >
< p > Used to set access controls on private packages.< / p >
< p > For all of the subcommands, < code > npm access< / code > will perform actions on the packages
in the current working directory if no package name is passed to the
subcommand.< / p >
< ul >
< li >
2022-09-02 05:48:00 -07:00
< p > public / restricted (deprecated):
2020-11-01 07:54:36 +01:00
Set a package to be either publicly accessible or restricted.< / p >
< / li >
< li >
2022-09-02 05:48:00 -07:00
< p > grant / revoke (deprecated):
2020-11-01 07:54:36 +01:00
Add or remove the ability of users and teams to have read-only or read-write
access to a package.< / p >
< / li >
< li >
2022-09-02 05:48:00 -07:00
< p > 2fa-required / 2fa-not-required (deprecated):
2020-11-01 07:54:36 +01:00
Configure whether a package requires that anyone publishing it have two-factor
authentication enabled on their account.< / p >
< / li >
< li >
2022-09-02 05:48:00 -07:00
< p > ls-packages (deprecated):
2020-11-01 07:54:36 +01:00
Show all of the packages a user or a team is able to access, along with the
2021-11-18 20:58:02 +00:00
access level, except for read-only public packages (it won't print the whole
2020-11-01 07:54:36 +01:00
registry listing)< / p >
< / li >
< li >
2022-09-02 05:48:00 -07:00
< p > ls-collaborators (deprecated):
2020-11-01 07:54:36 +01:00
Show all of the access privileges for a package. Will only show permissions
for packages to which you have at least read access. If < code > < user> < / code > is passed in,
the list is filtered only to teams < em > that< / em > user happens to belong to.< / p >
< / li >
< li >
2022-09-02 05:48:00 -07:00
< p > edit (not implemented)< / p >
2020-11-01 07:54:36 +01:00
< / li >
< / ul >
< h3 id = "details" > Details< / h3 >
< p > < code > npm access< / code > always operates directly on the current registry, configurable
from the command line using < code > --registry=< registry url> < / code > .< / p >
< p > Unscoped packages are < em > always public< / em > .< / p >
< p > Scoped packages < em > default to restricted< / em > , but you can either publish them as
public using < code > npm publish --access=public< / code > , or set their access as public using
< code > npm access public< / code > after the initial publish.< / p >
< p > You must have privileges to set the access of a package:< / p >
< ul >
< li > You are an owner of an unscoped or scoped package.< / li >
< li > You are a member of the team that owns a scope.< / li >
< li > You have been given read-write privileges for a package, either as a member
of a team or directly as an owner.< / li >
< / ul >
2023-02-18 17:09:39 -05:00
< p > If you have two-factor authentication enabled then you'll be prompted to provide a second factor, or may use the < code > --otp=...< / code > option to specify it on
2020-11-01 07:54:36 +01:00
the command line.< / p >
< p > If your account is not paid, then attempts to publish scoped packages will
fail with an HTTP 402 status code (logically enough), unless you use
< code > --access=public< / code > .< / p >
< p > Management of teams and team memberships is done with the < code > npm team< / code > command.< / p >
2021-05-20 15:54:50 -04:00
< h3 id = "configuration" > Configuration< / h3 >
2022-12-06 22:18:33 -05:00
< h4 id = "json" > < code > json< / code > < / h4 >
2021-05-20 15:54:50 -04:00
< ul >
2022-12-06 22:18:33 -05:00
< li > Default: false< / li >
< li > Type: Boolean< / li >
2021-05-20 15:54:50 -04:00
< / ul >
2022-12-06 22:18:33 -05:00
< p > Whether or not to output JSON data, rather than the normal output.< / p >
< ul >
< li > In < code > npm pkg set< / code > it enables parsing set values with JSON.parse() before
saving them to your < code > package.json< / code > .< / li >
< / ul >
< p > Not supported by all npm commands.< / p >
2021-05-20 15:54:50 -04:00
< h4 id = "otp" > < code > otp< / code > < / h4 >
< ul >
< li > Default: null< / li >
< li > Type: null or String< / li >
< / ul >
2021-11-18 20:58:02 +00:00
< p > This is a one-time password from a two-factor authenticator. It's needed
2021-05-20 15:54:50 -04:00
when publishing or changing package permissions with < code > npm access< / code > .< / p >
< p > If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.< / p >
2022-12-06 22:18:33 -05:00
< h4 id = "registry" > < code > registry< / code > < / h4 >
< ul >
< li > Default: "< a href = "https://registry.npmjs.org/" > https://registry.npmjs.org/< / a > "< / li >
< li > Type: URL< / li >
< / ul >
< p > The base URL of the npm registry.< / p >
2020-11-01 07:54:36 +01:00
< h3 id = "see-also" > See Also< / h3 >
< ul >
< li > < a href = "https://npm.im/libnpmaccess" > < code > libnpmaccess< / code > < / a > < / li >
< li > < a href = "../commands/npm-team.html" > npm team< / a > < / li >
< li > < a href = "../commands/npm-publish.html" > npm publish< / a > < / li >
< li > < a href = "../commands/npm-config.html" > npm config< / a > < / li >
< li > < a href = "../using-npm/registry.html" > npm registry< / a > < / li >
2022-12-06 22:18:33 -05:00
< / ul > < / div >
2020-11-01 07:54:36 +01:00
< footer id = "edit" >
< a href = "https://github.com/npm/cli/edit/latest/docs/content/commands/npm-access.md" >
< svg role = "img" viewBox = "0 0 16 16" width = "16" height = "16" fill = "currentcolor" style = "vertical-align: text-bottom; margin-right: 0.3em;" >
< path fill-rule = "evenodd" d = "M11.013 1.427a1.75 1.75 0 012.474 0l1.086 1.086a1.75 1.75 0 010 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 01-.927-.928l.929-3.25a1.75 1.75 0 01.445-.758l8.61-8.61zm1.414 1.06a.25.25 0 00-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 000-.354l-1.086-1.086zM11.189 6.25L9.75 4.81l-6.286 6.287a.25.25 0 00-.064.108l-.558 1.953 1.953-.558a.249.249 0 00.108-.064l6.286-6.286z" > < / path >
< / svg >
Edit this page on GitHub
< / a >
< / footer >
< / section >
< / body > < / html >