CLI Reference
ZCP CLI
Manage your entire ZCP cloud infrastructure from the terminal. The CLI wraps the REST API into composable commands with table, JSON, and YAML output.
214 commands across 43 groups
Installation
Quick Install: Linux / macOS
curl -fsSL https://github.com/zsoftly/zcp-cli/releases/latest/download/install.sh | bash
Installs zcp to /usr/local/bin. The installer prompts for sudo access when required.
PowerShell: Windows
irm https://github.com/zsoftly/zcp-cli/releases/latest/download/install.ps1 | iex Manual Download
Download the binary for your platform from the Releases page:
curl -Lo zcp https://github.com/zsoftly/zcp-cli/releases/latest/download/zcp-linux-amd64
chmod +x zcp
sudo mv zcp /usr/local/bin/zcp Build From Source
git clone https://github.com/zsoftly/zcp-cli.git
cd zcp-cli
make build
# Binary is written to bin/zcp Requires Go 1.26.1+ and GNU Make.
Environment Variables
Environment variables replace profiles for automation and reduce repeated flags on create commands.
| Variable | Description |
|---|---|
| ZCP_BEARER_TOKEN | Bearer token used when no profile token should be read from disk. |
| ZCP_API_URL | API base URL override. Defaults to https://api.zcp.zsoftly.ca/api. |
| ZCP_PROFILE | Profile name used when --profile is not provided. |
| ZCP_PROJECT | Default project slug for create commands accepting --project. |
| ZCP_REGION | Default region slug for create commands accepting --region. |
| ZCP_CLOUD_PROVIDER | Default cloud provider slug for create commands accepting --cloud-provider. |
| ZCP_OUTPUT | Default output format: table, json, or yaml. |
| ZCP_DEBUG | Set to true, 1, or yes to enable debug output. |
export ZCP_BEARER_TOKEN=YOUR_API_KEY
export ZCP_API_URL=https://api.zcp.zsoftly.ca/api
zcp region list Global Flags
These flags apply to every command.
| Flag | Type | Default | Description |
|---|---|---|---|
| --profile | string | — | Configuration profile to use, overriding the active profile |
| --output, -o | string | table | Output format: table, json, or yaml |
| --api-url | string | https://api.zcp.zsoftly.ca/api | Override the API base URL |
| --timeout | int | 30 | Request timeout in seconds |
| --debug | bool | false | Enable debug output on stderr |
| --no-color | bool | false | Disable terminal color output |
| --pager | bool | false | Pipe table output through less when available |
| --auto-approve, -y | bool | false | Skip confirmation prompts for automation and CI |
Output Formats
All commands support three output modes via the -o flag:
table (default),
json, and
yaml.
| Exit Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Error |
Core
auth
Authentication operations
| Command | Description |
|---|---|
| zcp auth validate | Validates credentials by making a test API call (region list) |
completion
Generate shell completion scripts
| Command | Description |
|---|---|
| zcp completion | Generate shell completion scripts |
profile
Manage configuration profiles
| Command | Description |
|---|---|
| zcp profile add | Add or update a profile |
| zcp profile delete | Delete a profile |
| zcp profile list | List configured profiles |
| zcp profile rename | Rename a profile |
| zcp profile show | Show profile details (credentials are masked) |
| zcp profile update | Update fields of an existing profile |
| zcp profile use | Set the active profile |
version
Print the zcp CLI version
| Command | Description |
|---|---|
| zcp version | Print the zcp CLI version |
Lookup
billing-cycle
Manage billing cycles
| Command | Description |
|---|---|
| zcp billing-cycle list | List billing cycles |
cloud-provider
Manage cloud providers
| Command | Description |
|---|---|
| zcp cloud-provider list | List cloud providers |
currency
Manage currencies
| Command | Description |
|---|---|
| zcp currency list | List currencies |
dashboard
Account dashboard and service management
| Command | Description |
|---|---|
| zcp dashboard cancel-service | Submit a service cancellation request |
| zcp dashboard summary | Show a summary of active service counts |
marketplace
Browse marketplace applications
| Command | Description |
|---|---|
| zcp marketplace list | List marketplace applications |
plan
List service plans and pricing
| Command | Description |
|---|---|
| zcp plan backup | List Backup plans |
| zcp plan ip | List IP Address plans |
| zcp plan iso | List ISO plans |
| zcp plan kubernetes | List Kubernetes plans |
| zcp plan lb | List Load Balancer plans |
| zcp plan router | List Virtual Router plans |
| zcp plan storage | List Block Storage plans |
| zcp plan template | List My Template plans |
| zcp plan vm | List Virtual Machine plans |
| zcp plan vm-snapshot | List VM Snapshot plans |
product
View products and product categories
| Command | Description |
|---|---|
| zcp product categories | List product categories |
| zcp product list | List all products |
region
Manage regions
| Command | Description |
|---|---|
| zcp region list | List available regions |
server
Manage servers
| Command | Description |
|---|---|
| zcp server list | List servers |
storage-category
Manage storage categories
| Command | Description |
|---|---|
| zcp storage-category list | List storage categories |
store
Manage store items and checkout
| Command | Description |
|---|---|
| zcp store checkout | Purchase a store product |
| zcp store list | List store items |
template
Manage VM templates
| Command | Description |
|---|---|
| zcp template account-create | Create an account template |
| zcp template account-delete | Delete an account template |
| zcp template account-list | List account (user-created) templates |
| zcp template list | List available public templates |
Compute
affinity-group
Manage affinity groups
| Command | Description |
|---|---|
| zcp affinity-group create | Create an affinity group |
| zcp affinity-group delete | Delete an affinity group |
| zcp affinity-group list | List affinity groups |
autoscale
Manage VM autoscale groups, policies, and conditions
| Command | Description |
|---|---|
| zcp autoscale change-plan | Change the compute plan of an autoscale group |
| zcp autoscale change-template | Change the template of an autoscale group |
| zcp autoscale condition create | Create a scale-down condition for an autoscale group |
| zcp autoscale condition delete | Delete a scale-down condition from an autoscale group |
| zcp autoscale condition update | Update a scale-down condition for an autoscale group |
| zcp autoscale create | Create a new autoscale group |
| zcp autoscale disable | Disable an autoscale group |
| zcp autoscale enable | Enable an autoscale group |
| zcp autoscale list | List autoscale groups |
| zcp autoscale policy create | Create a scale-up policy for an autoscale group |
| zcp autoscale policy delete | Delete a scale-up policy from an autoscale group |
| zcp autoscale policy update | Update a scale-up policy for an autoscale group |
instance
Manage virtual machine instances
| Command | Description |
|---|---|
| zcp instance add-network | Add a network to a virtual machine |
| zcp instance addons | List addons for a virtual machine |
| zcp instance change-hostname | Change the hostname of a virtual machine |
| zcp instance change-os | Change the OS template of a virtual machine (DESTRUCTIVE) |
| zcp instance change-password | Reset the password of a virtual machine |
| zcp instance change-plan | Change the plan of a virtual machine |
| zcp instance change-script | Change the startup script of a virtual machine |
| zcp instance create | Create a new virtual machine |
| zcp instance get | Get details of a specific virtual machine |
| zcp instance list | List virtual machines |
| zcp instance logs | Show activity logs for a virtual machine |
| zcp instance purchase-addon | Purchase an addon for a virtual machine |
| zcp instance reboot | Reboot a virtual machine |
| zcp instance reset | Reset a virtual machine (hard reset, unsaved data loss possible) |
| zcp instance ssh | Open an SSH session to a virtual machine by resolving its IP address via the API |
| zcp instance start | Start a stopped virtual machine |
| zcp instance stop | Stop a running virtual machine |
| zcp instance tag-create | Create a tag on a virtual machine |
| zcp instance tag-delete | Delete a tag from a virtual machine |
kubernetes
Manage Kubernetes clusters (alias: k8s)
| Command | Description |
|---|---|
| zcp kubernetes create | Create a new Kubernetes cluster |
| zcp kubernetes list | List Kubernetes clusters |
| zcp kubernetes start | Start a stopped Kubernetes cluster |
| zcp kubernetes stop | Stop a running Kubernetes cluster |
| zcp kubernetes upgrade | Upgrade (change plan of) a Kubernetes cluster |
monitoring
View resource monitoring and VM metrics
| Command | Description |
|---|---|
| zcp monitoring charts | Show monitoring charts data |
| zcp monitoring cpu | Show CPU usage metrics for a VM |
| zcp monitoring disk | Show disk read/write metrics for a VM |
| zcp monitoring disk-io | Show disk IO read/write metrics for a VM |
| zcp monitoring global | Show global resource monitoring overview |
| zcp monitoring memory | Show memory usage metrics for a VM |
| zcp monitoring network | Show network traffic metrics for a VM |
Storage
backup
Manage block storage backups
| Command | Description |
|---|---|
| zcp backup create | Create a block storage backup |
| zcp backup list | List block storage backups |
iso
Manage ISO images
| Command | Description |
|---|---|
| zcp iso create | Create (register) an ISO image |
| zcp iso delete | Delete an ISO image |
| zcp iso list | List ISO images |
| zcp iso update | Update ISO permissions |
object-storage
Manage Ceph object storage instances
| Command | Description |
|---|---|
| zcp object-storage bucket create | Create a new bucket in an object storage instance |
| zcp object-storage bucket delete | Delete a bucket from an object storage instance |
| zcp object-storage bucket get | Get details of a bucket |
| zcp object-storage bucket list | List buckets in an object storage instance |
| zcp object-storage bucket set-acl | Set the access control on a bucket |
| zcp object-storage create | Create a new object storage instance |
| zcp object-storage delete | Delete an object storage instance |
| zcp object-storage get | Get details of an object storage instance |
| zcp object-storage list | List object storage instances |
| zcp object-storage object get | Get details of an object in a bucket |
| zcp object-storage object list | List objects in a bucket |
| zcp object-storage resize | Resize the storage allocation of an object storage instance |
snapshot
Manage block storage snapshots
| Command | Description |
|---|---|
| zcp snapshot create | Create a block storage snapshot |
| zcp snapshot list | List block storage snapshots |
| zcp snapshot revert | Revert a block storage volume to a snapshot state (DESTRUCTIVE) |
vm-backup
Manage VM backups
| Command | Description |
|---|---|
| zcp vm-backup create | Create a VM backup |
| zcp vm-backup list | List VM backups |
vm-snapshot
Manage VM snapshots (whole-machine snapshots)
| Command | Description |
|---|---|
| zcp vm-snapshot create | Create a VM snapshot |
| zcp vm-snapshot delete | Delete a VM snapshot permanently |
| zcp vm-snapshot list | List VM snapshots |
| zcp vm-snapshot revert | Revert a VM to a snapshot state (DESTRUCTIVE) |
volume
Manage block storage volumes
| Command | Description |
|---|---|
| zcp volume attach | Attach a volume to a virtual machine |
| zcp volume create | Create a new block storage volume |
| zcp volume detach | Detach a volume from its virtual machine |
| zcp volume list | List block storage volumes |
Networking
acl
Manage Network ACLs
| Command | Description |
|---|---|
| zcp acl create | Create a network ACL in a VPC |
| zcp acl list | List network ACLs for a VPC |
| zcp acl replace | Replace the ACL on a network |
dns
Manage DNS domains and records
| Command | Description |
|---|---|
| zcp dns create | Create a DNS domain |
| zcp dns delete | Delete a DNS domain |
| zcp dns list | List DNS domains |
| zcp dns record-create | Create a DNS record |
| zcp dns record-delete | Delete a DNS record |
| zcp dns show | Show DNS domain details and records |
egress
Manage egress firewall rules
| Command | Description |
|---|---|
| zcp egress create | Create an egress rule |
| zcp egress delete | Delete an egress rule |
| zcp egress list | List egress rules for a network |
firewall
Manage firewall rules
| Command | Description |
|---|---|
| zcp firewall create | Create a firewall rule |
| zcp firewall delete | Delete a firewall rule |
| zcp firewall list | List firewall rules |
ip
Manage public IP addresses
| Command | Description |
|---|---|
| zcp ip allocate | Allocate a new public IP address |
| zcp ip list | List public IP addresses |
| zcp ip static-nat enable | Enable static NAT on an IP address |
| zcp ip vpn disable | Disable remote access VPN on an IP address |
| zcp ip vpn enable | Enable remote access VPN on an IP address |
| zcp ip vpn list | List remote access VPNs on an IP address |
loadbalancer
Manage load balancers
| Command | Description |
|---|---|
| zcp loadbalancer attach-vm | Attach VMs to a load balancer rule |
| zcp loadbalancer create | Create a new load balancer |
| zcp loadbalancer create-rule | Create a rule on an existing load balancer |
| zcp loadbalancer list | List load balancers |
network
Manage isolated networks
| Command | Description |
|---|---|
| zcp network categories | List network categories |
| zcp network create | Create a new isolated network |
| zcp network list | List isolated networks |
| zcp network update | Update a network |
portforward
Manage port forwarding rules
| Command | Description |
|---|---|
| zcp portforward create | Create a port forwarding rule |
| zcp portforward delete | Delete a port forwarding rule |
| zcp portforward list | List port forwarding rules |
ssh-key
Manage SSH keys
| Command | Description |
|---|---|
| zcp ssh-key delete | Delete an SSH key |
| zcp ssh-key import | Import an SSH public key |
| zcp ssh-key list | List SSH keys |
vpc
Manage Virtual Private Clouds
| Command | Description |
|---|---|
| zcp vpc acl-create | Create a network ACL list in a VPC |
| zcp vpc acl-list | List network ACLs for a VPC |
| zcp vpc acl-replace | Replace the ACL on a network |
| zcp vpc create | Create a new VPC |
| zcp vpc delete | Delete a VPC |
| zcp vpc get | Get details of a VPC |
| zcp vpc list | List VPCs |
| zcp vpc restart | Restart a VPC |
| zcp vpc update | Update a VPC |
| zcp vpc vpn-gateway create | Create a VPN gateway for a VPC |
| zcp vpc vpn-gateway delete | Delete a VPN gateway from a VPC |
| zcp vpc vpn-gateway list | List VPN gateways for a VPC |
vpn
Manage VPN users and customer gateways
| Command | Description |
|---|---|
| zcp vpn customer-gateway create | Create a new VPN customer gateway |
| zcp vpn customer-gateway delete | Delete a VPN customer gateway |
| zcp vpn customer-gateway list | List VPN customer gateways |
| zcp vpn customer-gateway update | Update a VPN customer gateway |
| zcp vpn user create | Create a new VPN user |
| zcp vpn user delete | Delete a VPN user by slug |
| zcp vpn user list | List VPN users |
Account
billing
View billing, costs, usage, invoices, subscriptions, and payments
| Command | Description |
|---|---|
| zcp billing balance | Show account balance summary |
| zcp billing budget-alert | Show current budget alert settings |
| zcp billing budget-alert-set | Configure budget alert settings |
| zcp billing cancel-requests | List scheduled service cancellation requests |
| zcp billing cancel-service | Submit a cancellation request for a service |
| zcp billing contracts | List service contracts |
| zcp billing costs | Show per-service cost breakdown |
| zcp billing coupons | List coupons associated with the account |
| zcp billing credit-limit | Show account credit limit |
| zcp billing free-credits | Show available free credits |
| zcp billing invoices | List billing invoices |
| zcp billing invoices-count | Show total number of invoices |
| zcp billing monthly-usage | Show month-by-month usage history |
| zcp billing payments | List payment transactions |
| zcp billing redeem-coupon | Apply a coupon code to the account |
| zcp billing service-counts | Show active service counts by type |
| zcp billing subscriptions active | List active service subscriptions |
| zcp billing subscriptions inactive | List inactive service subscriptions |
| zcp billing trials | List active free trials |
| zcp billing usage | Show detailed account usage |
profile-info
Manage user profile, company details, time settings, and API access
| Command | Description |
|---|---|
| zcp profile-info activity-logs | Show activity logs |
| zcp profile-info company | Update company/billing details |
| zcp profile-info disable-api | Disable API access for the account |
| zcp profile-info enable-api | Enable API access for the account |
| zcp profile-info get | Show user profile |
| zcp profile-info login-activity | Show login activity logs |
| zcp profile-info time-settings | Update time settings (timezone and date format) |
| zcp profile-info update | Update user profile |
project
Manage projects, project icons, and project users
| Command | Description |
|---|---|
| zcp project create | Create a new project |
| zcp project dashboard | Show project dashboard services |
| zcp project delete | Delete a project |
| zcp project icon list | List available project icons |
| zcp project list | List all projects |
| zcp project update | Update an existing project |
| zcp project user add | Add a user to a project |
| zcp project user list | List users in a project |
support
Manage support tickets, replies, feedback, and FAQs
| Command | Description |
|---|---|
| zcp support faq list | List FAQs |
| zcp support ticket create | Create a support ticket |
| zcp support ticket delete | Delete a support ticket |
| zcp support ticket feedback | Get feedback for a support ticket |
| zcp support ticket feedback-submit | Submit feedback for a support ticket |
| zcp support ticket list | List support tickets |
| zcp support ticket replies | List replies for a support ticket |
| zcp support ticket reply | Reply to a support ticket |
| zcp support ticket show | Show a support ticket |
| zcp support ticket summary | Show ticket count summary |