Api Endpoint

presign-guard

Is this transaction, token approval or signature safe to sign? Check it before your AI agent or wallet signs it: pre-sign verdict (green/orange/red + reason codes) for EVM and Solana transactions, token approvals and Permit/Permit2/EIP-3009/Seaport signatures. Screens the spender or recipient wallet for OFAC sanctions and scam, phishing or theft reports, and flags unlimited allowances, plain-wallet spenders and risky tokens. Bulk: 100 checks for $0.80 via /v1/credits.

Open interactive test console

Offering

Provider
presign-guard.fizzl.eu
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Security
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://presign-guard.fizzl.eu/v1/check
MIME type
application/json
First seen
2026-10-16T01:50:38.788Z
Last seen
Tags
wallet-security, pre-sign, approvals, sanctions, Agents

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.01 USDC
Atomic price: 10000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Payment option 3
10000 atomic units
Atomic price: 10000 · Network: algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73k · Asset: 31566704 · Scheme: exact
Payment option 4
100000 atomic units
Atomic price: 100000 · Network: stellar:pubnet · Asset: CCW67TSZV3SSS2HXMBQ5JFGCKJNXKZM7UQUWUZPUTHXSTZLEO7SJMI75 · Scheme: exact
Payment option 5
10000 atomic units
Atomic price: 10000 · Network: eip155:196 · Asset: 0x779ded0c9e1022225f8e0630b35a9b54be713736 · Scheme: exact
Payment option 6
0.01 USDC
Atomic price: 10000 · Network: eip155:143 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0x6B0F4651eD42893ab58139938175E4a69f175F25"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "10000",
    "payTo": "ATWJ82T8nRdQwZnaysB68N5EpaSvLRsQP4h6eWmaJBH9"
  },
  {
    "scheme": "exact",
    "network": "algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73k",
    "asset": "31566704",
    "amount": "10000",
    "payTo": "LOYVFSQ6ZTS2YWUW4GQ5L6VPP2TPIOXWYDACK53CPOHQQHLDMEMKJDXAX4"
  },
  {
    "scheme": "exact",
    "network": "stellar:pubnet",
    "asset": "CCW67TSZV3SSS2HXMBQ5JFGCKJNXKZM7UQUWUZPUTHXSTZLEO7SJMI75",
    "amount": "100000",
    "payTo": "GCH2J5UAY24YNKA65MPAATVKWRCZZRZNF3JZKYYS5MIBZPG6U7WJ6CDQ"
  },
  {
    "scheme": "exact",
    "network": "eip155:196",
    "asset": "0x779ded0c9e1022225f8e0630b35a9b54be713736",
    "amount": "10000",
    "payTo": "0x6B0F4651eD42893ab58139938175E4a69f175F25"
  },
  {
    "scheme": "exact",
    "network": "eip155:143",
    "asset": "0x754704Bc059F8C67012fEd69BC8A327a5aafb603",
    "amount": "10000",
    "payTo": "0x6B0F4651eD42893ab58139938175E4a69f175F25"
  }
]

Observed health

