logo
Desarrollo
Buscar
Ejecutar el flujo de trabajo

Ejecutar el flujo de trabajo

Tras habilitar la API de flujo de trabajo y crear una API Key, se puede invocar el flujo de trabajo mediante solicitudes a la API y obtener los resultados de la ejecución del flujo de trabajo.

Método

POST

URL

https://api-${endpoint}.gptbots.ai/v1/workflow/invoke

Autenticación

Para más información, consulte el método de autenticación en la Visión general de la API.

Solicitud

Ejemplo

curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/invoke' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "userId": "<your_user_id>", "input": { <your_workflow_input_params> }, "isAsync": true, "webhook": [ { "method": "POST", "url": "https://example-1.com", "headers": { "Accept": "application/json", "Authorization": "Bearer <your_token>" } }, { "method": "GET", "url": "https://example-2.com?fr=google", "headers": { "Accept": "application/json", "Authorization": "Bearer <your_token>" } } ] }'
                      
                      curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/workflow/invoke' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
    "userId": "<your_user_id>",
    "input": {
        <your_workflow_input_params>
    },
    "isAsync": true,
    "webhook": [
        {
            "method": "POST",
            "url": "https://example-1.com",
            "headers": {
                "Accept": "application/json",
                "Authorization": "Bearer <your_token>"
            }
        },
        {
            "method": "GET",
            "url": "https://example-2.com?fr=google",
            "headers": {
                "Accept": "application/json",
                "Authorization": "Bearer <your_token>"
            }
        }
    ]
}'

                    
Este bloque de código en una ventana flotante

Encabezados

Campo Tipo Obligatorio Descripción
Authorization Bearer ${API Key} Y Validación de llamadas mediante Authorization: Bearer ${API Key}. La clave se obtiene en la página API keys como API Key.
Content-Type application/json Y Tipo de contenido; el valor es fijo: application/json.

Cuerpo

Campo Tipo Obligatorio Descripción
userId String N Se utiliza para etiquetar el ID de usuario de esta solicitud.
input Object Y Nodo start del flujo de trabajo. Este objeto debe contener una estructura de parámetros de entrada que coincida exactamente con lo configurado en el nodo start del flujo de trabajo.
isAsync Boolean N Define si esta solicitud se ejecuta de forma asíncrona.
- true: ejecución asíncrona.
- false (predeterminado): ejecución síncrona.
Nota: Si es true, se puede usar «Consultar el resultado de la ejecución del flujo de trabajo» para recuperar el resultado, o se puede enviar el resultado a la dirección definida por webhook. Estos dos métodos no entran en conflicto.
webhook Array N Al realizar una operación asíncrona, el resultado de la ejecución del flujo de trabajo se puede enviar al webhook especificado. Se pueden definir hasta 5 entradas de webhook.
webhook[].method String Y Método de solicitud del webhook.
webhook[].url String Y URL del webhook (dirección).
webhook[].headers Object N Encabezados de la solicitud de webhook, que se pueden definir según sea necesario.

Respuesta

Ejemplo

Si la ejecución es síncrona, el resultado se muestra a continuación:

{ "workflowId": "xxxxxxxx", "workflowName": "todayNews", "workflowVersion": "1.0.1", "workflowRunId": "xxxxxxxx", "input": { "topic": "News" }, "output": { "news": [ { "summary": "Fatal crash shuts down major highway in Haleiwa. According to Emergency Medical Services, paramedics responded to the scene of the crash Wednesday morning.", "media": "Hawaii News Now", "title": "Hawaii News Now - Breaking News, Latest News, Weather & Traffic" }, { "summary": "Hawaii Crime: Man, 65, critically injured in Waikīkī assault. Jamil Hart found guilty in Mililani murder case. HPD busts illegal gambling room in Nanakuli.", "media": "KHON2", "title": "KHON2: Hawaii News, Weather, Sports, Breaking News & Live" } ] }, "workflowExecutionTime": 8347, "status": "SUCCEED", "totalCost": 0.6928, "totalTokens": 1745, "startTime": 1758765323024, "endTime": 1758765331373 }
                      
                      {
    "workflowId": "xxxxxxxx",
    "workflowName": "todayNews",
    "workflowVersion": "1.0.1",
    "workflowRunId": "xxxxxxxx",
    "input": {
        "topic": "News"
    },
    "output": {
        "news": [
            {
                "summary": "Fatal crash shuts down major highway in Haleiwa. According to Emergency Medical Services, paramedics responded to the scene of the crash Wednesday morning.",
                "media": "Hawaii News Now",
                "title": "Hawaii News Now - Breaking News, Latest News, Weather & Traffic"
            },
            {
                "summary": "Hawaii Crime: Man, 65, critically injured in Waikīkī assault. Jamil Hart found guilty in Mililani murder case. HPD busts illegal gambling room in Nanakuli.",
                "media": "KHON2",
                "title": "KHON2: Hawaii News, Weather, Sports, Breaking News & Live"
            }
        ]
    },
    "workflowExecutionTime": 8347,
    "status": "SUCCEED",
    "totalCost": 0.6928,
    "totalTokens": 1745,
    "startTime": 1758765323024,
    "endTime": 1758765331373
}

                    
Este bloque de código en una ventana flotante

Si la ejecución es asíncrona, esta API devolverá el resultado inmediatamente, como se indica a continuación:

{ "workflowId": "xxxxxxxx", "workflowName": "todayNews", "workflowVersion": "1.0.1", "workflowRunId": "xxxxxxxx", "status": "PENDING" }
                      
                      {
    "workflowId": "xxxxxxxx",
    "workflowName": "todayNews",
    "workflowVersion": "1.0.1",
    "workflowRunId": "xxxxxxxx",
    "status": "PENDING"
}

                    
Este bloque de código en una ventana flotante

Se puede consultar de forma asíncrona el resultado de la ejecución utilizando el workflowRunId obtenido.

Cuerpo

Campo Tipo Descripción
workflowId String ID del flujo de trabajo.
workflowName String Nombre del flujo de trabajo.
workflowVersion String Número de versión del flujo de trabajo.
workflowRunId String ID de ejecución del flujo de trabajo, utilizado para identificar de forma única esta ejecución.
input Object Entrada del nodo start, idéntica a la entrada de la solicitud.
output Object Salida del nodo end, que contiene los resultados de la ejecución del flujo de trabajo.
workflowExecutionTime Number Tiempo empleado en ejecutar el flujo de trabajo, en milisegundos.
status String Estado de la invocación del flujo de trabajo; los valores posibles incluyen:
- SUCCEED: éxito
- FAILED: fallo
- PENDING: en cola
- RUNNING: en ejecución
totalCost Number Coste total en créditos de esta ejecución.
totalTokens Number Total de tokens consumidos en esta ejecución.
startTime Number Marca de tiempo de inicio, en milisegundos.
endTime Number Marca de tiempo de fin, en milisegundos.