{"schema":"RECTA_AGENT_WALLET_POLICY_V1","purpose":"An allowlist for agent wallets with a policy engine: load it before your first Recta decision, so the routes Recta recommends are not refused as unknown contracts. Recta never holds your keys or funds: your agent signs and sends every transaction itself.","how_to_use":["Allow only the networks you move value on; each entry below is an EVM origin Recta serves.","Allow the ERC-20 approvals listed for a network only to the listed spenders, and only for the exact amount of the transfer (Recta never commits an unlimited approval).","Allow calls to the listed call_targets on that network. A Recta decision names the exact contract of every transaction it commits: if it is not in this list, refuse it.","Keep your own recipient allowlist and daily outflow cap: Recta's bridge transactions deliver to the recipient YOUR request names.","For Recta's fee, allow one Permit2 signature on Base with the spender and recipient in recta_fee; nothing else."],"networks":[{"network":"arbitrum","chain_id":42161,"approvals":[{"asset":"USDC","token":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0xe35e9842fceaca96570b734083f4a58e8f7c5f2a","0xe8cdf27acd73a434d661c84887215f7598e7d0d3","0xef4fb24ad0916217251f553c0596f8edc630eb66"]},{"asset":"USDT","token":"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9","exact_amount_only":true,"spenders":["0x77652d5aba086137b595875263fc200182919b92","0xce8cca271ebc0533920c83d39f417ed6a0abb7d0","0xe35e9842fceaca96570b734083f4a58e8f7c5f2a"]}],"call_targets":[{"address":"0x14e4a1b13bf7f943c8ff7c51fb60fa964a298d92","protocols":["usdt0"],"assets":["USDT"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x77652d5aba086137b595875263fc200182919b92","protocols":["usdt0"],"assets":["USDT"]},{"address":"0xce8cca271ebc0533920c83d39f417ed6a0abb7d0","protocols":["stargate_v2"],"assets":["USDT"]},{"address":"0xe35e9842fceaca96570b734083f4a58e8f7c5f2a","protocols":["across"],"assets":["USDC","USDT"]},{"address":"0xe8cdf27acd73a434d661c84887215f7598e7d0d3","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"arc","chain_id":5042,"approvals":[{"asset":"USDC","token":"0x3600000000000000000000000000000000000000","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x9b4a302a548c7e313c2b74c461db7b84d3074a84"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x9b4a302a548c7e313c2b74c461db7b84d3074a84","protocols":["across"],"assets":["USDC"]}]},{"network":"avalanche","chain_id":43114,"approvals":[{"asset":"USDC","token":"0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x5634c4a5fed09819e3c46d86a965dd9447d86e47","0xfe9d541c92e4e90437c7152a00244886de37a658"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x5634c4a5fed09819e3c46d86a965dd9447d86e47","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0xfe9d541c92e4e90437c7152a00244886de37a658","protocols":["across"],"assets":["USDC"]}]},{"network":"base","chain_id":8453,"approvals":[{"asset":"USDC","token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","exact_amount_only":true,"spenders":["0x09aea4b2242abc8bb4bb78d537a67a245a7bec64","0x27a16dc786820b16e5c9028b75b99f6f604b5d26","0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0xef4fb24ad0916217251f553c0596f8edc630eb66"]}],"call_targets":[{"address":"0x09aea4b2242abc8bb4bb78d537a67a245a7bec64","protocols":["across"],"assets":["USDC"]},{"address":"0x27a16dc786820b16e5c9028b75b99f6f604b5d26","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"bnb_chain","chain_id":56,"approvals":[{"asset":"USDC_BINANCE_PEG","token":"0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d","exact_amount_only":true,"spenders":["0x4e8e101924ede233c13e2d8622dc8aed2872d505","0x962bd449e630b0d928f308ce63f1a21f02576057"]},{"asset":"USDT_BINANCE_PEG","token":"0x55d398326f99059ff775485246999027b3197955","exact_amount_only":true,"spenders":["0x138eb30f73bc423c6455c53df6d89cb01d9ebc63","0x4e8e101924ede233c13e2d8622dc8aed2872d505"]}],"call_targets":[{"address":"0x138eb30f73bc423c6455c53df6d89cb01d9ebc63","protocols":["stargate_v2"],"assets":["USDT_BINANCE_PEG"]},{"address":"0x4e8e101924ede233c13e2d8622dc8aed2872d505","protocols":["across"],"assets":["USDC_BINANCE_PEG","USDT_BINANCE_PEG"]},{"address":"0x962bd449e630b0d928f308ce63f1a21f02576057","protocols":["stargate_v2"],"assets":["USDC_BINANCE_PEG"]}]},{"network":"ethereum","chain_id":1,"approvals":[{"asset":"USDC","token":"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x5c7bcd6e7de5423a257d81b442095a1a6ced35c5","0xc026395860db2d07ee33e05fe50ed7bd583189c7","0xef4fb24ad0916217251f553c0596f8edc630eb66"]},{"asset":"USDG","token":"0xe343167631d89b6ffc58b88d6b7fb0228795491d","exact_amount_only":true,"spenders":["0x5c7bcd6e7de5423a257d81b442095a1a6ced35c5"]},{"asset":"USDT","token":"0xdac17f958d2ee523a2206206994597c13d831ec7","exact_amount_only":true,"spenders":["0x5c7bcd6e7de5423a257d81b442095a1a6ced35c5","0x6c96de32cea08842dcc4058c14d3aaad7fa41dee","0x933597a323eb81cae705c5bc29985172fd5a3973"]}],"call_targets":[{"address":"0x147bde4f997f0d4c7544ed0c55eacf1e5e6bf9c4","protocols":["usdg_oft"],"assets":["USDG"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x5c7bcd6e7de5423a257d81b442095a1a6ced35c5","protocols":["across"],"assets":["USDC","USDG","USDT"]},{"address":"0x6c96de32cea08842dcc4058c14d3aaad7fa41dee","protocols":["usdt0"],"assets":["USDT"]},{"address":"0x933597a323eb81cae705c5bc29985172fd5a3973","protocols":["stargate_v2"],"assets":["USDT"]},{"address":"0xc026395860db2d07ee33e05fe50ed7bd583189c7","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"hyperevm","chain_id":999,"approvals":[{"asset":"USDC","token":"0xb88339cb7199b77e23db6e890353e22632ba630f","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x35e63ea3eb0fb7a3bc543c71fb66412e1f6b0e04"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x35e63ea3eb0fb7a3bc543c71fb66412e1f6b0e04","protocols":["across"],"assets":["USDC"]}]},{"network":"ink","chain_id":57073,"approvals":[{"asset":"USDC","token":"0x2d270e6886d130d724215a266106e6832161eaed","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0xef684c38f94f48775959ecf2012d7e864ffb9dd4"]},{"asset":"USDT","token":"0x0200c29006150606b650577bbe7b6248f58470c1","exact_amount_only":true,"spenders":["0xef684c38f94f48775959ecf2012d7e864ffb9dd4"]}],"call_targets":[{"address":"0x1cb6de532588fca4a21b7209de7c456af8434a65","protocols":["usdt0"],"assets":["USDT"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0xef684c38f94f48775959ecf2012d7e864ffb9dd4","protocols":["across"],"assets":["USDC","USDT"]}]},{"network":"linea","chain_id":59144,"approvals":[{"asset":"USDC","token":"0x176211869ca2b568f2a7d4ee941e073a821ee1ff","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x7e63a5f1a8f0b4d0934b2f2327daed3f6bb2ee75","0xef4fb24ad0916217251f553c0596f8edc630eb66"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x7e63a5f1a8f0b4d0934b2f2327daed3f6bb2ee75","protocols":["across"],"assets":["USDC"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"monad","chain_id":143,"approvals":[{"asset":"USDC","token":"0x754704bc059f8c67012fed69bc8a327a5aafb603","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0xd2ecb3afe598b746f8123cae365a598da831a449"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0xd2ecb3afe598b746f8123cae365a598da831a449","protocols":["across"],"assets":["USDC"]}]},{"network":"optimism","chain_id":10,"approvals":[{"asset":"USDC","token":"0x0b2c639c533813f4aa9d7837caf62653d097ff85","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x6f26bf09b1c792e3228e5467807a900a503c0281","0xce8cca271ebc0533920c83d39f417ed6a0abb7d0","0xef4fb24ad0916217251f553c0596f8edc630eb66"]},{"asset":"USDT_OP_BRIDGED","token":"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58","exact_amount_only":true,"spenders":["0x19cfce47ed54a88614648dc3f19a5980097007dd","0x6f26bf09b1c792e3228e5467807a900a503c0281"]}],"call_targets":[{"address":"0x19cfce47ed54a88614648dc3f19a5980097007dd","protocols":["stargate_v2"],"assets":["USDT_OP_BRIDGED"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x6f26bf09b1c792e3228e5467807a900a503c0281","protocols":["across"],"assets":["USDC","USDT_OP_BRIDGED"]},{"address":"0xce8cca271ebc0533920c83d39f417ed6a0abb7d0","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"polygon","chain_id":137,"approvals":[{"asset":"USDC","token":"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359","exact_amount_only":true,"spenders":["0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","0x9295ee1d8c5b022be115a2ad3c30c72e34e7f096","0x9aa02d4fae7f58b8e8f34c66e756cc734dac7fe4","0xef4fb24ad0916217251f553c0596f8edc630eb66"]},{"asset":"USDT","token":"0xc2132d05d31c914a87c6611c10748aeb04b58e8f","exact_amount_only":true,"spenders":["0x9295ee1d8c5b022be115a2ad3c30c72e34e7f096","0xd47b03ee6d86cf251ee7860fb2acf9f91b9fd4d7"]}],"call_targets":[{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0x6ba10300f0dc58b7a1e4c0e41f5dabb7d7829e13","protocols":["usdt0"],"assets":["USDT"]},{"address":"0x9295ee1d8c5b022be115a2ad3c30c72e34e7f096","protocols":["across"],"assets":["USDC","USDT"]},{"address":"0x9aa02d4fae7f58b8e8f34c66e756cc734dac7fe4","protocols":["stargate_v2"],"assets":["USDC"]},{"address":"0xd47b03ee6d86cf251ee7860fb2acf9f91b9fd4d7","protocols":["stargate_v2"],"assets":["USDT"]},{"address":"0xef4fb24ad0916217251f553c0596f8edc630eb66","protocols":["debridge"],"assets":["USDC"]}]},{"network":"unichain","chain_id":130,"approvals":[{"asset":"USDC","token":"0x078d782b760474a361dda0af3839290b0ef57ad6","exact_amount_only":true,"spenders":["0x09aea4b2242abc8bb4bb78d537a67a245a7bec64","0x28b5a0e9c621a5badaa536219b3a228c8168cf5d"]},{"asset":"USDT","token":"0x9151434b16b9763660705744891fa906f660ecc5","exact_amount_only":true,"spenders":["0x09aea4b2242abc8bb4bb78d537a67a245a7bec64"]}],"call_targets":[{"address":"0x09aea4b2242abc8bb4bb78d537a67a245a7bec64","protocols":["across"],"assets":["USDC","USDT"]},{"address":"0x28b5a0e9c621a5badaa536219b3a228c8168cf5d","protocols":["cctp_v2"],"assets":["USDC"]},{"address":"0xc07be8994d035631c36fb4a89c918cefb2f03ec3","protocols":["usdt0"],"assets":["USDT"]}]}],"destination_calls":[{"protocol":"cctp_v2","function":"receiveMessage","address":"0x81d40f21f12a8f0e3252bccb954d722d4c464b64","when":"Only if your agent completes a CCTP transfer itself on the EVM destination chain (same address on every CCTP V2 chain)."}],"not_listed":["Relay: Relay builds its own transaction; a Relay decision names its contract and you decide.","Solana, Tron and Bitcoin origins: an EVM contract allowlist does not apply; the decision names the program, contract or vault."],"recta_fee":{"rule":"Recta charges exactly 5 % of the saving it verifies on chain after the agent executes its route. No saving, no charge. No prepayment and no credit: the agent signs, with each decision, a Permit2 authorization capped at `max_fee_authorization`, and Recta's collection pulls only the verified 5 % (never more than the cap) in USDC on Base; the payer's ledger shows whether each fee has been collected yet (`charged`). The evaluation itself is free. So the agent keeps at least 95 % of every saving Recta verifies, and pays nothing when there is none.","network":"base","chain_id":8453,"token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","signature":"Permit2 permitWitnessTransferFrom (x402 v2 scheme upto): a ceiling you sign; the amount pulled is exactly 5 % of the saving Recta verified on chain, never more than the ceiling.","permit2":"0x000000000022d473030f116ddee9f6b43ac78ba3","spender":"0x4020a4f3b7b90cca423b9fabcc0ce57c6c240002","recipient":"0xae866c10e0f2d942da3cddddda082feb65faf108","recipient_note":"The only address a Recta fee can pay. Refuse any fee signature naming another recipient or spender."},"recta_never_asks_for":["a private key or seed phrase","an ERC-20 approval to a Recta address","a direct transfer of funds to Recta","a native-value payment to Recta"],"documents":{"guide":"https://api.recta.build/llms.txt","openapi":"https://api.recta.build/openapi.json"}}