Skip to main content
Every authorize call resolves to exactly one verdict. The PDP’s live taxonomy is four values: mayContinue is a convenience the SDK derives: it is true for ALLOW and WARN, false for BLOCK and ESCALATE.

Decision shape

Handling each verdict

On WARN you must use transformedContent if it is present. That is where the PDP hands back, for example, a PHI-minimized version of the context. Ignoring it means delivering the un-minimized original, a policy violation you were just warned about.

Verdict → delivery mapping in the evidence feed

Each decision is logged with a delivery label so auditors can read outcomes at a glance:

A note on client enums

The reference Kotlin client (AkharaPolicy.kt) additionally defines REWRITE and PAUSE for forward-compatibility. The PDP’s shipped taxonomy is the four verdicts above, treat WARN as the rewrite verdict. If you build a custom client, map any unknown verdict to a fail-closed BLOCK rather than continuing. See Fail-closed.