npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@contentstack/cli

v1.32.1

Published

Command-line tool (CLI) to interact with Contentstack

Downloads

11,778

Readme

@contentstack/cli

Use Contentstack Command-line Interface to command Contentstack for executing a set of operations from the terminal. To get started with CLI, refer to the CLI’s documentation

License

Usage

$ npm install -g @contentstack/cli
$ csdx COMMAND
running command...
$ csdx (--version|-v)
@contentstack/cli/1.32.1 linux-x64 node-v18.20.5
$ csdx --help [COMMAND]
USAGE
  $ csdx COMMAND
...

Commands

csdx audit

Perform audits and find possible errors in the exported Contentstack data

USAGE
  $ csdx audit [--report-path <value>] [--modules
    content-types|global-fields|entries|extensions|workflows|custom-roles...] [--columns <value> | ] [--sort <value>]
    [--filter <value>] [--csv | --no-truncate]

FLAGS
  --modules=<option>...  Provide the list of modules to be audited
                         <options: content-types|global-fields|entries|extensions|workflows|custom-roles>
  --report-path=<value>  Path to store the audit reports

TABLE FLAGS
  --columns=<value>  Show only the specified columns (comma-separated)
  --csv              The output is in the CSV format [alias: --output=csv]
  --filter=<value>   Filter property by partial string matching. For example: name=foo
  --no-truncate      The output is not truncated to fit the screen
  --sort=<value>     Property to sort by (prepend '-' for descending)

DESCRIPTION
  Perform audits and find possible errors in the exported Contentstack data

ALIASES
  $ csdx audit
  $ csdx cm:stacks:audit

EXAMPLES
  $ csdx audit

  $ csdx audit --report-path=<path>

  $ csdx audit --report-path=<path> --csv

  $ csdx audit --report-path=<path> --filter="name=<filter-value>"

  $ csdx audit --report-path=<path> --modules=content-types --filter="name="<filter-value>"

csdx audit:fix

Perform audits and fix possible errors in the exported Contentstack data.

USAGE
  $ csdx audit:fix [--report-path <value>] [--modules
    content-types|global-fields|entries|extensions|workflows|custom-roles...] [--copy-path <value> --copy-dir]
    [--fix-only reference|global_field|json:rte|json:extension|blocks|group|content_types...] [--columns <value> | ]
    [--sort <value>] [--filter <value>] [--csv | --no-truncate]

FLAGS
  --copy-dir              Create backup from the original data.
  --copy-path=<value>     Provide the path to backup the copied data
  --fix-only=<option>...  Provide the list of fix options
                          <options: reference|global_field|json:rte|json:extension|blocks|group|content_types>
  --modules=<option>...   Provide the list of modules to be audited
                          <options: content-types|global-fields|entries|extensions|workflows|custom-roles>
  --report-path=<value>   Path to store the audit reports

TABLE FLAGS
  --columns=<value>  Show only the specified columns (comma-separated)
  --csv              The output is in the CSV format [alias: --output=csv]
  --filter=<value>   Filter property by partial string matching. For example: name=foo
  --no-truncate      The output is not truncated to fit the screen
  --sort=<value>     Property to sort by (prepend '-' for descending)

DESCRIPTION
  Perform audits and fix possible errors in the exported Contentstack data.

ALIASES
  $ csdx audit:fix
  $ csdx cm:stacks:audit:fix

EXAMPLES
  $ csdx audit:fix --copy-dir

  $ csdx audit:fix --report-path=<path> --copy-dir

  $ csdx audit:fix --report-path=<path> --copy-dir --csv

  $ csdx audit:fix --fix-only=reference,global_field --copy-dir

  $ csdx audit:fix --report-path=<path> --filter="name=<filter-value>"

  $ csdx audit:fix --report-path=<path> --modules=content-types --filter="name="<filter-value>" --copy-dir --copy-path=<path>

csdx auth:login

User sessions login

USAGE
  $ csdx auth:login [-u <value> | --oauth] [-p <value> | ]

FLAGS
  -p, --password=<value>  Password of your Contentstack app.
  -u, --username=<value>  Email address of your Contentstack account.
      --oauth             Enables single sign-on (SSO) in Contentstack CLI.

DESCRIPTION
  User sessions login

ALIASES
  $ csdx login

EXAMPLES
  $ csdx auth:login

  $ csdx auth:login -u <username>

  $ csdx auth:login -u <username> -p <password>

  $ csdx auth:login --username <username>

  $ csdx auth:login --username <username> --password <password>

See code: @contentstack/cli-auth

csdx auth:logout

User session logout

USAGE
  $ csdx auth:logout [-y]

FLAGS
  -y, --yes  Force log out by skipping the confirmation.

DESCRIPTION
  User session logout

ALIASES
  $ csdx logout

