{"openapi":"3.1.0","info":{"title":"TronProof","version":"1.0.0","description":"Pay-per-call USDT payment verification and address safety checks on Tron, Ethereum, BNB Chain, Polygon, Arbitrum, Base, for AI agents. No account or API key. Pay per request with x402.","x-logo":{"url":"https://tronproof.online/favicon.svg"},"contact":{"name":"TronProof","email":"contact@tronproof.online","url":"https://tronproof.online"}},"servers":[{"url":"https://tronproof.online"}],"paths":{"/v1/verify-payment":{"get":{"operationId":"verify_usdt_payment","summary":"Verify a USDT payment (multichain)","description":"Confirms whether an address received a specific amount of genuine USDT within a time window on Tron, Ethereum, BNB Chain, Polygon, Arbitrum, Base. Ignores fake tokens that copy the USDT name. Use before releasing goods, crediting an account or marking an invoice paid. Costs $0.005 per call, paid in USDC on Base, Polygon or Arbitrum through the x402 protocol.","x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"asset":"USDC","network":"eip155:8453"},"parameters":[{"name":"to","in":"query","required":true,"description":"Address that should have received the payment (Tron T… or EVM 0x…, matching chain)","schema":{"type":"string"},"example":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"},{"name":"amount","in":"query","required":true,"description":"Expected USDT amount, for example 25 or 25.50","schema":{"type":"string"},"example":"25.50"},{"name":"from","in":"query","required":false,"description":"Optional sender address the payment must come from","schema":{"type":"string"}},{"name":"minutes","in":"query","required":false,"description":"How far back to look, 1 to 10080. Default 60","schema":{"type":"number"}},{"name":"match","in":"query","required":false,"description":"\"exact\" (default) or \"at_least\"","schema":{"type":"string"}},{"name":"txid","in":"query","required":false,"description":"Optional transaction id the payment must match","schema":{"type":"string"}},{"name":"chain","in":"query","required":false,"description":"Blockchain: tron, ethereum, bsc, polygon, arbitrum, base. Default tron","schema":{"type":"string"}}],"responses":{"200":{"description":"Result","content":{"application/json":{"example":{"paid":true,"asset":"USDT (TRC-20)","to":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","amount":"25.5","match":"exact","windowMinutes":60,"matches":[{"txid":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","from":"TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7","to":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","amount":"25.5","token":"USDT","genuineUsdt":true,"timestamp":"2026-11-10T12:00:00.000Z"}],"fakeUsdtTransfersIgnored":0}}}},"400":{"description":"Invalid input. You are not charged."},"402":{"description":"Payment required. Retry with an x402 payment header."},"502":{"description":"Blockchain data source unavailable. You are not charged."}}}},"/v1/address-risk":{"get":{"operationId":"tron_address_risk","summary":"Check an address before sending USDT (multichain)","description":"Scores an address on Tron, Ethereum, BNB Chain, Polygon, Arbitrum, Base for address-poisoning look-alikes, dust and zero-value attacks, fake-USDT deposits and missing history. Pass \"expected\" to detect a look-alike of the address you meant to pay. Use before any outgoing USDT transfer. Costs $0.01 per call, paid in USDC on Base, Polygon or Arbitrum through the x402 protocol.","x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"asset":"USDC","network":"eip155:8453"},"parameters":[{"name":"address","in":"query","required":true,"description":"Address you are about to pay or want to inspect (Tron T… or EVM 0x…, matching chain)","schema":{"type":"string"},"example":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"},{"name":"expected","in":"query","required":false,"description":"Optional known-good address to compare against","schema":{"type":"string"}},{"name":"chain","in":"query","required":false,"description":"Blockchain: tron, ethereum, bsc, polygon, arbitrum, base. Default tron","schema":{"type":"string"}}],"responses":{"200":{"description":"Result","content":{"application/json":{"example":{"address":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","riskScore":40,"riskLevel":"medium","flags":[{"code":"ADDRESS_POISONING","detail":"1 look-alike address(es) have sent dust to this wallet."}],"activity":{"sampledTransfers":200,"usdtIn":120,"usdtOut":60,"dustIn":4,"fakeUsdt":1,"counterparties":37}}}}},"400":{"description":"Invalid input. You are not charged."},"402":{"description":"Payment required. Retry with an x402 payment header."},"502":{"description":"Blockchain data source unavailable. You are not charged."}}}},"/v1/transfers":{"get":{"operationId":"tron_usdt_transfers","summary":"List recent USDT transfers (multichain)","description":"Returns recent confirmed transfers of genuine USDT for an address on Tron, Ethereum, BNB Chain, Polygon, Arbitrum, Base as clean JSON with decimal amounts, direction and explorer links. Fake tokens are filtered out. Costs $0.002 per call, paid in USDC on Base, Polygon or Arbitrum through the x402 protocol.","x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.002"},"asset":"USDC","network":"eip155:8453"},"parameters":[{"name":"address","in":"query","required":true,"description":"Address (Tron T… or EVM 0x…, matching chain)","schema":{"type":"string"},"example":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"},{"name":"limit","in":"query","required":false,"description":"Number of transfers, 1 to 200. Default 50","schema":{"type":"number"}},{"name":"direction","in":"query","required":false,"description":"\"in\", \"out\" or \"both\" (default)","schema":{"type":"string"}},{"name":"chain","in":"query","required":false,"description":"Blockchain: tron, ethereum, bsc, polygon, arbitrum, base. Default tron","schema":{"type":"string"}}],"responses":{"200":{"description":"Result","content":{"application/json":{"example":{"address":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","asset":"USDT (TRC-20)","direction":"both","count":1,"transfers":[{"txid":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","from":"TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7","to":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t","amount":"25.5","direction":"in","timestamp":"2026-11-10T12:00:00.000Z"}]}}}},"400":{"description":"Invalid input. You are not charged."},"402":{"description":"Payment required. Retry with an x402 payment header."},"502":{"description":"Blockchain data source unavailable. You are not charged."}}}}}}