Pin User Conversation
curl --request POST \
--url https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin \
--header 'apikey: <api-key>' \
--header 'onBehalfOf: <onbehalfof>'import requests
url = "https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin"
headers = {
"onBehalfOf": "<onbehalfof>",
"apikey": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {onBehalfOf: '<onbehalfof>', apikey: '<api-key>'}};
fetch('https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin', 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/users/{uid}/conversation/pin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"apikey: <api-key>",
"onBehalfOf: <onbehalfof>"
],
]);
$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/users/{uid}/conversation/pin"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("onBehalfOf", "<onbehalfof>")
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.post("https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin")
.header("onBehalfOf", "<onbehalfof>")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["onBehalfOf"] = '<onbehalfof>'
request["apikey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"conversationId": "superhero1_user_superhero2",
"conversationType": "user",
"pinnedBy": "superhero1",
"pinnedAt": 1700210300
}
}{
"error": {
"code": "ERR_PINNED_CONVERSATIONS_LIMIT_EXCEEDED",
"message": "The number of pinned conversations for the user with uid superhero1 exceeds the allowed limit of 5."
}
}{
"error": {
"code": "ERR_SYSTEM_PINNED_CONVERSATION",
"message": "The conversation is pinned for all users by the app and can not be pinned by a user."
}
}Conversations
Pin User Conversation
Pin a CometChat one-on-one conversation for a user with REST API so it appears at the top of their conversation list.
POST
/
users
/
{uid}
/
conversation
/
pin
Pin User Conversation
curl --request POST \
--url https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin \
--header 'apikey: <api-key>' \
--header 'onBehalfOf: <onbehalfof>'import requests
url = "https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin"
headers = {
"onBehalfOf": "<onbehalfof>",
"apikey": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {onBehalfOf: '<onbehalfof>', apikey: '<api-key>'}};
fetch('https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin', 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/users/{uid}/conversation/pin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"apikey: <api-key>",
"onBehalfOf: <onbehalfof>"
],
]);
$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/users/{uid}/conversation/pin"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("onBehalfOf", "<onbehalfof>")
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.post("https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin")
.header("onBehalfOf", "<onbehalfof>")
.header("apikey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{appId}.api-{region}.cometchat.io/v3/users/{uid}/conversation/pin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["onBehalfOf"] = '<onbehalfof>'
request["apikey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"conversationId": "superhero1_user_superhero2",
"conversationType": "user",
"pinnedBy": "superhero1",
"pinnedAt": 1700210300
}
}{
"error": {
"code": "ERR_PINNED_CONVERSATIONS_LIMIT_EXCEEDED",
"message": "The number of pinned conversations for the user with uid superhero1 exceeds the allowed limit of 5."
}
}{
"error": {
"code": "ERR_SYSTEM_PINNED_CONVERSATION",
"message": "The conversation is pinned for all users by the app and can not be pinned by a user."
}
}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
UID of the user whose conversation needs to be fetched.
Response
Pinning a one-to-one conversation
Was this page helpful?