Salve definições de execução com um nome e inicie-as com POST /v1/runs. Chaves de membro e de administrador podem usar todos os endpoints desta página. Veja os fluxos de trabalho para saber como os campos salvos e as substituições se combinam.
Salvar um fluxo de trabalho
/v1/workflows/{name}_, . ou -.promptstringobrigatóriomodelstringfilesarrayconnectionsobject{"ref": "<saved name>"}.descriptionstringinput_schemaobjectinput de cada execução deve corresponder; uma execução que não corresponde é recusada com 400. Veja descrever a entrada e a saída.output_schemaobjecttimeout_secondsintegershellbooleantrue quando omitido.webboolean | objecttrue ou um objeto com allow e search. Desativado quando omitido.Um fluxo de trabalho não pode conter input, max_cost_micros nem callback; eles pertencem a cada execução. A resposta é {"name": "investigate-payment"}.
curl -X PUT $EPHEMERAL_URL/v1/workflows/investigate-payment \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Find out why this payment failed. Follow the playbook.",
"model": "anthropic/claude-haiku-5.5",
"files": [{ "file": "playbook.md" }],
"connections": { "payments": { "ref": "payments-api", "allowed_methods": ["GET"] } },
"timeout_seconds": 120,
"shell": false
}'Iniciar um fluxo de trabalho
Envie o nome do fluxo de trabalho para POST /v1/runs com a entrada e o orçamento desta execução. Qualquer campo de definição que você incluir substitui o valor salvo nesta execução; files e connections substituem a coleção inteira.
curl $EPHEMERAL_URL/v1/runs \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"workflow":"investigate-payment","input":{"payment_id":"pay_123"},"max_cost_micros":500000}'Se o fluxo de trabalho não existir, a requisição falha com 400 e a mensagem saved workflow not found.
Listar fluxos de trabalho
/v1/workflowsname. Adicione ?detail=true para incluir a description, o input_schema e o output_schema de cada fluxo de trabalho que os tiver. Busque um fluxo de trabalho pelo nome para ver sua definição completa.[{ "name": "investigate-payment" }, { "name": "weekly-report" }]Com ?detail=true, um agente vê o que cada fluxo de trabalho espera e retorna:
[
{
"name": "weather",
"description": "Current weather for a city. Input is a city name.",
"input_schema": { "type": "object", "required": ["city"], "properties": { "city": { "type": "string" } } },
"output_schema": { "type": "object", "required": ["city", "temperature_c", "summary"] }
},
{ "name": "weekly-report" }
]Obter um fluxo de trabalho
/v1/workflows/{name}Para editar um fluxo de trabalho, busque-o, altere-o e salve-o de volta com PUT. Os campos de credenciais que você deixar vazios mantêm os valores armazenados, desde que o tipo de autenticação da conexão não mude.
Excluir um fluxo de trabalho
/v1/workflows/{name}204 No Content. As execuções que já o usaram não são afetadas.