Skip to main content

Ejecutar con API

Usa el endpoint público de invocación de flujos de trabajo cuando quieras ejecutar un deployment de flujo de trabajo desde tu propia aplicación o servicio. Crea un deployment de flujo de trabajo en el dashboard, elige una variante y luego usa los detalles del deployment en tu solicitud. Si un producto externo necesita iniciar un flujo de trabajo enviando un webhook directamente a Fetch Hive, usa la URL de disparador de webhook desde el asistente del deployment en su lugar. Ese flujo usa X-Fetch-Hive-Webhook-Secret en lugar de una clave de API del workspace. Consulta Entrega por callback y disparadores de webhook.

Autenticación

Consulta API Keys para saber cómo crear y administrar claves.

Endpoint

POST https://api.fetchhive.com/v1/workflow/invoke Antes de llamar a este endpoint, crea un deployment y una variante de flujo de trabajo desde el editor de flujos de trabajo. Consulta Publicación y versionado para ese flujo de la interfaz.

Solicitud

Usa esta forma de solicitud: Los valores de inputs deben coincidir con los tipos de entrada de Start del flujo de trabajo. Las entradas de texto aceptan cadenas. Las entradas de tipo array deben ser arreglos JSON nativos, por ejemplo "companies": [{"name":"Fetch Hive"}]. Los arreglos se preservan como arreglos en las variables del flujo de trabajo y en los registros. metadata debe ser plana y solo escalar: cadenas, números, booleanos o null. Los objetos anidados y los arreglos devuelven un error de validación antes de que comience la ejecución. Si incluyes async, usa estos campos anidados: Los flujos de trabajo que contienen un paso Human in the Loop deben usar entrega por callback. Configura async.enabled en true y proporciona async.callback_url; la invocación síncrona devuelve un error de validación porque la ejecución se pausa hasta que el miembro del workspace configurado envíe una elección.

Ejemplo básico

Esto coincide con el fragmento de cURL que se muestra en la interfaz del deployment del flujo de trabajo. La interfaz del deployment muestra actualmente un ejemplo en cURL, y las pestañas de Python y TypeScript aún muestran Coming Soon. Usa metadata para campos de auditoría que quieras ver o filtrar en los registros, como IDs de clientes, nombres de planes, regiones o nombres de experimentos. Las variables de inicio del flujo de trabajo van en inputs. Consulta Metadata de invoke para ver ejemplos y detalles de filtrado de registros.

Ejemplo de entrega por callback

Consulta Entrega por callback y disparadores de webhook para saber cómo funcionan las respuestas inmediatas y la entrega por callback firmada.

Respuesta

Respuesta directa

Cuando no habilitas la entrega por callback, la ruta pública espera a que el flujo de trabajo termine y devuelve la salida final. Por ejemplo:

Respuesta con entrega por callback

Cuando async.enabled es true, la ruta devuelve respuesta inmediatamente. Por ejemplo:
Con alta concurrencia, la ruta también puede devolver un estado de entrega por callback en cola:

Errores

La ruta devuelve un objeto de error cuando la solicitud es inválida o la ejecución falla. Por ejemplo:
Consulta Manejo de errores para los casos de fallo específicos del flujo de trabajo y Entrega por callback y disparadores de webhook para los errores de validación de callback.

Siguientes pasos