Playground
API Playground Documentation
Overview
The API Playground is a web-based interface for testing Tradeboard REST API endpoints. It provides an intuitive UI to explore, test, and debug all available API endpoints without needing external tools like Postman.
.CsnlHkCd.png)
Features
- Three-Panel Layout: Sidebar, request editor, and response viewer side-by-side
- Comprehensive Endpoint Library: Pre-configured with all Tradeboard API endpoints loaded from Bruno collection
- Organized Categories: Endpoints grouped by functionality (Account, Orders, Data, Utilities)
- Live Testing: Send requests and view responses in real-time
- Auto-Populated API Key: Your API key is automatically injected into request bodies
- Line Numbers: Both request body and response display line numbers for easy reference
- Prettify JSON: Format and beautify JSON request bodies with one click
- Response Metrics: View status code, response time, and response size
- Copy Options: Copy response or generate cURL command
- Search Functionality: Quickly find endpoints by name
Access
Navigate to: http://your-host:port/playground
Note: You must be logged in to access the Playground.
Usage
1. API Key (Automatic)
Your API key is automatically managed:
- The API key is fetched when you open the Playground
- It's automatically injected into all request bodies containing an
apikeyfield - No manual copy/paste required
2. Select an Endpoint
Browse the left sidebar to find the endpoint you want to test:
- Account: Funds, orderbook, tradebook, positionbook, holdings
- Orders: Place, modify, cancel orders, basket orders, split orders
- Data: Quotes, depth, history, search, symbols, expiry dates
- Utilities: Ping, instruments, margin calculator
Click on any endpoint to load its configuration in the request panel.
3. Customize the Request
The middle panel contains two tabs:
Body Tab
- Edit the JSON request body with line numbers
- API key is automatically populated
- Click Prettify to format JSON
- Modify parameters as needed
Headers Tab
- Shows request headers
- Content-Type: application/json (default)
4. Send the Request
- Review the URL and method in the URL bar
- Click the Send button (or use the arrow icon)
- View the response in the right panel
5. Analyze the Response
The right panel shows:
- Status Code: Color-coded (green for 2xx, red for errors)
- Response Time: Request duration in milliseconds
- Response Size: Size of the response in bytes/KB
- Response Body: Formatted JSON with line numbers
- Copy Response: Copy the JSON response
- Copy cURL: Generate and copy cURL command
Endpoint Categories
Account Endpoints
- Analyzer Status: Check if analyzer mode is enabled
- Analyzer Toggle: Enable/disable analyzer mode
- Funds: Get account balance and margin details
- Orderbook: View all orders
- Tradebook: View executed trades
- Positionbook: View open positions
- Holdings: View long-term holdings
Order Endpoints
- Place Order: Place a single order
- Place Smart Order: Place order with position sizing
- Basket Order: Place multiple orders at once
- Split Order: Split large orders into smaller chunks
- Modify Order: Modify existing order parameters
- Cancel Order: Cancel a specific order
- Cancel All Orders: Cancel all pending orders
- Close Position: Close all positions for a strategy
- Order Status: Get status of a specific order
- Open Position: Check open position for a symbol
Data Endpoints
- Quotes: Get real-time quotes for a symbol
- Depth: Get market depth (order book)
- History: Get historical OHLCV data
- Intervals: Get supported time intervals
- Symbol: Get symbol details
- Search: Search for symbols
- Expiry: Get expiry dates for derivatives
- Option Symbol: Get option chain symbols
- Option Greeks: Calculate option Greeks
- Ticker: Get ticker data (GET request)
Utility Endpoints
- Ping: Test API connectivity
- Instruments: Download instrument master files
- Margin Calculator: Calculate margin requirements
Tips
- Automatic API Key: Your API key is automatically injected into requests - no manual entry needed
- Search Feature: Use the search box to quickly find endpoints by name
- Prettify JSON: Click the Prettify button to format messy JSON in the request body
- Line Numbers: Use line numbers to reference specific parts of requests/responses
- Copy cURL: Generate cURL commands to replicate requests in terminal
- Status Codes:
- 200-299: Success (green)
- 400-499: Client errors (red)
- 500-599: Server errors (red)
Integration with Collections
The API Playground is built using the same endpoint definitions as:
- Postman Collection (
collections/postman/tradeboard.postman_collection.json) - Bruno Collection (
collections/tradeboard/*.bru)
This ensures consistency across all testing tools.
Troubleshooting
"Authentication required" error
- Make sure you're logged into Tradeboard
- Navigate to
/playgroundwhile logged in
API key not being injected
- Navigate to
/apikeyto generate your API key - Refresh the Playground page after generating a key
- Ensure the request body contains an
apikeyfield
Invalid API key errors
- Navigate to
/apikeyto verify or regenerate your API key - Ensure your API key is active and not expired
Network errors
- Check if the Tradeboard server is running
- Verify the URL in the request field is correct
- Check browser console for detailed error messages
Security Notes
- API keys are automatically fetched from your secure session
- API keys are stored encrypted in the database
- Never share your API key with others
- The API Playground requires authentication (login) to access
- API keys are displayed in read-only mode for security
Future Enhancements
Planned features:
- Request history and saved responses
- Favorite/starred endpoints
- Environment variables support
- WebSocket endpoint testing
- Response diff comparison
