API Documentation
Build powerful integrations with the GameServersHub API
Quick Start
https://gameservershub.com/api | All responses are JSON. Most endpoints support optional authentication via session cookies.All API endpoints are rate limited. Limits are specified per endpoint.
Authenticated requests get 5x higher limits.
Rate limit headers are included in all responses.
/api/pot/serversRate Limit
Authentication
Parameters
page, limit, search, filterResponse
{
"success": true,
"items": "[Array of PoT servers]",
"total": "number",
"page": "number"
}/api/pot/serverRate Limit
Authentication
Parameters
id or ip:portResponse
{
"success": true,
"server": "{server object}"
}/api/pot/versionRate Limit
Authentication
Response
{
"success": true,
"version": "string",
"lastUpdated": "timestamp"
}/api/servers/query-playersRate Limit
Authentication
Parameters
serverId or host:portResponse
{
"success": true,
"players": "[Array of players]",
"playerCount": "number"
}/api/servers/claim/initiateRate Limit
Authentication
Request Body
{
"serverId": "string",
"method": "rcon|file|dns"
}Response
{
"success": true,
"claimId": "string",
"verificationCode": "string"
}/api/servers/claim/verifyRate Limit
Authentication
Request Body
{
"claimId": "string",
"verificationCode": "string"
}Response
{
"success": true,
"verified": "boolean"
}/api/servers/claim/my-serversRate Limit
Authentication
Response
{
"success": true,
"servers": "[Array of claimed servers]"
}/api/auth/meRate Limit
Authentication
Response
{
"success": true,
"user": "{user object}"
}/api/auth/sessionRate Limit
Authentication
Response
{
"authenticated": "boolean",
"user": "{user or null}"
}/api/auth/logoutRate Limit
Authentication
Response
{
"success": true,
"message": "Logged out"
}/api/votes/submit/[serverUuid]Rate Limit
Authentication
Parameters
serverUuidRequest Body
{
"username": "string (if not authenticated)"
}Response
{
"success": true,
"nextVoteTime": "timestamp",
"totalVotes": "number"
}/api/votes/stats/[serverUuid]Rate Limit
Authentication
Parameters
serverUuidResponse
{
"success": true,
"votes": {
"daily": "number",
"weekly": "number",
"monthly": "number",
"total": "number"
}
}/api/player-activity/trackRate Limit
Authentication
Request Body
{
"serverId": "string",
"players": "[Array of player names]"
}Response
{
"success": true,
"tracked": "number"
}/api/player-activity/historyRate Limit
Authentication
Parameters
serverId, timeframe, limitResponse
{
"success": true,
"history": "[Array of records]"
}/api/user/profileRate Limit
Authentication
Response
{
"success": true,
"user": "{user profile}"
}/api/user/profileRate Limit
Authentication
Request Body
{
"displayName": "string",
"bio": "string",
"website": "string"
}Response
{
"success": true,
"updated": "boolean"
}/api/reviews/submitRate Limit
Authentication
Request Body
{
"serverId": "string",
"rating": "number 1-5",
"content": "string"
}Response
{
"success": true,
"reviewId": "string"
}/api/reviews/[serverId]Rate Limit
Authentication
Parameters
serverId, page, limit, sortResponse
{
"success": true,
"reviews": "[Array of reviews]",
"total": "number"
}/api/favorites/addRate Limit
Authentication
Request Body
{
"serverId": "string"
}Response
{
"success": true,
"added": "boolean"
}/api/favorites/removeRate Limit
Authentication
Request Body
{
"serverId": "string"
}Response
{
"success": true,
"removed": "boolean"
}/api/favorites/listRate Limit
Authentication
Response
{
"success": true,
"favorites": "[Array of servers]"
}