TopStats.gg
Discord

Bots

Fetch a Discord bot

Get data from your favourite Discord bots

GET
/discord/bots/{id}

Authorization

authorization<token>

In: header

Path Parameters

idRequiredstring

Response Body

Default Response

idRequiredstring
topGGIdRequiredstring
certifiedboolean
ownersRequiredarray<string>
deletedRequiredboolean
nameRequiredstring
def_avatarRequiredstring
avatarstring
Format: "uri"
short_descRequiredstring
libstring
prefixRequiredstring
websitestring
Format: "uri"
approved_atRequiredstring
Format: "date-time"
monthly_votesRequiredinteger
server_countinteger
total_votesRequiredinteger
review_countRequiredinteger
monthly_votes_rankRequiredinteger
server_count_rankRequiredinteger
total_votes_rankRequiredinteger
timestampRequiredstring
Format: "date-time"
unix_timestampstring
tagsRequiredarray<string>
avg_review_ratingRequirednumber
percentage_changesRequiredobject
export interface Response {
  id: string;
  topGGId: string;
  certified?: boolean;
  owners: string[];
  deleted: boolean;
  name: string;
  def_avatar: string;
  avatar?: string;
  short_desc: string;
  lib?: string;
  prefix: string;
  website?: string;
  approved_at: string;
  monthly_votes: number;
  server_count?: number;
  total_votes: number;
  review_count: number;
  monthly_votes_rank: number;
  server_count_rank: number;
  total_votes_rank: number;
  timestamp: string;
  unix_timestamp?: string;
  tags: string[];
  avg_review_rating: number;
  percentage_changes: {
    daily?: number;
    monthly?: number;
  };
}
 
curl -X GET "https://api.topstats.gg/discord/bots/string" \
  -H "authorization: <token>"
{
  "id": "583807014896140293",
  "topGGId": "583807014896140293",
  "certified": false,
  "owners": [
    "321714991050784770",
    "205680187394752512",
    "116930717241311236"
  ],
  "deleted": false,
  "name": "TopStats",
  "def_avatar": "1.png",
  "avatar": "https://cdn.discordapp.com/avatars/583807014896140293/991f10cb648e9115e5f6522a40f34d55.png",
  "short_desc": "Get statistics of every bot listed on top.gg, check out the latest rankings and data on TopStats.gg\n\n",
  "lib": "",
  "prefix": "/",
  "website": "https://topstats.gg",
  "approved_at": "2020-08-02T12:38:42.000Z",
  "monthly_votes": 4,
  "server_count": 364,
  "total_votes": 278,
  "review_count": 0,
  "monthly_votes_rank": 1649,
  "server_count_rank": 3420,
  "total_votes_rank": 4491,
  "timestamp": "2025-04-30T13:00:00Z",
  "unix_timestamp": "1746018000000",
  "tags": [
    "bot-statistics",
    "infomation-statistics",
    "rankings",
    "ranks",
    "social",
    "statistics",
    "stats",
    "topgg",
    "web-dashboard"
  ],
  "avg_review_rating": 4.9,
  "percentage_changes": {
    "daily": 0,
    "monthly": 0.34
  }
}

Fetch historical Discord bot data

Get historical data from Discord bots

GET
/discord/bots/{id}/historical

Authorization

authorization<token>

In: header

Path Parameters

idRequiredstring

Query Parameters

typeRequiredstring
Value in: "monthly_votes" | "total_votes" | "server_count" | "review_count"
timeFrameRequiredstring
Value in: "alltime" | "5y" | "3y" | "1y" | "270d" | "180d" | "90d" | "30d" | "7d" | "3d" | "1d" | "12h" | "6h"

Response Body

Default Response

dataRequiredarray<object>
export interface Response {
  data: {
    time?: string;
    id?: string;
    monthly_votes?: number;
    total_votes?: number;
    server_count?: number;
    review_count?: number;
  }[];
}
 
curl -X GET "https://api.topstats.gg/discord/bots/string/historical?type=monthly_votes&timeFrame=alltime" \
  -H "authorization: <token>"
{
  "data": [
    {
      "time": "2025-03-31T00:00:00.000Z",
      "id": "583807014896140293",
      "monthly_votes": 265,
      "total_votes": 265,
      "server_count": 265,
      "review_count": 265
    }
  ]
}

Fetch recent Discord bot data

Get recent discord data from the last 30 days and 30 hours

GET
/discord/bots/{id}/recent

Authorization

authorization<token>

In: header

Path Parameters

idRequiredstring

Response Body

Default Response

hourlyDataRequiredarray<object>
dailyDataRequiredarray<object>
export interface Response {
  hourlyData: {
    time: string;
    monthly_votes: number;
    total_votes: number;
    server_count: number;
    review_count?: number;
    monthly_votes_change: number;
    monthly_votes_change_perc: number;
    server_count_change: number;
    total_votes_change: number;
    review_count_change?: number;
  }[];
  dailyData: {
    time: string;
    monthly_votes: number;
    server_count: number;
    total_votes: number;
    review_count?: number;
    monthly_votes_change: number;
    monthly_votes_change_perc: number;
    server_count_change: number;
    total_votes_change: number;
    review_count_change?: number;
  }[];
}
 
curl -X GET "https://api.topstats.gg/discord/bots/string/recent" \
  -H "authorization: <token>"
{
  "hourlyData": [
    {
      "time": "2024-10-18T18:00:00.000Z",
      "monthly_votes": 1800088,
      "server_count": 3371839,
      "total_votes": 204896149,
      "monthly_votes_change": 7310,
      "monthly_votes_change_perc": 0.41,
      "server_count_change": 0,
      "total_votes_change": 5028
    }
  ],
  "dailyData": [
    {
      "time": "2024-10-18T00:00:00.000Z",
      "monthly_votes": 1800088,
      "server_count": 3371839,
      "total_votes": 204896149,
      "monthly_votes_change": 110263,
      "monthly_votes_change_perc": 6.53,
      "server_count_change": 0,
      "total_votes_change": 79940
    }
  ]
}