API Reference
Full XML-documentation reference for all public types and members in FlowOrchestrator.
Packages
| Package | Namespace | Description |
|---|---|---|
FlowOrchestrator.Core |
FlowOrchestrator.Core.* |
Abstractions, execution engine, storage contracts |
FlowOrchestrator.Hangfire |
FlowOrchestrator.Hangfire.* |
Hangfire bridge, DI extensions, built-in step handlers |
FlowOrchestrator.InMemory |
FlowOrchestrator.InMemory.* |
In-process runtime adapter and storage backend (dev/testing) |
FlowOrchestrator.ServiceBus |
FlowOrchestrator.ServiceBus.* |
Azure Service Bus runtime adapter (multi-replica) |
FlowOrchestrator.SqlServer |
FlowOrchestrator.SqlServer.* |
SQL Server persistence (Dapper) |
FlowOrchestrator.PostgreSQL |
FlowOrchestrator.PostgreSQL.* |
PostgreSQL persistence (Npgsql) |
FlowOrchestrator.Dashboard |
FlowOrchestrator.Dashboard.* |
REST API and embedded SPA |
FlowOrchestrator.Testing |
FlowOrchestrator.Testing.* |
FlowTestHost — runs flows in-process inside a test |
Key Types
Defining Flows
| Type | Description |
|---|---|
IFlowDefinition |
Contract for a flow definition class |
FlowManifest |
Holds triggers and steps for a flow |
StepMetadata |
Declares a step's type, inputs, and runAfter dependencies |
LoopStepMetadata |
ForEach loop step definition |
TriggerMetadata |
Declares a trigger (manual, cron, or webhook) |
RunAfterCollection |
Maps predecessor step keys to required statuses |
StepStatus |
Enum: Pending, Running, Succeeded, Failed, Skipped |
Implementing Step Handlers
| Type | Description |
|---|---|
IStepHandler<TInput> |
Main interface for custom step logic — receives a strongly-typed, expression-resolved input |
IStepHandler |
Non-generic base the engine dispatches through; implement the generic form unless you need the raw payload |
PollableStepHandler<TInput> |
Base class for steps that poll an external system |
IPollableInput |
Input contract for pollable steps |
IExecutionContext |
Run-scoped context passed to every handler |
IExecutionContextAccessor |
DI-injectable accessor for the current execution context |
Storage Abstractions
| Type | Description |
|---|---|
IFlowStore |
Persists flow definitions |
IFlowRunStore |
Persists run state and step records |
IFlowRunRuntimeStore |
Dispatch ledger + claim guard — the "dispatch many, execute once" primitives |
IFlowRunControlStore |
Per-run cancel latch, timeout deadline, and ExtendDeadlineAsync |
IOutputsRepository |
Stores and retrieves per-step outputs keyed by RunId |
IFlowEventReader |
Reads the per-run event stream for the dashboard timeline |
IFlowSignalStore |
Signal waiters and delivery for WaitForSignal steps |
IFlowRetentionStore |
Backs the background retention sweep |
IFlowScheduleStateStore |
Persists cron overrides and enable/disable state across restarts (optional) |
DI Registration
| Type | Description |
|---|---|
FlowOrchestratorBuilder |
Returned by AddFlowOrchestrator() — configure storage, the runtime adapter, and flows |
See Also
- Getting Started — install and first flow
- Core Concepts — DAG semantics, statuses, RunId
- Step Handlers — writing
IStepHandler<T>andPollableStepHandler<T> - Storage Backends — swap SQL Server, PostgreSQL, or InMemory