List Messages
List messages exchanged in the workspace.
Requires the messages:read scope on the API key.
curl --request GET \
--url https://api.topo.io/v1/messages \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.topo.io/v1/messages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.topo.io/v1/messages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"channel": "EMAIL",
"direction": "INBOUND",
"subject": "<string>",
"body": "<string>",
"sent_at": "2023-11-07T05:31:56Z",
"sender_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sender": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "<string>",
"name": "<string>"
}
}
],
"total_count": 123,
"total_pages": 123,
"has_more": true
}Authorizations
Bearer API key issued from Settings → Developers.
Query Parameters
Page number.
x >= 1Number of items per page.
1 <= x <= 100Field to sort by.
sent_at Sort direction.
asc, desc Filter by contact linked to the message sequence.
Filter by sequence run.
Filter by channel.
EMAIL, LINKEDIN, CALENDAR, MANUAL Filter by message direction.
INBOUND, OUTBOUND Return messages sent strictly after this timestamp.
Return messages sent strictly before this timestamp.
Response
Successful Response
Records on this page.
Hide child attributes
Hide child attributes
Unique identifier.
Channel the message was sent on.
EMAIL, LINKEDIN, CALENDAR, MANUAL Inbound (from the contact) or outbound (sent by your team).
INBOUND, OUTBOUND Email subject line, if any.
Message body. Inbound messages have quoted reply history stripped.
When the message was sent or received.
Sending mailbox that sent an outbound message. Null for inbound messages from the contact.
Total number of records matching the query.
Total number of pages.
Whether more pages remain after the current one.
Was this page helpful?
curl --request GET \
--url https://api.topo.io/v1/messages \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.topo.io/v1/messages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.topo.io/v1/messages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"channel": "EMAIL",
"direction": "INBOUND",
"subject": "<string>",
"body": "<string>",
"sent_at": "2023-11-07T05:31:56Z",
"sender_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sender": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "<string>",
"name": "<string>"
}
}
],
"total_count": 123,
"total_pages": 123,
"has_more": true
}