EXAMPLES
  $ csdx auth:logout

  $ csdx auth:logout -y

  $ csdx auth:logout --yes

See code: @contentstack/cli-auth

csdx auth:tokens

Lists all existing tokens added to the session

USAGE
  $ csdx auth:tokens [--columns <value> | -x] [--filter <value>] [--no-header | [--csv | --no-truncate]]
    [--output csv|json|yaml |  | ] [--sort <value>]

FLAGS
  -x, --extended         show extra columns
      --columns=<value>  only show provided columns (comma-separated)
      --csv              output is csv format [alias: --output=csv]
      --filter=<value>   filter property by partial string matching, ex: name=foo
      --no-header        hide table header from output
      --no-truncate      do not truncate output to fit screen
      --output=<option>  output in a more machine friendly format
                         <options: csv|json|yaml>
      --sort=<value>     property to sort by (prepend '-' for descending)

DESCRIPTION
  Lists all existing tokens added to the session

ALIASES
  $ csdx tokens

EXAMPLES
  $ csdx auth:tokens

See code: @contentstack/cli-auth

csdx auth:tokens:add [-a <value>] [--delivery] [--management] [-e <value>] [-k <value>] [-y] [--token <value>]

Adds management/delivery tokens to your session to use it with other CLI commands

USAGE
  $ csdx auth:tokens:add [-a <value>] [--delivery] [--management] [-e <value>] [-k <value>] [-y] [--token <value>]

FLAGS
  -a, --alias=<value>          Alias (name) you want to assign to the token
  -d, --delivery               Set this flag to save delivery token
  -e, --environment=<value>    Environment name for delivery token
  -k, --stack-api-key=<value>  Stack API Key
  -m, --management             Set this flag to save management token
  -t, --token=<value>          Add the token name
  -y, --yes                    Use this flag to skip confirmation

DESCRIPTION
  Adds management/delivery tokens to your session to use it with other CLI commands

EXAMPLES
  $ csdx auth:tokens:add

  $ csdx auth:tokens:add -a <alias>

  $ csdx auth:tokens:add -k <stack api key>

  $ csdx auth:tokens:add --delivery

  $ csdx auth:tokens:add --management

  $ csdx auth:tokens:add -e <environment>

  $ csdx auth:tokens:add --token <token>

  $ csdx auth:tokens:add -a <alias> -k <stack api key> --management --token <management token>

  $ csdx auth:tokens:add -a <alias> -k <stack api key> --delivery -e <environment> --token <delivery token>

  $ csdx auth:tokens:add --alias <alias> --stack-api-key <stack api key> --management --token <management token>

  $ csdx auth:tokens:add --alias <alias> --stack-api-key <stack api key> --delivery -e <environment> --token <delivery token>

See code: @contentstack/cli-auth

csdx auth:tokens:remove

Removes selected tokens

USAGE
  $ csdx auth:tokens:remove [-a <value>] [-i]

FLAGS
  -a, --alias=<value>  Alias (name) of the token to delete.
  -i, --ignore         Ignores if the token is not present.

DESCRIPTION
  Removes selected tokens

EXAMPLES
  $ csdx auth:tokens:remove

  $ csdx auth:tokens:remove -a <alias>

See code: @contentstack/cli-auth

csdx auth:whoami

Display current users email address

USAGE
  $ csdx auth:whoami

DESCRIPTION
  Display current users email address

ALIASES
  $ csdx whoami

EXAMPLES
  $ csdx auth:whoami

See code: @contentstack/cli-auth

csdx cm:assets:publish [-a <value>] [--retry-failed <value>] [-e <value>] [--folder-uid <value>] [--bulk-publish <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>] [--delivery-token <value>] [--source-env <value>]

Publish assets to the specified environments

USAGE
  $ csdx cm:assets:publish [-a <value>] [--retry-failed <value>] [-e <value>] [--folder-uid <value>] [--bulk-publish
    <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>] [--delivery-token <value>] [--source-env <value>]

FLAGS
  -B, --branch=<value>           [default: main] The name of the branch where you want to perform the bulk publish
                                 operation. If you don’t mention the branch name, then by default the assets from the
                                 main branch will be published.
  -a, --alias=<value>            Alias (name) for the management token. You must use either the --alias flag or the
                                 --stack-api-key flag.
  -c, --config=<value>           (optional) The path of the optional configuration JSON file containing all the options
                                 for a single run. Refer to the configure command to create a configuration file.
  -e, --environments=<value>...  The name of the environment on which entries will be published. In case of multiple
                                 environments, specify their names separated by spaces.
  -k, --stack-api-key=<value>    API key of the source stack. You must use either the --stack-api-key flag or the
                                 --alias flag.
  -l, --locales=<value>...       Locales in which assets will be published, e.g., en-us. In the case of multiple
                                 locales, specify the codes separated by spaces.
  -y, --yes                      Set it to true to process the command with the current configuration.
      --api-version=<value>      API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>     [default: true] Set this flag to use Contentstack’s Bulk Publish APIs. It is true, by
                                 default.
      --delivery-token=<value>   The delivery token of the source environment.
      --folder-uid=<value>       (optional) The UID of the Assets’ folder from which the assets need to be published.
                                 The default value is cs_root.
      --retry-failed=<value>     Use this option to retry publishing the failed assets from the logfile. Specify the
                                 name of the logfile that lists failed publish calls. If this option is used, it will
                                 override all other flags.
      --source-env=<value>       Source environment

