# Protocol Proof Review API

> Protocol Proof Review API is a paid API for AI agents from x402-url-evidence.vercel.app, paid per call via x402, $0.04/call, status unknown (last checked 2026-09-13).

Performs a deterministic security and correctness review of a smart contract deployment, checking transactions and findings on a specified blockchain network.

## Facts

- Endpoint: POST https://x402-url-evidence.vercel.app/api/protocol-proof-review
- 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/protocol-proof-review-api-bd378a7b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Xp2u5toOIOJvvdEPiEjEV

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 protocol-proof-review-api-bd378a7b -d '<json body>'
```

Example prompt: Can you run a protocol proof review on the smart contract I just deployed to Avalanche Fuji C-Chain and tell me if there are any high or medium severity findings and whether all transactions resolved successfully?

## When to prefer this

Use this endpoint when you need a deterministic, verifiable audit of a smart contract deployment — especially when you want programmatic confirmation that transactions succeeded, code is deployed, and common compliance issues (like missing testnet labels) are detected. Prefer this over manual block explorer inspection when you need structured, machine-readable findings with severity levels that can feed into automated workflows or CI/CD pipelines.

## Known failure modes

- Contract address not found on specified network — returns empty or error result
- Network not supported — invalid chainId or network name returns an error
- Payment not processed — x402 payment failure results in 402 response
- Contract not yet deployed — deployedCodeObserved returns false
- Malformed request body — missing required fields returns 4xx error

## How this service works

Paid deterministic utility APIs settled in native USDC on Base.

## Output

Returns a JSON object containing: network details (name, chainId), a summary with counts of low/medium/high severity findings and a boolean indicating if all transactions resolved successfully, contract info (code size in bytes, whether deployed code was observed), an array of specific findings with codes and priorities, and an array of transaction results with block numbers and success status.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "required": [
      "siteUrl",
      "contractAddress",
      "transactionHashes"
     ],
     "properties": {
      "siteUrl": {
       "type": "string",
       "description": "Credential-free public HTTPS site URL"
      },
      "contractAddress": {
       "type": "string",
       "pattern": "^0x[a-fA-F0-9]{40}$"
      },
      "transactionHashes": {
       "type": "array",
       "items": {
        "type": "string",
        "pattern": "^0x[a-fA-F0-9]{64}$"
       },
       "maxItems": 5,
       "minItems": 1,
       "uniqueItems": true
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "network": {
   "name": "Avalanche Fuji C-Chain",
   "chainIdDecimal": 43113
  },
  "summary": {
   "low": 1,
   "high": 1,
   "medium": 1,
   "allTransactionsResolvedAndSuccessful": true
  },
  "contract": {
   "codeBytes": 2640,
   "deployedCodeObserved": true
  },
  "findings": [
   {
    "code": "testnet_label_missing",
    "priority": "high"
   }
  ],
  "transactions": [
   {
    "found": true,
    "successful": true,
    "blockNumber": 57091153
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/protocol-proof-review-api-bd378a7b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-url-evidence.vercel.app](https://www.zero.xyz/host/x402-url-evidence.vercel.app/llms.txt)
