HTTP API reference › Gala Launchpad › stream-chat
Gala Launchpad — stream-chat
11 operations in this group.
- GET /live/{tokenName}/chat — Get per-token chat status
- POST /live/{tokenName}/chat — Toggle per-token chat status (admin/overseer)
- PATCH /live/{tokenName}/chat/slow-mode — Set chat slow mode interval
- GET /v1/messages — Query unified messages (chat and comments)
- POST /v1/messages — Create unified message (chat or comment)
- PUT /v1/messages/{id} — Update unified message (chat or comment)
- DELETE /v1/messages/{id} — Delete unified message (chat or comment)
- POST /v1/messages/{messageId}/pin — Pin message
- DELETE /v1/messages/{messageId}/pin — Unpin message
- GET /v1/messages/pinned — Get pinned message
- GET /v1/messages/stats — Get message statistics
GET /live/{tokenName}/chat
StreamChatController_getChatStatus
Get per-token chat status
Get per-token chat status
token name
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tokenName | path | required | string |
Responses
200 — Enabled state, feature status, disable reason, and slow-mode interval.
Content type: application/json
Schema: ApiSuccessEnvelopeMetadataDto & object
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: false | yes | Successful response marker. |
| message | string | yes | Response message. |
| status | number | yes | HTTP status code. |
| data | ChatStatusResponseDto | yes |
400 — Invalid token name.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Chat status could not be retrieved.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope returned by the application exception filter.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
POST /live/{tokenName}/chat
StreamChatController_setChatStatus
Toggle per-token chat status (admin/overseer)
Toggle per-token chat status (admin/overseer)
Authentication: apiKeyAuth, bearer
token name api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tokenName | path | required | string |
Request body
Required: yes
application/json
Schema: SetChatStatusRequestDto
| Field | Type | Required | Description |
|---|---|---|---|
| enabled | boolean | yes |
Responses
200 — Chat status updated; the success envelope has no data field.
Content type: application/json
Schema: ApiSuccessEnvelopeMetadataDto
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: false | yes | Successful response marker. |
| message | string | yes | Response message. |
| status | number | yes | HTTP status code. |
400 — Chat status could not be updated.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Chat status could not be updated.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope returned by the application exception filter.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example request
[]
Example response
[]
PATCH /live/{tokenName}/chat/slow-mode
StreamChatController_setSlowMode
Set chat slow mode interval
Set chat slow mode interval
Authentication: apiKeyAuth, bearer
token name api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tokenName | path | required | string |
Request body
Required: yes
application/json
Schema: SetSlowModeRequestDto
| Field | Type | Required | Description |
|---|---|---|---|
| slowModeSeconds | number | yes |
Responses
200 — Slow mode updated; the success envelope has no data field.
Content type: application/json
Schema: ApiSuccessEnvelopeMetadataDto
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: false | yes | Successful response marker. |
| message | string | yes | Response message. |
| status | number | yes | HTTP status code. |
400 — Invalid slowModeSeconds value
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - requires MANAGE_COMMUNITY permission
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Slow mode could not be updated.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope returned by the application exception filter.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example request
[]
Example response
[]
GET /v1/messages
StreamChatController_getChatMessages
Query unified messages (chat and comments)
Query messages with flexible filtering by token, user address, and optional type filter
Responses
200 — Messages retrieved successfully - returns paginated array of message objects
Content type: application/json
Schema: MessageListSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | MessageListDataResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - either tokenName or userAddress must be provided, skip/limit parameters invalid, invalid sort field, or invalid type filter
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - database query failed
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for query validation and database failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
POST /v1/messages
StreamChatController_createUnifiedMessage
Create unified message (chat or comment)
Send a new message via public v1 endpoint (supports both chat and comments)
Authentication: apiKeyAuth, bearer
api key auth
Request body
Required: yes
application/json
Schema: SendUnifiedMessageDto
| Field | Type | Required | Description |
|---|---|---|---|
| content | string | yes | |
| tokenName | string | yes | |
| type | string enum: COMMENT, CHAT_MESSAGE | no |
Responses
200 — Message created successfully - returns message object with ID, timestamp, and user info
Content type: application/json
Schema: MessageMutationSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | oneOf: ChatMessageResponseDto | MessageResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - tokenName missing, content missing/empty/exceeds max length, invalid message type, or other validation error
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user profile incomplete, user is banned, or messaging disabled
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found - tokenName does not match any existing pool
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to save message to database or broadcast via WebSocket
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, validation, and message service failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example request
[]
Example response
[]
PUT /v1/messages/{id}
StreamChatController_updateMessage
Update unified message (chat or comment)
Update a message (message author only)
Authentication: apiKeyAuth, bearer
api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | Message identifier returned by the message API. |
Request body
Required: yes
application/json
Schema: UpdateUnifiedMessageDto
| Field | Type | Required | Description |
|---|---|---|---|
| content | string | yes |
Responses
200 — Message updated successfully - returns updated message object
Content type: application/json
Schema: MessageMutationSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | oneOf: ChatMessageResponseDto | MessageResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - content is missing, empty, or exceeds max length (500 for chat, 2000 for comment)
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not the message author or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Message not found - id parameter does not match any existing message
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to update message in database or broadcast via WebSocket
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, validation, and message update failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example request
[]
Example response
[]
DELETE /v1/messages/{id}
StreamChatController_deleteMessage
Delete unified message (chat or comment)
Delete a message (message author, pool owner, or moderator)
Authentication: apiKeyAuth, bearer
api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | Message identifier returned by the message API. |
Responses
200 — Message deleted successfully - message marked deleted and viewers notified via WebSocket
Content type: application/json
Schema: MessageDeleteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | DeletedMessageDataResponseDto | no | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
401 — Unauthorized - missing or invalid JWT token or API key
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not message author or moderator with MANAGE_CHAT permission, or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Message not found - id parameter does not match any existing message
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to delete message from database or broadcast via WebSocket
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, authorization, and message deletion failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
POST /v1/messages/{messageId}/pin
StreamChatController_pinMessage
Pin message
Pin a message to the top (requires MANAGE_STREAM_SETTINGS permission)
Authentication: apiKeyAuth, bearer
message id api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| messageId | path | required | string | Message identifier returned by the message API. |
Responses
200 — Message pinned successfully - previous pinned message automatically unpinned
Content type: application/json
Schema: PinMessageSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | PinnedMessageResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user lacks MANAGE_STREAM_SETTINGS permission
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Message not found - messageId does not exist
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to pin message in database or broadcast via WebSocket
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, authorization, and pinning failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
DELETE /v1/messages/{messageId}/pin
StreamChatController_unpinMessage
Unpin message
Unpin a message (requires MANAGE_STREAM_SETTINGS permission)
Authentication: apiKeyAuth, bearer
message id api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| messageId | path | required | string | Message identifier returned by the message API. |
Responses
200 — Message unpinned successfully.
Content type: application/json
Schema: UnpinMessageSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | UnpinnedMessageDataResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user lacks MANAGE_STREAM_SETTINGS permission
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Message not found - messageId does not exist
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to unpin message in database or broadcast via WebSocket
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, authorization, and unpinning failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
GET /v1/messages/pinned
StreamChatController_getPinnedMessage
Get pinned message
Get the currently pinned message for a token (requires tokenName query parameter)
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tokenName | query | required | string | Token to look up the pinned message for. |
Responses
200 — Pinned message retrieved successfully - returns message object if pinned, or null if none
Content type: application/json
Schema: PinnedMessageSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | object nullable | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - tokenName query parameter is missing
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found - tokenName does not match any existing pool
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - database query failed
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for token lookup and pinned message failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
GET /v1/messages/stats
StreamChatController_getMessageStats
Get message statistics
Get aggregate message statistics for dashboard display
Authentication: apiKeyAuth, bearer
api key auth
Responses
200 — Message statistics in the shared success envelope.
Content type: application/json
Schema: MessageStatsSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | MessageStatsResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
default — Shared error envelope for dashboard authentication and query failures.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]