Send a message @requires_auth Yes @requires_scope MESSAGES_SEND
Message text content
Semicolon-separated list of recipient character handles (max 25). Example: 'handle1;handle2'
Message response typed as Message
Delete a message @requires_auth Yes @requires_scope MESSAGES_DELETE
Get a specific message @requires_auth Yes @requires_scope MESSAGES_READ
Character UID and message UID
Full message details including communication
import { MessageMode } from 'swcombine-sdk';
const messages = await client.character.messages.list({ uid: '1:12345', mode: MessageMode.Received });
const messageId = messages.data[0]?.attributes.uid;
if (messageId) {
const message = await client.character.messages.get({ uid: '1:12345', messageId });
console.log(message.communication);
}
List messages sent or received by character (paginated)
Note: list responses return MessageListItem[] metadata objects and do not
guarantee a communication field. Use get() for full message content.
@requires_auth Yes @requires_scope MESSAGES_READ
Character UID, optional message mode, and optional pagination parameters
Optionalitem_count?: numberOptionalmode?: MessageModeMessage mode: MessageMode.Sent or MessageMode.Received. If omitted, returns both sent and received messages.
OptionalpageDelay?: numberMilliseconds to wait before fetching each subsequent page. Helps avoid rate limits during auto-pagination.
Optionalstart_index?: numberPage of message metadata items (Page<MessageListItem>)
import { MessageMode } from 'swcombine-sdk';
const allMessages = await client.character.messages.list({ uid: '1:12345' });
const received = await client.character.messages.list({ uid: '1:12345', mode: MessageMode.Received });
const moreMessages = await client.character.messages.list({ uid: '1:12345', mode: MessageMode.Received, start_index: 51, item_count: 50 });
const firstMessageId = received.data[0]?.attributes.uid;
if (firstMessageId) {
const detail = await client.character.messages.get({ uid: '1:12345', messageId: firstMessageId });
console.log(detail.communication);
}
// Iterate through all pages automatically
for await (const msg of allMessages) {
console.log(msg.attributes.uid);
}
Character messages resource
See
https://www.swcombine.com/ws/v2.0/documentation/character/uid/messages/mode/ SW Combine API Documentation