List Object Documentation
The List object represents a structured, optionally nested collection of entities in Replyke. It supports custom names, hierarchical grouping, and user-defined organization of items.
Properties
Property | Type | Description |
---|---|---|
id | string | Unique identifier for the list (UUID). |
projectId | string | Identifier of the associated project (UUID). |
userId | string | Identifier of the user who created or owns the list (UUID). |
parentId | string | null | Optional parent list ID (UUID) if this is a nested list. |
name | string | Human-readable name of the list. |
isRoot | boolean | Indicates if this is the root list for the user. Only one root list per user. |
entityIds | string[] | Array of entity IDs (UUIDs). Each ID must be unique within the list. |
createdAt | Date | Timestamp when the list was created. |
updatedAt | Date | Timestamp when the list was last updated. |
Constraints
- A user can have only one list where
isRoot = true
. This is enforced at the DB level. - The combination of
projectId
,parentId
, andname
must be unique. - The
entityIds
array must not contain duplicate values.
Example Usage
Basic List
{
"id": "list-123456",
"projectId": "project-xyz",
"userId": "user-789",
"name": "Favorite Articles",
"isRoot": true,
"entityIds": ["entity-111", "entity-222"],
"createdAt": "2024-02-14T12:34:56Z",
"updatedAt": "2024-02-15T14:20:00Z"
}
Nested List
{
"id": "list-7891011",
"projectId": "project-abc",
"userId": "user-222",
"parentId": "list-123456",
"name": "Advanced Topics",
"isRoot": false,
"entityIds": ["entity-333"],
"createdAt": "2024-02-14T13:45:00Z",
"updatedAt": "2024-02-16T09:10:30Z"
}
Integration Notes
- Lists are hierarchical: a list can contain sub-lists via
parentId
. - Used for favorites, collections, user-curated content, or tagging functionality.
- The root list (
isRoot = true
) can act as a user’s primary feed or saved items view.