Developer API

API Reference

Complete REST API documentation for integrating Pump.fun Volume Bot into your applications. Build powerful automation for your tokens.

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

POST/v1/campaigns

Create a new volume generation campaign for your token.

Request Body Parameters

token_addressstring (required) - Solana token address
min_trade_sizenumber (required) - Minimum trade size in SOL (≥0.05)
max_trade_sizenumber (required) - Maximum trade size in SOL
num_walletsnumber (required) - Number of wallets (100-10000)
duration_minutesnumber (required) - Campaign duration (1-600)
enable_commentsboolean - Enable automatic comments
comment_percentagenumber - % of trades with comments (0-100)
enable_favoritesboolean - Enable automatic favorites
favorite_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"
  }
}
GET/v1/campaigns/:id

Retrieve 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"
  }
}
GET/v1/campaigns

List 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"
DELETE/v1/campaigns/:id

Cancel 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 payment
campaign.startedCampaign has started executing
campaign.progressCampaign progress update (every 10%)
campaign.completedCampaign has successfully completed
campaign.failedCampaign encountered an error

Webhook 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 parameters
401Unauthorized - Invalid API key
404Not Found - Resource doesn't exist
429Too Many Requests - Rate limit exceeded
500Internal Server Error - Something went wrong

Rate Limits

API requests are rate limited to ensure fair usage and system stability. Rate limits are applied per API key.

Standard Limits

Requests per minute:60
Requests per hour:1000
Concurrent campaigns:5

Response Headers

X-RateLimit-Limit
X-RateLimit-Remaining
X-RateLimit-Reset

SDKs & Libraries

We provide official SDKs and libraries to make integration easier in your favorite programming languages.

JavaScript / TypeScript

npm install @pumpfunvolumebot/sdk

Official SDK for Node.js and browser environments

Python

pip install pumpfunvolumebot

Official 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