Workflows
Workflows track asynchronous operations. Any call that provisions, changes, or tears down real infrastructure returns a workflow object instead of the finished resource. You poll that object until it reaches a terminal state.
A workflow has these fields:
| Field | Type | Description |
|---|---|---|
id | string | UUID assigned by the workflow engine |
name | string | Workflow type, for example instance.power or instance.create |
state | string | One of QUEUED, RUNNING, COMPLETED, FAILED, ABORTED, TIMED_OUT |
duration | integer | Elapsed time in milliseconds |
started | string | ISO-8601 timestamp when execution began |
data | object | Arbitrary workflow data, if any; null while the workflow has not yet produced output |
progress | object | Present on single-workflow fetches; see below |
The progress object carries a detailed view of execution:
| Field | Type | Description |
|---|---|---|
activities | object[] | Activity steps in execution order, each with a name, status, and attempts ({ current, limit }) |
children | object[] | Child workflow executions, each with a workflowId, name, and status |
completed | integer | Number of activities that have finished |
total | integer | Total number of activities seen so far |
progress is omitted on list responses to keep them compact.
List caller workflows
/v1/workflowsList caller workflowsAdministrator only
This endpoint is restricted to administrator sessions. A user-scoped token receives 403 Forbidden.
Returns all workflows visible to the current session, newest first, with pagination.
Query parameters
| Name | Type | Description |
|---|---|---|
q | string | Quick search by workflow ID prefix, name prefix, instance ID, or workspace ID |
id | string[] | Filter to specific workflow IDs |
name | string | Filter by workflow type name, for example instance.power |
instance | integer[] | Scope to specific instance IDs |
workspace | integer[] | Scope to specific workspace IDs |
status | string[] | Filter by state: QUEUED, RUNNING, COMPLETED, FAILED, ABORTED, TIMED_OUT. Note: filtering by QUEUED alone has no effect because QUEUED has no queryable equivalent in the workflow engine |
started_after | string | ISO-8601 timestamp; only workflows started at or after this time |
started_before | string | ISO-8601 timestamp; only workflows started at or before this time |
Plus the shared pagination parameters. Returns a paged list of workflow objects.
Fetch a workflow
/v1/workflows/{wfid}Fetch a workflowFetches a single workflow by its ID. The response includes progress.
Path parameters
| Name | Type | Description |
|---|---|---|
wfid | string | Workflow ID (UUID) |
Returns a workflow object including progress.
List workspace workflows
/v1/workspaces/{wid}/workflowsList workspace workflowsReturns workflows that belong to a workspace, newest first.
Path parameters
| Name | Type | Description |
|---|---|---|
wid | integer | Workspace ID |
Query parameters
Same filter parameters as List caller workflows above.
Plus the shared pagination parameters. Returns a paged list of workflow objects.
curl https://api.galaxygate.net/v1/workspaces/42/workflows \
-H "Authorization: Bearer $GALAXYGATE_TOKEN" \
-A 'curl/8.5'Fetch a workspace workflow
/v1/workspaces/{wid}/workflows/{wfid}Fetch a workspace workflowFetches a single workflow scoped to a workspace. The workspace check prevents cross-tenant access.
Path parameters
| Name | Type | Description |
|---|---|---|
wid | integer | Workspace ID |
wfid | string | Workflow ID (UUID) |
Returns a workflow object including progress.
List instance workflows
/v1/workspaces/{wid}/instances/{iid}/workflowsList instance workflowsReturns workflows that were triggered against a specific instance.
Path parameters
| Name | Type | Description |
|---|---|---|
wid | integer | Workspace ID |
iid | integer | Instance ID |
Query parameters
Same filter parameters as List caller workflows above.
Plus the shared pagination parameters. Returns a paged list of workflow objects.
curl https://api.galaxygate.net/v1/workspaces/42/instances/101/workflows \
-H "Authorization: Bearer $GALAXYGATE_TOKEN" \
-A 'curl/8.5'