JavaScript/TypeScript

Complete examples for integrating Turnpike API with JavaScript and TypeScript.

Installation

npm install @solana/web3.js
# Optional: for WebSocket reconnection
npm install ws

Lightning API Examples

Execute Buy Trade

import fetch from 'node-fetch';

interface BuyTradeParams {
  publicKey: string;
  mint: string;
  amount: number;
  slippage?: number;
  priorityFee?: number;
}

async function executeBuyTrade(params: BuyTradeParams) {
  try {
    const response = await fetch('https://api.turnpike.dev/trade/buy', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${process.env.TURNPIKE_API_KEY}`
      },
      body: JSON.stringify({
        ...params,
        slippage: params.slippage || 10,
        priorityFee: params.priorityFee || 0.0001
      })
    });

    if (!response.ok) {
      const error = await response.json();
      throw new Error(`Trade failed: ${error.error.message}`);
    }

    const data = await response.json();
    console.log('Trade successful!');
    console.log('Signature:', data.signature);
    console.log('Tokens received:', data.tokensReceived);
    console.log('Effective price:', data.effectivePrice);

    return data;
  } catch (error) {
    console.error('Error executing trade:', error);
    throw error;
  }
}

// Usage
executeBuyTrade({
  publicKey: 'YOUR_WALLET_PUBLIC_KEY',
  mint: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
  amount: 0.01
});

Get Token Information

Get Portfolio

Local Transaction API Examples

Build and Sign Transaction

Browser Wallet Integration

WebSocket Examples

Basic WebSocket Connection

React Hook for WebSocket

Complete Trading Bot Example

Error Handling Example

Last updated