Skip to main content
Delphi Terminal API home page
Search...
⌘K
Support
Get API Key
Get API Key
Search...
Navigation
Pfun WebSocket
Pfun Real-Time WebSocket
Documentation
API Reference
API Status
Getting Started
POST
Get a Test API Key
Health
GET
Health Check
Auth
POST
Sign up
POST
Login
GET
Get current user
POST
Logout
KLSI
GET
Get KLSI Market Details
GET
Get KLSI Market Rules
GET
Get KLSI orderbook
GET
Get KLSI Trade History
GET
Get KLSI Orderbook Analytics
GET
Get KLSI Best Bid/Ask Series
GET
Get KLSI Event
GET
Get All Markets in KLSI Event
GET
Get KLSI 1-Second OHLCV Candles
GET
Get KLSI 1-Minute OHLCV Candles
GET
Get KLSI 5-Minute OHLCV Candles
GET
Get KLSI 10-Minute OHLCV Candles
GET
Get KLSI 1-Hour OHLCV Candles
GET
Get KLSI 1-Day OHLCV Candles
GET
Get RFQ by ID
GET
Get RFQs by Market
GET
Get MVE Trades (Parlays)
GET
Get KLSI Top of Book
GET
Get KLSI Raw Orderbook Deltas
GET
Get RFQs by Date
GET
List all KLSI markets
GET
Get KLSI Markets by Category
GET
Get KLSI Markets by Multiple Categories
GET
Get KLSI Price History
GET
Download Dataset by Date
GET
Download Latest Dataset (Today)
GET
Get Cluster for Kalshi Market
Polymarket
GET
Get Polymarket Market Details
GET
Get Polymarket Resolution Rules
GET
Get Polymarket Top of Book
GET
Get Polymarket Raw Orderbook Deltas
GET
Get Polymarket Orderbook
GET
Get Polymarket Trade History
GET
Get Polymarket Price History
GET
Get Polymarket Event
GET
Get All Markets in Polymarket Event
GET
List All Polymarket Markets
GET
Get Polymarket Markets by Category
GET
Get Polymarket Markets by Multiple Categories
GET
Get Cluster for Polymarket Market
Limitless
GET
Get Limitless Top of Book
GET
Get Limitless Orderbook
GET
Get Limitless Exchange Prices
GET
Get Limitless Trade History
GET
Get Limitless Market Details
GET
List All Limitless Markets
GET
Get Cluster for Limitless Market
Pfun
GET
Get Pfun Exchange Prices
GET
Get Pfun Market Details
GET
List All Pfun Markets
GET
Get Pfun Trade History
GET
Get Pfun Top of Book
GET
Get Pfun Orderbook
GET
Get Cluster for PFun Market
Events
GET
Get Event by ID
GET
Get Events by Category
GET
Get Kalshi Events by Category
GET
Get Polymarket Events by Category
Search
GET
Search All Markets
GET
Autocomplete Suggestions
Advanced Analytics
GET
Get Orderbook Analytics
GET
Get Best Bid/Ask Time Series
Kalshi WebSocket
GET
Kalshi Real-Time WebSocket
Polymarket WebSocket
GET
Polymarket Real-Time WebSocket
Pfun WebSocket
GET
Pfun Real-Time WebSocket
Limitless WebSocket
GET
Limitless Real-Time WebSocket
Clusters
GET
Get Cluster by ID
Pfun WebSocket
Pfun Real-Time WebSocket
Copy page
Connect to the Pfun WebSocket for real-time price, orderbook, and trade updates. --- Connection: Connect to the WebSocket endpoint: Connect to: wss://api.delphiterminal.co/ws/pfun --- Subscribing to Markets: Once connected, send a JSON message to subscribe to Pfun data using their `market_id`: { "action": "subscribe", "market_ids": ["market123", "market456"], "message_types": ["prices", "orderbook", "trades"] } Subscription Fields: | Field | Type | Required | Description | |-------|------|----------|-------------| | action | string | Yes | `subscribe` or `unsubscribe` | | market_ids | array | Yes | Array of Pfun market identifiers | | message_types | array | No | `["prices"]`, `["orderbook"]`, `["trades"]`, or any combination. Defaults to prices and orderbook if omitted | --- Unsubscribing: { "action": "unsubscribe", "market_ids": ["market123"] } --- Message Types: Price Messages: Real-time price updates for subscribed markets: { "type": "prices", "data": { "exchange": "pfun", "market_id": "market123", "price": 0.65, "yes_bid": 0.64, "yes_ask": 0.66, "last_update": "2026-02-06T12:00:00Z" } } Orderbook Messages: Real-time orderbook snapshots for subscribed markets: { "type": "orderbook", "data": { "exchange": "pfun", "market_id": "market123", "venue_market_id": "venue123", "best_yes_price": 65, "best_yes_size": 100, "best_no_price": 35, "best_no_size": 50, "yes_side": [100, 200, 300], "no_side": [50, 100, 150], "server_time": "2026-02-06T12:00:00Z" } } Trade Messages: Real-time trade executions for subscribed markets: { "type": "trades", "data": { "exchange": "pfun", "market_id": "market123", "yes_price": 0.65, "no_price": 0.35, "count": 10, "taker_side": "buy", "last_update": "2026-02-06T12:00:00Z" } } --- Full JavaScript Example: Connect to: wss://api.delphiterminal.co/ws/pfun ws.onopen = () => { console.log('Connected to Pfun WebSocket // Subscribe to markets ws.send(JSON.stringify({ action: 'subscribe', market_ids: ['market123'], message_types: ['prices', 'orderbook', 'trades'] })); }; ws.onmessage = (event) => { const data = JSON.parse(event.data); if (data.type === 'prices') { console.log('Price update:', data.data); } else if (data.type === 'orderbook') { console.log('Orderbook update:', data.data); } else if (data.type === 'trades') { console.log('Trade:', data.data); } }; ws.onclose = () => { console.log('Disconnected from WebSocket }; ws.onerror = (error) => { console.error('WebSocket error:', error); }; --- Connection Details: | Property | Value | |----------|-------| | Protocol | WebSocket (wss://) | | Keepalive | Ping every 54 seconds | | Timeout | 60 seconds without pong | | Max Message Size | 16 KB | --- Notes: - **No authentication required** for WebSocket connection - You must use `market_id` (Pfun market identifier) to subscribe - Messages are only sent for markets you have explicitly subscribed to - Multiple markets can be subscribed in a single message - Subscribe to specific message types to reduce message volume - Trades must be explicitly requested (not included in default subscription) ## Example - Request: `GET /ws/pfun` - Header: `X-API-Key: YOUR_API_KEY`
Copy page
GET
/
ws
/
pfun
Try it
Response
101
WebSocket connection upgraded successfully
Polymarket Real-Time WebSocket
Limitless Real-Time WebSocket
⌘I