Response

Da formato y devuelve respuestas estructuradas de la API

El bloque Response da formato a una respuesta estructurada para las llamadas a la API. Normalmente se coloca al final de una rama para preparar sus resultados; no es una sentencia "return" que detenga todo el flujo de trabajo.

Modo de datos de respuesta
Select...
Elige cómo definir la estructura de datos de tu respuesta
Estructura de la respuesta
Estructura de la respuesta
Define la estructura de los datos de tu respuesta. Usa <variable.name> en los nombres de campo para hacer referencia a variables del flujo de trabajo.
Datos de la respuesta
code
{ "message": "Hello world", "userId": "<variable.userId>" }
Datos que se enviarán como cuerpo de la respuesta en las llamadas a la API. Usa <variable.name> para hacer referencia a variables del flujo de trabajo.
Código de estado
200
Código de estado HTTP (predeterminado: 200)
Encabezados de respuesta
Encabezados de respuesta
Encabezados HTTP adicionales que se incluirán en la respuesta

Coloca normalmente el bloque Response al final de una rama. Preparar su respuesta no detiene por sí solo otras rutas conectadas del flujo de trabajo.

Descripción general

El bloque Response te permite:

Formatear respuestas de API: Estructura los resultados del flujo de trabajo en respuestas HTTP adecuadas

Definir códigos de estado: Configura los códigos de estado HTTP adecuados según los resultados del flujo de trabajo

Controlar encabezados: Añade encabezados personalizados para respuestas de API

Transformar datos: Convierte variables del flujo de trabajo en formatos de respuesta aptos para el cliente

Cómo funciona

El bloque Response prepara la respuesta de la API:

  1. Recopilar datos - Reúne variables y salidas de bloques anteriores
  2. Formatear la respuesta - Estructura los datos según tu configuración
  3. Definir los detalles HTTP - Aplica códigos de estado y encabezados
  4. Devolver los datos - Produce el objeto response que la API puede usar como respuesta HTTP cuando termina la ejecución

Cuándo necesitas bloques Response

  • Endpoints de API: cuando se llama a tu flujo de trabajo mediante API, los bloques Response formatean los datos de retorno
  • Pruebas: consulta los resultados formateados al probar tu flujo de trabajo

Dos formas de crear respuestas

Modo Builder (recomendado)

Interfaz visual para crear la estructura de la respuesta:

  • Arrastra y suelta campos
  • Haz referencia a variables del flujo de trabajo fácilmente
  • Vista previa visual de la estructura de la respuesta

Modo Editor (avanzado)

Escribe JSON directamente:

  • Control total sobre el formato de la respuesta
  • Compatibilidad con estructuras anidadas complejas
  • Usa la sintaxis <variable.name> para valores dinámicos

Opciones de configuración

Datos de la respuesta

Los datos de la respuesta son el contenido principal que se enviará de vuelta al llamador de la API. Deben tener formato JSON y pueden incluir:

  • Valores estáticos
  • Referencias dinámicas a variables del flujo de trabajo mediante la sintaxis <variable.name>
  • Objetos y matrices anidados
  • Cualquier estructura JSON válida

Código de estado

Define el código de estado HTTP para la respuesta. Los códigos de estado comunes incluyen:

  • 200: OK - Respuesta de éxito estándar
  • 201: Created - Recurso creado correctamente
  • 204: No Content - Éxito sin cuerpo de respuesta
  • 400: Bad Request - Parámetros de solicitud no válidos
  • 401: Unauthorized - Se requiere autenticación
  • 404: Not Found - El recurso no existe
  • 422: Unprocessable Entity - Errores de validación
  • 500: Internal Server Error - Error del lado del servidor
  • 502: Bad Gateway - Error de servicio externo
  • 503: Service Unavailable - Servicio temporalmente no disponible

El código de estado predeterminado es 200 si no se especifica.

Encabezados de respuesta

Configura encabezados HTTP adicionales para incluir en la respuesta.

Los encabezados se configuran como pares clave-valor:

ClaveValor
Content-Typeapplication/json
Cache-Controlno-cache
X-API-Version1.0

Casos de uso de ejemplo

Respuesta de un endpoint de API

Escenario: Devolver datos estructurados desde una API de búsqueda

  1. El workflow procesa la consulta de búsqueda y recupera los resultados
  2. El bloque Function formatea y pagina los resultados
  3. El bloque Response devuelve JSON con datos, paginación y metadatos
  4. El cliente recibe una respuesta estructurada con estado 200

Confirmación de webhook

Response no controla las confirmaciones de webhook. Los endpoints encolan el flujo y confirman la solicitud antes de que termine. Response puede dar formato a la salida, pero su estado, encabezados y cuerpo no se devuelven como confirmación del webhook.

Manejo de respuestas de error

Escenario: Devolver respuestas de error adecuadas

  1. El bloque Condition detecta un fallo de validación o un error del sistema
  2. El enrutador dirige a la ruta de manejo de errores
  3. El bloque Response devuelve un estado 400/500 con los detalles del error
  4. El cliente recibe información de error estructurada

Entradas y salidas

  • Datos de respuesta: estructura JSON para el cuerpo de la respuesta

  • Código de estado: código de estado HTTP (predeterminado: 200)

  • Encabezados: encabezados HTTP personalizados como pares clave-valor

  • Modo: modo Builder o Editor para construir la respuesta

  • response.data: el cuerpo de respuesta estructurado

  • response.status: código de estado HTTP enviado

  • response.headers: encabezados incluidos en la respuesta

  • Respuesta HTTP: respuesta completa enviada al llamador de la API

  • Ejecución: no detiene otras rutas conectadas del workflow

  • Ubicación: normalmente al final de una rama

Referencias a variables

Usa la sintaxis <variable.name> para insertar dinámicamente variables del workflow en tu respuesta:

{
  "user": {
    "id": "<variable.userId>",
    "name": "<variable.userName>",
    "email": "<variable.userEmail>"
  },
  "query": "<variable.searchQuery>",
  "results": "<variable.searchResults>",
  "totalFound": "<variable.resultCount>",
  "processingTime": "<variable.executionTime>ms"
}

Los nombres de las variables distinguen mayúsculas y minúsculas y deben coincidir exactamente con las variables disponibles en tu workflow.

Buenas prácticas

  • Usa códigos de estado significativos: elige códigos de estado HTTP adecuados que reflejen con precisión el resultado del workflow
  • Estructura tus respuestas de forma coherente: mantén una estructura JSON coherente en todos los endpoints de tu API para mejorar la experiencia del desarrollador
  • Incluye metadatos relevantes: agrega marcas de tiempo e información de versión para facilitar la depuración y el monitoreo
  • Maneja los errores correctamente: usa lógica condicional en tu workflow para definir respuestas de error adecuadas con mensajes descriptivos
  • Valida las referencias a variables: asegúrate de que todas las variables referenciadas existan y contengan los tipos de datos esperados antes de que se ejecute el bloque Response