Titan exposes one endpoint for all outbound WhatsApp messages:Documentation Index
Fetch the complete documentation index at: https://docs.usetitan.app/llms.txt
Use this file to discover all available pages before exploring further.
POST /api/messages/send. You pass a session name, a chatId, a message type, and the type-specific payload. Every message type — text, image, video, audio, document, sticker, poll, location, and contact — goes through the same route.
Required fields
The name of the WhatsApp session to send from (e.g.
"default").The recipient’s JID. Use
{phone}@s.whatsapp.net for individuals (e.g. [email protected]), a group ID like [email protected] for groups, or status@broadcast to post to your WhatsApp Status.The message type. One of:
text, image, video, voice, file, poll, location, contact.Message types
Text
The message body.
Set to
true to generate a link preview when the text contains a URL.Image
HTTPS URL of the image (JPEG, PNG, or WebP). Max 50 MB.
Base64-encoded image bytes. Max 70 MB.
Optional caption displayed below the image.
Video
HTTPS URL of the MP4 video. Max 50 MB.
Base64-encoded video bytes. Max 70 MB.
Optional caption displayed below the video.
Audio / voice note
HTTPS URL of the OGG or MP3 audio file. Max 50 MB.
Base64-encoded audio bytes. Max 70 MB.
Set to
true to deliver the audio as a push-to-talk voice note rather than a regular audio attachment.Document
HTTPS URL of the file to send. Max 50 MB.
Base64-encoded file bytes. Max 70 MB.
The filename shown to the recipient (e.g.
"report.pdf").Optional caption displayed below the file attachment.
Sticker
HTTPS URL of a WebP sticker. Max 50 MB.
Base64-encoded WebP bytes. Max 70 MB.
Poll
The poll question.
The answer choices. Provide between 2 and 12 strings.
Set to
true to allow recipients to pick more than one option.Location
Latitude in decimal degrees (e.g.
37.7749).Longitude in decimal degrees (e.g.
-122.4194).Human-readable address shown below the pin (e.g.
"San Francisco, CA").Contact
A vCard 3.0 formatted string representing the contact to share.
Optional features
Quote an existing message to create a threaded reply.
Array of JIDs to mention in the message (e.g.
["[email protected]"]). Up to 256 per message. Use in group messages to tag participants.Mark the message as forwarded.
Send a text message
Send an image message
Send a poll
Response
A successful send returns HTTP200 with the message details wrapped in a data object.
Post to WhatsApp Status
To post a message to your WhatsApp Status (visible to your contacts), setchatId to status@broadcast. Any message type supported for regular chats works for status posts.
Edit a sent message
You can update the text of a message you already sent. Only the text content can be changed.Delete a message
Delete a message for everyone in the conversation.React to a message
Send an emoji reaction to any message. Pass an empty string forreaction to remove an existing reaction.
Typing indicators
Send a typing or recording indicator to a chat before delivering a message. This is handled automatically when Safe Mode is enabled, but you can also trigger it manually.The chat to send the indicator to.
One of
composing (typing), recording (voice note), or paused (stopped typing).Mark as seen
Send a read receipt for a specific message.Star and unstar messages
Bookmark important messages using the star endpoints.- Star
- Unstar