# PolicyActionsType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/common/common-3

Actions that are executed as reactions to triggered policy rules.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
enforcement | container EnforcementPolicyActionType | [0,1] | Enforcement action.
approval | container ApprovalPolicyActionType | [0,-1] | Approval action(s).
remediation | container RemediationPolicyActionType | [0,1] | Remediation action.
prune | container PrunePolicyActionType | [0,1] | Prune action.
certification | container CertificationPolicyActionType | [0,1] | Certification action.
notification | container NotificationPolicyActionType | [0,-1] | Notification action.
record | container RecordPolicyActionType | [0,1] | Record action.
scriptExecution | container ScriptExecutionPolicyActionType | [0,-1] | Execute script (action).
suspendTask | container SuspendTaskPolicyActionType | [0,1] | Stop action.

- ### Items

  - #### enforcement

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Enforcement action. This action stops the operation and results with the error.

  - #### approval

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Display order:

    Approval action(s). The operation will be suspended and the approval workflow will be started. If the workflow ends with success the operation will proceed. If the workflow ends with an error the operation will also end with an error. More approval actions can be specified. They will be eventually merged into one approval process.

  - #### remediation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Remediation action. The operation will proceed. A workflow will be started to remediate the result of the operation after the operation is done. This action is ideal for operations that cannot be stopped, e.g. when manager of an organizational unit is deleted because he quits the job. This action starts a workflow. Therefore it is ideal for actions that are not frequent but that require immediate attention. E.g. missing manager for organizational unit.

  - #### prune

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Prune action. The operation will proceed. Any other assignments that are in conflict with this assignment that triggered the rule will be "pruned": they will be removed. The removal of the conflicting assignments is automatic and silent. It will not be subject to approvals or other policy constraints. This mechanism can be used for example to implement set of roles where only one of the roles can be assigned at a time.

  - #### certification

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Certification action. The operation will proceed. The object will be scheduled for a certification campaign after the operation is done. This action works with certification campaign. Therefore it is ideal for actions that are frequent and can occur on large number of objects. The campaign is an efficient method how to handle mass decisions. However it mat not be started immediately.

  - #### notification

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Display order:

    Notification action. The operation will proceed. Notifications are sent at the end of the operation. More notification actions can be specified.

  - #### record

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Record action. The operation will proceed. Policy situation(s) will be recorded for given object or assignment. It can be reported on or certified later on.

  - #### scriptExecution

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Display order:

    Execute script (action). The operation will proceed. Script(s) are executed at the end of the operation.

  - #### suspendTask

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Stop action. This action stops the operation after n executions and results with the error.