Skip to main content

Public API

The TimelinesAI Public API gives you full control over your WhatsApp conversation resources. Send and receive messages, manage conversations, handle file attachments, organize chats with labels, and set up real-time webhooks — all through a simple REST API

Base URL

https://app.timelines.ai/integrations/api
All requests require Bearer token authentication. See Authentication for details.

Capabilities

Available endpoints

GroupEndpointsDescription
ChatsGET /chats, GET /chats/{id}, PATCH /chats/{id}List, get details, and update chats
MessagesPOST /messages, POST /chats/{id}/messages, GET /chats/{id}/messages, and moreSend messages by phone, chat ID, JID, or chat name. Retrieve history and status.
ReactionsGET /messages/{uid}/reactions, PUT /messages/{uid}/reactionsRead and update message reactions
FilesGET /files, POST /files, POST /files_upload, GET /files/{uid}, DELETE /files/{uid}Upload, list, download, and delete files
LabelsGET /chats/{id}/labels, PUT /chats/{id}/labels, POST /chats/{id}/labelsList, add, and replace chat labels
WhatsApp AccountsGET /whatsapp_accountsList connected WhatsApp numbers
TeammatesGET /teammatesList workspace team members
Quotas & UsageGET /quotasCheck quota limits and current usage
WebhooksGET /webhooks, POST /webhooks, GET/PUT/DELETE /webhooks/{id}Manage webhook subscriptions

Use case examples

Sync WhatsApp conversations with your CRM. When a new lead messages you, automatically create a contact in your CRM and assign the chat to the right sales rep.
  1. Set up a webhook for message:received:new
  2. On new message, check if the phone number exists in your CRM
  3. Create or update the CRM contact
  4. Use PATCH /chats/{id} to assign the chat to the appropriate agent
  5. Add a label like crm-synced for tracking
Send order updates, appointment reminders, or shipping notifications directly to WhatsApp.
  1. Use POST /messages with the customer’s phone number
  2. Include relevant details in the message text
  3. Attach documents (invoices, receipts) using the file upload endpoints
  4. Track delivery with GET /messages/{uid}/status_history
Route incoming WhatsApp messages to your support team based on content or labels.
  1. Listen for new messages via webhooks
  2. Parse the message content to determine the category
  3. Add appropriate labels with PUT /chats/{id}/labels
  4. Assign to the right agent with PATCH /chats/{id}
  5. Add internal notes with POST /chats/{id}/notes for context
Send personalized messages to a list of contacts for marketing or onboarding campaigns.
  1. Iterate over your contact list
  2. Use POST /messages for each recipient with personalized text
  3. Auto-apply labels (e.g., campaign-jan-2025) when sending
  4. Respect the ~2 second rate limit between messages
  5. Monitor delivery status and quota usage via GET /quotas

Rate limits & credits

ActionCredits
Text message1
Message with attachment2
Failed messageRefunded
Messages are sent with a ~2 second delay between each to comply with WhatsApp guidelines.
Check your current usage anytime with GET /quotas. Contact support to discuss higher limits on Business plans.

Next steps