Saltar al contenido principal
POST

Autorizaciones

Authorization
string
header
requerido

API token emitido desde Settings → API Token del dashboard 1TO1 AI. Enviar en header Authorization: Bearer sk_1to1_...

Parámetros de ruta

slug
string
requerido

Slug del business, case-insensitive. Debe coincidir con el business del token.

Ejemplo:

"acme"

Cuerpo

application/json
conversation
object
requerido

Identificador de la conversación — exactamente UNO de los cuatro campos debe venir. Orden de resolución: uuid > whatsapp_user_id > username > phone. El lookup filtra por el business del token (defense in depth cross-tenant). Resolver por phone o username puede devolver 409 (PHONE_NUMBER_AMBIGUOUS / USERNAME_AMBIGUOUS) cuando varios contactos comparten el identificador — aplica a cualquier endpoint que acepte esta referencia.

actions
object[]
requerido

Acciones a ejecutar en orden del array. Mínimo 1, máximo 10. Subcap: máximo 3 acciones AI-triggering (run_ai, ai_assistance, y assign_ai_employee con run: true).

Required array length: 1 - 10 elements

Una acción del grupo. El campo type discrimina entre las 12 operaciones disponibles.

stop_on_error
boolean
predeterminado:true

true (default): la primera acción que falla corta el resto de la ejecución en background. false: ejecuta todas las acciones. Una acción cuyo estado deseado ya se cumple (tag ya asignado, empleado ya asignado, etc.) es un no-op idempotente: cuenta como éxito y NO dispara stop_on_error.

Ejemplo:

true

escalate_on_error
boolean
predeterminado:true

true (default): cuando una acción falla con un código de delivery / AI execution / DB write / race de asignación AI (SEND_FAILED, PREPARE_FAILED, AI_EXECUTION_FAILED, ACTIONS_DEPTH_EXCEEDED, UPDATE_FAILED, NO_AI_EMPLOYEE_ASSIGNED), la conversación se escala a inbox_status='pending' con pending_reason='action_set_failed' para que el operador la vea bloqueada en el inbox con motivo legible. Una sola escalada por grupo aunque varias acciones fallen. false: solo se reportan los errores en el resultado, sin tocar el estado de la conversación. Los errores 4xx por input incorrecto del integrador (*_NOT_FOUND, *_AMBIGUOUS, WINDOW_CLOSED, TEMPLATE_NOT_APPROVED, etc.) y los guards de billing (WALLET_BLOCKED, VISION_WALLET_BLOCKED) nunca escalan — el integrador corrige y reintenta sin necesidad de atención humana.

Ejemplo:

true

Respuesta

El grupo fue aceptado: el preflight pasó y las acciones se ejecutan en background. La respuesta es un ack puro { conversation, status, actions_accepted } — sin resultado por acción.

conversation
object
requerido
status
enum<string>
requerido

El grupo fue aceptado y se ejecuta en background — la respuesta no espera a las acciones.

Opciones disponibles:
processing
Ejemplo:

"processing"

actions_accepted
integer
requerido

Cantidad de acciones aceptadas para ejecución — igual al largo del array actions enviado.

Rango requerido: x >= 1
Ejemplo:

3