Skip to Content
Evaluate Get Started Plugins Glossary

Approval Plugin

ApprovalPlugin supplies the data an application needs to present approval work to users. It tracks who can act on a document now, records the approval journey, and summarizes the work each person has completed. The configured persistence provider stores this data so the host application can build task lists, approval timelines, and completed-work screens.

ApprovalPlugin tracks who can act and who already acted. The Basic Plugin supplies the separate multi-user approval logic that fills approver lists and decides when the required approvals are complete.

ApprovalPlugin is a data integration rather than an end-user task application. It does not provide a ready-made worklist UI or send notifications; the host application queries the plugin data, renders tasks, and chooses how users are notified.

Inbox, approval history, and Outbox

ApprovalPlugin organizes approval work around three questions:

  • Inbox - What needs attention now? Shows the documents or requests waiting for a person and the actions offered on those items. On a document page, the same view can show everyone who can act on that document.
  • Approval history - What happened, and what comes next? Shows the approval timeline for one document or request: predicted approval stages, eligible people, completed actions, executors, times, and comments.
  • Outbox - What have I already handled? Summarizes the documents or requests on which a person has completed an approval action. It is the basis for a "Completed by me" screen.

Choose the view that answers the user's question.

ScreenQuestion it answersApprovalPlugin view
Current approversWho can act on this document now?Inbox for the document
My tasksWhich documents are waiting for me?Inbox for the selected workflow identity
Approval timelineWho could act, who acted, and what happened?Approval history for the document
Completed by meWhich documents have I already handled?Outbox for the selected workflow identity

These views are connected. Inbox is a snapshot of current work, approval history contains predicted and completed stages, and Outbox is calculated from completed history rather than stored as a separate queue.

ApprovalPlugin and BasicPlugin

ApprovalPlugin records approval data: history items in WorkflowApprovalHistory, current work in WorkflowInbox, and derived outbox summaries. BasicPlugin runs the approval logic inside the scheme: it fills the approver list, keeps it in the Approvers process parameter, and decides completion with the IsApproveComplete condition. The plugins are independent; register either or both.

Where to start

Choose the page by application task. Start with the overview to register ApprovalPlugin, prepare a qualifying scheme, and follow one approval through the stored data. Use Inbox and Outbox for "My Tasks", current approvers, and "Completed by me" screens. Use Approval History for a per-process audit timeline. Use Basic Plugin Parallel Approval when the workflow must count decisions or wait for an approval threshold.

Frequently asked questions

What does ApprovalPlugin do in Workflow Engine?

ApprovalPlugin records approval history and maintains inbox entries for identities resolved from command-transition actors. It also exposes outbox summaries derived from completed approval history.

Does ApprovalPlugin decide when every approver has approved?

No. ApprovalPlugin does not evaluate approval completion. BasicPlugin provides FillApproversUsers, FillApproversRoles, ClearApprovers, and IsApproveComplete for workflows that require several decisions before moving forward.

Does ApprovalPlugin require a separate NuGet package?

No. ApprovalPlugin is included in the WorkflowEngine.NETCore-Core package and uses the approval capabilities of the configured persistence provider.

Where does ApprovalPlugin store its data?

ApprovalPlugin stores inbox records in WorkflowInbox and history records in WorkflowApprovalHistory. Providers use tables or MongoDB collections for those stores. Outbox results are grouped from completed history instead of being stored separately.

Does ApprovalPlugin manage users, roles, or business documents?

No. The host application continues to manage its users, roles, and business records. Workflow actors and rules determine who can act, while ApprovalPlugin records the pending and completed approval work.

Does ApprovalPlugin provide a task UI or send approval notifications?

No. ApprovalPlugin maintains history and per-identity worklist data. The host application builds the task UI, sends any email or push notifications, and uses WorkflowRuntime to validate and execute commands.