curl --request GET \
--url https://api.devic.ai/v1/agents/{agentId}/threads \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devic.ai/v1/agents/{agentId}/threads"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devic.ai/v1/agents/{agentId}/threads', 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.devic.ai/v1/agents/{agentId}/threads",
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.devic.ai/v1/agents/{agentId}/threads"
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.devic.ai/v1/agents/{agentId}/threads")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devic.ai/v1/agents/{agentId}/threads")
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[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"agentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "RUNNING",
"createdAt": "2023-11-07T05:31:56Z",
"messages": [
{
"role": "user",
"content": "<string>",
"name": "<string>",
"tool_call_id": "<string>"
}
],
"updatedAt": "2023-11-07T05:31:56Z",
"metadata": {},
"cost": 123
}
]Get threads for an agent
Retrieves a list of execution threads associated with the specified agent. This can be used for monitoring and debugging purposes.
curl --request GET \
--url https://api.devic.ai/v1/agents/{agentId}/threads \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devic.ai/v1/agents/{agentId}/threads"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devic.ai/v1/agents/{agentId}/threads', 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.devic.ai/v1/agents/{agentId}/threads",
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.devic.ai/v1/agents/{agentId}/threads"
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.devic.ai/v1/agents/{agentId}/threads")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devic.ai/v1/agents/{agentId}/threads")
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[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"agentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "RUNNING",
"createdAt": "2023-11-07T05:31:56Z",
"messages": [
{
"role": "user",
"content": "<string>",
"name": "<string>",
"tool_call_id": "<string>"
}
],
"updatedAt": "2023-11-07T05:31:56Z",
"metadata": {},
"cost": 123
}
]Authorizations
An API key from your Devic console, sent as Authorization: Bearer <key>. An embedded front end sends a tenant-session token instead, so no API key reaches the browser, and an OAuth integration sends its access token. Missing, invalid or expired credentials get a 401. See Authentication.
Path Parameters
UUID of the agent whose threads should be listed
Query Parameters
Filter threads by status Current status of the thread
RUNNING, PAUSED, COMPLETED, FAILED, AWAITING_APPROVAL Maximum number of threads to return (pagination)
1 <= x <= 100Number of threads to skip (pagination offset)
x >= 0Filter threads by tenant ID
Filter threads by subtenant ID (end user/entity inside a tenant)
Response
List of threads for the specified agent
Unique identifier for the thread
Unique identifier for the associated agent
Current status of the thread
RUNNING, PAUSED, COMPLETED, FAILED, AWAITING_APPROVAL Timestamp when the thread was created
Messages exchanged in the thread
Show child attributes
Show child attributes
Timestamp when the thread was last updated
Custom metadata associated with the thread
Total cost accumulated by this thread