2019-11-05 14:55:08 -05:00
---
title: orgs
2020-11-01 07:54:36 +01:00
section: 7
2019-11-05 14:55:08 -05:00
description: Working with Teams & Orgs
---
2015-10-29 16:50:12 -07:00
2019-11-05 14:55:08 -05:00
### Description
2015-10-29 16:50:12 -07:00
There are three levels of org users:
1. Super admin, controls billing & adding people to the org.
2. Team admin, manages team membership & package access.
2016-09-22 07:59:37 -07:00
3. Developer, works on packages they are given access to.
2015-10-29 16:50:12 -07:00
The super admin is the only person who can add users to the org because it impacts the monthly bill. The super admin will use the website to manage membership. Every org has a `developers` team that all users are automatically added to.
The team admin is the person who manages team creation, team membership, and package access for teams. The team admin grants package access to teams, not individuals.
The developer will be able to access packages based on the teams they are on. Access is either read-write or read-only.
There are two main commands:
2020-11-01 07:54:36 +01:00
1. `npm team` see [npm team ](/commands/npm-team ) for more details
2. `npm access` see [npm access ](/commands/npm-access ) for more details
2015-10-29 16:50:12 -07:00
2019-11-05 14:55:08 -05:00
### Team Admins create teams
2015-10-29 16:50:12 -07:00
* Check who you’ ve added to your org:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm team ls < org > :developers
```
* Each org is automatically given a `developers` team, so you can see the whole list of team members in your org. This team automatically gets read-write access to all packages, but you can change that with the `access` command.
* Create a new team:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm team create < org:team >
```
* Add members to that team:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm team add < org:team > < user >
```
2019-11-05 14:55:08 -05:00
### Publish a package and adjust package access
2015-10-29 16:50:12 -07:00
* In package directory, run
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm init --scope=< org >
```
to scope it for your org & publish as usual
2016-09-22 07:59:37 -07:00
* Grant access:
2015-10-29 16:50:12 -07:00
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm access grant < read-only | read-write > < org:team > [< package > ]
```
* Revoke access:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm access revoke < org:team > [< package > ]
```
2019-11-05 14:55:08 -05:00
### Monitor your package access
2015-10-29 16:50:12 -07:00
* See what org packages a team member can access:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm access ls-packages < org > < user >
```
* See packages available to a specific team:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm access ls-packages < org:team >
```
* Check which teams are collaborating on a package:
2019-11-05 14:55:08 -05:00
```bash
2015-10-29 16:50:12 -07:00
npm access ls-collaborators < pkg >
```
2019-11-05 14:55:08 -05:00
### See also
2015-10-29 16:50:12 -07:00
2020-11-01 07:54:36 +01:00
* [npm team ](/commands/npm-team )
* [npm access ](/commands/npm-access )
2019-11-05 14:55:08 -05:00
* [npm scope ](/using-npm/scope )