Remote error when trying to run CLI command in the cloud

Problem statement

The CLI client is showing a remote error while accessing the cloud instance, as part of the platform changes related to GDPR.

Error message 

Remote error: User is not authorized to perform the request. Response code: 401.
Remote error: Unknown error occurred on the server. Response code: 501.

Environment

ApplicationConfluence, Jira
Version Cloud

Cause

The error is caused due to the recent changes in the authentication parameters for the Cloud instance, as recommended by the GDPR guidelines. 

Problem determination

  1. For some Confluence Cloud API removals, you may see the following if you do not have an updated CLI client:
    1. Remote error: Action disallowed. Response code: 403.
    2. Remote error: Unknown error occurred on the server. Response code: 501.
  2. If you are NOT using the email address and API token for your user credentials for accessing Cloud sites (see Authentication), you will likely receive: Remote error: User is not authorized to perform the request. Response code: 401.
  3. Even when using an API token, we have cases of 401 errors caused by older API tokens. Revoke the existing token and generate a new token. Then execute the CLI command.

Solution

CLI users must upgrade their CLI client to the latest version available to rollout GDPR platform changes. The Username and Password parameters accept only user email address and token respectively. 

To generate the token:

  1. Click your profile avatar on the bottom left corner.

  2. Navigate to Profile > Manage your account > Security.

  3. Under API token, click Create and manage API tokens (If you see a blank screen, refresh the page Or open this in another browser).

  4. Click Create an API token. A token is created that needs to be copied and kept securely.

Perform the following to avoid the error:

  1. Download the latest version of CLI distribution (Client) from this location.

  2. Enter the following:

    • Username - User email address

    • Password - Token

Example for the Linux environment: 

java -jar /opt/atlassian/cli/atlassian-cli-8.5.0/lib/jira-cli-8.5.0.jar --server https://your-site.atlassian.net --user "john@example.com" --token rg97a5s4agsjsd732 "$@"


Example for the Windows environment:

java -jar D:\CLI\atlassian-cli-8.5.0-distribution\atlassian-cli-8.5.0\lib\jira-cli-8.5.0.jar --server https://your-site.atlassian.net --user "john@example.com" --password "jLBdxOCRPvsiOdu0XiBcA088" %*