Comprehensive guidance for integrating Jupiter APIs (Ultra Swap, Lend, Perps, Trigger, Recurring, Tokens, Price, Portfolio, Prediction Markets, Send, Studio, Lock, Routing).
86
Quality
84%
Does it follow best practices?
Impact
91%
1.85xAverage score across 5 eval scenarios
You are building a trading dashboard backend that allows users to create, monitor, and cancel limit orders on Solana through Jupiter. The system needs to handle the full lifecycle of limit orders: creating new orders with price targets, fetching existing orders with pagination support, cancelling individual orders, and batch-cancelling multiple orders at once.
The module must be careful about order validation before submission. Users sometimes enter unreasonable target prices (e.g., selling SOL at 1/100th of market price), and the system should catch these issues before the order reaches the blockchain. The system should also accommodate both "exact fill" behavior and a mode that accepts some slippage for better fill rates.
Some users want to trade newer tokens, but the system needs to be aware of token compatibility limitations. The module should also properly handle the fee structure so the UI can display estimated fees to users.
Produce a single TypeScript file called trigger-orders.ts that exports:
createLimitOrder(params: { inputMint: string, outputMint: string, makingAmount: string, takingAmount: string, walletAddress: string, slippageMode?: 'exact' | 'ultra' }) - Creates a limit order with proper validationexecuteLimitOrder(createResponse: any, wallet: Keypair) - Signs and submits the order transactiongetOrders(walletAddress: string, page?: number) - Fetches orders with paginationcancelOrder(orderId: string, walletAddress: string) - Cancels a single ordercancelMultipleOrders(orderIds: string[], walletAddress: string) - Batch cancels ordersestimateFee(params: { inputMint: string, outputMint: string, amount: string }) - Returns estimated fee for an ordervalidateOrderParams helper that checks parameters before submissionThe code should use @solana/web3.js types and the native fetch API. It does not need to compile or run -- focus on correct API patterns and proper validation logic.
Install with Tessl CLI
npx tessl i tessl-skill-index-evals/jup-ag__agent-skills__integrating-jupiter@0.0.1