ConversationMessagesClient
Client for interacting with Twist conversation message endpoints.
Extends
BaseClient
Constructors
Constructor
new ConversationMessagesClient(config: ClientConfig): ConversationMessagesClient;
Parameters
| Parameter | Type |
|---|---|
config | ClientConfig |
Returns
ConversationMessagesClient
Inherited from
BaseClient.constructor
Properties
| Property | Modifier | Type |
|---|---|---|
apiToken | readonly | string |
baseUrl? | readonly | string |
customFetch? | readonly | CustomFetch |
defaultVersion | readonly | ApiVersion |
Methods
createMessage()
Call Signature
createMessage(args: CreateConversationMessageArgs, options: {
batch: true;
}): BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Creates a new message in a conversation.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | CreateConversationMessageArgs | The arguments for creating a message. |
options | { batch: true; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch | true | - |
Returns
BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The created message object.
Example
const message = await api.conversationMessages.createMessage({
conversationId: 456,
content: 'Thanks for the update!'
})
Call Signature
createMessage(args: CreateConversationMessageArgs, options?: {
batch?: false;
}): Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Creates a new message in a conversation.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | CreateConversationMessageArgs | The arguments for creating a message. |
options? | { batch?: false; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch? | false | - |
Returns
Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The created message object.
Example
const message = await api.conversationMessages.createMessage({
conversationId: 456,
content: 'Thanks for the update!'
})
deleteMessage()
Call Signature
deleteMessage(id: number, options: {
batch: true;
}): BatchRequestDescriptor<void>;
Permanently deletes a conversation message.
Parameters
| Parameter | Type | Description |
|---|---|---|
id | number | The message ID. |
options | { batch: true; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch | true | - |
Returns
BatchRequestDescriptor<void>
Example
await api.conversationMessages.deleteMessage(789)
Call Signature
deleteMessage(id: number, options?: {
batch?: false;
}): Promise<void>;
Permanently deletes a conversation message.
Parameters
| Parameter | Type | Description |
|---|---|---|
id | number | The message ID. |
options? | { batch?: false; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch? | false | - |
Returns
Promise<void>
Example
await api.conversationMessages.deleteMessage(789)
getBaseUri()
protected getBaseUri(version?: ApiVersion): string;
Gets the base URI for API requests with proper trailing slash handling. This method fixes the trailing slash bug that occurred when using custom baseUrl.
Parameters
| Parameter | Type | Description |
|---|---|---|
version? | ApiVersion | Optional API version override. Defaults to the configured version or 'v3' |
Returns
string
Base URI with guaranteed trailing slash for proper URL resolution
Inherited from
BaseClient.getBaseUri
getMessage()
Call Signature
getMessage(id: number, options: {
batch: true;
}): BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Gets a single conversation message by id.
Parameters
| Parameter | Type | Description |
|---|---|---|
id | number | The message ID. |
options | { batch: true; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch | true | - |
Returns
BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The conversation message object.
Example
const message = await api.conversationMessages.getMessage(514069)
Call Signature
getMessage(id: number, options?: {
batch?: false;
}): Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Gets a single conversation message by id.
Parameters
| Parameter | Type | Description |
|---|---|---|
id | number | The message ID. |
options? | { batch?: false; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch? | false | - |
Returns
Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The conversation message object.
Example
const message = await api.conversationMessages.getMessage(514069)
getMessages()
Call Signature
getMessages(args: GetConversationMessagesArgs, options: {
batch: true;
}): BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}[]>;
Gets all messages in a conversation.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | GetConversationMessagesArgs | The arguments for getting messages. |
options | { batch: true; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch | true | - |
Returns
BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}[]>
An array of message objects.
Example
const messages = await api.conversationMessages.getMessages({
conversationId: 456,
newerThan: new Date('2024-01-01')
})
Call Signature
getMessages(args: GetConversationMessagesArgs, options?: {
batch?: false;
}): Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}[]>;
Gets all messages in a conversation.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | GetConversationMessagesArgs | The arguments for getting messages. |
options? | { batch?: false; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch? | false | - |
Returns
Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}[]>
An array of message objects.
Example
const messages = await api.conversationMessages.getMessages({
conversationId: 456,
newerThan: new Date('2024-01-01')
})
updateMessage()
Call Signature
updateMessage(args: UpdateConversationMessageArgs, options: {
batch: true;
}): BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Updates a conversation message.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | UpdateConversationMessageArgs | The arguments for updating a message. |
options | { batch: true; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch | true | - |
Returns
BatchRequestDescriptor<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The updated message object.
Example
const message = await api.conversationMessages.updateMessage({
id: 789,
content: 'Updated message content'
})
Call Signature
updateMessage(args: UpdateConversationMessageArgs, options?: {
batch?: false;
}): Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>;
Updates a conversation message.
Parameters
| Parameter | Type | Description |
|---|---|---|
args | UpdateConversationMessageArgs | The arguments for updating a message. |
options? | { batch?: false; } | Optional configuration. Set batch: true to return a descriptor for batch requests. |
options.batch? | false | - |
Returns
Promise<{
actions?: unknown[] | null;
attachments?: unknown[] | null;
content: string;
conversationId: number;
creator: number;
directGroupMentions?: number[] | null;
directMentions?: number[] | null;
id: number;
isDeleted?: boolean | null;
lastEdited?: Date | null;
objIndex?: number | null;
posted: Date;
reactions?: Record<string, number[]> | null;
systemMessage?: unknown;
version?: number | null;
workspaceId?: number | null;
}>
The updated message object.
Example
const message = await api.conversationMessages.updateMessage({
id: 789,
content: 'Updated message content'
})