Runs
Create Run
Creates a new workflow run in submitted status from either a self-contained legacy manifest or an immutable workflow-version intent. Creation does not start or schedule the run.
Failures return the standard error body. The intent lane responds 404 (workflow_version_not_found, environment_not_found), 422 (run_intent_invalid, target_invalid, target_environment_unsupported, workflow_version_unusable, run_compile_invalid), 503 (integration_unavailable), or 500 (workflow_version_store_error, credential_store_error, variable_store_error, run_persistence_failed).
post/api/v1/runs
Request body
Example request
{
"version": 1,
"parent_id": "01HV6D7S5YF4Z4B2M7K4N0Q6T8",
"title": "Add rate limiting to auth endpoints",
"cwd": "/tmp/project",
"git": {
"origin_url": "https://github.com/acme/my-app.git",
"branch": "feature/foo",
"sha": "abc123def"
},
"target": {
"path": ".fabro/workflows/smoke/workflow.fabro"
}
}Response
Run created
Example response
{
"repository": {
"name": "fabro-sh/fabro",
"origin_url": "https://github.com/fabro-sh/fabro.git"
},
"lifecycle": {
"error": {
"message": "Stage 'apply-changes' exceeded maximum retries."
}
},
"timing": {
"wall_time_ms": 420000,
"inference_time_ms": 120000,
"tool_time_ms": 60000,
"active_time_ms": 180000
},
"diff": {
"files_changed": 42,
"additions": 567,
"deletions": 234
},
"pull_request": {
"owner": "fabro-sh",
"repo": "fabro",
"number": 123,
"html_url": "https://github.com/fabro-sh/fabro/pull/123"
},
"current_question": {
"text": "Accept or push for another round?"
}
}