Status
Healthy
Latest latency
233 ms
Average latency
415 ms
HTTP status
200
Last checked
Reachability
100% over 4 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "POST"
      ]
    },
    "bodyType": {
      "type": "string",
      "enum": [
        "json",
        "form-data",
        "text"
      ]
    },
    "body": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "approval",
            "transaction",
            "signature",
            "authorization",
            "message",
            "solana",
            "xrpl",
            "algorand",
            "stellar",
            "near"
          ],
          "description": "What is about to be signed"
        },
        "address": {
          "type": "string",
          "description": "authorization: the contract the EIP-7702 authorization delegates the wallet to ("
        },
        "authorizationChainId": {
          "type": "integer",
          "description": "authorization, optional: the chain id inside the authorization, chainId (default"
        },
        "nonce": {
          "type": "string",
          "description": "authorization, optional: the authorization nonce"
        },
        "transaction": {
          "type": "string",
          "maxLength": 12000,
          "description": "solana: base64 wire tx; algorand: base64 msgpack tx; stellar: base64 XDR envelope"
        },
        "transactions": {
          "type": "array",
          "maxItems": 16,
          "items": {},
          "description": "algorand: an atomic group, each base64 msgpack"
        },
        "method": {
          "type": "string",
          "enum": [
            "personal_sign",
            "eth_sign"
          ],
          "description": "message: personal_sign (default) or eth_sign"
        },
        "message": {
          "type": "string",
          "maxLength": 16384,
          "description": "message: the text or 0x-hex to be signed"
        },
        "chainId": {
          "type": "integer",
          "enum": [
            1,
            10,
            56,
            137,
            143,
            196,
            8453,
            42161,
            4663,
            43114
          ],
          "description": "EVM chain; required for approval, transaction and signature"
        },
        "network": {
          "type": "string",
          "enum": [
            "xrpl:0",
            "xrpl:1",
            "stellar:pubnet",
            "stellar:testnet"
          ],
          "description": "xrpl: xrpl:0 (default) or xrpl:1; stellar: stellar:pubnet (default) or stellar:testnet"
        },
        "nep413": {
          "type": "object",
          "description": "near: a NEAR Intents message about to be signed ({ message, recipient, nonce }, "
        },
        "tx": {
          "type": "object",
          "description": "xrpl: the unsigned transaction JSON"
        },
        "token": {
          "type": "string",
          "description": "approval: token contract"
        },
        "spender": {
          "type": "string",
          "description": "approval: who gets the allowance"
        },
        "amount": {
          "type": "string",
          "description": "approval: amount in base units (0 = revoke)"
        },
        "to": {
          "type": "string",
          "description": "transaction: target contract"
        },
        "data": {
          "type": "string",
          "description": "transaction: 0x-prefixed calldata"
        },
        "value": {
          "type": "string",
          "description": "transaction: native value in wei"
        },
        "from": {
          "type": "string",
          "description": "optional: your wallet; an EVM transaction is then simulated"
        },
        "typedData": {
          "type": [
            "object",
            "string"
          ],
          "description": "signature: the eth_signTypedData_v4 payload"
        },
        "origin": {
          "type": "string",
          "description": "optional: the site asking (URL or hostname)"
        },
        "intent": {
          "type": "string",
          "maxLength": 500,
          "description": "optional: what the agent means to do, in one sentence"
        },
        "x402": {
          "type": "object",
          "description": "optional, EIP-3009 payments: the x402 accepts entry being paid"
        },
        "mandate": {
          "type": "object",
          "description": "optional, EIP-3009 payments: the spending mandate paid under"
        },
        "lang": {
          "type": "string",
          "enum": [
            "en",
            "nl"
          ],
          "description": "explain only: en or nl"
        }
      },
      "required": [
        "type"
      ]
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "properties": {
            "address": {
              "description": "authorization: the contract the EIP-7702 authorization delegates the wallet to (",
              "type": "string"
            },
            "amount": {
              "description": "approval: amount in base units (0 = revoke)",
              "type": "string"
            },
            "authorizationChainId": {
              "description": "authorization, optional: the chain id inside the authorization, chainId (default",
              "type": "integer"
            },
            "chainId": {
              "description": "EVM chain; required for approval, transaction and signature",
              "enum": [
                1,
                10,
                56,
                137,
                8453,
                42161
              ],
              "type": "integer"
            },
            "data": {
              "description": "transaction: 0x-prefixed calldata",
              "type": "string"
            },
            "from": {
              "description": "optional: your wallet; an EVM transaction is then simulated",
              "type": "string"
            },
            "intent": {
              "description": "optional: what the agent means to do, in one sentence",
              "maxLength": 500,
              "type": "string"
            },
            "lang": {
              "description": "explain only: en or nl",
              "enum": [
                "en",
                "nl"
              ],
              "type": "string"
            },
            "mandate": {
              "description": "optional, EIP-3009 payments: the spending mandate paid under",
              "type": "object"
            },
            "message": {
              "description": "message: the text or 0x-hex to be signed",
              "maxLength": 16384,
              "type": "string"
            },
            "method": {
              "description": "message: personal_sign (default) or eth_sign",
              "enum": [
                "personal_sign",
                "eth_sign"
              ],
              "type": "string"
            },
            "network": {
              "description": "xrpl: xrpl:0 (default) or xrpl:1",
              "enum": [
                "xrpl:0",
                "xrpl:1"
              ],
              "type": "string"
            },
            "nonce": {
              "description": "authorization, optional: the authorization nonce",
              "type": "string"
            },
            "origin": {
              "description": "optional: the site asking (URL or hostname)",
              "type": "string"
            },
            "spender": {
              "description": "approval: who gets the allowance",
              "type": "string"
            },
            "to": {
              "description": "transaction: target contract",
              "type": "string"
            },
            "token": {
              "description": "approval: token contract",
              "type": "string"
            },
            "transaction": {
              "description": "solana: the base64 wire transaction; algorand: one base64 msgpack transaction",
              "maxLength": 12000,
              "type": "string"
            },
            "transactions": {
              "description": "algorand: an atomic group, each base64 msgpack",
              "items": {
                "type": "string"
              },
              "maxItems": 16,
              "type": "array"
            },
            "tx": {
              "description": "xrpl: the unsigned transaction JSON",
              "type": "object"
            },
            "type": {
              "description": "What is about to be signed",
              "enum": [
                "approval",
                "transaction",
                "signature",
                "authorization",
                "message",
                "solana",
                "xrpl",
                "algorand"
              ],
              "type": "string"
            },
            "typedData": {
              "description": "signature: the eth_signTypedData_v4 payload",
              "type": [
                "object",
                "string"
              ]
            },
            "value": {
              "description": "transaction: native value in wei",
              "type": "string"
            },
            "x402": {
              "description": "optional, EIP-3009 payments: the x402 accepts entry being paid",
              "type": "object"
            }
          },
          "required": [
            "type"
          ],
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "explanation": {
              "properties": {
                "lang": {
                  "type": "string"
                },
                "text": {
                  "type": "string"
                }
              },
              "type": "object"
            },
            "reasons": {
              "items": {
                "properties": {
                  "code": {
                    "type": "string"
                  },
                  "details": {},
                  "severity": {
                    "enum": [
                      "red",
                      "orange",
                      "info"
                    ],
                    "type": "string"
                  },
                  "subject": {
                    "type": "string"
                  }
                },
                "required": [
                  "code",
                  "severity"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "receipt": {
              "description": "Signed receipt binding this verdict to your request; see openapi.json",
              "type": "object"
            },
            "subject": {
              "type": "object"
            },
            "verdict": {
              "enum": [
                "green",
                "orange",
                "red"
              ],
              "type": "string"
            }
          },
          "required": [
            "verdict",
            "reasons"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}