API Reference
Complete REST API documentation for integrating Pump.fun Volume Bot into your applications. Build powerful automation for your tokens.
Authentication
Get your API key and learn how to authenticate requests
API Endpoints
Comprehensive list of all available endpoints
Webhooks
Real-time event notifications for your campaigns
Getting Started
The Pump.fun Volume Bot API allows you to programmatically manage volume generation campaigns for tokens on the Pump.fun platform. Our RESTful API uses predictable resource-oriented URLs, accepts JSON-encoded request bodies, and returns JSON-encoded responses.
Base URL: https://api.pumpfunvolumebot.app/v1
API Security
All API requests must be made over HTTPS. Requests made over plain HTTP will fail. You must authenticate all requests using your API key.
Authentication
Authenticate your API requests by including your API key in the Authorization header as a Bearer token. You can obtain your API key from your dashboard after connecting your Solana wallet.
Example Request
curl https://api.pumpfunvolumebot.app/v1/campaigns \
-H "Authorization: Bearer YOUR_API_KEY"Keep Your API Key Secret
Your API key should be kept secure and never exposed in client-side code. Store it as an environment variable and only use it from your backend services.
API Endpoints
/v1/campaignsCreate a new volume generation campaign for your token.
Request Body Parameters
token_addressstring (required) - Solana token addressmin_trade_sizenumber (required) - Minimum trade size in SOL (≥0.05)max_trade_sizenumber (required) - Maximum trade size in SOLnum_walletsnumber (required) - Number of wallets (100-10000)duration_minutesnumber (required) - Campaign duration (1-600)enable_commentsboolean - Enable automatic commentscomment_percentagenumber - % of trades with comments (0-100)enable_favoritesboolean - Enable automatic favoritesfavorite_percentagenumber - % of trades with favorites (0-100)Code Examples
curl -X POST https://api.pumpfunvolumebot.app/v1/campaigns \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"token_address": "YOUR_TOKEN_ADDRESS",
"min_trade_size": 0.05,
"max_trade_size": 0.1,
"num_wallets": 150,
"duration_minutes": 60,
"enable_comments": true,
"comment_percentage": 30,
"enable_favorites": true,
"favorite_percentage": 20
}'Response
{
"success": true,
"campaign": {
"id": "camp_abc123",
"token_address": "YOUR_TOKEN_ADDRESS",
"status": "pending",
"target_volume": 7.5,
"service_fee": 0.525,
"total_cost": 8.025,
"estimated_comments": 45,
"estimated_favorites": 30,
"created_at": "2025-01-16T12:00:00Z",
"payment_address": "3i8hSkZQ4avcjXTEt1obVXhroCeyQ1WDEmyuLvVTdUu1"
}
}/v1/campaigns/:idRetrieve details of a specific campaign by its ID.
Code Examples
curl -X GET https://api.pumpfunvolumebot.app/v1/campaigns/CAMPAIGN_ID \
-H "Authorization: Bearer YOUR_API_KEY"Response
{
"success": true,
"campaign": {
"id": "camp_abc123",
"token_address": "YOUR_TOKEN_ADDRESS",
"token_name": "My Token",
"token_symbol": "MTK",
"status": "active",
"target_volume": 7.5,
"current_volume": 3.2,
"progress": 42.67,
"trades_completed": 85,
"comments_posted": 25,
"favorites_added": 17,
"duration_minutes": 60,
"elapsed_minutes": 25,
"created_at": "2025-01-16T12:00:00Z",
"started_at": "2025-01-16T12:05:00Z",
"estimated_completion": "2025-01-16T13:05:00Z"
}
}/v1/campaignsList all campaigns for your account with optional filters.
Query Parameters
statusstring - Filter by status (pending, active, completed, failed)limitnumber - Number of results per page (1-100, default: 20)offsetnumber - Pagination offset (default: 0)Example Request
curl "https://api.pumpfunvolumebot.app/v1/campaigns?status=active&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"/v1/campaigns/:idCancel an active or pending campaign. Completed campaigns cannot be cancelled.
Example Request
curl -X DELETE https://api.pumpfunvolumebot.app/v1/campaigns/camp_abc123 \
-H "Authorization: Bearer YOUR_API_KEY"Webhooks
Webhooks allow you to receive real-time notifications about your campaigns. Configure webhook endpoints to be notified when campaigns start, complete, or encounter errors.
Create Webhook
curl -X POST https://api.pumpfunvolumebot.app/v1/webhooks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://your-domain.com/webhook",
"events": ["campaign.started", "campaign.completed", "campaign.failed"]
}'Available Events
campaign.createdCampaign is created and awaiting paymentcampaign.startedCampaign has started executingcampaign.progressCampaign progress update (every 10%)campaign.completedCampaign has successfully completedcampaign.failedCampaign encountered an errorWebhook Payload Example
{
"event": "campaign.completed",
"timestamp": "2025-01-16T13:05:00Z",
"data": {
"campaign_id": "camp_abc123",
"token_address": "YOUR_TOKEN_ADDRESS",
"status": "completed",
"final_volume": 7.5,
"trades_executed": 150,
"comments_posted": 45,
"favorites_added": 30,
"duration_minutes": 60
}
}Error Handling
The API uses conventional HTTP response codes to indicate success or failure. Codes in the 2xx range indicate success, 4xx range indicate client errors, and 5xx range indicate server errors.
Error Response Format
{
"success": false,
"error": {
"code": "invalid_parameter",
"message": "min_trade_size must be at least 0.05 SOL",
"param": "min_trade_size"
}
}Common Error Codes
400Bad Request - Invalid parameters401Unauthorized - Invalid API key404Not Found - Resource doesn't exist429Too Many Requests - Rate limit exceeded500Internal Server Error - Something went wrongRate Limits
API requests are rate limited to ensure fair usage and system stability. Rate limits are applied per API key.
Standard Limits
Response Headers
SDKs & Libraries
We provide official SDKs and libraries to make integration easier in your favorite programming languages.
JavaScript / TypeScript
npm install @pumpfunvolumebot/sdkOfficial SDK for Node.js and browser environments
Python
pip install pumpfunvolumebotOfficial Python SDK with async support
Quick Start with SDK
import { PumpFunVolumeBot } from '@pumpfunvolumebot/sdk'
const client = new PumpFunVolumeBot({
apiKey: process.env.PUMPFUN_API_KEY
})
// Create a campaign
const campaign = await client.campaigns.create({
tokenAddress: 'YOUR_TOKEN_ADDRESS',
minTradeSize: 0.05,
maxTradeSize: 0.1,
numWallets: 150,
durationMinutes: 60,
enableComments: true,
commentPercentage: 30
})
console.log('Campaign created:', campaign.id)Need Help with Integration ?
Our developer support team is here to help you integrate the Pump.fun Volume Bot API into your applications.
Email us at developers@pumpfunvolumebot.app