Skip to content

X Follower Exporter

GET/v1/x/users/{handle}/followers
MCPx_followers3 credits per page (20 rows by default)Live

Updated

Description

Export the followers of any public X account, page by page, with each follower's bio, follower count and whether they accept DMs. Costs 3 credits per page of about 20 followers. Tip: filter by canDm and followers to build an outreach list; large accounts take many pages, so set a page budget.

Parameters

handle path, string, required
Handle with or without @, or a profile URL. 1-15 characters.
limit query, integer
Max rows to return (1-100). One X page holds about 20 rows, so values above 20 still return one page. Range 1 to 100. Default 20.
cursor query, string
Opaque cursor from the previous response's page.nextCursor. Length 1 to 2048.

Request examples

curl "https://chatterapi.com/v1/x/users/levelsio/followers" \
  -H "Authorization: Bearer $CHATTERAPI_KEY"

Response

data is a list of XUser, with page.nextCursor and page.hasMore for the next page. Fields:

FieldTypeNullableDescription
idstringnoPlatform id.
handlestringnoHandle without @.
namestringnoName.
biostringyesProfile bio.
followersnumberyesFollower count.
followingnumberyesFollowing count.
tweetsnumberyesTweet count.
verifiedbooleanyesLegacy verification.
blueVerifiedbooleanyesPaid blue check.
canDmbooleanyesWhether the account accepts DMs from anyone.
protectedbooleanyesProtected (private) account.
locationstringyesProfile location.
urlstringyesWebsite in the profile.
avatarUrlstringyesAvatar image URL.
createdAtstringyesISO 8601 UTC timestamp.
response
{
  "data": [
    {
      "id": "197785542",
      "handle": "dannypostma",
      "name": "Danny Postma",
      "bio": "Founder of HeadshotPro, a Singapore-based AI photography company.",
      "followers": 187346,
      "following": 739,
      "tweets": 29627,
      "verified": false,
      "blueVerified": true,
      "canDm": true,
      "protected": null,
      "location": null,
      "url": null,
      "avatarUrl": "https://pbs.twimg.com/profile_images/1587046912490090496/kuBUqNkb_normal.jpg",
      "createdAt": "2010-10-02T13:11:54.000Z"
    },
    {
      "id": "24179991",
      "handle": "dvassallo",
      "name": "Daniel Vassallo",
      "bio": "🚀 https://t.co/X5QMm3wlHe \n🏭 https://t.co/ZvHZp55zso \nđŸ•šī¸ https://t.co/vHWIhHxTv6",
      "followers": 205470,
      "following": 2449,
      "tweets": 55084,
      "verified": false,
      "blueVerified": true,
      "canDm": false,
      "protected": null,
      "location": "WA, USA",
      "url": null,
      "avatarUrl": "https://pbs.twimg.com/profile_images/2008284492210085888/-aEKwo9U_normal.jpg",
      "createdAt": "2009-03-13T14:34:10.000Z"
    },
    {
      "id": "343990983",
      "handle": "arvidkahl",
      "name": "Arvid Kahl",
      "bio": "Building https://t.co/od97B0HVrk at @audiohook in public. Raising all the boats with kindness.\n\nđŸŽ™ī¸ https://t.co/6w69DZmi8H ¡ âœī¸ https://t.co/lpnor5rsTW",
      "followers": 212888,
      "following": 17994,
      "tweets": 86684,
      "verified": false,
      "blueVerified": true,
      "canDm": true,
      "protected": null,
      "location": "Ontario, Canada",
      "url": null,
      "avatarUrl": "https://pbs.twimg.com/profile_images/1201525049766883328/QPimCC9z_normal.jpg",
      "createdAt": "2011-07-28T11:30:56.000Z"
    }
  ],
  "page": {
    "nextCursor": "eyJ2IjoxLCJwIjoiZ2V0eGFwaSIsImMiOm51bGwsIm8iOjIwLCJoIjoiNWJiYzM5ZjdkYTZmIn0",
    "hasMore": true
  },
  "credits": {
    "charged": 3,
    "remaining": 24997
  },
  "requestId": "req_01JA7Q3V8K2N4P5R6S7T8V",
  "cached": false
}

Recorded live response captured 2026-10-14, truncated to 3 items. Credits and request id are illustrative.

Credits

3 credits per call (per page (20 rows by default)). Failed calls cost 0. Cached responses cost the same. Test keys cost 0. Repeat calls with the same input within 6 hours are served from cache.

Example: exporting 1,000 rows is 50 pages, so 150 credits.

Errors this tool can return

Try it