Integrate Roblox Watcher's banlist data directly into your own bots and applications.
Use this shared key to get started immediately - no registration required. Subject to global daily limits.
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.
Requests per day (global shared limit)
Requests per day on your private key (resets at midnight UTC)
Minimum wait between bulk POST requests
Maximum IDs per single bulk request
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | Discord User ID to check |
| key | string | Required | Your API key |
https://robloxwatcher.com/checker/api/check.php?id=123456789012345678&key=ROBLOXWATCHERFREEKEY
{
"banned": true,
"roblox_servers": ["Example Condo Server"],
"exploit_servers": []
}
| Field | Type | Required | Description |
|---|---|---|---|
| key | string | Required | Your API key |
| ids | string[] | Required | Array of Discord User IDs (max 10,000) |
{
"results": {
"123456789012345678": {
"banned": true,
"roblox_servers": ["Condo Server Name"],
"exploit_servers": []
}
}
}
banned field in the response.
id or ids parameter.
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.'); }
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')