The Scanned Users API allows you to query complete user information including scan history, detections, ban/warn status, and related accounts.
Base URL: https://api.anticheat.ac/v1
Authentication: API Key required with scanned-users:lookup permission
Requires: Active license or enterprise membership
Retrieve complete information about a Discord user including their scan history, detections, ban/warn status, and potentially related accounts.
/v1/scanned-users/lookup/:discordId| Name | Type | Description |
|---|---|---|
| discordId | string | The Discord user ID to lookup |
x-api-key: your_api_key_here{
"found": true,
"discordId": "123456789012345678",
"username": "PlayerUsername",
"totalScans": 5,
"totalDetections": 3,
"overallStatus": "cheating",
"isBanned": true,
"isWarned": false,
"bans": [
{
"status": "banned",
"reason": "Cheating detected - Generic Loader",
"isExpired": false,
"createdAt": "2024-01-15T10:30:00.000Z"
}
],
"detections": [
"Generic Cheat Loader - Detection",
"Process Injection - FiveM.exe"
],
"reasons": [
{
"reason": "⚠️ Possible alt account detected: AltAccount (987654321)",
"category": "suspicious",
"addedAt": "2024-01-15T10:30:00.000Z",
"evidence": null
}
],
"firstSeen": "2024-01-10T08:00:00.000Z",
"lastSeen": "2024-01-20T15:45:00.000Z",
"gamesScanned": ["Java", "FiveM"],
"totalHwids": 2,
"hasRelatedAccounts": true,
"totalRelatedAccounts": 1,
"relatedAccounts": [
{
"discordId": "987654321098765432",
"username": "AltAccount",
"sharedHwidIds": [1],
"totalDetections": 5,
"overallStatus": "cheating",
"lastSeenAt": "2024-01-18T12:00:00.000Z",
"detections": [
"System Hooking - svchost.exe",
"Generic Packed File - cheat.exe"
]
}
]
}| Field | Type | Description |
|---|---|---|
| found | boolean | Indicates if the user was found in the database |
| discordId | string | The Discord user ID |
| username | string | Current username |
| totalScans | number | Total number of scans performed on this user |
| totalDetections | number | Total number of detections found |
| overallStatus | string | Overall status: clean, suspicious, cheating, or banned |
| isBanned | boolean | Whether any linked HWID is currently banned |
| isWarned | boolean | Whether any linked HWID has an active warning |
| bans | array | List of active bans/warnings with status, reason, expiry, and creation date |
| detections | array | List of all unique detections found |
| reasons | array | Manual reasons/notes added by staff or automatically by the system |
| firstSeen | string | ISO 8601 timestamp of the first scan |
| lastSeen | string | ISO 8601 timestamp of the last scan |
| gamesScanned | array | List of games the user has been scanned in (e.g. Java, FiveM, Bedrock) |
| totalHwids | number | Number of unique HWIDs linked to this user |
| hasRelatedAccounts | boolean | Indicates if potentially related accounts were detected |
| totalRelatedAccounts | number | Number of related accounts detected |
| relatedAccounts | array | List of potentially related accounts detected by Ocean's multi-accounting detection systems |
| Field | Type | Description |
|---|---|---|
| status | string | banned, warned, or expired |
| reason | string | Reason for the ban or warning |
| isExpired | boolean | Whether the ban/warning has expired |
| createdAt | string | ISO 8601 timestamp when the ban/warning was created |
| Field | Type | Description |
|---|---|---|
| discordId | string | Discord ID of the related account |
| username | string | Username of the related account |
| sharedHwidIds | array | IDs of the shared HWIDs linking the accounts |
| totalDetections | number | Total detections on the related account |
| overallStatus | string | Status of the related account |
| lastSeenAt | string | Last time this related account was scanned |
| detections | array | Detections found on the related account |
When a user is not found in the database, the API returns the following response:
{
"found": false,
"discordId": "123456789012345678",
"message": "User not found in scan database",
"relatedAccounts": []
}Ocean uses advanced detection systems to identify potentially related accounts. When connections between accounts are detected, they are automatically linked and notes are added to their profiles in real-time during the scan process.
Sensitive detection methods and technical identifiers (HWIDs, IPs) are never exposed through the API to protect user privacy and maintain the integrity of our detection systems.
curl -X GET "https://api.anticheat.ac/v1/scanned-users/lookup/123456789012345678" \ -H "x-api-key: your_api_key_here"
const response = await fetch(
'https://api.anticheat.ac/v1/scanned-users/lookup/123456789012345678',
{
headers: {
'x-api-key': 'your_api_key_here'
}
}
);
const data = await response.json();
if (data.found) {
console.log('Status:', data.overallStatus);
console.log('Banned:', data.isBanned);
console.log('Detections:', data.detections.length);
console.log('Related accounts:', data.totalRelatedAccounts);
}import requests
headers = {
'x-api-key': 'your_api_key_here'
}
response = requests.get(
'https://api.anticheat.ac/v1/scanned-users/lookup/123456789012345678',
headers=headers
)
data = response.json()
if data['found']:
print(f"Status: {data['overallStatus']}")
print(f"Banned: {data['isBanned']}")
print(f"Games: {', '.join(data['gamesScanned'])}")API requests are rate-limited to ensure fair usage and system stability. The current global rate limit is:
Global Rate Limit
1,000 requests per hour per API key
If you need higher rate limits for your integration, please contact our support team.
Rate limit headers are included in every response:
X-RateLimit-Limit: 1000 X-RateLimit-Remaining: 999 X-RateLimit-Reset: 1640995200