Skip to content

Not Enough Quorum Approvers

URI: https://docs.ankatech.co/errors/quorum-insufficient-approvers
HTTP Status: 422 Unprocessable Content

When you see this

Enabling quorum approval, or raising requiredApprovals, would leave a request that could never reach its quorum. A requester never approves its own request, so a quorum of M approvals needs at least M + 1 eligible approvers: active members of the tenant (or, on the deployment plane, of the platform tenant) holding the plane's quorum approve scope.

The same type refuses a new request that too few approvers other than its requester could decide: the operation is gated, and fewer than M eligible approvers remain once the requester (and, for a request made by an application, the persons accountable for it) is left out.

The two extension members always count one population, and which one depends on the call:

Refused call eligibleApprovers requiredEligibleApprovers
Enabling the policy or raising requiredApprovals The plane's eligible approvers (the number the policy read shows) M + 1
A gated operation, creating a request The approvers who may decide this request: the requester, and an application's accountable persons, left out M

Quorum (M-of-N) approval is described in Quorum Approval*.

Common Causes

  • You are the tenant's only administrator holding the approve scope, and you asked for one approval.
  • You raised requiredApprovals above the number of eligible approvers minus one.
  • An approver was suspended, removed or lost the approve scope since you last read the policy.
  • You requested a gated operation, and you are one of only M eligible approvers: the others cannot reach M without you.

Response Example

{
  "type": "https://docs.ankatech.co/errors/quorum-insufficient-approvers",
  "title": "Not Enough Quorum Approvers",
  "status": 422,
  "detail": "A quorum of 2 approval(s) needs at least 3 eligible approvers, because the requester never approves its own request; 2 are eligible. Appoint more approvers, or lower the number of approvals.",
  "instance": "/api/v3/admin/tenants/7d2f4a10-9c31-4b8e-a5d6-2f11c0b47e93/quorum/policy",
  "timestamp": 1730000000,
  "extensions": {
    "eligibleApprovers": 2,
    "requiredEligibleApprovers": 3,
    "requestId": "550e8400-e29b-41d4-a716-446655440000"
  }
}

Content-Type: application/problem+json — the response follows RFC 9457 Problem Details.

How to Resolve

  1. Read extensions.eligibleApprovers and extensions.requiredEligibleApprovers.
  2. Give the quorum approve scope to more active members (a role that carries it), or lower requiredApprovals.
  3. Read the policy again (getTenantQuorumPolicy): eligibleApprovers and enableAvailable say whether enabling would now be admitted.

For full schema definitions, examples, and interactive testing, see the Developer Hub Reference.

* restricted content — see higher-tier documentation