{
  "openapi": "3.1.0",
  "info": {
    "title": "AgentTrust Verify",
    "version": "1.0.0",
    "description": "AI-agent destination verification that analyzes a URL or domain for observable technical risk signals including HTTPS, TLS availability, reachability, redirects and suspicious URL patterns, returning a risk level, score, confidence and supporting evidence.",
    "x-x402": {
      "protocol": "x402",
      "scheme": "exact",
      "network": "algorand:SGO1GKSzyE7IEPItTxCByw9x8FmnrCDexi9/cOUJOiI=",
      "networkLabel": "Algorand Testnet",
      "asset": "USDC",
      "assetId": 10458941,
      "price": "0.03",
      "currency": "USDC",
      "payTo": "BQSJ3LZDYXDATRR53WO4YXRQEIOOX2NL3W7EZ4HMREU6GV5VFKPOMGRQOE",
      "facilitator": "https://facilitator.goplausible.xyz",
      "extra": {
        "tag": "x402-global-challenge"
      }
    }
  },
  "servers": [
    {
      "url": "https://agent-verify-pro.lovable.app"
    }
  ],
  "paths": {
    "/api/verify": {
      "post": {
        "summary": "Verify a destination before an agent interacts with it",
        "description": "AI-agent destination verification that analyzes a URL or domain for observable technical risk signals including HTTPS, TLS availability, reachability, redirects and suspicious URL patterns, returning a risk level, score, confidence and supporting evidence.",
        "operationId": "verifyDestination",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "url"
                ],
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "Absolute http(s) URL or bare domain to verify.",
                    "example": "https://example.com"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Verification result (payment settled).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "service": {
                      "type": "string"
                    },
                    "target": {
                      "type": "string"
                    },
                    "risk_level": {
                      "type": "string",
                      "enum": [
                        "LOW",
                        "MEDIUM",
                        "HIGH"
                      ]
                    },
                    "trust_score": {
                      "type": "integer",
                      "minimum": 0,
                      "maximum": 100
                    },
                    "confidence": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "interaction_recommendation": {
                      "type": "string",
                      "enum": [
                        "PROCEED_WITH_NORMAL_CAUTION",
                        "REVIEW",
                        "AVOID"
                      ]
                    },
                    "limitations": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "checks": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "deductions": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "checked_at": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "payment": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid or blocked target. Payment is not settled."
          },
          "402": {
            "description": "Payment required. The PAYMENT-REQUIRED header carries the x402 payment requirements."
          },
          "500": {
            "description": "Server payment configuration is invalid."
          },
          "503": {
            "description": "Facilitator unavailable; no verification performed."
          }
        }
      }
    }
  }
}