DESCRIPTION
  Publish assets to the specified environments
  The assets command is used to publish assets from the specified stack, to the specified environments

  Note: Environment(s) and Locale(s) are required to execute the command successfully
  But, if retryFailed flag is set, then only a logfile is required


ALIASES
  $ csdx cm:bulk-publish:assets

EXAMPLES
  General Usage

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`

  $ csdx cm:assets:publish --config [PATH TO CONFIG FILE]

  $ csdx cm:assets:publish -c [PATH TO CONFIG FILE]



  Using --retry-failed flag

  $ csdx cm:assets:publish --retry-failed [LOG FILE NAME]



  Using --branch flag

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]



  Using --source-env

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]



  Using --stack-api-key flag

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --stack-api-key [STACK API KEY]

See code: @contentstack/cli-cm-bulk-publish

csdx cm:assets:unpublish

Unpublish assets from given environment

USAGE
  $ csdx cm:assets:unpublish [-a <value>] [-k <value>] [-e <value>] [-c <value>] [-y] [--locale <value>] [--branch
    <value>] [--retry-failed <value>] [--bulk-unpublish <value>] [--api-version <value>] [--delivery-token <value>]

FLAGS
  -a, --alias=<value>           Alias (name) of the management token. You must use either the --alias flag or the
                                --stack-api-key flag.
  -c, --config=<value>          (optional) Path of an optional configuration JSON file containing all the options for a
                                single run. Refer to the configure command to create a configuration file.
  -e, --environment=<value>     The name of the environment from where entries/assets need to be unpublished.
  -k, --stack-api-key=<value>   API key of the source stack. You must use either the --stack-api-key flag or the --alias
                                flag.
  -y, --yes                     Set it to true to process the command with the current configuration.
      --api-version=<value>     API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --branch=<value>          [default: main] The name of the branch where you want to perform the bulk unpublish
                                operation. If you don’t mention the branch name, then by default the content from the
                                main branch will be unpublished.
      --bulk-unpublish=<value>  [default: true] Set this flag to use Contentstack’s Bulk Publish APIs. It is true, by
                                default.
      --delivery-token=<value>  The delivery token of the source environment.
      --locale=<value>          Locale from which entries/assets will be unpublished, e.g., en-us.
      --retry-failed=<value>    (optional) Use this option to retry unpublishing the failed entries from the logfile.
                                Specify the name of the logfile that lists failed unpublish calls. If this option is
                                used, it will override all other flags.

DESCRIPTION
  Unpublish assets from given environment
  The unpublish command is used for unpublishing assets from the given environment

  Note: Environment (Source Environment) and Locale are required to execute the command successfully
  But, if retry-failed flag is set, then only a logfile is required

EXAMPLES
  General Usage

  $ csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:bulk-publish:configure --alias [ALIAS]`

  $ csdx cm:assets:unpublish --config [PATH TO CONFIG FILE]

  $ csdx cm:assets:unpublish -c [PATH TO CONFIG FILE]



  Using --retry-failed flag

  $ csdx cm:assets:unpublish --retry-failed [LOG FILE NAME]



  Using --branch flag

  $ csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]



  Using --stack-api-key flag

  $ csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]

See code: @contentstack/cli-cm-bulk-publish

csdx cm:bootstrap

Bootstrap contentstack apps

USAGE
  $ csdx cm:bootstrap [--app-name <value>] [--project-dir <value>] [-k <value> | --org <value> | -n <value>] [-y
    <value>] [-a <value>]

FLAGS
  -a, --alias=<value>          Alias of the management token
  -k, --stack-api-key=<value>  Provide stack API key to seed content
  -n, --stack-name=<value>     Name of the new stack that will be created.
  -y, --yes=<value>            [Optional] Skip stack confirmation
      --app-name=<value>       App name, reactjs-starter, nextjs-starter, gatsby-starter, angular-starter, nuxt-starter,
                               vue-starter, stencil-starter
      --org=<value>            Provide organization UID to create a new stack
      --project-dir=<value>    Directory to setup the project. If directory name has a space then provide the path as a
                               string or escap the space using back slash eg: "../../test space" or ../../test\ space

DESCRIPTION
  Bootstrap contentstack apps

