# Trust402 Procurement Quote

> Trust402 Procurement Quote is a paid API for AI agents from trust402.aztecbeacon.uk, paid per call via x402, $0.04/call, status unknown (last checked 2026-09-13).

Evaluates a set of x402-gated API candidates against a buyer goal and budget, returning a ranked recommendation on whether to approve procurement.

## Facts

- Endpoint: POST https://trust402.aztecbeacon.uk/api/procurement/quote
- Price: $0.04/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/trust402-procurement-quote-44e1240d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_z3XhhGyafAx8mHVSNqB_-

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 trust402-procurement-quote-44e1240d -d '<json body>'
```

Example prompt: I have a $0.50 budget and I'm trying to find the best x402 API for real-time weather data — can you run a Trust402 procurement quote comparing these three candidates and tell me which one to approve: api.weatherx402.io, wx402.example.com, and forecast402.network?

## When to prefer this

Use this endpoint when an AI agent needs to autonomously decide which x402-paywalled API resources to purchase from a pool of candidates, especially when trust scoring and budget constraints must be applied before committing any payment. Prefer this over raw x402 payment endpoints when the agent does not yet know which resource to buy and needs a recommendation layer.

## Known failure modes

- Missing required 'goal' field returns validation error
- Budget of 0 or negative may yield no approvable candidates
- Candidates missing both 'endpoint' and 'url' fields fail schema validation
- Unknown or unreachable x402 endpoints may return low trust scores or be excluded
- Malformed payTo address (non-0x Ethereum format) causes candidate rejection
- Response may return ok:false if no candidates pass trust threshold

## How this service works

Produce a concrete quote and approval payload for a multi-resource purchase path without spending.

## Output

A JSON object with an 'ok' boolean, a 'tool' identifier ('procurement.quote'), and a 'recommendation' string (e.g. 'approve-after-review') indicating the trust-weighted procurement decision for the submitted x402 candidates.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "goal": {
   "type": "string",
   "description": "Buyer goal for selecting x402 resources."
  },
  "budgetUsd": {
   "type": "number",
   "description": "Maximum spend budget for the plan or quote."
  },
  "candidates": {
   "type": "array",
   "items": {
    "type": "object",
    "anyOf": [
     {
      "required": [
       "endpoint"
      ]
     },
     {
      "required": [
       "url"
      ]
     }
    ],
    "properties": {
     "id": {
      "type": "string",
      "description": "Stable candidate identifier used in rankings and receipts."
     },
     "url": {
      "type": "string",
      "format": "uri",
      "description": "Alternate field for the x402 resource endpoint."
     },
     "name": {
      "type": "string",
      "description": "Human-readable resource name."
     },
     "x402": {
      "type": "object",
      "description": "Optional parsed x402 challenge metadata."
     },
     "asset": {
      "type": "string",
      "description": "Payment asset address or symbol."
     },
     "payTo": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$"
     },
     "price": {
      "oneOf": [
       {
        "type": "number",
        "minimum": 0
       },
       {
        "type": "string"
       }
      ],
      "description": "Alternate price field accepted by Trust402."
     },
     "accept": {
      "type": "object",
      "description": "Optional single x402 accept object."
     },
     "has402": {
      "type": "boolean",
      "description": "Whether the endpoint is known to return an x402 challenge."
     },
     "network": {
      "type": "string",
      "description": "x402 payment network, for example eip155:8453."
     },
     "endpoint": {
      "type": "string",
      "format": "uri",
      "description": "HTTPS x402 resource endpoint."
     },
     "metadata": {
      "type": "object",
      "description": "Additional public-safe metadata used during scoring."
     },
     "observed": {
      "type": "object",
      "description": "Optional probe observations such as status or latency."
     },
     "priceUsd": {
      "oneOf": [
       {
        "type": "number",
        "minimum": 0
       },
       {
        "type": "string"
       }
      ],
      "description": "Advertised resource price in USD."
     },
     "hasOpenApi": {
      "type": "boolean",
      "description": "Whether the origin publishes OpenAPI metadata."
     },
     "openapiUrl": {
      "type": "string"
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "tool": "procurement.quote",
  "recommendation": "approve-after-review"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/trust402-procurement-quote-44e1240d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from trust402.aztecbeacon.uk](https://www.zero.xyz/host/trust402.aztecbeacon.uk/llms.txt)
