Skip to content

Workflows ​

Workflows track asynchronous operations. Each endpoint documents whether it returns a workflow. You poll that object until it reaches a terminal state. All path parameters are required. All query parameters are optional. Workspace and instance IDs are decimal strings.

A workflow has these fields:

FieldTypeDescription
idstringUUID assigned by the workflow engine
namestringWorkflow type, for example instance.power or instance.provision
statestringOne of QUEUED, RUNNING, COMPLETED, FAILED, ABORTED, TIMED_OUT
durationintegerElapsed time in seconds
startedstringISO-8601 timestamp when execution began
dataobjectOptional workflow metadata. May be null
progressobjectOptional execution progress on single-workflow fetches

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 workflow_id, name, and status
completedintegerNumber of activities with status COMPLETED
totalintegerTotal number of activities seen so far

progress is omitted on list responses. Activity status is one of PENDING, IN_PROGRESS, COMPLETED, FAILED, TIMED_OUT, or CANCELED. Child workflow status uses the workflow states above. Retry attempts start at 1, with 0 before execution. A retry limit of 0 means unlimited attempts.

Fetch a workflow ​

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

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

Staff only

This operation requires a staff session. Use Fetch a workspace workflow with a user-scoped token.

Path parameters

NameTypeDescription
wfidstringWorkflow ID (UUID)

Returns 200 OK with a workflow object including progress.

List workspace workflows ​

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

Returns workflows that belong to a workspace.

Path parameters

NameTypeDescription
widstringWorkspace ID

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
instancestring[]Scope to specific instance IDs
workspacestring[]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 200 OK with 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
widstringWorkspace ID
wfidstringWorkflow ID (UUID)

Returns 200 OK with 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
widstringWorkspace ID
iidstringInstance ID

Query parameters

Same optional query parameters as List workspace workflows.

Plus the shared pagination parameters. Returns 200 OK with 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'