Live Launches
Every new token on Arc, pushed the moment it lands. Three things arrive on this one socket:
- Argus launches, with the creator tax and the image the creator pinned.
- LIFT launches, with the metadata URI and the creator's first buy.
- New Uniswap v4 pools against USDC opened by anyone, without a launchpad.
Free, no key, no account.
wss://api.shrine.trade/arc/api/launches/ws
Try it
Pick what you want and connect. You'll get the most recent event immediately, then new ones as they happen.
Copy this
Click Argus or LIFT to choose what the script receives; the URL updates.
- JavaScript
- Python
const ws = new WebSocket("wss://api.shrine.trade/arc/api/launches/ws");
ws.onmessage = (e) => {
const t = JSON.parse(e.data);
// t.type: new_launch (Argus or LIFT), or new_pool for a plain Uniswap pool
console.log(JSON.stringify(t, null, 2));
};
Save it as launches.js and run node launches.js - no packages needed (Node 22+).
import json
from websockets.sync.client import connect
with connect("wss://api.shrine.trade/arc/api/launches/ws") as ws:
for raw in ws:
t = json.loads(raw)
# t["type"]: new_launch (Argus or LIFT), or new_pool for a plain Uniswap pool
print(json.dumps(t, indent=2))
Save it as launches.py, pip install websockets, then python launches.py.
What you get
On connect you're sent the single most recent event so the screen isn't blank, then everything new as it happens.
Each message has a type and a protocol:
type | protocol | Means |
|---|---|---|
new_launch | ARGUS | A token launched on Argus. Its Uniswap v4 pool exists and trades from this block on. |
new_launch | LIFT | A token launched on LIFT, into a Uniswap v4 pool (v2 launches) or a Uniswap v3 pool (v1). |
new_pool | UNISWAP | A hookless Uniswap v4 pool against USDC was opened. |
Filter with ?protocols=ARGUS, ?protocols=LIFT or ?protocols=UNISWAP, comma-separated for several, or omit it for everything.
Fields that don't apply to an event are simply absent, so check type and protocol first. A real Argus launch:
{
"type": "new_launch",
"protocol": "ARGUS",
"token": "0x78cb16BCec098946CF25190c11DFB511550b9215",
"name": "Niu LAI",
"symbol": "牛来",
"blockNumber": 22255452,
"txHash": "0x9cc33d95f2c338c1c17189d83914923faee5bc518d550cbe44331564581c29e6",
"timestamp": 1790119898,
"creator": "0x1c4ABb26936c050A864E23017881e588DDB4E9F4",
"quoteToken": "0x3600000000000000000000000000000000000000",
"venue": "uniswap_v4",
"pool": "0xa96421b2d30902ad9e1ac60230e2a7545c29e4329675e8a51687510f6f96a3ac",
"hook": "0x478d6B947398Cc74Ef3B7c4D6BCd2d12f471e044",
"buyTaxBps": 300,
"sellTaxBps": 1000,
"imageUri": "ipfs://bafkrei…",
"fee": 10000,
"tickSpacing": 200
}
| Field | Meaning |
|---|---|
token / name / symbol / creator | The token and who launched it. Name and symbol ride on the launch event itself, so there is nothing extra to fetch. |
venue / pool | Where it trades from now on: uniswap_v4 with the pool id, or uniswap_v3 with the pool address. This never changes for a token. |
hook | The launchpad's fee hook on the pool. |
buyTaxBps / sellTaxBps | Argus: the creator tax per side, fixed at launch. |
imageUri / website / twitter / telegram | Argus: what the creator filled in, when they did. |
metaUri / initialBuy | LIFT: the metadata JSON the creator pinned, and their own buy in the launch transaction, USDC base units. |
fee / tickSpacing | The pool's tier. |
Both launchpads charge a snipe tax on buys in the first moments after a launch, up to 99%, decaying to zero within seconds on Argus and within 6 blocks on LIFT. Buying the moment a launch appears in this feed hands most of your order to the tax. Poll snipeTaxBps on Token Info and buy when it reads 0.
Notes
- Reconnect on drop. Long-lived sockets die; reconnect and you're re-seeded with the latest event.
- One subscription per IP. A second launch-feed connection from the same address is refused with
too_many_connections. One socket with no filter carries everything; the data stream is a separate kind and can be open alongside it. - Nothing is stored. This is a live feed, not an archive: no history endpoint and no backfill. LIFT's own API lists past launches; Argus tokens can be read from the Argus factory on chain.