Docs
CLI
@nixploy/cli — the whole panel from your terminal, scriptable.
Install & login
1npm i -g @nixploy/cli
2
3# prompts for the key with echo off
4nixploy auth login --url https://panel.example.com
5
6# CI: pipe it in — never pass a key as an argument
7echo "$NIXPLOY_API_KEY" | nixploy auth login --url https://panel.example.com
8
9nixploy doctorA full deploy, scripted
1nixploy app create --project-id proj_123 --name api
2nixploy app update-source app_abc --docker-image traefik/whoami:v1.10.1
3nixploy app deploy app_abc
4nixploy app logs app_abc -f
5nixploy domain add api.example.com --application-id app_abc --port 80 --httpsCommand groups
- app — create, source, build type, deploy, logs -f, start/stop/restart, move, duplicate, delete
- compose — create, compose file get/set, deploy, logs, containers
- db — all five engines: create, start/stop, connection URL, external port, backups
- domain — add, remove, HTTPS toggle, middleware chains (rate limit, IP allow-list, headers…)
- env — get/set/import/export at organization, project, environment or service scope
- deployment — history, logs, cancel, rollback points and rollback
- backup — destinations (S3 or local disk), schedules, run, run history, restore, verify
- preview, schedule, server, registry, ssh-key, notification, incident, monitoring
- org, updates, audit, project, environment, template, tag, gitops
Organizations
1nixploy org list # real memberships, with the one this key resolves to
2nixploy org current
3nixploy org use org_abc123 # pin the active profile to another org
4nixploy org use --clear # back to the key's defaultorg use checks the target against your real memberships before writing the profile, so a typo fails immediately instead of turning every later command into a permission error.
Audit
1nixploy audit list --since 24h
2nixploy audit list --since 7d --until 2026-09-10 --action application.deploy
3nixploy audit export --since 30d -o audit.csv--since and --until take an ISO timestamp or a relative window (30m, 24h, 7d) and are pushed down to the panel as a predicate, so a window wider than --limit no longer silently loses its older half. audit export writes the whole filtered trail as CSV, including the columns the table does not show.
Built for scripts
- --json prints the raw API payload; --quiet prints identifiers for xargs
- Exit codes: 0 ok · 1 error · 2 usage · 3 not found or forbidden
- Destructive verbs require --yes
- --profile switches between panels and organizations
- A throttled request is exit 1, not 3: the panel answers 429 with Retry-After and the CLI prints how long to wait (120 requests/minute per key)
- Every request has a 30 s timeout; following a build polls rather than holding one long connection
Credentials live in ~/.nixploy/config.json (0600). Override with --url / --api-key / --profile, or NIXPLOY_API_URL / NIXPLOY_API_KEY / NIXPLOY_PROFILE. Every command runs with the key's scope intersected with its owner's capabilities — nixploy auth whoami prints the effective set.
Also see the repository guides under docs/ · REST API reference
