Project
The Project object represents a logical grouping of resources, deployments, and configurations within an organization. Projects enable multi-environment management (e.g., production, staging, development).
Schema: ProjectSchema
Source: src/core/account/project.schema.ts
Attributes​
| Attribute | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | — | — | Unique identifier for the project |
name | string | Yes | — | Project name (minimum 2 characters) |
regionId | string | No | — | Travnex region ID (can inherit from organization) |
description | string | No | — | Description of the project's purpose |
compliance | array<string> | No | — | Compliance standards (e.g., ["SOC2", "HIPAA"]) |
isDefault | boolean | — | — | Whether this is the default project (system-managed) |
serviceStatus | enum | No | ACTIVE | Current service status. One of ACTIVE, SUSPENDED, or INACTIVE. |
metadata | object | No | — | Custom key-value metadata |
createdAt | number | — | — | Unix timestamp when created |
updatedAt | number | — | — | Unix timestamp when last updated |
Example​
{
"id": "proj_abc123",
"name": "Production Environment",
"regionId": "us-west-2",
"description": "Main production deployment project",
"compliance": ["SOC2", "HIPAA"],
"isDefault": true,
"serviceStatus": "ACTIVE",
"metadata": {
"environment": "production"
},
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}
Create / Update Schemas​
| Schema | Description | Omits |
|---|---|---|
CreateProjectSchema | For creating new projects | id, createdAt, updatedAt, isDefault |
UpdateProjectSchema | For partial updates | All fields optional except id |
Create Example​
const newProject: CreateProject = {
name: "Development Environment",
description: "Development and testing project"
};
Update Example​
const updateProject: UpdateProject = {
id: "proj_abc123",
name: "Production Environment v2",
description: "Updated production deployment"
};