> ## Documentation Index
> Fetch the complete documentation index at: https://memberpulseptyltd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# CPD Category

> CPD category entity with requirements

CPD category entity with requirements

Defines CPD categories and annual requirements.

## Fields

### Core Fields

| Field                    | Type    | Required | Description            |
| ------------------------ | ------- | -------- | ---------------------- |
| id                       | UUID    | Auto     | Primary key            |
| name                     | string  | Yes      | Category name (unique) |
| description              | text    | No       | Category description   |
| requiredPointsPerYear    | decimal | Yes      | Annual requirement     |
| requiredForCertification | boolean | Yes      | Mandatory for cert     |

### System Fields

| Field        | Type     | Required | Description                     |
| ------------ | -------- | -------- | ------------------------------- |
| active       | boolean  | Yes      | Category active (default: true) |
| displayOrder | integer  | No       | Sort order                      |
| createdAt    | datetime | Auto     | Creation timestamp              |
| updatedAt    | datetime | Auto     | Last update                     |

## Relationships

| Relation   | Type      | Target Entity |
| ---------- | --------- | ------------- |
| cpdRecords | OneToMany | CpdRecord     |

## Validation Rules

* Name must be unique per organization
* Required points must be > 0 and divisible by 0.5
* At least one category must have requiredForCertification = true
* Cannot delete category with existing records

## Features

### CPD Category

#### Acceptance Criteria

##### Frontend

* [ ] Admin/client UI can view and manage `CPD Category` records where applicable.

##### Backend / API

* [ ] CRUD operations exist for `CPD Category` (create, read, update, delete/archive).

##### Permissions

* [ ] Access is restricted to appropriate roles (tenant-scoped).

##### Business Rules

* [ ] Fields and relationships documented on this page are enforced for `CPD Category`.

##### Error Handling

* [ ] Invalid payloads return field-level validation errors.
