OpenServ Launch API
Launch tokens instantly on Base blockchain with one-sided concentrated liquidity pools on Aerodrome Slipstream.
Reference files:
reference.md- Full API reference for all endpointstroubleshooting.md- Common issues and solutionsexamples/- Complete code examples
Base URL: https://instant-launch.openserv.ai
What This API Does
- Deploys ERC-20 tokens - 1 billion supply, standard token contract
- Creates Aerodrome CL pools - One-sided liquidity with 2,000,000x price range
- Locks LP for 1 year - Automatic rug-pull protection
- Splits fees 50/50 - Creator wallet receives 50% of all trading fees
Quick Start
Dependencies
bashnpm install axios
Launch a Token
typescriptimport axios from 'axios' const response = await axios.post('https://instant-launch.openserv.ai/api/launch', { name: 'My Token', symbol: 'MTK', wallet: '0x1234567890abcdef1234567890abcdef12345678', description: 'A cool memecoin', imageUrl: 'https://example.com/logo.png', website: 'https://mytoken.com', twitter: '@mytoken' }) console.log(response.data) // { // success: true, // token: { address: '0x...', name: 'My Token', symbol: 'MTK', supply: '1000000000' }, // pool: { address: '0x...', tickSpacing: 500, fee: '2%' }, // locker: { address: '0x...', lpTokenId: '12345', lockedUntil: '2027-02-03T...' }, // txHashes: { tokenDeploy: '0x...', lpMint: '0x...', lock: '0x...', buy: '0x...' }, // links: { explorer: '...', aerodrome: '...', dexscreener: '...' } // }
Endpoints Overview
| Endpoint | Method | Description |
|---|---|---|
/api/launch | POST | Create a new token with LP pool |
/api/tokens | GET | List launched tokens |
/api/tokens/:address | GET | Get token details by address |
Launch Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Token name (1-64 characters) |
symbol | string | Yes | Token symbol (1-10 chars, uppercase, alphanumeric) |
wallet | string | Yes | Creator wallet address (receives 50% of fees) |
description | string | No | Token description (max 500 characters) |
imageUrl | string | No | Direct link to image file (jpg, png, gif, webp, svg) |
website | string | No | Website URL (must start with http/https) |
twitter | string | No | Twitter handle (with or without @) |
Launch Response
typescriptinterface LaunchResponse { success: true internalId: string // Database record ID creator: string // Creator wallet address token: { address: string // Deployed token contract name: string symbol: string supply: string // Always "1000000000" } pool: { address: string // Aerodrome CL pool tickSpacing: number // 500 fee: string // "2%" } locker: { address: string // LP locker contract lpTokenId: string // NFT position ID lockedUntil: string // ISO date (1 year from launch) } txHashes: { tokenDeploy: string // Token deployment tx stakingTransfer: string // 5% staking allocation tx lpMint: string // LP position mint tx lock: string // LP lock tx buy: string // Initial buy tx } links: { explorer: string // Basescan token page aerodrome: string // Aerodrome swap page dexscreener: string // DEXScreener chart defillama: string // DefiLlama swap } }
Token Defaults
| Setting | Value |
|---|---|
| Token Supply | 1 billion |
| Initial Market Cap | $15,000 |
| Price Range | 2,000,000x (~$30B) |
| Pool Fee | 2% |
| Tick Spacing | 500 |
| Fee Split | 50/50 (creator/platform) |
| Lock Duration | 1 year |
| Staking Allocation | 5% |
| Initial Buy | 0.0005 ETH |
Example: Agent with Token Launch Capability
typescriptimport { Agent, run } from '@openserv-labs/sdk' import { provision, triggers } from '@openserv-labs/client' import { z } from 'zod' import axios from 'axios' const agent = new Agent({ systemPrompt: 'You help users launch tokens on Base blockchain.' }) agent.addCapability({ name: 'launch_token', description: 'Launch a new ERC-20 token with LP pool on Aerodrome', schema: z.object({ name: z.string().describe('Token name (1-64 chars)'), symbol: z.string().describe('Token symbol (1-10 chars, uppercase)'), wallet: z.string().describe('Creator wallet address'), description: z.string().optional().describe('Token description'), imageUrl: z.string().optional().describe('Logo image URL'), website: z.string().optional().describe('Website URL'), twitter: z.string().optional().describe('Twitter handle') }), async run({ args }) { const response = await axios.post('https://instant-launch.openserv.ai/api/launch', args) const { token, pool, links } = response.data return `Token launched! Address: ${token.address}, Pool: ${pool.address}, Trade: ${links.aerodrome}` } }) async function main() { await provision({ agent: { instance: agent, name: 'token-launcher', description: 'Launch tokens on Base with Aerodrome LP' }, workflow: { name: 'Token Launcher', goal: 'Launch ERC-20 tokens on Base blockchain with Aerodrome concentrated liquidity pools', trigger: triggers.webhook({ waitForCompletion: true, timeout: 600 }) } }) await run(agent) } main().catch(console.error)
Rate Limits
- 1 token per wallet per 24 hours (spam prevention)
- Creator wallet must have on-chain activity (not empty)
Network
All tokens are deployed on Base Mainnet (chainId: 8453).
Updating This Skill
This skill may be outdated. The OpenServ team ships updates regularly—new features, API changes, and bug fixes won't be reflected here until you update. If something isn't working as expected, or you want to make sure you have the latest information, update the skill before proceeding.
bash# Check if updates are available npx skills check # Update all installed skills to latest versions npx skills update
Or reinstall the OpenServ skills directly:
bashnpx skills add openserv-labs/skills
Related Skills
- openserv-agent-sdk - Build agents with token launch capabilities
- openserv-client - Provision and deploy agents on the platform
- openserv-multi-agent-workflows - Multi-agent collaboration patterns
- openserv-ideaboard-api - Find ideas and ship token-related services


