API Keys

Free Public Key

Use this shared key to get started immediately - no registration required. Subject to global daily limits.

ROBLOXWATCHERFREEKEY

For higher limits, generate a personal key via the Dashboard (sign in with Discord, then Manage API). Personal keys grant 100,000 requests per day (resets at midnight UTC), expire after 1 year, and are tied to your Discord account. Access is provided at our discretion and may be revoked at any time.

Personal keys are sent as a header on the JSON API: Authorization: Bearer <key> or X-API-Key: <key>. Requests without a valid key return 401; exceeding the daily limit returns 429 until the next UTC day.

Request Limits

Public Key

150

Requests per day (global shared limit)

Personal Key

100K

Requests per day on your private key (resets at midnight UTC)

Bulk Cooldown

2s

Minimum wait between bulk POST requests

Bulk Limit

10K

Maximum IDs per single bulk request

Single Check

GET /checker/api/check.php Check a single user ID

Query Parameters

Parameter Type Required Description
id string Required Discord User ID to check
key string Required Your API key

Example Request

URL
https://robloxwatcher.com/checker/api/check.php?id=123456789012345678&key=ROBLOXWATCHERFREEKEY

Success Response (200)

JSON
{
  "banned": true,
  "roblox_servers": ["Example Condo Server"],
  "exploit_servers": []
}

Bulk Check

POST /checker/api/check.php Check up to 10,000 IDs at once

Request Body (JSON)

Field Type Required Description
key string Required Your API key
ids string[] Required Array of Discord User IDs (max 10,000)

Success Response (200)

JSON
{
  "results": {
    "123456789012345678": {
      "banned": true,
      "roblox_servers": ["Condo Server Name"],
      "exploit_servers": []
    }
  }
}

Response Codes

200
OK - Request successful. Check the banned field in the response.
400
Bad Request - Missing or malformed id or ids parameter.
401
Unauthorized - Invalid or missing API key.
429
Too Many Requests - Daily rate limit exceeded.
500
Internal Server Error - Something went wrong on our end. Check the Status page.
503
Service Unavailable - API is temporarily offline for maintenance.

Code Examples

JavaScript (fetch)
async function checkUser(userId) {
  const res = await fetch(
    `https://robloxwatcher.com/checker/api/check.php?id=${userId}&key=ROBLOXWATCHERFREEKEY`
  );
  const data = await res.json();
  if (data.banned) console.log(`Flagged in: ${data.roblox_servers.join(', ')}`);
  else console.log('User is clean.');
}
Python (requests)
import requests

def check_user(user_id):
    params = {'id': user_id, 'key': 'ROBLOXWATCHERFREEKEY'}
    r = requests.get('https://robloxwatcher.com/checker/api/check.php', params=params)
    data = r.json()
    print('Flagged' if data['banned'] else 'Clean')