Projects
Project management is currently handled via Next.js server actions, not REST endpoints.
Server Actions
| Action | File | Description |
|---|---|---|
createProject | lib/actions/create-project.ts | Create a new project |
createProject
typescript
const result = await createProject({
name: 'My Project',
code: 'PROJ-001',
description: 'Optional description',
starts_on: '2026-01-01',
ends_on: '2026-12-31',
})
// result: { project_id: '...' } or { error: '...' }Validation
- Name: 3–120 characters
- Code: 2–20 characters, must be unique per organisation, auto-uppercased
- License check:
requireLicensePermission(orgId, 'create_project')before insert
Future
A REST endpoint for projects is planned when external API access is introduced.