📝 WARNING SHIM DEPRECATION
With the release of Chocolatey CLI v1.0.0 we have deprecated the following shims/shortcuts:
- chocolatey (Alias for choco)
- cinst (Shortcut for choco install)
- cpush (Shortcut for choco push)
- cuninst (Shortcut for choco uninstall)
- cup (Shortcut for choco upgrade)
We recommend that any scripts calling these shims be updated to use the full command, as these shims will be removed in Chocolatey CLI v2.0.0.
ApiKey Command (choco setapikey)
This lists api keys that are set or sets an api key for a particular source so it doesn't need to be specified every time.
Anything that doesn't contain source and key will list api keys.
choco apikey [<options/switches>] choco setapikey [<options/switches>]
choco apikey choco apikey -s https://somewhere/out/there choco apikey -s="https://somewhere/out/there/" -k="value" choco apikey -s "https://push.chocolatey.org/" -k="123-123123-123" choco apikey -s "http://internal_nexus" -k="user:password"
For source location, this can be a folder/file share or an http location. When it comes to urls, they can be different from the packages url (where packages are searched and installed from). As an example, for Chocolatey's community package package repository, the package url is https://community.chocolatey.org/api/v2/, but the push url is https://push.chocolatey.org (and the deprecated https://chocolatey.org/ as a push url). Check the documentation for your choice of repository to learn what the push url is.
For the key, this can be an apikey that is provided by your source repository. With some sources, like Nexus, this can be a NuGet API key or it could be a user name and password specified as 'user:password' for the API key. Please see your repository's documentation (for Nexus, please see https://ch0.co/nexus2apikey).
📝 NOTE See scripting in how to pass arguments (
choco -?) for how to write proper scripts and integrations.
Connecting to Chocolatey.org (Community Package Repository)
In order to save your API key for https://push.chocolatey.org/, log in (or register, confirm and then log in) to https://push.chocolatey.org/, go to https://push.chocolatey.org/account, copy the API Key, and then use it in the following command:
choco apikey -k <your key here> -s https://push.chocolatey.org/
Exit codes that normally result from running this command.
- 0: operation was successful, no issues detected
- -1 or 1: an error has occurred
If you find other exit codes that we have not yet documented, please file a ticket so we can document it at https://github.com/chocolatey/choco/issues/new/choose.
Options and Switches
📝 NOTE Options and switches apply to all items passed, so if you are running a command like install that allows installing multiple packages, and you use
--version=1.0.0, it is going to look for and try to install version 1.0.0 of every package passed. So please split out multiple package calls when wanting to pass specific options.
Includes default options/switches (included below for completeness).
-?, --help, -h Prints out the help menu. -d, --debug Debug - Show debug messaging. -v, --verbose Verbose - Show verbose messaging. Very verbose messaging, avoid using under normal circumstances. --trace Trace - Show trace messaging. Very, very verbose trace messaging. Avoid except when needing super low-level .NET Framework debugging. Available in 0.10.4+. --nocolor, --no-color No Color - Do not show colorization in logging output. This overrides the feature 'logWithoutColor', set to 'False'. Available in 0.10.9+. --acceptlicense, --accept-license AcceptLicense - Accept license dialogs automatically. Reserved for future use. -y, --yes, --confirm Confirm all prompts - Chooses affirmative answer instead of prompting. Implies --accept-license -f, --force Force - force the behavior. Do not use force during normal operation - it subverts some of the smart behavior for commands. --noop, --whatif, --what-if NoOp / WhatIf - Don't actually do anything. -r, --limitoutput, --limit-output LimitOutput - Limit the output to essential information --timeout, --execution-timeout=VALUE CommandExecutionTimeout (in seconds) - The time to allow a command to finish before timing out. Overrides the default execution timeout in the configuration of 2700 seconds. '0' for infinite starting in 0.10.4. -c, --cache, --cachelocation, --cache-location=VALUE CacheLocation - Location for download cache, defaults to %TEMP% or value in chocolatey.config file. --allowunofficial, --allow-unofficial, --allowunofficialbuild, --allow-unofficial-build AllowUnofficialBuild - When not using the official build you must set this flag for choco to continue. --failstderr, --failonstderr, --fail-on-stderr, --fail-on-standard-error, --fail-on-error-output FailOnStandardError - Fail on standard error output (stderr), typically received when running external commands during install providers. This overrides the feature failOnStandardError. --use-system-powershell UseSystemPowerShell - Execute PowerShell using an external process instead of the built-in PowerShell host. Should only be used when internal host is failing. Available in 0.9.10+. --no-progress Do Not Show Progress - Do not show download progress percentages. Available in 0.10.4+. --proxy=VALUE Proxy Location - Explicit proxy location. Overrides the default proxy location of ''. Available for config settings in 0.9.9.9+, this CLI option available in 0.10.4+. --proxy-user=VALUE Proxy User Name - Explicit proxy user (optional). Requires explicit proxy (`--proxy` or config setting). Overrides the default proxy user of ''. Available for config settings in 0.9.9.9+, this CLI option available in 0.10.4+. --proxy-password=VALUE Proxy Password - Explicit proxy password (optional) to be used with username. Requires explicit proxy (`--proxy` or config setting) and user name. Overrides the default proxy password (encrypted in settings if set). Available for config settings in 0.9.9.9+, this CLI option available in 0.10.4+. --proxy-bypass-list=VALUE ProxyBypassList - Comma separated list of regex locations to bypass on proxy. Requires explicit proxy (`--proxy` or config setting). Overrides the default proxy bypass list of ''. Available in 0.10.4+. --proxy-bypass-on-local Proxy Bypass On Local - Bypass proxy for local connections. Requires explicit proxy (`--proxy` or config setting). Overrides the default proxy bypass on local setting of 'True'. Available in 0.10.4+. --log-file=VALUE Log File to output to in addition to regular loggers. Available in 0.1- 0.8+. --skipcompatibilitychecks, --skip-compatibility-checks SkipCompatibilityChecks - Prevent warnings being shown before and after command execution when a runtime compatibility problem is found between the version of Chocolatey and the Chocolatey Licensed Extension. Available in 1.1.0+ -s, --source=VALUE Source [REQUIRED] - The source location for the key -k, --key, --apikey, --api-key=VALUE ApiKey - The API key for the source. This is the authentication that identifies you and allows you to push to a source. With some sources this is either a key or it could be a user name and password specified as 'user:password'. --rem, --remove Removes an API key from Chocolatey
📝 NOTE This documentation has been automatically generated from
choco setapikey -h.