> ## Documentation Index
> Fetch the complete documentation index at: https://help.treble.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Asignación por API

> Deja que tu propio sistema decida qué agente recibe cada conversación. Treble llama al endpoint que configures con el contexto del chat y asigna la conversación al agente que respondas.

Si tu equipo ya tiene su propia lógica de routing, con el destino **API** no tienes que replicarla en Treble. Treble llama a **tu endpoint** con el contexto del chat y respeta el agente que respondas.

<img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-api-1.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=371208d78864b14c1a8fcb78ec7dbb23" alt="Destino API" width="1440" height="1024" data-path="images/transfer-methods-api-1.png" />

```mermaid theme={null}
sequenceDiagram
    participant C as Cliente
    participant T as Treble
    participant S as Tu servidor

    C->>T: La conversación llega al bloque
    T->>S: POST con el contexto del chat
    S->>S: Decide qué agente debe atender
    S->>T: Responde con el agente
    T->>C: Asigna la conversación a ese agente
```

## Configuración

<Steps>
  <Step title="Selecciona el destino API">
    En la configuración del bloque, elige **API** y haz clic en **Siguiente**.
  </Step>

  <Step title="Ingresa la URL del endpoint">
    Escribe la URL a la que Treble hará la petición `POST` cuando la conversación llegue al bloque.

    <img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-api-config.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=e8e571211be44347316c0ec00fdbac92" alt="Configurar la URL del endpoint" width="1440" height="1024" data-path="images/transfer-methods-api-config.png" />
  </Step>

  <Step title="Elige el tipo de autenticación">
    * **Sin autenticación** — Treble llama tu endpoint sin credenciales.
    * **Token / API Key** — ingresa un token que Treble enviará en el header `Authorization` con el formato `Bearer TU_TOKEN`, para que tu endpoint verifique que la llamada viene de Treble.

    <img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-api-token.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=46cf4d769b95a8f9ab60a5cadce1ad36" alt="Configurar el token de autenticación" width="1440" height="1024" data-path="images/transfer-methods-api-token.png" />
  </Step>

  <Step title="Completa el equipo y guarda">
    Selecciona el equipo en **Tags**, agrega **Etiquetas** si las necesitas y haz clic en **Guardar cambios**.

    <Check>
      ¡Listo! Cuando una conversación llegue al bloque, Treble llamará a tu endpoint para resolver el agente.
    </Check>
  </Step>
</Steps>

<div class="hr" />

## El contrato

Tu endpoint recibe el contexto del contacto y de la conversación, y debe responder con el agente que la atenderá:

```json theme={null}
{
  "agent_email": "andrea.soto@tuempresa.com"
}
```

<Warning>
  Tu endpoint debe responder en **menos de 10 segundos**. Si se excede, devuelve un código distinto de `200`, o devuelve un agente que no puede recibir la conversación, Treble aplica el [método de respaldo](/es/docs/build-with-treble/blocks/transfer-methods/overview#prioridad-y-método-de-respaldo) configurado en la plataforma principal.
</Warning>

La referencia completa —el cuerpo exacto que Treble envía, las dos formas de identificar al agente y un ejemplo de implementación— está en la referencia de API.

<CardGroup cols={2}>
  <Card title="Referencia del webhook" icon="code" href="/es/api-reference/webhooks/api-assignation/intro">
    El cuerpo que Treble envía y la respuesta que debes devolver.
  </Card>

  <Card title="Obtener los agentes" icon="users" href="/es/api-reference/endpoints/get-agents">
    Consulta los agentes de tu cuenta para saber qué email o id devolver.
  </Card>
</CardGroup>
