π API Reference
PumpPortal WebSocket API
Connection
javascript
const ws = new WebSocket('wss://pumpportal.fun/api/data');Subscription Methods
Account Trades
javascript
{
"method": "subscribeAccountTrade",
"keys": ["wallet_address"]
}Token Trades
javascript
{
"method": "subscribeTokenTrade",
"keys": ["token_mint_address"]
}Message Format
Trade Event
javascript
{
"txType": "buy" | "sell" | "create",
"traderPublicKey": "wallet_address",
"mint": "token_address",
"symbol": "TOKEN",
"name": "Token Name",
"solAmount": 0.1,
"tokenAmount": 1000000,
"newTokenBalance": 1000000,
"marketCapSol": 10.5,
"vSolInBondingCurve": 35.2,
"timestamp": 1234567890,
"signature": "tx_signature"
}PumpPortal REST API
Trade Execution
bash
POST https://pumpportal.fun/api/trade?api-key=YOUR_API_KEYRequest Body
javascript
{
"action": "buy" | "sell",
"mint": "token_address",
"privateKey": "base58_private_key",
"amount": 0.1,
"denominatedInSol": "true" | "false",
"slippage": 90,
"priorityFee": 0.00005,
"pool": "auto"
}Response
javascript
{
"signature": "transaction_signature"
}Helius RPC
Get Balance
javascript
{
"jsonrpc": "2.0",
"id": 1,
"method": "getBalance",
"params": ["wallet_address"]
}Internal Functions
Trade Functions
javascript
// Buy token
buyToken(walletAddress, solAmount)
// Sell token
sellToken(walletAddress, percentage)
// Nuke all positions
nukeAllPositions(percentage)Wallet Management
javascript
// Add trading wallet
addTradingWallet()
// Remove wallet
removeTradingWallet(address)
// Update settings
updateWalletSettings(address, type, index, value)Data Structures
Wallet Position
javascript
{
wallet: WalletObject,
position: {
mint: "token_address",
symbol: "TOKEN",
name: "Token Name",
balance: 1000000,
totalBought: 1000000,
totalInvested: 0.1,
avgPrice: 0.0000001,
entryMarketCapSol: 10,
currentMarketCapSol: 15,
entryTimestamp: 1234567890,
trades: [TradeObject]
}
}Last updated
