Messages
Get messages
List all messages of a conversation
GET
/
api
/
v1
/
accounts
/
{account_id}
/
conversations
/
{conversation_id}
/
messages
Get messages
curl --request GET \
--url https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages \
--header 'api_access_token: <api-key>'import requests
url = "https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages"
headers = {"api_access_token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {api_access_token: '<api-key>'}};
fetch('https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages', 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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"api_access_token: <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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("api_access_token", "<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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages")
.header("api_access_token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["api_access_token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"labels": [
"<string>"
],
"additional_attributes": {},
"contact": {
"payload": [
{
"additional_attributes": {},
"availability_status": "<string>",
"email": "<string>",
"id": 123,
"name": "<string>",
"phone_number": "<string>",
"blocked": true,
"identifier": "<string>",
"thumbnail": "<string>",
"custom_attributes": {
"attribute_key": "attribute_value",
"signed_up_at": "dd/mm/yyyy"
},
"last_activity_at": 123,
"created_at": 123,
"contact_inboxes": [
{
"source_id": "<string>",
"inbox": {
"id": 123,
"avatar_url": "<string>",
"channel_id": 123,
"name": "<string>",
"channel_type": "<string>",
"provider": "<string>"
}
}
]
}
]
},
"assignee": {
"id": 123,
"account_id": 123,
"availability_status": "available",
"auto_offline": true,
"confirmed": true,
"email": "<string>",
"available_name": "<string>",
"name": "<string>",
"role": "agent",
"thumbnail": "<string>",
"custom_role_id": 123
},
"agent_last_seen_at": "2023-11-07T05:31:56Z",
"assignee_last_seen_at": "2023-11-07T05:31:56Z"
},
"payload": [
{
"id": 123,
"content": "<string>",
"account_id": 123,
"inbox_id": 123,
"conversation_id": 123,
"message_type": 0,
"created_at": 123,
"updated_at": 123,
"private": true,
"status": "sent",
"source_id": "<string>",
"content_type": "text",
"content_attributes": {},
"sender_type": "Contact",
"sender_id": 123,
"external_source_ids": {},
"additional_attributes": {},
"processed_message_content": "<string>",
"sentiment": {},
"conversation": {},
"attachment": {},
"sender": {}
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}Authorizations
This token can be obtained by visiting the profile page or via rails console. Provides access to endpoints based on the user permissions levels. This token can be saved by an external system when user is created via API, to perform activities on behalf of the user.
Path Parameters
The numeric ID of the account
The numeric ID of the conversation
Query Parameters
Fetch messages after the message with this ID. Returns up to 100 messages in ascending order.
Fetch messages before the message with this ID. Returns up to 20 messages in ascending order.
⌘I
Get messages
curl --request GET \
--url https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages \
--header 'api_access_token: <api-key>'import requests
url = "https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages"
headers = {"api_access_token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {api_access_token: '<api-key>'}};
fetch('https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages', 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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"api_access_token: <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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("api_access_token", "<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://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages")
.header("api_access_token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://connect.voxys.ai/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["api_access_token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"labels": [
"<string>"
],
"additional_attributes": {},
"contact": {
"payload": [
{
"additional_attributes": {},
"availability_status": "<string>",
"email": "<string>",
"id": 123,
"name": "<string>",
"phone_number": "<string>",
"blocked": true,
"identifier": "<string>",
"thumbnail": "<string>",
"custom_attributes": {
"attribute_key": "attribute_value",
"signed_up_at": "dd/mm/yyyy"
},
"last_activity_at": 123,
"created_at": 123,
"contact_inboxes": [
{
"source_id": "<string>",
"inbox": {
"id": 123,
"avatar_url": "<string>",
"channel_id": 123,
"name": "<string>",
"channel_type": "<string>",
"provider": "<string>"
}
}
]
}
]
},
"assignee": {
"id": 123,
"account_id": 123,
"availability_status": "available",
"auto_offline": true,
"confirmed": true,
"email": "<string>",
"available_name": "<string>",
"name": "<string>",
"role": "agent",
"thumbnail": "<string>",
"custom_role_id": 123
},
"agent_last_seen_at": "2023-11-07T05:31:56Z",
"assignee_last_seen_at": "2023-11-07T05:31:56Z"
},
"payload": [
{
"id": 123,
"content": "<string>",
"account_id": 123,
"inbox_id": 123,
"conversation_id": 123,
"message_type": 0,
"created_at": 123,
"updated_at": 123,
"private": true,
"status": "sent",
"source_id": "<string>",
"content_type": "text",
"content_attributes": {},
"sender_type": "Contact",
"sender_id": 123,
"external_source_ids": {},
"additional_attributes": {},
"processed_message_content": "<string>",
"sentiment": {},
"conversation": {},
"attachment": {},
"sender": {}
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}
