CommandsDomains

Domains

Manage custom domains for your Skytells apps from the CLI.

Custom domains let you serve your Skytells apps under your own hostname. The CLI provides commands to list, attach, and remove domains from apps in the linked project.

Commands on this page

CommandDescription
skytells domains lsList all custom domains
skytells domains addAttach a custom domain to an app
skytells domains rmRemove a domain

skytells domains ls

Lists all custom domains configured in the linked project, with their associated apps and verification status.

Syntax

skytells domains ls [--json]

Example

skytells domains ls
┌────────────┬─────────────────────┬────────────┬───────────────┐
│ ID         │ Domain              │ App        │ Status        │
├────────────┼─────────────────────┼────────────┼───────────────┤
│ dom_abc001 │ api.example.com     │ app_abc123 │ verified      │
│ dom_abc002 │ www.example.com     │ app_def456 │ pending       │
└────────────┴─────────────────────┴────────────┴───────────────┘
# List as JSON
skytells domains ls --json

# Find unverified domains
skytells domains ls --json | jq -r '.[] | select(.status != "verified") | .domain'

skytells domains add

Attaches a custom domain to an app. After adding, Skytells provides the DNS records you must configure at your registrar to verify ownership.

Syntax

skytells domains add <domain> [--app <id>] [--json]

Arguments

ArgumentDescription
domainThe fully qualified domain name to add (e.g. api.example.com).

Flags

FlagDescription
--app <id>The app to attach the domain to.
--jsonOutput DNS verification instructions as JSON.

Example

skytells domains add api.example.com --app app_abc123

Example output:

✔ Domain added: api.example.com

  To verify ownership, add the following DNS record:

  Type:   CNAME
  Name:   api
  Value:  ingress.skytells.ai

  SSL will be provisioned automatically after DNS propagates (up to 48 hours).

skytells domains rm

Removes a custom domain from an app. The domain stops serving traffic immediately.

Syntax

skytells domains rm <id> [-f] [--json]

Arguments

ArgumentDescription
idThe domain ID to remove (begins with dom_).

Flags

FlagDescription
-fSkip the confirmation prompt.

Example

# Remove with confirmation
skytells domains rm dom_abc001

# Remove without prompt (scripts/CI)
skytells domains rm dom_abc001 -f

Full domain setup flow

Add a domain to your app

skytells domains add api.example.com --app app_abc123

Configure DNS at your registrar

Add the CNAME record shown in the output. For an apex domain (example.com), use an ALIAS or ANAME record if your registrar supports it.

Verify DNS propagation

Check that your record has propagated:

dig api.example.com CNAME +short
# Should return: ingress.skytells.ai

Confirm domain status

skytells domains ls --json | jq -r '.[] | select(.domain == "api.example.com") | .status'
# Expected: "verified"

How is this guide?

On this page