{ "components": { "parameters": {}, "schemas": { "ErrorResponse": { "properties": { "error": { "type": "string" } }, "required": ["error"], "type": "object" } }, "securitySchemes": { "ApiKeyAuth": { "in": "header", "name": "x-api-key", "type": "apiKey" } } }, "info": { "description": "Runtime API for workflow/chat/deployment/session execution.", "title": "ABL Runtime API - public/workflows", "version": "1.0.0", "x-generated": "do not edit; source: route contracts" }, "jsonSchemaDialect": "https://spec.openapis.org/oas/3.1/dialect/base", "openapi": "3.1.0", "paths": { "/api/v1/project/{projectSlug}/{env}/workflow/{workflowSlug}/invoke": { "post": { "description": "Deployment-scoped workflow invocation. `?mode=sync` (default) returns the result inline; `async`/`async_push` return an executionId or push acknowledgement.", "operationId": "runtime.workflow.invoke", "parameters": [ { "description": "Project slug", "in": "path", "name": "projectSlug", "required": true, "schema": { "description": "Project slug", "type": "string" } }, { "description": "Environment tier", "in": "path", "name": "env", "required": true, "schema": { "description": "Environment tier", "enum": ["dev", "staging", "production"], "type": "string" } }, { "description": "Deployed workflow slug", "in": "path", "name": "workflowSlug", "required": true, "schema": { "description": "Deployed workflow slug", "type": "string" } }, { "in": "query", "name": "mode", "required": false, "schema": { "enum": ["sync", "async", "async_push"], "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "properties": { "input": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "description": "Workflow trigger input", "type": "object" } }, "type": "object" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "data": { "properties": { "executionId": { "type": "string" }, "result": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "type": "object" }, "status": { "type": "string" }, "workflowVersion": { "type": "string" }, "workflowVersionId": { "type": "string" } }, "required": ["executionId", "status"], "type": "object" }, "success": { "enum": [true], "type": "boolean" } }, "required": ["success", "data"], "type": "object" } } }, "description": "Success" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Internal server error" } }, "security": [ { "ApiKeyAuth": [] } ], "summary": "Invoke a deployed workflow", "tags": ["Workflows"] } }, "/api/v1/workflows/{workflowId}/execute": { "post": { "description": "Executes the active deployed version unless `?version=` is supplied. `mode=sync` returns the result inline; `async`/`async_push` return an executionId to poll or a push acknowledgement.", "operationId": "runtime.workflow.execute", "parameters": [ { "description": "Workflow id", "in": "path", "name": "workflowId", "required": true, "schema": { "description": "Workflow id", "type": "string" } }, { "in": "query", "name": "mode", "required": false, "schema": { "default": "sync", "enum": ["sync", "async", "async_push"], "type": "string" } }, { "in": "query", "name": "version", "required": false, "schema": { "minLength": 1, "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "additionalProperties": false, "properties": { "accessToken": { "type": "string" }, "callbackUrl": { "format": "uri", "type": "string" }, "executionId": { "format": "uuid", "type": "string" }, "input": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "default": {}, "type": "object" } }, "type": "object" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "data": { "properties": { "executionId": { "type": "string" }, "resolvedVersion": { "type": "string" }, "resolvedVersionId": { "type": "string" }, "result": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "type": "object" }, "status": { "description": "e.g. 'completed', 'running', 'accepted', 'failed'", "type": "string" } }, "required": ["executionId", "status"], "type": "object" }, "success": { "enum": [true], "type": "boolean" } }, "required": ["success", "data"], "type": "object" } } }, "description": "Success" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Internal server error" } }, "security": [ { "ApiKeyAuth": [] } ], "summary": "Execute a workflow by id", "tags": ["Workflows"] } }, "/api/v1/workflows/{workflowId}/executions/{executionId}": { "get": { "description": "Poll the status/result of an asynchronous workflow execution.", "operationId": "runtime.workflow.getExecution", "parameters": [ { "description": "Workflow id", "in": "path", "name": "workflowId", "required": true, "schema": { "description": "Workflow id", "type": "string" } }, { "description": "Execution id returned by an async execute", "in": "path", "name": "executionId", "required": true, "schema": { "description": "Execution id returned by an async execute", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "data": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "description": "Engine execution record (status, result, timestamps)", "type": "object" }, "success": { "enum": [true], "type": "boolean" } }, "required": ["success", "data"], "type": "object" } } }, "description": "Success" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Internal server error" } }, "security": [ { "ApiKeyAuth": [] } ], "summary": "Get async workflow execution status", "tags": ["Workflows"] } }, "/api/v1/workflows/{workflowId}/versions/{version}/execute": { "post": { "description": "Path-segment version pinning. The `{version}` segment wins over any `?version=`.", "operationId": "runtime.workflow.executeVersion", "parameters": [ { "description": "Workflow id", "in": "path", "name": "workflowId", "required": true, "schema": { "description": "Workflow id", "type": "string" } }, { "description": "Published version, e.g. v0.2.0", "in": "path", "name": "version", "required": true, "schema": { "description": "Published version, e.g. v0.2.0", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "additionalProperties": false, "properties": { "accessToken": { "type": "string" }, "callbackUrl": { "format": "uri", "type": "string" }, "executionId": { "format": "uuid", "type": "string" }, "input": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "default": {}, "type": "object" } }, "type": "object" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "data": { "properties": { "executionId": { "type": "string" }, "resolvedVersion": { "type": "string" }, "resolvedVersionId": { "type": "string" }, "result": { "additionalProperties": { "anyOf": [ {}, { "type": "null" } ] }, "type": "object" }, "status": { "description": "e.g. 'completed', 'running', 'accepted', 'failed'", "type": "string" } }, "required": ["executionId", "status"], "type": "object" }, "success": { "enum": [true], "type": "boolean" } }, "required": ["success", "data"], "type": "object" } } }, "description": "Success" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Internal server error" } }, "security": [ { "ApiKeyAuth": [] } ], "summary": "Execute a pinned workflow version", "tags": ["Workflows"] } } } }