Overview
The delegation endpoints allow you to:- Approve other addresses to spend tokens on behalf of your wallet
- Revoke existing delegations to remove spending permissions
- Check status of active delegations and balances
- Transfer tokens as a delegate from another address
Prerequisites
Before using delegation operations, ensure you have:- A properly initialized Portal client (see Create a client)
- An active wallet with tokens on the target network (see Create a wallet)
- Understanding of token delegations concepts
Approving Delegations
Approving a delegation is a two-step process: build the unsigned transaction with the Client API, then sign and submit it with the Enclave MPC API.Step 1: Build the Approval Transaction
UsePOST /api/v3/clients/me/chains/{chain}/assets/{token}/approvals to build an unsigned approval transaction.
For complete API documentation, see the Client API reference.
- EVM
- Solana
transactions array with unsigned transaction objects:Step 2: Sign and Submit the Transaction
Use the Enclave MPC API to sign and submit the transaction returned in Step 1. For complete API documentation, see the Enclave MPC API reference.- EVM
- Solana
Checking Delegation Status
UseGET /api/v3/clients/me/chains/:chain/assets/:token/delegations to check active delegations and token balances. This is a read-only call that does not require signing.
For complete API documentation, see the Client API reference.
- EVM
- Solana
Revoking Delegations
Revoking follows the same two-step pattern: build the revocation transaction, then sign and submit it.Step 1: Build the Revocation Transaction
UsePOST /api/v3/clients/me/chains/:chain/assets/:token/revocations to build an unsigned revocation transaction.
For complete API documentation, see the Client API reference.
- EVM
- Solana
transactions (EVM) or encodedTransactions (Solana).
Step 2: Sign and Submit the Transaction
Sign and submit the revocation transaction using the same Enclave MPC signing flow shown in the approval step. For complete API documentation, see the Enclave MPC API reference.Transferring as a Delegate
Once an owner has approved your address as a delegate, you can transfer tokens from their wallet to a destination address.Step 1: Build the Transfer Transaction
UsePOST /api/v3/clients/me/chains/:chain/assets/:token/delegations/transfers to build an unsigned transfer-as-delegate transaction.
For complete API documentation, see the Client API reference.
- EVM
- Solana
Step 2: Sign and Submit the Transaction
Sign and submit the transfer transaction using the same Enclave MPC signing flow shown in the approval step. For complete API documentation, see the Enclave MPC API reference.Delegation Roles:
fromAddress is the token owner who approved the delegation. Your wallet (the delegate) signs the transaction to transfer tokens from the owner to the toAddress recipient.Supported Networks
Delegations work on all Portal-supported EVM and Solana chains:- EVM: Ethereum, Polygon, Base, Arbitrum, Optimism, Monad, and all other EVM-compatible chains
- Solana: Solana Mainnet and Devnet
Next Steps
- Learn about signing Ethereum transactions
- Learn about signing Solana transactions
- Review delegation concepts
- Check out the Client API delegation endpoints