Comment on page
Chat
The chat feature is organized by chat threads and messages in the chat threads.
get
https://cubicl.io/api/v1
/chat/threads
Get Chat Threads
get
https://cubicl.io/api/v1
/chat/threads/:threadId/messages
Get Messages
post
https://cubicl.io/api/v1
/chat/messages
Send Message
Chat messages are sent in a thread. Threads have 3 types:
- 1.personal: Between 2 users. Created when a user sends a message to another user.
- 2.group: Created for each project. All project members are members of these threads.
- 3.custom: Created among a group of users by users themselves. This is a private chat group.
type ChatThread = {
_id: string;
type: 'personal' | 'group' | 'custom';
// Project id. Exists when type is 'group'
group?: string;
// Name of the thread. Exists when type is 'custom'
name?: string;
// Ids of users in the chat thread. Exists when type is 'personal' or 'custom'
users: string[];
// Date of last activity (message) in the thread
activity: number;
// Date at which current user viewed the thread. 0 if not accessed before.
access: number;
lastMessage: ChatMessage | null;
// Number of new messages since last access.
newActivityCount: number;
createdAt: number;
}
type ChatMessage = {
_id: string;
// Thread id
thread: string;
// Id of the user who sent the message
from: string;
content: string;
// File attachments in the message. Check Files page for data format.
files: File[];
// Ids of the users who liked the message
likes: string[];
dislikes: string[];
// If a message is a reply to another message, this will be the referenced
// message id
replyTo: string | null;
createdAt: number;
}
Last modified 11mo ago