EXAMPLES
  $ csdx cm:bootstrap

  $ csdx cm:bootstrap --project-dir <path/to/setup/the/app>

  $ csdx cm:bootstrap --app-name "reactjs-starter" --project-dir <path/to/setup/the/app>

  $ csdx cm:bootstrap --app-name "reactjs-starter" --project-dir <path/to/setup/the/app> --stack-api-key "stack-api-key"

  $ csdx cm:bootstrap --app-name "reactjs-starter" --project-dir <path/to/setup/the/app> --org "your-org-uid" --stack-name "stack-name"

See code: @contentstack/cli-cm-bootstrap

csdx cm:branches

List the branches

USAGE
  $ csdx cm:branches

FLAGS
  -k, --stack-api-key=<value>  Stack API key
      --verbose                Verbose, display information in detailed format.

DESCRIPTION
  List the branches

EXAMPLES
  $ csdx cm:branches

  $ csdx cm:branches --verbose

  $ csdx cm:branches -k <stack api key>

See code: @contentstack/cli-cm-branches

csdx cm:branches:create

Create a new branch

USAGE
  $ csdx cm:branches:create
  $ csdx cm:branches:create [--source <value>] [--uid <value>] [-k <value>]
  $ csdx cm:branches:create [--source <value>] [--uid <value>] [--stack-api-key <value>]

FLAGS
  -k, --stack-api-key=<value>  Stack API key
      --source=<value>         Source branch from which a new branch is to be created.
      --uid=<value>            Branch UID (unique name) to be created.

DESCRIPTION
  Create a new branch

EXAMPLES
  $ csdx cm:branches:create

  $ csdx cm:branches:create --source main -uid new_branch -k bltxxxxxxxx

  $ csdx cm:branches:create --source main --uid new_branch --stack-api-key bltxxxxxxxx

See code: @contentstack/cli-cm-branches

csdx cm:branches:delete [-uid <value>] [-k <value>]

Delete a branch

USAGE
  $ csdx cm:branches:delete [-uid <value>] [-k <value>]
  $ csdx cm:branches:delete [--uid <value>] [--stack-api-key <value>]

FLAGS
  -k, --stack-api-key=<value>  Stack API key
  -y, --yes                    Force the deletion of the branch by skipping the confirmation
      --uid=<value>            Branch UID to be deleted

DESCRIPTION
  Delete a branch

EXAMPLES
  $ csdx cm:branches:delete

  $ csdx cm:branches:delete --uid main -k bltxxxxxxxx

  $ csdx cm:branches:delete --uid main --stack-api-key bltxxxxxxxx

  $ csdx cm:branches:delete --uid main --stack-api-key bltxxxxxxxx --yes

See code: @contentstack/cli-cm-branches

csdx cm:branches:diff [--base-branch <value>] [--compare-branch <value>] [-k <value>][--module <value>]

Differences between two branches

USAGE
  $ csdx cm:branches:diff [--base-branch <value>] [--compare-branch <value>] [-k <value>][--module <value>]

FLAGS
  -k, --stack-api-key=<value>   [optional] Provide the stack API key to show the difference between branches.
      --base-branch=<value>     [optional] Base branch (Target branch).
      --compare-branch=<value>  [optional] Compare branch (Source branch).
      --format=<option>         [default: compact-text] [default: compact-text] [optional] Type of flags to show the
                                difference between two branches. <options: compact-text, detailed-text>
                                <options: compact-text|detailed-text>
      --module=<option>         [optional] Module. <options: content-types, global-fields, all>
                                <options: content-types|global-fields|all>

DESCRIPTION
  Differences between two branches

EXAMPLES
  $ csdx cm:branches:diff

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx"

  $ csdx cm:branches:diff --compare-branch "develop"

  $ csdx cm:branches:diff --compare-branch "develop" --stack-api-key "bltxxxxxxxx"

  $ csdx cm:branches:diff --compare-branch "develop" --module "content-types"

  $ csdx cm:branches:diff --module "content-types" --format "detailed-text"

  $ csdx cm:branches:diff --compare-branch "develop" --format "detailed-text"

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx" --base-branch "main"

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx" --base-branch "main" --compare-branch "develop"

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx" --base-branch "main" --module "content-types"

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx" --base-branch "main" --compare-branch "develop" --module "content-types"

  $ csdx cm:branches:diff --stack-api-key "bltxxxxxxxx" --base-branch "main" --compare-branch "develop" --module "content-types" --format "detailed-text"

See code: @contentstack/cli-cm-branches

csdx cm:branches:merge [-k <value>][--compare-branch <value>] [--no-revert] [--export-summary-path <value>] [--use-merge-summary <value>] [--comment <value>] [--base-branch <value>]

Merge changes from a branch

