c8y(1)

πŸ“¦ version 2.56.1, in nixpkgs unstable

πŸ’… c8y(1) β€” the c8y manual, but make it make sense

okay so bestie, you opened the c8y(1) manual page and honestly? it's giving "wall of flags." but don't panic, because we're gonna walk through it together and by the end you'll be creating users like it's nothing. periodt. ✨


🌸 NAME

c8y-users-create β€” Create user

like, literally just make a user. that's the whole vibe.


πŸ¦‹ SYNOPSIS

c8y users create [flags]

πŸŽ€ DESCRIPTION

Create a new user so that they can access the tenant. that's it, that's the plot. you're basically handing someone a key to the whole little kingdom πŸ‘‘


✨ OPTIONS ✨

okay here's the main character section, no skipping, we're doing all of them:

  • --customProperties="" β€” Custom properties to be added to the user. extra lil extras, you know?
  • -d, --data=[] β€” static data to be applied to body. accepts json or shorthand json, i.e. --data 'value1=1,my.nested.value=100'
  • --displayName="" β€” The user's display name in Cumulocity
  • --email="" β€” User email address
  • --enabled[=false] β€” User activation status (true/false)
  • --firstName="" β€” User first name
  • -h, --help[=false] β€” help for create
  • --lastName="" β€” User last name
  • --newsletter[=false] β€” Indicates whether the user is subscribed to the newsletter or not
  • --password="" β€” User password. Min: 6, max: 32 characters. Only Latin1 chars allowed
  • --phone="" β€” User phone number. Format: '+[country code][number]', has to be a valid MSISDN
  • --processingMode="" β€” Cumulocity processing mode
  • --sendPasswordResetEmail[=false] β€” Send password reset email to the user instead of setting a password
  • --shouldResetPassword[=false] β€” User must reset password on next login
  • --template="" β€” Body template
  • --templateVars=[] β€” Body template variables
  • --tenant="" β€” Tenant
  • --userName="" β€” User name, unique for a given domain. Max: 1000 characters (accepts pipeline)
ok quick note on --password because the constraints are real: Min: 6, max: 32 characters, and Only Latin1 chars allowed. don't fight it, just comply πŸ’€

πŸ”₯ OPTIONS INHERITED FROM PARENT COMMANDS πŸ”₯

