{
  "x402Version": 2,
  "name": "Safe or Scam",
  "description": "Crypto scam checks (tokens, websites, wallets), blockchain reads, web page to Markdown and email checks for AI agents.",
  "network": "eip155:8453",
  "payTo": "0xbf39c5cc183d58c0b440df8b8d33dbe7996a7679",
  "facilitator": "https://facilitator.payai.network",
  "services": [
    {
      "method": "POST",
      "path": "/api/check/token",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/check/token",
      "description": "Is this crypto token a scam? Honeypot buy/sell simulation, hidden taxes, mint/freeze authority, hidden owner, blacklist, whale concentration, liquidity lock. Returns red/yellow/green with reasons. EVM chains + Solana.",
      "amount": "10000",
      "price_usd": "0.01",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "address": {
              "type": "string",
              "description": "Token contract address (0x...) or Solana mint"
            },
            "chain": {
              "type": "string",
              "enum": [
                "ethereum",
                "bsc",
                "base",
                "arbitrum",
                "polygon",
                "optimism",
                "avalanche",
                "solana"
              ],
              "description": "Chain: ethereum, bsc, base, arbitrum, polygon, optimism, avalanche, solana"
            }
          },
          "required": [
            "address",
            "chain"
          ],
          "example": {
            "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
            "chain": "base"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "verdict": {
                "type": "string",
                "enum": [
                  "green",
                  "yellow",
                  "red"
                ],
                "description": "red = likely scam, yellow = caution, green = no major red flags"
              },
              "summary": {
                "type": "string"
              },
              "red_flags": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "warnings": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "good_signs": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "data": {
                "type": "object"
              },
              "checked_at": {
                "type": "string"
              }
            },
            "required": [
              "verdict",
              "summary",
              "red_flags",
              "warnings"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/check/site",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/check/site",
      "description": "Is this website a crypto scam or phishing page? Phishing databases, domain age, look-alikes of 45+ crypto brands (MetaMask, Phantom, Binance...), seed-phrase requests, wallet-drainer code. Returns red/yellow/green with reasons.",
      "amount": "10000",
      "price_usd": "0.01",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "url": {
              "type": "string",
              "description": "Website address, e.g. example.com or https://example.com/path"
            }
          },
          "required": [
            "url"
          ],
          "example": {
            "url": "metamask-wallet-restore.com"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "verdict": {
                "type": "string",
                "enum": [
                  "green",
                  "yellow",
                  "red"
                ],
                "description": "red = likely scam, yellow = caution, green = no major red flags"
              },
              "summary": {
                "type": "string"
              },
              "red_flags": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "warnings": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "good_signs": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "data": {
                "type": "object"
              },
              "checked_at": {
                "type": "string"
              }
            },
            "required": [
              "verdict",
              "summary",
              "red_flags",
              "warnings"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/check/wallet",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/check/wallet",
      "description": "Is it safe to send crypto to this address, and is this wallet exposed? Checks scam, phishing, theft, sanctions and mixer links; risky or malicious token approvals (who can drain the wallet); contract vs personal wallet; brand-new 'poisoned' look-alike addresses. Returns red/yellow/green with reasons. EVM chains + Solana.",
      "amount": "10000",
      "price_usd": "0.01",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "address": {
              "type": "string",
              "description": "Wallet address (0x...) or Solana address"
            },
            "chain": {
              "type": "string",
              "enum": [
                "ethereum",
                "bsc",
                "base",
                "arbitrum",
                "polygon",
                "optimism",
                "avalanche",
                "solana"
              ],
              "description": "Chain: ethereum, bsc, base, arbitrum, polygon, optimism, avalanche, solana"
            }
          },
          "required": [
            "address",
            "chain"
          ],
          "example": {
            "address": "0xbf39c5cc183d58c0b440df8b8d33dbe7996a7679",
            "chain": "base"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "verdict": {
                "type": "string",
                "enum": [
                  "green",
                  "yellow",
                  "red"
                ],
                "description": "red = likely scam, yellow = caution, green = no major red flags"
              },
              "summary": {
                "type": "string"
              },
              "red_flags": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "warnings": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "good_signs": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "data": {
                "type": "object"
              },
              "checked_at": {
                "type": "string"
              }
            },
            "required": [
              "verdict",
              "summary",
              "red_flags",
              "warnings"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/chain/balances",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/chain/balances",
      "description": "Get a wallet's balances: native coin (ETH, BNB, POL, AVAX, SOL) and tokens. Solana: every SPL token held. EVM: popular tokens on the chain plus any token addresses you pass. Also returns transactions sent and whether the address is a contract.",
      "amount": "3000",
      "price_usd": "0.003",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "address": {
              "type": "string",
              "description": "Wallet address (0x...) or Solana address"
            },
            "chain": {
              "type": "string",
              "enum": [
                "ethereum",
                "bsc",
                "base",
                "arbitrum",
                "polygon",
                "optimism",
                "avalanche",
                "solana"
              ],
              "description": "Chain: ethereum, bsc, base, arbitrum, polygon, optimism, avalanche, solana"
            },
            "tokens": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "Optional extra EVM token addresses to include (max 20)"
            }
          },
          "required": [
            "address",
            "chain"
          ],
          "example": {
            "address": "0xbf39c5cc183d58c0b440df8b8d33dbe7996a7679",
            "chain": "base"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "address": {
                "type": "string",
                "description": ""
              },
              "chain": {
                "type": "string",
                "description": ""
              },
              "native": {
                "type": "object"
              },
              "tokens": {
                "type": "array",
                "items": {
                  "type": "object"
                }
              },
              "transactions_sent": {
                "type": "number"
              }
            },
            "required": [
              "address",
              "native",
              "tokens"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/chain/tx",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/chain/tx",
      "description": "Look up a transaction by hash: success/failed/pending, confirmations, time, sender, receiver, value, fee, method, decoded token and NFT transfers, and token approvals it granted (flags unlimited approvals). Solana: balance changes per account.",
      "amount": "3000",
      "price_usd": "0.003",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "hash": {
              "type": "string",
              "description": "Transaction hash (0x...) or Solana signature"
            },
            "chain": {
              "type": "string",
              "enum": [
                "ethereum",
                "bsc",
                "base",
                "arbitrum",
                "polygon",
                "optimism",
                "avalanche",
                "solana"
              ],
              "description": "Chain: ethereum, bsc, base, arbitrum, polygon, optimism, avalanche, solana"
            }
          },
          "required": [
            "hash",
            "chain"
          ],
          "example": {
            "hash": "0x5c504ed432cb51138bcf09aa5e8a410dd4a1e204ef84bfed1be16dfba1b22060",
            "chain": "ethereum"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "success",
                  "failed",
                  "pending",
                  "not_found"
                ]
              },
              "summary": {
                "type": "string",
                "description": ""
              },
              "from": {
                "type": "string",
                "description": ""
              },
              "to": {
                "type": "string",
                "description": ""
              },
              "fee": {
                "type": "string",
                "description": ""
              },
              "token_transfers": {
                "type": "array",
                "items": {
                  "type": "object"
                }
              },
              "approvals": {
                "type": "array",
                "items": {
                  "type": "object"
                }
              }
            },
            "required": [
              "status",
              "summary"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/chain/token",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/chain/token",
      "description": "Read a token's on-chain details: name, symbol, decimals, total supply. Solana: supply, decimals, mint authority and freeze authority.",
      "amount": "2000",
      "price_usd": "0.002",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "address": {
              "type": "string",
              "description": "Token contract address (0x...) or Solana mint"
            },
            "chain": {
              "type": "string",
              "enum": [
                "ethereum",
                "bsc",
                "base",
                "arbitrum",
                "polygon",
                "optimism",
                "avalanche",
                "solana"
              ],
              "description": "Chain: ethereum, bsc, base, arbitrum, polygon, optimism, avalanche, solana"
            }
          },
          "required": [
            "address",
            "chain"
          ],
          "example": {
            "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
            "chain": "base"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "found": {
                "type": "boolean"
              },
              "name": {
                "type": "string",
                "description": ""
              },
              "symbol": {
                "type": "string",
                "description": ""
              },
              "decimals": {
                "type": "number"
              },
              "total_supply": {
                "type": "string",
                "description": ""
              }
            },
            "required": [
              "found"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/read",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/read",
      "description": "Fetch any public web page and return clean Markdown of its main content (headings, lists, links, code), plus title and description. Strips menus, footers, ads and scripts so it is ready for an LLM. Not charged if the page can't be fetched.",
      "amount": "3000",
      "price_usd": "0.003",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "url": {
              "type": "string",
              "description": "Page address, e.g. https://example.com/article"
            },
            "max_chars": {
              "type": "number",
              "description": "Max characters to return (500-100000, default 20000)"
            }
          },
          "required": [
            "url"
          ],
          "example": {
            "url": "https://en.wikipedia.org/wiki/Stablecoin"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "title": {
                "type": "string",
                "description": ""
              },
              "markdown": {
                "type": "string",
                "description": ""
              },
              "words": {
                "type": "number"
              },
              "truncated": {
                "type": "boolean"
              },
              "final_url": {
                "type": "string",
                "description": ""
              }
            },
            "required": [
              "markdown"
            ]
          }
        }
      }
    },
    {
      "method": "POST",
      "path": "/api/check/email",
      "resource": "https://scam-check.safe-or-scam.workers.dev/api/check/email",
      "description": "Check an email address before sending or signing someone up: valid format, domain exists and accepts mail (MX), throwaway/disposable domain, typo suggestions (gmial.com → gmail.com), role addresses (info@, support@), SPF/DMARC. Returns valid / risky / invalid with reasons.",
      "amount": "2000",
      "price_usd": "0.002",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "discoverable": true,
      "outputSchema": {
        "input": {
          "type": "http",
          "method": "POST",
          "bodyType": "json",
          "bodyFields": {
            "email": {
              "type": "string",
              "description": "Email address to check"
            }
          },
          "required": [
            "email"
          ],
          "example": {
            "email": "someone@gmial.com"
          }
        },
        "output": {
          "type": "json",
          "schema": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "valid",
                  "risky",
                  "invalid"
                ]
              },
              "reasons": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "can_receive_mail": {
                "type": "boolean"
              },
              "disposable": {
                "type": "boolean"
              },
              "did_you_mean": {
                "type": "string",
                "description": ""
              }
            },
            "required": [
              "status",
              "reasons"
            ]
          }
        }
      }
    }
  ]
}