Evaluate an immutable decision revision
const url = 'https://indepai.app/api/v1/fire-decision/scenarios/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/revisions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/evaluate';const options = { method: 'POST', headers: { 'Idempotency-Key': '2489E9AD-2EE2-8E00-8EC9-32D5F69181C0', Authorization: 'Bearer <token>' }};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://indepai.app/api/v1/fire-decision/scenarios/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/revisions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/evaluate \ --header 'Authorization: Bearer <token>' \ --header 'Idempotency-Key: 2489E9AD-2EE2-8E00-8EC9-32D5F69181C0'Evaluates each requested claim against its frozen financial, budget, evidence, tax, and visa dependencies. Unsupported or incomplete claims return a successful fail-closed receipt with Limited or Blocked readiness; they never inherit a favorable fallback.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Owner-scoped decision scenario UUID
Immutable scenario revision UUID
Header Parameters
Section titled “Header Parameters”Client-generated replay key
Responses
Section titled “Responses”Immutable decision receipt, including explicit Limited or Blocked claim states
object
object
Unique identifier (UUID v4)
Unique identifier (UUID v4)
Timestamp in ISO 8601 format
object
object
Unique identifier (UUID v4)
object
object
object
object
Unique identifier (UUID v4)
Example
{ "success": true, "data": { "receiptId": "550e8400-e29b-41d4-a716-446655440000", "scenarioRevisionId": "550e8400-e29b-41d4-a716-446655440000", "computedAt": "2024-01-15T10:30:00Z", "readiness": "ready", "claimResults": [ { "claim": "pre_tax_city_budget", "state": "ready", "evidenceFactIds": [ "550e8400-e29b-41d4-a716-446655440000" ] } ], "versions": { "contract": "decision-contract/1", "taxRuleSetIds": [ "550e8400-e29b-41d4-a716-446655440000" ], "visaRuleSetIds": [ "550e8400-e29b-41d4-a716-446655440000" ], "evidenceSnapshotId": "550e8400-e29b-41d4-a716-446655440000" }, "warnings": [ { "evidenceFactIds": [] } ], "disclaimer": { "kind": "educational_estimate", "verifyBeforeActing": true } }, "meta": { "requestId": "550e8400-e29b-41d4-a716-446655440000", "contractVersion": "decision-contract/1" }}Invalid identifiers or idempotency key
object
Always false for error responses
Error type
Machine-readable error code
Detailed validation errors
object
Path to the invalid field
Error message
Example
{ "success": false, "error": "Validation error", "code": "VALIDATION_ERROR", "details": [ { "path": "currentAge", "message": "Must be between 18 and 100" } ]}Authentication required
object
Always false for error responses
Error type
Machine-readable error code
Detailed validation errors
object
Path to the invalid field
Error message
Example
{ "success": false, "error": "Validation error", "code": "VALIDATION_ERROR", "details": [ { "path": "currentAge", "message": "Must be between 18 and 100" } ]}Owned scenario revision not found
object
Always false for error responses
Error type
Machine-readable error code
Detailed validation errors
object
Path to the invalid field
Error message
Example
{ "success": false, "error": "Validation error", "code": "VALIDATION_ERROR", "details": [ { "path": "currentAge", "message": "Must be between 18 and 100" } ]}Rate limit exceeded
object
Always false for error responses
Error type
Machine-readable error code
Detailed validation errors
object
Path to the invalid field
Error message
Example
{ "success": false, "error": "Validation error", "code": "VALIDATION_ERROR", "details": [ { "path": "currentAge", "message": "Must be between 18 and 100" } ]}