USAGE
  $ csdx cm:branches:merge [-k <value>][--compare-branch <value>] [--no-revert] [--export-summary-path <value>]
    [--use-merge-summary <value>] [--comment <value>] [--base-branch <value>]

FLAGS
  -k, --stack-api-key=<value>        [optional] Provide stack API key to show the difference between the branches.
      --base-branch=<value>          [optional] Base branch (Target branch).
      --comment=<value>              [optional] Pass a comment.
      --compare-branch=<value>       [optional] Compare branch (Source branch).
      --export-summary-path=<value>  [optional] Export summary file path.
      --no-revert                    [optional] If passed, will not create the new revert branch.
      --use-merge-summary=<value>    [optional] Path of merge summary file.

DESCRIPTION
  Merge changes from a branch

EXAMPLES
  $ csdx cm:branches:merge --stack-api-key bltxxxxxxxx --compare-branch feature-branch

  $ csdx cm:branches:merge --stack-api-key bltxxxxxxxx --comment "merge comment"

  $ csdx cm:branches:merge -k bltxxxxxxxx --base-branch base-branch

  $ csdx cm:branches:merge --export-summary-path file/path

  $ csdx cm:branches:merge --use-merge-summary file-path

  $ csdx cm:branches:merge -k bltxxxxxxxx --no-revert

  $ csdx cm:branches:merge -k bltxxxxxxxx --compare-branch feature-branch --no-revert

See code: @contentstack/cli-cm-branches

csdx cm:bulk-publish

Bulk Publish script for managing entries and assets

USAGE
  $ csdx cm:bulk-publish

DESCRIPTION
  Bulk Publish script for managing entries and assets

See code: @contentstack/cli-cm-bulk-publish

csdx cm:entries:update-and-publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--content-types <value>] [-t <value>] [-e <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>]

Add fields from updated content types to their respective entries

USAGE
  $ csdx cm:bulk-publish:add-fields cm:entries:update-and-publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>]
    [--content-types <value>] [-t <value>] [-e <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>]

FLAGS
  -B, --branch=<value>            [default: main] The name of the branch where you want to perform the bulk publish
                                  operation. If you don’t mention the branch name, then by default the content from the
                                  main branch will be published.
  -a, --alias=<value>             Alias (name) of the management token. You must use either the --alias flag or the
                                  --stack-api-key flag.
  -c, --config=<value>            (optional) The path of the optional configuration JSON file containing all the options
                                  for a single run. Refer to the configure command to create a configuration file.
  -e, --environments=<value>...   The name of the environment on which entries will be published. In case of multiple
                                  environments, specify their names separated by spaces.
  -k, --stack-api-key=<value>     API key of the source stack. You must use either the --stack-api-key flag or the
                                  --alias flag.
  -l, --locales=<value>...        Locales in which entries will be published, e.g., en-us. In the case of multiple
                                  locales, specify the codes separated by spaces.
  -t, --contentTypes=<value>...   The Contenttypes from which entries will be published.
  -y, --yes                       Set it to true to process the command with the current configuration.
      --api-version=<value>       API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>      [default: true] Set this flag to use Contentstack’s Bulk Publish APIs. It is true, by
                                  default.
      --content-types=<value>...  The UID of the content type ID whose entries you want to publish in bulk. In case of
                                  multiple content types, specify their IDs separated by spaces.
      --force                     Update and publish all entries even if no fields have been added.
      --retry-failed=<value>      Use this option to retry publishing the failed entries from the logfile. Specify the
                                  name of the logfile that lists failed publish calls. If this option is used, it will
                                  override all other flags.

DESCRIPTION
  Add fields from updated content types to their respective entries
  The update-and-publish command is used to update existing entries with the updated schema of the respective content
  type

  Note: Content types, Environments and Locales are required to execute the command successfully
  But, if retry-failed flag is set, then only a logfile is required


ALIASES
  $ csdx cm:bulk-publish:add-fields

