FOMO 观点与代币认证
在 FOMO 标签页监控用户和代币,通过现有 WebSocket 接收观点和观察到的代币认证。
选择用户和代币
- Minimum 包含 10 个 FOMO 用户和 10 个 FOMO 代币;Pro、Scale 和 Ultra Speed 包含 100 个用户和 100 个代币。这两项额度各自独立,也不占用 X 监控额度。
- 监控用户可接收其发布的观点。监控代币可接收任何作者对该代币的观点,以及首次观察到的认证。
- 在控制台的 FOMO 标签页管理两个列表。FOMO 事件仅实时发送,History 不提供回放。
通过 REST 管理列表
使用 Bearer API key 认证请求 /api/callouts。管理时将 platform 设为 fomo_user 或 fomo_coin;两者的事件都使用 d.platform: fomo。
GET返回callers、pending和分平台的limits。请读取limits获取当前额度;没有有效且符合条件的套餐时,各项均为0。旧的顶层limit始终为10。PUT接受{ platform, input, label? }。用户可用 FOMO 用户名或个人主页 URL。代币请用 FOMO 代币 URL 或network:address;单独的合约地址必须能确定唯一网络。响应包含caller;修改后重新获取列表。DELETE接受{ platform, callerId }移除监控项,或{ platform, intentId }取消待处理项。使用GET返回的标识符;成功时返回removed: true。
account/thesis
读取 d.author、d.thesis 和 d.coin。d.platform 为 fomo。持仓和代币元数据在可用时提供。使用 thesis.id 标识观点,使用 (coin.networkId, coin.address) 标识代币。
FOMO 事件类型
typescript
type FomoCoin = {
address: string;
networkId: number;
name?: string;
symbol?: string;
image?: string;
metadataObservedAt?: number;
priceUsd?: string;
marketCapUsd?: string;
liquidityUsd?: string;
volume24hUsd?: string;
change24hPercent?: string;
};
type FomoThesisEvent = {
platform: 'fomo';
coin: FomoCoin;
author: {
id: string;
username: string;
verified: boolean;
displayName?: string;
avatar?: string;
twitter?: string;
};
thesis: {
id: string;
text: string;
createdAt: number;
likes: number;
replies: number;
tradeId?: string;
parentId?: string;
segments?: Array<{ text: string; link?: string }>;
};
position?: {
tokenAmount?: string;
usdValue?: string;
unrealizedPnlUsd?: string;
realizedPnlUsd?: string;
unrealizedPnlPercent?: string;
realizedPnlPercent?: string;
closedAt?: number;
};
observedAt?: number;
receivedAt?: number;
};
type FomoTokenVerifiedEvent = {
platform: 'fomo';
coin: FomoCoin;
observedAt: number;
receivedAt?: number;
};观点事件
json
{
"v": 1,
"t": "account",
"op": "thesis",
"id": "fomo:thesis:thesis-1",
"ts": 1772000001060,
"d": {
"platform": "fomo",
"coin": {
"address": "So11111111111111111111111111111111111111112",
"networkId": 1399811149,
"name": "Example Token",
"symbol": "EXM",
"image": "https://cdn.example/token.png",
"metadataObservedAt": 1772000000900,
"priceUsd": "0.00000123456789012345",
"marketCapUsd": "123456.7890123456789"
},
"author": {
"id": "user-1",
"username": "SignalDesk",
"displayName": "Signal Desk",
"avatar": "https://cdn.example/avatar.png",
"twitter": "signaldesk",
"verified": true
},
"thesis": {
"id": "thesis-1",
"text": "Watching liquidity",
"createdAt": 1772000001000,
"likes": 2,
"replies": 1,
"tradeId": "trade-1",
"segments": [
{
"text": "Watching liquidity",
"link": "https://example.com/thesis"
}
]
},
"position": {
"tokenAmount": "549351.552212985712345",
"usdValue": "12.34567890123456789",
"realizedPnlUsd": "0"
},
"receivedAt": 1772000001050
}
}account/token_verified
此事件仅包含代币信息,表示 TweetStream 首次观察到被监控代币的认证,不包含作者、观点或持仓。observedAt 是观察时间,不是认证发生的时间。认证不代表安全保证或投资建议。
观察到代币认证
json
{
"v": 1,
"t": "account",
"op": "token_verified",
"id": "fomo:verified:1399811149:coin:1772000001000",
"ts": 1772000001060,
"d": {
"platform": "fomo",
"coin": {
"address": "So11111111111111111111111111111111111111112",
"networkId": 1399811149,
"symbol": "EXM"
},
"observedAt": 1772000001000,
"receivedAt": 1772000001050
}
}读取时间戳和市场数值
- 时间戳使用 Unix 毫秒。
thesis.createdAt是观点创建时间;可选的receivedAt是 TweetStream 接收时间;信封ts是准备发送的时间。 - 代币市场数值和持仓金额使用十进制字符串。代币市场数值附带
metadataObservedAt,表示该次观察的数据,不保证是当前报价。 - 按信封
id幂等处理完全相同的重放。可选字段缺失表示不可用,不代表零。公布的 X 延迟数据不适用于 FOMO。