CLI reference
The vpngeek gateway and vpngeek tunnel commands, for scripting and automation.
Authentication
Every command runs against your VPNGeek account. Sign in once per host; the token is stored for subsequent calls. In CI, set VPNGEEK_TOKEN in the environment instead of running an interactive login.
Gateway commands
Manage the endpoints themselves:
vpngeek gateway create --name <name> --region <region> --subnet <cidr>
vpngeek gateway list # all gateways + status
vpngeek gateway show <name> # detail for one gateway
vpngeek gateway config <name> # print the deploy bundle
vpngeek gateway delete <name> # tear down (tunnels must be removed first)
vpngeek gateway list # all gateways + status
vpngeek gateway show <name> # detail for one gateway
vpngeek gateway config <name> # print the deploy bundle
vpngeek gateway delete <name> # tear down (tunnels must be removed first)
Tunnel commands
Manage the encrypted paths between gateways:
vpngeek tunnel create --name <name> --peer-a <gw> --peer-b <gw> [--pfs on|off]
vpngeek tunnel status <name> # negotiating | established | down
vpngeek tunnel list # all tunnels + live counters
vpngeek tunnel restart <name> # force re-negotiation
vpngeek tunnel delete <name>
vpngeek tunnel status <name> # negotiating | established | down
vpngeek tunnel list # all tunnels + live counters
vpngeek tunnel restart <name> # force re-negotiation
vpngeek tunnel delete <name>
Global flags
--json— emit machine-readable output for scripting.--quiet— suppress progress, print only results.--token <t>— override the stored credential for a single call.
Combine --json with a tool like jq to build health checks — for example, alerting when any tunnel reports a status other than established.
