Skip to content

API Overview

GoonPad provides a RESTful API and WebSocket interface for accessing platform data and building integrations.

Base URL

Production: https://api.goonpad.dev
Devnet: https://goonpad-api-8fgn3.ondigitalocean.app

Authentication

Currently, all API endpoints are public and require no authentication.

Future versions may introduce API keys for rate limiting and premium features.

Rate Limiting

Currently no rate limits. Fair use policy applies - don't abuse the API.

Recommendations:

  • Cache responses when possible
  • Use WebSockets for real-time data instead of polling
  • Max 100 requests per minute per IP

Response Format

All responses follow this structure:

Success Response

json
{
  "success": true,
  "data": {
    // Response data here
  },
  "source": "cache"
}

Note: The source field indicates whether data came from cache or RPC. Possible values:

  • cache - Data from real-time WebSocket cache (instant, no RPC call)
  • rpc - Data fetched directly from Solana RPC (happens on startup or cache miss)

Error Response

json
{
  "success": false,
  "error": "Error description",
  "message": "Human-readable error message"
}

Status Codes

CodeMeaning
200Success
400Bad Request - Invalid parameters
404Not Found - Resource doesn't exist
429Too Many Requests - Rate limited
500Internal Server Error
503Service Unavailable - RPC issues

Available APIs

REST API

Real-time API

Quick Start

Fetch All Tokens

bash
curl https://api.goonpad.dev/api/tokens
javascript
const response = await fetch('https://api.goonpad.dev/api/tokens')
const { data } = await response.json()

console.log(`Found ${data.length} tokens`)

Get Token Details

bash
curl https://api.goonpad.dev/api/tokens/YOUR_TOKEN_ADDRESS
javascript
const address = 'YOUR_TOKEN_ADDRESS'
const response = await fetch(`https://api.goonpad.dev/api/tokens/${address}`)
const { data } = await response.json()

console.log(`${data.name} (${data.symbol})`)
console.log(`Market Cap: ${data.marketCap} SOL`)

Connect to WebSocket

javascript
import { io } from 'socket.io-client'

const socket = io('https://api.goonpad.dev')

socket.on('connect', () => {
  console.log('Connected to GoonPad')
  // Subscribe to token updates
  socket.emit('subscribe', 'tokens')
})

socket.on('tokens:update', (data) => {
  console.log('Token updates:', data)
})

Use Cases

Trading Bots

  • Monitor token prices
  • Execute automated trades
  • Track graduations

Portfolio Trackers

  • Fetch user token holdings
  • Calculate portfolio value
  • Track P&L

Analytics Dashboards

  • Display platform statistics
  • Show trending tokens
  • Visualize market data

Discord/Telegram Bots

  • Token price notifications
  • Graduation alerts
  • New token announcements

SDKs and Libraries

Currently no official SDKs, but the API is simple REST/WebSocket.

Community Libraries:

  • Coming soon!

Want to build an SDK? Let us know!

Support

Questions about the API?

Next Steps


Start building! The API is free and open for everyone.

Built with passion on Solana