Saltar al contenido principal
POST
/
v1
/
external-support
/
{projectId}
/
conversations
/
close
Close Conversation
curl --request POST \
  --url https://gateway.jelou.ai/jelouapi/v1/external-support/{projectId}/conversations/close \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "botId": "<string>",
  "userId": "<string>",
  "redirectPayload": {
    "type": "<string>",
    "text": "<string>"
  }
}
'
{
  "message": "<string>",
  "statusMessage": "<string>",
  "status": 123,
  "error": {
    "code": "<string>",
    "key": "<string>",
    "description": "<string>",
    "developerMessages": {},
    "clientMessages": {}
  },
  "validationError": {}
}

Documentation Index

Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt

Use this file to discover all available pages before exploring further.

Descripción

Cierra una conversación activa en el panel de atención externo. Permite especificar un mensaje de cierre que se enviará al usuario y la razón del cierre. Al ejecutarse, Jelou emite el evento conversation.close hacia el webhook configurado en la integración.

Endpoint

POST https://gateway.jelou.ai/jelouapi/v1/external-support/{projectId}/conversations/close

Parámetros de ruta

projectId
string
requerido
Identificador único del proyecto de Jelou desde el que se cierra la conversación.

Parámetros del cuerpo

botId
string
requerido
Identificador del bot de Jelou asociado a la conversación.
userId
string
requerido
Identificador del usuario final cuya conversación se desea cerrar.
redirectPayload
object
Mensaje que se enviará al usuario al momento del cierre de la conversación.
  • type — Tipo de mensaje: text o edge.
  • text — Texto del mensaje de cierre (cuando type es text).

Autenticación

Todas las peticiones deben incluir el encabezado x-api-key con la API key del proyecto de Jelou.
x-api-key: API_KEY

Ejemplo de solicitud

El siguiente ejemplo cierra la conversación del usuario USER_ID e incluye un mensaje de cierre:
cURL
curl --request POST \
  --url https://gateway.jelou.ai/jelouapi/v1/external-support/PROJECT_ID/conversations/close \
  --header 'x-api-key: API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "botId": "BOT_ID",
    "userId": "USER_ID",
    "redirectPayload": {
      "type": "text",
      "text": "Mensaje de cierre de conversación"
    }
  }'

Respuestas

CódigoEstadoDescripción
200OKConversación cerrada exitosamente.
401UnauthorizedCredenciales de autenticación inválidas o faltantes.
404Not FoundBot o usuario no encontrado.
422Unprocessable EntityLos campos enviados contienen valores inválidos o no cumplen las validaciones esperadas.
500Internal Server ErrorError interno del servidor.

Ejemplo de respuesta

{
  "message": [
    "Conversation closed successfully"
  ],
  "statusMessage": "success",
  "status": 1,
  "data": {
    "conversationId": "CONVERSATION_ID",
    "status": "closed",
    "endedReason": "closed_by_operator"
  }
}

Evento webhook conversation.close

Al ejecutar este recurso, Jelou emitirá el evento conversation.close al webhook configurado en la integración. El payload incluye la razón del cierre y el mensaje enviado al usuario.
{
  "event": "conversation.close",
  "timestamp": 1777992928697,
  "field": "conversation",
  "object": "conversation_event",
  "event_type": "close",
  "project_id": "PROJECT_ID",
  "room_id": "ROOM_ID",
  "contact": {
    "id": "USER_ID",
    "name": "USER_NAME"
  },
  "conversation": {
    "id": "CONVERSATION_ID"
  },
  "bot": {
    "id": "BOT_ID",
    "name": "BOT_NAME"
  },
  "value": {
    "reason": "closed_by_operator",
    "redirectPayload": {
      "type": "text",
      "text": "Mensaje de cierre de conversación"
    }
  }
}

Campos del payload

CampoTipoDescripción
eventstringNombre del evento: conversation.close
timestampnumberMarca de tiempo Unix en milisegundos del momento del evento.
project_idstringIdentificador del proyecto de Jelou.
room_idstringIdentificador de la sala de conversación.
contact.idstringIdentificador del usuario final.
contact.namestringNombre del usuario final.
conversation.idstringIdentificador único de la conversación cerrada.
bot.idstringIdentificador del bot asociado.
bot.namestringNombre del bot asociado.
value.reasonstringRazón del cierre: closed_by_operator.
value.redirectPayload.typestringTipo del mensaje de cierre: text o edge.
value.redirectPayload.textstringTexto del mensaje enviado al usuario al cerrar (opcional).

Autorizaciones

Authorization
string
header
requerido

Basic authentication using Base64 encoded clientId:clientSecret

Parámetros de ruta

projectId
string
requerido

Unique identifier of the Jelou project

Cuerpo

application/json
botId
string
requerido
userId
string
requerido
redirectPayload
object

Respuesta

Conversation closed successfully