Integration
Discover and trade Okie Launchpad tokens on X Layer.
Discover launches
Scan the Launchpad Factory from block 68,206,472 and listen for:
event TokenLaunched(
address indexed token,
address indexed creator,
address indexed pool,
address dexFactory,
address paymentToken,
uint256 dexId,
uint256 launchConfigId,
uint256 positionId,
uint256 initialBuyAmount
);Factory:
0x1f111073F42745605CC94307DBf15D85667c3d00
Topic 0:
0x66c4c5a7dc645725c71879cb2a1dae4e66a2d9c8c3de199ad43c737e52f6b9a7For OkieSwap V3 launches, dexFactory is
0x3cEA59ae7CD3C1BEa32Ccc80F68Dd47576662c90.
Read launch data
After receiving the event, call:
function getLaunchedToken(address token) external view returns (
address token,
address creator,
address pairedToken,
address positionManager,
uint256 positionId,
uint256 dexId,
uint256 launchConfigId,
uint256 supply,
bool isToken0,
uint24 poolFee,
bool exists,
uint256 initialBuyAmount
);Require exists == true. Use poolFee when quoting and trading the V3 pool.
Read token metadata
Read display metadata directly from the launched token contract:
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
function logo() external view returns (string memory);
function description() external view returns (string memory);
function socials() external view returns (
string memory twitter,
string memory telegram,
string memory discord,
string memory website,
string memory farcaster
);
function creator() external view returns (address);
function launchBlock() external view returns (uint256);
function liquidityPool() external view returns (address);logo() returns the token image URL. The project URL is the website value
returned by socials(). Any field may be empty. Treat all token-provided text
and URLs as untrusted metadata.
Quote and trade
Use the event's token, paymentToken, and pool, together with the returned
poolFee.
| Action | Contract |
|---|---|
| Quote | OkieSwap V3 QuoterV2 |
| Swap | OkieSwap V3 SwapRouter |
For exact-input trades, call quoteExactInputSingle on QuoterV2 and
exactInputSingle on SwapRouter. Use the addresses listed in the top-level
Contracts reference.