Out Plane
app

app list

List the applications in a team.

read onlyrepeatable

The inventory of a team. Run it when you do not yet know what is there, or to find the applications that have not shipped in a while.

It reports configuration rather than reality: the instance count is the number that was asked for, not the number currently up. app instances answers the second question, and app get is where the address lives.

Usage

outplane app list [flags]

Flags

FlagTypeDescription
--searchstringFilter by name or display name. Applied locally: the API returns the full list.

The global flags apply as well.

Output

FieldTypeDescription
idstring
namestringImmutable internal name, used in URLs.
displayNamestringEditable label, may be empty.
statusstringEffective state: paused, ready, building, deploying, queued, failed, crashed, canceled. The field to branch on.
deploymentStatusstringLast deployment's own state, which pausing does not change.
pausedbool
instancesintConfigured replica count, 1 to 5. Unchanged by pausing.
sizestringInstance type code, e.g. op-20.
sourcestringWhere the image comes from: github, container-registry, or unknown:N for a provider this release predates.
lastDeployedAtstringWhen the last deployment started. RFC 3339, UTC.
updatedAtstringWhen the app's own record last changed, which a deployment does not touch. RFC 3339, UTC.

Examples

List the applications in the current team

outplane app list

List as JSON and pick out the names

outplane app list --json --fields name,status
{
  "items": [
    {
      "name": "checkout",
      "status": "ready"
    },
    {
      "name": "worker",
      "status": "paused"
    }
  ],
  "total": 2,
  "truncated": false
}

List the applications in a specific team

outplane app list --team acme

What to Know

  • The API returns every application in one response. There is no pagination, so total is the complete count and truncated is always false.
  • --search filters the response on the client. It does not reduce what is fetched.
  • A paused app reports status "paused", not the state of its last deployment. Filtering on status "ready" therefore never returns a stopped app; read deploymentStatus to see what it will return to.
  • status "ready" describes the last deployment, not a health check. An app can be ready and still be serving errors.
  • An unrecognised state decodes to "unknown:N", carrying the number the server sent. This is how a new platform state reaches an older CLI; treat it as unknown rather than as a failure.
  • This command reports no URL. A public address needs the app's port, which is a separate request per app, so listing does not fetch one. app get has it.
  • lastDeployedAt and updatedAt are different questions. The first is when the app last deployed; the second is when its own record last changed, which a deployment does not touch. Sort on the first to find what is stale.

Errors

Beyond 0 for success, this command exits with:

ExitKindMeaning
2usageInvalid arguments, unknown flag, or client-side validation failure.
3authNot authenticated, token revoked or expired, or forbidden for this team.
8upstreamThe Out Plane API returned a server error.

The code on the error object is one of context.no_team, auth.token_invalid. Branch on that, or on the exit status. The message is prose and changes.

On this page