these aren't even create's flags, they're the family flags it inherited, and yes you get all of them, lucky you πŸ“

  • --abortOnErrors=10 β€” Abort batch when reaching specified number of errors
  • --allowEmptyPipe[=false] β€” Don't fail when piped input is empty (stdin)
  • --cache[=false] β€” Enable cached responses
  • --cacheBodyPaths=[] β€” Cache should limit hashing of selected paths in the json body. Empty indicates all values
  • --cacheTTL="60s" β€” Cache time-to-live (TTL) as a duration, i.e. 60s, 2m
  • -c, --compact[=false] β€” Compact instead of pretty-printed output when using json output. Pretty print is the default if output is the terminal
  • --confirm[=false] β€” Prompt for confirmation
  • --confirmText="" β€” Custom confirmation text
  • --currentPage=0 β€” Current page which should be returned
  • --customQueryParam=[] β€” add custom URL query parameters. i.e. --customQueryParam 'withCustomOption=true,myOtherOption=myvalue'
  • --debug[=false] β€” Set very verbose log messages
  • --delay="0ms" β€” delay after each request, i.e. 5ms, 1.2s
  • --delayBefore="0ms" β€” delay before each request, i.e. 5ms, 1.2s
  • --dry[=false] β€” Dry run. Don't send any data to the server
  • --dryFormat="markdown" β€” Dry run output format. i.e. json, dump, markdown or curl
  • --examples[=false] β€” Show examples for the current command
  • --filter=[] β€” Apply a client side filter to response before returning it to the user
  • --flatten[=false] β€” flatten json output by replacing nested json properties with properties where their names are represented by dot notation
  • -f, --force[=false] β€” Do not prompt for confirmation. Ignored when using --confirm
  • -H, --header=[] β€” custom headers. i.e. --header "Accept: value, AnotherHeader: myvalue"
  • --includeAll[=false] β€” Include all results by iterating through each page
  • -k, --insecure[=false] β€” Allow insecure server connections when using SSL
  • -l, --logMessage="" β€” Add custom message to the activity log
  • --maxJobs=0 β€” Maximum number of jobs. 0 = unlimited (use with caution!)
  • --noAccept[=false] β€” Ignore Accept header will remove the Accept header from requests, however PUT and POST requests will only see the effect
  • --noCache[=false] β€” Force disabling of cached responses (overwrites cache setting)
  • -M, --noColor[=false] β€” Don't use colors when displaying log entries on the console
  • --noLog[=false] β€” Disables the activity log for the current command
  • --noProgress[=false] β€” Disable progress bars
  • --noProxy[=false] β€” Ignore the proxy settings
  • -n, --nullInput[=false] β€” Don't read the input (stdin). Useful if using in shell for/while loops
  • -o, --output="table" β€” Output format i.e. table, json, csv, csvheader
  • --outputFile="" β€” Save JSON output to file (after select/view)
  • --outputFileRaw="" β€” Save raw response to file (before select/view)
  • --outputTemplate="" β€” jsonnet template to apply to the output
  • -p, --pageSize=5 β€” Maximum results per page
  • --progress[=false] β€” Show progress bar. This will also disable any other verbose output
  • --proxy="" β€” Proxy setting, i.e. http://10.0.0.1:8080
  • -r, --raw[=false] β€” Show raw response. This mode will force output=json and view=off
  • --retries=3 β€” Max number of attempts when a failed http call is encountered
  • --select=[] β€” Comma separated list of properties to return. wildcards and globstar accepted, i.e. --select 'id,name,type,**.serialNumber'
  • --session="" β€” Session configuration
  • --sessionMode="" β€” Override default session mode for a single command which would normally be disabled
  • -P, --sessionPassword="" β€” Override session password
  • -U, --sessionUsername="" β€” Override session username. i.e. peter or t1234/peter (with tenant)
  • --silentExit[=false] β€” Silent status codes do not affect the exit code
  • --silentStatusCodes="" β€” Status codes which will not print out an error message
  • --timeout="600s" β€” Request timeout duration, i.e. 60s, 2m
  • --totalPages=0 β€” Total number of pages to get
  • -v, --verbose[=false] β€” Verbose logging
  • --view="auto" β€” Use views when displaying data on the terminal. Disable using --view off
  • --withError[=false] β€” Errors will be printed on stdout instead of stderr
  • --withTotalElements[=false] β€” Request Cumulocity to include the total elements in the response statistics under .statistics.totalElements (introduced in 10.13)
  • -t, --withTotalPages[=false] β€” Request Cumulocity to include the total pages in the response statistics under .statistics.totalPages
  • --workers=1 β€” Number of workers
⚠️ heads up on --maxJobs=0: 0 = unlimited and the manpage itself says "use with caution!" so like… be mindful, bestie 🫢

πŸ’– EXAMPLE πŸ’–

okay these are the actual examples, copy them exactly, they ate:

$ c8y users create --userName "testuser1" --email "testuser@no-reply.dummy.com" --password 'a0)8k2kld9lm' --shouldResetPassword
Create a user and force user to change their password when logging in
$ c8y users create --template "{email: 'test@me.com', userName: $.email, firstName: 'Peter'}" --sendPasswordResetEmail
Create a user using a template

see? not scary at all. the first one makes a user and makes them change their password on login, the second one does the template thing. slay 🌈


πŸ‘‘ SEE ALSO

that's your sibling page, go say hi.


and that's the whole page, bestie. you're now officially c8y-literate πŸ’œ go forth and create some users.

✨ c8y(1) manual page Β· Jan 1980 ✨ β€” that's the version/date flex, straight from the footer, mwah πŸ’‹

πŸ“¦ where this page comes from