> ## Documentation Index
> Fetch the complete documentation index at: https://anaconda.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Private packages

export const Comments = ({children}) => {
  return <div class="my-4 px-5 py-4 overflow-hidden rounded-2xl flex gap-3 border border-zinc-500/20 bg-zinc-50/50 dark:border-zinc-500/30 dark:bg-zinc-500/10" data-callout-type="comments">
      <div class="w-4">
        <svg width="14" height="14" viewBox="0 0 640 640" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" aria-label="Comments">
            <path d="M320 112C434.9 112 528 205.1 528 320C528 434.9 434.9 528 320 528C205.1 528 112 434.9 112 320C112 205.1 205.1 112 320 112zM320 576C461.4 576 576 461.4 576 320C576 178.6 461.4 64 320 64C178.6 64 64 178.6 64 320C64 461.4 178.6 576 320 576zM280 400C266.7 400 256 410.7 256 424C256 437.3 266.7 448 280 448L360 448C373.3 448 384 437.3 384 424C384 410.7 373.3 400 360 400L352 400L352 312C352 298.7 341.3 288 328 288L280 288C266.7 288 256 298.7 256 312C256 325.3 266.7 336 280 336L304 336L304 400L280 400zM320 256C337.7 256 352 241.7 352 224C352 206.3 337.7 192 320 192C302.3 192 288 206.3 288 224C288 241.7 302.3 256 320 256z" />
        </svg>
      </div>
      <div class="text-sm prose min-w-0 w-full">
        {children}
      </div>
    </div>;
};

<Note>
  Individual paid plans with private packages are a legacy offering from Anaconda.org that are no longer available. However, anyone who had private packages in the past still has the ability to have those hosted privately.
</Note>

## Making packages private

By default, all packages uploaded to Anaconda.org are accessible to anyone who has access to the <Tooltip tip="Any storage location from which software or software assets, like packages, can be retrieved and installed on a local computer.">repository</Tooltip>.

<Note>
  As of August 30, 2023, only users with paid plans can mark their packages as private.
</Note>

To mark packages uploaded to your user <Tooltip tip="A location (URL or file path) in a repository where conda looks for packages.">channel</Tooltip> on Anaconda.org as private:

1. From your dashboard, select the package.
2. Select **Manage**.
3. Navigate to the **Settings** tab.
4. Select **Admin** in the sidebar.
5. Select **Private**.

<Note>
  Other Anaconda.org users may access your private packages either with tokens or by logging in.
</Note>

## Accessing private packages with tokens

To make your private packages accessible with <Tooltip tip="A randomly generated string that proves your identity and permission to access resources like channels, packages, or APIs.">tokens</Tooltip>, create an [access token](/tools/anaconda-org/admin-guide/tokens) that includes the following scope for Anaconda Client:

```sh theme={null}
conda:download
```

Or, on Anaconda.org in the access settings, select **Allow private downloads from conda repositories**.

### Using the token to access private packages

If you intend to install many packages from a private channel, you can include the channel in your `.condarc` file. This will include the token any time you search for packages on that channel. To add a user channel to your `.condarc` file from [Anaconda Prompt](/reference/glossary#anaconda-prompt) (Terminal on macOS/Linux), run the following command:

```sh theme={null}
conda config --add channels https://conda.anaconda.org/t/<TOKEN>/<CHANNEL>
```

<Comments>
  Replace \<TOKEN> with the provided token.<br />
  Replace \<CHANNEL> with a user channel.
</Comments>

You can also use the token to install packages without first adding the channel to your `.condarc` file by using the channel's full URL. In Anaconda Prompt (Terminal on macOS/Linux), run the following command:

```sh theme={null}
conda install --channel https://conda.anaconda.org/t/<TOKEN>/<CHANNEL> <PACKAGE>
```

<Comments>
  Replace \<TOKEN> with the provided token.<br />
  Replace \<CHANNEL> with a user channel.<br />
  Replace \<PACKAGE> with the name of the package you want to install.
</Comments>

### Accessing a private package that has a label

To install a package from a channel using the token and <Tooltip tip="Part of the URLs on Anaconda.org where conda looks for packages. Labels are searched only if you specify a label.">label</Tooltip> name:

```sh theme={null}
conda install --channel https://conda.anaconda.org/t/<TOKEN>/<CHANNEL>/label/<LABEL_NAME> <PACKAGE>
```

<Comments>
  Replace \<TOKEN> with the provided token.<br />
  Replace \<CHANNEL> with a user channel.<br />
  Replace \<LABEL\_NAME> with the label name.<br />
  Replace \<PACKAGE> with the name of the package you want to install.
</Comments>

### Using the token to access private PyPI packages

Private PyPI packages can also be installed in the web UI:

```sh theme={null}
https://pypi.anaconda.org/t/<TOKEN>/<CHANNEL>
```

<Comments>
  Replace \<TOKEN> with the provided token.<br />
  Replace \<CHANNEL> with a user channel.
</Comments>

## Accessing private packages as a registered user

To make your private packages available to users who have logged in:

1. Create an [organization](/tools/anaconda-org/admin-guide/organizations).
2. Create a group (which can be read-only) in that organization.
3. Add the preferred users to the group.
4. Upload the package to the organization, or transfer an existing package to the organization.

After you grant users access, other users can install your package using the web UI or Anaconda Client.

To install a package:

1. In a browser, navigate to the preferred channel.
2. Open [Anaconda Prompt](/reference/glossary#anaconda-prompt) (Terminal on macOS/Linux) and run the following command:

   ```sh theme={null}
   conda install anaconda-client
   anaconda login
   conda install --channel https://conda.anaconda.org/<ORGANIZATION> <PACKAGE>
   ```

   <Comments>
     Replace \<ORGANIZATION> with the organization name.<br />
     Replace \<PACKAGE> with the package name.
   </Comments>

### Private channels

You can install a package from a private channel with a <Tooltip tip="A randomly generated string that proves your identity and permission to access resources like channels, packages, or APIs.">token</Tooltip> and a [Label](/tools/anaconda-org/maintainer-guide/labels):

```sh theme={null}
conda install --channel https://conda.anaconda.org/t/<TOKEN>/<CHANNEL>/label/<LABEL_NAME> <PACKAGE>
```

<Comments>
  Replace \<TOKEN> with the provided token.<br />
  Replace \<CHANNEL> with a user channel.<br />
  Replace \<LABEL\_NAME> with the label name.<br />
  Replace \<PACKAGE> with the name of the package you want to install.
</Comments>

Tokens are only required if the channel is private.

## Finding help for uploading packages

You can obtain a complete list of upload options, including:

* Package channel
* Label
* Availability to other users
* Metadata

To list the options, run the following in Anaconda Prompt (Terminal on macOS/Linux):

```sh theme={null}
anaconda upload -h
```
