Docs / Messages
get_chat
Read one conversation.
This action only reads. It changes nothing, so it is safe to try.
What you give it
| Input | What it is | Where to get it |
|---|---|---|
chatIdneeded | A chat id. The conversation id (from list_chats). | Run list_chats and use chats[].id from its answer.12 more places to get it
|
connectionIdoptional | A connection id. Which of your LinkedIn accounts to act from (its id from list_linkedin_accounts). Omit to use your first live one. | Run list_linkedin_accounts and use accounts[].id from its answer.15 more places to get it
|
Call it
curl -X POST https://api.heyreagent.com/v1/actions/get_chat \
-H "Authorization: Bearer YOUR_KEY" \
-H "content-type: application/json" \
-d '{"chatId":"PASTE_CHAT_ID_HERE"}'The same call in JavaScript
const response = await fetch("https://api.heyreagent.com/v1/actions/get_chat", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_KEY",
"content-type": "application/json",
},
body: JSON.stringify({
"chatId": "PASTE_CHAT_ID_HERE"
}),
});
const answer = await response.json();
console.log(answer);The same call in Python
import requests
response = requests.post(
"https://api.heyreagent.com/v1/actions/get_chat",
headers={"Authorization": "Bearer YOUR_KEY"},
json={
"chatId": "PASTE_CHAT_ID_HERE",
},
)
print(response.json())The same call in n8n
Add an HTTP Request node and fill it in like this:
| Method | POST |
| URL | https://api.heyreagent.com/v1/actions/get_chat |
| Send Headers | On. Name Authorization, Value Bearer YOUR_KEY |
| Send Body | On. Body Content Type JSON, Specify Body Using JSON, then paste the body below |
{
"chatId": "PASTE_CHAT_ID_HERE"
}Put your own key where it says YOUR_KEY. Put your own value where it says PASTE_…_HERE: the table above says where each one comes from. New here? Start with your first call.
What you get back
When it worked, the answer is { "ok": true, "result": { … } }. Inside result:
id | A chat id. Other actions take it. |
accountType | WHATSAPP | LINKEDIN | SLACK | TWITTER | MESSENGER | INSTAGRAM | TELEGRAM |
providerId | string |
attendeeProviderId | A member id. Other actions take it. |
name | string or null |
type | 0 | 1 | 2 |
timestamp | string or null |
unreadCount | number |
archived | 0 | 1 |
mutedUntil | -1 | string or null |
readOnly | 0 | 1 | 2 |
disabledFeatures | reactions | reply[] |
subject | string |
organizationId | string |
mailboxId | string |
contentType | inmail | sponsored | linkedin_offer |
folder | INBOX | INBOX_LINKEDIN_CLASSIC | INBOX_LINKEDIN_RECRUITER | INBOX_LINKEDIN_SALES_NAVIGATOR | INBOX_LINKEDIN_ORGANIZATION | INBOX_INSTAGRAM_GENERAL | PENDING | OTHER | SPAM | ARCHIVED | HIDDEN | UNKNOWN | string[] |
pinned | 0 | 1 |
lastMessage.messageId | string |
lastMessage.providerId | string |
lastMessage.senderId | string |
lastMessage.text | string or null |
lastMessage.id | A message id. Other actions take it. |
lastMessage.chatId | string |
lastMessage.chatProviderId | string |
lastMessage.timestamp | string |
lastMessage.isSender | 0 | 1 |
lastMessage.isForwarded | boolean |
lastMessage.isViewOnce | boolean |
lastMessage.seen | 0 | 1 |
lastMessage.hidden | 0 | 1 |
lastMessage.deleted | 0 | 1 |
lastMessage.edited | 0 | 1 |
lastMessage.isEvent | 0 | 1 |
lastMessage.delivered | 0 | 1 |
lastMessage.behavior | 0 or null |
lastMessage.eventType | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
lastMessage.original | string |
lastMessage.replies | number |
lastMessage.replyBy | string[] |
lastMessage.parent | string |
lastMessage.senderAttendeeId | string |
lastMessage.subject | string or null |
lastMessage.messageType | MESSAGE | INVITATION | INMAIL | INMAIL_DECLINE | INMAIL_REPLY | INMAIL_ACCEPT | STORY_MENTION | STORY_REPLY | CONTACT |
lastMessage.attendeeType | MEMBER | ORGANIZATION | OTHER |
lastMessage.attendeeDistance | 1 | 2 | 3 | 4 | -1 |
lastMessage.senderUrn | string |
A field that does not apply to an answer is left out, or is null. There are 127 more fields nested inside these.
When it did not work, the answer is { "ok": false, "error": "…", "message": "…" }. What each error means.
In Claude or ChatGPT
Once connected, ask in your own words. The assistant sees this action as a tool with the same name, get_chat, and the same inputs.