Documentation Index

Fetch the complete documentation index at: https://academy.insiderone.com/llms.txt

Use this file to discover all available pages before exploring further.

Send Typing Indicator for Conversational WhatsApp API with OAuth 2.0

Prev Next

The Typing Indicator API allows your application to display a "typing..." indicator in a WhatsApp conversation while your system prepares a response.

When the Typing Indicator request is sent:

  1. The user sees a "typing..." animation from your business.

  2. The incoming message is automatically marked as read and displays double blue checkmarks.

For example, when a user sends a message such as "help", Insider One forwards the message to your webhook endpoint. Your system retrieves the message_id from the webhook payload and sends it to the Typing Indicator endpoint. The user then sees the read receipt and typing indicator while your system processes the request and prepares a response.

Read receipts are always sent. Triggering a typing indicator automatically marks the incoming message as read and displays a read receipt to the user.

For information on receiving incoming WhatsApp messages through webhooks, refer to Webhooks for Conversational WhatsApp.

Prerequisites

Before using the Typing Indicator API, ensure that you have:

  • An active Conversational API integration on InOne.

  • A valid OAuth 2.0 credential. For step-by-step instructions on generating an OAuth 2.0 credential, refer to Send Conversational WhatsApp Messages with OAuth 2.0.

  • The message_id of the incoming WhatsApp message, retrieved from your webhook payload.

Endpoint

POST https://gw.useinsider.com/api/wa/v2/conversational/messages/send

Body Parameters

Parameter

Data Type

Required

Description

messaging_product

String

Yes

Must be "whatsapp".

status

String

Yes

Must be "read".

message_id

String

Yes

The ID of the incoming user message from your webhook payload.

typing_indicator.type

String

Yes

Must be "text".

Sample Request

curl --location 'https://gw.useinsider.com/api/wa/v2/conversational/messages/send' \
--header 'Authorization: Bearer {{oauth2-bearer}}' \
--header 'Content-Type: application/json' \
--data '{
    "messaging_product": "whatsapp",
    "status": "read",
    "message_id": "{{MESSAGE_ID}}",
    "typing_indicator": {
        "type": "text"
    }
}'

Sample Responses

A successful request returns the HTTP 200 OK response below.

{
    "success": true
}

400 Bad Request

{
    "error": {
        "message": "(#100) Invalid parameter",
        "code": 100,
        "type": "OAuthException",
        "error_data": {
            "messaging_product": "whatsapp",
            "details": "Message supplied to mark message as read API with message ID: wamid.HBgMOTk0NTU4OTY0MTg0FQIAERgSOEZGMEQxMEQ3OEEzOEI1QjlEAA== is outgoing. Please use an incoming message ID."
        },
        "fbtrace_id": "ARoq5AnglzzrJ9RYBbociIq"
    }
}

Limitations

  • Manual triggering is required. Typing indicators are not sent automatically. Your system must call this endpoint after receiving an incoming message through a webhook.

  • Rate limits apply. Requests to this endpoint are sent directly to Meta and bypass the standard message queue. To maintain system stability, rate limits are enforced. For more information, refer to the API Rate Limits.