Arvexa OS
Get API key

Revenue

Get Decision Explanation Card

Returns the tenant-scoped Decision Explanation Card (DecisionExplanation) for a call: status, summary, overallConfidence, decisionTypes, sections, confidence, provenance, assembly metadata. Deep signals are ADMIN-only (null for OPS_MANAGER). When EXPLAINABLE_DECISION_ENGINE_ENABLED=false returns enabled=false structured payload (not 500). When flag on and no row exists: ADMIN roles assemble on-demand; OPS_MANAGER receives an unevaluated card without writes/events (GET stays read-mostly). Cross-tenant or missing call returns 404. Compose/explain only — never mutates M7–M13 outcomes.

GEThttps://api.thearvexa.com/api/calls/{id}/decision-explanation

Calls

Recent Requests

Log in to see full request history
TimeStatusUser Agent
Make a request to see history.

Path Params

idstringrequired

Headers

x-organization-idstringrequired

Tenant organization identifier

x-user-rolestringrequired

Development RBAC role (for example SUPER_ADMIN, ORG_ADMIN, OPS_MANAGER, VIEWER)

x-user-idstring

Trusted authenticated actor id (interim header auth). Recorded as the actor on sensitive writes such as finance adjustments and their approve/reject decisions. Ignored when header auth is disabled.

Responses

200Decision Explanation Card payload. When no persisted row exists, OPS_MANAGER receives evaluated:false with message="Decision explanation has not been assembled for this call." (GET does not assemble). Only an admin POST .../refresh or ingestion resolves the card. Admins may still assemble on-demand on GET.

Decision Explanation Card payload. When no persisted row exists, OPS_MANAGER receives evaluated:false with message="Decision explanation has not been assembled for this call." (GET does not assemble). Only an admin POST .../refresh or ingestion resolves the card. Admins may still assemble on-demand on GET.

Schema

object
enabledbooleanrequired

True when EXPLAINABLE_DECISION_ENGINE_ENABLED is on for this deployment.

evaluatedbooleanrequired

True when a persisted Decision Explanation Card (DecisionExplanation) exists. False for the unevaluated operator card: OPS_MANAGER (and other non-admins) receive evaluated:false when no row exists — GET does not assemble on demand. Resolution requires an admin POST .../refresh or ingestion-driven assemble.

example: false

decisionExplanationIdstring | nullrequired

Persisted DecisionExplanation id.

callIdstringrequired
organizationIdstringrequired
statusenum(PENDING | READY | PARTIAL | FAILED | STALE) | nullrequired
summarystring | nullrequired
overallConfidencenumber | nullrequired

Composed overall confidence (0–1).

decisionTypesarrayrequired
itemsenum(ROUTING | QUALIFICATION | TRUST | FRAUD | SETTLEMENT | PRICING | BUYER_RECOMMENDATION | PUBLISHER_RECOMMENDATION | CALL_INTELLIGENCE | MARGIN | LEAKAGE | GENOME | GRAPH | OPTIMIZATION | SIMULATION | EXPERIMENT | MARKETPLACE | BROKER | JOURNEY | OMNICHANNEL | COMPOSITE)
sectionsarrayrequired

PII-safe composed decision sections.

itemsobject
signalsarray | nullrequired

Deep normalized DecisionSignal[] — ADMIN-only (null for OPS_MANAGER).

itemsobject
confidenceobject | nullrequired

Versioned confidenceJson envelope.

provenanceobject | nullrequired

Versioned provenanceJson envelope.

assemblyVersionstring | nullrequired
narrativeProviderstring | nullrequired
modelVersionstring | nullrequired
promptVersionstring | nullrequired
failureCodestring | nullrequired
failureMessagestring | nullrequired
assembledAtstring | nullrequired
messagestring | nullrequired

Present when disabled or unevaluated. For OPS_MANAGER with no persisted row this is DECISION_ENGINE_UNEVALUATED_MESSAGE ("Decision explanation has not been assembled for this call.") — not an error; ask an admin to refresh or wait for ingestion.

example: "Decision explanation has not been assembled for this call."

Example

{
  "enabled": true,
  "evaluated": false,
  "decisionExplanationId": null,
  "callId": "call_example",
  "organizationId": "org_example",
  "status": null,
  "summary": null,
  "overallConfidence": null,
  "decisionTypes": [],
  "sections": [],
  "signals": null,
  "confidence": null,
  "provenance": null,
  "assemblyVersion": null,
  "narrativeProvider": null,
  "modelVersion": null,
  "promptVersion": null,
  "failureCode": null,
  "failureMessage": null,
  "assembledAt": null,
  "message": "Decision explanation has not been assembled for this call."
}
400Validation error

Validation error

No response body schema in OpenAPI

This status is documented, but the operation did not publish a response schema or example. The HTTP status and description above are still authoritative.

403Forbidden for the supplied role

Forbidden for the supplied role

No response body schema in OpenAPI

This status is documented, but the operation did not publish a response schema or example. The HTTP status and description above are still authoritative.

404Resource not found

Resource not found

No response body schema in OpenAPI

This status is documented, but the operation did not publish a response schema or example. The HTTP status and description above are still authoritative.

← Return to API Reference