Neon CLI
Use the Neon CLI to manage Neon directly from the terminal
The Neon CLI is a command-line interface that lets you manage Neon directly from the terminal. This documentation references all commands and options available in the Neon CLI.
For installation instructions, see Neon CLI — Install and connect.
Synopsis
neonctl --helpusage: neonctl <command> [options] [aliases: neon]Commands: neonctl auth Authenticate [aliases: login] neonctl me Show current user neonctl projects Manage projects [aliases: project] neonctl branches Manage branches [aliases: branch] neonctl databases Manage databases [aliases: database, db] neonctl roles Manage roles [aliases: role] neonctl operations Manage operations [aliases: operation] neonctl connection-string [branch] Get connection string [aliases: cs] neonctl set-context Set the current context neonctl completion generate completion scriptGlobal options: -o, --output Set output format [string] [choices: "json", "yaml", "table"] [default: "table"] --config-dir Path to config directory [string] [default: ""] --api-key API key [string] [default: ""] --analytics Manage analytics. Example: --no-analytics, --analytics false [boolean] [default: true] -v, --version Show version number [boolean] -h, --help Show help [boolean]Commands
| Command | Subcommands | Description |
|---|---|---|
| auth | Authenticate | |
| me | Show current user | |
| projects | list, create, update, delete, get | Manage projects |
| ip-allow | list, add, remove, reset | Manage IP Allow |
| branches | list, create, reset, rename, add-compute, set-primary, delete, get | Manage branches |
| databases | list, create, delete | Manage databases |
| roles | list, create, delete | Manage roles |
| operations | list | Manage operations |
| connection-string | Get connection string | |
| set-context | Set context for session | |
| completion | Generate a completion script |
Global options
Global options are supported with any Neon CLI command.
| Option | Description | Type | Default |
|---|---|---|---|
| -o, --output | Set the Neon CLI output format (json, yaml, or table) | string | table |
| --config-dir | Path to the Neon CLI configuration directory | string | /home/<user>/.config/neonctl |
| --api-key | Neon API key | string | NEON_API_KEY environment variable |
| --analytics | Manage analytics | boolean | true |
| -v, --version | Show the Neon CLI version number | boolean | - |
| -h, --help | Show the Neon CLI help | boolean | - |
-
Sets the output format. Supported options are
json,yaml, andtable. The default istable. Table output may be limited. Thejsonandyamloutput formats show all data.neonctl me --output json -
Specifies the path to the
neonctlconfiguration directory. To view the default configuration directory containing youcredentials.jsonfile, runneonctl --help. The credentials file is created when you authenticate using theneonctl authcommand. This option is only necessary if you move yourneonctlconfiguration file to a location other than the default.neonctl projects list --config-dir /home/<user>/.config/neonctl -
Specifies your Neon API key. You can authenticate using a Neon API key when running a Neon CLI command instead of using
neonctl auth. For information about obtaining an Neon API key, see Create an API key.neonctl <command> --api-key <neon_api_key>To avoid including the
--api-keyoption with each CLI command, you can export your API key to theNEON_API_KEYenvironment variable.export NEON_API_KEY=<neon_api_key>info
The authentication flow for the Neon CLI follows this order:
- If the
--api-keyoption is provided, it is used for authentication. - If the
--api-keyoption is not provided, theNEON_API_KEYenvironment variable setting is used. - If there is no
--api-keyoption orNEON_API_KEYenvironment variable setting, the CLI looks for thecredentials.jsonfile created by theneonctl authcommand. - If the credentials file is not found, the Neon CLI initiates the
neonctl authweb authentication process.
- If the
-
Analytics are enabled by default to gather information about the CLI commands and options that are used by our customers. This data collection assists in offering support, and allows for a better understanding of typical usage patterns so that we can improve user experience. Neon does not collect user-defined data, such as project IDs or command payloads. To opt-out of analytics data collection, specify
--no-analyticsor--analytics false. -
Shows the Neon CLI version number.
$ neonctl --version1.15.0 -
Shows the
neonctlcommand-line help. You can view help forneonctl, aneonctlcommand, or aneonctlsubcommand, as shown in the following examples:neonctl --helpneonctl branches --helpneonctl branches create --help
GitHub
The GitHub repository for the Neon CLI is found here.
Last updated on