Skip to main content

Transfer

Use this to send native SOL or SPL tokens to another wallet.

  • If mint is not provided, the API sends native SOL.
  • If mint: "token_address" is provided, the API sends the specified token instead.
  • You can also pass memo as an optional field. It lets you attach a message that will be visible in Solana explorers.

amount can be either a numeric value (for example 0.000001) or a percentage string such as "100%" (transfer the full balance).

The example below shows a native SOL transfer.
Uncomment the "mint": "token_address" line if you want to transfer tokens instead.

Local transactions are supported
For a local-transaction example, visit the Trade API page and reuse the same local-transaction code snippets — the flow works the same way here.
The code snippets below show lightning transactions.

Endpoint

POST https://api.pumpapi.io

Request Body

FieldDescription
privateKeyBase58 Private key of the wallet that will sign the transfer transaction
actionMust be "transfer"
toRecipient wallet address. Example: pump22QQQnff5qmAxW7yg6VEKU3C7Mj8C4TDaXJZt9Q
amountAmount to send. You can pass a numeric value such as 0.000001 or a percentage string such as "100%" to transfer the full balance
mintOptional. Token mint address. If omitted, native SOL is sent
memoOptional. A memo string that will be visible in Solana explorers

📦 Code Examples

import requests

url = "https://api.pumpapi.io"

data = {
"privateKey": "base58_private_key",
"action": "transfer",
"to": "recipient_public_key",
"amount": 0.000001, # You can also use a percentage, for example "100%" to transfer everything
# "mint": "token_address", # Add this if you want to transfer tokens
# "memo": "Hello from PumpAPI", # Optional memo visible in Solana explorers
}

response = requests.post(url, json=data)
print(response.json())