General
Log in to Latitude.sh
Opens your browser for browser-assisted authentication. To authenticate with an API key instead, pass it as an argument:
lsh login --with-token <API_KEY>
Update the CLI to latest version
Generate a shell completion script
lsh completion <bash|zsh|fish|powershell>
Api Keys
Create an API Key
Delete an API Key
List API Keys
Update an API Key
Auth
Show the current authentication context
Shows the active profile’s email, team and API key, plus every other stored profile. Pass --check to validate each stored token against the API.
Log out
Removes the stored profile and, for browser logins, revokes the API key. Pass --profile <NAME> to log out a specific profile, or --all to log out every stored profile.
Events
List team audit events
Lists the team’s audit events, newest first, with automatic pagination. Filter the results with --author (ID or email), --project (ID or slug), --target-type (repeatable, e.g. servers, projects, virtual_networks), --target-id, and --action (e.g. servers.create).
Use --since and --until to scope the time range. Both accept either a relative duration looking back from now (24h, 7d, 2w) or an ISO date (2026-06-01):
lsh events list --since 24h --target-type servers
lsh events list --author user@example.com --action servers.create
lsh events list --project my-project --since 2026-06-01
Pass --follow (or -f) to stream new events in real time instead of printing a one-time list. The command keeps polling and prints each new event as it happens until you stop it with Ctrl+C. Combine it with the usual filters to watch a single resource:
lsh events list --follow --target-id sv_xxxx
--follow streams plain text only: -o json, -o yaml, and -o csv are ignored with a warning, and --until is ignored because the stream has no end. Following starts from the current moment unless you pass --since to replay recent history before streaming.
IPs
List IP addresses of a project
lsh ips list --project <PROJECT_ID_OR_SLUG>
Pass --all-projects to list IPs across every project you have access to. Filter with --server, --family, --type and --location.
Retrieve an IP address
Operating Systems
List operating systems available for deployment
lsh operating-systems list
os is available as an alias: lsh os list.
Plans
Retrieve information of a plan
List available plans
List bandwidth package plans
Show per-location plan availability and stock level
Profiles
The CLI stores one profile per team you are logged into. The active profile defines the team your commands run against.
List stored profiles
Switch the active profile
lsh profile use <PROFILE_NAME_OR_TEAM_SLUG>
You can also set the profile for a single command with the global --profile flag or the LSH_PROFILE environment variable.
Projects
Create a project
Delete a project
Retrieve a project
List projects
Update a project
Regions
List available regions
Servers
Deploy a bare metal server
Delete a server
Get information on a server
List servers
Reinstall a server
Wait for a server to finish provisioning
By default, servers create and servers reinstall return as soon as the request is accepted. Pass --wait to block until the server settles into a stable state (on or off) instead, which is useful in scripts and CI pipelines where the next step depends on the server being ready.
lsh servers create --project <PROJECT> --site <LOCATION> --plan <PLAN> --operating_system <OS> --hostname <HOSTNAME> --wait
The wait fails fast if the server enters a failed deployment state, and --timeout (default 10m) caps how long it waits — on timeout the command exits with a non-zero status. Progress is written to stderr while the final server state goes to stdout, so -o json, -o yaml, and -o csv are still honored.
lsh servers create ... --wait --timeout 30s
Schedule deletion
lsh servers schedule-deletion
Unschedule deletion
lsh servers unschedule-deletion
Update a server
Ssh Keys
Create an SSH key
Delete an SSH key
Retrieve an SSH key
List SSH keys
Update an SSH key
Create a Tag
Delete Tag
List all Tags
Update Tag
The lsh tags commands manage the tags themselves. To attach a tag to a resource, pass --tags to that resource’s own update command:
lsh servers update --id <SERVER_ID> --tags <TAG_ID>
lsh projects update --id <PROJECT_ID_OR_SLUG> --tags <TAG_ID>
Traffic
Show traffic consumption
lsh traffic list --project <PROJECT_ID_OR_SLUG>
Shows bandwidth consumption per region for a project, mirroring the dashboard: inbound and outbound totals, the quota, and how much of it has been used. Units follow the project’s billing method — TB for volume billing, Mbps for 95th-percentile billing. A project is required; in an interactive terminal you’re prompted to pick one when --project is omitted.
The range defaults to the last 7 days. Override it with --since and --until, which accept a duration (24h, 7d, 2w) or an ISO date (2026-06-01). The range applies to consumption only — the quota column always reflects the current limit. Pass --daily for the day-by-day breakdown behind the dashboard chart.
lsh traffic list --project my-project --daily
lsh traffic list --project my-project --since 30d
lsh traffic list --project my-project --since 2026-05-01 --until 2026-06-01
Show traffic quota
Shows the traffic quota of each project, per region. Pass --project to filter to a single project.
Teams
Team and member operations are interactive: when you omit an argument or
required flag, the CLI prompts you for it in the terminal.
List your teams
Create a team
lsh teams create --name <NAME> --currency <USD_OR_BRL>
Update a team
lsh teams update <TEAM_ID> --name <NAME>
List members of the current team
Invite a user to the current team
lsh teams members add --email <EMAIL> --role <ROLE>
Roles: owner, administrator, collaborator or billing.
Remove a user from the current team
lsh teams members remove <USER_ID>
Virtual Networks
Creates a virtual network
lsh virtual_networks create
Delete a virtual network
lsh virtual_networks destroy
Retrieve a virtual network
List virtual networks
lsh virtual_networks list
Update a virtual network
lsh virtual_networks update
Virtual Networks Assignments
Assign a server to a virtual network
lsh assignments virtual_networks create
Unassign a server from a virtual network
lsh assignments virtual_networks destroy
List assignments
lsh assignments virtual_networks list
Help
- Use
lsh -h to get a list of all available commands
- To see how to use a command, use
lsh <resource> -h
The CLI also ships built-in help topics with longer guides:
lsh authentication # How to sign in: tokens, profiles, env vars
lsh profiles # How profiles map to teams
lsh automation # Run lsh non-interactively (CI, scripts, AI agents)
lsh output-formats # Render results as table or JSON