Evolution V2
Find chat by JID
Returns the chat matching the given remote JID. Pass remoteJid as a required query parameter (e.g. ?remoteJid=5511999999999@s.whatsapp.net); there is no request body.
GET
/
chat
/
findChatByRemoteJid
/
{instance}
Find chat by JID
curl --request GET \
--url https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance} \
--header 'apikey: <api-key>'import requests
url = "https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}', 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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"apikey: <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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("apikey", "<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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["apikey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "clzabc123def456ghi789jkl",
"remoteJid": "5511999999999@s.whatsapp.net",
"name": "Maria Silva",
"labels": [],
"createdAt": "2026-07-09T13:00:00.000Z",
"updatedAt": "2026-07-09T18:20:00.000Z",
"instanceId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"unreadMessages": 2
}{
"status": 400,
"error": "Bad Request",
"message": "Invalid payload"
}Authorizations
Your Pilot Status API key (ps_...). Evolution GO also accepts Authorization: Bearer <key>.
Path Parameters
The number's display name in the Pilot Status dashboard.
Response
object | null
Success — provider-native response body.
The stored Chat record for the given remoteJid, or null when no chat exists.
Chat record id (cuid).
Chat JID.
Owning instance id.
Count of unread messages in the chat.
Chat/group name, when known.
Label ids applied to the chat.
ISO timestamp when the chat was created.
ISO timestamp of last update.
Was this page helpful?
⌘I
Find chat by JID
curl --request GET \
--url https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance} \
--header 'apikey: <api-key>'import requests
url = "https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}', 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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"apikey: <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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("apikey", "<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://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://pilotstatus.com.br/api/layer/evolution-v2/chat/findChatByRemoteJid/{instance}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["apikey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "clzabc123def456ghi789jkl",
"remoteJid": "5511999999999@s.whatsapp.net",
"name": "Maria Silva",
"labels": [],
"createdAt": "2026-07-09T13:00:00.000Z",
"updatedAt": "2026-07-09T18:20:00.000Z",
"instanceId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"unreadMessages": 2
}{
"status": 400,
"error": "Bad Request",
"message": "Invalid payload"
}