List Threaded Messages
curl --request GET \
--url https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread \
--header 'apikey: <api-key>'import requests
url = "https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread', 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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread",
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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread"
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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread")
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{
"data": [
{
"id": "2",
"conversationId": "cometchat-uid-3_user_cometchat-uid-5",
"sender": "cometchat-uid-3",
"receiverType": "user",
"receiver": "cometchat-uid-5",
"category": "message",
"type": "text",
"data": {
"text": "test hello",
"entities": {
"sender": {
"entity": {
"uid": "cometchat-uid-3",
"name": "Nancy Grace",
"role": "default",
"avatar": "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-3.webp",
"status": "offline",
"createdAt": 1638361550
},
"entityType": "user"
},
"receiver": {
"entity": {
"uid": "cometchat-uid-5",
"name": "John Paul",
"role": "default",
"avatar": "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-5.webp",
"status": "offline",
"createdAt": 1638361550,
"conversationId": "cometchat-uid-3_user_cometchat-uid-5"
},
"entityType": "user"
}
},
"metadata": {
"key1": "val1"
}
},
"sentAt": 1638423490,
"updatedAt": 1638423490,
"parentId": "1"
}
],
"meta": {
"current": {
"limit": 10,
"count": 1
},
"next": {
"affix": "append",
"sentAt": 1638423490,
"id": "3"
}
}
}Messages
List Threaded Messages
List threaded replies for a CometChat message by parent message ID with REST API to fetch thread conversations.
GET
/
messages
/
{id}
/
thread
List Threaded Messages
curl --request GET \
--url https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread \
--header 'apikey: <api-key>'import requests
url = "https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread', 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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread",
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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread"
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://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{appId}.api-{region}.cometchat.io/v3/messages/{id}/thread")
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{
"data": [
{
"id": "2",
"conversationId": "cometchat-uid-3_user_cometchat-uid-5",
"sender": "cometchat-uid-3",
"receiverType": "user",
"receiver": "cometchat-uid-5",
"category": "message",
"type": "text",
"data": {
"text": "test hello",
"entities": {
"sender": {
"entity": {
"uid": "cometchat-uid-3",
"name": "Nancy Grace",
"role": "default",
"avatar": "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-3.webp",
"status": "offline",
"createdAt": 1638361550
},
"entityType": "user"
},
"receiver": {
"entity": {
"uid": "cometchat-uid-5",
"name": "John Paul",
"role": "default",
"avatar": "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-5.webp",
"status": "offline",
"createdAt": 1638361550,
"conversationId": "cometchat-uid-3_user_cometchat-uid-5"
},
"entityType": "user"
}
},
"metadata": {
"key1": "val1"
}
},
"sentAt": 1638423490,
"updatedAt": 1638423490,
"parentId": "1"
}
],
"meta": {
"current": {
"limit": 10,
"count": 1
},
"next": {
"affix": "append",
"sentAt": 1638423490,
"id": "3"
}
}
}For the complete error reference, see Error Guide.
Authorizations
API Key with fullAccess scope(i.e. Rest API Key from the Dashboard).
Headers
UID of the user on whose behalf the action is performed.
Path Parameters
Id of the message whose thread messages are to be fetched.
Query Parameters
Number of threaded messages to return per page.
Page number for paginated results.
Was this page helpful?
⌘I