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.
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:
- Recopilar datos - Reúne variables y salidas de bloques anteriores
- Formatear la respuesta - Estructura los datos según tu configuración
- Definir los detalles HTTP - Aplica códigos de estado y encabezados
- Devolver los datos - Produce el objeto
responseque 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:
| Clave | Valor |
|---|---|
| Content-Type | application/json |
| Cache-Control | no-cache |
| X-API-Version | 1.0 |
Casos de uso de ejemplo
Respuesta de un endpoint de API
Escenario: Devolver datos estructurados desde una API de búsqueda
- El workflow procesa la consulta de búsqueda y recupera los resultados
- El bloque Function formatea y pagina los resultados
- El bloque Response devuelve JSON con datos, paginación y metadatos
- 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
- El bloque Condition detecta un fallo de validación o un error del sistema
- El enrutador dirige a la ruta de manejo de errores
- El bloque Response devuelve un estado 400/500 con los detalles del error
- 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