# X (Twitter) user followers API

The X (Twitter) user followers API returns a page of the accounts following an X user, up to 200 a page, newest followers first. One call costs 12 credits ($0.024 to $0.04 depending on the pack); failed calls are free. Call it over HTTP or from your AI client over MCP. Last tested 2026-10-17.

- Page: https://socialtoai.com/x-followers-api/
- Last updated: 2026-10-17
- Last tested: 2026-10-17

| Request | Price key | Credits |
| --- | --- | --- |
| `POST /v1/call/x.followers` | `x.followers` | 12 |

## Request

```bash
curl https://api.socialtoai.com/v1/call/x.followers \
  -H "Authorization: Bearer $SOCIALTOAI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "NASA"
  }'
```

```python
import os
import requests

response = requests.post(
    "https://api.socialtoai.com/v1/call/x.followers",
    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},
    json={
        "username": "NASA",
    },
)
print(response.json())
```

## Parameters

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `username` | string | Required | — | X handle, without the @ |
| `cursor` | string | Optional | — | Pass page.cursor from the last response to get the next page. |

## Where the values come from

- `username`: X handle, without the @ (e.g. `NASA`)
  Returned as `username` by: [following](https://socialtoai.com/x-following-api.md), [search · type=user](https://socialtoai.com/x-search-api.md), [community_members](https://socialtoai.com/x-community-members-api.md), [list_followers](https://socialtoai.com/x-list-followers-api.md), [list_members](https://socialtoai.com/x-list-members-api.md)

## Response fields

| Field | Type | Meaning | Given |
| --- | --- | --- | --- |
| `items[].username` | string | The handle. | yes |
| `items[].name` | string | The display name. | yes |
| `items[].url` | string | A link to the profile. | yes |
| `items[].bio` | string | The bio. | yes |
| `items[].verified` | boolean | Whether the account is verified. | always null: X does not give it |
| `items[].followers` | integer | Follower count. | yes |
| `items[].following` | integer | How many accounts it follows. | yes |
| `items[].posts_count` | integer | How many posts it has published. | yes |

Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. [Response format](https://socialtoai.com/docs/api/response.md)

## Sample response

Sample data: names, links and text are replaced by placeholders; the numbers are as recorded.

```json
{
  "request_id": "req_00000000-0000-4000-8000-000000000001",
  "schema_version": "v1",
  "fetched_at": "2026-10-10T14:28:18.000Z",
  "action": "call",
  "op": "x.followers",
  "platform": "x",
  "status": "ok",
  "items": [
    {
      "platform": "x",
      "id": "…",
      "ref": "…",
      "approx": [],
      "type": "account",
      "username": "…",
      "name": "…",
      "url": "https://example.com/…",
      "bio": null,
      "verified": null,
      "followers": 0,
      "following": 3,
      "posts_count": 0
    }
  ],
  "unavailable": ["verified"],
  "page": {
    "has_more": true,
    "cursor": "cur_…",
    "cursor_expires_at": "2026-10-10T14:58:18.000Z"
  },
  "warnings": [],
  "applied_params": {
    "username": "NASA"
  },
  "cost_credits": 12,
  "billing": {
    "cost_credits": 12,
    "balance_credits": 88,
    "today_spend_credits": 12,
    "daily_limit_credits": null,
    "daily_remaining_credits": null,
    "display": "This call: 12 credits. Balance: 88 credits."
  },
  "replayed": false
}
```

## Paging and failures

- One call returns a page of up to 200 items. When page.has_more is true, send page.cursor back as cursor for the next page; each page costs 12 credits and a cursor works for 30 minutes.
- A call that runs and finds nothing is a successful call: status is "empty", items is empty, and it costs 12 credits.
- On this call X cannot tell a post that does not exist from one with no data: both come back as empty, and both are charged.
- 1 call per second per key, 5 after a purchase; going over is not charged. [Rate limits](https://socialtoai.com/docs/credits-and-billing.md#rate-limits)
- A failed call costs 0 credits and is never retried on its own. [Error codes](https://socialtoai.com/docs/api/errors.md)

## Ask your AI

- Get a page of the accounts following an X user, up to 200 a page, newest followers first: NASA. → `call {"op":"x.followers","username":"NASA"}`, 12 credits
- Find X accounts about "Smithsonian", then for the first 3: get a page of the accounts following an X user, up to 200 a page, newest followers first. → `search {"platform":"x","query":"Smithsonian","type":"user"}`, `call {"op":"x.followers","username":"<username>"}` × 3, 41 credits

## The same call on other platforms

| Platform | Price key | Credits | Page |
| --- | --- | --- | --- |
| TikTok | `tiktok.followers` | 2 | https://socialtoai.com/tiktok-followers-api.md |
| Weibo | `weibo.followers` | 2 | https://socialtoai.com/weibo-followers-api.md |
| Zhihu | `zhihu.followers` | 2 | https://socialtoai.com/zhihu-followers-api.md |

## More on X

| Interface | What it does | Price key | Credits | Page |
| --- | --- | --- | --- | --- |
| `article` | Get the long-form article attached to an X post by the post's ID. | `x.article` | 2 | https://socialtoai.com/x-article-api.md |
| `quotes` | Get a page of the X posts that quote a post, newest first or most popular first. | `x.quotes` | 4 | https://socialtoai.com/x-quotes-api.md |
| `thread` | Get the posts of an X thread by the ID of any post in it. | `x.thread` | 9 | https://socialtoai.com/x-thread-api.md |
| `following` | Get a page of the accounts an X user follows, up to 200 a page. | `x.following` | 12 | https://socialtoai.com/x-following-api.md |
| `mentions` | Get a page of the posts that mention an X user, newest first. | `x.mentions` | 4 | https://socialtoai.com/x-mentions-api.md |
| `search` | Find posts by keyword: text, author, likes, comment count, views and publish time. | `x.search` | 2 | https://socialtoai.com/x-search-api.md |
| `trending` | What is trending now: title, rank and heat. | `x.trending` | 6 | https://socialtoai.com/x-trending-api.md |
| `detail` | One post by ID or link: text, author, likes, comment count, views and publish time. | `x.detail` | 1 | https://socialtoai.com/x-detail-api.md |
| `comments` | The comments under one post: text, likes, reply count and time. | `x.comments` | 2 | https://socialtoai.com/x-comments-api.md |
| `user_profile` | One account: name, bio, followers, following and post count. | `x.user_profile` | 1 | https://socialtoai.com/x-user-profile-api.md |

## FAQ

**Do I need a X account or X's own API access?**

No. You only need a SocialToAI key. The call returns content and account information publicly visible on X; you never sign in to X or apply for anything there.
