Get Conversation
curl --request GET \
--url https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId} \
--header 'x-api-key: <api-key>'import requests
url = "https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}', 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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}Conversation
Get conversation
Retrieve the status and details of a specific conversation
GET
/
v1
/
external-support
/
{projectId}
/
conversations
/
{conversationId}
Get Conversation
curl --request GET \
--url https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId} \
--header 'x-api-key: <api-key>'import requests
url = "https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}', 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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<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://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}{
"message": "<string>",
"statusMessage": "<string>",
"status": 123,
"error": {
"code": "<string>",
"key": "<string>",
"description": "<string>",
"developerMessages": {},
"clientMessages": {}
},
"validationError": {}
}This endpoint does not emit any event to the webhook. It is a read-only query to retrieve the current status of a conversation.
Description
Retrieves the details and current status of a specific conversation. Returns information about the user, the associated bot, start and close dates, and the end reason if applicable.Endpoint
GET https://gateway.jelou.ai/platform/v1/external-support/{projectId}/conversations/{conversationId}
Path parameters
string
required
Unique identifier of the Jelou project the conversation belongs to.
string
required
Unique identifier of the conversation you want to retrieve.
Authentication
All requests must include thex-api-key header with your Jelou project API key.
x-api-key: API_KEY
Request example
The following example retrieves the details of conversationCONVERSATION_ID within project PROJECT_ID:
cURL
curl --request GET \
--url https://gateway.jelou.ai/platform/v1/external-support/PROJECT_ID/conversations/CONVERSATION_ID \
--header 'x-api-key: API_KEY'
Responses
| Code | Status | Description |
|---|---|---|
| 200 | OK | Conversation found. Returns the conversation details. |
| 401 | Unauthorized | Invalid or missing authentication credentials. |
| 404 | Not Found | Conversation not found for the specified identifiers. |
| 500 | Internal Server Error | Internal server error. |
Response example
{
"message": [
"Conversation retrieved successfully"
],
"statusMessage": "success",
"status": 1,
"data": {
"_id": "CONVERSATION_ID",
"roomId": "ROOM_ID",
"state": "closed",
"startAt": "2026-01-15T10:30:00.000Z",
"endAt": "2026-01-15T10:45:00.000Z",
"endedReason": "closed_by_operator",
"User": {
"id": "USER_ID",
"names": "USER_NAME",
"referenceId": "USER_REFERENCE_ID",
"createdAt": "2025-01-28T20:54:25.572Z"
},
"Bot": {
"id": "BOT_ID",
"name": "BOT_NAME",
"type": "Whatsapp"
}
}
}
Response structure
| Field | Type | Description |
|---|---|---|
data._id | string | Unique identifier of the conversation. |
data.roomId | string | Conversation room identifier. |
data.state | string | Conversation state: active or closed. |
data.startAt | date | Date and time the conversation started. |
data.endAt | date | Date and time of closing. Present only if the conversation is closed. |
data.endedReason | string | Close reason: closed_by_operator. |
data.User.id | string | End user identifier. |
data.User.names | string | End user name. |
data.User.referenceId | string | External reference identifier of the user. |
data.Bot.id | string | Identifier of the bot that handled the conversation. |
data.Bot.name | string | Bot name. |
data.Bot.type | string | Bot channel (for example: Whatsapp). |
Was this page helpful?
⌘I