Skip to main content

WorkflowService

Source and message fields. Error family: operations.

ListWorkflows​

Workflows the latest manifests declare: workflows[] and activities of kind WORKFLOW, with the workers polling their task queue.

  • Path: /backplane.console.v1.WorkflowService/ListWorkflows.
  • Input: ListWorkflowsRequest; output: ListWorkflowsResponse; mode: unary.
  • Errors: operations + common.
  • Read/validation: safe to retry after a transient failure.
// client: WorkflowServiceClient; request: ListWorkflowsRequest; signal: AbortSignal
const response = await client.listWorkflows(request, { signal });

StartWorkflow​

Starts a declared workflow on the service's task queue. A workflow_id that has a running run is ALREADY_EXISTS; a closed one starts a new run.

  • Path: /backplane.console.v1.WorkflowService/StartWorkflow.
  • Input: StartWorkflowRequest; output: StartWorkflowResponse; mode: unary.
  • Errors: operations + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: WorkflowServiceClient; request: StartWorkflowRequest; signal: AbortSignal
const response = await client.startWorkflow(request, { signal });

ListRuns​

Runs on a service's task queue (or its hook calls), newest start first where the visibility store sorts (Elasticsearch). SQL visibility (the dev server, PostgreSQL, MySQL) refuses ORDER BY; there the order is Temporal's own: running runs first, then by close time, newest first. ListRunsResponse.query shows which query ran.

  • Path: /backplane.console.v1.WorkflowService/ListRuns.
  • Input: ListRunsRequest; output: ListRunsResponse; mode: unary.
  • Errors: operations + common.
  • Read/validation: safe to retry after a transient failure.
// client: WorkflowServiceClient; request: ListRunsRequest; signal: AbortSignal
const response = await client.listRuns(request, { signal });

GetRun​

One run: status, input, result or failure, pending activities and its history as a timeline.

  • Path: /backplane.console.v1.WorkflowService/GetRun.
  • Input: GetRunRequest; output: GetRunResponse; mode: unary.
  • Errors: operations + common.
  • Read/validation: safe to retry after a transient failure.
// client: WorkflowServiceClient; request: GetRunRequest; signal: AbortSignal
const response = await client.getRun(request, { signal });

CancelRun​

Requests cancellation: the workflow sees it and may clean up.

  • Path: /backplane.console.v1.WorkflowService/CancelRun.
  • Input: CancelRunRequest; output: CancelRunResponse; mode: unary.
  • Errors: operations + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: WorkflowServiceClient; request: CancelRunRequest; signal: AbortSignal
const response = await client.cancelRun(request, { signal });

TerminateRun​

Ends the run at once, without the workflow's code.

  • Path: /backplane.console.v1.WorkflowService/TerminateRun.
  • Input: TerminateRunRequest; output: TerminateRunResponse; mode: unary.
  • Errors: operations + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: WorkflowServiceClient; request: TerminateRunRequest; signal: AbortSignal
const response = await client.terminateRun(request, { signal });

SignalRun​

Sends a signal with a JSON argument, or none.

  • Path: /backplane.console.v1.WorkflowService/SignalRun.
  • Input: SignalRunRequest; output: SignalRunResponse; mode: unary.
  • Errors: operations + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: WorkflowServiceClient; request: SignalRunRequest; signal: AbortSignal
const response = await client.signalRun(request, { signal });