Build, manage and test your Auth0 integrations from the command line.
- π§ͺ Test your universal login flow: Emulate your end users' login experience by running
auth0 test login
. - π Troubleshoot in real-time: Inspect the events of your Auth0 integration as they happen with the
auth0 logs tail
command. - π Simplify repetitive tasks: Create, update, list and delete your Auth0 resources directly from the terminal.
Install via Homebrew:
brew tap auth0/auth0-cli && brew install auth0
Install via Scoop:
scoop bucket add auth0 https://github.com/auth0/scoop-auth0-cli.git
scoop install auth0
Install via Powershell
#fetch latest release information
$latestRelease = Invoke-RestMethod -Uri "https://api.github.com/repos/auth0/auth0-cli/releases/latest"
$latestVersion = $latestRelease.tag_name
$version = $latestVersion -replace "^v"
# Download the binary to the current folder
Invoke-WebRequest -Uri "https://github.com/auth0/auth0-cli/releases/download/${latestVersion}/auth0-cli_${version}_Windows_x86_64.zip" -OutFile ".\auth0.zip"
Expand-Archive ".\auth0.zip" .\
# To be able to run the binary from any directory, make sure you add it to your $PATH
[System.Environment]::SetEnvironmentVariable('PATH', $Env:PATH + ";${pwd}")
Install via cURL:
# Binary will be downloaded to "./auth0".
curl -sSfL https://raw.githubusercontent.com/auth0/auth0-cli/main/install.sh | sh -s -- -b .
# To be able to run the binary from any directory
# make sure you move it to a place in your $PATH
# sudo mv ./auth0 /usr/local/bin
Install via Go:
# Make sure your $GOPATH/bin is exported on your $PATH
# to be able to run the binary from any directory.
go install github.com/auth0/auth0-cli/cmd/auth0@latest
- Download the appropriate binary for your environment from the latest release
- Extract the archive
- macOS:
$ tar -xf auth0-cli_{version}_Darwin_{architecture}.tar.gz
- Linux:
$ tar -xf auth0-cli_{version}_Linux_{architecture}.tar.gz
- Windows: Extract
auth0-cli_{version}_Windows_{architecture}.zip
using your preferred method of choice
- macOS:
- Make sure that the
PATH
andHOME
environment variables include the folder where the binary was extracted. - Run
auth0
Note Autocompletion instructions for supported platforms available by running
auth0 completion -h
Authenticating to your Auth0 tenant is required for most functions of the CLI. It can be initiated by running:
auth0 login
There are two ways to authenticate:
- As a user - Recommended when invoking on a personal machine or other interactive environment. Facilitated by device authorization flow.
- As a machine - Recommended when running on a server or non-interactive environments (ex: CI). Facilitated by client credentials flow. Flags available for bypassing interactive shell.
Warning Authenticating as a user is not supported for private cloud tenants. Instead, those users should authenticate with client credentials.
- auth0 actions - Manage resources for actions
- auth0 api - Makes an authenticated HTTP request to the Auth0 Management API
- auth0 apis - Manage resources for APIs
- auth0 apps - Manage resources for applications
- auth0 completion - Setup autocomplete features for this CLI on your terminal
- auth0 domains - Manage custom domains
- auth0 email - Manage email settings
- auth0 login - Authenticate the Auth0 CLI
- auth0 logout - Log out of a tenant's session
- auth0 logs - View tenant logs
- auth0 orgs - Manage resources for organizations
- auth0 protection - Manage resources for attack protection
- auth0 quickstarts - Quickstart support for getting bootstrapped
- auth0 roles - Manage resources for roles
- auth0 rules - Manage resources for rules
- auth0 tenants - Manage configured tenants
- auth0 test - Try your Universal Login box or get a token
- auth0 terraform generate - Generate terraform configuration for your Auth0 Tenant
- auth0 universal-login - Manage the Universal Login experience
- auth0 users - Manage resources for users
To change the text editor used for editing templates, rules, and actions, set the environment variable EDITOR
to your
preferred editor. If choosing a non-terminal editor, ensure that the command starts the editor and waits for the files
to be closed before returning.
Examples:
# Uses vscode with the --wait flag.
export EDITOR="code --wait"
# Uses sublime text with the --wait flag.
export EDITOR="subl --wait"
# Uses nano, a terminal based editor.
export EDITOR="nano"
# Uses vim, a terminal based editor.
export EDITOR="vim"
Anonymized data points are collected during the use of this CLI. This data includes the CLI version, operating system, timestamp, and other technical details that do not personally identify you.
Auth0 uses this data to better understand the usage of this tool to prioritize the features, enhancements and fixes that matter most to our users.
To opt-out of this collection, set the AUTH0_CLI_ANALYTICS
environment variable to false
.
We appreciate feedback and contribution to this repo! Before you get started, please see the following:
- Auth0's general contribution guidelines
- Auth0's code of conduct guidelines
- This repo's contribution guide
To provide feedback or report a bug, please raise an issue on our issue tracker.
Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.
Auth0 is an easy to implement, adaptable authentication and authorization platform. To learn more checkout Why Auth0?
This project is licensed under the MIT license. See the LICENSE file for more info.