Skip to main content
Request testnet tokens directly through Para without relying on external faucets. The 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 explicit walletId to target a particular wallet:

Direct SDK Method

For framework-agnostic Web SDK or Server SDK integrations, call requestFaucet after you have the Para wallet ID:
Omit 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

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 standard error field on the mutation result. Common error scenarios:
A 429 response includes a Retry-After header indicating when the next request will be accepted.