Overview
The MemeTrade API provides programmatic access to token data, market information, and platform features. Built with REST principles and real-time WebSocket support.
Base URL
https://api.memetrade.com/v1
Authentication
Most endpoints are public and don't require authentication. For authenticated endpoints, use API keys:
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.memetrade.com/v1/portfolio
Rate Limits
Public endpoints: 100 requests/minute
Authenticated: 1000 requests/minute
WebSocket: 5 connections per IP
Quick Start
Get All Tokens
curl https://api.memetrade.com/v1/tokens
{
"data": [
{
"address": "0x123...",
"name": "Doge Moon",
"symbol": "DMOON",
"price": "0.001234",
"marketCap": "123456.78",
"volume24h": "45678.90",
"holders": 1250,
"createdAt": "2024-01-15T10:30:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 150
}
}
Get Token Details
curl https://api.memetrade.com/v1/tokens/0x123...
{
"data": {
"address": "0x123...",
"name": "Doge Moon",
"symbol": "DMOON",
"description": "Taking Doge to the moon!",
"image": "https://cdn.memetrade.com/tokens/dmoon.png",
"price": "0.001234",
"marketCap": "123456.78",
"volume24h": "45678.90",
"priceChange24h": "12.5",
"holders": 1250,
"creator": "0xabc...",
"creatorFee": "3.0",
"totalSupply": "1000000",
"circulatingSupply": "850000",
"createdAt": "2024-01-15T10:30:00Z",
"contracts": {
"token": "0x123...",
"pool": "0x456..."
}
}
}
Get Market Data
curl https://api.memetrade.com/v1/markets
{
"data": {
"totalMarketCap": "12345678.90",
"totalVolume24h": "987654.32",
"totalTokens": 150,
"totalHolders": 5430,
"topGainers": [...],
"topLosers": [...],
"newTokens": [...]
}
}
Available Endpoints
Tokens
GET /tokens
- List all tokensGET /tokens/{address}
- Get token detailsGET /tokens/{address}/chart
- Get price chart dataGET /tokens/{address}/holders
- Get token holdersGET /tokens/{address}/transactions
- Get token transactions
Markets
GET /markets
- Get market overviewGET /markets/trending
- Get trending tokensGET /markets/new
- Get newest tokensGET /markets/gainers
- Get top gainersGET /markets/losers
- Get top losers
Portfolio (Authenticated)
GET /portfolio
- Get user portfolioGET /portfolio/tokens
- Get user tokensGET /portfolio/transactions
- Get user transactionsGET /portfolio/rewards
- Get liquidity rewards
Trading
GET /trading/quote
- Get trade quotePOST /trading/transaction
- Get transaction data
Response Format
All API responses follow this structure:
{
"success": true,
"data": { ... },
"pagination": { ... },
"timestamp": "2024-01-15T10:30:00Z"
}
Error Response
{
"success": false,
"error": {
"code": "INVALID_TOKEN",
"message": "Token address not found",
"details": { ... }
},
"timestamp": "2024-01-15T10:30:00Z"
}
Real-time Data
WebSocket Connection
const ws = new WebSocket("wss://api.memetrade.com/v1/ws");
// Subscribe to token price updates
ws.send(
JSON.stringify({
action: "subscribe",
channel: "prices",
tokens: ["0x123...", "0x456..."],
})
);
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log("Price update:", data);
};
Available Channels
prices
- Real-time token pricestrades
- Live trade executionmarkets
- Market data updatesportfolio
- Portfolio changes (authenticated)
SDK Libraries
JavaScript/TypeScript
npm install @memetrade/api
import { MemeTradeAPI } from "@memetrade/api";
const api = new MemeTradeAPI({
apiKey: "your-api-key", // Optional
});
// Get token data
const token = await api.tokens.get("0x123...");
console.log(token.name, token.price);
// Subscribe to real-time updates
api.ws.subscribe("prices", ["0x123..."], (data) => {
console.log("Price update:", data);
});
Python
pip install memetrade-api
from memetrade_api import MemeTradeAPI
api = MemeTradeAPI(api_key='your-api-key')
# Get token data
token = api.tokens.get('0x123...')
print(f"{token.name}: ${token.price}")
# Get market data
markets = api.markets.overview()
print(f"Total Market Cap: ${markets.total_market_cap}")
Examples
Building a Price Tracker
// Track multiple token prices
const tokens = ["0x123...", "0x456...", "0x789..."];
tokens.forEach(async (address) => {
const token = await api.tokens.get(address);
console.log(`${token.symbol}: $${token.price}`);
});
// Real-time updates
api.ws.subscribe("prices", tokens, (update) => {
console.log(`${update.symbol}: $${update.price} (${update.change}%)`);
});
Portfolio Monitoring
// Get user portfolio (requires authentication)
const portfolio = await api.portfolio.get();
portfolio.tokens.forEach((holding) => {
console.log(
`${holding.symbol}: ${holding.balance} tokens ($${holding.value})`
);
});
// Monitor portfolio changes
api.ws.subscribe("portfolio", (update) => {
console.log("Portfolio updated:", update);
});
Status & Monitoring
API Status: status.memetrade.com
Response Time: ~50ms average
Uptime: 99.9% SLA
Support
Documentation: You're reading it!
Discord: Join our developer channel
Email: [email protected]
GitHub Issues: github.com/memetrade/api
Ready to start building? Check out our Authentication guide or explore specific endpoints like Tokens API and Markets API.
Last updated