# WATI API Reference Documentation > Complete reference documentation for the WATI API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries. Append .md to any documentation page URL to get its markdown version. ## Guides - [Documentation](https://docs.wati.io/docs.md): WATI API Reference documentation ## API Reference - [Introduction](https://docs.wati.io/reference/introduction.md) - [Authentication](https://docs.wati.io/reference/authentication.md) - [Errors & Rate Limits](https://docs.wati.io/reference/errors.md) - [Public Roadmap](https://docs.wati.io/reference/public-roadmap.md): See what features are planned for future and request more features - [Endpoint availability by plan](https://docs.wati.io/reference/endpoint-availability-by-plan.md) - [BSUID & Target Format](https://docs.wati.io/reference/bsuid-target-format.md) - [Get campaigns](https://docs.wati.io/reference/get_api-ext-v3-broadcasts.md) - [Get the campaign details by ID](https://docs.wati.io/reference/get_api-ext-v3-broadcasts-broadcast-id.md) - [Get the campaign recipients by ID](https://docs.wati.io/reference/get_api-ext-v3-broadcasts-broadcast-id-recipients.md) - [Get the campaign overview](https://docs.wati.io/reference/get_api-ext-v3-broadcasts-overview.md) - [Get channels](https://docs.wati.io/reference/get_api-ext-v3-channels.md) - [Get chatbots (Available in Pro plan)](https://docs.wati.io/reference/get_api-ext-v3-chatbots.md) - [Start chatbot (Available in Pro plan)](https://docs.wati.io/reference/post_api-ext-v3-chatbots-start.md) - [Add a new contact](https://docs.wati.io/reference/post_api-ext-v3-contacts.md) - [Get contacts](https://docs.wati.io/reference/get_api-ext-v3-contacts.md) - [Update contacts](https://docs.wati.io/reference/put_api-ext-v3-contacts.md) - [Get contact details](https://docs.wati.io/reference/get_api-ext-v3-contacts-target.md) - [Assigns a contact to teams](https://docs.wati.io/reference/put_api-ext-v3-contacts-teams.md) - [Get contact count](https://docs.wati.io/reference/get_api-ext-v3-contacts-count.md) - [Get messages](https://docs.wati.io/reference/get_api-ext-v3-conversations-target-messages.md) - [Send a text message to an active conversation](https://docs.wati.io/reference/post_api-ext-v3-conversations-messages-text.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message is failed, listen to the **Session Message Failed** webhook. - To know if a message is sent successfully, listen to Delivered/Read/Reply webhooks. - [Send a file message to an active conversation](https://docs.wati.io/reference/post_api-ext-v3-conversations-messages-file.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message failed, listen to the **Session Message Failed** webhook. - To know if a message succeeded, listen to Delivered/Read/Reply webhooks. - [Get a media file by message ID](https://docs.wati.io/reference/get_api-ext-v3-conversations-messages-file-message-id.md) - [Assign an operator to a conversation](https://docs.wati.io/reference/put_api-ext-v3-conversations-target-operator.md) - [Update conversation status](https://docs.wati.io/reference/put_api-ext-v3-conversations-target-status.md) - [Send an interactive message to an active conversation](https://docs.wati.io/reference/post_api-ext-v3-conversations-messages-interactive.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message is failed, listen to the **Session Message Failed** webhook. - To know if a message is sent successfully, listen to Delivered/Read/Reply webhooks. - [Get message template by ID](https://docs.wati.io/reference/get_api-ext-v3-messagetemplates-template-id.md) - [Get message templates](https://docs.wati.io/reference/get_api-ext-v3-messagetemplates.md) - [Send template messages](https://docs.wati.io/reference/post_api-ext-v3-messagetemplates-send.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message is failed, listen to the **Template Message Failed** webhook. - To know if a message is sent successfully, listen to Delivered/Read/Reply webhooks. - [Schedule template messages](https://docs.wati.io/reference/post_api-ext-v3-messagetemplates-schedule.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message is failed, listen to the **Template Message Failed** webhook. - To know if a message is sent successfully, listen to Delivered/Read/Reply webhooks. - [Send a file message to an active conversation via a url](https://docs.wati.io/reference/post_api-ext-v3-conversations-messages-fileviaurl.md) - [Update WhatsApp Pay order status of an order (Private Beta)](https://docs.wati.io/reference/post_api-v1-order-status.md) - [Send WhatsApp Pay order detail message to customer (Private Beta)](https://docs.wati.io/reference/post_api-v1-order-details.md) - [Get WhatsApp Pay order details of particular order (Private Beta)](https://docs.wati.io/reference/get_api-v1-order-details-referenceid.md) - [Get payment status information of particular order (Private Beta)](https://docs.wati.io/reference/get_api-v1-payment-status-referenceid.md) - [Get existing chatbots](https://docs.wati.io/reference/get_api-v1-chatbots.md) - [Start chatbot](https://docs.wati.io/reference/post_api-v1-chatbots-start.md) - [Get media by file name](https://docs.wati.io/reference/get_api-v1-getmedia.md) - [Get Contacts List](https://docs.wati.io/reference/get_api-v1-getcontacts.md) - [Add Contact](https://docs.wati.io/reference/post_api-v1-addcontact-whatsappnumber.md) - [Update Contact Attributes](https://docs.wati.io/reference/post_api-v1-updatecontactattributesformulticontacts.md) - [Update Contact Attributes](https://docs.wati.io/reference/post_api-v1-updatecontactattributes-whatsappnumber.md) - [Rotate Token](https://docs.wati.io/reference/post_api-v1-rotatetoken.md) - [Assign User](https://docs.wati.io/reference/post_api-v1-assignoperator.md) - [Update Chat Status](https://docs.wati.io/reference/post_api-v1-updatechatstatus.md) - [Get Message Templates](https://docs.wati.io/reference/get_api-v1-getmessagetemplates.md) - [Get templates](https://docs.wati.io/reference/get_api-v2-getmessagetemplates.md) - [Create a template](https://docs.wati.io/reference/post_api-v1-whatsapp-templates.md) - [Delete templates by name](https://docs.wati.io/reference/delete_api-v1-whatsapp-templates-wabaid-name.md) - [Delete a template](https://docs.wati.io/reference/delete_api-v1-whatsapp-templates-wabaid-name-language.md) - [Send template message](https://docs.wati.io/reference/post_api-v1-sendtemplatemessage.md) - [Send template message (Beta)](https://docs.wati.io/reference/post_api-v2-sendtemplatemessage.md) - [Send template messages](https://docs.wati.io/reference/post_api-v1-sendtemplatemessages.md) - [Send template messages (Beta)](https://docs.wati.io/reference/post_api-v2-sendtemplatemessages.md) - [Send template messages(CSV)](https://docs.wati.io/reference/post_api-v1-sendtemplatemessagecsv.md) - [Send Interactive List Message](https://docs.wati.io/reference/post_api-v1-sendinteractivelistmessage.md) - [Get Messages by whatsapp number](https://docs.wati.io/reference/get_api-v1-getmessages-whatsappnumber.md) - [Send Interactive Buttons Message](https://docs.wati.io/reference/post_api-v1-sendinteractivebuttonsmessage.md) - [Send File to opened session](https://docs.wati.io/reference/post_api-v1-sendsessionfile-whatsappnumber.md) - [Send Message to opened session](https://docs.wati.io/reference/post_api-v1-sendsessionmessage-whatsappnumber.md) - [Get message by phoneNumber and localMessageId](https://docs.wati.io/reference/get_api-v1-whatsapp-messages-phonenumber-localmessageid.md) - [Send Interactive Request Contact Info Message](https://docs.wati.io/reference/send-interactive-request-contact-info-message.md): Sends a WhatsApp **request_contact_info** interactive message so the recipient can choose to share their contact information. Especially useful for BSUID-only contacts that do not yet have a phone number in WATI. Availability is subject to Meta eligibility and account support. - [GetPhoneNumberList](https://docs.wati.io/reference/get_api-v1-whatsapp-phonenumbers.md) - [List multi whatsapp phone number](https://docs.wati.io/reference/get_api-v2-whatsapp-phonenumbers.md) - [Get phone number detail](https://docs.wati.io/reference/get_api-v2-whatsapp-wabaid-phonenumber-profile.md) - [BusinessAccounts](https://docs.wati.io/reference/get_api-v1-whatsapp-businessaccounts.md) - [Create webhooks](https://docs.wati.io/reference/post_api-v2-webhookendpoints.md) - [Create Custom Segment](https://docs.wati.io/reference/create-custom-segment.md) - [Send File to opened session via a url](https://docs.wati.io/reference/post_api-v1-sendsessionfileviaurl-whatsappnumber.md) - [Enable auto-retry](https://docs.wati.io/reference/enable-auto-retry.md): Enable auto-retry for a campaign. Retries will only apply to contacts that get the error code “131049 - Meta chose not to deliver”. - [Introduction](https://docs.wati.io/reference/introduction-1.md) - [Message Received](https://docs.wati.io/reference/message-received.md) - [New Contact Message](https://docs.wati.io/reference/new-contact-message.md) - [Session Message Sent](https://docs.wati.io/reference/session-message-sent.md) - [Template Message Sent](https://docs.wati.io/reference/template-message-sent.md) - [Sent Message is DELIVERED](https://docs.wati.io/reference/sent-message-is-delivered.md) - [Send Message is Read](https://docs.wati.io/reference/send-message-is-read.md) - [Sent Message is REPLIED](https://docs.wati.io/reference/sent-message-is-replied.md) - [Template Message FAILED](https://docs.wati.io/reference/template-message-failed.md): Webhook event structure and field descriptions for template message failed events in WATI platform - [Template Status Update](https://docs.wati.io/reference/template-status-update.md) - [Template quality update](https://docs.wati.io/reference/template-quality-update.md) - [Template category update](https://docs.wati.io/reference/template-category-update.md) - [WABA Status Review Update](https://docs.wati.io/reference/waba-status-review-update.md) - [Phone Number Quality Update Event](https://docs.wati.io/reference/phone-number-quality-update.md) - [WABA Account Deleted](https://docs.wati.io/reference/waba-account-deleted.md) - [WABA Account Content Updated](https://docs.wati.io/reference/waba-account-content-updated.md) - [Phone Number Deleted ](https://docs.wati.io/reference/phone-number-deleted.md) - [Chatbot Triggered](https://docs.wati.io/reference/chatbot-triggered.md) - [CTA URL Clicked](https://docs.wati.io/reference/cta-url-clicked.md) - [Call Status](https://docs.wati.io/reference/call-status.md) - [Message Received (BSUID)](https://docs.wati.io/reference/message-received-bsuid.md) - [New Contact Message (BSUID)](https://docs.wati.io/reference/new-contact-message-bsuid.md) - [Session Message Sent (BSUID)](https://docs.wati.io/reference/session-message-sent-bsuid.md) - [Session Message Sent v2 (BSUID)](https://docs.wati.io/reference/session-message-sent-v2-bsuid.md) - [Template Message Sent (BSUID)](https://docs.wati.io/reference/template-message-sent-bsuid.md) - [Template Message Sent v2 (BSUID)](https://docs.wati.io/reference/template-message-sent-v2-bsuid.md) - [Chatbot Triggered (BSUID)](https://docs.wati.io/reference/chatbot-triggered-bsuid.md) - [CTA Button Clicked (BSUID)](https://docs.wati.io/reference/cta-url-clicked-bsuid.md) - [Call Status (BSUID)](https://docs.wati.io/reference/call-status-bsuid.md) - [Contact Info Request (BSUID)](https://docs.wati.io/reference/copy-of-call-status-bsuid.md) - [MCP](https://docs.wati.io/reference/mcp.md) - [Get the authenticated tenant's credit balance.](https://docs.wati.io/reference/get_api-ext-v3-account-credits.md): Returns the caller's own credit balance only — identity is derived from the authenticated tenant context, never from caller-supplied fields, so one tenant cannot query another tenant's balance. - [Get call logs](https://docs.wati.io/reference/get_api-ext-v3-calls.md) - [Get call recording](https://docs.wati.io/reference/get_api-ext-v3-calls-call-id-recording.md) - [Get call transcript](https://docs.wati.io/reference/get_api-ext-v3-calls-call-id-transcript.md) - [Get call summary](https://docs.wati.io/reference/get_api-ext-v3-calls-call-id-summary.md) - [Batch get call recordings](https://docs.wati.io/reference/post_api-ext-v3-calls-batch-recordings.md) - [Batch get call transcripts](https://docs.wati.io/reference/post_api-ext-v3-calls-batch-transcripts.md) - [Batch get call summaries](https://docs.wati.io/reference/post_api-ext-v3-calls-batch-summaries.md) - [Estimate the cost of sending a template to the given contacts.](https://docs.wati.io/reference/post_api-ext-v3-broadcasts-estimate-cost.md): Returns the estimated credits needed (and the current balance) for a template broadcast to the supplied contacts. The estimate is read-only — no message is sent. - [Soft-deletes a contact and its linked contact records using Wati's existing production deletion flow. This operation marks data as deleted; it is not a physical GDPR erasure.](https://docs.wati.io/reference/delete_api-ext-v3-contacts-target.md) - [Send a typing indicator to a WhatsApp contact](https://docs.wati.io/reference/post_api-ext-v3-conversations-typingindicator.md): Displays a "typing..." bubble to the end user while you are preparing a response. The indicator auto-dismisses after 25 seconds or when a reply is sent. It also marks the last incoming message as read (blue ticks). Requires the typing indicator feature gate (tenant-level) and the Team Inbox setting to be enabled. - [Send a file message to an active conversation via a url](https://docs.wati.io/reference/post_api-ext-v3-conversations-messages-fileviaurl-1.md): - Status code 200 means the message was accepted by WATI, not delivered yet. - To know if a message is failed, listen to the **Session Message Failed** webhook. - To know if a message is sent successfully, listen to Delivered/Read/Reply webhooks. - [Apply an existing tag to a conversation](https://docs.wati.io/reference/post_api-ext-v3-conversations-target-conv-tags.md): This operation is idempotent. It never creates a tag definition; an unknown tag name returns 404. - [Remove a tag from a conversation by tag name](https://docs.wati.io/reference/delete_api-ext-v3-conversations-target-conv-tags-tagname.md): This operation is idempotent. Removing a tag that is not bound to the conversation is a successful no-op. - [Create a WhatsApp group](https://docs.wati.io/reference/post_api-ext-v3-conversations-groups.md): Creates a new WhatsApp group. Optionally specify a channel; when omitted, the default channel is used. Operators are identified by email, contacts by phone number or target format. Only available on the Business plan. - [Delete a WhatsApp group](https://docs.wati.io/reference/delete_api-ext-v3-conversations-groups-groupid.md): Deletes the specified group. Idempotent — returns 200 if the group is already deleted. Only available on the Business plan. - [Send group invite to all pending contacts](https://docs.wati.io/reference/post_api-ext-v3-conversations-groups-groupid-invites.md): Queries all contacts of the group, filters to those still pending, and sends the group invite template to each contact's 1:1 conversation. Only available on the Business plan. - [Remove participants from a WhatsApp group](https://docs.wati.io/reference/delete_api-ext-v3-conversations-groups-groupid-participants.md): Removes operators (by email) and/or contacts (by phone/target) from the group. At least one of operatorEmails or contactTargets must be provided. Only available on the Business plan. - [List active WhatsApp groups](https://docs.wati.io/reference/post_api-ext-v3-conversations-groups-list.md): Returns a cursor-paginated list of active groups. Optionally filter by channel or specific group IDs; when channel is omitted, the default channel is used. Use the `continuous_token` from the response to fetch subsequent pages. When the token is absent or null in the response, there are no more results. Only available on the Business plan. - [/api/ext/v3/posts](https://docs.wati.io/reference/get_api-ext-v3-posts.md) - [/api/ext/v3/posts/{post_id}](https://docs.wati.io/reference/get_api-ext-v3-posts-post-id.md) - [/api/ext/v3/posts/{post_id}/comments](https://docs.wati.io/reference/get_api-ext-v3-posts-post-id-comments.md) - [/api/ext/v3/posts/{post_id}/unreadCount](https://docs.wati.io/reference/get_api-ext-v3-posts-post-id-unreadcount.md) - [/api/ext/v3/channels/{channel}/permissions](https://docs.wati.io/reference/get_api-ext-v3-channels-channel-permissions.md) - [/api/ext/v3/comments/{comment_id}/replies](https://docs.wati.io/reference/post_api-ext-v3-comments-comment-id-replies.md) - [/api/ext/v3/comments/{comment_id}/privateReply](https://docs.wati.io/reference/post_api-ext-v3-comments-comment-id-privatereply.md) - [Get sales pipeline](https://docs.wati.io/reference/post_api-ext-v3-salesanalytics-pipeline-1.md): Note: - From date and to date are in ISO 8601 format of UTC timezone. - Set agentIds to null or exclude it to include all agents in the results. - Set stageIds to null or exclude it to include all stages in the results. - [Get lead stages](https://docs.wati.io/reference/get_api-ext-v3-salesanalytics-leadstages-1.md): Returns the list of lead stages. - [Lists the tenant's contact segments.](https://docs.wati.io/reference/get_api-ext-v3-segments.md) - [Gets a segment definition and its current member count.](https://docs.wati.io/reference/get_api-ext-v3-segments-segmentid.md) - [Evaluates a segment filter and returns matching contacts without persisting a segment. Empty or missing groups return an empty page.](https://docs.wati.io/reference/post_api-ext-v3-segments-evaluate.md) ## Recipes - [Get Media](https://docs.wati.io/recipes/get-media.md) - [Send Session File](https://docs.wati.io/recipes/send-session-file.md) - [Send Session Message](https://docs.wati.io/recipes/send-session-message.md) - [Send Template Message](https://docs.wati.io/recipes/send-template-message.md) - [Send Template Messages - V3](https://docs.wati.io/recipes/send-template-messages-v3.md) - [Send Template Messages](https://docs.wati.io/recipes/send-template-messages.md) - [Sending Session Messages - V3](https://docs.wati.io/recipes/sending-session-messages.md) ## Pages - [Public Roadmap](https://docs.wati.io/page/public-roadmap.md)