useRequestFaucet hook handles the request and returns the transaction details once tokens are sent.
Use this guide before running Sepolia examples that send ETH, transfer ERC-20 tokens, or write to contracts. The faucet sends testnet ETH to a Para EVM wallet so your first integration transactions have gas.
Fund the Active Wallet
The simplest usage funds whichever wallet is currently active. This works well right after wallet creation:Calling
requestFaucetAsync() without a walletId requires an active wallet. If no active wallet is set and no walletId is passed, the hook throws an error.Fund a Specific Wallet
Pass an explicitwalletId to target a particular wallet:
Direct SDK Method
For framework-agnostic Web SDK or Server SDK integrations, callrequestFaucet after you have the Para wallet ID:
chain to use the default Ethereum Sepolia faucet. Wait for the returned transactionHash to confirm before assuming the funds are spendable.
With @getpara/rest-sdk, call client.requestFaucet({ walletId, chain: "ETHEREUM_SEPOLIA" }) with the same request body.
Supported Chains
| Chain | Identifier | Token |
|---|---|---|
| Ethereum Sepolia | ETHEREUM_SEPOLIA | ETH |
The faucet is rate limited to 10 requests per API key per day. Each wallet has a 24-hour cooldown between faucet requests.
Error Handling
The hook surfaces errors through the standarderror field on the mutation result. Common error scenarios:
| Status | Cause |
|---|---|
400 | Invalid request (missing walletId, unsupported chain, or no address) |
403 | Missing or invalid API key |
404 | Wallet not found (also returned when the wallet belongs to a different API key) |
429 | Rate limit exceeded or wallet cooldown active |
500 | Faucet transaction failed |