| title | Sign in with a Personal Access Token (PAT), Azure DevOps CLI |
|---|---|
| titleSuffix | Azure DevOps |
| description | Use a Personal Access Token (PAT) with Azure DevOps CLI |
| ms.topic | how-to |
| ms.subservice | azure-devops-reference |
| ms.manager | mijacobs |
| ms.author | chcomley |
| author | chcomley |
| monikerRange | azure-devops |
| ms.date | 01/08/2025 |
[!INCLUDE version-eq-azure-devops]
You can sign in using an Azure DevOps personal access token (PAT). To create a PAT, see Use personal access tokens.
[!INCLUDE use-microsoft-entra-reduce-pats]
To use a PAT with the Azure DevOps CLI, use one of these options:
-
Use
az devops loginand be prompted for the PAT token. -
Pipe the PAT token on StdIn to
az devops login.[!NOTE] This option works only in a non-interactive shell.
-
Set the
AZURE_DEVOPS_EXT_PAT[environment variable]((#use-the-azuredevopsextpat-environment-variable), and don't useaz devops login.
You're prompted to enter a PAT after you run the az devops login command:
$az devops login --organization https://dev.azure.com/contoso
Token:
Note
If you have already signed in with az login interactively or if you're using a user name and password, you're not required to provide a token because the az devops commands now support sign-in through az login.
When you're successfully signed in, this command also can set your default organization to Contoso, provided no default organization is configured.
Note
For Guest Users, only the az devops login is supported.
This option is useful in pipelines in which you can replace ##### with $(System.AccessToken) or another pipeline variable:
echo "######" | az devops login --organization https://dev.azure.com/contoso/
cat my_pat_token.txt | az devops login --organization https://dev.azure.com/contoso/
To gain access in a non-interactive manner for automation scenarios, you can use environment variables or fetch a PAT from a file.
If az login or az devops login haven't been used, all az devops commands try to sign in using a PAT stored in the AZURE_DEVOPS_EXT_PAT environment variable.
To use a PAT, set the AZURE_DEVOPS_EXT_PAT environment variable at the process level.
# set environment variable for current process
$env:AZURE_DEVOPS_EXT_PAT = 'xxxxxxxxxx'export AZURE_DEVOPS_EXT_PAT=xxxxxxxxxxReplace xxxxxxxxxx with your PAT.