This is a plugin for Contentstack's CLI. It allows you to quickly retrieve information about Content Types in a Stack.
-
The
csdx content-type:auditcommand lists recent changes to a content type and by whom. This is useful when needing to find Content Type versions to compare withcsdx content-type:compare. Audit logs are stored for 90 days within Contentstack. -
The
csdx content-type:compare-remotecommand allows you to compare the same Content Type between two Stacks. This is useful when you have cloned or duplicated a Stack, and want to check what has changed in a child Stack. -
The
csdx content-type:comparecommand allows you to compare multiple versions of a Content Type within a single Stack. This is useful when you are working in a development team, and want to compare changes made by colleagues. -
The
csdx content-type:listcommand is useful when you want to see all the Content Types within a Stack. The Content Type's Display Name, UID, Last Modified Date, and Version number is shown. The list can be ordered bytitleormodifieddate. When developing against Contentstack, Content Type UIDs are needed when requesting data. -
The
csdx content-type:detailscommand provides useful information, such as:- Field UID and Data Types
- Referenced Content Types
- Options such as required, multiple, and unique
- The full path to a field, useful when using the include reference endpoint or filtering operations, such as the equality endpoint.
-
The
csdx content-type:diagramcommand creates a visual representation of a Stack's content model.- The ouput format can be either
svgordot. - The diagram's orientation can be changed, using the
-d landscape|portraitflag. - GraphViz is the layout engine. You can export the generated DOT Language source, using the
-t dotflag.
- The ouput format can be either
$ csdx plugins:install contentstack-cli-content-typeThis plugin requires you to be authenticated using csdx auth:login.
Several commands, such as csdx content-type:compare support token aliases as input.
These token aliases should be created using csdx auth:tokens:add.
The commands only use the Stack API Key. The management token is ignored. They are provided as a convenience, so the Stack API Keys do not have to be re-typed.
The csdx content-type:details command requires a wide terminal window. If the path column is not needed, you can hide it:
$ csdx content-type:details -a "management token" -c "content type" --no-pathcsdx content-type:auditcsdx content-type:comparecsdx content-type:compare-remotecsdx content-type:detailscsdx content-type:diagramcsdx content-type:list
Display recent changes to a Content Type
USAGE
$ csdx content-type:audit -c <value> [-s <value> | -a <value> | -a <value>] [-k <value> | | ]
FLAGS
-a, --alias=<value> Alias of the management token
-a, --token-alias=<value> Management token alias
-c, --content-type=<value> (required) Content Type UID
-k, --stack-api-key=<value> Stack API Key
-s, --stack=<value> Stack UID
DESCRIPTION
Display recent changes to a Content Type
EXAMPLES
$ csdx content-type:audit --stack-api-key "xxxxxxxxxxxxxxxxxxx" --content-type "home_page"
$ csdx content-type:audit --alias "management token" --content-type "home_page"
See code: src/commands/content-type/audit.ts
Compare two Content Type versions
USAGE
$ csdx content-type:compare -c <value> [-s <value> | -a <value>] [-k <value> | ] [-a <value>] [-l <value> -r <value>]
FLAGS
-a, --alias=<value> Alias of the management token
-a, --token-alias=<value> Management token alias
-c, --content-type=<value> (required) Content Type UID
-k, --stack-api-key=<value> Stack API Key
-l, --left=<value> Content Type version, i.e. prev version
-r, --right=<value> Content Type version, i.e. later version
-s, --stack=<value> Stack UID
DESCRIPTION
Compare two Content Type versions
EXAMPLES
$ csdx content-type:compare --stack-api-key "xxxxxxxxxxxxxxxxxxx" --content-type "home_page"
$ csdx content-type:compare --stack-api-key "xxxxxxxxxxxxxxxxxxx" --content-type "home_page" --left # --right #
$ csdx content-type:compare --alias "management token" --content-type "home_page" --left # --right #
See code: src/commands/content-type/compare.ts
compare two Content Types on different Stacks
USAGE
$ csdx content-type:compare-remote (-o <value> -r <value>) -c <value>
FLAGS
-c, --content-type=<value> (required) Content Type UID
-o, --origin-stack=<value> (required) Origin Stack API Key
-r, --remote-stack=<value> (required) Remote Stack API Key
DESCRIPTION
compare two Content Types on different Stacks
EXAMPLES
$ csdx content-type:compare-remote --origin-stack "xxxxxxxxxxxxxxxxxxx" --remote-stack "xxxxxxxxxxxxxxxxxxx" -content-type "home_page"
See code: src/commands/content-type/compare-remote.ts
Display Content Type details
USAGE
$ csdx content-type:details -c <value> [-s <value> | -a <value>] [-k <value> | ] [-a <value>] [-p]
FLAGS
-a, --alias=<value> Alias of the management token
-a, --token-alias=<value> Management token alias
-c, --content-type=<value> (required) Content Type UID
-k, --stack-api-key=<value> Stack API Key
-p, --[no-]path show path column
-s, --stack=<value> Stack UID
DESCRIPTION
Display Content Type details
EXAMPLES
$ csdx content-type:details --stack-api-key "xxxxxxxxxxxxxxxxxxx" --content-type "home_page"
$ csdx content-type:details --alias "management token" --content-type "home_page"
$ csdx content-type:details --alias "management token" --content-type "home_page" --no-path
See code: src/commands/content-type/details.ts
Create a visual diagram of a Stack's Content Types
USAGE
$ csdx content-type:diagram -o <value> -d portrait|landscape -t svg|dot [-s <value> | -a <value> | -a <value>] [-k
<value> | | ]
FLAGS
-a, --alias=<value> Alias of the management token
-a, --token-alias=<value> Management token alias
-d, --direction=<option> (required) [default: portrait] graph orientation
<options: portrait|landscape>
-k, --stack-api-key=<value> Stack API Key
-o, --output=<value> (required) full path to output
-s, --stack=<value> Stack UID
-t, --type=<option> (required) [default: svg] graph output file type
<options: svg|dot>
DESCRIPTION
Create a visual diagram of a Stack's Content Types
EXAMPLES
$ csdx content-type:diagram --stack-api-key "xxxxxxxxxxxxxxxxxxx" --output "content-model.svg"
$ csdx content-type:diagram --alias "management token" --output "content-model.svg"
$ csdx content-type:diagram --alias "management token" --output "content-model.svg" --direction "landscape"
$ csdx content-type:diagram --alias "management token" --output "content-model.dot" --type "dot"
See code: src/commands/content-type/diagram.ts
List all Content Types in a Stack
USAGE
$ csdx content-type:list [-s <value> | -a <value> | -a <value>] [-k <value> | | ] [-o title|modified]
FLAGS
-a, --alias=<value> Alias of the management token
-a, --token-alias=<value> Management token alias
-k, --stack-api-key=<value> Stack API Key
-o, --order=<option> [default: title] order by column
<options: title|modified>
-s, --stack=<value> Stack UID
DESCRIPTION
List all Content Types in a Stack
EXAMPLES
$ csdx content-type:list --stack-api-key "xxxxxxxxxxxxxxxxxxx"
$ csdx content-type:list --alias "management token"
$ csdx content-type:list --alias "management token" --order modified
See code: src/commands/content-type/list.ts