{
  "version": 1,
  "services": [
    {
      "id": "trust402",
      "name": "Trust402",
      "description": "Buyer-side trust and procurement agent for x402 resources.",
      "url": "https://trust402.aztecbeacon.uk",
      "protocol": "x402",
      "openapi": "https://trust402.aztecbeacon.uk/openapi.json",
      "x402": "https://trust402.aztecbeacon.uk/.well-known/x402",
      "resources": [
        {
          "id": "trust.check_x402",
          "url": "https://trust402.aztecbeacon.uk/api/trust/check-x402",
          "resource": "https://trust402.aztecbeacon.uk/api/trust/check-x402",
          "path": "/api/trust/check-x402",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.005,
          "description": "Run a fast live probe for one x402 endpoint and summarize challenge/payment-flow readiness.",
          "category": "trust",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "required": [
              "endpoint"
            ],
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "method": {
                "type": "string",
                "enum": [
                  "GET",
                  "POST",
                  "PUT",
                  "PATCH",
                  "DELETE",
                  "HEAD"
                ],
                "default": "GET"
              },
              "expectedPriceUsd": {
                "type": "number"
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "trust.score_resource",
          "url": "https://trust402.aztecbeacon.uk/api/trust/score-resource",
          "resource": "https://trust402.aztecbeacon.uk/api/trust/score-resource",
          "path": "/api/trust/score-resource",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.01,
          "description": "Score one x402 resource for trust, schema, price, discovery, and receipt readiness.",
          "category": "trust",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "priceUsd": {
                "type": "number"
              },
              "hasInputSchema": {
                "type": "boolean"
              },
              "hasOpenApi": {
                "type": "boolean"
              },
              "hasWellKnown": {
                "type": "boolean"
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "trust.evaluate_origin",
          "url": "https://trust402.aztecbeacon.uk/api/trust/evaluate-origin",
          "resource": "https://trust402.aztecbeacon.uk/api/trust/evaluate-origin",
          "path": "/api/trust/evaluate-origin",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.02,
          "description": "Evaluate a full origin/domain and its x402 discovery posture.",
          "category": "trust",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "priceUsd": {
                "type": "number"
              },
              "hasInputSchema": {
                "type": "boolean"
              },
              "hasOpenApi": {
                "type": "boolean"
              },
              "hasWellKnown": {
                "type": "boolean"
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "seller.readiness",
          "url": "https://trust402.aztecbeacon.uk/api/seller/readiness",
          "resource": "https://trust402.aztecbeacon.uk/api/seller/readiness",
          "path": "/api/seller/readiness",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.02,
          "description": "Check whether a seller endpoint is ready for marketplace discovery and autonomous buyers.",
          "category": "seller",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "priceUsd": {
                "type": "number"
              },
              "hasInputSchema": {
                "type": "boolean"
              },
              "hasOpenApi": {
                "type": "boolean"
              },
              "hasWellKnown": {
                "type": "boolean"
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "trust.compare_resources",
          "url": "https://trust402.aztecbeacon.uk/api/trust/compare-resources",
          "resource": "https://trust402.aztecbeacon.uk/api/trust/compare-resources",
          "path": "/api/trust/compare-resources",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.03,
          "description": "Rank 2-10 candidate paid resources for a goal, budget, and risk policy.",
          "category": "trust",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "required": [
              "candidates"
            ],
            "properties": {
              "goal": {
                "type": "string"
              },
              "budgetUsd": {
                "type": "number"
              },
              "candidates": {
                "type": "array",
                "minItems": 2,
                "maxItems": 10,
                "items": {
                  "type": "object",
                  "additionalProperties": true,
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Stable candidate identifier used in rankings and receipts."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable resource name."
                    },
                    "endpoint": {
                      "type": "string",
                      "format": "uri",
                      "description": "HTTPS x402 resource endpoint."
                    },
                    "url": {
                      "type": "string",
                      "format": "uri",
                      "description": "Alternate field for the x402 resource endpoint."
                    },
                    "priceUsd": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Advertised resource price in USD."
                    },
                    "price": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Alternate price field accepted by Trust402."
                    },
                    "has402": {
                      "type": "boolean",
                      "description": "Whether the endpoint is known to return an x402 challenge."
                    },
                    "hasInputSchema": {
                      "type": "boolean",
                      "description": "Whether structured input schema metadata is available."
                    },
                    "hasOpenApi": {
                      "type": "boolean",
                      "description": "Whether the origin publishes OpenAPI metadata."
                    },
                    "hasWellKnown": {
                      "type": "boolean",
                      "description": "Whether the origin publishes /.well-known/x402 discovery."
                    },
                    "inputSchema": {
                      "type": "object",
                      "description": "Optional embedded input schema for the candidate."
                    },
                    "openapiUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "wellKnownUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "payTo": {
                      "type": "string",
                      "pattern": "^0x[a-fA-F0-9]{40}$"
                    },
                    "network": {
                      "type": "string",
                      "description": "x402 payment network, for example eip155:8453."
                    },
                    "asset": {
                      "type": "string",
                      "description": "Payment asset address or symbol."
                    },
                    "description": {
                      "type": "string",
                      "description": "Buyer-facing explanation of the resource."
                    },
                    "receiptReady": {
                      "type": "boolean",
                      "description": "Whether the candidate can return receipt/proof-ready output."
                    },
                    "proofReady": {
                      "type": "boolean",
                      "description": "Alternate receipt/proof readiness signal."
                    },
                    "observed": {
                      "type": "object",
                      "description": "Optional probe observations such as status or latency."
                    },
                    "x402": {
                      "type": "object",
                      "description": "Optional parsed x402 challenge metadata."
                    },
                    "accept": {
                      "type": "object",
                      "description": "Optional single x402 accept object."
                    },
                    "metadata": {
                      "type": "object",
                      "description": "Additional public-safe metadata used during scoring."
                    }
                  },
                  "anyOf": [
                    {
                      "required": [
                        "endpoint"
                      ]
                    },
                    {
                      "required": [
                        "url"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "procurement.plan",
          "url": "https://trust402.aztecbeacon.uk/api/procurement/plan",
          "resource": "https://trust402.aztecbeacon.uk/api/procurement/plan",
          "path": "/api/procurement/plan",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.02,
          "description": "Create a bounded spend plan without spending money.",
          "category": "procurement",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "required": [
              "goal",
              "budgetUsd"
            ],
            "properties": {
              "goal": {
                "type": "string"
              },
              "budgetUsd": {
                "type": "number"
              },
              "maxPaidCalls": {
                "type": "integer",
                "default": 5
              },
              "riskTolerance": {
                "type": "string",
                "enum": [
                  "low",
                  "medium",
                  "high"
                ],
                "default": "low"
              },
              "candidates": {
                "type": "array",
                "minItems": 1,
                "maxItems": 10,
                "items": {
                  "type": "object",
                  "additionalProperties": true,
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Stable candidate identifier used in rankings and receipts."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable resource name."
                    },
                    "endpoint": {
                      "type": "string",
                      "format": "uri",
                      "description": "HTTPS x402 resource endpoint."
                    },
                    "url": {
                      "type": "string",
                      "format": "uri",
                      "description": "Alternate field for the x402 resource endpoint."
                    },
                    "priceUsd": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Advertised resource price in USD."
                    },
                    "price": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Alternate price field accepted by Trust402."
                    },
                    "has402": {
                      "type": "boolean",
                      "description": "Whether the endpoint is known to return an x402 challenge."
                    },
                    "hasInputSchema": {
                      "type": "boolean",
                      "description": "Whether structured input schema metadata is available."
                    },
                    "hasOpenApi": {
                      "type": "boolean",
                      "description": "Whether the origin publishes OpenAPI metadata."
                    },
                    "hasWellKnown": {
                      "type": "boolean",
                      "description": "Whether the origin publishes /.well-known/x402 discovery."
                    },
                    "inputSchema": {
                      "type": "object",
                      "description": "Optional embedded input schema for the candidate."
                    },
                    "openapiUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "wellKnownUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "payTo": {
                      "type": "string",
                      "pattern": "^0x[a-fA-F0-9]{40}$"
                    },
                    "network": {
                      "type": "string",
                      "description": "x402 payment network, for example eip155:8453."
                    },
                    "asset": {
                      "type": "string",
                      "description": "Payment asset address or symbol."
                    },
                    "description": {
                      "type": "string",
                      "description": "Buyer-facing explanation of the resource."
                    },
                    "receiptReady": {
                      "type": "boolean",
                      "description": "Whether the candidate can return receipt/proof-ready output."
                    },
                    "proofReady": {
                      "type": "boolean",
                      "description": "Alternate receipt/proof readiness signal."
                    },
                    "observed": {
                      "type": "object",
                      "description": "Optional probe observations such as status or latency."
                    },
                    "x402": {
                      "type": "object",
                      "description": "Optional parsed x402 challenge metadata."
                    },
                    "accept": {
                      "type": "object",
                      "description": "Optional single x402 accept object."
                    },
                    "metadata": {
                      "type": "object",
                      "description": "Additional public-safe metadata used during scoring."
                    }
                  },
                  "anyOf": [
                    {
                      "required": [
                        "endpoint"
                      ]
                    },
                    {
                      "required": [
                        "url"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "procurement.quote",
          "url": "https://trust402.aztecbeacon.uk/api/procurement/quote",
          "resource": "https://trust402.aztecbeacon.uk/api/procurement/quote",
          "path": "/api/procurement/quote",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.04,
          "description": "Produce a concrete quote and approval payload for a multi-resource purchase path without spending.",
          "category": "procurement",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "required": [
              "goal",
              "budgetUsd"
            ],
            "properties": {
              "goal": {
                "type": "string"
              },
              "budgetUsd": {
                "type": "number"
              },
              "maxPaidCalls": {
                "type": "integer",
                "default": 5
              },
              "riskTolerance": {
                "type": "string",
                "enum": [
                  "low",
                  "medium",
                  "high"
                ],
                "default": "low"
              },
              "allowedRegistries": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "candidates": {
                "type": "array",
                "minItems": 1,
                "maxItems": 10,
                "items": {
                  "type": "object",
                  "additionalProperties": true,
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Stable candidate identifier used in rankings and receipts."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable resource name."
                    },
                    "endpoint": {
                      "type": "string",
                      "format": "uri",
                      "description": "HTTPS x402 resource endpoint."
                    },
                    "url": {
                      "type": "string",
                      "format": "uri",
                      "description": "Alternate field for the x402 resource endpoint."
                    },
                    "priceUsd": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Advertised resource price in USD."
                    },
                    "price": {
                      "oneOf": [
                        {
                          "type": "number",
                          "minimum": 0
                        },
                        {
                          "type": "string"
                        }
                      ],
                      "description": "Alternate price field accepted by Trust402."
                    },
                    "has402": {
                      "type": "boolean",
                      "description": "Whether the endpoint is known to return an x402 challenge."
                    },
                    "hasInputSchema": {
                      "type": "boolean",
                      "description": "Whether structured input schema metadata is available."
                    },
                    "hasOpenApi": {
                      "type": "boolean",
                      "description": "Whether the origin publishes OpenAPI metadata."
                    },
                    "hasWellKnown": {
                      "type": "boolean",
                      "description": "Whether the origin publishes /.well-known/x402 discovery."
                    },
                    "inputSchema": {
                      "type": "object",
                      "description": "Optional embedded input schema for the candidate."
                    },
                    "openapiUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "wellKnownUrl": {
                      "type": "string",
                      "format": "uri"
                    },
                    "payTo": {
                      "type": "string",
                      "pattern": "^0x[a-fA-F0-9]{40}$"
                    },
                    "network": {
                      "type": "string",
                      "description": "x402 payment network, for example eip155:8453."
                    },
                    "asset": {
                      "type": "string",
                      "description": "Payment asset address or symbol."
                    },
                    "description": {
                      "type": "string",
                      "description": "Buyer-facing explanation of the resource."
                    },
                    "receiptReady": {
                      "type": "boolean",
                      "description": "Whether the candidate can return receipt/proof-ready output."
                    },
                    "proofReady": {
                      "type": "boolean",
                      "description": "Alternate receipt/proof readiness signal."
                    },
                    "observed": {
                      "type": "object",
                      "description": "Optional probe observations such as status or latency."
                    },
                    "x402": {
                      "type": "object",
                      "description": "Optional parsed x402 challenge metadata."
                    },
                    "accept": {
                      "type": "object",
                      "description": "Optional single x402 accept object."
                    },
                    "metadata": {
                      "type": "object",
                      "description": "Additional public-safe metadata used during scoring."
                    }
                  },
                  "anyOf": [
                    {
                      "required": [
                        "endpoint"
                      ]
                    },
                    {
                      "required": [
                        "url"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "monitor.snapshot",
          "url": "https://trust402.aztecbeacon.uk/api/monitor/snapshot",
          "resource": "https://trust402.aztecbeacon.uk/api/monitor/snapshot",
          "path": "/api/monitor/snapshot",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.015,
          "description": "Run a one-shot x402 payment-flow and trust drift snapshot without storing history.",
          "category": "monitoring",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "method": {
                "type": "string",
                "enum": [
                  "GET",
                  "POST",
                  "PUT",
                  "PATCH",
                  "DELETE",
                  "HEAD"
                ],
                "default": "GET"
              },
              "expectedStatus": {
                "type": "integer"
              },
              "expectedPriceUsd": {
                "type": "number"
              },
              "timeoutMs": {
                "type": "integer"
              }
            },
            "anyOf": [
              {
                "required": [
                  "endpoint"
                ]
              },
              {
                "required": [
                  "origin"
                ]
              }
            ]
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "monitor.badge",
          "url": "https://trust402.aztecbeacon.uk/api/monitor/badge",
          "resource": "https://trust402.aztecbeacon.uk/api/monitor/badge",
          "path": "/api/monitor/badge",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": 0.02,
          "description": "Generate a one-shot Trust402 badge payload from a snapshot.",
          "category": "monitoring",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "label": {
                "type": "string"
              },
              "snapshot": {
                "type": "object"
              }
            },
            "anyOf": [
              {
                "required": [
                  "endpoint"
                ]
              },
              {
                "required": [
                  "origin"
                ]
              },
              {
                "required": [
                  "snapshot"
                ]
              }
            ]
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        },
        {
          "id": "reports.x402_diligence",
          "url": "https://trust402.aztecbeacon.uk/api/reports/x402-diligence",
          "resource": "https://trust402.aztecbeacon.uk/api/reports/x402-diligence",
          "path": "/api/reports/x402-diligence",
          "method": "POST",
          "type": "http",
          "x402Version": 2,
          "price_usd": {
            "min": 0.08,
            "max": 0.15
          },
          "description": "Produce a full diligence report for an x402 endpoint or origin with hash-ready evidence.",
          "category": "diligence",
          "accepts": [
            {
              "version": 2,
              "scheme": "exact",
              "network": "eip155:8453",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "payTo": "0x3f4CEE4c6bad04FcCA3138dFFDEE579ddf17049B"
            }
          ],
          "inputSchema": {
            "type": "object",
            "properties": {
              "endpoint": {
                "type": "string",
                "format": "uri"
              },
              "origin": {
                "type": "string",
                "format": "uri"
              },
              "priceUsd": {
                "type": "number"
              },
              "hasInputSchema": {
                "type": "boolean"
              },
              "hasOpenApi": {
                "type": "boolean"
              },
              "hasWellKnown": {
                "type": "boolean"
              }
            }
          },
          "openapi": "https://trust402.aztecbeacon.uk/openapi.json"
        }
      ]
    }
  ]
}