curl --request GET \
--url https://api.aisa.one/apis/v1/agentmail/threads/{thread_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}', 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.aisa.one/apis/v1/agentmail/threads/{thread_id}",
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.aisa.one/apis/v1/agentmail/threads/{thread_id}"
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.aisa.one/apis/v1/agentmail/threads/{thread_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}")
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{
"inbox_id": "<string>",
"thread_id": "<string>",
"labels": [
"<string>"
],
"timestamp": "2023-11-07T05:31:56Z",
"senders": [
"<string>"
],
"recipients": [
"<string>"
],
"last_message_id": "<string>",
"message_count": 123,
"size": 123,
"updated_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"messages": [
{
"inbox_id": "<string>",
"thread_id": "<string>",
"message_id": "<string>",
"labels": [
"<string>"
],
"timestamp": "2023-11-07T05:31:56Z",
"from": "<string>",
"to": [
"<string>"
],
"size": 123,
"updated_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"reply_to": [
"<string>"
],
"cc": [
"<string>"
],
"bcc": [
"<string>"
],
"subject": "<string>",
"preview": "<string>",
"text": "<string>",
"html": "<string>",
"extracted_text": "<string>",
"extracted_html": "<string>",
"attachments": [
{
"attachment_id": "<string>",
"size": 123,
"filename": "<string>",
"content_type": "<string>",
"content_disposition": "inline",
"content_id": "<string>"
}
],
"in_reply_to": "<string>",
"references": [
"<string>"
],
"headers": {}
}
],
"received_timestamp": "2023-11-07T05:31:56Z",
"sent_timestamp": "2023-11-07T05:31:56Z",
"subject": "<string>",
"preview": "<string>",
"attachments": [
{
"attachment_id": "<string>",
"size": 123,
"filename": "<string>",
"content_type": "<string>",
"content_disposition": "inline",
"content_id": "<string>"
}
]
}{
"name": "<string>",
"message": "<string>"
}Get Any Thread
Get Any Thread
curl --request GET \
--url https://api.aisa.one/apis/v1/agentmail/threads/{thread_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}', 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.aisa.one/apis/v1/agentmail/threads/{thread_id}",
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.aisa.one/apis/v1/agentmail/threads/{thread_id}"
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.aisa.one/apis/v1/agentmail/threads/{thread_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}")
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{
"inbox_id": "<string>",
"thread_id": "<string>",
"labels": [
"<string>"
],
"timestamp": "2023-11-07T05:31:56Z",
"senders": [
"<string>"
],
"recipients": [
"<string>"
],
"last_message_id": "<string>",
"message_count": 123,
"size": 123,
"updated_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"messages": [
{
"inbox_id": "<string>",
"thread_id": "<string>",
"message_id": "<string>",
"labels": [
"<string>"
],
"timestamp": "2023-11-07T05:31:56Z",
"from": "<string>",
"to": [
"<string>"
],
"size": 123,
"updated_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"reply_to": [
"<string>"
],
"cc": [
"<string>"
],
"bcc": [
"<string>"
],
"subject": "<string>",
"preview": "<string>",
"text": "<string>",
"html": "<string>",
"extracted_text": "<string>",
"extracted_html": "<string>",
"attachments": [
{
"attachment_id": "<string>",
"size": 123,
"filename": "<string>",
"content_type": "<string>",
"content_disposition": "inline",
"content_id": "<string>"
}
],
"in_reply_to": "<string>",
"references": [
"<string>"
],
"headers": {}
}
],
"received_timestamp": "2023-11-07T05:31:56Z",
"sent_timestamp": "2023-11-07T05:31:56Z",
"subject": "<string>",
"preview": "<string>",
"attachments": [
{
"attachment_id": "<string>",
"size": 123,
"filename": "<string>",
"content_type": "<string>",
"content_disposition": "inline",
"content_id": "<string>"
}
]
}{
"name": "<string>",
"message": "<string>"
}thread_id, inbox_id, labels, timestamp, received_timestamp, sent_timestamp, senders, recipients, subject, preview, attachments and messages. Because no inbox is named, this resolves against the whole account. Every AIsa caller shares one AgentMail account, so this reaches inboxes other callers created, so a thread id that is not yours still resolves — check the returned inbox_id. The scoped twin is get_agentmail_inbox_thread.
Example
curl -X GET "https://api.aisa.one/apis/v1/agentmail/threads/{thread_id}" \
-H "Authorization: Bearer YOUR_API_KEY"
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Bearer authentication
Path Parameters
ID of thread.
Response
Response with status 200
The ID of the inbox.
ID of thread.
Labels of thread.
Timestamp of last sent or received message.
Senders in thread. In format username@domain.com or Display Name <username@domain.com>.
Recipients in thread. In format username@domain.com or Display Name <username@domain.com>.
ID of last message in thread.
Number of messages in thread.
Size of thread in bytes.
Time at which thread was last updated.
Time at which thread was created.
Messages in thread. Ordered by timestamp ascending.
Show child attributes
Show child attributes
Timestamp of last received message.
Timestamp of last sent message.
Subject of thread.
Text preview of last message in thread.
Attachments in thread.
Show child attributes
Show child attributes