> ## 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.

# Registering conda for your organization

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>;
};

Organizations that register conda clients gain clearer visibility into how conda is being used across their teams to help ensure usage aligns with license agreements and compliance requirements.

If you would like to streamline registration for your organization, contact your customer success manager to discuss options for organization-wide bulk registration. They can recommend approaches that fit your needs and minimize the steps required from your organization members.

## Distributing the organization token

After you complete bulk registration setup, Anaconda provides you with an organization token. When this token is present on a machine, the conda client identifies itself as belonging to your organization, which satisfies the registration requirement. Your organization members do not need to log in to Anaconda or create an account.

To distribute the token, save it in a file named `org_token` in the system conda configuration directory on each machine:

* **Linux and macOS**: `/etc/conda/org_token`
* **Windows**: `C:\ProgramData\conda\org_token`

The conda client reads the first non-blank line of the file as the token. Token values can contain only letters, numbers, dashes, and underscores, up to a maximum of 36 characters. The client discards values that do not match this format.

The system directory is the recommended location because it applies to every user and every conda environment on the machine. Most organizations distribute this file using mobile device management (MDM) software or their standard configuration management tooling.

<Accordion title="All locations checked for the token file">
  The conda client checks the following directories, in order, for both `org_token` and `.org_token`:

  * `/etc/conda` and `/var/lib/conda` (Linux and macOS) or `C:\ProgramData\conda` (Windows)
  * The root directory of the conda installation
  * `$XDG_CONFIG_HOME/conda`
  * `~/.config/conda`
  * `~/.conda`
  * `$CONDA_PREFIX` (the active environment)

  User-level directories such as `~/.conda` are an option when you cannot write to system directories, but the file must then be deployed separately for each user account.
</Accordion>

To keep registration reporting reliable, Anaconda recommends also distributing a `condarc` file in the same directory with the following contents:

```yaml theme={null}
anaconda_anon_usage: true #!final
aggressive_update_packages: [anaconda-anon-usage]
```

<Note>
  Conda accepts both `condarc` and `.condarc` in system directories; the non-dotted form keeps the file visible when browsing the directory.
</Note>

The `#!final` flag prevents organization members from overriding these settings in their own `.condarc` files. The first setting keeps telemetry enabled so that the token continues to be sent, and the second keeps the `anaconda-anon-usage` package up to date.

If a machine has more than one organization token (for example, one in `/etc/conda/org_token` and another in the `ANACONDA_ANON_USAGE_ORG_TOKEN` environment variable), the client sends all of them. One token never overrides another.

<Note>
  The organization token is an identifier, not a credential. It cannot be used to access channels, packages, or other Anaconda resources.
</Note>

## Verifying token distribution

After distributing the token, verify on a recipient machine that the conda client picks it up. Any machine with the `anaconda-anon-usage` package installed, including machines where `anaconda-registration` is present, provides a command for inspecting tokens:

```sh theme={null}
anaconda-anon-usage --detail
```

Confirm that the output contains an `o/` entry showing your organization token. The entry also lists the token's source, which should be the file you distributed.

If the entry is missing, print the exact directories the client checks and confirm that your file is in one of them:

```sh theme={null}
anaconda-anon-usage --paths
```

If the file is in a checked directory but the token still does not appear, the value might not match the required format. Set the `ANACONDA_ANON_USAGE_DEBUG` environment variable to `1` and rerun the command to see diagnostic messages, including any discarded tokens.

## Registering member machines

Once the organization token is in place on a machine, instruct your organization members to follow the steps below to register their conda client:

1. Open <Tooltip tip="A command-line application included with Windows installations of Anaconda Distribution and Miniconda. Find it by searching 'Anaconda Prompt' in the Windows Start menu.">Anaconda Prompt</Tooltip> (Terminal on macOS/Linux).

2. If necessary, activate your base environment:

   ```sh theme={null}
   conda activate base
   ```

3. Install `anaconda-registration`:

   ```sh theme={null}
   conda install --name base anaconda-registration --channel https://repo.anaconda.cloud/repo/anaconda-tools --override-channels
   ```

   <Note>
     The `--channel` and `--override-channels` command options allow installation to succeed, despite the registration block.
   </Note>

With the organization token in place and `anaconda-registration` installed, the conda client identifies itself as part of your organization whenever it connects to Anaconda.

Registration does not grant access to licensed channels. Members who need access to your organization's channels must also set an access token. For more information, see [Site token management](/docs/anaconda-platform/admin/site-token).

## Using an organization token in automated workflow environments

If your organization members use Anaconda services as part of automated workflows or CI/CD pipelines, or if they are using conda within Docker builds on their desktop, they can use the organization token provided by Anaconda during bulk registration setup to register their conda clients programmatically.

In the automated workflow system, set the `ANACONDA_ANON_USAGE_ORG_TOKEN` environment variable:

```sh theme={null}
export ANACONDA_ANON_USAGE_ORG_TOKEN="<YOUR_ORG_TOKEN>"
```

<Comments>
  Replace \<YOUR\_ORG\_TOKEN> with the token you received from your Anaconda customer success manager.
</Comments>

Store the token in your automation platform's secret manager rather than hardcoding it in scripts. In Docker builds, do not set the token with `ENV` or `ARG` instructions, which persist the value in image layers. Instead, mount the value as a build secret and export it within the `RUN` command.
