Skip to main content

Approval Workflow API

Visual workflow definitions with versioning, publishing lifecycle, and human approval task management.

FieldValue
PortVia API Gateway (8080)
Base Path/api/v1
SourceFrontend service integration (no OpenAPI spec)

Workflow Definitions

MethodPathDescription
GET/api/v1/workflowsList workflows (paginated, filterable)
POST/api/v1/workflowsCreate workflow definition
GET/api/v1/workflows/{id}Get workflow details
PUT/api/v1/workflows/{id}Update workflow
DELETE/api/v1/workflows/{id}Delete workflow

Workflow Versioning & Lifecycle

MethodPathDescription
GET/api/v1/workflows/{id}/versionsList versions
POST/api/v1/workflows/{id}/versionsCreate new version
POST/api/v1/workflows/{id}/publishPublish workflow
GET/api/v1/workflows/{id}/instancesList running instances

Approval Tasks

MethodPathDescription
GET/api/v1/tasksList user's tasks
GET/api/v1/tasks/{id}Get task details
POST/api/v1/tasks/{id}/claimClaim task
POST/api/v1/tasks/{id}/completeComplete task (with form data)
POST/api/v1/tasks/{id}/delegateDelegate to another user
POST/api/v1/tasks/bulk/claimBulk claim multiple tasks

Key Types

WorkflowDefinition

{
id: string;
name: string;
description: string;
status: 'draft' | 'published' | 'archived';
versions: WorkflowVersion[];
createdAt: string;
updatedAt: string;
}

Workflow Node Types (11)

start | approval | condition | parallel-split | parallel-join | notification | timer | script | reject | loop | end

Task Status

pending | claimed | completed | delegated | escalated | expired | cancelled

Instance Status

running | completed | cancelled | error


Frontend Integration

FilePurpose
services/approval-workflow/workflow.service.tsWorkflow CRUD & lifecycle
services/approval-workflow/task.service.tsTask operations
services/approval-workflow/useApprovalWorkflow.tsReact Query hook
types/approval-workflow.types.tsTypeScript types
stores/useWorkflowDesignerStore.tsZustand canvas state