# Number of monitored followers per account category

`GET https://twitterscore.io/api/v1/get_categorized_followers_count`

Breaks the account's monitored followers down by TwitterScore category (Projects, Venture Capitals, Influencers, Founders, and so on). The first entry, named "All", is the distinct count of monitored followers; the last entry, "NoCategory", counts followers that have no category. Entries in between are ordered Projects, Venture Capitals, Influencers first, then any other categories by count descending. A follower that belongs to several categories is counted in each of them, so per-category counts can add up to more than "All". Only active monitored followers with an active follow relationship are counted, which is why the numbers are far below the raw X follower count.

**Required:** one of `username`, `twitter_id`.
**Nested fields**

- `categories[].name` (string): Category name, or the synthetic names "All" and "NoCategory".
- `categories[].id` (integer): Category id as used by get_categories and get_followers filters. null for "All", 0 for "NoCategory".
- `categories[].cnt` (integer): Number of monitored followers in this category. For "All" it is the distinct follower count.

## Parameters

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `username` | string | no |  | X/Twitter handle of the account, without the leading @. Surrounding whitespace and a trailing slash are tolerated; renamed handles are resolved via previous-username history. |
| `twitter_id` | integer | no |  | Numeric X/Twitter user id of the account. Tried first when both are sent; falls back to username if the id resolves nothing. |

At least one of `username`, `twitter_id` is required.

## Example request

```bash
curl -s "https://twitterscore.io/api/v1/get_categorized_followers_count?username=VitalikButerin" \
  -H "X-API-Key: $TWITTERSCORE_API_KEY" \
  -H "User-Agent: my-app/1.0 (contact@example.com)"
```

```python
import os, requests

r = requests.get(
    "https://twitterscore.io/api/v1/get_categorized_followers_count",
    params={"username": "VitalikButerin"},
    headers={"X-API-Key": os.environ["TWITTERSCORE_API_KEY"],
             "User-Agent": "my-app/1.0 (contact@example.com)"},
    timeout=15,
)
data = r.json()
if not data.get("success", True):      # errors arrive as success=false (see /developers/errors/)
    raise RuntimeError(data["message"])
print(data)
```

```javascript
const r = await fetch("https://twitterscore.io/api/v1/get_categorized_followers_count?username=VitalikButerin", {
  headers: { "X-API-Key": process.env.TWITTERSCORE_API_KEY,
             "User-Agent": "my-app/1.0 (contact@example.com)" },
});
const data = await r.json();
if (data.success === false) throw new Error(data.message);
console.log(data);
```

## Example response

```json
{
  "success": true,
  "categories": [
    {
      "name": "All",
      "id": null,
      "cnt": 48213
    },
    {
      "name": "Projects",
      "id": 1,
      "cnt": 15340
    },
    {
      "name": "Venture Capitals",
      "id": 3,
      "cnt": 1872
    },
    {
      "name": "Influencers",
      "id": 2,
      "cnt": 9865
    },
    {
      "name": "Founders",
      "id": 5,
      "cnt": 7421
    },
    {
      "name": "Exchanges",
      "id": 7,
      "cnt": 312
    },
    {
      "name": "NoCategory",
      "id": 0,
      "cnt": 16110
    }
  ]
}
```

## Errors

Error codes this endpoint can return (see [Errors](/developers/errors/) for the body format): `api_key_missing`, `api_key_invalid`, `api_access_deactivated`, `api_key_revoked`, `invalid_params`, `account_not_found`, `method_not_allowed`, `rate_limited`, `quota_exceeded`, `server_error`.

---

Authentication: `X-API-Key` header (or `Authorization: Bearer`), see [Authentication](/developers/authentication/). Limits: per-minute rate and monthly quota by plan, see [Rate limits](/developers/rate-limits/). Machine-readable definition: [/openapi.json](/openapi.json).