openapi: 3.1.0 info: title: Blockaid Asset Management EVM API description: Blockaid Risk Score API termsOfService: https://www.blockaid.io/legal/terms-of-use license: name: Proprietary url: https://www.blockaid.io/legal version: 1.0.0 servers: - url: https://api.blockaid.io description: Production server - url: https://client.blockaid.io description: Clients server tags: - name: EVM paths: /v0/evm/json-rpc/scan: post: tags: - EVM summary: Scan JSON-RPC description: Get a risk recommendation with plain-language reasons for a JSON-RPC request. operationId: scan-json-rpc requestBody: content: application/json: schema: $ref: '#/components/schemas/JsonRPCRequest' examples: Malicious Permit Order: summary: Ethereum - Malicious Permit Order (EIP 712) value: chain: ethereum account_address: '0x49c73c9d361c04769a452E85D343b41aC38e0EE4' data: method: eth_signTypedData_v4 params: - '0x49c73c9d361c04769a452E85D343b41aC38e0EE4' - '{"domain":{"chainId":1,"name":"Aave interest bearing WETH","version":"1","verifyingContract":"0x030ba81f1c18d280636f32af80b9aad02cf0854e"},"message":{"owner":"0x49c73c9d361c04769a452E85D343b41aC38e0EE4","spender":"0xa74cbd5b80f73b5950768c8dc467f1c6307c00fd","value":"115792089237316195423570985008687907853269984665640564039457584007913129639935","nonce":"0","deadline":"1988064000","holder":"0x49c73c9d361c04769a452E85D343b41aC38e0EE4"},"primaryType":"Permit","types":{"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}],"Permit":[{"name":"owner","type":"address"},{"name":"spender","type":"address"},{"name":"value","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"deadline","type":"uint256"}]}}' options: domain: rewards.yfdai.org url: https://rewards.yfdai.org/ faviconURL: https://rewards.yfdai.org/Favicon.png title: YFDAI Finance tabId: 265105513 timestamp: 1686151800667 options: - simulation - validation metadata: domain: https://boredapeyartclub.com block: '18370320' Benign Permit Order: summary: Ethereum - Benign Permit Order (EIP 712) value: chain: ethereum account_address: '0xA910f92ACdAf488fa6eF02174fb86208Ad7722ba' data: jsonrpc: '2.0' method: eth_signTypedData params: - '0xA910f92ACdAf488fa6eF02174fb86208Ad7722ba' - '{"types":{"PermitSingle":[{"name":"details","type":"PermitDetails"},{"name":"spender","type":"address"},{"name":"sigDeadline","type":"uint256"}],"PermitDetails":[{"name":"token","type":"address"},{"name":"amount","type":"uint160"},{"name":"expiration","type":"uint48"},{"name":"nonce","type":"uint48"}],"EIP712Domain":[{"name":"name","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}]},"domain":{"name":"Permit2","chainId":"1","verifyingContract":"0x000000000022d473030f116ddee9f6b43ac78ba3"},"primaryType":"PermitSingle","message":{"details":{"token":"0x6982508145454ce325ddbe47a25d4ec3d2311933","amount":"1461501637330902918203684832716283019655932542975","expiration":"1684512281","nonce":"0"},"spender":"0xef1c6e67703c7bd7107eed8303fbe6ec2554bf6b","sigDeadline":"1681922081"}}' options: - simulation - validation metadata: domain: https://app.uniswap.org block: '18370320' Benign Uniswap Execute: summary: Ethereum - Benign Uniswap Execute value: chain: ethereum account_address: '0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb' data: jsonrpc: '2.0' method: eth_sendTransaction params: - gas: '0x2fe6e' value: '0xde0b6b3a7640000' from: '0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb' to: '0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad' data: '0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000006512e04300000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000005e08060b00000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc20001f4a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000' options: - simulation - validation metadata: domain: https://app.uniswap.org block: '18220183' Malicious Claim Transaction: summary: Ethereum - Malicious Claim Transaction value: chain: ethereum account_address: '0xb88f61e6fbda83fbfffabe364112137480398018' data: jsonrpc: '2.0' method: eth_sendTransaction params: - from: '0xb88f61e6fbda83fbfffabe364112137480398018' to: '0x000068da4526a3b4699fd2e0fdf2491fa7900000' data: '0x3158952e' value: '0xde25155a6002608359' options: - simulation - validation metadata: domain: https://shibicoin.org block: '18370320' Malicious Rariable Order: summary: Ethereum - Malicious Rariable Order value: chain: ethereum account_address: '0x13edbf878e3dbb91d36d15f9b9e061f72d20b603' data: jsonrpc: '2.0' method: eth_signTypedData params: - '0x13edbf878e3dbb91d36d15f9b9e061f72d20b603' - '{"primaryType":"Order","domain":{"name":"Exchange","version":"2","verifyingContract":"0x9757f2d2b135150bbeb65308d4a91804107cd8d6","chainId":1},"types":{"EIP712Domain":[{"type":"string","name":"name"},{"type":"string","name":"version"},{"type":"uint256","name":"chainId"},{"type":"address","name":"verifyingContract"}],"AssetType":[{"name":"assetClass","type":"bytes4"},{"name":"data","type":"bytes"}],"Asset":[{"name":"assetType","type":"AssetType"},{"name":"value","type":"uint256"}],"Order":[{"name":"maker","type":"address"},{"name":"makeAsset","type":"Asset"},{"name":"taker","type":"address"},{"name":"takeAsset","type":"Asset"},{"name":"salt","type":"uint256"},{"name":"start","type":"uint256"},{"name":"end","type":"uint256"},{"name":"dataType","type":"bytes4"},{"name":"data","type":"bytes"}]},"message":{"maker":"0x13edbf878e3dbb91d36d15f9b9e061f72d20b603","makeAsset":{"assetType":{"assetClass":"0x73ad2146","data":"0x000000000000000000000000abb3738f04dc2ec20f4ae4462c3d069d02ae045b0000000000000000000000000000000000000000000000000000000000d9c9e8"},"value":"1"},"taker":"0xde656841eb0df466a9afb46f15be5b109a879d1f","takeAsset":{"assetType":{"assetClass":"0xaaaebeba","data":"0x"},"value":"1"},"salt":"0x9b6c77296517496cd44a87d3b4c22e50da500289ae1de7f4f716a7bac6d418f8","start":0,"end":0,"dataType":"0x23d235ef","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000001cf0df2a5a20cd61d68d4489eebbf85b8d39e18a0000000000000000000000000000000000000000000000000000000000000064"}}' options: - simulation - validation metadata: domain: https://boredapeyartclub.com block: '18370320' Malicious Approval Transaction: summary: Ethereum - Malicious Approval Transaction value: chain: ethereum account_address: '0xf60c2ea62edbfe808163751dd0d8693dcb30019c' data: jsonrpc: '2.0' method: eth_sendTransaction params: - from: '0xf60c2ea62edbfe808163751dd0d8693dcb30019c' to: '0xdac17f958d2ee523a2206206994597c13d831ec7' data: '0x095ea7b300000000000000000000000000002644e79602f056b03235106a9963826d0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff' value: '0x0000' options: - simulation - validation metadata: domain: https://shibicoin.org block: '18370320' Malicious Seaport Order: summary: Ethereum - Malicious Seaport Order value: chain: ethereum account_address: '0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb' data: jsonrpc: '2.0' params: - '0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb' - '{"types":{"OrderComponents":[{"name":"offerer","type":"address"},{"name":"zone","type":"address"},{"name":"offer","type":"OfferItem[]"},{"name":"consideration","type":"ConsiderationItem[]"},{"name":"orderType","type":"uint8"},{"name":"startTime","type":"uint256"},{"name":"endTime","type":"uint256"},{"name":"zoneHash","type":"bytes32"},{"name":"salt","type":"uint256"},{"name":"conduitKey","type":"bytes32"},{"name":"counter","type":"uint256"}],"OfferItem":[{"name":"itemType","type":"uint8"},{"name":"token","type":"address"},{"name":"identifierOrCriteria","type":"uint256"},{"name":"startAmount","type":"uint256"},{"name":"endAmount","type":"uint256"}],"ConsiderationItem":[{"name":"itemType","type":"uint8"},{"name":"token","type":"address"},{"name":"identifierOrCriteria","type":"uint256"},{"name":"startAmount","type":"uint256"},{"name":"endAmount","type":"uint256"},{"name":"recipient","type":"address"}],"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}]},"domain":{"name":"Seaport","version":"1.5","chainId":"1","verifyingContract":"0x00000000000000adc04c56bf30ac9d3c0aaf14dc"},"primaryType":"OrderComponents","message":{"offerer":"0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb","zone":"0x004c00500000ad104d7dbd00e3ae0a5c00560c00","offer":[{"itemType":"2","token":"0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d","identifierOrCriteria":"5312","startAmount":"1","endAmount":"1"}],"consideration":[{"itemType":"2","token":"0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d","identifierOrCriteria":"5312","startAmount":"1","endAmount":"1","recipient":"0x66c7b75366947f07b5afd7d795833b0a490a6147"}],"orderType":"0","startTime":"1661790956","endTime":"115792089237316195423570985008687907853269984665640564039457584007913129639935","zoneHash":"0x0000000000000000000000000000000000000000000000000000000000000000","salt":"14005991189275993846","conduitKey":"0x0000007b02230091a7ed01230072f7006a004d60a8d4e71d599b8104250f0000","counter":"0"}}' method: eth_signTypedData_v4 options: - simulation - validation metadata: domain: https://boredapeyartclub.com block: '18370320' Malicious DApp Transaction: summary: Ethereum - Malicious DApp Transaction value: account_address: '0x5dde50bfabe6228af22380a6287b7af4de5fee6e' chain: ethereum data: jsonrpc: '2.0' method: eth_sendTransaction params: - data: '0x095ea7b300000000000000000000000068b3465833fb72a70ecdf485e0e4c7bd8665fc4500000000000000b88e282822ab5ed106947c1c60af583c1741a38e858de00000' from: '0x5dde50bfabe6228af22380a6287b7af4de5fee6e' to: '0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9' value: '0x0' options: - simulation - validation metadata: domain: https://www.outdoorsportman.com block: '21213745' Malicious Raw Transaction: summary: Ethereum - Malicious eth_sendRawTransaction value: chain: ethereum account_address: '0xa72231a5B4BF50B771ae576742Bb522B8683735d' data: jsonrpc: '2.0' params: - '0x02f8720180849502f9008506deff923882520894a45341e350cd60400fcb56b32a3bcd6b6768e242878e1bc9bf04000080c080a06be4a917e6b15b02d020a4eefc942b9dea9bf3501203eb8393846ef3ac20137ea03ff4badc2548744cea7495244307745ac4289ec7cf7a401d1e030ff5f52b5c17' method: eth_sendRawTransaction options: - simulation - validation metadata: domain: https://shibicoin.org block: '18000000' Warning User Mistake: summary: BSC - Warning User Mistake value: chain: bsc account_address: '0x23eedc4c4e6c91d68eb78eea46a94680b8096f37' data: jsonrpc: '2.0' method: eth_sendTransaction params: - gas: '0x8932' value: '0x0' from: '0x23eedc4c4e6c91d68eb78eea46a94680b8096f37' to: '0x998305efdc264b9674178899fffbb44a47134a76' data: '0xa9059cbb000000000000000000000000998305efdc264b9674178899fffbb44a47134a76000000000000000000000000000000000000000000000012f939c99edab80000' options: - validation metadata: non_dapp: true block: '37305539' NFT approval Transaction: summary: Ethereum - NFT Approval value: chain: ethereum metadata: domain: https://example.xyz data: jsonrpc: '2.0' method: eth_sendTransaction params: - data: '0xa22cb4650000000000000000000000001e0049783f008a0085193e00003d00cd54003c710000000000000000000000000000000000000000000000000000000000000001' to: '0xe1dC516B1486Aba548eecD2947A11273518434a4' from: '0x7CfD2441b0b356c85F183062E5EE9b4d54085052' value: '0x0' options: - validation - simulation - events block: '18812199' BSC Malicious Raw Transfer: summary: BSC - Malicious Raw Transfer value: metadata: domain: https://example.xyz/ non_dapp: false chain: bsc data: jsonrpc: '2.0' method: eth_sendTransaction params: - chainId: 1 from: '0x0966602E47F6a3CA5692529F1D54EcD1d9B09175' to: '0x0A63054930e47814d9fF6071923011CBb9aE6A78' value: '0x10' options: - validation account_address: '0x0966602E47F6a3CA5692529F1D54EcD1d9B09175' block: '37305539' Linea malicious permit: summary: Linea - Malicious Permit (EIP 712) value: metadata: domain: https://example.xyz chainId: '0xe708' chain: linea block: '798220' account_address: '0xd7aa9ba6caac7b0436c91396f22ca5a7f31664fc' data: jsonrpc: '2.0' method: eth_signTypedData_v4 params: - '0xd7aa9ba6caac7b0436c91396f22ca5a7f31664fc' - '{"types":{"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}],"Permit":[{"name":"owner","type":"address"},{"name":"spender","type":"address"},{"name":"value","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"deadline","type":"uint256"}]},"primaryType":"Permit","domain":{"name":"USD Coin","verifyingContract":"0xa219439258ca9da29e9cc4ce5596924745e12b93","chainId":59144,"version":"2"},"message":{"owner":"0xd7aa9ba6caac7b0436c91396f22ca5a7f31664fc","spender":"0x61935496d2a02935680c87438e68e93b280da565","value":"1033366316628","nonce":1,"deadline":1678709555}}' options: - validation - simulation Ethereum Benign Gnosis: summary: Ethereum - Benign Gnosis Order (EIP 712) value: block: '17865170' chain: ethereum account_address: '' options: - simulation - validation data: jsonrpc: '2.0' method: eth_signTypedData params: - '' - '{"types":{"Order":[{"name":"sellToken","type":"address"},{"name":"buyToken","type":"address"},{"name":"receiver","type":"address"},{"name":"sellAmount","type":"uint256"},{"name":"buyAmount","type":"uint256"},{"name":"validTo","type":"uint32"},{"name":"appData","type":"bytes32"},{"name":"feeAmount","type":"uint256"},{"name":"kind","type":"string"},{"name":"partiallyFillable","type":"bool"},{"name":"sellTokenBalance","type":"string"},{"name":"buyTokenBalance","type":"string"}],"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}]},"domain":{"name":"Gnosis Protocol","version":"v2","chainId":"1","verifyingContract":"0x9008d19f58aabd9ed0d60971565aa8510560ab41"},"primaryType":"Order","message":{"sellToken":"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48","buyToken":"0xdac17f958d2ee523a2206206994597c13d831ec7","receiver":"0x33cc1d8539436eacbd13d89edb2636966e33baec","sellAmount":"10122091758","buyAmount":"10085000000","validTo":"1691438670","appData":"0xf7afe76740b2e1b5c4395cd9728b4241e99b375141a2680bb2037471a88ff9a0","feeAmount":"8632884","kind":"buy","partiallyFillable":false,"sellTokenBalance":"erc20","buyTokenBalance":"erc20"}}' metadata: domain: https://swap.cow.fi/ Ethereum benign 1inch: summary: Ethereum - Benign 1inch Order (EIP 712) value: chain: ethereum block: '18333270' account_address: '' data: jsonrpc: '2.0' method: eth_signTypedData params: - '' - '{"primaryType":"Order","types":{"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}],"Order":[{"name":"salt","type":"uint256"},{"name":"makerAsset","type":"address"},{"name":"takerAsset","type":"address"},{"name":"maker","type":"address"},{"name":"receiver","type":"address"},{"name":"allowedSender","type":"address"},{"name":"makingAmount","type":"uint256"},{"name":"takingAmount","type":"uint256"},{"name":"offsets","type":"uint256"},{"name":"interactions","type":"bytes"}]},"domain":{"name":"1inch Aggregation Router","version":"5","chainId":1,"verifyingContract":"0x1111111254eeb25477b68fb85ed929f73a960582"},"message":{"salt":"48805960945","makerAsset":"0x64Bc2cA1Be492bE7185FAA2c8835d9b824c8a194","takerAsset":"0xdAC17F958D2ee523a2206206994597C13D831ec7","maker":"0xa3BB1dDDCC9EB341b7C9b9fB36FA2d3459f84727","receiver":"0x0000000000000000000000000000000000000000","allowedSender":"0x0000000000000000000000000000000000000000","makingAmount":"15564380000000000000000","takingAmount":"4435848300","offsets":"4421431254442149611168492388118363282642987198110904030635476664713216","interactions":"0xbf15fcd8000000000000000000000000303389f541ff2d620e42832f180a08e767b28e10000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000242cc2878d006527c166000000000c0000a3bb1dddcc9eb341b7c9b9fb36fa2d3459f8472700000000000000000000000000000000000000000000000000000000"}}' options: - validation - simulation metadata: domain: https://app.1inch.io Base wallet_sendCalls: summary: Base - wallet_sendCalls value: chain: base block: '29187404' options: - validation - simulation data: jsonrpc: '2.0' method: wallet_sendCalls params: - from: '0x68FcFa598bA48a8E4A67d64E743abDbCf813aD9E' calls: - to: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913' data: '0x095ea7b30000000000000000000000002e480b1096e5f705cc3e049685846ed3022aa22600000000000000000000000000000000000000000000000000000000564e8554' value: 0x - to: '0x2e480b1096e5f705cc3e049685846ed3022aa226' data: '0xb15e2e9c00000000000000000000000000000000000000000000000000000000000000e047f00b77d3d75ffe1094dab8a1d8f813627471c1050e035e57cd50dc06a6a0be00000000000000000000000068fcfa598ba48a8e4a67d64e743abdbcf813ad9e7e4ad0e17f9bcf36a70a9dcac5b80735e19480d74d557764ec5409fbe392e51c000000000000000000000000b39dca629be804b9e0ec7e6a7802f94f6a7cbb890000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000000069ec7fbf1093ea5659d208ba5be1717a4241ca8ad0d196d4bfd3d03a45a800f4000000000000000000000000000000000000000000000000000000000000008900000000000000000000000000000000000000000000000000000000000021050000000000000000000000002e480b1096e5f705cc3e049685846ed3022aa22600000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda0291300000000000000000000000000000000000000000000000000000000564e855400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044a9059cbb0000000000000000000000005073617d7fad626f14b74bee63f4b3c2afba0d7d00000000000000000000000000000000000000000000000000000000564e85540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000' value: '0x71B861D91AF6' metadata: domain: https://example.xyz EIP-7702 Set Code: summary: EIP-7702 - Set Code Account value: chain: ethereum-sepolia account_address: '0x95642cf558cf215069ac6359c81b075296a0ddcc' options: - simulation block: '7984145' data: jsonrpc: '2.0' method: eth_sendTransaction origin: '' params: - from: '0x95642cf558cf215069ac6359c81b075296a0ddcc' to: '0x692e96a36e9ab238fd7dbfce87677d1e39d2e994' value: '0x0' data: '0xcd83603b' authorization_list: - chainId: '0xaa36a7' address: '0x14c5506fba519d3ec096dd971ce68db83439df2f' nonce: '0x2' yParity: '0x1' r: '0x9d50e67f20879ba5e79311e305b1d2a9f182c9a21544eec213f0493067c68fa0' s: '0x5799170dfc9f6b99ffdd75b82614489fb6966fae296128fb89adf5f932b128d1' metadata: domain: https://example.xyz EIP-7702 Set Code without signature: summary: EIP-7702 - Set Code Account without signature value: chain: ethereum-sepolia account_address: '0x95642cf558cf215069ac6359c81b075296a0ddcc' options: - simulation block: '7984145' data: jsonrpc: '2.0' method: eth_sendTransaction origin: '' params: - from: '0x95642cf558cf215069ac6359c81b075296a0ddcc' to: '0x692e96a36e9ab238fd7dbfce87677d1e39d2e994' value: '0x0' data: '0xcd83603b' authorization_list: - chainId: '0xaa36a7' address: '0x14c5506fba519d3ec096dd971ce68db83439df2f' nonce: '0x2' eoa: '0x692E96A36E9Ab238FD7dBFce87677D1E39d2E994' metadata: domain: https://example.xyz EIP-7702 Malicious Upgrade with new empty address: summary: EIP-7702 Malicious Upgrade with new empty address example value: chain: ethereum-sepolia block: '8020318' metadata: domain: ORIGIN options: - simulation - validation data: jsonrpc: '2.0' method: eth_sendTransaction origin: '' params: - data: 0x from: '0x426f99291ba267e155d9b9b4fa5d698a23dde108' to: '0x426f99291ba267e155d9b9b4fa5d698a23dde108' value: '0x0' authorization_list: - chainId: '0x0' address: '0x0000000000000000000000000000000000000000' nonce: '0x4a' yParity: '0x0' r: '0xcb379f711a13aba6afedd116bbacfc856e7b9d3154f71c5f9c1d45f0d2731856' s: '0x1ba2d22a1f30637ac3bf7bb493e6041c4d004ffe3eaa6865986d264f856c328' EIP-7702 Malicious Upgrade to an untrusted address: summary: EIP-7702 Malicious Upgrade to an untrusted address value: chain: ethereum block: '8095704' data: jsonrpc: '2.0' method: eth_sendTransaction origin: '' params: - data: '0x8129fc1c' from: '0x0665568f397379262c764ff66446c5f7de1e8d1c' to: '0x0665568f397379262c764ff66446c5f7de1e8d1c' value: '0x0' authorization_list: - chainId: '0xaa36a7' address: '0x00000000cd8b0ab3f6c5ee8a41ff7b2f7c3ebe59' eoa: '0x0665568f397379262C764Ff66446C5f7De1E8d1c' metadata: domain: ORIGIN options: - simulation - validation Hyperliquid SendAsset: summary: Hyperliquid SendAsset - Cross-chain bridge transfer (EIP-712) value: chain: hyperevm account_address: '0x5059d5d2e6b2ca4829a7351bd9246b232d8ab31a' data: jsonrpc: '2.0' method: eth_signTypedData_v4 params: - '0x5059d5d2e6b2ca4829a7351bd9246b232d8ab31a' - '{"types":{"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}],"HyperliquidTransaction:SendAsset":[{"name":"hyperliquidChain","type":"string"},{"name":"destination","type":"string"},{"name":"sourceDex","type":"string"},{"name":"destinationDex","type":"string"},{"name":"token","type":"string"},{"name":"amount","type":"string"},{"name":"fromSubAccount","type":"string"},{"name":"nonce","type":"uint64"}]},"domain":{"name":"HyperliquidSignTransaction","version":"1","chainId":999,"verifyingContract":"0x0000000000000000000000000000000000000000"},"primaryType":"HyperliquidTransaction:SendAsset","message":{"hyperliquidChain":"Mainnet","destination":"0x1111111111111111111111111111111111111111","sourceDex":"spot","destinationDex":"spot","token":"USDC:0x6d1e7cde53ba9467b783cb7c530ce054","amount":"10.0","fromSubAccount":"","nonce":1776342392991}}' options: - simulation - validation metadata: domain: https://app.hyperliquid.xyz required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' examples: Ethereum - Seaport Farming: value: validation: result_type: Malicious description: A known malicious address is involved in the transaction reason: seaport_farming features: [] simulation: assets_diffs: '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': - asset: type: NATIVE name: Ether symbol: ETH chain_name: Ethereum Mainnet chain_id: 1 decimals: 18 in: - usd_price: '1.645988685000000062' summary: Received 0.001 ETH value: '0.001' raw_value: '0x38d7ea4c68000' out: [] - asset: type: ERC721 name: BoredApeYachtClub symbol: BAYC address: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D' in: [] out: - usd_price: '39859.294199999996635597' summary: 'Sent BoredApeYachtClub #5312' token_id: '0x14c0' '0x1111222233334444555566667777888899990000': - asset: type: NATIVE name: Ether symbol: ETH chain_name: Ethereum Mainnet chain_id: 1 decimals: 18 in: [] out: - usd_price: '1.645988685000000062' summary: Sent 0.001 ETH value: '0.001' raw_value: '0x38d7ea4c68000' '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': - asset: type: ERC721 name: BoredApeYachtClub symbol: BAYC address: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D' in: - usd_price: '39859.294199999996635597' summary: 'Received BoredApeYachtClub #5312' token_id: '0x14c0' out: [] transaction_actions: - approval - native_transfer - token_transfer total_usd_diff: '0x1111222233334444555566667777888899990000': in: '0.0' out: '1.645988685000000062' total: '-1.645988685000000062' '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': in: '1.645988685000000062' out: '39859.294199999996635597' total: '-39857.648211314997752197' '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': in: '39859.294199999996635597' out: '0.0' total: '39859.294199999996635597' exposures: {} total_usd_exposure: {} address_details: '0x1111222233334444555566667777888899990000': {} '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D': name_tag: 'Bored Ape Yacht Club: BAYC Token' contract_name: BoredApeYachtClub '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': {} '0x00000000000000ADc04C56Bf30aC9d3c0aAF14dC': name_tag: Seaport 1.5 contract_name: Seaport '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': name_tag: Fake_Phishing7802 Hyperliquid SendAsset - Bridge Transfer: value: validation: result_type: Benign description: '' features: [] simulation: status: Success assets_diffs: {} transaction_actions: - bridge total_usd_diff: {} exposures: {} total_usd_exposure: {} address_details: '0x5059d5d2e6b2ca4829a7351bd9246b232d8ab31a': {} account_summary: assets_diffs: - asset_type: ERC20 asset: type: ERC20 address: '0x6d1e7cde53ba9467b783cb7c530ce054' name: USD Coin symbol: USDC decimals: 8 logo_url: '' in: [] out: - raw_value: '1000000000' value: '10.0' usd_price: '10.0' summary: Sent 10.0 USDC traces: - type: BridgeAssetTrace bridge_type: hyperliquid_l1_transfer display_name: Hyperliquid Send (Spot -> Spot) logo_url: null source: chain: hyperliquid address: '0x5059d5d2e6b2ca4829a7351bd9246b232d8ab31a' asset_type: FUNGIBLE asset: type: ERC20 address: '0x6d1e7cde53ba9467b783cb7c530ce054' name: USD Coin symbol: USDC decimals: 8 logo_url: '' diff: raw_value: '1000000000' value: '10.0' usd_price: '10.0' destinations: - chain: hyperliquid address: '0x1111111111111111111111111111111111111111' asset_type: FUNGIBLE asset: type: ERC20 address: '0x6d1e7cde53ba9467b783cb7c530ce054' name: USD Coin symbol: USDC decimals: 8 logo_url: '' diff: raw_value: '1000000000' value: '10.0' usd_price: '10.0' total_usd_diff: in: '0.0' out: '10.0' total: '-10.0' session_key: {} cross_chain_asset_diffs: - address: '0x5059d5d2e6b2ca4829a7351bd9246b232d8ab31a' obj: - chain: hyperliquid asset_type: FUNGIBLE asset: type: ERC20 address: '0x6d1e7cde53ba9467b783cb7c530ce054' name: USD Coin symbol: USDC decimals: 8 logo_url: '' in: [] out: - raw_value: '1000000000' value: '10.0' usd_price: '10.0' summary: Sent 10.0 USDC - address: '0x1111111111111111111111111111111111111111' obj: - chain: hyperliquid asset_type: FUNGIBLE asset: type: ERC20 address: '0x6d1e7cde53ba9467b783cb7c530ce054' name: USD Coin symbol: USDC decimals: 8 logo_url: '' in: - raw_value: '1000000000' value: '10.0' usd_price: '10.0' summary: Received 10.0 USDC out: [] '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/transaction/scan: post: tags: - EVM summary: Scan Transaction description: Get a risk recommendation with plain-language reasons for a transaction. operationId: scan-transaction requestBody: content: application/json: schema: $ref: '#/components/schemas/routers__evm__transaction__models__TransactionRequest' examples: Malicious Transfer Transaction: summary: Ethereum - Malicious Transfer Transaction value: chain: ethereum data: from: '0x5e1a0d484c5f0de722e82f9dca3a9d5a421d47cb' to: '0x0d524a5b52737c0a02880d5e84f7d20b8d66bfba' data: 0x value: '0x1000000000000000' options: - simulation - validation metadata: domain: https://boredapeyartclub.com block: '21211118' Malicious Approval Transaction: summary: Ethereum - Malicious Approval Transaction value: chain: ethereum data: from: '0xf60c2ea62edbfe808163751dd0d8693dcb30019c' to: '0xdac17f958d2ee523a2206206994597c13d831ec7' data: '0x095ea7b300000000000000000000000000002644e79602f056b03235106a9963826d0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff' value: '0x0000' nonce: '0x1a2bd4' options: - simulation - validation metadata: domain: ORIGIN block: '22515162' Malicious DApp Transaction: summary: Ethereum - Malicious DApp Transaction value: chain: ethereum data: data: '0x095ea7b300000000000000000000000068b3465833fb72a70ecdf485e0e4c7bd8665fc4500000000000000b88e282822ab5ed106947c1c60af583c1741a38e858de00000' from: '0x5dde50bfabe6228af22380a6287b7af4de5fee6e' to: '0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9' value: '0x0' metadata: domain: https://www.outdoorsportman.com options: - validation - simulation block: '21213745' Benign Uniswap Transaction: summary: Ethereum - Benign Uniswap Transaction value: chain: ethereum data: data: '0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000652272e300000000000000000000000000000000000000000000000000000000000000020b080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000214e8348c4f0000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000214e8348c4f0000000000000000000000000000000000000000000000003a23acd9c16f105fe55000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000004277d9ef01fe530d453a1c310a77315fad3f1d24' from: '0x95785ddb6b7c2069520a547bda324359600fee01' to: '0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad' value: '0x214e8348c4f0000' metadata: domain: https://app.uniswap.org options: - validation - simulation block: '18304655' EIP-7702 Malicious Upgrade to an untrusted address: summary: EIP-7702 Malicious Upgrade to an untrusted address value: chain: ethereum block: '8095704' data: data: '0x8129fc1c' from: '0x0665568f397379262c764ff66446c5f7de1e8d1c' to: '0x0665568f397379262c764ff66446c5f7de1e8d1c' value: '0x0' authorization_list: - chainId: '0xaa36a7' address: '0x00000000cd8b0ab3f6c5ee8a41ff7b2f7c3ebe59' eoa: '0x0665568f397379262C764Ff66446C5f7De1E8d1c' metadata: domain: ORIGIN options: - simulation - validation EIP-7702 Malicious Upgrade with new empty address: summary: EIP-7702 Malicious Upgrade with new empty address example value: chain: ethereum-sepolia block: '8020318' metadata: domain: ORIGIN options: - simulation - validation data: data: 0x from: '0x426f99291ba267e155d9b9b4fa5d698a23dde108' to: '0x426f99291ba267e155d9b9b4fa5d698a23dde108' value: '0x0' authorization_list: - chainId: '0x0' address: '0x0000000000000000000000000000000000000000' nonce: '0x4a' yParity: '0x0' r: '0xcb379f711a13aba6afedd116bbacfc856e7b9d3154f71c5f9c1d45f0d2731856' s: '0x1ba2d22a1f30637ac3bf7bb493e6041c4d004ffe3eaa6865986d264f856c328' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/transaction/report: post: tags: - EVM summary: Report Transaction description: Report a misclassification of a transaction. operationId: transaction-report requestBody: content: application/json: schema: $ref: '#/components/schemas/ReportRequest_TransactionReportParams_' examples: Transaction report request_id example: summary: Transaction report request_id example value: event: FALSE_POSITIVE report: type: request_id request_id: 11111111-1111-1111-1111-111111111111 details: Details about the report Transaction report params example: summary: Transaction report params example value: event: FALSE_NEGATIVE report: type: params params: chain: ethereum account_address: '0x49c73c9d361c04769a452E85D343b41aC38e0EE4' data: method: eth_signTypedData_v4 params: - '0x49c73c9d361c04769a452E85D343b41aC38e0EE4' - '{"domain":{"chainId":1,"name":"Aave interest bearing WETH","version":"1","verifyingContract":"0x030ba81f1c18d280636f32af80b9aad02cf0854e"},"message":{"owner":"0x49c73c9d361c04769a452E85D343b41aC38e0EE4","spender":"0xa74cbd5b80f73b5950768c8dc467f1c6307c00fd","value":"115792089237316195423570985008687907853269984665640564039457584007913129639935","nonce":"0","deadline":"1988064000","holder":"0x49c73c9d361c04769a452E85D343b41aC38e0EE4"},"primaryType":"Permit","types":{"EIP712Domain":[{"name":"name","type":"string"},{"name":"version","type":"string"},{"name":"chainId","type":"uint256"},{"name":"verifyingContract","type":"address"}],"Permit":[{"name":"owner","type":"address"},{"name":"spender","type":"address"},{"name":"value","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"deadline","type":"uint256"}]}}' metadata: domain: https://boredapeyartclub.com details: Details about the report required: true responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: true security: - APIKey: [] - ClientID: [] /v0/evm/transaction-bulk/scan: post: tags: - EVM summary: Scan Bulk of Transactions description: Get a risk recommendation with plain-language reasons for a bulk of transactions. operationId: scan-transaction-bulk requestBody: content: application/json: schema: $ref: '#/components/schemas/TransactionBulkRequest' examples: Ethereum - Bulk Transaction Example: value: chain: ethereum account_address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' data: - data: 0x value: '0x100000000000' to: '0xA4e5961B58DBE487639929643dCB1Dc3848dAF5E' from: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' - data: 0x value: '0xdeadbeef' to: '0x0D524a5B52737C0a02880d5E84F7D20b8d66bfba' from: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' block: '20224477' metadata: domain: https://example.com options: - validation required: true responses: '200': description: Successful Response content: application/json: schema: items: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' type: array title: Response Scan-Transaction-Bulk '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/transaction-raw/scan: post: tags: - EVM summary: Scan Raw Transaction description: Get a risk recommendation with plain-language reasons for a raw transaction. operationId: scan-raw-transaction requestBody: content: application/json: schema: $ref: '#/components/schemas/RawTransactionRequest' examples: Bengin: summary: Ethereum - Bengin Raw Transaction value: chain: ethereum data: '0x02f903f8018208488405f5e100850a9a03feb38302fa6a941111111254eeb25477b68fb85ed929f73a96058280b9038862e238bb00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000002e00000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ab3e25398a24d6af080000000000000000000000000000000000000000000000000000000070db68f000000000000000000000000000000000000000000000000000000c0c2f020e4000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000006e2a43be0b1d33b726f0ca3b8de60b3482b8b050000000000000000000000000b78ed0dd769e3fbd8e2b526f6f75dcccc7e2af4f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000773594000000000000000000000000000000000000000000000000b4b34aede8e617e060000000a4000000a4000000a4000000a400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000a4bf15fcd8000000000000000000000000303389f541ff2d620e42832f180a08e767b28e10000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000242cc2878d0064b6509600000000060000b78ed0dd769e3fbd8e2b526f6f75dcccc7e2af4f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a946fd8d5b9e873563a1411cbdf290b8310d8cdddc94da3aebf95b16a6dc0bf56d736ece63e3906527b7dcf08aa845d6a5cd4e0d99c9994f617b6faa378317f71c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e26b9977c001a0386a78e05b5ab3b4badbae843aaa6ed379b2f4353aa730c8f360141e72cba692a036ed37a00c6364685e58bc0cd9cdd1c140d6690c3c0d216c1b67e3d262e2f0f9' options: - simulation - validation metadata: domain: https://app.1inch.io account_address: '0x362320f3a3eeeb4c4699b1b9062a84B2612bcdba' block: '17718858' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/user-operation/scan: post: tags: - EVM summary: Scan User Operation description: Get a risk recommendation with plain-language reasons for a user operation. operationId: scan-user-operations requestBody: content: application/json: schema: $ref: '#/components/schemas/UserOperationRequest' examples: Base Sepolia: summary: Base Sepolia - Sample User Operation value: chain: base-sepolia block: '0x5c6fd5' data: operation: sender: '0x77bA5AC3ca4864be26CA3112baDf07286CcC3324' nonce: '0x22' init_code: 0x call_data: '0x51945447000000000000000000000000aeed57a826a998f9388ce2fd6cdb0b6aa75e3d190000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044095ea7b300000000000000000000000050a9266605ba303b659ff105919205570f2af971000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000' call_gas_limit: '0x3c38' verification_gas_limit: '0x1659f' pre_verification_gas: '0x2496ebc' max_fee_per_gas: '0x218fe7' max_priority_fee_per_gas: '0xf4240' paymaster_and_data: '0x9d6ac51b972544251fcc0f2902e633e3f9bd3f290000000000000000000000000000000000000000000000000000000065cc4c990000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001eb8343d03ec9fc28a877c2fcad21d9923c56e6ad156ea6647282a35ce215c931f9fbdf3bec37168f9c9b49e33a0818731c5892ff626852f9465e619538540221c' signature: 0x entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' account_address: '0x77bA5AC3ca4864be26CA3112baDf07286CcC3324' options: - simulation - validation metadata: domain: example.com Polygon: summary: Polygon - Sample User Operation value: chain: polygon block: '0x31b8ea6' data: operation: sender: '0x16EF36EeE2935a8e4990142A6e540BEE76AE61a9' nonce: '0x2' init_code: 0x call_data: '0x519454470000000000000000000000008ae01fcf7c655655ff2c6ef907b8b4718ab4e17c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000006848d80ff0a0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000063200385eeac5cb85a38a9a07a70c73e0a3271cfb54a700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044095ea7b30000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae0000000000000000000000000000000000000000000000001ca76e88c68ea3d4001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005444630a0d8fae263e80cdb1993543d3c11e4dc8946c28124b56a3d6342f227ee804fa7bda500000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000016ef36eee2935a8e4990142a6e540bee76ae61a900000000000000000000000000000000000000000000000020f32a9d5e942c3d0000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000c6379626572636f6e6e6563740000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a307830303030303030303030303030303030303030303030303030303030303030303030303030303030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000bd6c7b0d2f68c2b7805d88388319cfb6ecb50ea9000000000000000000000000bd6c7b0d2f68c2b7805d88388319cfb6ecb50ea9000000000000000000000000385eeac5cb85a38a9a07a70c73e0a3271cfb54a7000000000000000000000000385eeac5cb85a38a9a07a70c73e0a3271cfb54a70000000000000000000000000000000000000000000000001ca76e88c68ea3d400000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000084eedd56e1000000000000000000000000385eeac5cb85a38a9a07a70c73e0a3271cfb54a700000000000000000000000000000000000000000000000000368ea97f4cff320000000000000000000000000000000000000000000000000009a0b47fe06945000000000000000000000000e906b91103d216420f7ae13b29fde73ce9c206cd000000000000000000000000000000000000000000000000000000000000000000000000000000001111111254eeb25477b68fb85ed929f73a9605820000000000000000000000001111111254eeb25477b68fb85ed929f73a960582000000000000000000000000385eeac5cb85a38a9a07a70c73e0a3271cfb54a700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c673f2ac7613b5b00000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c80502b1c5000000000000000000000000385eeac5cb85a38a9a07a70c73e0a3271cfb54a70000000000000000000000000000000000000000000000001c673f2ac7613b5b00000000000000000000000000000000000000000000000020f32a9d5e942c3d00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001c0000000000000003b6d03401366c529a133d4153211410126f12aa4e31aaac52e9b3012000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' call_gas_limit: '0x5fdbc' verification_gas_limit: '0x1b121' pre_verification_gas: '0xe5e4' max_fee_per_gas: '0x19bbcde6a6' max_priority_fee_per_gas: '0xe1fbabcba' paymaster_and_data: '0xe3dc822d77f8ca7ac74c30b0dffea9fcdcaaa32100000000000000000000000000000000000000000000000000000000659dcae7000000000000000000000000000000000000000000000000000000000000000027e9dcbd41dd73d351521d3cff2d29d01e24747e4d37c35a8df6c13234b1b0497b2885d3ec48006b608ed3673ec3b5421769f2bb9255c1a46913f6a15c6681cb1b' signature: 0x entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' account_address: '0x16EF36EeE2935a8e4990142A6e540BEE76AE61a9' options: - simulation - validation metadata: domain: example.com Ethereum Sepolia - EIP-7702: summary: Ethereum Sepolia - EIP-7702 User Operation value: metadata: domain: example.com chain: '11155111' block: '8963229' options: - simulation - validation data: entrypoint: '0x0000000071727De22E5E9d8BAf0edAc6f37da032' operation: sender: '0xA0fF6E9b1E36dbab38a1D9787498d9FB193D2DDd' nonce: '0x0' signature: 0x account_gas_limits: '0x0000000000000000000000000000f09100000000000000000000000000004623' call_data: '0xe9ae5c530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000348Bfa9Af212184c8D89CEbD2321829B880Bd133040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' gas_fees: '0x00000000000000000000000000178bc90000000000000000000000000157ce91' init_code: 0x paymaster_and_data: '0x777777777777aec03fd955926dbf81597e66834c00000000000000000000000000006ed800000000000000000000000000000001010000689a47ad0000000000006454db74b0aebdb1a9b7996012a06f5085e37e787c4355a91fffe2f94df400b67b0adbb1717f29b4831c0a7126160eb26af82ce701799f964d455528cfc68d301c' pre_verification_gas: '0x130b8' eip7702_auth: address: '0xd6CEDDe84be40893d153Be9d467CD6aD37875b28' chainId: '0xaa36a7' nonce: '0x0' r: '0x03fcf6efa6c681fc9bf2d81382d1d5867aaee1d520359148b71b118829588331' s: '0x4153e720ada784797602ff89633911a84f8c4f5ea06657435a4d74d56b87f98f' yParity: '0x1' Ethereum - Missing Gas and ERC20: summary: Ethereum - Missing Gas and ERC20 value: chain: ethereum metadata: domain: https://wallet.coinbase.com account_address: '0x4acFF5AE728EfF18Fb475da4c8E830c30CDA48Af' data: operation: sender: '0x4acFF5AE728EfF18Fb475da4c8E830c30CDA48Af' nonce: '0x0' init_code: '0xba5ed110efdba3d005bfc882d75358acbbb858423ffba36f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000405dfc8f05b96f3abd556d55d87039413915afe3acf4dd3a97fa59af496433a7eb0494b599439de20b334ca598aca7d17ab71a676cf1e841b4d8484b9a0887effd0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000f85210b21cc50302f477ba56686d2019dc9b67ade15b0a8c44ecad456533d0110ead2ce0e15b0a8c44ecad456533d0110ead2ce0' call_data: '0x34fcd5be000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044a9059cbb00000000000000000000000093790df8087d2c54465189008d5321ba9cf3b2cf000000000000000000000000000000000000000000000000000000005f39786800000000000000000000000000000000000000000000000000000000e15b0a8c44ecad456533d0110ead2ce0' call_gas_limit: '0xdb63' verification_gas_limit: '0xad292' pre_verification_gas: '0x1c620' max_fee_per_gas: '0x97dfce68' max_priority_fee_per_gas: '0x5d21dba0' paymaster_and_data: 0x signature: '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001949fc7c88032b9fcb5f6efc7a7b8c63668eae9871b765e23123bb473ff57aa831a7c0d9276168ebcc29f2875a0239cffdf2a9cd1c2007c5c77c071db9264df1d000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008a7b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2273496a396e6164474850596759334b7156384f7a4a666c726275504b474f716d59576f4d57516869467773222c226f726967696e223a2268747470733a2f2f7369676e2e636f696e626173652e636f6d222c2263726f73734f726967696e223a66616c73657d00000000000000000000000000000000000000000000' entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' options: - simulation - validation block: '23175211' should_calculate_missing_balance: true Base - Missing ERC20: summary: Base - Missing ERC20 value: account_address: '0x5fdd271cAC4f954caD0d68B155d844a8bf75742d' block: '22370798' chain: ethereum data: entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' operation: call_data: '0x34fcd5be000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044a9059cbb0000000000000000000000007ad76758c733634edb008bc610d42dd1057b2f0200000000000000000000000000000000000000000000000000000000ea43b74000000000000000000000000000000000000000000000000000000000e15b0a8c44ecad456533d0110ead2ce0' call_gas_limit: '0x8bb8' init_code: 0x max_fee_per_gas: '0x7effbb02' max_priority_fee_per_gas: '0x5d21dba0' nonce: '0x4' paymaster_and_data: 0x pre_verification_gas: '0x1abf8' sender: '0x5fdd271cAC4f954caD0d68B155d844a8bf75742d' verification_gas_limit: '0x8c19a' should_calculate_missing_balance: true metadata: domain: https://app.getwink.io options: - simulation - validation Ethereum - Calculate and Use Gas Estimation: summary: Ethereum - Using Gas Estimation value: account_address: '0x1A40fA10b2ba6D9F8eCA8190F996B558DAd10Cbb' block: '19275219' chain: ethereum data: entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' operation: sender: '0x1A40fA10b2ba6D9F8eCA8190F996B558DAd10Cbb' nonce: '0x20' init_code: 0x call_data: '0x940d3c600000000000000000000000008ae01fcf7c655655ff2c6ef907b8b4718ab4e17c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e48d80ff0a0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000009900e92344b4edf545f3209094b192e46600a19e7c2d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044a9059cbb000000000000000000000000aae7489bcf33abdb0deba7e0b3a2727e8340e3a9000000000000000000000000000000000000000000000052fbda442ba007a2b70000000000000000000000000000000000000000000000000000000000000000000000' max_fee_per_gas: '0xee106c4b7' max_priority_fee_per_gas: '0xa57183' paymaster_and_data: '0x9d6ac51b972544251fcc0f2902e633e3f9bd3f290000000000000000000000000000000000000000000000000000000065d5d3fc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009c41696fe7c2f9baa870647325fc6288d7df1a96a234e7f65f5ed6b572b73ece0ffe8cd17e901e2d262ac62dd98d18ca2698321fed55cdcdaf9c933b5cd15f6a1c' signature: 0x metadata: domain: '' options: - validation - simulation - gas_estimation simulate_with_estimated_gas: true required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' examples: Ethereum - Seaport Farming: value: validation: result_type: Malicious description: A known malicious address is involved in the transaction reason: seaport_farming features: [] simulation: assets_diffs: '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': - asset: type: NATIVE name: Ether symbol: ETH chain_name: Ethereum Mainnet chain_id: 1 decimals: 18 in: - usd_price: '1.645988685000000062' summary: Received 0.001 ETH value: '0.001' raw_value: '0x38d7ea4c68000' out: [] - asset: type: ERC721 name: BoredApeYachtClub symbol: BAYC address: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D' in: [] out: - usd_price: '39859.294199999996635597' summary: 'Sent BoredApeYachtClub #5312' token_id: '0x14c0' '0x1111222233334444555566667777888899990000': - asset: type: NATIVE name: Ether symbol: ETH chain_name: Ethereum Mainnet chain_id: 1 decimals: 18 in: [] out: - usd_price: '1.645988685000000062' summary: Sent 0.001 ETH value: '0.001' raw_value: '0x38d7ea4c68000' '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': - asset: type: ERC721 name: BoredApeYachtClub symbol: BAYC address: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D' in: - usd_price: '39859.294199999996635597' summary: 'Received BoredApeYachtClub #5312' token_id: '0x14c0' out: [] transaction_actions: - approval - native_transfer - token_transfer total_usd_diff: '0x1111222233334444555566667777888899990000': in: '0.0' out: '1.645988685000000062' total: '-1.645988685000000062' '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': in: '1.645988685000000062' out: '39859.294199999996635597' total: '-39857.648211314997752197' '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': in: '39859.294199999996635597' out: '0.0' total: '39859.294199999996635597' exposures: {} total_usd_exposure: {} address_details: '0x1111222233334444555566667777888899990000': {} '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D': name_tag: 'Bored Ape Yacht Club: BAYC Token' contract_name: BoredApeYachtClub '0x5E1a0D484c5F0DE722E82f9dca3A9d5A421d47cB': {} '0x00000000000000ADc04C56Bf30aC9d3c0aAF14dC': name_tag: Seaport 1.5 contract_name: Seaport '0xa9cfc982A66D0134FEe2539cFd633559Fb5cf9a0': name_tag: Fake_Phishing7802 '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/post-transaction/scan: post: tags: - EVM summary: Scan Post-Transaction description: Scan a transaction that was already executed on chain, returns validation with features indicating address poisoning entites and malicious operators. operationId: scan-post-transaction requestBody: content: application/json: schema: $ref: '#/components/schemas/PostTransactionRequest' examples: ERC20 address poisoning: summary: ERC20 Transfer Address Poisoning value: metadata: non_dapp: true chain: ethereum options: - validation - simulation data: tx_hash: '0xc01780dadc107754b331250b4797606949cb3d0087facc0a737122d5e973c83c' Raw ether address poisoning: summary: Raw Ether Transfer Address Poisoning value: metadata: non_dapp: true chain: ethereum options: - validation - simulation data: tx_hash: '0x11c865addc39f1e1c4f0f6c9a84533c501e3705a6397988af942b2103d5e87a2' Benign transaction: summary: Benign Post-Transaction value: metadata: non_dapp: true chain: ethereum options: - validation - simulation data: tx_hash: '0x91588e659ab4a5611fd6ae1d407884832e26567840346617a1fdefb92604ff7d' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/post-transaction/report: post: tags: - EVM summary: Report Post Transaction description: Report a misclassification of an EVM post transaction. operationId: evm-post-transaction-report requestBody: content: application/json: schema: $ref: '#/components/schemas/ReportRequest_ChainTransactionHashParams_' examples: Evm post transaction report request_id example: summary: Evm post transaction report request_id example value: event: FALSE_NEGATIVE report: type: request_id request_id: 11111111-1111-1111-1111-111111111111 details: Details about the report Evm post transaction report params example: summary: Evm post transaction report params example value: event: FALSE_POSITIVE report: type: params params: chain: ethereum tx_hash: '0x59afab071f7e7abc526e281accd4ad5a29b78d84f4502274bb0d7e1d1937dd6d' details: Details about the report required: true responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: true security: - APIKey: [] - ClientID: [] /v0/evm/post-transaction-bulk/scan: post: tags: - EVM summary: Scan Bulk of Post-Transactions description: Scan transactions that were already executed on chain, returns validation with features indicating address poisoning entites and malicious operators. operationId: scan-post-transaction-bulk requestBody: content: application/json: schema: $ref: '#/components/schemas/PostTransactionBulkRequest' examples: Bulk Post-Transaction example: summary: Bulk Post-Transaction example value: metadata: non_dapp: true chain: ethereum options: - validation - simulation data: - '0x11c865addc39f1e1c4f0f6c9a84533c501e3705a6397988af942b2103d5e87a2' - '0x50a109a2c2dd396e49710613dcf652728656055d90f80094f10c3ddd05150d2e' required: true responses: '200': description: Successful Response content: application/json: schema: items: $ref: '#/components/schemas/routers__evm__response__TransactionScanResponse' type: array title: Response Scan-Post-Transaction-Bulk '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/address/scan: post: tags: - EVM summary: Scan Address description: Get a risk recommendation with plain-language reasons for an address. operationId: scan-address requestBody: content: application/json: schema: $ref: '#/components/schemas/ValidateAddress' examples: Malicious: summary: Ethereum - Malicious Address value: chain: ethereum address: '0x946D45c866AFD5b8F436d40E551D8E50A5B84230' metadata: domain: https://example.com Benign: summary: Ethereum - Benign Address value: chain: ethereum address: '0x4d224452801ACEd8B2F0aebE155379bb5D594381' metadata: domain: https://example.com required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AddressValidation' examples: Malicious Address: value: result_type: Malicious features: - type: Malicious feature_id: KNOWN_MALICIOUS description: This address has recorded malicious activity - type: Info feature_id: IS_EOA description: This address is an EOA Benign Address: value: result_type: Benign features: - type: Benign feature_id: BENIGN_CREATOR description: The contract was created by a trusted address - type: Benign feature_id: TRUSTED_CONTRACT description: A trusted contract, safe to interact with - type: Benign feature_id: VERIFIED_CONTRACT description: This contract is verified - type: Info feature_id: ERC20_CONTRACT description: This address is an ERC20 token - type: Info feature_id: IS_CONTRACT description: This address is a contract '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/address/report: post: tags: - EVM summary: Report EVM Address description: Report a misclassification of an EVM address. operationId: evm-address-report requestBody: content: application/json: schema: $ref: '#/components/schemas/ReportRequest_EVMAddressReportParams_' examples: Evm address report request_id example: summary: Evm address report request_id example value: event: FALSE_NEGATIVE report: type: request_id request_id: 6c3cf6c1-a80d-4927-91b9-03d841ea61fe details: Details about the report Evm address report params example: summary: Evm address report params example value: event: FALSE_POSITIVE report: type: params params: address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' domain: https://example.com chain: ethereum details: Details about the report required: true responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: true security: - APIKey: [] - ClientID: [] /v0/evm/address/approvals: post: tags: - EVM summary: List approvals with enrichments description: Returns wallet approvals and enrichments based on chain/address. The number of spenders returned per owner is limited to 1000. operationId: evm-address-approvals requestBody: content: application/json: schema: $ref: '#/components/schemas/ApprovalsRequest' examples: Evm address approvals example: summary: Evm address approvals example value: chain: ethereum address: '0xA77DE01e157f9f57C7c4A326eeE9C4874D0598b6' metadata: account: account_id: user-123 user_country_code: US connection: ip_address: 1.2.3.4 user_agent: Mozilla/5.0 required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApprovalsResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/address-bulk/scan: post: tags: - EVM summary: Scan Bulk of Addresses description: Gets a list of addresses and returns a security assessment of each address. operationId: scan-address-bulk requestBody: content: application/json: schema: $ref: '#/components/schemas/ValidateBulkAddresses' examples: Bulk: summary: Bulk addresses validation value: metadata: domain: www.example.xyz chain: ethereum addresses: - '0xb85492afC686d5CA405E3CD4f50b05D358c75Ede' - '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97' - '0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326' - '0xD6E4aA932147A3FE5311dA1b67D9e73da06F9cEf' required: true responses: '200': description: Successful Response content: application/json: schema: additionalProperties: $ref: '#/components/schemas/routers__evm__models__ValidationResultType' type: object '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] /v0/evm/address-bulk/scan-extended: post: tags: - EVM summary: Scan Bulk of Addresses extended description: Gets a list of addresses and returns a security assessment with the feature information of each address. operationId: evm-scan-address-bulk-extended requestBody: content: application/json: schema: $ref: '#/components/schemas/ValidateBulkExtendedAddressesRequest' examples: Bulk Extended: summary: Bulk extended addresses validation value: metadata: account: account_id: user123 created: '2021-01-01T00:00:00Z' age_in_years: 3 user_country_code: US connection: user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ip_address: 192.168.1.1 chain: ethereum addresses: - '0xb85492afC686d5CA405E3CD4f50b05D358c75Ede' - '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97' - '0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326' - '0xD6E4aA932147A3FE5311dA1b67D9e73da06F9cEf' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ValidateBulkExtendedAddressesResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' deprecated: false security: - APIKey: [] - ClientID: [] components: schemas: UserOperationV7: properties: sender: type: string pattern: ^(0x[0-9A-Fa-f]{40})$ title: Sender description: The sender address of the operation in hex string format default: 0x nonce: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Nonce description: The nonce value in hex string format. default: '0x0' init_code: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Init Code description: The init code value in hex string format. default: 0x call_data: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Call Data description: The call data value in hex string format. default: 0x pre_verification_gas: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Pre Verification Gas description: The pre verification gas value in hex string format. default: '0x0' paymaster_and_data: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Paymaster And Data description: The paymaster and data value in hex string format. default: 0x signature: type: string pattern: ^(0x[0-9A-Fa-f]*|)$ title: Signature description: The signature value in hex string format. account_gas_limits: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Account Gas Limits description: The account gas limits value in hex string format. default: '0x0' gas_fees: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Gas Fees description: The gas fees value in hex string format. default: '0x0' eip7702_auth: allOf: - $ref: '#/components/schemas/Authorization' title: Eip7702 Auth description: The EIP-7702 authorization tuple for the user operation (optional) type: object title: UserOperationV7 routers__evm__response__ERC20BalanceChanges: properties: before: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC20Diff' title: Before description: balance of the account before making the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC20Diff' title: After description: balance of the account after making the transaction type: object required: - before - after title: ERC20BalanceChanges routers__evm__token_details__NativeAssetDetails: properties: type: type: string enum: - NATIVE title: Type description: asset type. name: type: string title: Name description: string represents the name of the asset symbol: type: string title: Symbol description: asset's symbol name chain_name: type: string title: Chain Name chain_id: type: integer title: Chain Id decimals: type: integer title: Decimals logo_url: type: string title: Logo Url type: object required: - type - chain_name - chain_id - decimals - logo_url title: NativeAssetDetails routers__evm__response__ERC1155Asset: properties: type: type: string enum: - ERC1155 title: Type description: The type of the model token_id: type: integer title: Token Id description: Token Id details: allOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' title: Details description: Details type: object required: - type - token_id - details title: ERC1155Asset TransactionReportParams: properties: chain: allOf: - $ref: '#/components/schemas/TransactionScanSupportedChains' description: The chain name account_address: type: string title: Account Address description: The address to relate the transaction to. Account address determines in which perspective the transaction is simulated and validated. data: anyOf: - $ref: '#/components/schemas/routers__evm__transaction__models__Transaction' - $ref: '#/components/schemas/JsonRpc' format: json title: Data description: Transaction parameters metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. type: object required: - chain - account_address - data - metadata title: TransactionReportParams routers__evm__models__ValidationOptions: type: string enum: - validation - simulation - gas_estimation - events title: ValidationOptions description: Response sections to include (e.g., validation, simulation, gas estimation, events). routers__evm__session_keys__Condition: type: string enum: - UNCONSTRAINED - EQUAL - GREATER - LESS - GREATER_OR_EQUAL - LESS_OR_EQUAL - NOT_EQUAL title: Condition description: Comparison operator used to evaluate an argument/value against a policy constraint. ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type type: object required: - loc - msg - type title: ValidationError routers__evm__models__TransactionScanEvent: properties: emitter_address: type: string title: Emitter Address emitter_name: type: string title: Emitter Name name: type: string title: Name params: items: $ref: '#/components/schemas/routers__evm__models__TransactionScanLogParamInfo' type: array title: Params topics: items: type: string type: array title: Topics data: type: string title: Data type: object required: - emitter_address - topics - data title: TransactionScanEvent routers__evm__response__NativeAddressAssetDiff: properties: asset_type: type: string enum: - NATIVE title: Asset Type description: type of the asset for the current diff asset: allOf: - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__NativeDiff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__NativeDiff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction type: object required: - asset_type - asset - in - out title: NativeAddressAssetDiff routers__evm__response__ERC721ExposureTrace: properties: trace_type: type: string enum: - ExposureTrace title: Trace Type description: type of the trace owner: type: string title: Owner description: The owner of the assets spender: type: string title: Spender description: The spender of the assets type: type: string enum: - ERC721ExposureTrace title: Type description: The type of the model exposed: $ref: '#/components/schemas/routers__evm__response__NonFungibleTokenBalance' asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace type: object required: - trace_type - owner - spender - type - asset title: ERC721ExposureTrace routers__evm__response__ProxyUpgradeManagement: properties: type: type: string enum: - PROXY_UPGRADE title: Type description: The type of the state change before: allOf: - $ref: '#/components/schemas/routers__evm__response__AddressChange' title: Before description: The state before the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__AddressChange' title: After description: The state after the transaction type: object required: - type - before - after title: ProxyUpgradeManagement routers__evm__response__NativeAssetTrace: properties: trace_type: type: string enum: - AssetTrace title: Trace Type description: type of the trace from_address: type: string title: From Address description: The address where the assets are moved from to_address: type: string title: To Address description: The address where the assets are moved to labels: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__TraceLabels' - type: string type: array title: Labels description: List of labels that describe the trace type: type: string enum: - NativeAssetTrace title: Type description: The type of the model asset: allOf: - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: Description of the asset in the trace diff: allOf: - $ref: '#/components/schemas/routers__evm__response__NativeDiff' title: Diff description: The difference in value for the asset in the trace type: object required: - trace_type - from_address - to_address - type - asset - diff title: NativeAssetTrace TransactionScanSupportedChains: type: string enum: - arbitrum - avalanche - base - base-sepolia - lordchain - lordchain-testnet - metacade - metacade-testnet - bsc - ethereum - optimism - polygon - zksync - zksync-sepolia - zora - linea - blast - scroll - ethereum-sepolia - degen - avalanche-fuji - gnosis - worldchain - soneium-minato - ronin - apechain - berachain - berachain-bartio - ink - ink-sepolia - abstract - abstract-testnet - soneium - unichain - sei - flow-evm - hyperevm - megaeth - katana - plume - xlayer - monad - monad-testnet - tempo - tempo-testnet - kite-ai - kaia - plasma - mantle - robinhood - arc title: TransactionScanSupportedChains description: The chain name EVMAddressReportParams: properties: address: type: string title: Address description: The address to report on. domain: type: string title: Domain description: The domain related to this address. chain: allOf: - $ref: '#/components/schemas/EVMAddressReportSupportedChains' description: The chain name type: object required: - address - domain - chain title: EVMAddressReportParams ApprovalsRequest: properties: address: type: string pattern: ^0x[0-9A-Fa-f]{40}$ title: Address description: The address to validate. chain: anyOf: - $ref: '#/components/schemas/ApprovalsSupportedChains' - type: string title: Chain description: The chain to validate against. metadata: allOf: - $ref: '#/components/schemas/NewMetadata' title: Metadata description: Metadata about the end user's session and identity within the integrating wallet application. These fields help investigate user sessions inside the platform and detect anomalies such as account takeover attempts. type: object required: - address - chain - metadata title: ApprovalsRequest ParamReport_TransactionReportParams_: properties: type: type: string enum: - params title: Type params: $ref: '#/components/schemas/TransactionReportParams' type: object required: - type - params title: ParamReport[TransactionReportParams] routers__evm__models__ValidationResultType: type: string enum: - Malicious - Warning - Benign - Error title: ValidationResultType description: Overall validation outcome for the scan. Feature: properties: feature_id: $ref: '#/components/schemas/FeatureID' description: Feature identifier type: $ref: '#/components/schemas/FeatureType' description: Type of the feature description: type: string title: Description description: Description of the feature type: object required: - feature_id - type - description title: Feature routers__evm__session_keys__CallPolicy: properties: type: type: string enum: - CALL_POLICY title: Type default: CALL_POLICY to_address: type: string title: To Address method: type: string title: Method value_limit: type: string title: Value Limit args: items: $ref: '#/components/schemas/routers__evm__session_keys__ArgumentCondition' type: array title: Args type: object required: - to_address title: CallPolicy routers__evm__token_details__ERC1155TokenDetails: properties: name: type: string title: Name description: string represents the name of the asset symbol: type: string title: Symbol description: asset's symbol name address: type: string title: Address description: address of the token logo_url: type: string title: Logo Url description: url of the token logo type: type: string enum: - ERC1155 title: Type description: asset type. type: object required: - address - type title: ERC1155TokenDetails routers__evm__response__CrossChainAssetDiffs: properties: address: type: string title: Address description: The address for which cross-chain asset diffs are reported obj: items: $ref: '#/components/schemas/routers__evm__response__CrossChainAssetDiffObject' type: array title: Obj description: List of cross-chain asset diffs for this address type: object required: - address - obj title: CrossChainAssetDiffs description: Cross-chain asset diffs for a specific address PostTransactionBulkRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or both of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false data: items: type: string type: array title: Data description: Transaction hashes to scan type: object required: - chain - metadata - data title: PostTransactionBulkRequest FeatureID: type: string enum: - VERIFIED_CONTRACT - UNVERIFIED_CONTRACT - HIGH_TRADE_VOLUME - MARKET_PLACE_SALES_HISTORY - HIGH_REPUTATION_TOKEN - ONCHAIN_ACTIVITY_VALIDATOR - STATIC_CODE_SIGNATURE - KNOWN_MALICIOUS - IS_EOA - IS_CONTRACT - ERC20_CONTRACT - TRUSTED_CONTRACT - BENIGN_CREATOR - METADATA - AIRDROP_PATTERN - IMPERSONATOR - INORGANIC_VOLUME - DYNAMIC_ANALYSIS - CONCENTRATED_SUPPLY_DISTRIBUTION - HONEYPOT - INSUFFICIENT_LOCKED_LIQUIDITY - UNSTABLE_TOKEN_PRICE - RUGPULL - WASH_TRADING - CONSUMER_OVERRIDE - INAPPROPRIATE_CONTENT - HIGH_TRANSFER_FEE - HIGH_BUY_FEE - HIGH_SELL_FEE - UNSELLABLE_TOKEN - IS_MINTABLE - REBASE_TOKEN - LIQUID_STAKING_TOKEN - MODIFIABLE_TAXES - CAN_BLACKLIST - CAN_WHITELIST - HAS_TRADING_COOLDOWN - EXTERNAL_FUNCTIONS - HIDDEN_OWNER - TRANSFER_PAUSEABLE - OWNERSHIP_RENOUNCED - OWNER_CAN_CHANGE_BALANCE - PROXY_CONTRACT - SIMILAR_MALICIOUS_CONTRACT - IMPERSONATOR_SENSITIVE_ASSET - IMPERSONATOR_HIGH_CONFIDENCE - IMPERSONATOR_MEDIUM_CONFIDENCE - IMPERSONATOR_LOW_CONFIDENCE - IMPERSONATION_PROTECTED - FAKE_VOLUME - HIDDEN_SUPPLY_BY_KEY_HOLDER - FAKE_TRADE_MAKER_COUNT - TRANSFER_FROM_REVERTS - OFFENSIVE_TOKEN_METADATA - LISTED_ON_CENTRALIZED_EXCHANGE - SANCTIONED_CREATOR - SPAM_TEXT - BONDING_CURVE_TOKEN - HEAVILY_SNIPED - SOLANA_TOKEN_2022 - POST_DUMP - DEX_PAID - LOW_REPUTATION_CREATOR - SNIPE_AT_MINT - TRANSFER_HOOK_ENABLED - CONFIDENTIAL_TRANSFERS_ENABLED - NON_TRANSERABLE - TOKEN_BACKDOOR - CREATED_VIA_LAUNCHPAD - COMPROMISED_TOKEN - LONG_FUND_TRAIL title: FeatureID ReportRequest_ChainTransactionHashParams_: properties: event: allOf: - $ref: '#/components/schemas/EventEnum' description: The event type of the report. Could be `FALSE_POSITIVE` or `FALSE_NEGATIVE`. report: anyOf: - $ref: '#/components/schemas/ParamReport_ChainTransactionHashParams_' - $ref: '#/components/schemas/RequestIDReport' title: Report description: Parameters identifying the transaction to report, provided either as transaction details (chain and transaction hash) or as a request ID from a previous scan. details: type: string title: Details description: Details about the report. type: object required: - event - report - details title: ReportRequest[ChainTransactionHashParams] routers__evm__response__ERC1155Exposure: properties: exposure: items: $ref: '#/components/schemas/routers__evm__response__AssetDiffResponse' type: array title: Exposure summary: type: string title: Summary description: user friendly description of the approval is_approved_for_all: type: boolean title: Is Approved For All description: boolean indicates whether an is_approved_for_all function was used (missing in case of ERC20 / ERC1155) type: object required: - exposure - is_approved_for_all title: ERC1155Exposure routers__evm__models__AddressStateOverride: properties: balance: type: string title: Balance description: Fake balance to set for the account before executing the call. nonce: type: string title: Nonce description: Fake nonce to set for the account before executing the call. code: type: string title: Code description: Fake EVM bytecode to inject into the account before executing the call. state: additionalProperties: type: string type: object title: State description: Fake key-value mapping to override all slots in the account storage before executing the call. stateDiff: additionalProperties: type: string type: object title: Statediff description: Fake key-value mapping to override individual slots in the account storage before executing the call. movePrecompileToAddress: type: string title: Moveprecompiletoaddress description: Moves precompile to given address type: object title: AddressStateOverride Allowance: properties: usd_price: type: string title: Usd Price value: type: string title: Value type: object title: Allowance ScanRequestMetadata: properties: domain: type: string title: Domain description: The full URL of the DApp or website that initiated the request, for cross-reference. Must use the https or http scheme and contain a valid hostname. Cannot contain JSON, braces, or other embedded data structures. non_dapp: type: boolean title: Non Dapp description: Set to true when the request was not initiated by a dapp. Dapp requests should provide the `domain` field. account: allOf: - $ref: '#/components/schemas/routers__chain_agnostic__models__request__Account' title: Account description: End-user account context (id, age, country, creation time, and account_addresses). connection: allOf: - $ref: '#/components/schemas/routers__chain_agnostic__models__request__Connection' title: Connection description: Connection metadata including user agent, IP information, and origin. type: object title: ScanRequestMetadata routers__evm__response__ERC20Exposure: properties: exposure: items: $ref: '#/components/schemas/routers__evm__response__AssetDiffResponse' type: array title: Exposure summary: type: string title: Summary description: user friendly description of the approval approval: type: string title: Approval description: the amount that was asked in the approval request for this spender from the current address and asset approval_usd_price: type: string title: Approval Usd Price description: the usd price of the approval amount expiration: type: string format: date-time title: Expiration description: the expiration time of the permit2 protocol type: object required: - exposure - approval title: ERC20Exposure routers__evm__session_keys__ArgumentCondition: properties: index: type: integer title: Index condition: $ref: '#/components/schemas/routers__evm__session_keys__Condition' value: type: string title: Value type: object required: - index - condition - value title: ArgumentCondition routers__evm__response__TransactionValidationError: properties: status: type: string enum: - Success title: Status description: A string indicating if the simulation was successful or not. result_type: type: string enum: - Error title: Result Type description: A string indicating if the transaction is safe to sign or not. description: type: string enum: - '' title: Description description: A textual description that can be presented to the user about what this transaction is doing. reason: type: string enum: - '' title: Reason description: A textual description about the reasons the transaction was flagged with result_type. classification: type: string enum: - '' title: Classification description: A textual classification that can be presented to the user explaining the reason. features: items: $ref: '#/components/schemas/routers__evm__response__TransactionScanFeature' type: array title: Features description: A list of features about this transaction explaining the validation. error: type: string title: Error description: An error message if the validation failed. type: object required: - status - result_type - description - reason - classification - features - error title: TransactionValidationError routers__evm__response__ERC721AddressExposure: properties: asset_type: type: string enum: - ERC721 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: TokenDetailsResponse description: description of the asset for the current diff spenders: additionalProperties: $ref: '#/components/schemas/routers__evm__response__ERC721Exposure' type: object title: Spenders description: dictionary of spender addresses where the exposure has changed during this transaction for the current address and asset type: object required: - asset_type - asset - spenders title: ERC721AddressExposure JsonRpc: properties: method: allOf: - $ref: '#/components/schemas/JsonRpcSupportedMethod' description: The method of the JSON-RPC request params: items: anyOf: - type: object - type: string type: array title: Params description: The parameters of the JSON-RPC request in JSON format type: object required: - method - params title: JsonRpc CrossChainBridgeAsset: oneOf: - $ref: '#/components/schemas/CrossChainBridgeNativeAsset' - $ref: '#/components/schemas/CrossChainBridgeFungibleAsset' - $ref: '#/components/schemas/CrossChainBridgeNonFungibleAsset' discriminator: propertyName: type mapping: NATIVE: '#/components/schemas/CrossChainBridgeNativeAsset' FUNGIBLE: '#/components/schemas/CrossChainBridgeFungibleAsset' NON_FUNGIBLE: '#/components/schemas/CrossChainBridgeNonFungibleAsset' title: CrossChainBridgeAsset description: The asset the recipient will receive on the destination chain. PostTransactionData: properties: tx_hash: type: string title: Tx Hash description: The transaction hash to scan type: object required: - tx_hash title: PostTransactionData routers__evm__response__GenericErrorDetails: properties: code: type: string title: Code description: The error code category: type: string title: Category type: object required: - code - category title: GenericErrorDetails routers__evm__response__ERC20ExposureTrace: properties: trace_type: type: string enum: - ExposureTrace title: Trace Type description: type of the trace owner: type: string title: Owner description: The owner of the assets spender: type: string title: Spender description: The spender of the assets type: type: string enum: - ERC20ExposureTrace title: Type description: The type of the model exposed: $ref: '#/components/schemas/routers__evm__response__FungibleTokenBalance' asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace type: object required: - trace_type - owner - spender - type - exposed - asset title: ERC20ExposureTrace routers__chain_agnostic__models__request__Connection: properties: user_agent: type: string title: User Agent description: User agent string from the client's browser or application. ip_address: type: string format: ipvanyaddress title: Ip Address description: IP address of the customer making the request. Both IPv4 and IPv6 addresses are supported. origin: type: string minLength: 1 format: uri title: Origin description: The full URL of the website that the request was directed to. walletconnect_name: type: string title: Walletconnect Name description: WalletConnect session name, when the request originates from a WalletConnect session. walletconnect_description: type: string title: Walletconnect Description description: WalletConnect session description, when the request originates from a WalletConnect session. type: object required: - ip_address title: Connection routers__evm__response__GeneralInvalidAddressErrorDetails: properties: code: type: string enum: - GENERAL_INVALID_ADDRESS title: Code description: The type of the model category: type: string const: INVALID_INPUT title: Category default: INVALID_INPUT address: type: string title: Address description: The address that is invalid type: object required: - code - address title: GeneralInvalidAddressErrorDetails routers__evm__response__AccountSummary: properties: assets_diffs: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC20AddressAssetBalanceChangeDiff' - $ref: '#/components/schemas/routers__evm__response__ERC721AddressAssetBalanceChangeDiff' - $ref: '#/components/schemas/routers__evm__response__ERC1155AddressAssetBalanceChangeDiff' - $ref: '#/components/schemas/routers__evm__response__NativeAddressAssetBalanceChangeDiff' type: array title: Assets Diffs description: All assets diffs related to the account address traces: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC20AssetTrace' - $ref: '#/components/schemas/routers__evm__response__ERC721AssetTrace' - $ref: '#/components/schemas/routers__evm__response__ERC1155AssetTrace' - $ref: '#/components/schemas/routers__evm__response__NativeAssetTrace' - $ref: '#/components/schemas/routers__evm__response__ERC20ExposureTrace' - $ref: '#/components/schemas/routers__evm__response__ERC721ExposureTrace' - $ref: '#/components/schemas/routers__evm__response__ERC1155ExposureTrace' - $ref: '#/components/schemas/routers__evm__response__BridgeAssetTrace' type: array title: Traces description: All assets traces related to the account address total_usd_diff: allOf: - $ref: '#/components/schemas/routers__evm__response__USDDiff' title: Total Usd Diff description: Total usd diff related to the account address exposures: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC20AddressExposure' - $ref: '#/components/schemas/routers__evm__response__ERC721AddressExposure' - $ref: '#/components/schemas/routers__evm__response__ERC1155AddressExposure' type: array title: Exposures description: All assets exposures related to the account address total_usd_exposure: additionalProperties: type: string type: object title: Total Usd Exposure description: Total usd exposure related to the account address type: object required: - assets_diffs - traces - total_usd_diff - exposures - total_usd_exposure title: AccountSummary routers__evm__session_keys__SessionKey: properties: key: type: string title: Key signer: type: string title: Signer policies: items: anyOf: - $ref: '#/components/schemas/routers__evm__session_keys__TransferPolicy' - $ref: '#/components/schemas/routers__evm__session_keys__CallPolicy' - $ref: '#/components/schemas/routers__evm__session_keys__GasPolicy' - $ref: '#/components/schemas/routers__evm__session_keys__ExpirationPolicy' type: array title: Policies type: object required: - key - signer - policies title: SessionKey routers__evm__response__OwnershipChangeManagement: properties: type: type: string enum: - OWNERSHIP_CHANGE title: Type description: The type of the state change before: allOf: - $ref: '#/components/schemas/routers__evm__response__OwnershipChange' title: Before description: The state before the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__OwnershipChange' title: After description: The state after the transaction type: object required: - type - before - after title: OwnershipChangeManagement TransactionHints: type: array items: $ref: '#/components/schemas/TransactionHint' title: TransactionHints description: Customer-supplied hints about transaction intent that cannot be derived from on-chain simulation alone. Each element is a typed hint identified by its `type` field. routers__evm__response__ERC721BalanceChanges: properties: before: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC721Diff' title: Before description: balance of the account before making the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC721Diff' title: After description: balance of the account after making the transaction type: object required: - before - after title: ERC721BalanceChanges AddressValidation: properties: result_type: allOf: - $ref: '#/components/schemas/routers__evm__models__ValidationResultType' description: A string indicating if the transaction is safe to sign or not. features: anyOf: - items: $ref: '#/components/schemas/Feature' type: array - items: type: string type: array title: Features description: A list of features explaining the scan result (each feature includes a type, feature_id, and description). error: type: string title: Error description: An error message returned when `result_type` is `Error`. type: object required: - result_type title: AddressValidation routers__evm__session_keys__GasPolicy: properties: type: type: string enum: - GAS_POLICY title: Type default: GAS_POLICY value_limit: type: string title: Value Limit type: object required: - value_limit title: GasPolicy AddressValidationExtended: properties: result_type: allOf: - $ref: '#/components/schemas/routers__evm__models__ValidationResultType' description: A string indicating if the address is malicious or not. features: items: $ref: '#/components/schemas/Feature' type: array title: Features description: A list of textual features about this address that can be presented to the user. type: object required: - result_type title: AddressValidationExtended ValidateBulkExtendedAddressesRequest: properties: metadata: allOf: - $ref: '#/components/schemas/NewMetadata' title: Metadata description: Additional context for the scan (e.g., integration source, user/account details). Used to enrich results and reduce false positives/negatives. chain: $ref: '#/components/schemas/TransactionScanSupportedChains' addresses: items: type: string type: array title: Addresses description: List of addresses to validate. type: object required: - metadata - chain - addresses title: ValidateBulkExtendedAddressesRequest NewMetadata: properties: account: $ref: '#/components/schemas/routers__evm__models__Account' connection: $ref: '#/components/schemas/routers__evm__models__Connection' type: object required: - account - connection title: NewMetadata routers__evm__models__TransactionScanGasEstimation: properties: status: type: string enum: - Success title: Status used: type: string title: Used estimate: type: string title: Estimate type: object required: - status - used - estimate title: TransactionScanGasEstimation routers__evm__token_details__NONERCTokenDetails: properties: name: type: string title: Name description: string represents the name of the asset symbol: type: string title: Symbol description: asset's symbol name address: type: string title: Address description: address of the token logo_url: type: string title: Logo Url description: url of the token logo type: type: string enum: - NONERC title: Type description: asset type. type: object required: - address - type title: NONERCTokenDetails routers__evm__response__ERC1155ExposureTrace: properties: trace_type: type: string enum: - ExposureTrace title: Trace Type description: type of the trace owner: type: string title: Owner description: The owner of the assets spender: type: string title: Spender description: The spender of the assets type: type: string enum: - ERC1155ExposureTrace title: Type description: The type of the model asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace type: object required: - trace_type - owner - spender - type - asset title: ERC1155ExposureTrace routers__evm__response__ERC1155AddressAssetDiff: properties: asset_type: type: string enum: - ERC1155 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction type: object required: - asset_type - asset - in - out title: ERC1155AddressAssetDiff routers__evm__transaction__models__TransactionRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or more of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. "gas_estimation" - include gas estimation result in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false account_address: type: string title: Account Address description: The address to relate the transaction to. Account address determines in which perspective the transaction is simulated and validated. data: allOf: - $ref: '#/components/schemas/routers__evm__transaction__models__Transaction' title: Data description: Transaction parameters transaction_hints: $ref: '#/components/schemas/TransactionHints' title: Transaction Hints description: Optional customer-supplied hints about transaction intent that cannot be inferred from on-chain simulation. type: object required: - chain - metadata - account_address - data title: TransactionRequest routers__evm__response__NativeBalanceChanges: properties: before: allOf: - $ref: '#/components/schemas/routers__evm__response__NativeDiff' title: Before description: balance of the account before making the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__NativeDiff' title: After description: balance of the account after making the transaction type: object required: - before - after title: NativeBalanceChanges routers__evm__models__UserOperationV6GasEstimation: properties: status: type: string enum: - Success title: Status pre_verification_gas_estimate: type: string title: Pre Verification Gas Estimate verification_gas_estimate: type: string title: Verification Gas Estimate call_gas_estimate: type: string title: Call Gas Estimate type: object required: - status - pre_verification_gas_estimate - verification_gas_estimate - call_gas_estimate title: UserOperationV6GasEstimation routers__evm__response__Balance: properties: raw_value: type: string title: Raw Value description: The raw value of the balance in hex string format value: type: string title: Value description: The value of the balance in decimal string format type: object required: - raw_value title: Balance Asset: properties: address: type: string title: Address decimals: type: integer title: Decimals logo_url: type: string title: Logo Url name: type: string title: Name symbol: type: string title: Symbol type: type: string title: Type type: object required: - address - decimals - name - symbol - type title: Asset routers__evm__response__TransactionValidationSuccessResultType: type: string enum: - Benign - Warning - Malicious title: TransactionValidationSuccessResultType description: Result type returned when validation succeeds. routers__evm__response__ERC20AddressAssetBalanceChangeDiff: properties: asset_type: type: string enum: - ERC20 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction balance_changes: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC20BalanceChanges' title: Balance Changes description: shows the balance before making the transaction and after type: object required: - asset_type - asset - in - out title: ERC20AddressAssetBalanceChangeDiff routers__evm__response__ModulesChange: properties: modules: items: type: string type: array title: Modules type: object required: - modules title: ModulesChange UserOperationData: properties: operation: anyOf: - $ref: '#/components/schemas/UserOperationV6' - $ref: '#/components/schemas/UserOperationV7' title: Operation description: The operation parameters of the user operation request entrypoint: type: string pattern: ^(0x[0-9A-Fa-f]{40})$ title: Entrypoint description: The address of the entrypoint receiving the request in hex string format default: '' type: object required: - operation title: UserOperationData PostTransactionRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or more of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. "gas_estimation" - include gas estimation result in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false data: $ref: '#/components/schemas/PostTransactionData' transaction_hints: $ref: '#/components/schemas/TransactionHints' title: Transaction Hints description: Optional customer-supplied hints about transaction intent that cannot be inferred from on-chain simulation. type: object required: - chain - metadata - data title: PostTransactionRequest routers__evm__response__ModulesChangeManagement: properties: type: type: string enum: - MODULE_CHANGE title: Type description: The type of the state change before: allOf: - $ref: '#/components/schemas/routers__evm__response__ModulesChange' title: Before description: The state before the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__ModulesChange' title: After description: The state after the transaction type: object required: - type - before - after title: ModulesChangeManagement routers__evm__session_keys__ExpirationPolicy: properties: type: type: string enum: - EXPIRATION_POLICY title: Type default: EXPIRATION_POLICY start_time: type: string format: date-time title: Start Time end_time: type: string format: date-time title: End Time type: object title: ExpirationPolicy routers__evm__response__TransactionAction: type: string enum: - mint - stake - swap - native_transfer - token_transfer - approval - set_code_account - proxy_upgrade - ownership_change - bridge title: TransactionAction description: Type of action performed in the transaction. routers__evm__response__UnsupportedEIP712MessageErrorDetails: properties: code: type: string enum: - UNSUPPORTED_EIP712_MESSAGE title: Code description: The type of the model category: type: string const: INVALID_INPUT title: Category default: INVALID_INPUT domain_name: type: string title: Domain Name description: The domain name that is unsupported message_type: type: string title: Message Type description: The message type that is unsupported type: object required: - code - domain_name - message_type title: UnsupportedEIP712MessageErrorDetails ChainParam: anyOf: - $ref: '#/components/schemas/TransactionScanSupportedChains' - $ref: '#/components/schemas/TransactionScanChainID' title: ChainParam CrossChainBridgeNonFungibleAsset: type: object required: - type - address - token_id properties: type: type: string const: NON_FUNGIBLE title: Type description: Type of the asset (`NON_FUNGIBLE`) default: NON_FUNGIBLE address: type: string description: NFT collection contract address on the destination chain. token_id: type: string description: Token ID of the specific NFT being bridged. title: CrossChainBridgeNonFungibleAsset routers__evm__response__ERC1155AddressAssetBalanceChangeDiff: properties: asset_type: type: string enum: - ERC1155 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction balance_changes: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC1155BalanceChanges' title: Balance Changes description: shows the balance before making the transaction and after type: object required: - asset_type - asset - in - out title: ERC1155AddressAssetBalanceChangeDiff routers__evm__response__ERC20AddressAssetDiff: properties: asset_type: type: string enum: - ERC20 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction type: object required: - asset_type - asset - in - out title: ERC20AddressAssetDiff TransactionBulkRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or both of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false data: items: $ref: '#/components/schemas/routers__evm__transaction__models__Transaction' type: array title: Data description: Transaction bulk parameters aggregated: type: boolean title: Aggregated description: Should aggregate the results to one result default: false type: object required: - chain - metadata - data title: TransactionBulkRequest routers__evm__response__ERC1155AddressExposure: properties: asset_type: type: string enum: - ERC1155 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: TokenDetailsResponse description: description of the asset for the current diff spenders: additionalProperties: $ref: '#/components/schemas/routers__evm__response__ERC1155Exposure' type: object title: Spenders description: dictionary of spender addresses where the exposure has changed during this transaction for the current address and asset type: object required: - asset_type - asset - spenders title: ERC1155AddressExposure routers__evm__response__TransactionSimulationError: properties: status: type: string enum: - Error title: Status description: A string indicating if the simulation was successful or not. error: type: string title: Error description: An error message if the simulation failed. error_details: anyOf: - $ref: '#/components/schemas/routers__evm__response__GeneralInsufficientFundsErrorDetails' - $ref: '#/components/schemas/routers__evm__response__GeneralInvalidAddressErrorDetails' - $ref: '#/components/schemas/routers__evm__response__GenericErrorDetails' - $ref: '#/components/schemas/routers__evm__response__UnsupportedEIP712MessageErrorDetails' title: Error Details description: Error details if the simulation failed. description: type: string title: Description description: A string explaining why the transaction failed type: object required: - status - error - description title: TransactionSimulationError routers__evm__models__TransactionScanGasEstimationError: properties: status: type: string enum: - Error title: Status error: type: string title: Error type: object required: - status - error title: TransactionScanGasEstimationError ApprovalsResponse: properties: approvals: items: $ref: '#/components/schemas/Approval' type: array title: Approvals type: object title: ApprovalsResponse Approval: properties: allowance: $ref: '#/components/schemas/Allowance' asset: $ref: '#/components/schemas/Asset' exposure: $ref: '#/components/schemas/Exposure' spender: $ref: '#/components/schemas/Spender' verdict: $ref: '#/components/schemas/routers__evm__models__ValidationResultType' type: object required: - allowance - asset - exposure - spender - verdict title: Approval RequestIDReport: properties: type: type: string const: request_id title: Type description: The type identifier indicating that a request ID from a previous scan is being used. request_id: type: string title: Request Id description: 'The request ID of a previous request. This can be found in the value of the `x-request-id` field in the headers of the response of the previous request. For instance: `6c3cf6c1-a80d-4927-91b9-03d841ea61fe`.' type: object required: - type - request_id title: RequestIDReport routers__evm__response__ERC20AddressExposure: properties: asset_type: type: string enum: - ERC20 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: TokenDetailsResponse description: description of the asset for the current diff spenders: additionalProperties: $ref: '#/components/schemas/routers__evm__response__ERC20Exposure' type: object title: Spenders description: dictionary of spender addresses where the exposure has changed during this transaction for the current address and asset type: object required: - asset_type - asset - spenders title: ERC20AddressExposure routers__evm__response__ContractCreation: properties: type: type: string enum: - CONTRACT_CREATION title: Type description: The type of the state change deployer: type: string title: Deployer description: The direct creator address of the new contract type: object required: - type - deployer title: ContractCreation HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError ParamReport_EVMAddressReportParams_: properties: type: type: string enum: - params title: Type params: $ref: '#/components/schemas/EVMAddressReportParams' type: object required: - type - params title: ParamReport[EVMAddressReportParams] routers__evm__response__OwnershipChange: properties: owners: items: type: string type: array title: Owners type: object required: - owners title: OwnershipChange CrossChainBridgeFungibleAsset: type: object required: - type - address properties: type: type: string const: FUNGIBLE title: Type description: Type of the asset (`FUNGIBLE`) default: FUNGIBLE address: type: string description: Token contract address on the destination chain. raw_value: type: string description: Amount to be received in the asset's smallest unit (before decimal division), e.g. base units for ERC-20 tokens. title: CrossChainBridgeFungibleAsset EVMAddressReportSupportedChains: type: string enum: - arbitrum - avalanche - base - base-sepolia - lordchain - lordchain-testnet - metacade - metacade-testnet - bsc - ethereum - optimism - polygon - zksync - zksync-sepolia - zora - linea - blast - scroll - ethereum-sepolia - degen - avalanche-fuji - gnosis - worldchain - soneium-minato - ronin - apechain - berachain - berachain-bartio - ink - ink-sepolia - abstract - abstract-testnet - soneium - unichain - sei - flow-evm - hyperevm - katana - plume - xlayer - monad - monad-testnet - hedera - tempo - tempo-testnet - kite-ai - kaia - plasma - mantle - robinhood - arc title: EVMAddressReportSupportedChains description: The chain name TransactionScanChainID: type: string pattern: ^(0x[0-9A-Fa-f]+|\d+)$ title: TransactionScanChainID description: The chain ID as hex or decimal string default: '0x1' routers__evm__response__ERC721AddressAssetBalanceChangeDiff: properties: asset_type: type: string enum: - ERC721 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC721Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC721Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction balance_changes: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC721BalanceChanges' title: Balance Changes description: shows the balance before making the transaction and after type: object required: - asset_type - asset - in - out title: ERC721AddressAssetBalanceChangeDiff routers__evm__response__TransactionScanResponse: properties: validation: anyOf: - $ref: '#/components/schemas/routers__evm__response__TransactionValidation' - $ref: '#/components/schemas/routers__evm__response__TransactionValidationError' title: Validation simulation: anyOf: - $ref: '#/components/schemas/routers__evm__response__TransactionSimulation' - $ref: '#/components/schemas/routers__evm__response__TransactionSimulationError' title: Simulation events: items: $ref: '#/components/schemas/routers__evm__models__TransactionScanEvent' type: array title: Events gas_estimation: anyOf: - $ref: '#/components/schemas/routers__evm__models__TransactionScanGasEstimation' - $ref: '#/components/schemas/routers__evm__models__TransactionScanGasEstimationError' title: Gas Estimation user_operation_gas_estimation: anyOf: - $ref: '#/components/schemas/routers__evm__models__UserOperationV6GasEstimation' - $ref: '#/components/schemas/routers__evm__models__UserOperationV7GasEstimation' - $ref: '#/components/schemas/routers__evm__models__TransactionScanGasEstimationError' title: User Operation Gas Estimation features: type: object title: Features block: type: string title: Block chain: type: string title: Chain account_address: type: string title: Account Address type: object required: - block - chain title: TransactionScanResponse routers__evm__response__MissingBalance: properties: asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: The asset that is missing balance required_balance: allOf: - $ref: '#/components/schemas/routers__evm__response__Balance' title: Required Balance description: The required balance of the asset for this action current_balance: allOf: - $ref: '#/components/schemas/routers__evm__response__Balance' title: Current Balance description: The account address's current balance of the asset missing_balance: allOf: - $ref: '#/components/schemas/routers__evm__response__Balance' title: Missing Balance description: The account address's missing balance of the asset type: object required: - asset - required_balance - current_balance - missing_balance title: MissingBalance routers__evm__response__AddressDetails: properties: name_tag: type: string title: Name Tag description: known name tag for the address contract_name: type: string title: Contract Name description: contains the contract's name if the address is a verified contract is_eoa: type: boolean title: Is Eoa description: Whether the address is an eoa or a contract type: object title: AddressDetails routers__evm__response__GeneralAssetDiff: properties: chain: type: string title: Chain description: The chain identifier where the asset exists address: type: string title: Address description: The address involved in the asset diff asset_type: anyOf: - type: string - type: 'null' title: Asset Type description: The type of the asset (e.g. ERC20, NATIVE, FUNGIBLE) asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: Details of the asset involved in the diff diff: properties: raw_value: type: string title: Raw Value description: The raw value of the asset transfer before dividing by decimals value: type: string title: Value description: The value of the asset transfer after dividing by decimals usd_price: type: string title: Usd Price description: The USD equivalent value of the asset transfer type: object required: - raw_value title: Diff description: The asset value change type: object required: - chain - address - asset - diff title: GeneralAssetDiff description: An asset diff with chain context, used in cross-chain bridge traces CrossChainBridgeHint: type: object required: - type properties: type: type: string const: cross_chain_bridge title: Type description: Hint type discriminator (`cross_chain_bridge`). default: cross_chain_bridge destination_address: type: string description: The intended recipient address on the destination chain. Required when the bridge protocol does not emit this on-chain (e.g. Relay, some Across deposit routes). destination_chain: anyOf: - $ref: '#/components/schemas/TransactionScanSupportedChains' - type: string description: The destination chain for the bridged assets. destination_asset: $ref: '#/components/schemas/CrossChainBridgeAsset' description: Details of the asset the recipient will receive on the destination chain. May differ from the source asset (e.g. wrapped vs. native, canonical vs. bridged token). title: CrossChainBridgeHint description: Customer-supplied context for a cross-chain bridge deposit where the protocol does not emit the destination on-chain. JsonRPCRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or more of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. "gas_estimation" - include gas estimation result in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false account_address: type: string pattern: ^(0x[0-9A-Fa-f]{40}|)$ title: Account Address description: The address of the account (wallet) that received the request, in hex string format default: '' data: allOf: - $ref: '#/components/schemas/JsonRpc' title: Data description: JSON-RPC request that was received by the wallet. transaction_hints: $ref: '#/components/schemas/TransactionHints' title: Transaction Hints description: Optional customer-supplied hints about transaction intent that cannot be inferred from on-chain simulation. type: object required: - chain - metadata - data title: JsonRPCRequest FeatureType: type: string enum: - Benign - Info - Warning - Malicious title: FeatureType routers__evm__response__ERC721Diff: properties: usd_price: type: string title: Usd Price description: usd equal of the asset that was transferred from this address summary: type: string title: Summary description: user friendly description of the asset transfer token_id: type: string title: Token Id description: id of the token arbitrary_collection_token: type: boolean title: Arbitrary Collection Token description: Indicates whether the token ID represents an arbitrary token from a collection, unpredictable while running the simulation logo_url: type: string title: Logo Url description: url of the token logo type: object required: - token_id - arbitrary_collection_token title: ERC721Diff routers__evm__response__AddressChange: properties: address: type: string title: Address type: object required: - address title: AddressChange routers__evm__token_details__ERC20TokenDetails: properties: name: type: string title: Name description: string represents the name of the asset symbol: type: string title: Symbol description: asset's symbol name address: type: string title: Address description: address of the token logo_url: type: string title: Logo Url description: url of the token logo type: type: string enum: - ERC20 title: Type description: asset type. decimals: type: integer title: Decimals description: asset's decimals type: object required: - address - type - decimals title: ERC20TokenDetails routers__evm__response__ERC20Diff: properties: usd_price: type: string title: Usd Price description: usd equal of the asset that was transferred from this address summary: type: string title: Summary description: user friendly description of the asset transfer value: type: string title: Value description: value after divided by decimals, that was transferred from this address raw_value: type: string title: Raw Value description: value before divided by decimal, that was transferred from this address type: object required: - raw_value title: ERC20Diff routers__evm__models__TransactionScanLogParamInfo: properties: type: type: string title: Type value: anyOf: - type: string - type: object - items: {} type: array title: Value internalType: type: string title: Internaltype name: type: string title: Name type: object required: - type - value title: TransactionScanLogParamInfo UserOperationV6: properties: sender: type: string pattern: ^(0x[0-9A-Fa-f]{40})$ title: Sender description: The sender address of the operation in hex string format default: 0x nonce: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Nonce description: The nonce value in hex string format. default: '0x0' init_code: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Init Code description: The init code value in hex string format. default: 0x call_data: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Call Data description: The call data value in hex string format. default: 0x call_gas_limit: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Call Gas Limit description: The call gas limit value in hex string format. default: '0x0' verification_gas_limit: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Verification Gas Limit description: The verification gas limit value in hex string format. default: '0x0' pre_verification_gas: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Pre Verification Gas description: The pre verification gas value in hex string format. default: '0x0' max_fee_per_gas: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Max Fee Per Gas description: The max fee per gas value in hex string format. default: '0x0' max_priority_fee_per_gas: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Max Priority Fee Per Gas description: The max priority fee per gas value in hex string format. default: '0x0' paymaster_and_data: type: string pattern: ^(0x[0-9A-Fa-f]*)$ title: Paymaster And Data description: The paymaster and data value in hex string format. default: 0x signature: type: string pattern: ^(0x[0-9A-Fa-f]*|)$ title: Signature description: The signature value in hex string format. eip7702_auth: allOf: - $ref: '#/components/schemas/Authorization' title: Eip7702 Auth description: The EIP-7702 authorization tuple for the user operation (optional) type: object title: UserOperationV6 routers__evm__response__TraceLabels: type: string enum: - GAS_FEE title: TraceLabels description: Label assigned to a trace entry. routers__evm__response__TransactionValidation: properties: status: type: string enum: - Success title: Status description: A string indicating if the simulation was successful or not. result_type: allOf: - $ref: '#/components/schemas/routers__evm__response__TransactionValidationSuccessResultType' description: A string indicating if the transaction is safe to sign or not. description: type: string title: Description description: A textual description that can be presented to the user about what this transaction is doing. default: '' reason: type: string title: Reason description: A textual description about the reasons the transaction was flagged with result_type. default: '' classification: type: string title: Classification description: A textual classification that can be presented to the user explaining the reason. default: '' features: items: $ref: '#/components/schemas/routers__evm__response__TransactionScanFeature' type: array title: Features description: A list of features about this transaction explaining the validation. type: object required: - status - result_type - features title: TransactionValidation routers__evm__token_details__ERC721TokenDetails: properties: name: type: string title: Name description: string represents the name of the asset symbol: type: string title: Symbol description: asset's symbol name address: type: string title: Address description: address of the token logo_url: type: string title: Logo Url description: url of the token logo type: type: string enum: - ERC721 title: Type description: asset type. type: object required: - address - type title: ERC721TokenDetails routers__evm__response__AssetDiffResponse: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' - $ref: '#/components/schemas/routers__evm__response__ERC721Diff' - $ref: '#/components/schemas/routers__evm__response__ERC20Diff' - $ref: '#/components/schemas/routers__evm__response__NativeDiff' title: AssetDiffResponse routers__evm__response__JsonRPCParams: properties: from: type: string title: From description: The address the transaction is sent from. to: type: string title: To description: The address the transaction is directed to. value: type: string title: Value description: The value to be sent. data: type: string title: Data description: The data to be sent. gas: type: string title: Gas description: The gas to be sent. gas_price: type: string title: Gas Price description: The gas price to be sent. block_tag: type: string title: Block Tag description: The block tag to be sent. chain: type: string title: Chain description: The chain to be sent. calldata: allOf: - $ref: '#/components/schemas/routers__evm__response__CallData' title: Calldata description: The calldata to be sent. user_operation_calldata: allOf: - $ref: '#/components/schemas/routers__evm__response__CallData' title: User Operation Calldata description: The user operation call data to be sent. type: object title: JsonRPCParams routers__evm__response__ERC1155AssetTrace: properties: trace_type: type: string enum: - AssetTrace title: Trace Type description: type of the trace from_address: type: string title: From Address description: The address where the assets are moved from to_address: type: string title: To Address description: The address where the assets are moved to labels: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__TraceLabels' - type: string type: array title: Labels description: List of labels that describe the trace type: type: string enum: - ERC1155AssetTrace title: Type description: The type of the model asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace diff: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' title: Diff description: The difference in value for the asset in the trace type: object required: - trace_type - from_address - to_address - type - asset - diff title: ERC1155AssetTrace routers__chain_agnostic__models__request__Account: properties: account_id: type: string title: Account Id description: Unique identifier for the account. account_creation_timestamp: type: string format: date-time title: Account Creation Timestamp description: Timestamp when the account was created. user_age: type: integer exclusiveMinimum: 0.0 title: User Age description: Age of the user in years user_country_code: type: string title: User Country Code description: ISO country code of the user's location. account_addresses: items: type: string type: array title: Account Addresses description: 'List of all account addresses in different chains based on the CAIPs standard (https://github.com/ChainAgnostic/CAIPs). Ethereum mainnet example: eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb' type: object required: - account_id title: Account routers__evm__response__USDDiff: properties: in: type: string title: In out: type: string title: Out total: type: string title: Total type: object required: - in - out - total title: USDDiff TransactionHint: oneOf: - $ref: '#/components/schemas/CrossChainBridgeHint' - $ref: '#/components/schemas/GenericTransactionHint' discriminator: propertyName: type mapping: cross_chain_bridge: '#/components/schemas/CrossChainBridgeHint' title: TransactionHint description: A single customer-supplied hint about transaction intent. The `type` field identifies which hint variant this is. CrossChainBridgeNativeAsset: type: object required: - type properties: type: type: string const: NATIVE title: Type description: Type of the asset (`NATIVE`) default: NATIVE raw_value: type: string description: Amount to be received in the asset's smallest unit (before decimal division), e.g. wei for ETH. title: CrossChainBridgeNativeAsset routers__evm__session_keys__TransferPolicy: properties: type: type: string enum: - TRANSFER_POLICY title: Type default: TRANSFER_POLICY asset_details: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' title: Asset Details value_limit: type: string title: Value Limit recipient: type: string title: Recipient type: object required: - asset_details title: TransferPolicy routers__evm__response__ERC721AssetTrace: properties: trace_type: type: string enum: - AssetTrace title: Trace Type description: type of the trace from_address: type: string title: From Address description: The address where the assets are moved from to_address: type: string title: To Address description: The address where the assets are moved to labels: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__TraceLabels' - type: string type: array title: Labels description: List of labels that describe the trace type: type: string enum: - ERC721AssetTrace title: Type description: The type of the model asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace diff: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC721Diff' title: Diff description: The difference in value for the asset in the trace type: object required: - trace_type - from_address - to_address - type - asset - diff title: ERC721AssetTrace routers__evm__response__CallData: properties: function_selector: type: string title: Function Selector description: The function selector of the function called in the transaction function_signature: type: string title: Function Signature description: The function signature of the function called in the transaction function_declaration: type: string title: Function Declaration description: The function declaration of the function called in the transaction type: object required: - function_selector title: CallData routers__evm__models__UserOperationV7GasEstimation: properties: status: type: string enum: - Success title: Status pre_verification_gas_estimate: type: string title: Pre Verification Gas Estimate verification_gas_estimate: type: string title: Verification Gas Estimate call_gas_estimate: type: string title: Call Gas Estimate paymaster_verification_gas_estimate: type: string title: Paymaster Verification Gas Estimate type: object required: - status - pre_verification_gas_estimate - verification_gas_estimate - call_gas_estimate - paymaster_verification_gas_estimate title: UserOperationV7GasEstimation routers__evm__response__NativeDiff: properties: usd_price: type: string title: Usd Price description: usd equal of the asset that was transferred from this address summary: type: string title: Summary description: user friendly description of the asset transfer value: type: string title: Value description: value after divided by decimals, that was transferred from this address raw_value: type: string title: Raw Value description: value before divided by decimal, that was transferred from this address type: object required: - raw_value title: NativeDiff routers__evm__response__ERC1155BalanceChanges: properties: before: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' title: Before description: balance of the account before making the transaction after: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC1155Diff' title: After description: balance of the account after making the transaction type: object required: - before - after title: ERC1155BalanceChanges routers__evm__response__NativeAsset: properties: type: type: string enum: - NATIVE title: Type description: The type of the model details: allOf: - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Details description: Details type: object required: - type - details title: NativeAsset ReportRequest_TransactionReportParams_: properties: event: allOf: - $ref: '#/components/schemas/EventEnum' description: The event type of the report. Could be `FALSE_POSITIVE` or `FALSE_NEGATIVE`. report: anyOf: - $ref: '#/components/schemas/ParamReport_TransactionReportParams_' - $ref: '#/components/schemas/RequestIDReport' title: Report description: Parameters identifying the transaction to report, provided either as transaction details (chain, account address, and transaction data) or as a request ID from a previous scan. details: type: string title: Details description: Details about the report. type: object required: - event - report - details title: ReportRequest[TransactionReportParams] Spender: properties: address: type: string title: Address features: items: $ref: '#/components/schemas/Feature' type: array title: Features label: type: string title: Label description: Alias name of the spender, if known type: object required: - address - label title: Spender UserOperationRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or more of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. "gas_estimation" - include gas estimation result in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false account_address: type: string pattern: ^(0x[0-9A-Fa-f]{40}|)$ title: Account Address description: The address of the account (wallet) sending the request in hex string format default: '' data: allOf: - $ref: '#/components/schemas/UserOperationData' title: Data description: The user operation request that was received by the wallet should_calculate_missing_balance: type: boolean title: Should Calculate Missing Balance description: For simulations, determine whether to calculate missing balances in user operations. default: false type: object required: - chain - metadata - data title: UserOperationRequest ParamReport_ChainTransactionHashParams_: properties: type: type: string enum: - params title: Type params: $ref: '#/components/schemas/ChainTransactionHashParams' type: object required: - type - params title: ParamReport[ChainTransactionHashParams] routers__evm__response__ERC20Asset: properties: type: type: string enum: - ERC20 title: Type description: The type of the model details: allOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' title: Details description: Details type: object required: - type - details title: ERC20Asset routers__evm__response__SetCodeAccountManagement: properties: type: type: string enum: - SET_CODE_ACCOUNT title: Type description: The type of the state change delegated_address: type: string title: Delegated Address description: The delegated address type: object required: - type - delegated_address title: SetCodeAccountManagement routers__evm__response__BridgeAssetTrace: properties: type: type: string const: BridgeAssetTrace title: Type description: The type of the trace bridge_type: anyOf: - type: string - type: 'null' title: Bridge Type description: The type of bridge protocol (e.g. hyperliquid, hyperliquid_l1_transfer) display_name: anyOf: - type: string - type: 'null' title: Display Name description: Human-readable name for the bridge (e.g. Hyperliquid Bridge) logo_url: anyOf: - type: string - type: 'null' title: Logo Url description: URL to the bridge protocol logo source: anyOf: - $ref: '#/components/schemas/routers__evm__response__GeneralAssetDiff' - type: 'null' title: Source description: The source asset diff of the bridge transaction destinations: anyOf: - items: $ref: '#/components/schemas/routers__evm__response__GeneralAssetDiff' type: array - type: 'null' title: Destinations description: The destination asset diffs of the bridge transaction type: object required: - type title: BridgeAssetTrace description: Trace of a cross-chain bridge asset transfer, showing source and destination asset movements EventEnum: type: string enum: - FALSE_POSITIVE - FALSE_NEGATIVE title: EventEnum routers__evm__response__ERC721Asset: properties: type: type: string enum: - ERC721 title: Type description: The type of the model token_id: type: integer title: Token Id description: Token Id details: allOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' title: Details description: Details type: object required: - type - token_id - details title: ERC721Asset ValidateAddress: properties: metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. chain: $ref: '#/components/schemas/TransactionScanSupportedChains' address: type: string pattern: ^0x[0-9A-Fa-f]{40}$ title: Address description: The address to validate. type: object required: - metadata - chain - address title: ValidateAddress GenericTransactionHint: type: object required: - type properties: type: type: string title: Type description: Hint type identifier for unrecognized or future hint types. title: GenericTransactionHint description: Fallback for unrecognized or future hint types. Accepts any hint with a `type` field. routers__evm__transaction__models__Transaction: properties: from: type: string title: From description: The source address of the transaction in hex string format to: type: string title: To description: The destination address of the transaction in hex string format default: 0x data: type: string title: Data description: The encoded call data of the transaction in hex string format default: 0x value: type: string title: Value description: The value of the transaction in Wei in hex string format default: '0x0' gas: type: string title: Gas description: The gas required for the transaction in hex string format. gas_price: type: string title: Gas Price description: The gas price for the transaction in hex string format. authorization_list: items: $ref: '#/components/schemas/Authorization' type: array title: Authorization List description: The authorization list type: object required: - from title: Transaction ValidateBulkAddresses: properties: metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. chain: $ref: '#/components/schemas/TransactionScanSupportedChains' addresses: items: type: string type: array title: Addresses description: List of addresses to validate. type: object required: - metadata - chain - addresses title: ValidateBulkAddresses routers__evm__response__TransactionScanFeature: properties: type: allOf: - $ref: '#/components/schemas/routers__evm__response__TransactionScanFeatureType' description: Type/severity feature_id: type: string title: Feature Id description: Feature name description: type: string title: Description description: Textual description address: type: string title: Address description: Address the feature refers to metadata: type: object title: Metadata description: Metadata related to the feature type: object required: - type - feature_id - description title: TransactionScanFeature routers__evm__response__ERC1155Diff: properties: usd_price: type: string title: Usd Price description: usd equal of the asset that was transferred from this address summary: type: string title: Summary description: user friendly description of the asset transfer token_id: type: string title: Token Id description: id of the token value: type: string title: Value description: value before divided by decimal, that was transferred from this address arbitrary_collection_token: type: boolean title: Arbitrary Collection Token description: Indicates whether the token ID represents an arbitrary token from a collection, unpredictable while running the simulation logo_url: type: string title: Logo Url description: url of the token logo type: object required: - token_id - value - arbitrary_collection_token title: ERC1155Diff Authorization: properties: address: type: string title: Address description: The delegation designation address chainId: type: string title: Chainid description: The chain ID as hex string nonce: type: string title: Nonce description: The nonce value as hex string yParity: type: string title: Yparity description: The yParity value as hex string r: type: string title: R description: The r value as hex string s: type: string title: S description: The s value as hex string eoa: type: string title: Eoa description: The authority address of the delegation, should be provided when the signature (r,s,yParity) is not provided in order to simulate the transaction with the correct delegation type: object required: - address title: Authorization routers__evm__response__TransactionSimulation: properties: status: type: string enum: - Success title: Status description: A string indicating if the simulation was successful or not. assets_diffs: additionalProperties: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC20AddressAssetDiff' - $ref: '#/components/schemas/routers__evm__response__ERC721AddressAssetDiff' - $ref: '#/components/schemas/routers__evm__response__ERC1155AddressAssetDiff' - $ref: '#/components/schemas/routers__evm__response__NativeAddressAssetDiff' type: array type: object title: Assets Diffs description: dictionary describes the assets differences as a result of this transaction for every involved address transaction_actions: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__TransactionAction' - type: string type: array title: Transaction Actions description: Describes the nature of the transaction and what happened as part of it total_usd_diff: additionalProperties: $ref: '#/components/schemas/routers__evm__response__USDDiff' type: object title: Total Usd Diff description: dictionary represents the usd value each address gained / lost during this transaction exposures: additionalProperties: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ERC20AddressExposure' - $ref: '#/components/schemas/routers__evm__response__ERC721AddressExposure' - $ref: '#/components/schemas/routers__evm__response__ERC1155AddressExposure' type: array type: object title: Exposures description: dictionary describes the exposure differences as a result of this transaction for every involved address (as a result of any approval / setApproval / permit function) total_usd_exposure: additionalProperties: additionalProperties: type: string type: object type: object title: Total Usd Exposure description: a dictionary representing the usd value each address is exposed to, split by spenders address_details: additionalProperties: $ref: '#/components/schemas/routers__evm__response__AddressDetails' type: object title: Address Details description: a dictionary including additional information about each relevant address in the transaction. account_summary: allOf: - $ref: '#/components/schemas/routers__evm__response__AccountSummary' title: Account Summary description: Account summary for the account address. account address is determined implicit by the `from` field in the transaction request, or explicit by the account_address field in the request. params: allOf: - $ref: '#/components/schemas/routers__evm__response__JsonRPCParams' title: Params description: The parameters of the transaction that was simulated. contract_management: additionalProperties: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__ProxyUpgradeManagement' - $ref: '#/components/schemas/routers__evm__response__OwnershipChangeManagement' - $ref: '#/components/schemas/routers__evm__response__ModulesChangeManagement' - $ref: '#/components/schemas/routers__evm__response__SetCodeAccountManagement' - $ref: '#/components/schemas/routers__evm__response__ContractCreation' type: array type: object title: Contract Management description: Describes the state differences as a result of this transaction for every involved address session_key: additionalProperties: items: $ref: '#/components/schemas/routers__evm__session_keys__SessionKey' type: array type: object title: Session Key description: Session keys created in this transaction per address missing_balances: items: $ref: '#/components/schemas/routers__evm__response__MissingBalance' type: array title: Missing Balances description: Missing balances in the transaction simulation_run_count: type: integer title: Simulation Run Count description: The number of times the simulation ran until success cross_chain_asset_diffs: anyOf: - items: $ref: '#/components/schemas/routers__evm__response__CrossChainAssetDiffs' type: array - type: 'null' title: Cross Chain Asset Diffs description: Cross-chain asset diffs per address, showing asset movements across different chains (e.g. bridge transactions) type: object required: - status - assets_diffs - transaction_actions - total_usd_diff - exposures - total_usd_exposure - address_details - account_summary - session_key title: TransactionSimulation routers__evm__response__NonFungibleTokenBalance: properties: token_id: type: string title: Token Id amount: type: integer title: Amount usd_price: type: number title: Usd Price is_mint: type: boolean title: Is Mint default: false logo_url: type: string title: Logo Url type: object required: - token_id - amount title: NonFungibleTokenBalance routers__evm__response__FungibleTokenBalance: properties: raw_value: type: string title: Raw Value value: type: number title: Value usd_price: type: number title: Usd Price type: object required: - raw_value title: FungibleTokenBalance routers__evm__response__GeneralInsufficientFundsErrorDetails: properties: code: type: string enum: - GENERAL_INSUFFICIENT_FUNDS title: Code description: The type of the model category: type: string const: REVERT title: Category default: REVERT account_address: type: string title: Account Address description: The address of the account current_balance: type: string title: Current Balance description: The current balance of the account required_balance: type: string title: Required Balance description: The required balance of the account asset: anyOf: - $ref: '#/components/schemas/routers__evm__response__NativeAsset' - $ref: '#/components/schemas/routers__evm__response__ERC20Asset' - $ref: '#/components/schemas/routers__evm__response__ERC721Asset' - $ref: '#/components/schemas/routers__evm__response__ERC1155Asset' title: Asset description: The asset that the account does not have enough balance for type: object required: - code - account_address - asset title: GeneralInsufficientFundsErrorDetails ValidateBulkExtendedAddress: properties: address: type: string title: Address description: Address to validate. label: type: string title: Label description: Label of the address. validation: allOf: - $ref: '#/components/schemas/AddressValidationExtended' title: Validation description: Validation result. type: object required: - address - label - validation title: ValidateBulkExtendedAddress routers__evm__response__ERC721Exposure: properties: exposure: items: $ref: '#/components/schemas/routers__evm__response__AssetDiffResponse' type: array title: Exposure summary: type: string title: Summary description: user friendly description of the approval is_approved_for_all: type: boolean title: Is Approved For All description: boolean indicates whether an is_approved_for_all function was used (missing in case of ERC20 / ERC1155) type: object required: - exposure - is_approved_for_all title: ERC721Exposure ValidateBulkExtendedAddressesResponse: properties: results: items: $ref: '#/components/schemas/ValidateBulkExtendedAddress' type: array title: Results type: object required: - results title: ValidateBulkExtendedAddressesResponse JsonRpcSupportedMethod: type: string enum: - eth_sendTransaction - eth_sendRawTransaction - eth_signTransaction - eth_signTypedData - eth_signTypedData_v1 - eth_signTypedData_v2 - eth_signTypedData_v3 - eth_signTypedData_v4 - eth_sendUserOperation - personal_sign - eth_sign - wallet_sendCalls title: JsonRpcSupportedMethod description: Supported JSON-RPC methods that can be scanned. routers__evm__response__NativeAddressAssetBalanceChangeDiff: properties: asset_type: type: string enum: - NATIVE title: Asset Type description: type of the asset for the current diff asset: allOf: - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__NativeDiff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__NativeDiff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction balance_changes: allOf: - $ref: '#/components/schemas/routers__evm__response__NativeBalanceChanges' title: Balance Changes description: shows the balance before making the transaction and after type: object required: - asset_type - asset - in - out title: NativeAddressAssetBalanceChangeDiff RawTransactionRequest: properties: chain: allOf: - $ref: '#/components/schemas/ChainParam' title: Chain description: The chain name or chain ID options: items: $ref: '#/components/schemas/routers__evm__models__ValidationOptions' type: array minItems: 1 uniqueItems: true description: List of one or more of options for the desired output. "simulation" - include simulation output in your response. "validation" - include security validation of the transaction in your response. "gas_estimation" - include gas estimation result in your response. Default is ["validation"] default: - validation metadata: allOf: - $ref: '#/components/schemas/ScanRequestMetadata' title: Metadata description: Additional context for the scan (e.g., dapp URL/domain, integration source). Used to enrich results and reduce false positives/negatives. block: anyOf: - type: integer - type: string pattern: ^(0[Xx][0-9A-Fa-f]+|-?[1-9][0-9]*|latest)$ title: Block description: The relative block for the block validation. Can be "latest" or a block number. default: latest state_override: additionalProperties: $ref: '#/components/schemas/routers__evm__models__AddressStateOverride' type: object title: State Override description: Override the state of the chain. This is useful for testing purposes. simulate_with_estimated_gas: type: boolean title: Simulate With Estimated Gas description: Simulate transactions using gas estimation result. This requires "gas_estimation" option to be enabled. default: false account_address: type: string title: Account Address description: The address to relate the transaction to. Account address determines in which perspective the transaction is simulated and validated. data: type: string pattern: ^0[Xx][0-9A-Fa-f]+$ title: Data description: Hex string of the raw transaction data transaction_hints: $ref: '#/components/schemas/TransactionHints' title: Transaction Hints description: Optional customer-supplied hints about transaction intent that cannot be inferred from on-chain simulation. type: object required: - chain - metadata - account_address - data title: RawTransactionRequest ApprovalsSupportedChains: type: string enum: - ethereum - polygon - bsc - avalanche - arbitrum - base - linea - kaia - optimism title: ApprovalsSupportedChains description: Supported chain identifiers for the approvals endpoints. routers__evm__models__Connection: properties: user_agent: type: string title: User Agent description: User agent string from the client's browser or application. ip_address: type: string format: ipvanyaddress title: Ip Address description: IP address of the customer making the request. Both IPv4 and IPv6 addresses are supported. type: object required: - user_agent - ip_address title: Connection Exposure: properties: raw_value: type: string title: Raw Value usd_price: type: string title: Usd Price value: type: string title: Value type: object required: - raw_value - value title: Exposure routers__evm__response__CrossChainAssetDiffObject: properties: chain: type: string title: Chain description: The chain identifier where the asset exists asset_type: type: string title: Asset Type description: The type of the asset (e.g. ERC20, NATIVE, FUNGIBLE) asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__ERC1155TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NativeAssetDetails' title: Asset description: Details of the asset involved in the diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: In description: Asset value changes received on this chain out: items: $ref: '#/components/schemas/routers__evm__response__ERC20Diff' type: array title: Out description: Asset value changes sent from this chain type: object required: - chain - asset_type - asset - in - out title: CrossChainAssetDiffObject description: An asset diff on a specific chain, with in/out value changes routers__evm__response__TransactionScanFeatureType: type: string enum: - Malicious - Warning - Benign - Info title: TransactionScanFeatureType description: Security result of a transaction scan feature. routers__evm__response__ERC20AssetTrace: properties: trace_type: type: string enum: - AssetTrace title: Trace Type description: type of the trace from_address: type: string title: From Address description: The address where the assets are moved from to_address: type: string title: To Address description: The address where the assets are moved to labels: items: anyOf: - $ref: '#/components/schemas/routers__evm__response__TraceLabels' - type: string type: array title: Labels description: List of labels that describe the trace type: type: string enum: - ERC20AssetTrace title: Type description: The type of the model asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC20TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: Description of the asset in the trace diff: allOf: - $ref: '#/components/schemas/routers__evm__response__ERC20Diff' title: Diff description: The difference in value for the asset in the trace type: object required: - trace_type - from_address - to_address - type - asset - diff title: ERC20AssetTrace ChainTransactionHashParams: properties: chain: allOf: - $ref: '#/components/schemas/TransactionScanSupportedChains' description: The chain name tx_hash: type: string title: Tx Hash description: The transaction hash to report on. type: object required: - chain - tx_hash title: ChainTransactionHashParams ReportRequest_EVMAddressReportParams_: properties: event: allOf: - $ref: '#/components/schemas/EventEnum' description: The event type of the report. Could be `FALSE_POSITIVE` or `FALSE_NEGATIVE`. report: anyOf: - $ref: '#/components/schemas/ParamReport_EVMAddressReportParams_' - $ref: '#/components/schemas/RequestIDReport' title: Report description: Parameters identifying the address to report, provided either as address details (address, domain, and chain) or as a request ID from a previous scan. details: type: string title: Details description: Details about the report. type: object required: - event - report - details title: ReportRequest[EVMAddressReportParams] routers__evm__response__ERC721AddressAssetDiff: properties: asset_type: type: string enum: - ERC721 title: Asset Type description: type of the asset for the current diff asset: anyOf: - $ref: '#/components/schemas/routers__evm__token_details__ERC721TokenDetails' - $ref: '#/components/schemas/routers__evm__token_details__NONERCTokenDetails' title: Asset description: description of the asset for the current diff in: items: $ref: '#/components/schemas/routers__evm__response__ERC721Diff' type: array title: In description: amount of the asset that was transferred to the address in this transaction out: items: $ref: '#/components/schemas/routers__evm__response__ERC721Diff' type: array title: Out description: amount of the asset that was transferred from the address in this transaction type: object required: - asset_type - asset - in - out title: ERC721AddressAssetDiff routers__evm__models__Account: properties: account_id: type: string title: Account Id created: type: string format: date-time title: Created age_in_years: type: integer exclusiveMinimum: 0.0 title: Age In Years user_country_code: type: string title: User Country Code type: object required: - account_id - user_country_code title: Account securitySchemes: APIKey: type: apiKey name: X-API-Key in: header ClientID: type: apiKey name: X-CLIENT-ID in: header JWT: type: http scheme: bearer bearerFormat: JWT description: Bearer authentication header of the form `Bearer `, where `` is your auth token. See [API Authentication](/docs/api-reference/before-you-begin/api-authentication) for how to retrieve it.