Skip to main content
POST
/
api
/
conversations
/
eval-answer
# Marcar respuesta como buena
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": "good"
  }'

# Marcar respuesta como mala
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": "bad"
  }'

# Limpiar evaluación
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": null
  }'
{
  "id": "msg_abc123",
  "text": "¡Hola! Con gusto te ayudo...",
  "from": "agent",
  "eval": "good",
  "success": true
}

Endpoint

POST /api/conversations/eval-answer
Evaluá la calidad de una respuesta del agente. Útil para feedback de usuarios y entrenamiento.
Este endpoint busca el mensaje usando múltiples estrategias:
  1. Por ID de base de datos (CUID)
  2. Por externalId (IDs generados por AI SDK)
  3. Por conversationId + mensaje más reciente del agente

Headers

Content-Type
string
required
Siempre application/json

Request Body

messageId
string
required
ID del mensaje a evaluar. Puede ser el ID de base de datos o el externalId.
eval
string
required
Evaluación: good, bad, o null para limpiar la evaluación.
conversationId
string
ID de la conversación (usado como fallback si el messageId no se encuentra directamente).
# Marcar respuesta como buena
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": "good"
  }'

# Marcar respuesta como mala
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": "bad"
  }'

# Limpiar evaluación
curl -X POST https://app.horneross.com/api/conversations/eval-answer \
  -H "Content-Type: application/json" \
  -d '{
    "messageId": "msg_abc123",
    "eval": null
  }'

Response

id
string
required
ID del mensaje actualizado
eval
string
La evaluación guardada: good, bad, o null
success
boolean
required
Si la operación fue exitosa
{
  "id": "msg_abc123",
  "text": "¡Hola! Con gusto te ayudo...",
  "from": "agent",
  "eval": "good",
  "success": true
}

Efectos secundarios

Cuando se evalúa un mensaje:
  1. EvalRun: Se crea un registro de evaluación humana
  2. TrainingCandidate: Si la evaluación es good, se crea automáticamente un candidato de entrenamiento para fine-tuning