实时发射与毕业
BNB 链两个发射平台上代币的完整生命周期,事件发生即刻推送。一条 socket 上会收到三种事件:
- Flap 发射:一个代币出现在 Flap 的联合曲线上。一天几百次。
- four.meme 发射:一个代币出现在 four.meme 的联合曲线上,附带计价资产、税率和防狙击标记。一天几千次。
- 毕业:任一平台的曲线售罄,代币迁移到它永久的 PancakeSwap 池子。
免费,不需要密钥,不需要账号。
wss://api.shrine.trade/bnb/api/launches/ws
试一试
选好过滤条件后连接。最新的一条事件立刻到达,之后的每一条实时推送。
复制这段
点击 Flap、four.meme 或 PancakeSwap 选择脚本要接收的事件,URL 会跟着变。
- JavaScript
- Python
const ws = new WebSocket("wss://api.shrine.trade/bnb/api/launches/ws");
ws.onmessage = (e) => {
const t = JSON.parse(e.data);
// t.type: new_launch or graduated
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/bnb/api/launches/ws") as ws:
for raw in ws:
t = json.loads(raw)
# t["type"]: new_launch or graduated
print(json.dumps(t, indent=2))
Save it as launches.py, pip install websockets, then python launches.py.
你会收到什么
连接后的第一条消息是最近一次事件的重放,让新连上的客户端不至于空白。之后每条消息都是新的。
消息由两个字段分类:type 和 protocol:
type | protocol | 含义 |
|---|---|---|
new_launch | FLAP | 一个代币在 Flap 曲线上发射,立刻可以交易。 |
new_launch | FOURMEME | 一个代币在 four.meme 曲线上发射,立刻可以交易;有防狙击设置的按开盘费率。 |
graduated | PANCAKESWAP | 一条 Flap 或 four.meme 曲线售罄,代币迁移到了它的 PancakeSwap 池子。launchpad 说明来自哪个平台。 |
每条消息都带 launchpad(FLAP 或 FOURMEME)。用 ?protocols=FLAP、?protocols=FOURMEME 或 ?protocols=PANCAKESWAP 过滤,多个用逗号分隔,不加则全部接收;平台名匹配它的发射和它的毕业,PANCAKESWAP 匹配所有毕业。也可以用上面的选择器。
不适用的字段会直接省略而不是发 null,所以先看 type 再读其他字段。
{
"type": "new_launch",
"protocol": "FLAP",
"token": "0x2f1952E00F6BA7655993120B8c41E5ab511e7777",
"name": "星际巨舰",
"symbol": "星际巨舰",
"creator": "0xF31b8fcD326e0aD7837af0aefed60cC71Db82595",
"quoteToken": "BNB",
"tokenType": "tax_v3",
"buyTaxBps": 1000,
"sellTaxBps": 1000,
"graduationSupply": "800000000000000000000000000",
"meta": "bafkreidrm6a6ieclmputpy2iw5wxqkpcttpapxidcxpl5z5lj…",
"metaUri": "https://ipfs.io/ipfs/bafkreidrm6a6ieclmputpy2iw5wxqkpcttpapxidcxpl5z5lj…",
"blockNumber": 120101041,
"txHash": "0x…",
"timestamp": 1788610321
}
tokenType、税率和计价资产直接来自 Flap 的 Portal,在事件发生的那一刻读取,所以狙击机器人不用再发请求就能决定:跳过 10% 卖出税的、只要 BNB 计价的、只要股票计价的,随你定规则。支持的计价资产 里的每一种,quoteToken 都是代号(BNB、USD1、NVDAB、TSLAB……);API 不认识的计价资产(比如另一个 Flap 代币)则是地址。meta 是创作者元数据 JSON(图片、简介、社交链接)的 IPFS CID,metaUri 是它经网关的地址。
一条 four.meme 发射:
{
"type": "new_launch",
"protocol": "FOURMEME",
"launchpad": "FOURMEME",
"token": "0x9B051aE1e5d818F7e4666e64037196E3A206FFfF",
"name": "VLEPE",
"symbol": "VLEPE",
"creator": "0x002B0e22bE5F0B19295674B1A3E31795cC5B7483",
"quoteToken": "DJTB",
"tokenType": "tax_v9",
"buyTaxBps": 300,
"sellTaxBps": 300,
"graduationSupply": "800000000000000000000000000",
"graduationQuote": "1000000000000000000000",
"antiSniper": false,
"requestId": "103015779",
"infoUri": "https://four.meme/meme-api/v1/private/token/get/v2?address=0x9b051ae1e5d818f7e4666e64037196e3a206ffff",
"blockNumber": 123474388,
"txHash": "0x…",
"timestamp": 1790125683
}
计价资产、税率和防狙击标记同样来自 four.meme 的合约,在发射的那一刻读取。tokenType 是 standard、tax、tax_v8 或 tax_v9(four.meme 的几代税币;后两种按 buyTaxBps / sellTaxBps 对买卖征税)。graduationQuote 是曲线毕业所需的募集额,以计价资产的基础单位计。antiSniper: true 表示交易费从高位开始逐块下降;代币信息 的 currentBuyFeeBps 是此刻的费率。infoUri 是 four.meme 自己的代币记录:图片、简介和社交链接。创作者预约了开盘时间时会有 launchTime。
graduated 事件带的则是 pool(PancakeSwap 池子)、liquidityTokens 和 liquidityQuote(发射平台注入的流动性),以及说明代币来源的 launchpad。
注意
- 断线重连。 长连接会断;重连后会重新收到最近一次发射,不会错过多少。
- 每个 IP 一条连接。 第二条会被拒绝,返回
too_many_connections。一条不带过滤的连接已经包含所有事件,一条就够。 - 不保存历史。 服务端不持久化任何东西;除了最近一条事件的重放,没有回放,也无法补拉。