Saltar al contenido principal
Utiliza el recurso de Conversaciones cuando quieras que la API de MKA1 mantenga el estado de la conversación entre solicitudes de Respuestas. Esto es útil para chats de varios turnos, hilos de soporte y flujos de trabajo donde deseas recuperar o editar el historial guardado más adelante.

Crear una conversación

Crea primero una conversación. Puedes adjuntar metadatos para mantener tu propio contexto de sesión o de enrutamiento.
import { SDK } from '@meetkai/mka1';

const mka1 = new SDK({
  bearerAuth: `Bearer ${YOUR_API_KEY}`,
});

const conv = await mka1.llm.conversations.create({
  metadata: {
    session_id: 'web-42',
    channel: 'support',
  },
}, { headers: { 'X-On-Behalf-Of': '<end-user-id>' } });
Si tu solicitud no está vinculada a un usuario final específico, omite X-On-Behalf-Of. Consulta la guía de autenticación para ver el patrón completo.

Agregar elementos a la conversación

Agrega uno o más elementos con POST /api/v1/llm/conversations/{conversation_id}/items.
const items = await mka1.llm.conversations.createItems({
  conversationId: 'conv_abc123',
  createItemsRequest: {
    items: [
      {
        type: 'message',
        role: 'user',
        content: 'Resume el último ticket de soporte.',
      },
    ],
  },
}, { headers: { 'X-On-Behalf-Of': '<end-user-id>' } });
Utiliza este endpoint cuando quieras escribir el historial explícitamente antes de llamar al recurso de Respuestas.

Continúa el flujo con el recurso de Respuestas

Pasa el ID de la conversación en tu siguiente solicitud de Respuestas. Esto permite que la API de MKA1 utilice el estado de conversación guardado.
const result = await mka1.llm.responses.create({
  model: 'gpt-5',
  conversation: 'conv_abc123',
  input: 'Convierte ese resumen en una respuesta lista para el cliente.',
});
También puedes seguir agregando elementos a la misma conversación a medida que crece el intercambio.

Leer, actualizar o limpiar una conversación

Utiliza los endpoints de Conversaciones para:
  • Listar conversaciones para la cuenta actual o usuario final (GET /api/v1/llm/conversations).
  • Filtrar listas con after, limit, order, metadata y search.
  • Obtener una conversación por ID (GET /api/v1/llm/conversations/{conversation_id}).
  • Actualizar los metadatos de la conversación (POST /api/v1/llm/conversations/{conversation_id}).
  • Listar elementos en una conversación (GET /api/v1/llm/conversations/{conversation_id}/items).
  • Obtener un solo elemento (GET /api/v1/llm/conversations/{conversation_id}/items/{item_id}).
  • Eliminar elementos (uno o varios) mediante:
    • DELETE /api/v1/llm/conversations/{conversation_id}/items/{item_id}
    • DELETE /api/v1/llm/conversations/{conversation_id}/items con { "item_ids": ["item_..."] }
  • Eliminar la conversación (DELETE /api/v1/llm/conversations/{conversation_id}).
Nota: eliminar una conversación no elimina sus elementos. Utiliza la pestaña de Referencia de API para ver los formatos exactos de solicitud y respuesta de cada operación.

Cuándo usar conversaciones vs previous_response_id

Usa una conversación cuando:
  • Quieres un contenedor reutilizable para muchos turnos.
  • Necesitas listar o gestionar elementos guardados más adelante.
  • Quieres adjuntar metadatos al hilo en curso.
Usa previous_response_id cuando:
  • Solo necesitas continuar desde una respuesta anterior.
  • No necesitas un recurso de conversación almacenado por separado.
Para el patrón del lado de la respuesta, consulta generar una respuesta.