Skip to content

Tier Assurance Downgrade Requires Confirmation

URI: https://docs.ankatech.co/errors/tier-assurance-downgrade-unconfirmed
HTTP Status: 422 Unprocessable Entity

When you see this

You selected a key-protection backend for an ANKA-managed tier whose custody assurance is lower than the tier name implies, and the request did not carry assuranceDowngradeConfirmed. The request is well formed and the backend token is legal — what is missing is consent, so the same request succeeds once the flag is set. The gate runs before the tier enters its binding window and before any write, so nothing was persisted and nothing was audited.

Common Causes

  • Choosing a software or otherwise lower-assurance backend for a tier whose name promises stronger custody.
  • Submitting the tier selection with assuranceDowngradeConfirmed omitted or set to false.

Response Example

{
  "type": "https://docs.ankatech.co/errors/tier-assurance-downgrade-unconfirmed",
  "title": "Tier Assurance Downgrade Requires Confirmation",
  "status": 422,
  "detail": "The selected backend provides lower assurance than the ENTERPRISE tier implies. Resubmit with assuranceDowngradeConfirmed=true to accept the change.",
  "instance": "/api/v3/admin/platform/key-backend/tiers/ENTERPRISE",
  "timestamp": 1730000000,
  "extensions": {
    "requestId": "550e8400-e29b-41d4-a716-446655440000"
  }
}

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

How to Resolve

  1. Decide whether the lower-assurance backend is genuinely what this tier should run on — the detail names the tier whose implied assurance the selection sits below.
  2. If it is, resubmit the same selection with assuranceDowngradeConfirmed set to true.
  3. If it is not, select a backend whose assurance matches the tier and resubmit.

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