# Program

The Program object of the Kaabist API.

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | yes | pattern `^prg_[0-9a-hjkmnp-tv-z]{26}$` |
| `object` | `"program"` | yes |  |
| `name` | string | yes | pattern `^[a-z0-9][a-z0-9-]{1,62}$` |
| `description` | string or null | yes |  |
| `latest_version` | integer | yes | ≥ 0 |
| `aliases` | map of integer | yes |  |
| `canary` | object or null | yes |  |
| `canary.enabled` | boolean |  |  |
| `canary.cron` | string or null | yes | min length 1 |
| `canary.url` | string or null |  |  |
| `canary.alias` | string |  | pattern `^[a-z][a-z0-9-]{0,31}$` |
| `created_at` | string (date-time) | yes |  |
| `updated_at` | string (date-time) | yes |  |

## Example

```json
{
  "id": "prg_01j9zqk3q7m4n5p6r7s8t9v0wx",
  "object": "program",
  "name": "acme-report",
  "description": "Daily report export",
  "latest_version": 3,
  "aliases": {
    "latest": 3,
    "production": 2
  },
  "canary": {
    "enabled": true,
    "cron": "0 */6 * * *",
    "url": null
  },
  "created_at": "2026-09-18T10:00:00Z",
  "updated_at": "2026-09-18T10:00:00Z"
}
```
