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

# Reemplazar reglas de enrutamiento

> Reemplaza todas las reglas de enrutamiento de un agente en una sola llamada. El orden del arreglo define la prioridad. Requiere confirm: true.

Esta llamada reemplaza la lista completa. Para agregar, editar o reordenar una sola regla, lee la lista con [Listar reglas](/docs/es/api/inbound-router/list-routing-rules), modifícala y envíala completa.

* El orden del arreglo es la prioridad: la primera regla se revisa primero.
* `rules: []` elimina todas las reglas.
* Cada regla guardada recibe un `id` nuevo.
* Si una regla no es válida, no se guarda nada.
* `target_workflow_id` debe ser una de las tareas del agente; si no, la API responde 400 `invalid_rule_target_workflow`.

```json theme={null}
{
  "rules": [
    {
      "name": "Existing customers",
      "conditions": [
        { "field": "first_message_text", "operator": "regex", "value": "(my order|tracking|refund)" }
      ],
      "target_workflow_id": "33333333-3333-4333-8333-333333333333"
    },
    {
      "name": "Web chat from Chile",
      "conditions": [
        { "field": "channel", "operator": "eq", "value": "webchat" },
        { "field": "metadata.country", "operator": "eq", "value": "CL" }
      ],
      "target_workflow_id": "22222222-2222-4222-8222-222222222222"
    }
  ],
  "confirm": true
}
```

## Condiciones

Todas las condiciones de una regla deben cumplirse. Una regla sin condiciones se cumple para cualquier conversación, así que déjala al final.

| `field` | Qué revisa |
| - | - |
| `channel` | Canal de la conversación, como `whatsapp`, `webchat` o `email`. |
| `first_message_text` | El primer mensaje del lead. |
| `source` | De dónde vino el lead, según lo guardado en el lead. |
| `phone`, `email` | El teléfono y el email del lead. |
| `tags` | Las etiquetas del lead. |
| `metadata.country` | Cualquier valor de la metadata del lead, escrito como ruta con puntos. |

| `operator` | Se cumple cuando el valor |
| - | - |
| `eq`, `neq` | es igual, o distinto. |
| `gt`, `gte`, `lt`, `lte` | es mayor o menor que un número. |
| `contains`, `not_contains` | contiene un texto, o no lo contiene. |
| `in`, `not_in` | es uno de los valores de un arreglo, o ninguno de ellos. |
| `regex` | coincide con una expresión regular. |
| `exists`, `not_exists` | tiene un valor, o no tiene ninguno. Estos dos no usan `value`. |

Las comparaciones de texto no distinguen mayúsculas de minúsculas. Antes de salir en vivo, revisa el orden con [Probar un mensaje](/docs/es/api/inbound-router/test-inbound-router).


## API Specification

The full API specification for this endpoint is available in the [documentation index](https://docs.getnexor.ai/llms.txt).
