curl --request GET \
--url https://api.setteo.io/v1/conversations \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.setteo.io/v1/conversations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.setteo.io/v1/conversations', 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.setteo.io/v1/conversations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.setteo.io/v1/conversations"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.setteo.io/v1/conversations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.setteo.io/v1/conversations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 456,
"platform": "whatsapp",
"agent_id": "agent_abc123",
"agent_name": "Assistant commercial",
"ai_stopped": false,
"lead": {
"id": 123,
"ext_id": "crm_123",
"first_name": "Jean",
"last_name": "Dupont",
"username": "jdupont",
"image": "https://example.com/avatar.jpg",
"email": "jean.dupont@example.com",
"phone": "+33612345678",
"source": "api",
"warmth": "warm",
"pipeline_stage": "qualified",
"is_optout": false,
"variables": {
"plan": "pro"
},
"whatsapp_phone_number_id": 12,
"created_at": "2026-07-08T12:00:00Z",
"updated_at": "2026-07-08T12:00:00Z",
"tags": [
{
"id": 1,
"label": "Prospect chaud",
"description": "Prospect prêt à réserver un appel.",
"pipeline_stage": "qualified",
"created_at": "2026-07-08T12:00:00Z",
"updated_at": "2026-07-08T12:00:00Z"
}
]
},
"summary": "Le prospect demande un devis et souhaite démarrer en septembre.",
"summary_generated_at": "2026-07-08T12:10:00Z",
"last_inbound_at": "2026-07-08T12:00:00Z",
"last_outbound_at": "2026-07-08T12:05:00Z",
"messages_count": 12,
"messages": [
{
"id": 789,
"conversation_id": 456,
"direction": "inbound",
"message": "Bonjour, je souhaite en savoir plus.",
"has_link": false,
"is_ai_generated": true,
"timestamp": "2026-07-08T12:10:00Z"
}
]
}
],
"links": {
"first": "<string>",
"last": "<string>",
"prev": "<string>",
"next": "<string>"
},
"meta": {
"path": "https://api.setteo.io/v1/leads",
"per_page": 25,
"next_cursor": "<string>",
"prev_cursor": "<string>"
}
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}{
"message": "The given data was invalid.",
"errors": {
"phone": [
"The phone has already been taken."
]
}
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}Lister les conversations
Retourne les conversations du tenant avec filtres optionnels.
curl --request GET \
--url https://api.setteo.io/v1/conversations \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.setteo.io/v1/conversations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.setteo.io/v1/conversations', 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.setteo.io/v1/conversations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.setteo.io/v1/conversations"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.setteo.io/v1/conversations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.setteo.io/v1/conversations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 456,
"platform": "whatsapp",
"agent_id": "agent_abc123",
"agent_name": "Assistant commercial",
"ai_stopped": false,
"lead": {
"id": 123,
"ext_id": "crm_123",
"first_name": "Jean",
"last_name": "Dupont",
"username": "jdupont",
"image": "https://example.com/avatar.jpg",
"email": "jean.dupont@example.com",
"phone": "+33612345678",
"source": "api",
"warmth": "warm",
"pipeline_stage": "qualified",
"is_optout": false,
"variables": {
"plan": "pro"
},
"whatsapp_phone_number_id": 12,
"created_at": "2026-07-08T12:00:00Z",
"updated_at": "2026-07-08T12:00:00Z",
"tags": [
{
"id": 1,
"label": "Prospect chaud",
"description": "Prospect prêt à réserver un appel.",
"pipeline_stage": "qualified",
"created_at": "2026-07-08T12:00:00Z",
"updated_at": "2026-07-08T12:00:00Z"
}
]
},
"summary": "Le prospect demande un devis et souhaite démarrer en septembre.",
"summary_generated_at": "2026-07-08T12:10:00Z",
"last_inbound_at": "2026-07-08T12:00:00Z",
"last_outbound_at": "2026-07-08T12:05:00Z",
"messages_count": 12,
"messages": [
{
"id": 789,
"conversation_id": 456,
"direction": "inbound",
"message": "Bonjour, je souhaite en savoir plus.",
"has_link": false,
"is_ai_generated": true,
"timestamp": "2026-07-08T12:10:00Z"
}
]
}
],
"links": {
"first": "<string>",
"last": "<string>",
"prev": "<string>",
"next": "<string>"
},
"meta": {
"path": "https://api.setteo.io/v1/leads",
"per_page": 25,
"next_cursor": "<string>",
"prev_cursor": "<string>"
}
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}{
"message": "The given data was invalid.",
"errors": {
"phone": [
"The phone has already been taken."
]
}
}{
"message": "Unauthenticated."
}{
"message": "Unauthenticated."
}Authorizations
Token API généré depuis votre espace de travail Setteo.
Query Parameters
Filtre par identifiant de prospect.
x >= 1Filtre par téléphone de prospect.
Filtre de date.
Filtre de date.
Filtre de date.
Filtre de date.
Filtre de date.
Filtre de date.
Inclut les conversations résumées à cette date ou après. Les conversations sans résumé sont exclues.
Inclut les conversations résumées à cette date ou avant. Les conversations sans résumé sont exclues.
Filtre les conversations dont le prospect possède au moins un des tags indiqués.
Exclut les conversations dont le prospect possède au moins un des tags indiqués.
Valeur de meta.next_cursor ou meta.prev_cursor reçue dans la réponse précédente. Renvoyez-la sans la modifier pour charger les résultats suivants ou précédents.
Nombre de résultats retournés.
10 <= x <= 100