---
title: "Smart Money Token Tweets"
method: GET
path: "/gateway/v1/smart-money/token/tweets"
tags: ["Smart Money"]
---

# Smart Money Token Tweets

`GET /gateway/v1/smart-money/token/tweets`

## Request

- Base URL: `https://api.asksurf.ai`
- URL: `https://api.asksurf.ai/gateway/v1/smart-money/token/tweets`
- Auth: HTTP bearer

Lists tracked KOLs' posts that call a token, newest first, with the call direction and the KOL's position at post time (`holding`, `bought_after`, `sold_before`, ...): tweets on X and comments on their own FOMO trades (`source`). Returns post references (ID, and URL for tweets), not post text.

Look up by token `symbol`. Unknown symbols return an empty list.

**Privacy:** responses never include wallet addresses or transaction identifiers. Per-KOL amounts are rounded to 2 significant figures, and per-token KOL lists carry names only.

**Data refresh:** daily

## Query parameters

- `symbol` string, required: Token symbol (case-insensitive)
- `limit` integer: Results per page
- `offset` integer: Pagination offset

## Response `200`

OK

- DataResponseSmartMoneyTweet
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `data` SmartMoneyTweet[], nullable, required
    - `direction` string, required: Call direction: long, short or neutral
    - `handle` string, required: Trader handle: an X handle without @, or fomo:<handle> for a trader known only from FOMO
    - `posted_at` integer, required: Post time (Unix seconds)
    - `source` 'x' | 'fomo', required: Where the post was made: x or fomo
    - `tweet_id` string, required: Post ID: the tweet ID on X; on FOMO an opaque ID that links nowhere
    - `url` string, required: Tweet URL; empty for FOMO posts (they link nowhere)
    - `verdict` string: Position at post time: holding, bought_after, sold_before, opposite_position, no_position, out_of_window
    - `views` integer, required: Tweet views (0 for FOMO posts)
  - `meta` OffsetMeta, required
    - `cached` boolean, required: Whether this response was served from cache
    - `credits_used` integer, required: Credits deducted for this request
    - `empty_reason` string: Hint explaining why the data array is empty, when applicable
    - `has_more` boolean: Whether more items may exist beyond this response. For offset-paged endpoints, continue with a larger offset. For time-series endpoints without offset/cursor controls, true means the requested time range hit an upstream cap; narrow from/to to continue. Omitted when exhaustion cannot be proven.
    - `limit` integer, required: Maximum number of items returned in this response
    - `offset` integer, required: Number of items skipped (pagination offset)
    - `total` integer: Total number of matching items (before pagination). Omitted when total is unknown.
    - `watermark` integer: Warehouse watermark (Unix seconds) this response was computed at, on warehouse-backed endpoints (e.g. Hyperliquid /trades/aggregate) — rows up to this time come from the warehouse, newer rows from the live tail. Omitted elsewhere.

## Other responses

- `default`: Error

## Changes

- **2026-11-04** `91774fdd5302`: 1 info
  - added the required property `data/items/source` to the response with the `200` status
- **2026-10-23** `cd899b4049b6`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api/changes/gateway/v1/smart-money/token/tweets/get.md)

---

[API](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api.md) - [All operations](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api/revisions/91774fdd5302?raw)
