> ## 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.

# Generated Content

> AI-generated community content entity

AI-generated community content entity

Represents AI-generated content items for community engagement.

## Fields

### Core Fields

| Field            | Type   | Required | Description                    |
| ---------------- | ------ | -------- | ------------------------------ |
| id               | UUID   | Auto     | Primary key                    |
| categoryId       | UUID   | Yes      | FK to InterestCategory         |
| title            | string | Yes      | Content title                  |
| body             | text   | Yes      | Content body (markdown)        |
| contentType      | enum   | Yes      | article, discussion, poll, tip |
| engagementPrompt | string | No       | Question to encourage comments |
| featuredImage    | string | No       | Header image URL               |

### Status Fields

| Field           | Type     | Required | Description                                      |
| --------------- | -------- | -------- | ------------------------------------------------ |
| status          | enum     | Yes      | pending, approved, rejected, published, archived |
| reviewedBy      | UUID     | No       | Admin who reviewed                               |
| reviewedAt      | datetime | No       | Review timestamp                                 |
| rejectionReason | text     | No       | Reason if rejected                               |

### Publication Fields

| Field        | Type     | Required | Description            |
| ------------ | -------- | -------- | ---------------------- |
| publishedAt  | datetime | No       | Publication timestamp  |
| scheduledFor | datetime | No       | Scheduled publish time |
| expiresAt    | datetime | No       | Auto-archive date      |

### Engagement Metrics

| Field           | Type    | Required | Description         |
| --------------- | ------- | -------- | ------------------- |
| viewCount       | integer | Auto     | Total views         |
| uniqueViewCount | integer | Auto     | Unique member views |
| commentCount    | integer | Auto     | Total comments      |
| reactionCount   | integer | Auto     | Total reactions     |
| shareCount      | integer | Auto     | Total shares        |
| bookmarkCount   | integer | Auto     | Total bookmarks     |

### AI Metadata

| Field            | Type     | Required | Description               |
| ---------------- | -------- | -------- | ------------------------- |
| aiModel          | string   | Auto     | Model used for generation |
| generationPrompt | text     | No       | Prompt used               |
| generatedAt      | datetime | Auto     | Generation timestamp      |

### System Fields

| Field     | Type     | Required | Description        |
| --------- | -------- | -------- | ------------------ |
| createdAt | datetime | Auto     | Creation timestamp |
| updatedAt | datetime | Auto     | Last update        |

## Relationships

| Relation    | Type      | Target Entity     |
| ----------- | --------- | ----------------- |
| category    | ManyToOne | InterestCategory  |
| comments    | OneToMany | ContentComment    |
| reactions   | OneToMany | ContentReaction   |
| nominations | OneToMany | ContentNomination |

## Business Rules

* Content must be approved before publication
* Published content cannot be edited (create new version)
* Archived content hidden from feeds but preserved
* AI-generated flag always visible to members

## Features

### Generated Content

#### Acceptance Criteria

##### Frontend

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

##### Backend / API

* [ ] CRUD operations exist for `Generated Content` (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 `Generated Content`.

##### Error Handling

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