cURL
curl --request POST \
--url https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"chatId": "[email protected]",
"messageId": "[email protected]_3EB08F6AD2A432386EFA0E",
"participant": "[email protected]"
}
'import requests
url = "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen"
payload = {
"chatId": "[email protected]",
"messageId": "[email protected]_3EB08F6AD2A432386EFA0E",
"participant": "[email protected]"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
chatId: '[email protected]',
messageId: '[email protected]_3EB08F6AD2A432386EFA0E',
participant: '[email protected]'
})
};
fetch('https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'chatId' => '[email protected]',
'messageId' => '[email protected]_3EB08F6AD2A432386EFA0E',
'participant' => '[email protected]'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen"
payload := strings.NewReader("{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}"
response = http.request(request)
puts response.read_body{}Send Seen
Indicate to the recipient that you have seen their message in the chat
POST
/
{instance}
/
send-seen
cURL
curl --request POST \
--url https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"chatId": "[email protected]",
"messageId": "[email protected]_3EB08F6AD2A432386EFA0E",
"participant": "[email protected]"
}
'import requests
url = "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen"
payload = {
"chatId": "[email protected]",
"messageId": "[email protected]_3EB08F6AD2A432386EFA0E",
"participant": "[email protected]"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
chatId: '[email protected]',
messageId: '[email protected]_3EB08F6AD2A432386EFA0E',
participant: '[email protected]'
})
};
fetch('https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'chatId' => '[email protected]',
'messageId' => '[email protected]_3EB08F6AD2A432386EFA0E',
'participant' => '[email protected]'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen"
payload := strings.NewReader("{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.hypersender.com/api/whatsapp/v2/{instance}/send-seen")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"chatId\": \"[email protected]\",\n \"messageId\": \"[email protected]_3EB08F6AD2A432386EFA0E\",\n \"participant\": \"[email protected]\"\n}"
response = http.request(request)
puts response.read_body{}V2 Queued Response: All API requests in V2 are queued for improved reliability. You’ll receive an immediate response with a
queued_request_uuid that you can use to check the actual message status.Response Format
All requests return a queued response:{
"queued": true,
"message": "Processing your request...",
"queued_request_uuid": "a0816120-7e37-4e8b-8cf3-92deb2cdc133",
"queued_request_link": "https://app.hypersender.com/api/whatsapp/v2/{instance}/queued-requests/a0816120-7e37-4e8b-8cf3-92deb2cdc133"
}
queued_request_link or the Get Queued Request endpoint to check the actual message response once it’s processed.
More details on queued requests can be found in the Queued Requests Documentation.
If you get a new message via 🔄 Webhooks and want to reply to that message, you need to first send that you’ve seen the message (double green tick).
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
application/json
Example:
"application/json"
application/json
Example:
"application/json"
Path Parameters
Instance UUID copied from hypersender dashboard
Example:
"{{ instance_id }}"
Body
application/json
Example:
Participant JID for group messages
Response
Successful response
The response is of type object.