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

# Acciones disponibles

> Filtros y transformaciones que se aplican sobre cada campo antes de enviarlo al bot

Las **acciones** permiten transformar o filtrar los datos de un campo antes de enviarlo al bot. Se aplican en el orden en que se agregan, y están disponibles en los campos de **Bot Params**, **Product Params** y **Extra Params**.

## Acciones de eliminación

| Acción                            | Descripción                                                                      | Parámetros                           |
| --------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------ |
| **remove\_empty**                 | Descarta el registro completo si el campo está vacío.                            | —                                    |
| **remove\_empty\_and\_spaces**    | Descarta el registro si el campo está vacío o contiene solo espacios.            | —                                    |
| **remove\_length\_greater\_than** | Descarta el registro si la longitud del valor supera N caracteres.               | `Valor` (entero)                     |
| **remove\_length\_less\_than**    | Descarta el registro si la longitud del valor es menor a N caracteres.           | `Valor` (entero)                     |
| **allows\_long\_between**         | Descarta el registro si la longitud del valor no está dentro del rango definido. | `Longitud mínima`, `Longitud máxima` |

## Acciones de reemplazo

| Acción                    | Descripción                                     | Parámetros                                      |
| ------------------------- | ----------------------------------------------- | ----------------------------------------------- |
| **replace\_empty**        | Reemplaza los valores vacíos con un valor fijo. | `Valor de sustitución`                          |
| **replace\_characters**   | Reemplaza un carácter o cadena por otro.        | `Carácter a reemplazar`, `Valor de sustitución` |
| **replace\_field\_value** | Reemplaza un valor específico por otro.         | `Valor a reemplazar`, `Valor de sustitución`    |

## Acciones de columna

| Acción           | Descripción                                                                                                                                   | Parámetros                                        |
| ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| **new\_column**  | Asigna un valor fijo al campo, sin leer de ninguna columna del archivo. Útil cuando el bot requiere un parámetro que no existe en el archivo. | `Valor`                                           |
| **copy\_column** | Copia el valor de otra columna del archivo.                                                                                                   | `Columna de origen`, `Nombre de la columna copia` |

## Acciones de formato

| Acción                | Descripción                          | Parámetros                               |
| --------------------- | ------------------------------------ | ---------------------------------------- |
| **change\_format**    | Convierte el tipo de dato del valor. | `Formato destino`: `str`, `int`, `float` |
| **convert\_to\_list** | Convierte el valor en una lista.     | —                                        |

## Acciones de fecha

Todas las acciones de fecha trabajan con una **fecha de referencia** y un **desplazamiento en días**:

* **Fecha de referencia** (`init_date`): puede ser `today` (fecha del día) o una fecha fija en formato `YYYY-MM-DD`.
* **Días de desplazamiento** (`shift_days`): número de días a sumar o restar a la fecha de referencia. Puede ser negativo. Por ejemplo, `shift_days = -1` con `init_date = today` equivale a "ayer".

### Acciones de filtrado por fecha

| Acción                                 | Descarta el registro si la fecha del campo es... |
| -------------------------------------- | ------------------------------------------------ |
| **date\_remove\_greater\_than**        | mayor a la fecha de referencia                   |
| **date\_remove\_greater\_equal\_than** | mayor o igual a la fecha de referencia           |
| **date\_remove\_less\_than**           | menor a la fecha de referencia                   |
| **date\_remove\_less\_equal\_than**    | menor o igual a la fecha de referencia           |
| **date\_remove\_equal\_than**          | igual a la fecha de referencia                   |
| **date\_remove\_different\_than**      | distinta a la fecha de referencia                |

### date\_generate\_from\_relative\_value

Genera una fecha a partir de un valor numérico (días) que viene en el campo. Por ejemplo: si el campo contiene `30`, genera la fecha que está 30 días desde la fecha de referencia.

| Parámetro                                 | Descripción                                                                                                                                        |
| ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Nombre de la nueva columna**            | Nombre que tendrá la columna con la fecha generada.                                                                                                |
| **Fecha inicial** (`init_date`)           | Fecha base: `today` o una fecha fija.                                                                                                              |
| **Días de desplazamiento** (`shift_days`) | Días a sumar o restar a la fecha base.                                                                                                             |
| **Operación**                             | `nothing`: no modifica la columna original. `add_col`: agrega una nueva columna con la fecha generada. `subst_col`: reemplaza la columna original. |
