Документация API

REST API для OSINT. Аутентификация через Bearer токены.

Authorization: Bearer YOUR_API_TOKEN
POST /api/v1/search

BlackEye Search

Универсальный поиск. Поддерживает: телефон, email, никнейм, ИНН, СНИЛС, ФИО, IP, ГРЗ/VIN, VK, TikTok, адрес, паспорт, авто/владелец, домен, Telegram

{"query": "@username"}
POST /api/v1/github

GitHub OSINT

Полный анализ GitHub профиля: имя, bio, репозитории, фолловеры + почты из 15 последних коммитов.

{"username": "github_username"}
curl -X POST https://blackeyebot.duckdns.org/api/v1/github \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"username": "torvalds"}'
import requests

url = "https://blackeyebot.duckdns.org/api/v1/github"
headers = {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
}
data = {"username": "torvalds"}

response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://blackeyebot.duckdns.org/api/v1/github", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ username: "torvalds" })
});

const data = await response.json();
console.log(data);
POST /api/v1/geeklog

Telegram Search

Поиск в базе данных Telegram логов по user_id ИЛИ username. Возвращает: имя, телефон, группы, историю ников, подарки. Проверяет скрытие аккаунта.

{"user_id": 123456789}  или  {"username": "mnyadox"}
curl -X POST https://blackeyebot.duckdns.org/api/v1/geeklog \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"username": "mnyadox"}'
import requests

url = "https://blackeyebot.duckdns.org/api/v1/geeklog"
headers = {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
}
data = {"username": "mnyadox"}

response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://blackeyebot.duckdns.org/api/v1/geeklog", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ username: "mnyadox" })
});

const data = await response.json();
console.log(data);
GET /api/v1/gift/user?username=@user

GiftMap User Info

Получить информацию о пользователе из GiftMap по username.

curl -X GET "https://blackeyebot.duckdns.org/api/v1/gift/user?username=@username" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

url = "https://blackeyebot.duckdns.org/api/v1/gift/user"
headers = {"Authorization": "Bearer YOUR_TOKEN"}
params = {"username": "@username"}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const url = new URL("https://blackeyebot.duckdns.org/api/v1/gift/user");
url.searchParams.append("username", "@username");

const response = await fetch(url, {
  headers: { "Authorization": "Bearer YOUR_TOKEN" }
});

const data = await response.json();
console.log(data);
GET /api/v1/gift/links?user_id=123&mode=all

GiftMap Links

Получить подарки пользователя (all/sent/received).

curl -X GET "https://blackeyebot.duckdns.org/api/v1/gift/links?user_id=123456789&mode=all&limit=20" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

url = "https://blackeyebot.duckdns.org/api/v1/gift/links"
headers = {"Authorization": "Bearer YOUR_TOKEN"}
params = {"user_id": 123456789, "mode": "all", "limit": 20}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const url = new URL("https://blackeyebot.duckdns.org/api/v1/gift/links");
url.searchParams.append("user_id", "123456789");
url.searchParams.append("mode", "all");
url.searchParams.append("limit", "20");

const response = await fetch(url, {
  headers: { "Authorization": "Bearer YOUR_TOKEN" }
});

const data = await response.json();
console.log(data);
GET /api/v1/ipinfo?ip=8.8.8.8

IP Info

Детальная информация об IP: страна, город, регион, ISP, координаты.

curl -X GET "https://blackeyebot.duckdns.org/api/v1/ipinfo?ip=8.8.8.8" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

url = "https://blackeyebot.duckdns.org/api/v1/ipinfo"
headers = {"Authorization": "Bearer YOUR_TOKEN"}
params = {"ip": "8.8.8.8"}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const url = new URL("https://blackeyebot.duckdns.org/api/v1/ipinfo");
url.searchParams.append("ip", "8.8.8.8");

const response = await fetch(url, {
  headers: { "Authorization": "Bearer YOUR_TOKEN" }
});

const data = await response.json();
console.log(data);
GET /api/v1/dns?domain=example.com

DNS Lookup

Полный анализ DNS записей: A, AAAA, MX, NS, TXT, CNAME, SOA.

curl -X GET "https://blackeyebot.duckdns.org/api/v1/dns?domain=example.com" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

url = "https://blackeyebot.duckdns.org/api/v1/dns"
headers = {"Authorization": "Bearer YOUR_TOKEN"}
params = {"domain": "example.com"}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const url = new URL("https://blackeyebot.duckdns.org/api/v1/dns");
url.searchParams.append("domain", "example.com");

const response = await fetch(url, {
  headers: { "Authorization": "Bearer YOUR_TOKEN" }
});

const data = await response.json();
console.log(data);
GET /api/v1/whois?domain=example.com

WHOIS

WHOIS информация о домене: регистратор, даты, NS серверы.

curl -X GET "https://blackeyebot.duckdns.org/api/v1/whois?domain=example.com" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

url = "https://blackeyebot.duckdns.org/api/v1/whois"
headers = {"Authorization": "Bearer YOUR_TOKEN"}
params = {"domain": "example.com"}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const url = new URL("https://blackeyebot.duckdns.org/api/v1/whois");
url.searchParams.append("domain", "example.com");

const response = await fetch(url, {
  headers: { "Authorization": "Bearer YOUR_TOKEN" }
});

const data = await response.json();
console.log(data);