For the complete documentation index, see llms.txt. This page is also available as Markdown.

requestAirdrop - Solana

Example code for the requestAirdrop JSON-RPC method. Complete guide on how to use the requestAirdrop JSON-RPC method in the GetBlock Web3 documentation.

This method requests lamports from the cluster faucet and returns the resulting transaction signature. Airdrops are available on Devnet and Testnet only.

Parameters

Parameter
Type
Required
Description

pubkey

string

Yes

Base58-encoded Pubkey of the account to fund

lamports

number

Yes

Amount to request, in lamports

config

object

No

Configuration object controlling commitment

Config Object

Field
Type
Required
Description

commitment

string

No

Commitment level: processed, confirmed, or finalized. Defaults to finalized

Request

curl --location --request POST 'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "requestAirdrop",
    "params": ["JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", 1000000000],
    "id": "getblock.io"
}'
example.js
const { Connection, PublicKey, LAMPORTS_PER_SOL } = require('@solana/web3.js');

const connection = new Connection('https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/', 'confirmed');

const airdropSignature = await connection.requestAirdrop(
  new PublicKey('JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4'),
  LAMPORTS_PER_SOL
);

console.log(airdropSignature);
example.py
import requests

response = requests.post(
    'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/',
    headers={'Content-Type': 'application/json'},
    json={
        'jsonrpc': '2.0',
        'method': 'requestAirdrop',
        'params': ["JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", 1000000000],
        'id': 'getblock.io'
    }
)

print(response.json()['result'])

Response

Response Parameters

Parameter
Type
Description

jsonrpc

string

JSON-RPC protocol version ("2.0")

id

string

Request identifier matching the request

result

string

Base58-encoded signature of the airdrop transaction

Use Cases

  • Test Funding: Fund a fresh keypair before running an integration test suite

  • CI Pipelines: Top up a deployer account at the start of a Devnet workflow

  • Workshop Setup: Seed participant wallets during a live developer session

  • Program Testing: Fund PDAs and fee payers before invoking a deployed program

Error Handling

Error Code
Message
Description

-32602

Invalid params

Requested amount exceeds the faucet cap or the Pubkey is malformed

-32603

Internal error

Faucet is unavailable or rate limiting the request

-32601

Method not found

Airdrops are disabled on Mainnet Beta

Last updated

Was this helpful?