How ERC-7715 defines permission scopes that let users grant dapps exactly the access they need — nothing more, nothing less.
Today's dapp permissions are binary:
This is like giving your house keys to every delivery person instead of just buzzing them in.
An ERC-7715 permission has:
{
"type": "erc7715:permission",
"grantee": "0xDappContract...",
"scope": {
"assets": ["USDC", "WETH"],
"contracts": ["0xUniswap..."],
"functions": ["swap", "exactInputSingle"],
"limits": {
"USDC": "1000",
"WETH": "0.5"
}
},
"conditions": {
"timeWindow": {
"start": "09:00",
"end": "17:00",
"timezone": "UTC"
},
"rateLimit": {
"maxTxPerHour": 10
}
},
"expiry": 1709596800
}
| Type | Description | Example |
|---|---|---|
| Asset Scope | Which tokens can be used | Only USDC and ETH |
| Contract Scope | Which contracts can be called | Only Uniswap Router |
| Function Scope | Which functions can be called | Only swap(), not approve() |
| Amount Limits | Max amounts per asset | Max 100 USDC per tx |
| Time Windows | When permission is active | Weekdays 9-5 only |
| Rate Limits | Frequency restrictions | Max 10 tx per hour |
AI agents operating autonomously need guardrails. ERC-7715 lets users define:
Permissions:
- Trade on Uniswap, Sushiswap
- Max $500/day volume
- No withdrawals to external addresses
- Active during market hours only
Permissions:
- Deposit to Aave, Compound
- Max 50% of portfolio at risk
- Withdraw only to owner address
- Rebalance max once per day
Permissions:
- Bid on OpenSea, Blur
- Max 0.5 ETH per bid
- Only specific collections
- Auto-decline if floor drops 20%
ERC-7710 handles the delegation (who can act on your behalf). ERC-7715 handles the permissions (what they can do).
Together:
The result: Autonomous agents with cryptographic guardrails, revocable at any time.