# App and deployment fields

> Every field the Apps API returns for an app, a deployment, a build, a replica, a domain and an environment variable.

Source: https://docs.coritan.com/apps/fields/

This page lists the fields of each object the Apps API returns. Times are in UTC, written as in `2026-09-26T10:05:00Z`, and a field with nothing to show is `null`.

## App

| Field | Meaning |
| --- | --- |
| `uuid` | The app's ID, used in every path. |
| `name` | What you call the app. |
| `slug` | Its name on the platform, which its platform name is made from. |
| `status` | `active` or `suspended` ([A suspended app](/apps/app-settings/#a-suspended-app)). |
| `owner` | `{"type": "user"}` for your own app, `{"type": "organization"}` for an organization's. |
| `source_type` | `git` or `image`. |
| `repo_url`, `repo_branch`, `repo_subdir` | A git app's repository address, branch and directory. `repo_subdir` is `null` for the root of the repository. |
| `repo_token_set` | `true` when the app holds an access token for its repository. |
| `repo_token_hint` | The token's last four characters, or `null` when there is none or it is shorter than eight characters. |
| `image_ref` | The image an app that runs an image deploys. |
| `framework`, `install_command`, `build_command`, `start_command`, `dockerfile_path` | How a git app builds and starts ([Builds](/apps/how-apps-work/#builds)). |
| `port` | The port saved with the app. Replicas listen on the port in their `PORT` variable. |
| `health_check_path` | The path each health check requests. |
| `instance_size` | `small`, `medium` or `large`. |
| `memory_mb`, `cpu_percent`, `disk_mb` | What each replica gets from its size. `cpu_percent` is 100 for each vCPU. |
| `regions` | `["*"]` for every region that can run apps, or the region codes the app runs in. |
| `min_replicas` | The replicas that run in each region. |
| `max_replicas` | Saved with the app. The number of replicas does not grow above `min_replicas`. |
| `url` | `https://` and the platform name, or `null` when the app has none. |
| `platform_hostname` | The platform name, such as `web-shop.apps.example.net`. |
| `domains_count` | How many domains the app has, its platform name included. |
| `current_deployment` | The deployment that serves the app, without its list of replicas, or `null` until one has gone live. |
| `replicas` | Counts for the current deployment's replicas ([Replica counts](#replica-counts)). |
| `webhook` | For a git app, the push webhook: its `url`, `secret_set`, and `secret_hint` with the secret's last four characters. `null` for an app that runs an image. |
| `created_at`, `updated_at` | When the app was created and last changed. |

## Deployment

| Field | Meaning |
| --- | --- |
| `uuid` | The deployment's ID. |
| `status` | Where it is ([Status words](#status-words)). |
| `source` | `git`, `image`, `redeploy` or `rollback`. |
| `trigger` | What started it: `manual`, `push` or `rollback`. |
| `actor_type` | Who started it: `user`, `staff`, `admin` or `webhook` ([Read a deployment through the API](/apps/read-a-deployment/#read-a-deployment-through-the-api)). |
| `git_ref` | The branch or ref a git deployment fetches. |
| `git_sha` | The commit it builds. For a deployment of a branch, it is filled in when the build succeeds. |
| `commit_message`, `commit_author` | The commit's message and author, for a deployment that a push started and for a redeploy or rollback of one. |
| `image_ref` | The image the deployment runs. For a git deployment, it is filled in once the build has pushed the image. |
| `image_digest` | The image's digest, once known. |
| `regions` | The regions its replicas run in, filled in once it starts deploying. |
| `error` | Why it failed or was cancelled, or which regions it went live without. |
| `is_current` | `true` for the deployment that serves the app. |
| `in_flight` | `true` while it is `queued`, `building` or `deploying`. |
| `can_rollback` | `true` when you can roll back to it: it went live once, has an image, and is not the current deployment. |
| `replicas` | Counts for its replicas ([Replica counts](#replica-counts)). |
| `build` | Its build ([Build](#build)), or `null` for a deployment with no build: an image deployment, a redeploy or a rollback. |
| `ready_at`, `promoted_at` | When it went live. |
| `finished_at` | When it went live, failed or was cancelled. |
| `created_at`, `updated_at` | When it was created and last changed. |
| `replica_list` | Each of its replicas ([Replica](#replica)). Only the request for one deployment returns it. |

## Replica counts

| Field | Meaning |
| --- | --- |
| `healthy` | Replicas passing their health checks. |
| `unhealthy` | Replicas that failed their most recent health checks. |
| `starting` | Replicas that are `provisioning` or `starting`. |
| `total` | The three above together. |

## Build

| Field | Meaning |
| --- | --- |
| `uuid` | The build's ID. |
| `status` | `queued`, `running`, `succeeded`, `failed` or `canceled`. |
| `strategy` | `dockerfile` or `railpack`, once the build has chosen ([Builds](/apps/how-apps-work/#builds)). |
| `error` | Why it failed or was cancelled. |
| `attempts` | How many times it has started. A build that stops reporting starts once more. |
| `log_bytes` | How much log it has written in all ([The build log](/apps/read-a-deployment/#the-build-log)). |
| `started_at`, `finished_at`, `created_at` | When it started, ended and was queued. |

## Replica

| Field | Meaning |
| --- | --- |
| `location` | The code of its region, such as `fra`. |
| `state` | Where it is ([Replicas](/apps/read-a-deployment/#replicas)). |
| `health_failures` | How many health checks it has failed in a row. |
| `last_health_at` | When it was last checked. |
| `last_error` | What last went wrong, such as `Health check on /healthz: HTTP 500`. |
| `created_at` | When it was placed. |
| `drained_at` | When it stopped taking requests. |

## Domain

| Field | Meaning |
| --- | --- |
| `hostname` | The name, such as `www.example.com`. |
| `kind` | `platform` for the platform name, `custom` for your own domain. |
| `verified`, `verified_at` | Whether the domain is verified, and when. |
| `url` | `https://` and the hostname, once verified. |
| `certificate` | `none`, `pending` or `issued` ([Certificates](/apps/custom-domains/#certificates)). |
| `verification` | The TXT record to publish, as `type`, `name` and `value`, until the domain is verified. |
| `cname_target` | Where a custom domain points: the app's platform name. `null` for the platform name. |
| `created_at` | When it was added. |

## Environment variable

| Field | Meaning |
| --- | --- |
| `key` | The variable's name. |
| `secret` | `true` when its value is hidden in build logs ([Secret and plain values](/apps/environment-variables/#secret-and-plain-values)). |
| `target` | `both`, `build` or `runtime` ([Where a variable reaches](/apps/environment-variables/#where-a-variable-reaches)). |
| `value` | Always `null`. The API never returns a value. |
| `hint` | The value's last four characters, or `null` when it is shorter than eight characters. |
| `readable` | `false` when the platform cannot read the saved value, which then needs saving again. |
| `created_at`, `updated_at` | When it was created and last changed. |

## Status words

| Field | Words | In the dashboard |
| --- | --- | --- |
| App `status` | `active`, `suspended` | **Suspended**. An active app shows **Live**, **Not live**, **Failed**, **Not deployed** or the status of its deployment on the way ([Find your apps in the dashboard](/apps/#find-your-apps-in-the-dashboard)). |
| Deployment `status` | `queued`, `building`, `deploying`, `ready`, `failed`, `canceled`, `superseded` ([Deployments](/apps/how-apps-work/#deployments)) | **Queued**, **Building**, **Deploying**, **Ready**, **Failed**, **Cancelled**, **Superseded** |
| Build `status` | `queued`, `running`, `succeeded`, `failed`, `canceled` | `Waiting for a builder`, `Building`, `Built`, `Build failed`, `Cancelled` |
| Replica `state` | `provisioning`, `starting`, `healthy`, `unhealthy`, `draining`, `stopped`, `failed` ([Replicas](/apps/read-a-deployment/#replicas)) | **Provisioning**, **Starting**, **Healthy**, **Unhealthy**, **Draining**, **Stopped**, **Failed** |
| Domain `certificate` | `none`, `pending`, `issued` | `No certificate yet`, `Certificate on its way`, `Certificate issued` |
| Variable `target` | `both`, `build`, `runtime` | **Build and runtime**, **Build only**, **Runtime only** |

## Related

- [Apps](/apps/)
- [Apps limits](/apps/limits/)
- [Errors](/api/errors/)
