WJb Docs - Reference
Browse APIs, configuration options, interfaces, and implementation details.
⚡ Actions
🔀 Workflow
📦 Jobs
⚙️ Runtime
💾 Persistence
🗄 Storage
🧩 Workflow Metadata
🛠 Extensions & Helpers
IProgressAction
Represents an action that can report execution progress.
IProgressAction allows actions to publish progress information while work is being performed. This enables monitoring tools, dashboards, and user interfaces to display realtime execution status.
Purpose
Use IProgressAction when an action:
- Executes for an extended period of time
- Processes large datasets
- Performs multiple steps
- Imports or exports data
- Uploads or downloads files
- Benefits from user-visible progress reporting
Typical Scenarios
Examples include:
Import 10,000 customers
Generate monthly reports
Process images
Upload documents
Synchronize external systems
Execution Flow
Job
↓
IProgressAction
↓
Progress Updates
↓
Completion
Progress information is published during execution while the action continues running.
Reporting Progress
A typical action reports progress as meaningful checkpoints are reached.
0%
↓
25%
↓
50%
↓
75%
↓
100%
For long-running operations, progress updates improve observability and user experience.
Best Practices
Report Meaningful Progress
Prefer:
Validated Data
Imported Records
Generated Report
Uploaded Files
Avoid excessive updates that provide little value.
Keep Progress Lightweight
Progress reporting should not become a significant part of execution cost.
Updates should be inexpensive and infrequent enough to avoid unnecessary overhead.
Report Real Progress
Progress should reflect actual work completed whenever possible.
Prefer:
2500 of 10000 records processed
Over arbitrary percentages.
Continue Returning Results Normally
Progress reporting does not replace workflow results.
Actions still return an IActionResult that determines workflow behavior.
Relationship to JobProgress
IProgressAction produces progress information.
JobProgress stores and exposes that information to consumers.
IProgressAction
↓
JobProgress
↓
UI / Monitoring
Monitoring
Progress data can be used by:
- Dashboards
- Administrative tools
- Monitoring systems
- Status pages
- User interfaces
When to Use
Implement IProgressAction only when progress information provides real value.
Short-running actions usually do not require progress reporting.
Related Types
- JobProgress
- IAction
- IAction
- JobAction
- IActionResult
- JobInfo
See Also
- JobProgress
- JobInfo
- IAction
- JobAction