Contentstack Demonstrates 295% ROI as Part of New Go Composable Initiative295% ROI with ContentstackRead more
cs-icon.svg

CLI Authentication and Adding Tokens

After installing CLI in your system and before using the commands, you need to authenticate yourself either by using the Login command or by adding the Management token within the CLI session.

Note: Currently, Contentstack does not support strict SSO for CLI authentication. To access CLI from strict SSO-enabled organizations, go to the Organization Settings and change the SSO strict mode to a user-by-user basis. Once done, you can enable it for certain developers or create a developer account that you can share with developers to access the CLI.

Note: Even though we support using delivery token for bulk publishing and unpublishing entries/assets, we recommend using Management token in the CLI session for efficient usability.

Prerequisites

Commands

Login

The auth:login command lets you log in to Contentstack and save the session.

Open the terminal and run the following command to log in to your Contentstack account. After successful login, the authtoken will be generated automatically which you can use in import and export operations.

Note: Contentstack currently supports three regions: North America, Europe and Azure North America. If you want to use a specific endpoint, other than NA, refer to the Set Region command.

Note: Contentstack CLI now supports Two-factor Authentication, which ensures additional security to your Contentstack account.

Usage

csdx auth:login

OR

csdx login

Options

  • -u, --username: Email address of your Contentstack account
  • -p, --password: Password can be passed in command

Examples

  • csdx auth:login -u youremail@domain.com
  • csdx auth:login -u youremail@domain.com -p *****
  • csdx auth:login --username youremail@domain.com --password *****
  • csdx login -u youremail@domain.com

Logout

The auth:logout command lets you log out of Contentstack and clear the session.

Usage

csdx auth:logout

OR

csdx logout

Options

y, --yes: Exclude confirmation to logout

Examples

  • csdx auth:logout -y
  • csdx logout -y

Add Management Token

To perform content management tasks, we recommend using the management token.

Note: Before running this command, make sure you have generated a management token in your stack. 

The following command lets you add an existing management token from your Contentstack account and save it to the session for further use.

Usage

csdx auth:tokens:add --management

Options

  • -a, --alias=alias : Alias (name) you want to assign to the token
  • --management: Flag to set management token
  • -k, --stack-api-key=stack-api-key: API key of the stack where the token exists
  • --token=token: Value of the token
  • -y, --yes: Force token replace

Examples

  • To use options/parameters in a single line:
    csdx auth:tokens:add --management -a tokenname -k blt******** --token cs*********
  • To exclude confirmation when replacing the value of an existing management token:
    csdx auth:tokens:add --management -a tokenname -k blt******** --token cs********* -y

Add Delivery Token

For Bulk Publish commands, if you don’t want to use the management token, you can use the delivery token instead. However, you will not be able to execute import and export content commands by using the delivery token.

Note: Before running this command, make sure you have generated a delivery token in your stack.

Usage

csdx auth:tokens:add --delivery

Options

  • -a, --alias=alias : Alias (name) of your delivery token
  • --delivery: Flag to set delivery token
  • -e, --environment=environment: Name of the environment to which the delivery token belongs
  • -k, --stack-api-key=stack-api-key: API key of the stack where the token exists
  • --token=token: Value of the token
  • -y, --yes: Force token replace

Examples

  • To use options/parameters in a single line:
    csdx auth:tokens:add --delivery -a tokenname -k blt******** --token cs*********
  • To exclude confirmation when replacing the value of an existing delivery token:
    csdx auth:tokens:add --delivery -a tokenname -k blt******** --token cs********* -y

Delete Token

The auth:tokens:remove command lets you delete a management/ delivery token from your local CLI session.

Note: This command will not delete the management/ delivery token from the stack, it deletes the token from the local CLI session.

Usage

csdx auth:tokens:remove

Options

  • -a,--alias=alias: Alias (name) of the token to delete.
  • -i,--ignore: Ignores if token not present. Command.

Examples

  • csdx auth:tokens:remove -a mytoken
  • csdx auth:tokens:remove --alias=mytoken

List All Tokens

The auth:tokens command lists the existing tokens added to the session.

Usage

csdx auth:tokens

Options

  • -x,--extended: To show extra columns
  • --columns=columns: To display specific columns, separated by comma
  • --csv: Output is csv format.
  • --filter=filter: To filter the property by partial string matching, ex: name=foo
  • --no-header: To hide table’s header in output
  • --no-truncate: To not truncate output to fit screen
  • --output=csv|json|yaml: To display output in a particular format
  • --sort=sort: To sort the list, prepend '-' to sort in a descending order

Display Username of a Session

The csdx auth:whoami command returns the username (email address) of the user who is currently logged in to the session.

Usage

csdx auth:whoami

OR

csdx whoami

Additional Resources: Contentstack supports three regions: North America, Europe, and Azure North America. Refer to the configuration guide if you want to use a particular region, other than North America (NA).

Next Steps

Was this article helpful?
^