approvals-overview
CRUD Service Approvals — Overview
This page explains approvals in the CRUD Service: concepts, lifecycle, and where policy plugs in.
Why approvals here?
- The workflow engine creates durable approval tasks and pauses execution (WAITING) until decisions arrive.
- Resolver plugins let policy decide “who may approve,” without hardcoding org logic in workflows.
Lifecycle (high-level)
States and thresholds
Where policy lives
- Approver selection: resolver plugins (e.g., role-based, external PDP checks).
- Decision keywords:
approval_synonyms.yamldefines allowed approve/reject terms. - Thresholds:
required_countin nodeapproval_configcontrols N-of-M approvals.
See also
- How‑to: Adding a custom approver resolver
- Reference: Approval tasks & APIs
- How‑to: Synonyms & refresh jobs
- IdP: Obligation processing and consent (pre‑issuance) —
services/idp/backend/pep-pdp-request.md - PDP: Obligations and delegation (policy) —
services/pdp/backend/obligations-and-delegation.md