curl --request GET \
--url https://api.wppfy.com/instance/wa_messages_limits \
--header 'token: <api-key>'import requests
url = "https://api.wppfy.com/instance/wa_messages_limits"
headers = {"token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {token: '<api-key>'}};
fetch('https://api.wppfy.com/instance/wa_messages_limits', 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://api.wppfy.com/instance/wa_messages_limits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.wppfy.com/instance/wa_messages_limits"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wppfy.com/instance/wa_messages_limits")
.header("token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wppfy.com/instance/wa_messages_limits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"provider": "whatsapp",
"reachable": true,
"can_send_new_messages": false,
"error_key": "WHATSAPP_REACHOUT_TIMELOCK",
"message": "WhatsApp indicates that the currently connected account is under a temporary restriction for starting new conversations. This is not an internal API error.",
"message_ptbr": "O WhatsApp indica que a conta atualmente conectada está sob uma restrição temporária para iniciar novas conversas. Isso não é um erro interno da API.",
"provider_message": "WhatsApp reported that the currently connected account is under a temporary restriction for starting new conversations, usually related to sending volume or quality.",
"provider_message_ptbr": "O WhatsApp informou que a conta atualmente conectada está sob uma restrição temporária para iniciar novas conversas, normalmente relacionada a volume ou qualidade de envios.",
"diagnostics_endpoint": "/instance/wa_messages_limits",
"new_chat_message_capping": {
"available": true,
"status": "CAPPED",
"used_quota": 10,
"total_quota": 10,
"cycle_end": "2026-04-30T23:59:59Z",
"ote_status": "EXHAUSTED",
"mv_status": "ACTIVE"
},
"reachout_timelock": {
"available": true,
"active": true,
"until": "2026-04-07T12:00:00Z",
"enforcement_type": "BIZ_QUALITY"
}
}Get current limits for new WhatsApp conversations
Queries the current WhatsApp limitation state for the currently connected account.
This endpoint is useful for:
- diagnosing send errors with
provider_code: 463 - checking whether WhatsApp indicates that the currently connected account can start new conversations
- displaying support information before campaigns or high-volume sends
The response consolidates two internal WhatsApp sources:
new_chat_message_capping: message limit for starting new conversationsreachout_timelock: temporary restriction on starting new conversations
Notes:
- this endpoint depends on an active, connected session
- if WhatsApp does not return the expected data, the response may mark the blocks as unavailable via
available: falseandlookup_error messagedescribes the current state of the currently connected accountprovider_messagedetails the reason reported by WhatsApp when there is an active restriction
curl --request GET \
--url https://api.wppfy.com/instance/wa_messages_limits \
--header 'token: <api-key>'import requests
url = "https://api.wppfy.com/instance/wa_messages_limits"
headers = {"token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {token: '<api-key>'}};
fetch('https://api.wppfy.com/instance/wa_messages_limits', 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://api.wppfy.com/instance/wa_messages_limits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.wppfy.com/instance/wa_messages_limits"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wppfy.com/instance/wa_messages_limits")
.header("token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wppfy.com/instance/wa_messages_limits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"provider": "whatsapp",
"reachable": true,
"can_send_new_messages": false,
"error_key": "WHATSAPP_REACHOUT_TIMELOCK",
"message": "WhatsApp indicates that the currently connected account is under a temporary restriction for starting new conversations. This is not an internal API error.",
"message_ptbr": "O WhatsApp indica que a conta atualmente conectada está sob uma restrição temporária para iniciar novas conversas. Isso não é um erro interno da API.",
"provider_message": "WhatsApp reported that the currently connected account is under a temporary restriction for starting new conversations, usually related to sending volume or quality.",
"provider_message_ptbr": "O WhatsApp informou que a conta atualmente conectada está sob uma restrição temporária para iniciar novas conversas, normalmente relacionada a volume ou qualidade de envios.",
"diagnostics_endpoint": "/instance/wa_messages_limits",
"new_chat_message_capping": {
"available": true,
"status": "CAPPED",
"used_quota": 10,
"total_quota": 10,
"cycle_end": "2026-04-30T23:59:59Z",
"ote_status": "EXHAUSTED",
"mv_status": "ACTIVE"
},
"reachout_timelock": {
"available": true,
"active": true,
"until": "2026-04-07T12:00:00Z",
"enforcement_type": "BIZ_QUALITY"
}
}Authorizations
Response
Current diagnosis of the new conversation limits of the currently connected account
"whatsapp"
Indicates whether at least one of the WhatsApp queries returned useful data
true
Indicates whether WhatsApp signals that the currently connected account can start new conversations.
May be null when the diagnosis could not be completed.
false
Error key derived from the current diagnostic
"WHATSAPP_REACHOUT_TIMELOCK"
Main technical message in English
"WhatsApp indicates that the currently connected account is under a temporary restriction for starting new conversations. This is not an internal API error."
Main message translated to pt-BR
"WhatsApp indicates that the currently connected account is under a temporary restriction on starting new conversations. This is not an internal API error."
Detailed reason reported by WhatsApp in English
"WhatsApp reported that the currently connected account is under a temporary restriction for starting new conversations, usually related to sending volume or quality."
Detailed reason reported by WhatsApp in pt-BR
"WhatsApp reported that the currently connected account is under a temporary restriction on starting new conversations, usually related to sending volume or quality."
"/instance/wa_messages_limits"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
