Перейти к основному содержимому

API проверенных пользователей

GET /v1/scanned-users/lookup/:discordId

API проверенных пользователей позволяет получать полную информацию о пользователе: историю сканирований, детекты, статус бана и предупреждений и связанные аккаунты.

Базовый URL
https://api.anticheat.ac/v1
Аутентификация
Требуется API-ключ с разрешением scanned-users:lookup
Требуется
Активная лицензия или членство в Enterprise

Поиск пользователя по Discord ID

Получите полную информацию о пользователе Discord: историю сканирований, детекты, статус бана и предупреждений и потенциально связанные аккаунты.

GET/v1/scanned-users/lookup/:discordId

Параметры

НазваниеТипОписание
discordIdstringDiscord ID пользователя для поиска

Заголовки

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"
      ]
    }
  ]
}

Поля ответа

ПолеТипОписание
foundbooleanПоказывает, найден ли пользователь в базе данных
discordIdstringDiscord ID пользователя
usernamestringТекущее имя пользователя
totalScansnumberОбщее число сканирований этого пользователя
totalDetectionsnumberОбщее число найденных детектов
overallStatusstringОбщий статус: clean, suspicious, cheating, или banned
isBannedbooleanЗабанен ли какой-либо связанный HWID
isWarnedbooleanЕсть ли у какого-либо связанного HWID активное предупреждение
bansarrayСписок активных банов и предупреждений со статусом, причиной, сроком действия и датой создания
detectionsarrayСписок всех уникальных найденных детектов
reasonsarrayПричины и заметки, добавленные вручную сотрудниками или автоматически системой
firstSeenstringМетка времени ISO 8601 первого сканирования
lastSeenstringМетка времени ISO 8601 последнего сканирования
gamesScannedarrayСписок игр, в которых пользователя сканировали (например, Java, FiveM, Bedrock)
totalHwidsnumberЧисло уникальных HWID, связанных с этим пользователем
hasRelatedAccountsbooleanПоказывает, обнаружены ли потенциально связанные аккаунты
totalRelatedAccountsnumberЧисло обнаруженных связанных аккаунтов
relatedAccountsarrayСписок потенциально связанных аккаунтов, найденных системами обнаружения мультиаккаунтов Ocean

Объект банов

ПолеТипОписание
statusstringbanned, warned, или expired
reasonstringПричина бана или предупреждения
isExpiredbooleanИстёк ли срок бана или предупреждения
createdAtstringМетка времени ISO 8601 создания бана или предупреждения

Объект связанных аккаунтов

ПолеТипОписание
discordIdstringDiscord ID связанного аккаунта
usernamestringИмя пользователя связанного аккаунта
sharedHwidIdsarrayID общих HWID, связывающих аккаунты
totalDetectionsnumberОбщее число детектов у связанного аккаунта
overallStatusstringСтатус связанного аккаунта
lastSeenAtstringВремя последнего сканирования этого связанного аккаунта
detectionsarrayДетекты, найденные у связанного аккаунта

Ответ, если пользователь не найден

Если пользователь не найден в базе данных, API возвращает следующий ответ:

{
  "found": false,
  "discordId": "123456789012345678",
  "message": "User not found in scan database",
  "relatedAccounts": []
}

Безопасность и конфиденциальность

Обнаружение мультиаккаунтов

Ocean использует продвинутые системы обнаружения, чтобы выявлять потенциально связанные аккаунты. Если между аккаунтами обнаруживаются связи, они автоматически объединяются, а в их профили в реальном времени во время сканирования добавляются заметки.

Защита конфиденциальности

Чувствительные методы обнаружения и технические идентификаторы (HWID, IP) никогда не передаются через API — это защищает конфиденциальность пользователей и сохраняет целостность наших систем обнаружения.

Пример использования

cURL

curl -X GET "https://api.anticheat.ac/v1/scanned-users/lookup/123456789012345678" \
  -H "x-api-key: your_api_key_here"

JavaScript/Node.js

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);
}

Python

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 ограничены, чтобы обеспечить честное использование и стабильность системы. Текущий глобальный лимит:

Глобальный лимит запросов

1 000 запросов в час на API-ключ

Если для вашей интеграции нужны более высокие лимиты, свяжитесь с нашей службой поддержки.

Заголовки лимита передаются в каждом ответе:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200