📐 Chat schemas
Schemas define the public Chat request contracts. Each source export has a field-level summary and the complete source definition. In field tables, Body means the application/json request body declared by the exported schema.
Inventory
| Export | Request location | Contract |
|---|---|---|
channelIdPathParameter | Path | Required string channelId. |
ChatChannelIcon | N/A | Stored icon metadata: objectId and MIME type. |
channelIdQueryParameter | Query | Required string channelId. |
chatChannelSchema | N/A | Closed object with optional name, ownerId, and nullable icon. |
createChatChannelSchema | Body | Required name and ownerId; optional nullable icon. |
updateChatChannelSchema | Path, body | Required channelId; body permits optional name and nullable icon. |
getChatChannelSchema | Path | Required channelId. |
deleteChatChannelSchema | Path | Required channelId. |
findChatChannelsSchema | Query | Optional name, ownerId, and shared pagination fields. |
getChannelMessagesSchema | Path, Query | Required channelId and optional shared pagination fields. |
chatMessageSchema | N/A | Closed object with optional content, senderId, and title. |
createChatMessageAttachmentSchema | Body | Required UUID objectId and string type. |
ChatMessageAttachment | N/A | Stored attachment metadata: objectId and type. |
NormalizedChatMessageAttachment | N/A | Public attachment shape: signed url and type. |
createChatMessageSchema | Body | Required content, senderId, and channelId; optional title. |
updateChatMessageSchema | Path, body | Required messageId; optional content, senderId, and title. |
getChatMessageSchema | Path | Required messageId. |
deleteChatMessageSchema | Path | Required messageId. |
findChatMessagesSchema | Query | Required channelId; optional message filters and pagination. |
deleteChatMessageAttachmentSchema | Path | Required messageId and attachmentId. |
streamChatMessagesSchema | Query | Required channelId. |
chatMessageTemplateSchema | N/A | Closed object with optional string content and title. |
createChatMessageTemplateSchema | Body | Required content and title; optional organizationId. |
getChatMessageTemplateSchema | Path | Required messageTemplateId. |
updateChatMessageTemplateSchema | Path, body | Required template ID; optional content and title. |
deleteChatMessageTemplateSchema | Path | Required messageTemplateId. |
findChatMessageTemplatesSchema | Query | Shared pagination fields only. |
findChatMessageTemplatesForOrganizationSchema | Path, Query | Required organizationId and shared pagination fields. |
chatChannelReadStateSchema | N/A | Closed object with identityId and lastReadMessageId fields. |
upsertChatChannelReadStateSchema | Path, body | Required channelId, identityId, and lastReadMessageId. |
chatSubscriptionSchema | N/A | Closed subscription object with approval, channel, permissions, time, and identity fields. |
createChatSubscriptionSchema | Body | Required channelId and subscribedId; other subscription fields optional. |
getChatSubscriptionSchema | Path | Required subscriptionId. |
deleteChatSubscriptionSchema | Path | Required subscriptionId. |
findChatSubscriptionsSchema | Query | Optional subscription filters and shared pagination fields. |
Details
channelIdPathParameter
Definition
Required string channelId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
Used by route: getChatChannelRoute, updateChatChannelRoute, deleteChatChannelRoute, getChannelMessagesRoute, and upsertChatChannelReadStateRoute. Used by feature: getChannelFeature, updateChannelFeature, deleteChannelFeature, getChannelMessagesFeature, and upsertChatChannelReadStateFeature.View complete source
ChatChannelIcon
Definition
Stored icon metadata: objectId and MIME type.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | objectId | String; the request schema requires UUID format. | Yes | — |
| N/A | type | String, normally a MIME type. | Yes | — |
Used by route: Its JSON Schema counterpart is accepted by createChatChannelRoute and updateChatChannelRoute. Used by feature: createChannelFeature and updateChannelFeature.View complete source
channelIdQueryParameter
Definition
Required string channelId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | channelId | String. | Yes | — |
Used by route: streamChatMessagesRoute. Used by feature: streamChatMessagesFeature.View complete source
chatChannelSchema
Definition
Closed object with optional name, ownerId, and nullable icon.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | icon | null or closed { objectId: UUID string, type: string }. | No | — |
| N/A | name | String. | No | — |
| N/A | ownerId | String. | No | — |
Used by route: Spread into createChatChannelSchema. Used by feature: createChannelFeature; the update schema duplicates the permitted update subset.View complete source
createChatChannelSchema
Definition
Required name and ownerId; optional nullable icon.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Body | name | String. | Yes | — |
| Body | ownerId | String. | Yes | — |
| Body | icon | null or closed { objectId: UUID string, type: string }. | No | — |
Used by route: createChatChannelRoute via createChannelFeature
Used by feature: createChannelFeatureView complete source
updateChatChannelSchema
Definition
Required channelId; body permits optional name and nullable icon.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
| Body | name | String. | No | — |
| Body | icon | null or closed { objectId: UUID string, type: string }. | No | — |
Used by route: updateChatChannelRoute via updateChannelFeature
Used by feature: updateChannelFeatureView complete source
getChatChannelSchema
Definition
Required channelId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
Used by route: getChatChannelRoute via getChannelFeature
Used by feature: getChannelFeatureView complete source
deleteChatChannelSchema
Definition
Required channelId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
Used by route: deleteChatChannelRoute via deleteChannelFeature
Used by feature: deleteChannelFeatureView complete source
findChatChannelsSchema
Definition
Optional name, ownerId, and shared pagination fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | name | String filter. | No | — |
| Query | ownerId | String filter. | No | — |
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
Used by route: findChatChannelsRoute via findChannelsFeature
Used by feature: findChannelsFeatureView complete source
getChannelMessagesSchema
Definition
Required channelId and optional shared pagination fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
Used by route: getChannelMessagesRoute via getChannelMessagesFeature
Used by feature: getChannelMessagesFeatureView complete source
chatMessageSchema
Definition
Closed object with optional content, senderId, and title.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | content | String. | No | — |
| N/A | senderId | String. | No | — |
| N/A | title | String. | No | — |
Used by route: Spread into createChatMessageSchema and updateChatMessageSchema. Used by feature: createChatMessageFeature and updateChatMessageFeature.View complete source
createChatMessageAttachmentSchema
Definition
Required UUID objectId and string type.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Body | objectId | UUID-formatted string. | Yes | — |
| Body | type | String. | Yes | — |
Used by route: createChatMessageAttachmentRoute via createChatMessageAttachmentFeature
Used by feature: createChatMessageAttachmentFeatureView complete source
ChatMessageAttachment
Definition
Stored attachment metadata: objectId and type.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | objectId | String. | Yes | — |
| N/A | type | String. | Yes | — |
Used by route: createChatMessageAttachmentRoute persists this shape; message create/get/list/update routes consume it during normalization, and deleteChatMessageAttachmentRoute removes it. Used by feature: createChatMessageAttachmentFeature.View complete source
NormalizedChatMessageAttachment
Definition
Public attachment shape: signed url and type.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | url | Signed download URL string. | Yes | — |
| N/A | type | String. | Yes | — |
Used by route: createChatMessageRoute, getChatMessageRoute, findChatMessagesRoute, updateChatMessageRoute, and createChatMessageAttachmentRoute expose this normalized shape. Used by feature: createChatMessageFeature, getChatMessageFeature, findChatMessagesFeature, updateChatMessageFeature, and createChatMessageAttachmentFeature.View complete source
createChatMessageSchema
Definition
Required content, senderId, and channelId; optional title.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Body | content | String. | Yes | — |
| Body | senderId | String. | Yes | — |
| Body | channelId | String. | Yes | — |
| Body | title | String. | No | — |
Used by route: createChatMessageRoute via createChatMessageFeature
Used by feature: createChatMessageFeatureView complete source
updateChatMessageSchema
Definition
Required messageId; optional content, senderId, and title.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageId | String. | Yes | — |
| Body | content | String. | No | — |
| Body | senderId | String. | No | — |
| Body | title | String. | No | — |
Used by route: updateChatMessageRoute via updateChatMessageFeature
Used by feature: updateChatMessageFeatureView complete source
getChatMessageSchema
Definition
Required messageId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageId | String. | Yes | — |
Used by route: getChatMessageRoute via getChatMessageFeature
Used by feature: getChatMessageFeatureView complete source
deleteChatMessageSchema
Definition
Required messageId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageId | String. | Yes | — |
Used by route: deleteChatMessageRoute via deleteChatMessageFeature
Used by feature: deleteChatMessageFeatureView complete source
findChatMessagesSchema
Definition
Required channelId; optional message filters and pagination.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | channelId | String. | Yes | — |
| Query | content | String filter. | No | — |
| Query | senderId | String filter. | No | — |
| Query | title | String filter. | No | — |
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
Used by route: findChatMessagesRoute via findChatMessagesFeature
Used by feature: findChatMessagesFeatureView complete source
deleteChatMessageAttachmentSchema
Definition
Required messageId and attachmentId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageId | String. | Yes | — |
| Path | attachmentId | String. | Yes | — |
Used by route: deleteChatMessageAttachmentRoute via deleteChatMessageAttachmentFeature
Used by feature: deleteChatMessageAttachmentFeatureView complete source
streamChatMessagesSchema
Definition
Required channelId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | channelId | String. | Yes | — |
Used by route: streamChatMessagesRoute via streamChatMessagesFeature
Used by feature: streamChatMessagesFeatureView complete source
chatMessageTemplateSchema
Definition
Closed object with optional string content and title.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | content | String. | No | — |
| N/A | title | String. | No | — |
Used by route: Spread into createChatMessageTemplateSchema and updateChatMessageTemplateSchema. Used by feature: createChatMessageTemplateFeature and updateChatMessageTemplateFeature.View complete source
createChatMessageTemplateSchema
Definition
Required content and title; optional organizationId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Body | content | String. | Yes | — |
| Body | title | String. | Yes | — |
| Body | organizationId | String. | No | — |
Used by route: createChatMessageTemplateRoute via createChatMessageTemplateFeature
Used by feature: createChatMessageTemplateFeatureView complete source
getChatMessageTemplateSchema
Definition
Required messageTemplateId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageTemplateId | String. | Yes | — |
Used by route: getChatMessageTemplateRoute via getChatMessageTemplateFeature
Used by feature: getChatMessageTemplateFeatureView complete source
updateChatMessageTemplateSchema
Definition
Required template ID; optional content and title.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageTemplateId | String. | Yes | — |
| Body | content | String. | No | — |
| Body | title | String. | No | — |
Used by route: updateChatMessageTemplateRoute via updateChatMessageTemplateFeature
Used by feature: updateChatMessageTemplateFeatureView complete source
deleteChatMessageTemplateSchema
Definition
Required messageTemplateId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | messageTemplateId | String. | Yes | — |
Used by route: deleteChatMessageTemplateRoute via deleteChatMessageTemplateFeature
Used by feature: deleteChatMessageTemplateFeatureView complete source
findChatMessageTemplatesSchema
Definition
Shared pagination fields only.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
Used by route: findChatMessageTemplatesRoute via findChatMessageTemplatesFeature
Used by feature: findChatMessageTemplatesFeatureView complete source
findChatMessageTemplatesForOrganizationSchema
Definition
Required organizationId and shared pagination fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
| Path | organizationId | String. | Yes | — |
Used by route: findChatMessageTemplatesForOrganizationRoute via findChatMessageTemplatesForOrganizationFeature
Used by feature: findChatMessageTemplatesForOrganizationFeatureView complete source
chatChannelReadStateSchema
Definition
Closed object with identityId and lastReadMessageId fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | identityId | String; request composition makes it required. | No | — |
| N/A | lastReadMessageId | String; request composition makes it required. | No | — |
Used by route: Spread into upsertChatChannelReadStateSchema. Used by feature: upsertChatChannelReadStateFeature.View complete source
upsertChatChannelReadStateSchema
Definition
Required channelId, identityId, and lastReadMessageId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | channelId | String. | Yes | — |
| Body | identityId | String. | Yes | — |
| Body | lastReadMessageId | String. | Yes | — |
Used by route: upsertChatChannelReadStateRoute via upsertChatChannelReadStateFeature
Used by feature: upsertChatChannelReadStateFeatureView complete source
chatSubscriptionSchema
Definition
Closed subscription object with approval, channel, permissions, time, and identity fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| N/A | approved | Boolean. | No | — |
| N/A | channelId | String. | No | — |
| N/A | permissions | Array of strings. | No | — |
| N/A | subscribedAt | Date-time-formatted string. | No | — |
| N/A | subscribedId | String. | No | — |
Used by route: Spread into createChatSubscriptionSchema. Used by feature: createChatSubscriptionFeature.View complete source
createChatSubscriptionSchema
Definition
Required channelId and subscribedId; other subscription fields optional.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Body | approved | Boolean. | No | — |
| Body | channelId | String. | Yes | — |
| Body | permissions | Array of strings. | No | — |
| Body | subscribedAt | Date-time-formatted string. | No | — |
| Body | subscribedId | String. | Yes | — |
Used by route: createChatSubscriptionRoute via createChatSubscriptionFeature
Used by feature: createChatSubscriptionFeatureView complete source
getChatSubscriptionSchema
Definition
Required subscriptionId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | subscriptionId | String. | Yes | — |
Used by route: getChatSubscriptionRoute via getChatSubscriptionFeature
Used by feature: getChatSubscriptionFeatureView complete source
deleteChatSubscriptionSchema
Definition
Required subscriptionId.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Path | subscriptionId | String. | Yes | — |
Used by route: deleteChatSubscriptionRoute via deleteChatSubscriptionFeature
Used by feature: deleteChatSubscriptionFeatureView complete source
findChatSubscriptionsSchema
Definition
Optional subscription filters and shared pagination fields.
| Location | Field | Type | Required | Constraints |
|---|---|---|---|---|
| Query | approved | Boolean filter. | No | — |
| Query | channelId | String filter. | No | — |
| Query | subscribedAt | Date-time-formatted string filter. | No | — |
| Query | subscribedId | String filter. | No | — |
| Query | Shared pagination fields | See paginationQueryParametersSchema. | No | — |
Used by route: findChatSubscriptionsRoute via findChatSubscriptionsFeature
Used by feature: findChatSubscriptionsFeatureView complete source