EXAMPLES
  General Usage

  $ csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`

  $ csdx cm:entries:update-and-publish --config [PATH TO CONFIG FILE]

  $ csdx cm:entries:update-and-publish -c [PATH TO CONFIG FILE]



  Using --retry-failed

  $ csdx cm:entries:update-and-publish --retry-failed [LOG FILE NAME]



  Using --branch

  $ csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]



  Using --stack-api-key

  $ csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY]

csdx cm:assets:publish [-a <value>] [--retry-failed <value>] [-e <value>] [--folder-uid <value>] [--bulk-publish <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>] [--delivery-token <value>] [--source-env <value>]

Publish assets to the specified environments

USAGE
  $ csdx cm:bulk-publish:assets cm:assets:publish [-a <value>] [--retry-failed <value>] [-e <value>] [--folder-uid <value>]
    [--bulk-publish <value>] [-c <value>] [-y] [--locales <value>] [--branch <value>] [--delivery-token <value>]
    [--source-env <value>]

FLAGS
  -B, --branch=<value>           [default: main] The name of the branch where you want to perform the bulk publish
                                 operation. If you don’t mention the branch name, then by default the assets from the
                                 main branch will be published.
  -a, --alias=<value>            Alias (name) for the management token. You must use either the --alias flag or the
                                 --stack-api-key flag.
  -c, --config=<value>           (optional) The path of the optional configuration JSON file containing all the options
                                 for a single run. Refer to the configure command to create a configuration file.
  -e, --environments=<value>...  The name of the environment on which entries will be published. In case of multiple
                                 environments, specify their names separated by spaces.
  -k, --stack-api-key=<value>    API key of the source stack. You must use either the --stack-api-key flag or the
                                 --alias flag.
  -l, --locales=<value>...       Locales in which assets will be published, e.g., en-us. In the case of multiple
                                 locales, specify the codes separated by spaces.
  -y, --yes                      Set it to true to process the command with the current configuration.
      --api-version=<value>      API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>     [default: true] Set this flag to use Contentstack’s Bulk Publish APIs. It is true, by
                                 default.
      --delivery-token=<value>   The delivery token of the source environment.
      --folder-uid=<value>       (optional) The UID of the Assets’ folder from which the assets need to be published.
                                 The default value is cs_root.
      --retry-failed=<value>     Use this option to retry publishing the failed assets from the logfile. Specify the
                                 name of the logfile that lists failed publish calls. If this option is used, it will
                                 override all other flags.
      --source-env=<value>       Source environment

DESCRIPTION
  Publish assets to the specified environments
  The assets command is used to publish assets from the specified stack, to the specified environments

  Note: Environment(s) and Locale(s) are required to execute the command successfully
  But, if retryFailed flag is set, then only a logfile is required


ALIASES
  $ csdx cm:bulk-publish:assets

EXAMPLES
  General Usage

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`

  $ csdx cm:assets:publish --config [PATH TO CONFIG FILE]

  $ csdx cm:assets:publish -c [PATH TO CONFIG FILE]



  Using --retry-failed flag

  $ csdx cm:assets:publish --retry-failed [LOG FILE NAME]



  Using --branch flag

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]



  Using --source-env

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]



  Using --stack-api-key flag

  $ csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --stack-api-key [STACK API KEY]

csdx cm:bulk-publish:clear

Clear the log folder

USAGE
  $ csdx cm:bulk-publish:clear [--log-files-count] [-y]

FLAGS
  -y, --yes              Delete all files without asking for confirmation
      --log-files-count  List number of log files

DESCRIPTION
  Clear the log folder

ALIASES
  $ csdx cm:bulk-publish:clear

EXAMPLES
  $ csdx cm:stacks:publish-clear-logs

  $ csdx cm:stacks:publish-clear-logs --log-files-count

  $ csdx cm:stacks:publish-clear-logs --yes

  $ csdx cm:stacks:publish-clear-logs -y

csdx cm:bulk-publish:configure

The configure command is used to generate a configuration file for publish scripts.

USAGE
  $ csdx cm:bulk-publish:configure [-a <value>] [-k <value>]

FLAGS
  -a, --alias=<value>          Name (alias) of the management token you want to use. You must use either the --alias
                               flag or the --stack-api-key flag.
  -k, --stack-api-key=<value>  API key of the source stack. You must use either the --stack-api-key flag or the --alias
                               flag.

DESCRIPTION
  The configure command is used to generate a configuration file for publish scripts.

ALIASES
  $ csdx cm:bulk-publish:configure

EXAMPLES
  $ csdx cm:stacks:publish-configure

  $ csdx cm:stacks:publish-configure -a <management_token_alias>

  $ csdx cm:stacks:publish-configure --alias <management_token_alias>

  $ csdx cm:stacks:publish-configure --stack-api-key <stack_api_key>

csdx cm:bulk-publish:cross-publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--content-type <value>] [--locales <value>] [--source-env <value>] [--environments <value>] [--delivery-token <value>] [-c <value>] [-y] [--branch <value>] [--onlyAssets] [--onlyEntries] [--include-variants]

Publish entries and assets from one environment to other environments

USAGE
  $ csdx cm:bulk-publish:cross-publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--content-type <value>]
    [--locales <value>] [--source-env <value>] [--environments <value>] [--delivery-token <value>] [-c <value>] [-y]
    [--branch <value>] [--onlyAssets] [--onlyEntries] [--include-variants]

