Skip to content
Eden Engine

X (Twitter) Follower List (by Screen Name, Paginated)

omnial/twitter-web-fetch-user-followers

Given an X (Twitter) `screen_name`, returns one page of that account's public followers: each follower's handle, display name, bio, verification/business-affiliate status, DM-ability, self-published location, join date, and their own follower/friend/media counts. Pass the `next_cursor` from a prior call back in as `cursor` to fetch the next page.

activeper callv1
Provider
Web & Business Data Network
Category
twitter
Provider price
$0.0020475 per call
Latency p50 / p95
— / —
Success rate
—
Verified
—

Provider list price; Omnial MCP charges provider cost plus a platform markup on top.

Contract

input_schema.json
{
  "type": "object",
  "required": [
    "screen_name"
  ],
  "properties": {
    "cursor": {
      "type": "string",
      "description": "Cursor"
    },
    "screen_name": {
      "type": "string",
      "examples": [
        "elonmusk"
      ],
      "description": "Screen Name"
    }
  },
  "additionalProperties": false
}
output_schema.json
{
  "type": "object",
  "required": [
    "followers_count",
    "followers",
    "next_cursor",
    "status",
    "more_users"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "'ok' on both real calls observed."
    },
    "followers": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "user_id",
          "screen_name",
          "name",
          "created_at",
          "followers_count"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "The follower's public display name."
          },
          "can_dm": {
            "type": "boolean",
            "description": "Whether the follower currently accepts DMs."
          },
          "user_id": {
            "type": "string",
            "description": "The follower's numeric X user ID."
          },
          "website": {
            "type": [
              "string",
              "null"
            ],
            "description": "The follower's self-published external link. Observed `null` on every one of the ~120 followers captured across both real pages -- unconfirmed whether a populated value is ever returned by this endpoint at all."
          },
          "location": {
            "type": "string",
            "description": "Free-text profile location the follower chose to publish; ranges from a real place ('Florida, USA') to unrelated text ('Earth', 'Cave') or an empty string when unset. Not a verified home address."
          },
          "verified": {
            "type": "boolean",
            "description": "Legacy verification badge; observed `false` on every follower captured."
          },
          "affiliates": {
            "type": "object",
            "properties": {
              "label": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "object",
                    "properties": {
                      "url": {
                        "type": [
                          "string",
                          "null"
                        ],
                        "description": "A link to the affiliated organization. Value withheld, same as `profile_image`."
                      },
                      "urlType": {
                        "type": "string",
                        "description": "e.g. 'DeepLink' on every case observed."
                      }
                    },
                    "additionalProperties": true
                  },
                  "badge": {
                    "type": "object",
                    "properties": {
                      "url": {
                        "type": [
                          "string",
                          "null"
                        ],
                        "description": "The affiliate badge image. Value withheld, same as `profile_image`."
                      }
                    },
                    "additionalProperties": true
                  },
                  "description": {
                    "type": "string",
                    "description": "The affiliated organization's name, e.g. 'Peterson Academy'."
                  },
                  "userLabelType": {
                    "type": "string",
                    "description": "e.g. 'BusinessLabel' on every case observed."
                  },
                  "userLabelDisplayType": {
                    "type": "string",
                    "description": "e.g. 'Badge' on every case observed."
                  }
                },
                "additionalProperties": true
              }
            },
            "description": "Present only for a follower with a business-affiliate badge (e.g. a linked organization or media brand) -- observed on 5 of the ~120 followers captured, always public figures/companies; absent (or an empty array upstream) for an ordinary follower with no affiliation.",
            "additionalProperties": true
          },
          "created_at": {
            "type": "string",
            "description": "The follower account's creation date, e.g. 'Sun Dec 06 23:33:02 +0000 2009'."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "The follower's own public bio text. Observed `null` on every one of the ~120 followers captured across both real pages -- unconfirmed whether a populated bio is ever returned by this endpoint at all."
          },
          "media_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Observed `null` on every follower captured across both real pages."
          },
          "screen_name": {
            "type": "string",
            "description": "The follower's public @handle (without the @)."
          },
          "blue_verified": {
            "type": "boolean"
          },
          "friends_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Observed `null` on every follower captured across both real pages."
          },
          "profile_image": {
            "type": [
              "string",
              "null"
            ],
            "description": "The follower's profile picture. Value withheld (returned as `null` regardless of what the account has set) -- only whether a picture exists is not even observable here, since this field is unconditionally nulled."
          },
          "statuses_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Observed `null` on every follower captured across both real pages."
          },
          "followers_count": {
            "type": "number",
            "description": "The FOLLOWER's own follower count (ranged from 0 to over 41 million across the two real pages captured) -- distinct from the top-level `followers_count` above."
          },
          "business_account": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Observed `null` on every follower captured across both real pages."
          }
        },
        "additionalProperties": true
      },
      "description": "This page's followers, newest-follow-first on both real calls observed."
    },
    "more_users": {
      "type": "boolean",
      "description": "Whether a further page exists past `next_cursor`."
    },
    "next_cursor": {
      "type": "string",
      "description": "Pass back in as `cursor` to fetch the next page."
    },
    "followers_count": {
      "type": "number",
      "description": "The QUERIED account's total follower count (e.g. ~241.5 million for the account calibrated), not the number of entries on this page -- distinct from the per-item `followers[].followers_count` below, which is each individual follower's own count."
    }
  },
  "description": "The follower-list page, as returned at routing.responseResultPath ($.output).",
  "additionalProperties": true
}

Pricing

Every real charge, itemised. A model that quietly omits one is a slow financial leak, so nothing here is rolled up, and a charge that only applies to some inputs says so rather than being added in.

Prices in this catalog are the provider's own list price, not your bill: Omnial MCP charges provider cost plus a platform markup on top, so what you are charged is higher than the figure shown. For the exact amount a specific call will cost, run omnial_execute with dry_run: true; that number includes the markup and is what we hold while the call runs. It is a quote, not a cap on the charge.

ChargeRate
Per call
Flat, regardless of what comes back
$0.0020475
Cost basis
Not recorded

This tool's catalog entry does not record how its final bill is determined, so we will not tell you whether its cost is fixed before the call or reported by the provider afterwards. Either way what is held is a quote rather than a cap: you are charged what the call actually costs, bounded at 2x the quote.

Updated
Sep 15, 2026