---
title: "AppVersion"
description: "The `AppVersion` entity."
section: "Reference"
group: "Types"
order: 32
---

## Definition

```ts
interface AppVersion {
  id: string;
  appId: string;
  name: string;
  parentId: string | null;
  status: "pending" | "failed" | "ready";
  error: string | null;
  createdBy: string | null;
  createdAt: string;
  updatedAt: string;
}
```

## Fields

| Field       | Type                               | Notes                                                                          |
| ----------- | ---------------------------------- | ------------------------------------------------------------------------------ |
| `id`        | `string`                           | `readonly` `required`                                                          |
| `appId`     | `string`                           | `required` — App this version belongs to.                                      |
| `name`      | `string`                           | `required` — Version label (e.g. 'v1', 'release-candidate').                   |
| `parentId`  | `string \| null`                   | `required` — Version this one was forked from; null for the initial version.   |
| `status`    | `"pending" \| "failed" \| "ready"` | `required` — Lifecycle state (draft, building, ready, failed, etc.).           |
| `error`     | `string \| null`                   | `required` — Error message when status is 'failed', otherwise null.            |
| `createdBy` | `string \| null`                   | `required` — User who created the version; null for system-generated versions. |
| `createdAt` | `string`                           | `readonly` `required` — ISO-8601 timestamp of creation.                        |
| `updatedAt` | `string`                           | `readonly` `required` — ISO-8601 timestamp of the last update.                 |