FLAGS
  -B, --branch=<value>           [default: main] Specify the branch to fetch the content (by default the main branch is
                                 selected)
  -a, --alias=<value>            Alias(name) for the management token
  -c, --config=<value>           Path to the config file
  -k, --stack-api-key=<value>    Stack API key to be used
  -y, --yes                      Agree to process the command with the current configuration
      --api-version=<value>      API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>     [default: true] Set this flag to use Contentstack’s Bulk Publish APIs. It is true, by
                                 default.
      --content-type=<value>...  The Contenttypes from which entries will be published
      --delivery-token=<value>   The delivery token of the source environment.
      --environments=<value>...  Destination Environments
      --include-variants         Include Variants flag will publish all associated variant entries.
      --locales=<value>          Source locale
      --onlyAssets               Unpublish only assets
      --onlyEntries              Unpublish only entries
      --retry-failed=<value>     (optional) Retry publishing failed entries from the logfile (this flag overrides all
                                 other flags)
      --source-env=<value>       Source Env

DESCRIPTION
  Publish entries and assets from one environment to other environments
  The cross-publish command is used to publish entries and assets from one environment to other environments

  Note: Content Type, Environment, Destination Environment(s) and Locale are required to execute the command
  successfully
  But, if retryFailed flag is set, then only a logfile is required


EXAMPLES
  General Usage

  $ csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] -a [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:bulk-publish:configure -a [ALIAS]`

  $ csdx cm:bulk-publish:cross-publish --config [PATH TO CONFIG FILE]

  $ csdx cm:bulk-publish:cross-publish -c [PATH TO CONFIG FILE]



  Using --retry-failed flag

  $ csdx cm:bulk-publish:cross-publish --retry-failed [LOG FILE NAME]

  $ csdx cm:bulk-publish:cross-publish -r [LOG FILE NAME]



  Using --branch flag

  $ csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] -a [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]



  Using --stack-api-key flag

  $ csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]



  Using --include-variants flag

  $ csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN] [--include-variants]

See code: @contentstack/cli-cm-bulk-publish

csdx cm:entries:publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--publish-all-content-types] [--content-types <value>] [--locales <value>] [-e <value>] [-c <value>] [-y] [--branch <value>] [--delivery-token <value>] [--source-env <value>] [--entry-uid <value>] [--include-variants]

Publish entries from multiple contenttypes to multiple environments and locales

USAGE
  $ csdx cm:bulk-publish:entries cm:entries:publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>]
    [--publish-all-content-types] [--content-types <value>] [--locales <value>] [-e <value>] [-c <value>] [-y] [--branch
    <value>] [--delivery-token <value>] [--source-env <value>] [--entry-uid <value>] [--include-variants]

FLAGS
  -B, --branch=<value>             [default: main] The name of the branch where you want to perform the bulk publish
                                   operation. If you don’t mention the branch name, then by default the content from
                                   main branch will be published.
  -a, --alias=<value>              Alias (name) of the management token. You must use either the --alias flag or the
                                   --stack-api-key flag.
  -c, --config=<value>             (optional) The path of the optional configuration JSON file containing all the
                                   options for a single run. Refer to the configure command to create a configuration
                                   file.
  -e, --environments=<value>...    The name of the environment on which entries will be published. In case of multiple
                                   environments, specify their names separated by spaces.
  -k, --stack-api-key=<value>      API key of the source stack. You must use either the --stack-api-key flag or the
                                   --alias flag.
  -l, --locales=<value>...         Locales in which entries will be published, e.g., en-us. In the case of multiple
                                   locales, specify the codes separated by spaces.
  -y, --yes                        Set it to true to process the command with the current configuration.
      --api-version=<value>        API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>       [default: true] Set this flag to use Contentstack's Bulk Publish APIs. This flag is
                                   set to true, by default.
      --content-types=<value>...   The UID of the content type(s) whose entries you want to publish in bulk. In case of
                                   multiple content types, specify the IDs separated by spaces.
      --delivery-token=<value>     The delivery token of the source environment.
      --entry-uid=<value>          Entry Uid for publish all associated variant entries.
      --include-variants           Include Variants flag will publish all associated variant entries with base entry.
      --publish-all-content-types  (optional) Set it to true to bulk publish entries from all content types. If the
                                   --content-types option is already used, then you cannot use this option.
      --retry-failed=<value>       (optional) Use this option to retry publishing the failed entries/ assets from the
                                   logfile. Specify the name of the logfile that lists failed publish calls. If this
                                   option is used, it will override all other flags.
      --source-env=<value>         Source environment

DESCRIPTION
  Publish entries from multiple contenttypes to multiple environments and locales
  The publish command is used to publish entries from the specified content types, to the
  specified environments and locales

  Note: Content Types, Environments and Locales are required to execute the command successfully
  But, if retry-failed flag is set, then only a logfile is required


ALIASES
  $ csdx cm:bulk-publish:entries

EXAMPLES
  General Usage

  $ csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`

  $ csdx cm:entries:publish --config [PATH TO CONFIG FILE]

  $ csdx cm:entries:publish -c [PATH TO CONFIG FILE]



  Using --retry-failed

  $ csdx cm:entries:publish --retry-failed [LOG FILE NAME]

  $ csdx cm:entries:publish -r [LOG FILE NAME]



  Using --branch

  $ csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]



  Using --source-env

  $ csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]



  Using --stack-api-key

  $ csdx cm:entries:publish -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]



  Using --include-variants

  $ csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN] [--include-variants]



  Using --entry-uid and --include-variants

  $ csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN] --entry-uid [ENTRY UID] [--include-variants]

