Developer API

Create fundraisers programmatically. Integrate PumpFundMe into your app, bot, or platform.

Get your API key

Sign in with X to generate API keys

API Documentation

Authentication

Include your API key in the x-api-key header with every request.

Create a Fundraiser

POST https://pumpfundme.onrender.com/api/v1/fundraisers

{
  "title": "Help rebuild the community center",
  "description": "Our local community center was damaged...",
  "category": "community", // optional
  "beneficiaries": [
    { "type": "twitter", "handle": "@username" },
    { "type": "email", "handle": "user@gmail.com" }, // optional
    { "type": "facebook", "handle": "facebook.com/user" } // optional
  ],
  "image_urls": [ // optional, up to 10 images
    "https://example.com/image1.jpg",
    "https://example.com/image2.jpg"
  ]
}

Goal starts at $1,000 and auto-doubles when reached. Returns the created fundraiser with its URL and slug.

List Your Fundraisers

GET https://pumpfundme.onrender.com/api/v1/fundraisers

Returns all fundraisers created with your API key.

Get Fundraiser Details

GET https://pumpfundme.onrender.com/api/v1/fundraisers/:id

Returns fundraiser details including linked token and accumulated fees.

Example (cURL)

curl -X POST https://pumpfundme.onrender.com/api/v1/fundraisers \
  -H "Content-Type: application/json" \
  -H "x-api-key: pfm_your_key_here" \
  -d '{
    "title": "Help rebuild the community center",
    "description": "Our local community center was damaged...",
    "beneficiaries": [
      {"type": "twitter", "handle": "@username"},
      {"type": "email", "handle": "user@gmail.com"}
    ],
    "image_urls": ["https://example.com/banner.jpg"]
  }'

Example (JavaScript)

const resp = await fetch('https://pumpfundme.onrender.com/api/v1/fundraisers', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'x-api-key': 'pfm_your_key_here',
  },
  body: JSON.stringify({
    title: 'Help rebuild the community center',
    description: 'Our local community center was damaged...',
    beneficiaries: [
      { type: 'twitter', handle: '@username' },
      { type: 'email', handle: 'user@gmail.com' },
    ],
    image_urls: ['https://example.com/banner.jpg'],
  }),
});
const fundraiser = await resp.json();
console.log(fundraiser.url); // https://pumpfund.me/fundraiser/help-rebuild...