KEY_ID with your key ID and RECORD_ID with the policy.recordId from the create response. Users grant or decline consent through Para; see the React and React Native guides to handle it in your app.
Amounts are integer strings in base units: wei for ETH (18 decimals) and 6 decimals for USDC.
10000000000000000 is 0.01 ETH, and 100000000 is 100 USDC.Small native transfers without a prompt
Lets the app send small amounts of ETH on Base without asking each time. Once the user approves the Request, transfers up to 0.01 ETH sign directly. Larger transfers go to user review.- Developer Portal
- CLI
- Open Permissions for your Development key, select the Requests tab, and select Add (or New Request if Requests already exist).
- In User consent request language, enter
Send up to 0.01 ETH per transfer on Base. Under Networks, select Base (8453), then select Continue. - Set the action to Transfer ETH. Select Add Condition, choose Transaction amount and is at most, enter
0.01with the unit set to ETH, and keep per transaction. - Select Review, then Save Draft. Select Activate on the draft.
Daily USDC allowance
Gives the app a daily USDC budget on Base. After the user approves the Request, USDC transfers sign directly while the 24-hour total stays at or below 100 USDC. Transfers beyond that total, and transfers of other tokens, go to user review.- Developer Portal
- CLI
- Open Permissions for your Development key, select the Requests tab, and select Add (or New Request).
- In User consent request language, enter
Send up to 100 USDC per day on Base. Under Networks, select Base (8453), then select Continue. - Set the action to Transfer tokens and enter
0x833589fcd6edb6e08f4c7c32d4f71b54bda02913in Contract Address. Function Name is fixed totransfer. - Select Add Condition, choose Transaction amount, and set the rate to per time window with
1days. Choose is at most and enter100000000in token base units. - Select Review, then Save Draft. Select Activate on the draft.
The window is a fixed 24-hour budget per network and token. Smart account user operations do not count toward it, except ERC-20 transfers sent through Para gas sponsorship.
solana:token:<mint>. Sui has no token transfer action.
Transfers to known recipients
Covers ETH transfers on Base to a fixed list of addresses. After the user approves the Request, those transfers sign without a prompt. Transfers to any other address go to user review.- Developer Portal
- CLI
- Open Permissions for your Development key, select the Requests tab, and select Add (or New Request).
- In User consent request language, enter
Send ETH on Base to approved recipients. Under Networks, select Base (8453), then select Continue. - Set the action to Transfer ETH. Select Add Condition, choose Recipient address and is one of, and enter the addresses in lowercase, separated by commas.
- Select Review, then Save Draft. Select Activate on the draft.
Standing access to your app’s contracts
Covers one function on your contract, such as minting from your collection. Once the user approves the Request, calls tomint on that contract sign directly. Calls to other functions or contracts go to user review.
- Developer Portal
- CLI
- Open Permissions for your Development key, select the Requests tab, and select Add (or New Request).
- In User consent request language, enter
Mint items from our contract on Base. Under Networks, select Base (8453), then select Continue. - Set the action to Call a contract. Enter your contract in Contract Address in lowercase, and enter
mintin Function Name. - To cover another function or contract, select Add Action and repeat step 3.
- Select Review, then Save Draft. Select Activate on the draft.
Para matches the function by decoding the call with the contract’s verified ABI from the network’s block explorer. If Para cannot decode a call, for example because the contract is not verified, the call does not match and goes to user review.
Co-signer approval above a threshold
Sends large ETH transfers on Base to a co-signer instead of the wallet owner. Once the user approves the Request, a transfer above 0.1 ETH signs after one person with thecosigner role approves it. Transfers of 0.1 ETH or less are not covered and go to user review.
The Developer Portal forms cannot express approval requirements, so publish this template with the CLI. Para must enable conditional approvals for your app first; until then, validation rejects the policy.
- CLI
request-cosigner-approval.json
cosigner role and binds the wallet to the authorization scope that holds that assignment; see permissions administration. The person who starts the transfer cannot approve it, so the co-signer must be a different user. To let smaller transfers sign without a prompt, add the rule from the first template to this policy. See conditional approvals to build the approver experience.
User-adjustable daily limit
Lets the user choose how much ETH the app can send on Base each day. Once the user approves the Request, native transfers sign directly while the 24-hour total stays within the user’s limit, which starts at 0.05 ETH. Transfers beyond it go to user review. The Developer Portal forms cannot declare adjustable amounts, so publish this template with the CLI. Para must enable user-adjustable limits for your app first; until then, validation rejects the policy.- CLI
request-adjustable-daily-limit.json
parameter makes the 24-hour amount adjustable, and value is its default. The default is not a ceiling: the user can choose any non-negative integer amount in wei. Para’s consent screen shows an input for the limit, and your app can read and update it for the signed-in user. See adjust personal limits for React. React Native apps open the same hosted consent flow; see open standalone permissions flows. The JSON reference lists the other amounts you can make adjustable.