csdx cm:entries:publish-modified [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--source-env <value>] [--content-types <value>] [--locales <value>] [-e <value>] [-c <value>] [-y] [--branch <value>]

Publish edited entries from a specified content type to the given locales and environments

USAGE
  $ csdx cm:bulk-publish:entry-edits cm:entries:publish-modified [-a <value>] [--retry-failed <value>] [--bulk-publish <value>]
    [--source-env <value>] [--content-types <value>] [--locales <value>] [-e <value>] [-c <value>] [-y] [--branch
    <value>]

FLAGS
  -B, --branch=<value>            [default: main] The name of the branch where you want to perform the bulk publish
                                  operation. If you don't mention the branch name, then by default the entries from main
                                  branch will be published.
  -a, --alias=<value>             Alias (name) of the management token. You must use either the --alias flag or the
                                  --stack-api-key flag.
  -c, --config=<value>            (optional) The path of the optional configuration JSON file containing all the options
                                  for a single run. Refer to the configure command to create a configuration file.
  -e, --environments=<value>...   The name of the environment(s) on which the entries will be published. In case of
                                  multiple environments, specify their names separated by spaces.
  -k, --stack-api-key=<value>     API key of the source stack. You must use either the --stack-api-key flag or the
                                  --alias flag.
  -l, --locales=<value>...        Locales in which entries will be published, e.g., en-us. In the case of multiple
                                  locales, specify the codes separated by spaces.
  -y, --yes                       Set it to true to process the command with the current configuration.
      --api-version=<value>       API version to be used. Values [Default: 3, Nested Reference Publishing: 3.2].
      --bulk-publish=<value>      [default: true] Set this flag to use Contentstack's Bulk Publish APIs. It is true, by
                                  default.
      --content-types=<value>...  The UID of the content type(s) whose edited entries you want to publish in bulk. In
                                  case of multiple content types, specify the IDs separated by spaces.
      --retry-failed=<value>      (optional) Use this option to retry publishing the failed entries/assets from the
                                  logfile. Specify the name of the logfile that lists failed publish calls. If this
                                  option is used, it will override all other flags
      --source-env=<value>        The name of the source environment where the entries were initially published.

DESCRIPTION
  Publish edited entries from a specified content type to the given locales and environments
  The publish-modified command is used to publish entries from the specified content types, to the
  specified environments and locales

  Note: Content type(s), Source Environment, Destination Environment(s) and Locale(s) are required to execute the
  command successfully
  But, if retry-failed flag is set, then only a logfile is required


ALIASES
  $ csdx cm:bulk-publish:entry-edits

EXAMPLES
  General Usage

  $ csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS]



  Using --config or -c flag

  Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`

  $ csdx cm:entries:publish-modified --config [PATH TO CONFIG FILE]

  $ csdx cm:entries:publish-modified -c [PATH TO CONFIG FILE]



  Using --retry-failed

  $ csdx cm:entries:publish-modified --retry-failed [LOG FILE NAME]

  $ csdx cm:entries:publish-modified -r [LOG FILE NAME]



  Using --branch

  $ csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]



  Using --stack-api-key

  $ csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -stack-api-key [STACK API KEY]

csdx cm:entries:publish-non-localized-fields [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--source-env <value>] [--content-types <value>] [-e <value>] [-c <value>] [-y] [--branch <value>]

Publish non-localized fields for the given content types, from a particular source environment to the specified environments

USAGE
  $ csdx cm:bulk-publish:nonlocalized-field-changes cm:entries:publish-non-localized-fields [-a <value>] [--retry-failed <value>]
    [--bulk-publish <value>] [--source-env <value>] [--content-types <value>] [-e <value>] [-c <value>] [-y] [--branch
    <value>]

FLAGS
  -B, --branch=<value>            [default: main] The name of the branch where you want to perform the bulk publish
                                  operation. If you don’t mention the branch name, then by default the content from the
                                  main branch will be published.
  -a, --alias=<value>             Alias (name) of the management token. You must use either the --alias flag or the
                                  --stack-api-key flag.
  -c, --config=<value>            (optional) The path of the optional configuration JSON file containing all the options
                                  for a single run. Refer to the configure command to create a configuration file.
  -e, --environments=<value>...   The name of the environment on which ent