Saltar al contenido principal

Introducción

Inbox Autónomo es un servicio que recibe, almacena, filtra y procesa correo entrante en nombre de los productos internos de Kobana. El correo llega vía AWS SES, se persiste en S3 y Postgres, opcionalmente se procesa mediante un agente LLM, y se expone a través de una API REST pública y de webhooks.

La API es REST sobre HTTPS, con JSON y autenticación mTLS + Bearer JWT. Todo lo que la plataforma hace con workspaces, inboxes, emails, agents y webhooks está disponible para tus sistemas, bajo el mismo aislamiento por workspace que el propio producto.

Primeros pasos​

  1. Obtén un certificado de cliente y un JWT para el entorno destino — ver Autenticación.

  2. Realiza tu primera llamada:

    curl https://api.inbox.kobana.com.br/v1/workspaces?limit=1 \
    --cert ./client.crt --key ./client.key \
    -H "Authorization: Bearer $JWT" \
    -H "Accept: application/json"
  3. Explora los recursos — la categoría Resources en la barra lateral documenta cada endpoint con ejemplos. O importa la especificación OpenAPI / la colección de Postman.

Formato​

La API acepta y devuelve únicamente JSON. Todas las solicitudes deben usar Content-Type: application/json. Todas las respuestas usan snake_case.

Tipo de campoFormato
DateTimeISO 8601 en UTC con precisión de milisegundos. Ejemplo: 2026-05-17T12:34:56.789Z
UUIDLos identificadores de recurso son UUID v4

Convenciones usadas en esta documentación​

ConvenciónSignificado
{id}Variable de path a reemplazar en una URL.
...Contenido de la respuesta truncado por legibilidad.
$JWTTu token Bearer. Para pruebas por línea de comandos, expórtalo: export JWT=xxxxxxxxxxxxxxxxxxxxxxxx y pega los comandos de esta documentación en tu terminal.

Códigos de estado​

La API devuelve códigos HTTP estándar:

CódigoSignificado
✅200 OKSolicitud exitosa con cuerpo de respuesta.
✅201 CreatedRecurso creado exitosamente.
✅202 AcceptedSolicitud aceptada para procesamiento asíncrono.
✅204 No ContentSolicitud exitosa, sin cuerpo de respuesta.
❌400 Bad RequestSolicitud malformada.
❌401 UnauthorizedCertificado de cliente / JWT ausente o inválido.
❌403 ForbiddenAutenticado pero sin el scope requerido.
❌404 Not FoundEl recurso no existe, o pertenece a otro workspace.
❌409 ConflictConflicto de estado — p. ej. external_id ya en uso, X-Idempotency-Key reutilizada con un body diferente.
❌422 Unprocessable EntitySolicitud bien formada, datos inválidos.
❌429 Too Many RequestsLímite de solicitudes excedido.
❌500 Internal Server ErrorError no manejado. Ver estado del servidor.

El envelope de error y el vocabulario estable de códigos de error están documentados en Errores.

Correlación de solicitudes​

Cada respuesta — exitosa o no — lleva un header X-Request-Id. Inclúyelo al reportar problemas para que el equipo de Kobana pueda obtener el trace desde OpenTelemetry.

Próximos pasos​