TopStats.gg
Discord

Bots

Monthly votes have changed!

GET
/discord/bots/{id}

Authorization

ApiKeyAuth
authorization<token>

In: header

Path Parameters

id*string

Discord snowflake ID

Match^[0-9]{17,19}$

Response Body

application/json

application/json

curl -X GET "https://example.com/discord/bots/583807014896140293"
{  "id": "432610292342587392",  "topGGId": "432610292342587392",  "certified": false,  "owners": [    "275748765166469120"  ],  "deleted": false,  "name": "Mudae",  "def_avatar": "1.png",  "avatar": "https://cdn.discordapp.com/avatars/432610292342587392/29cb28fbf65a3958105026ab03abd306.png",  "short_desc": "Database of 110,000 anime/game characters: make and customize the best collection in your server. 400 commands, multiplayer games and more!",  "lib": "",  "prefix": "$",  "website": "https://www.patreon.com/mudae",  "approved_at": "2018-04-21T21:17:57.793Z",  "monthly_votes": 24852,  "server_count": 3371839,  "total_votes": 221182027,  "monthly_votes_rank": 1,  "server_count_rank": 15,  "total_votes_rank": 1,  "timestamp": "2025-05-01T08:00:00Z",  "unix_timestamp": "1746086400000",  "tags": [    "anime",    "fun",    "game"  ],  "avg_review_rating": 4.526118704362479,  "review_count": 10682,  "percentage_changes": {    "daily": 11.11,    "monthly": 0.97  }}
GET
/discord/bots/{id}/historical

Authorization

ApiKeyAuth
authorization<token>

In: header

Path Parameters

id*string

Discord snowflake ID

Match^[0-9]{17,19}$

Query Parameters

type*|||

Type of graph data to fetch

timeFrame*||||||||||||

Timeframe for historical data

unlisted?boolean
unlisted_reason?string

Response Body

application/json

application/json

curl -X GET "https://example.com/discord/bots/583807014896140293/historical?type=monthly_votes&timeFrame=alltime"
{  "data": [    {      "time": "2025-04-30T00:00:00.000Z",      "id": "432610292342587392",      "monthly_votes": 24852,      "total_votes": 221182027,      "server_count": 3371839,      "review_count": 10682    },    {      "time": "2025-04-29T00:00:00.000Z",      "id": "432610292342587392",      "monthly_votes": 24710,      "total_votes": 221100000,      "server_count": 3370000,      "review_count": 10680    }  ]}
GET
/discord/bots/{id}/recent

Authorization

ApiKeyAuth
authorization<token>

In: header

Path Parameters

id*string

Discord snowflake ID

Match^[0-9]{17,19}$

Response Body

application/json

application/json

curl -X GET "https://example.com/discord/bots/583807014896140293/recent"
{  "hourlyData": [    {      "time": "2025-05-01T08:00:00.000Z",      "monthly_votes": 24852,      "total_votes": 221182027,      "server_count": 3371839,      "review_count": 10682,      "monthly_votes_change": 142,      "monthly_votes_change_perc": 0.57,      "server_count_change": 1839,      "total_votes_change": 82027,      "review_count_change": 2    }  ],  "dailyData": [    {      "time": "2025-05-01T00:00:00.000Z",      "monthly_votes": 24852,      "total_votes": 221182027,      "server_count": 3371839,      "review_count": 10682,      "monthly_votes_change": 142,      "monthly_votes_change_perc": 0.57,      "server_count_change": 1839,      "total_votes_change": 82027,      "review_count_change": 2    }  ]}
GET
/discord/bots/{id}/leaderboard

Authorization

ApiKeyAuth
authorization<token>

In: header

Path Parameters

id*string

Discord snowflake ID

Match^[0-9]{17,19}$
limit*number

Maximum number of results to return

Range1 <= value <= 500
Default100
offset*number

Offset for pagination

Range0 <= value
Default0

Response Body

application/json

application/json

curl -X GET "https://example.com/discord/bots/583807014896140293/leaderboard"
{  "code": 200,  "data": {    "total": 150,    "leaderboard": [      {        "position": "1",        "connectionId": "809106054496370688",        "userId": "3323278129891049472",        "voteCount": 542,        "totalVotesByWeight": 1625,        "streakCount": 12,        "lastVote": "2025-05-01T08:15:00.245Z",        "user": {          "topggId": "3323278129891049472",          "discordId": "205680187394752512",          "username": "Xignotic",          "avatar": "https://cdn.discordapp.com/avatars/205680187394752512/9d9214191caa8969d907c91444261755.png"        }      }    ]  }}
GET
/discord/bots/{id}/leaderboard/{userId}

Authorization

ApiKeyAuth
authorization<token>

In: header

Path Parameters

id*string

Discord snowflake ID

Match^[0-9]{17,19}$
userId*string

Discord snowflake ID

Match^[0-9]{17,19}$

Response Body

application/json

application/json

curl -X GET "https://example.com/discord/bots/583807014896140293/leaderboard/583807014896140293"
{  "code": 200,  "total": "150",  "data": {    "position": "1",    "connectionId": "809106054496370688",    "userId": "3323278129891049472",    "voteCount": 542,    "totalVotesByWeight": 1625,    "streakCount": 12,    "lastVote": "2025-05-01T08:15:00.245Z",    "user": {      "topggId": "3323278129891049472",      "discordId": "205680187394752512",      "username": "Xignotic",      "avatar": "https://cdn.discordapp.com/avatars/205680187394752512/9d9214191caa8969d907c91444261755.png"    }  }}