Read a complete accessible ticket thread without marking it seen
curl --request GET \
--url https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"serverNow": "2023-11-07T05:31:56Z",
"conversation": {
"id": "<string>",
"workspaceId": "<string>",
"agentId": "<string>",
"channel": "playground",
"surface": "widget",
"visitorId": "<string>",
"subject": "<string>",
"createdBy": "<string>",
"contactId": "<string>",
"status": "open",
"mode": "ai",
"modeLocked": true,
"modeSource": "legacy",
"modeVersion": 4503599627370495,
"contactEmail": "<string>",
"visitorLastSeenAt": "2023-11-07T05:31:56Z",
"visitorSeenAt": "2023-11-07T05:31:56Z",
"agentSeenAt": "2023-11-07T05:31:56Z",
"visitorUserAgent": "<string>",
"visitorTimezone": "<string>",
"ticketNumber": 4503599627370495,
"visitorIp": "<string>",
"visitorCountry": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z",
"messageCount": 4503599627370495,
"agentName": "<string>"
},
"inbox": {
"conversationId": "<string>",
"status": "open",
"assigneeId": "<string>",
"teamId": "<string>",
"priority": "low",
"dueAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"workspaceId": "<string>",
"assigneeMemberId": "<string>",
"assigneeWorkspaceId": "<string>",
"assigneeAgentGrantId": "<string>",
"assigneeKind": "source_member",
"assigneeAssignedAt": "2023-11-07T05:31:56Z",
"assigneeAssignedByMemberId": "<string>",
"assigneeAssignedByWorkspaceId": "<string>",
"assigneeAssignedByAgentGrantId": "<string>",
"escalatedAt": "2023-11-07T05:31:56Z",
"escalationStatus": "pending"
},
"messages": [
{
"id": "<string>",
"role": "user",
"content": "<string>",
"citations": [
{
"sourceId": "<string>",
"title": "<string>",
"snippet": "<string>"
}
],
"channel": "widget",
"emailOpenedAt": "2023-11-07T05:31:56Z",
"emailRaw": {
"text": "<string>",
"html": "<string>",
"quotedHistory": {
"present": true
}
},
"authorMemberId": "<string>",
"lifecycleStatus": "queued",
"lifecycleVersion": 123,
"revisionCount": 4503599627370495,
"undoDeadlineAt": "2023-11-07T05:31:56Z",
"sentAt": "2023-11-07T05:31:56Z",
"editDeadlineAt": "2023-11-07T05:31:56Z",
"editedAt": "2023-11-07T05:31:56Z",
"latestFailureCode": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"attachments": [
{
"id": "<string>",
"workspaceId": "<string>",
"conversationId": "<string>",
"messageId": "<string>",
"uploadedByMemberId": "<string>",
"uploadedByVisitorId": "<string>",
"uploadedByWorkspaceId": "<string>",
"uploadedByAgentGrantId": "<string>",
"uploadedByKind": "visitor",
"filename": "<string>",
"contentType": "<string>",
"detectedContentType": "<string>",
"sizeBytes": 4503599627370495,
"kind": "image",
"inline": true,
"contentId": "<string>",
"attachmentState": "staged",
"blockedReason": "<string>",
"uploadConfirmedAt": "2023-11-07T05:31:56Z",
"scanCompletedAt": "2023-11-07T05:31:56Z",
"quarantinedAt": "2023-11-07T05:31:56Z",
"linkedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z"
}
]
}
],
"notes": [
{
"id": "<string>",
"workspaceId": "<string>",
"conversationId": "<string>",
"authorId": "<string>",
"authorMemberId": "<string>",
"authorWorkspaceId": "<string>",
"authorAgentGrantId": "<string>",
"authorKind": "source_member",
"audienceKind": "source_only",
"audienceDestinationWorkspaceId": "<string>",
"body": "<string>",
"createdAt": "2023-11-07T05:31:56Z"
}
],
"contact": {
"id": "<string>",
"workspaceId": "<string>",
"email": "<string>",
"name": "<string>",
"location": "<string>",
"company": "<string>",
"companySize": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"voiceSessions": [
{
"id": "<string>",
"status": "starting",
"recordingStatus": "pending",
"durationSeconds": 4503599627370495,
"summary": "<string>",
"transcript": [
{
"messageId": "<string>",
"role": "user",
"text": "<string>",
"startMs": 4503599627370495,
"endMs": 4503599627370495
}
],
"playbackUrl": "<string>"
}
],
"recentConversations": [
{
"id": "<string>",
"subject": "<string>",
"status": "open",
"createdAt": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z"
}
],
"labels": [
{
"id": "<string>",
"name": "<string>",
"color": "<string>"
}
],
"csatRating": 3
}Inbox
Read a complete accessible ticket thread without marking it seen
Use an explicitly scoped user-bound account bearer credential or an application session. Scope grants are intersected with live membership, role, tenant isolation, agent access and plan limits; a credential does not grant an owner role. Invitation acceptance requires the verified recipient email.
GET
/
workspaces
/
{workspaceId}
/
inbox
/
{conversationId}
Read a complete accessible ticket thread without marking it seen
curl --request GET \
--url https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.communicate.so/api/v1/workspaces/{workspaceId}/inbox/{conversationId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"serverNow": "2023-11-07T05:31:56Z",
"conversation": {
"id": "<string>",
"workspaceId": "<string>",
"agentId": "<string>",
"channel": "playground",
"surface": "widget",
"visitorId": "<string>",
"subject": "<string>",
"createdBy": "<string>",
"contactId": "<string>",
"status": "open",
"mode": "ai",
"modeLocked": true,
"modeSource": "legacy",
"modeVersion": 4503599627370495,
"contactEmail": "<string>",
"visitorLastSeenAt": "2023-11-07T05:31:56Z",
"visitorSeenAt": "2023-11-07T05:31:56Z",
"agentSeenAt": "2023-11-07T05:31:56Z",
"visitorUserAgent": "<string>",
"visitorTimezone": "<string>",
"ticketNumber": 4503599627370495,
"visitorIp": "<string>",
"visitorCountry": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z",
"messageCount": 4503599627370495,
"agentName": "<string>"
},
"inbox": {
"conversationId": "<string>",
"status": "open",
"assigneeId": "<string>",
"teamId": "<string>",
"priority": "low",
"dueAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"workspaceId": "<string>",
"assigneeMemberId": "<string>",
"assigneeWorkspaceId": "<string>",
"assigneeAgentGrantId": "<string>",
"assigneeKind": "source_member",
"assigneeAssignedAt": "2023-11-07T05:31:56Z",
"assigneeAssignedByMemberId": "<string>",
"assigneeAssignedByWorkspaceId": "<string>",
"assigneeAssignedByAgentGrantId": "<string>",
"escalatedAt": "2023-11-07T05:31:56Z",
"escalationStatus": "pending"
},
"messages": [
{
"id": "<string>",
"role": "user",
"content": "<string>",
"citations": [
{
"sourceId": "<string>",
"title": "<string>",
"snippet": "<string>"
}
],
"channel": "widget",
"emailOpenedAt": "2023-11-07T05:31:56Z",
"emailRaw": {
"text": "<string>",
"html": "<string>",
"quotedHistory": {
"present": true
}
},
"authorMemberId": "<string>",
"lifecycleStatus": "queued",
"lifecycleVersion": 123,
"revisionCount": 4503599627370495,
"undoDeadlineAt": "2023-11-07T05:31:56Z",
"sentAt": "2023-11-07T05:31:56Z",
"editDeadlineAt": "2023-11-07T05:31:56Z",
"editedAt": "2023-11-07T05:31:56Z",
"latestFailureCode": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"attachments": [
{
"id": "<string>",
"workspaceId": "<string>",
"conversationId": "<string>",
"messageId": "<string>",
"uploadedByMemberId": "<string>",
"uploadedByVisitorId": "<string>",
"uploadedByWorkspaceId": "<string>",
"uploadedByAgentGrantId": "<string>",
"uploadedByKind": "visitor",
"filename": "<string>",
"contentType": "<string>",
"detectedContentType": "<string>",
"sizeBytes": 4503599627370495,
"kind": "image",
"inline": true,
"contentId": "<string>",
"attachmentState": "staged",
"blockedReason": "<string>",
"uploadConfirmedAt": "2023-11-07T05:31:56Z",
"scanCompletedAt": "2023-11-07T05:31:56Z",
"quarantinedAt": "2023-11-07T05:31:56Z",
"linkedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z"
}
]
}
],
"notes": [
{
"id": "<string>",
"workspaceId": "<string>",
"conversationId": "<string>",
"authorId": "<string>",
"authorMemberId": "<string>",
"authorWorkspaceId": "<string>",
"authorAgentGrantId": "<string>",
"authorKind": "source_member",
"audienceKind": "source_only",
"audienceDestinationWorkspaceId": "<string>",
"body": "<string>",
"createdAt": "2023-11-07T05:31:56Z"
}
],
"contact": {
"id": "<string>",
"workspaceId": "<string>",
"email": "<string>",
"name": "<string>",
"location": "<string>",
"company": "<string>",
"companySize": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"voiceSessions": [
{
"id": "<string>",
"status": "starting",
"recordingStatus": "pending",
"durationSeconds": 4503599627370495,
"summary": "<string>",
"transcript": [
{
"messageId": "<string>",
"role": "user",
"text": "<string>",
"startMs": 4503599627370495,
"endMs": 4503599627370495
}
],
"playbackUrl": "<string>"
}
],
"recentConversations": [
{
"id": "<string>",
"subject": "<string>",
"status": "open",
"createdAt": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z"
}
],
"labels": [
{
"id": "<string>",
"name": "<string>",
"color": "<string>"
}
],
"csatRating": 3
}Authorizations
accountBeareraccountSessionlocalAccountSession
Opaque user-bound ca_ account credential. Each request checks live account scopes, verified email, expiry, revocation and the issuer session. Not a workspace ck_ key or OAuth access token.
Path Parameters
Minimum string length:
1Minimum string length:
1Response
Read a complete accessible ticket thread without marking it seen
Pattern:
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Required range:
1 <= x <= 5