# Basic Plugin BasicPlugin is a built-in plugin included in `OptimaJet.Workflow.Core` that registers ready-made actions, conditions, and rules with [WorkflowRuntime](https://docs.workflowengine.io/get-started/concepts/workflow-runtime/). Instead of writing custom [action providers](https://docs.workflowengine.io/get-started/concepts/action/) for common operations, you register the plugin once and assign its capabilities to [activities](https://docs.workflowengine.io/get-started/concepts/activity/) and [transitions](https://docs.workflowengine.io/get-started/concepts/transition/) in your workflow schemes. Each section below covers a specific use case with a complete workflow scheme example and a real-world scenario. The [BasicPlugin API reference](https://api.workflowengine.io/core/OptimaJet.Workflow.Plugins/BasicPlugin/) lists the class constructors, properties, and methods. BasicPlugin approval capabilities are separate from [ApprovalPlugin](https://docs.workflowengine.io/plugins/approval-plugin/). BasicPlugin keeps the approver list in the `Approvers` process parameter; ApprovalPlugin stores approval history and inbox and outbox records instead. The plugins are independent. - [Overview](https://docs.workflowengine.io/plugins/basic-plugin/overview/): Registration, configuration, and reference tables for BasicPlugin actions, conditions, and rules. - [HTTP Requests](https://docs.workflowengine.io/plugins/basic-plugin/http-requests/): Call external APIs from your workflow and validate responses with CheckHTTPRequest. - [Sending Emails](https://docs.workflowengine.io/plugins/basic-plugin/sending-emails/): Send email notifications at specific workflow stages via SMTP. - [Managing Subprocesses](https://docs.workflowengine.io/plugins/basic-plugin/managing-subprocesses/): Check whether direct child subprocesses created by fork transitions have completed, or delete all child subprocesses during cleanup. - [Managing Parameters](https://docs.workflowengine.io/plugins/basic-plugin/managing-parameters/): Store, remove, and branch on process parameter values. - [Process Control](https://docs.workflowengine.io/plugins/basic-plugin/process-control/): Jump between activities, set process state, and trigger commands on other processes. - [Parallel Approval](https://docs.workflowengine.io/plugins/basic-plugin/parallel-approval/): Set up multi-user approval without explicit workflow branches. - [Role-Based Authorization](https://docs.workflowengine.io/plugins/basic-plugin/role-based-authorization/): Restrict command execution to users in specific roles.