X / Twitter API

X / Twitter Replies API

Fetch the replies to any X (Twitter) post URL as structured records: author, text, and engagement. An empty result is valid and does not assert whether the target post exists.

POST/v1/run/twitter.replies
Uptime
99.86%
30d · 731 calls
Requests
731
30d · weekly, last 12 wks
Response
1.2s
median · 30d

Try it

Make your first request

Open in
Get a free key
Sample response
Free runs return only the first 3 results. Fund a key to get the full response.
{
  "data": {
    "items": [
      {
        "authorHandle": "alex_rivera",
        "authorName": "Alex Rivera",
        "createdUtc": 12.5,
        "id": "a1b2c3d4",
        "likeCount": 12500,
        "media": [
          {
            "height": 42,
            "type": "general",
            "url": "https://example.com/page",
            "videoUrl": "https://example.com/page",
            "width": 1024
          }
        ],
        "quoteCount": 12500,
        "replyCount": 12500,
        "repostCount": 12500,
        "text": "A short example description of this item.",
        "url": "https://example.com/page",
        "viewCount": 12500
      }
    ]
  },
  "found": true
}
Response interface
interface TwitterRepliesResponse {
  data: {
    items: {
      authorHandle?: string;
      authorName?: string;
      createdUtc: number;
      id: string;
      likeCount?: number;
      media?: {
        height?: number;
        type: string;
        url: string;
        videoUrl?: string;
        width?: number;
      }[];
      quoteCount?: number;
      replyCount?: number;
      repostCount?: number;
      text: string;
      url: string;
      viewCount?: number;
    }[];
  } | null;
  found: boolean;
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

Request, response, and price

Last verified 2026-09-17 · uptime and latency measured over 30d
POST /v1/run/twitter.replies
curl -X POST https://api.getanyapi.com/v1/run/twitter.replies \
  -H "Authorization: Bearer $ANYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://x.com/jack/status/20"}'
FieldTypeExample value
Request body
urlstring"https://x.com/jack/status/20"Full URL of the X (Twitter) post to fetch replies for (e.g. https://x.com/nasa/status/1846987139428634858).
limitintegerMaximum number of results to return (1-40, default 40). Per-result lanes cost less at lower limits; a backup that bills its native page may cost up to the advertised request price.
Response
dataobject
data.itemsobject[]Reply records for the requested post. Populated whenever the provider has data for the entity.
data.items[].authorHandlestringScreen name / handle of the reply's author, without the @ prefix.
data.items[].authorNamestringDisplay name of the reply's author. Empty when the upstream omits it.
data.items[].createdUtcnumberUTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
data.items[].idstringThe reply's numeric tweet ID, as a string. Populated whenever the provider has data for the entity.
data.items[].likeCountintegerNumber of likes on this reply.
data.items[].mediaobject[]Photo, video, and GIF attachments on the post. Empty when the post has none.
data.items[].media[].heightintegerPixel height of the media item, when the lane reports it.
data.items[].media[].typestringOne of photo, video, or gif.
data.items[].media[].urlstringImage URL. For a video or GIF this is the poster/thumbnail frame. X media URLs on pbs.twimg.com are publicly fetchable without authentication; append ?name=orig for the full-resolution original.
data.items[].media[].videoUrlstringPlayable video file URL. Present only for video and gif items.
data.items[].media[].widthintegerPixel width of the media item, when the lane reports it.
data.items[].quoteCountintegerNumber of quote tweets of this reply.
data.items[].replyCountintegerNumber of replies to this reply.
data.items[].repostCountintegerNumber of reposts/retweets of this reply.
data.items[].textstringThe reply's text. Empty for media-only replies with no text.
data.items[].urlstringCanonical x.com URL of the reply, with tracking query params stripped. Populated whenever the provider has data for the entity.
data.items[].viewCountintegerNumber of views of this reply.
foundbooleanWhether the provider returned a reply result. An empty items array is valid and may mean the post has no replies or the target could not be resolved.
Price
Price per requestUSD$0.0005
Price /1k reqUSD$0.50

FAQ

About the X / Twitter Replies API

The AnyAPI X / Twitter Replies API returns X / Twitter replies data as normalized JSON from one POST call to /v1/run/twitter.replies. Fetch the replies to any X (Twitter) post URL as structured records: author, text, and engagement. An empty result is valid and does not assert whether the target post exists. AnyAPI routes each request across 4 sources and falls back automatically when one fails. It costs from $0.50 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.9% of X / Twitter replies calls through AnyAPI succeeded, with a median response time of 1.2 seconds across 731 measured calls.

It costs from $0.50 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet, each call draws it down, and a failed request costs $0.

Fetch the replies to any X (Twitter) post URL as structured records: author, text, and engagement. An empty result is valid and does not assert whether the target post exists. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 99.9% of X / Twitter replies calls through AnyAPI succeeded, with a median response time of 1.2 seconds across 731 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.