# Tereno Obligation Verdict

> Tereno Obligation Verdict is a paid API for AI agents from www.tereno.xyz, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-15).

Recomputes and returns the verdict on a published Tereno economic obligation, indicating whether the condition was satisfied, along with receipt bytes, challenge count, and inputs to independently verify the result.

## Facts

- Endpoint: GET https://www.tereno.xyz/api/v1/capabilities/obligation.verdict/invoke
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tereno-obligation-verdict-1a6a5a12
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_HMbj1UmcEaBm_Tb4SBedT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tereno-obligation-verdict-1a6a5a12
```

Example prompt: Check the Tereno obligation verdict for claim 0x3a1f2b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f2a — tell me if the economic condition was satisfied and whether it's decision-grade.

## When to prefer this

Use this endpoint when you need to check or audit whether a specific Tereno-published economic obligation's condition has been satisfied, especially when you want independent verification inputs (receipt bytes, challenge count) to reproduce the verdict without relying on Tereno. Prefer this over generic chain reads when you need a structured, typed verdict with provenance and the decisionGrade flag to know whether the result is reliable enough to act on.

## Known failure modes

- Invalid obligationId format (must match ^0x[0-9a-f]{64}$) returns validation error
- ObligationId not found on Tereno returns 404 or undetermined verdict
- Obligation condition still pending returns verdict: pending rather than an error
- Payment failure or invalid quote id returns 402 Payment Required
- Network or chain data unavailability may return undetermined verdict

## How this service works

Was the economic condition satisfied? Return a recomputed verdict on a published Tereno obligation, with the receipt bytes, the challenge count and the inputs to reach the same verdict without Tereno. Marks a verdict that is not decision-grade. Tereno never holds, releases or gates funds.

## Output

Returns a verdict enum (satisfied, not_satisfied, pending, or undetermined), a decisionGrade boolean indicating whether the verdict is reliable enough to gate a decision on, receipt bytes for provenance, a challenge count, a receiptUrl, and the raw inputs needed to independently reproduce the verdict without Tereno.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "obligationId"
     ],
     "properties": {
      "quote": {
       "type": "string",
       "description": "Optional single-use quote id."
      },
      "obligationId": {
       "type": "string",
       "pattern": "^0x[0-9a-f]{64}$",
       "description": "claimId of a published Tereno obligation, from GET /api/v1/claims."
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "capabilityId",
      "result",
      "pricing",
      "receiptUrl"
     ],
     "properties": {
      "result": {
       "type": "object",
       "properties": {
        "verdict": {
         "enum": [
          "satisfied",
          "not_satisfied",
          "pending",
          "undetermined"
         ]
        },
        "decisionGrade": {
         "type": "boolean",
         "description": "False means the condition could not have failed. Do not gate a decision on it."
        }
       }
      },
      "pricing": {
       "type": "object"
      },
      "verdict": {
       "enum": [
        "allow",
        "review",
        "block"
       ]
      },
      "receiptUrl": {
       "type": "string"
      },
      "capabilityId": {
       "const": "obligation.verdict"
      },
      "invocationId": {
       "type": "string"
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tereno-obligation-verdict-1a6a5a12/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from www.tereno.xyz](https://www.zero.xyz/host/www.tereno.xyz/llms.txt)
