Skip to Content
API ReferenceConversations API

Conversations API

Retrieve conversation history and update conversation metadata.

Get Conversation

GET /api/public/agents/{agentId}/conversations/{sessionId}

Fetches the message history for a specific conversation session.

Path Parameters

ParameterTypeRequiredDescription
agentIdstringYesThe agent’s unique identifier
sessionIdstringYesThe session identifier used when sending messages

Query Parameters

ParameterTypeDefaultDescription
limitnumber50Number of messages to return (max 100)
offsetnumber0Number of messages to skip (for pagination)

Headers

HeaderValueRequired
AuthorizationBearer agx_live_YOUR_KEYYes

Response

{ "id": "conv_abc123", "sessionId": "session-001", "agentId": "agent_xyz", "agentName": "Support Bot", "messages": [ { "id": "msg_001", "role": "user", "content": "What are your business hours?", "timestamp": "2025-01-15T10:30:00.000Z" }, { "id": "msg_002", "role": "assistant", "content": "Our business hours are Monday to Friday, 9 AM to 6 PM EST.", "timestamp": "2025-01-15T10:30:02.500Z", "tokens": 45, "responseTime": 2500 } ], "messageCount": 2, "createdAt": "2025-01-15T10:30:00.000Z", "updatedAt": "2025-01-15T10:30:02.500Z", "metadata": { "visitorId": "visitor_123", "visitorEmail": "user@example.com", "visitorName": "John", "source": "widget", "ipAddress": "192.168.1.1" } }

Response Fields

FieldTypeDescription
idstringInternal conversation ID
sessionIdstringThe session ID you provided
agentIdstringThe agent ID
agentNamestringThe agent’s display name
messagesarrayArray of message objects
messages[].idstringUnique message ID
messages[].rolestringuser or assistant
messages[].contentstringMessage text content
messages[].timestampstringISO 8601 timestamp
messages[].tokensnumberToken count (assistant messages only)
messages[].responseTimenumberResponse time in ms (assistant messages only)
messageCountnumberTotal messages returned
createdAtstringConversation creation timestamp
updatedAtstringLast update timestamp
metadataobjectVisitor and session metadata

Example

curl "https://app.agentix.cl/api/public/agents/abc123/conversations/session-001?limit=20" \ -H "Authorization: Bearer agx_live_YOUR_KEY"

Error Responses

StatusCodeWhen
400INVALID_AGENT_IDAgent ID is missing
400INVALID_SESSION_IDSession ID is missing
401MISSING_API_KEYNo API key provided
403AGENT_NOT_PUBLICAgent is not public
404AGENT_NOT_FOUNDAgent does not exist
404CONVERSATION_NOT_FOUNDNo conversation for this session

Update Conversation

PATCH /api/public/agents/{agentId}/conversations/{sessionId}

Updates conversation metadata such as visitor information, rating, and feedback.

Path Parameters

ParameterTypeRequiredDescription
agentIdstringYesThe agent’s unique identifier
sessionIdstringYesThe session identifier

Request Body

All fields are optional. Include only the fields you want to update.

FieldTypeDescription
visitorEmailstringVisitor’s email address
visitorNamestringVisitor’s display name
ratingnumberConversation rating (1-5)
feedbackstringText feedback from the visitor
metadataobjectArbitrary key-value metadata

Headers

HeaderValueRequired
AuthorizationBearer agx_live_YOUR_KEYYes
Content-Typeapplication/jsonYes

Response

{ "success": true, "updated": { "visitorEmail": "user@example.com", "rating": 5, "feedback": "Very helpful!" } }

Example

curl -X PATCH "https://app.agentix.cl/api/public/agents/abc123/conversations/session-001" \ -H "Authorization: Bearer agx_live_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "rating": 5, "feedback": "The agent was very helpful!", "visitorEmail": "customer@example.com" }'

Validation Rules

  • rating must be a number between 1 and 5
  • visitorEmail must be a valid email format (if provided)
  • metadata values must be JSON-serializable

Error Responses

StatusCodeWhen
400INVALID_RATINGRating is not a number between 1-5
400INVALID_JSONRequest body is not valid JSON
401MISSING_API_KEYNo API key provided
404AGENT_NOT_FOUNDAgent does not exist
404CONVERSATION_NOT_FOUNDConversation not found
Last updated on