Ir al contenido

Get Conversation

Ver como Markdown
GET
/public/v1/conversations/{conversation_id}
curl --request GET \
--url https://api.nuntius.chat/public/v1/conversations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'X-API-Key: <X-API-Key>'

Return a single conversation owned by the tenant – foreign/unknown -> 404.


Permiso necesario: tenant:conversations.read

conversation_id
required
Conversation Id
string format: uuid

Successful Response

Media typeapplication/json
PublicConversationOut

A single conversation, curated subset of the internal ConversationOut.

Drops channelName/mode/sentiment/quality/unreadCount – operator-console presentation/workflow state, not part of the curated read surface (SPEC_API_PUBLICA.md §2.3’s own “Excluido” list: workflow state is deliberately withheld from third parties). status is the RAW Conversation.status domain value ('active'/'escalated'/'resolved'), never the internal _map_status UI collapse to 'open' – see ConversationFilters’s own docstring for why this NEW, independently-versioned contract does not inherit that Platform presentation concern.

object
id
required
Id
string
channel
required
Channel
string
channelId
Any of:
string
status
required
Status
string
subject
Any of:
string
customer
required
PublicConversationCustomerOut

Curated customer block for a public conversation – a narrower shape than the internal CustomerOut (schemas/inbox.py): drops avatarUrl (never populated by any real path in this codebase) and authSessionActive (AC-4, an operator-console-only signal about a LIVE Redis session – meaningless to an M2M integration polling this endpoint asynchronously).

object
id
required
Id
string
name
Any of:
string
email
Any of:
string
phone
Any of:
string
customerId
Any of:
string
assignedOperatorId
Any of:
string
lastMessagePreview
required
Lastmessagepreview
string
lastMessageAt
required
Lastmessageat
string
createdAt
required
Createdat
string

Examplegenerated

{
"id": "example",
"channel": "example",
"channelId": "example",
"status": "example",
"subject": "example",
"customer": {
"id": "example",
"name": "example",
"email": "example",
"phone": "example",
"customerId": "example"
},
"assignedOperatorId": "example",
"lastMessagePreview": "example",
"lastMessageAt": "example",
"createdAt": "example"
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object

Examplegenerated

{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}