Overview
The o1.exchange Trading API enables programmatic trading with enterprise-grade features including built-in MEV protection, Permit2 support for gasless approvals, and automatic slippage handling.Key Benefits
- MEV Protection: Private mempool routing to prevent sandwich attacks
- Gasless Approvals: One-time Permit2 signatures for unlimited trading
- Automatic Slippage: Built-in slippage protection with customizable limits
Prerequisites
Wallet
Ethereum wallet with private key
Gas Fees
ETH for transaction costs
Runtime
Node.js environment
Quick Start
1. Generate API Key
1
Navigate to API Trading
2
Create API Key
Generate your secure API token for authentication
2. Create Transaction Batch
Endpoint: Body:
POST https://o1.exchange/api/v1/transaction-batches/create
Headers:3. Sign Transaction and Permit2
Implementation Details
Implementation Details
For each transaction in the response:
-
Sign Permit2 (if present):
- Extract the EIP-712 typed data from
permit2.eip712
- Sign using wallet’s
signTypedData
method - Replace the signature placeholder in transaction data
- Extract the EIP-712 typed data from
-
Sign the transaction:
- Create transaction object from the unsigned data
- Sign using wallet’s
signTransaction
method
4. Submit Transaction
Endpoint: Body:
POST https://o1.exchange/api/v1/transaction-batches/submit
Headers:Interactive Example
Complete CLI Trading App
See
execute-trade-interactive.js
for a fully functional CLI trading application that demonstrates all integration steps with proper error handling and user interaction.Setup Environment
Create a.env.local
file:
Run Interactive CLI
1
Token Address
Enter token contract address (e.g.,
0x06ca615ac72a18e76b63bd4b5c320b6c8e291f8b
)2
Trade Direction
Choose
buy
or sell
3
Amount
Enter amount in ETH (for buy) or tokens (for sell)
4
Confirm
Review trade details and execute
5
Results
View balance changes after execution
Advanced Features
Permit2 Integration
Gasless token approvals using EIP-712 signatures
- Automatic signature placeholder replacement
- One-time approval for unlimited trading
- Reduced gas costs for frequent traders
MEV Protection
Protection against sandwich attacks
- Private mempool routing
- Reduced slippage from MEV bots
- Enable with
mevProtection: true
Slippage Control
Specify
slippageBps
in basis points where 100 bps = 1%Recommendations:- Normal conditions: 300 bps (3%)
- Volatile tokens: 500-1000 bps (5-10%)
- Large trades: Increase as needed
Error Handling
Always implement proper error handling for:
- Network connectivity issues
- Insufficient balance or gas
- Transaction reverts
- API rate limiting
The interactive example includes comprehensive error handling patterns you can reference for your own implementation.