CLI reference

CLI reference

Updated

Every command, grouped as in . prints current help and examples. For installation, see Getting started with the CLI.

Conventions

  • ; also works and is the form errors use.
  • Bare on a terminal opens the TUI (). alone usually lists.
  • Destructive commands confirm on a terminal. When piped, pass () or the command exits 1 without acting.
  • Under an API key, hides commands the key can't run.

Global flags and environment

FlagDescription
, Output format. Default: table on a terminal, JSON when piped.
Show help for the command.
VariableDescription
API key for the current shell. Overrides stored credentials.
Connection profile to use instead of the active one.
API base URL. Overrides the profile and the stored URL.
Store credentials in a file instead of the OS keychain.
Render mode for one-shot commands: , , or .
Disable colour output.
Config directory base (default ).
FileDescription
API URL, active team and project, profiles, directory links, render mode.
Stored login when no keychain is available. Named profiles use .
Cached minimum-version check, refreshed every six hours.

On Windows the directory is .

Auth and identity

Every command works with a browser session. An API key runs only the commands whose scope it holds; the scope is listed in the server, storage, and billing tables below. Everything else (, account, team, config, Apps, Functions, SSH keys, tickets, the TUI) is session-only. , , and always run.

CommandDescription
Sign in through the browser. reads an API key () from stdin and stores it; prompts with masked input on a terminal.
Revoke the session and clear stored credentials. If the portal is unreachable, local credentials are still cleared.
Signed-in account and auth mode. returns the raw account payload.
Account details. Same as .

Team, project, and config

CommandDescription
Show the active team, or switch by name substring or id prefix. lists all, opens a picker.
Org and billing details. picks the team.
Projects in the active team. Same as .
Active profile, team, project, and user. Same as ; adds the API URL and file paths.
Saved connection profiles.
Create or update a profile: a named API URL with its own login.
Switch profile. clears it.
Delete a profile and its login. Alias .
Active team, project, user, API URL, and render mode.

Apps

App commands take . Without it, the CLI uses the app linked to the current directory or its nearest linked parent.

CommandDescription
Apps in the active project.
Create an app. (default ), (default ),
Link the directory to an app through a walkthrough: team, project, pick or create an app, optional env vars, optional GitHub.
Linked app, status, hostname, plan, release, and last build.
Remove the directory's link.
Flag on Description
Link to this app and skip the walkthrough.
Project to use.
Remove the link.
Never prompt. Requires .

Deploy

builds and ships the current directory, or rolls out an image.

FlagDescription
Target app. Default: the linked app.
Directory to pack and upload (default ). Excludes , , , . Build output such as is kept.
Deploy an existing registry image. Can't be combined with .
Return once the build is queued.
Seconds between polls (default 5, minimum 2).
Stop waiting after this many seconds (default 900). The build continues server-side.

In an unlinked directory on a terminal, runs the walkthrough and stops before building.

Deployments

CommandDescription
Releases, newest first.
One build or release: status, steps, trigger. is a build id, release id, or release number such as .
Redeploy release 's image as a new release.

Environment variables

is the short form of .

CommandDescription
, Keys and scope. Values are never listed.
, Set a variable, stored as a secret. Quote the pair if the value has spaces. (default ), (up to 500 chars).
Show one value. Config values print in full; secrets are masked to their tail.
Delete a variable.

Build and deploy settings

prints current values. changes only the flags passed.

Flag on Description
Subdirectory to build from.
Dockerfile path, relative to the build context.
Docker build context.
Container start command override.
Runs once before each deploy, for example migrations.
Deploy on every push, or manually only.
HTTP path that must pass before a deploy is healthy, for example .
Port the app listens on. clears it and lets the runtime detect the port.

Domains

CommandDescription
Default and custom domains with TLS status.
Attach a domain and print the DNS records to create. for the first custom domain on a plan that charges for it.
Re-check DNS and TLS.
Detach a domain.

TLS states are described in Deploying and configuring an app.

Plans

CommandDescription
Current plan and available plans.
Change plan after a proration preview. Tiers: , , , . (default ),

Logs, metrics, and health

CommandDescription
Stream live container logs until Ctrl-C. prints buffered lines and exits.
Search log history. … (default ), / (ISO instant or age like ), , , 1–5000 (default 500).
CPU, memory, and network against the plan, with peak and average. (default ) or /. returns the raw series.
Probe the app's health endpoint through the cluster.

Timestamps print in your local time zone. returns ISO instants.

Functions

Function commands take a positional name or . Without either, the CLI uses the function linked by . A directory linked to an app can't be used for function commands, and vice versa.

Create and deploy

