Use when running Replicated CLI commands to manage apps, channels, releases, customers, or making direct Vendor API calls with `replicated api`
Pass --token $REPLICATED_API_TOKEN to every command, or configure a profile. The env var does not auto-load — pass it explicitly.
replicated <command> --token $REPLICATED_API_TOKEN --app <app-slug>
Global flags available on all commands:
| Flag | Description |
|---|---|
--token string | Vendor API token |
--app string | App slug or ID |
--profile string | Named auth profile |
--debug | Debug output |
replicated app ls --token $REPLICATED_API_TOKEN
replicated app create --name "My App" --token $REPLICATED_API_TOKEN
# List channels
replicated channel ls --token $REPLICATED_API_TOKEN --app <slug>
# Inspect a channel (get channel ID, current release, etc.)
replicated channel inspect <channel-id> --token $REPLICATED_API_TOKEN --app <slug>
# See docs/testing-ec3.md for the full workflow. Summary:
# 1. Package the main chart
helm dependency update deploy/charts
helm package deploy/charts -d deploy/manifests --version "$CHART_VERSION"
# 2. Pull EC extension charts (cert-manager, traefik) — required for EC releases
helm repo add traefik https://helm.traefik.io/traefik
helm pull traefik/traefik --version 39.0.7 -d deploy/manifests
helm repo add jetstack https://charts.jetstack.io
helm pull jetstack/cert-manager --version v1.17.2 -d deploy/manifests
# 3. Create and promote the release
replicated release create --yaml-dir deploy/manifests --version "$RELEASE_VERSION" --promote Unstable --token $REPLICATED_API_TOKEN --app playball-exe
# 4. Clean up
rm deploy/manifests/*.tgz
# Promote an existing release sequence to a channel
replicated release promote <sequence> <channel-id> --version 1.0.0 --token $REPLICATED_API_TOKEN --app <slug>
# List releases
replicated release ls --token $REPLICATED_API_TOKEN --app <slug>
release create key flags:
| Flag | Description |
|---|---|
--yaml-dir string | Directory of manifest YAMLs |
--version string | Version label |
--promote string | Channel name or ID to promote to |
--ensure-channel | Create channel if it doesn't exist |
--lint | Lint manifests before creating |
--required | Mark release as required (blocks skip) |
--release-notes string | Markdown release notes |
# Create a customer
replicated customer create --name "Acme Inc" --channel stable --type trial --expires-in 720h \
--token $REPLICATED_API_TOKEN --app <slug>
# List customers
replicated customer ls --token $REPLICATED_API_TOKEN --app <slug>
# Download a license file
replicated customer download-license --customer <id> --token $REPLICATED_API_TOKEN --app <slug>
License types: dev, trial, paid, community, test
Feature flags: --airgap, --snapshot, --helm-install, --kots-install, --embedded-cluster-download, and more.
replicated registry ls --token $REPLICATED_API_TOKEN --app <slug>
Use replicated api to call any Vendor API endpoint directly:
# GET
replicated api get /v3/apps --token $REPLICATED_API_TOKEN
# POST — create an app
replicated api post /v3/app --token $REPLICATED_API_TOKEN \
--body '{"name":"My App"}'
# PATCH / PUT
replicated api patch /v3/app/<app-id> --token $REPLICATED_API_TOKEN \
--body '{"name":"New Name"}'
Base URL is implied — pass only the path starting with /v3/....
API reference: https://replicated-vendor-api.readme.io/reference/createapp
Common endpoints:
| Method | Path | Description |
|---|---|---|
| GET | /v3/apps | List all apps |
| POST | /v3/app | Create an app |
| GET | /v3/app/<id>/channels | List channels |
| GET | /v3/app/<id>/releases | List releases |
| POST | /v3/app/<id>/release | Create a release |
helm dependency update + helm package before release create, and also helm pull any EC extension charts (cert-manager, traefik). See docs/testing-ec3.md for the full workflow. Without these, the release will fail with "failed to find chart for ...".--token — the CLI will fail with an auth error; always pass it explicitly--yaml instead of --yaml-dir for multi-file manifestsrelease promote — it requires the channel ID, not name (use channel ls to find it)channel inspect <id> first to check the current version, then use a version string that is strictly greater. Example: if current is 2026.99.2-foo, use 2026.99.3 or higher.