Guide: Capturing Decisions
Capture every AI decision with enough context to survive audits and enable offline verification.
Request Schema
Field Type Required Notes
model_id string Yes Which model produced the decision
input object Yes Raw inputs (PII redaction is caller's responsibility)
output object Yes Model result (decision + attributes)
confidence number No 0-1 score
idempotency_key string No Required for safe retries
policy_id string No Business rules identifier at decision time
context object No Extra metadata (channel, session, etc.)
explanation object No SHAP/LIME values if provided/auto-generatedInclude your internal reference (e.g.,
transaction_id) in context or a dedicated field.Examples
capture.pypython
import xase
client = xase.Client(api_key="xase_pk_...")
record = client.records.create(
model_id="credit-model-v2",
input={
"customer_id": "cust_123",
"income": 85000,
"debt_ratio": 0.32,
"credit_score": 720
},
output={
"decision": "APPROVED",
"limit": 25000,
"interest_rate": 12.5
},
confidence=0.94,
idempotency_key="req_unique_123"
)
print(record.id)Best Practices
- Use idempotency keys: make retries safe.
- Attach business policy: record
policy_idused at decision time. - Explainability: enable SHAP/LIME capture for auditability.
- PII: redact sensitive inputs before sending, if required.