Skip to content
All docs

Docs

CLI

@nixploy/cli — the whole panel from your terminal, scriptable.

Install & login

sh
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 doctor

A full deploy, scripted

sh
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 --https

Command 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

sh
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 default

org 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

sh
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

Rent the box. Keep the rest.

One command, three services, and the first account is yours.