Skip to content
Download Beeper

Send a message

POST/v1/chats/{chatID}/messages

Send a text message to a specific chat. Supports replying to existing messages. Returns a pending message ID.

Path ParametersExpand Collapse
chatID: string

Unique identifier of the chat.

Body ParametersJSONExpand Collapse
attachment: optional object { uploadID, duration, fileName, 3 more }

Single attachment to send with the message

uploadID: string

Upload ID from uploadAsset endpoint. Required to reference uploaded files.

duration: optional number

Duration in seconds (optional override of cached value)

fileName: optional string

Filename (optional override of cached value)

mimeType: optional string

MIME type (optional override of cached value)

size: optional object { height, width }

Dimensions (optional override of cached value)

height: number
width: number
type: optional "gif" or "voiceNote" or "sticker"

Special attachment type (gif, voiceNote, sticker). If omitted, auto-detected from mimeType

Accepts one of the following:
"gif"
"voiceNote"
"sticker"
replyToMessageID: optional string

Provide a message ID to send this as a reply to an existing message

text: optional string

Text content of the message you want to send. You may use markdown.

ReturnsExpand Collapse
chatID: string

Unique identifier of the chat.

pendingMessageID: string

Pending message ID

Send a message

curl http://localhost:23373/v1/chats/$CHAT_ID/messages \
    -X POST
{
  "chatID": "!signal_adamvy:local-signal.localhost",
  "pendingMessageID": "m1694783291234567"
}
Returns Examples
{
  "chatID": "!signal_adamvy:local-signal.localhost",
  "pendingMessageID": "m1694783291234567"
}