Skip to content

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:

FieldTypeDescription
idstringUUID assigned by the workflow engine
namestringWorkflow type, for example instance.power or instance.create
statestringOne of QUEUED, RUNNING, COMPLETED, FAILED, ABORTED, TIMED_OUT
durationintegerElapsed time in milliseconds
startedstringISO-8601 timestamp when execution began
dataobjectArbitrary workflow data, if any; null while the workflow has not yet produced output
progressobjectPresent on single-workflow fetches; see below

The progress object carries a detailed view of execution:

FieldTypeDescription
activitiesobject[]Activity steps in execution order, each with a name, status, and attempts ({ current, limit })
childrenobject[]Child workflow executions, each with a workflowId, name, and status
completedintegerNumber of activities that have finished
totalintegerTotal number of activities seen so far

progress is omitted on list responses to keep them compact.

List caller workflows

GET/v1/workflowsList caller workflows

Administrator 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

NameTypeDescription
qstringQuick search by workflow ID prefix, name prefix, instance ID, or workspace ID
idstring[]Filter to specific workflow IDs
namestringFilter by workflow type name, for example instance.power
instanceinteger[]Scope to specific instance IDs
workspaceinteger[]Scope to specific workspace IDs
statusstring[]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_afterstringISO-8601 timestamp; only workflows started at or after this time
started_beforestringISO-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

GET/v1/workflows/{wfid}Fetch a workflow

Fetches a single workflow by its ID. The response includes progress.

Path parameters

NameTypeDescription
wfidstringWorkflow ID (UUID)

Returns a workflow object including progress.

List workspace workflows

GET/v1/workspaces/{wid}/workflowsList workspace workflows

Returns workflows that belong to a workspace, newest first.

Path parameters

NameTypeDescription
widintegerWorkspace ID

Query parameters

Same filter parameters as List caller workflows above.

Plus the shared pagination parameters. Returns a paged list of workflow objects.

bash
curl https://api.galaxygate.net/v1/workspaces/42/workflows \
  -H "Authorization: Bearer $GALAXYGATE_TOKEN" \
  -A 'curl/8.5'

Fetch a workspace workflow

GET/v1/workspaces/{wid}/workflows/{wfid}Fetch a workspace workflow

Fetches a single workflow scoped to a workspace. The workspace check prevents cross-tenant access.

Path parameters

NameTypeDescription
widintegerWorkspace ID
wfidstringWorkflow ID (UUID)

Returns a workflow object including progress.

List instance workflows

GET/v1/workspaces/{wid}/instances/{iid}/workflowsList instance workflows

Returns workflows that were triggered against a specific instance.

Path parameters

NameTypeDescription
widintegerWorkspace ID
iidintegerInstance ID

Query parameters

Same filter parameters as List caller workflows above.

Plus the shared pagination parameters. Returns a paged list of workflow objects.

bash
curl https://api.galaxygate.net/v1/workspaces/42/instances/101/workflows \
  -H "Authorization: Bearer $GALAXYGATE_TOKEN" \
  -A 'curl/8.5'