kye_decide() playground
Curl-friendly. SDK-friendly. Reset any time.
Construct an observed_action, choose a scenario for context, hit Decide. The shadow-mode evaluator runs the production precedence rules against the action and returns a signed decision envelope — all in your browser.
Plain Q&A
Short questions. Short answers.
- Do I need to sign up? No.
- Is this real? Yes. Real Workers. Real keys.
- Can I see the source? Yes. The runtime is open.
- Where does state go? Public sandbox DB. Resets daily.
- Will it log my IP? No. Logs are scrubbed.
- How many calls free? Up to 200 per hour.
- Curl-friendly? Yes. Every endpoint.
- Bring my own data? Yes. Drop a JSON. Try.
Plain take
Try every endpoint. Sign every reply. No signup.
- Real Workers. Real signatures.
- Public test keys. Public test data.
- Reset state with one click.
- Curl-friendly. SDK-friendly.
Loading scenario…
Request
Try it now. Copy the curl.
Decision envelope
Short take. Big idea.
POST /v1/runtime/decide → kye.pdp_decision.v1
…
// Decision JSON will appear here.
Precedence rules (reference)
Short take. Big idea.
- R-PROHIBIT-CLASS — action is in
denied_actionsfor the PP →deny / denied_action_class - R-AMOUNT-CAP —
context.amount_gbpexceedsscope.amount_cap_gbp→require_approval / amount_cap_exceeded - R-RISK-HIGH —
context.risk_score ≥ 0.85→deny / risk_threshold_exceeded - R-REQUIRED-GATE-UNMET —
required_gateset butgate_satisfied = false→require_approval - R-MEANING-DRIFT-MATERIAL —
meaning_drift === "material"→require_approval - R-ASSURANCE-FLOOR —
assurance_level < min_assurance→require_approval - R-CONSENT-MISSING — PP requires consent + no receipt →
deny / consent_required - R-EXTERNAL-EXPORT —
external_export === true→quarantine - R-REDACTION-REQUIRED —
unredacted_fieldsoverlaps with PP'sredaction_required→quarantine - R-ALLOW-DEFAULT — otherwise →
allow / policy_allow_default