CommandDescription
Create or reuse a function, link the directory, and write a starter handler if there's no entry file or Dockerfile. Safe to re-run. , , (e.g. ), , ,
Create without linking. Hostname: . (default ), , or ,
Functions in the active project.
Configuration, current release, and health.
Upload the directory's text files and follow the build and release. , , (default 3, minimum 2), (default 600), skips the runtime-mismatch confirmation.
Remove the directory's link.
Delete the function and its directory link. skips the type-the-slug confirmation.

uploads:

  • Text files only. A file with a NUL byte in its first 8 KiB is skipped as binary.
  • Everything except, at any depth: , , , , , , , , , , , and paths matched by (gitignore syntax) in the deploy directory.
  • Up to 32 files, about 900 KB total, 512 KiB per file. Over the total, the CLI names the largest files and stops.

Entry files, checked in order:

RuntimeEntry files
, , , , ,
, , ,

A directory with a Dockerfile builds as a container and ignores the runtime setting. The handler contract is in Writing and deploying a function.

Releases, invocation, and logs

CommandDescription
Releases, newest first, current one marked.
New release from release 's image.
Plain HTTPS request to the function's hostname, no Synteq credentials attached. (default ), (default ), /, (default ), (repeatable). returns .
Recent invocations, newest first. (default 20, max 100), , , , adds captured output, / polls every 3 seconds.

Environment variables

CommandDescription
Keys, kind, and scope. Never values.
Set a variable. (default ), (default ),
One value. Secrets are masked to the last 4 characters; config prints in full.
Delete a variable.

Cron triggers

Schedules are five-field cron expressions in UTC. Each firing is a normal invocation: metered, logged, and listed by . Trigger ids are the short ids from or the full UUID.

CommandDescription
Triggers on the function.
Add a trigger. Quote the schedule. /, ,
Change only the flags passed. /, , , ,
Delete a trigger. To pause, use .
Fire now, outside the schedule.

Servers

, , , and share one command set. Replace with the group name.

CommandDescriptionAPI-key scope
List instances. Same as bare .
Full details. Without an id, pick from a list.
Order an instance. Interactive on a terminal, flag-driven when piped.
Power actions. All but confirm on a terminal.
Reinstall with a new OS image. Erases all data.
Change CPU, RAM, disk, or bandwidth in place after a prorated quote.
Serial console, or a browser URL for graphical.session
Live CPU, memory, disk, uptime, and network I/O.
Month-to-date usage, allowance, overage, up to 12 months of history.
Recent activity log.session
View or set boot order.
IP addresses and extra-IP add-ons.
Buy extra IPv4 addresses. Charges immediately.session

Scopes for the other groups replace with , , or .

(scopes , ) has , , , , , (one-time install password, available for 7 days after provisioning), (BMC console through the portal), , and . Bare metal has no serial console.

Storage, ordering, and catalog

CommandDescriptionAPI-key scope
Block storage volumes.
Order a volume. Same as .
Attach a detached volume to a server in the same cluster.
Detach a volume. Confirms on a terminal.
Grow a volume. Volumes can't shrink.
Picker for what to order. Subcommands: , , , .
Products and plans.
OS images for orders and reinstalls.
All resources across kinds.session
IP transit services.

Billing, SSH keys, and tickets

CommandDescriptionAuth
Credit balance and recent history. Same as .
Buy credit with a saved payment method. Interactive on a terminal.session
Saved payment methods. Same as .session
Open the portal to add a method.session
Set the team default.session
Remove a method. when piped.session
, , SSH public keys on your account.session
, , , , , , , Support tickets. Alias .session

The api escape hatch

sends an authenticated request as you to any portal API path and prints the raw JSON. Prefer a dedicated command where one exists; those validate input and format output. Paths are listed in the API reference at cloud.synteq.com/docs/api.

synteq api GET /orders/catalog --query category=gpu_cloud
synteq api POST /orders/preview --input body.json
Argument or flagDescription
, , , , or .
API path starting with . Full URLs are refused.
JSON body from a file, or for stdin. Piped stdin is used automatically.
Query parameter. Repeatable.
Extra header. Repeatable. and can't be overridden.
Print response status and headers to stderr before the body.

Output is pretty-printed on a terminal and compact when piped.

Exit codes and errors

CodeMeaning
0Success.
1User error: bad flags, unknown slug, missing scope, refused confirmation.
2Not signed in, or the session expired. Run .
3Server error (5xx), or the portal is unreachable.
4CLI older than the portal's minimum version. Run .

In JSON mode, errors go to stderr as one object. Include the when contacting support.

{"error":{"detail":"...","status":404,"request_id":"...","exit_code":1}}

The minimum-version check uses a cache refreshed every six hours and passes if the portal is unreachable. , , and are exempt.

Scripting and CI

  • Apps and Functions need a session. A deploying CI job must reuse a session stored by on a machine where the browser flow was completed.
  • on and returns the build row at once. Poll with or .
  • returns .
  • selects a connection profile per job.

Was this helpful?