---
title: "Usar datos de pasos anteriores"
description: "Asigna campos del disparador, salidas de pasos y variables a las entradas de una automatización, y gestiona valores ausentes cuando un flujo de trabajo toma caminos distintos."
canonical: "https://bird.com/es-es/documentacion/guides/automations/data"
---

# Usar datos de pasos anteriores

Las asignaciones de campos permiten que cada ejecución use su propio destinatario, mensaje o datos de decisión. Una conexión elige el siguiente paso; una asignación elige un valor para la entrada de ese paso.

> Automations is in Early access. Your workspace permissions determine which actions you can perform.

## Elegir el valor de un campo

Conecta el paso que quieres configurar después de su fuente de datos. El selector de fuente depende del paso seleccionado y de los caminos que pueden llegar a él.

Los modos disponibles dependen del campo:

| Modo  | Propósito                                                                                    |
| ----- | -------------------------------------------------------------------------------------------- |
| Fijo  | Introduce un valor que permanece igual en todas las ejecuciones.                             |
| Valor | Selecciona datos del disparador, un paso anterior o una variable.                            |
| Texto | Combina texto con valores insertados, como un saludo y el nombre de un cliente.              |
| fx    | Introduce una expresión en Common Expression Language (CEL) para un cálculo o una condición. |
| Lista | Configura una lista cuando el campo acepta varios valores.                                   |

Para usar un valor anterior:

1. Selecciona el paso de destino en el lienzo.
2. Abre el control de valor del campo y elige la fuente que necesitas.
3. Comprueba que el campo seleccionado tiene el tipo correcto, por ejemplo texto para una dirección de correo electrónico.
4. Inspecciona **Step preview** con datos de ejemplo para ver la entrada resuelta.

Una expresión conserva su tipo de resultado. El texto con valores insertados produce texto. Un valor de texto que contiene dígitos no se convierte automáticamente en número.

## Ejemplo: personalizar un saludo

Empieza con un borrador de la [plantilla de notificación de SMS](/docs/get-started/automations) y elige un remitente. Su disparador incluye un campo **Customer name**.

1. Selecciona **Send SMS notification** y abre **Edit message**.
2. En **Message**, mantén el modo **Text** y reemplaza el contenido existente por `Hi` seguido de un espacio.
3. Selecciona **Insert data** y elige **Customer name** en **Notification requested**. Añade `, your appointment is confirmed.` después del valor insertado.
4. Expande **Test with sample data** y usa una muestra del disparador con `customer_name` establecido como `Ada`.
5. Selecciona **Preview step**, o **Refresh preview** si ya se muestra un resultado. El mensaje preparado dice `Hi Ada, your appointment is confirmed.`

Cambiar el nombre de ejemplo y seleccionar **Refresh preview** actualiza el saludo. El campo insertado proporciona el nombre en cada ejecución.

## Entender las fuentes

| Fuente                     | Ejemplo de uso                                                                 |
| -------------------------- | ------------------------------------------------------------------------------ |
| Datos del disparador       | El ID de la cita o el destinatario proporcionado al iniciar la ejecución.      |
| Salida de un paso anterior | El contacto devuelto por Get contact o el ID de mensaje devuelto por Send SMS. |
| Error de un paso anterior  | La información de fallo usada en el camino de error de una acción.             |
| Variables                  | Valores con nombre creados por Set values.                                     |

**Set values** es útil cuando pasos posteriores necesitan el mismo cálculo. Por ejemplo, prepara un nombre para mostrar del cliente una sola vez y luego inserta esa variable en varios mensajes.

## Gestionar datos ausentes y condicionales

Un campo puede estar ausente, vacío o tener explícitamente ningún valor. Decide qué debe hacer el flujo de trabajo en cada caso. Para un nombre ausente, un saludo genérico puede ser adecuado. Para un destinatario ausente, toma otro camino o finaliza la ejecución.

Después de una bifurcación, una salida existe cuando la ejecución tomó el camino que la produjo. Si un camino de correo electrónico y un camino de SMS se reconectan, el paso compartido no puede asumir que ambos envíos ocurrieron.

Usa una condición antes de leer datos opcionales, o asigna una variable compartida en cada camino entrante. El selector de fuente distingue los valores disponibles en algunos caminos. Un ejemplo que muestra un camino exitoso no hace que su salida esté disponible en otro camino.

Las expresiones CEL avanzadas usan nombres como `trigger.data.data`, `steps.lookup.output` y `variables.customer_name`. El ID de paso en una expresión debe coincidir con el paso de origen real. Prefiere el selector cuando esté disponible para que elija la fuente por ti.

## Verificar valores calculados

Previsualiza una entrada típica, un campo opcional ausente y cada bifurcación relevante. Una entrada preparada aún puede fallar durante una ejecución real si los datos entrantes tienen un tipo diferente o falta un valor obligatorio.

Una salida anterior es el valor registrado cuando ese paso se ejecutó. Reutilizarla tras un retraso no vuelve a consultar el contacto ni el mensaje. Añade otro paso de lectura si la decisión requiere datos actuales.

## Siguientes pasos

- [Enviar mensajes](/docs/guides/automations/messages).
- [Previsualizar y comprobar un flujo de trabajo](/docs/guides/automations/preview).
- [Solucionar problemas de una automatización](/docs/guides/automations/troubleshooting).
- [Explorar las guías de Automations](/docs/guides/automations).