Skip to content

sky status

Display the current developer session, project API key, linked project, billing tier, and usage metrics in a single view.

Synopsis

bash
sky status [--format <table|json|plain>]

Description

sky status shows:

  • Auth - which credential serves each role. The ACCOUNT OPS row shows the credential used for account and developer commands, and the PROJECT OPS row shows the credential used for project data commands. Account ops always use your login. Project ops prefer an API key and fall back to your login.
  • Login - token validity, token source, account name, email, account route identifier, subscription tier, project usage, API request usage, and Stored Users usage.
  • API key - API key validity, key source, key metadata, and linked project.

The command performs network calls in parallel to fetch account info, API key info, and billing status. If no token is stored, login fields show dashes. If no API key is set, API key fields show dashes. Usage rows (PROJECTS, API REQUESTS, STORED USERS) appear only when billing data is successfully fetched. The API URL shows on a single line at the end.

Output

Table output:

text
 Auth
   ACCOUNT OPS    login · Jane Smith
   PROJECT OPS    API key (.env.local) · sky_abc123...

 Login
   TOKEN          eyJhbGciOi...
   STATUS         valid (expires in 2h 30m)
   LOADED FROM    /home/user/.config/skystate/token.json
   CREATED        2026-03-15 10:30 UTC
   ACCOUNT        Jane Smith
   ACCOUNT ID     acc_abc123
   EMAIL          jane@example.com
   TIER           hobby
   PROJECTS       4 / 7
   API REQUESTS   7,432 / 250,000 (resets Apr 1)
   STORED USERS   128 / 1,000 (0.3 MB)

 API key
   KEY            sky_abc123...
   STATUS         valid
   LOADED FROM    .env.local
   CREATED        2026-03-10
   EXPIRES        -
   PROJECT        my-app

 API URL          https://api.skystate.io

JSON output is a flat object:

json
{
  "auth_status": "ok",
  "token": "valid (expires in 2h 30m)",
  "token_prefix": "eyJhbGciOi...",
  "token_loaded_from": "/home/user/.config/skystate/token.json",
  "created": "2026-03-15 10:30 UTC",
  "account": "Jane Smith",
  "account_id": "acc_abc123",
  "email": "jane@example.com",
  "tier": "hobby",
  "api_key": "sky_abc123...",
  "key_status": "valid",
  "key_created": "2026-03-10T00:00:00Z",
  "key_expires": null,
  "key_loaded_from": ".env.local",
  "project": "my-app",
  "project_name": "My App",
  "api_url": "https://api.skystate.io",
  "account_ops": "login · Jane Smith",
  "project_ops": "API key (.env.local) · sky_abc123...",
  "projects_count": "4",
  "projects_limit": "7",
  "api_requests_count": "7432",
  "api_requests_limit": "250000",
  "api_requests_reset": "2026-04-01T00:00:00Z",
  "endUsersCount": "128",
  "endUsersLimit": "1000",
  "endUsersTotalSizeBytes": "300000"
}

Billing And Usage

There is no sky billing command. Billing is managed in the SkyState console, and CLI billing visibility comes from sky status.

When a developer token is present, sky status calls /v1/billing/status and renders:

  • project count and project limit
  • monthly API request count, limit, and reset date
  • Stored Users count, limit, and total stored size when the API returns that usage row
  • subscription tier on the account row

Use the console for subscription upgrades, invoices, billing portal access, and tier changes.

Token States

StateMeaning
validToken is present and the server confirmed it
valid (expires in ...)Token verified with time until expiry
unverifiedToken present but the server could not be reached to verify
unverified (expires in ...)Unverified, with JWT-decoded expiry
expiredToken is present but has expired
auth_failedToken was rejected by the server
no tokenTOKEN and STATUS display -