Command line interface
CLI PyPI GitHub

Lampion CLI

Manage your PostgreSQL databases from the terminal. 40+ commands, output formatted with Rich, JSON for automation.

Installation

pip
$ pip install lampion-cli
uv
$ uv pip install lampion-cli

Configuration

shell
$ export LAMPION_TOKEN=lmp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Optionnel :
$ export LAMPION_API_URL=https://api.lampion.cloud

Generate an API key in Settings > API Keys.

Quick start

terminal
# Créer un projet sur Scaleway Paris
$ lampion projects create my-app --region fr-par-1
✓ Project created: abc123 (fr-par-1)

# Lister les endpoints pour récupérer le connection string
$ lampion endpoints list abc123
┌──────────┬─────────┬──────────────────────────────────────────┐
│ ID       │ Status  │ Connection String                         │
├──────────┼─────────┼──────────────────────────────────────────┤
│ ep-abc   │ running │ postgresql://cloud_admin:[email protected]…  │
└──────────┴─────────┴──────────────────────────────────────────┘

# Exécuter du SQL
$ lampion sql abc123 ep-abc "SELECT count(*) FROM users"
┌─────────┐
│ count   │
├─────────┤
│ 42,847  │
└─────────┘

# Créer une branche, tester, supprimer
$ lampion branches create abc123 staging --parent abc123
✓ Branch created: stg-tid (staging)

$ lampion branches delete abc123 stg-tid
✓ Deleted

All commands

projects 4
lampion projects list List projects
lampion projects create my-app --region fr-par-1 Create a project
lampion projects get <id> Get project details
lampion projects delete <id> Delete a project
branches 6
lampion branches list <pid> List branches
lampion branches create <pid> dev --parent <pid> Create a CoW branch
lampion branches reset <pid> <bid> Reset to parent
lampion branches merge <pid> <bid> --dry-run Merge the schema (preview)
lampion branches promote <pid> <bid> Promote to main
lampion branches delete <pid> <bid> Delete a branch
endpoints 3
lampion endpoints list <pid> List computes
lampion endpoints suspend <pid> <eid> Scale to zero
lampion endpoints resume <pid> <eid> Resume
sql & schema 2
lampion sql <pid> <eid> "SELECT ..." Run SQL
lampion schema <pid> --database postgres Introspect the schema
databases & roles 4
lampion databases list <pid> <eid> List databases
lampion databases create <pid> <eid> mydb Create a database
lampion roles list <pid> <eid> List roles
lampion roles create <pid> <eid> app_user Create a role
extensions 3
lampion extensions list <pid> <eid> List
lampion extensions install <pid> <eid> pgvector Install
lampion extensions uninstall <pid> <eid> pgvector Uninstall
monitoring 4
lampion metrics <pid> CPU, RAM, connections, cache
lampion slow-queries <pid> <eid> Top slow queries
lampion logs <pid> <eid> --lines 50 Tail PG logs
lampion usage <pid> Compute/storage usage
backups 3
lampion backups list <pid> List snapshots
lampion backups create <pid> <bid> "name" Create a snapshot
lampion backups restore <pid> <bkid> Restore
dump 1
lampion dump <pid> <eid> -o dump.sql pg_dump export
anon (PII masking) 4
lampion anon status <pid> <bid> Anonymization status
lampion anon enable <pid> <bid> Enable masking
lampion anon add-rule <pid> <bid> --table users --column email --function "anon.fake_email()" Add a rule
lampion anon disable <pid> <bid> Disable
security 4
lampion allowlist get <pid> <eid> IP allowlist
lampion allowlist set <pid> <eid> 1.2.3.4/32 Configure the allowlist
lampion permissions list <pid> <eid> Permissions by role
lampion permissions grant <pid> <eid> --role app --table users --privilege SELECT GRANT
compliance 1
lampion residency <pid> Data location

JSON output

Most list commands support --json for automation and scripts.

shell
$ lampion projects list --json
[{"id":"abc123","name":"my-app","region":"fr-par-1"}]

$ lampion projects list --json | jq '.[].id'
"abc123"

Regions

REGION PROVIDER LOCATION
fr-par-1 Scaleway Paris, France
fr-gra-1 OVHcloud Gravelines, France

pip install lampion-cli and you're all set.