Бесплатный API для проверки утечек данных

Проверяйте миллиарды раскрытых записей с помощью нашего бесплатного RESTful API. Ключ API не требуется.

Аутентификация

Большинство эндпоинтов общедоступны. Эндпоинты для доменов требуют ключ API.

Ограничение частоты

2 запроса в секунду с одного IP, плюс почасовые и суточные лимиты по каждому эндпоинту. Смотреть лимиты.

Формат ответа

Все ответы возвращаются в формате JSON со стандартными HTTP-кодами.

Базовый URL

api.xposedornot.com

Документация Swagger Песочница API

Официальные SDK

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

Node.js / JavaScript

Установка через npm:

npm install xposedornot

Краткий пример:

const { XposedOrNot } = require('xposedornot');

const xon = new XposedOrNot();

// Проверка email на наличие в утечках
const result = await xon.checkEmail('test@example.com');
console.log(result);

Посмотреть на npm GitHub

Python

Установка через pip:

pip install xposedornot

Краткий пример:

from xposedornot import XposedOrNot

xon = XposedOrNot()

# Проверка email на наличие в утечках
result = xon.check_email('test@example.com')
print(result)

Посмотреть на PyPI GitHub

Также доступно для

Нажмите на любую карточку, чтобы перейти в реестр пакетов, или на значок GitHub — для исходного кода.


Быстрая навигация
Краткий справочник по API Последнее обновление: 03-Jun-2026

Благодарим вас за интерес к XposedOrNot. Наша цель — сделать API максимально доступным и быстрым, чтобы он стал полезным инструментом для каждого. Размещённый непосредственно в инфраструктуре Google и надёжно кэшируемый Cloudflare, API XposedOrNot обеспечивает быстрые ответы на любые запросы независимо от их источника.

API XposedOrNot следует принципам архитектуры REST. Он возвращает ответы в формате JSON и использует стандартные коды ответов HTTP. Для большинства маршрутов нашего API аутентификация не требуется, что обеспечивает простоту доступа и удобство использования. Однако обратите внимание, что наш отдельный маршрут API, предназначенный для запроса данных, связанных с доменом, требует авторизации с помощью ключа API. Эта мера принята для того, чтобы доступ к этой конфиденциальной информации имели только проверенные владельцы или уполномоченные лица указанных доменов.

Чтобы поэкспериментировать с эндпоинтами, воспользуйтесь Песочницей API, где вы можете в интерактивном режиме изучить API XposedOrNot.

Как читать примеры: значения, показанные в {фигурных скобках}, являются заполнителями. Замените каждое из них (вместе со скобками) своим значением. Например, {email} превращается в test@example.com.

Лимиты бесплатного уровня на IP-адрес по эндпоинтам:

Лимиты бесплатного уровня по эндпоинтам
ЭндпоинтВ секундуВ часВ сутки
/v1/check-email/{email}225100
/v1/breach-analytics225100
/v1/breaches250100
/v1/domain-breaches22550
/v1/metrics5/min50100
/api/v1/pass/anon/{prefix}Отдельный высоконагруженный сервис; фиксированный лимит не публикуется.

HTTP 429 означает, что вы достигли почасового или суточного лимита: дождитесь сброса окна перед повтором. Ответ содержит ссылку на тарифы с повышенными лимитами.


Этот API проверяет, фигурировал ли email-адрес в каких-либо известных утечках данных. Он выполняет поиск по обширной базе данных утечек и оповещает вас, если email находится под угрозой.


Эндпоинт API:
https://api.xposedornot.com/v1/check-email/{email}
Параметры:
Параметры эндпоинта check-email
Параметр Где Обязательный Тип Описание
email путь Да string Email-адрес для проверки на наличие в утечках.
details запрос Нет boolean Включить подробную информацию об утечках в ответ. По умолчанию false (принимает true/false, yes/no, 1/0).
Пример успешного обнаружения утечки: При обнаружении утечки вы получите ответ в формате JSON, подобный этому:
 {
  "breaches": [
    [
      "Tesco",
      "KiwiFarms",
      "Vermillion",
      "Verified",
      "LizardSquad",
      "2fast4u",
      "Autotrader",
      "MyRepoSpace",
      "SweClockers"
    ]
  ],
  "email": "test@example.com",
  "status": "success"
}
		  
Ответ возвращается в формате JSON, что позволяет легко разобрать его на любом скриптовом языке. Это даёт вам возможность без труда интегрировать данные в свои приложения.
Ответ, когда утечка не найдена:
Если email-адрес не найден ни в одной базе данных утечек, вы получите следующий ответ в формате JSON:
{"Error":"Not found","email":null}
 

Наш API предлагает углублённый анализ истории утечек данных для email-адреса. Он показывает, когда и где произошли утечки, предоставляя важную аналитику для оценки масштаба и серьёзности этих инцидентов. Этот инструмент незаменим для понимания степени раскрытия данных и совершенствования стратегий безопасности.


Эндпоинт API:
https://api.xposedornot.com/v1/breach-analytics?email={email}
Параметры:
Параметры эндпоинта breach-analytics
Параметр Где Обязательный Тип Описание
email запрос Да string Email-адрес для анализа.

API возвращает один из двух возможных результатов: успех или неудачу. Ниже перечислены ключевые компоненты успешного ответа:


  • BreachesSummary: краткий обзор всех утечек, связанных с email-адресом, включая список затронутых сайтов. Идеально подходит для быстрой проверки истории утечек.

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

  • BreachMetrics: этот компонент предоставляет аналитику об утечках, такую как затронутые отрасли, надёжность паролей, оценку риска, типы раскрытых данных и разбивку по годам. Эти данные крайне важны для понимания полного масштаба последствий утечек.

  • xposed_data: позволяет понять, какие именно типы данных были раскрыты в утечках, например имена, фотографии, гражданство и т. д. Это помогает понять характер и масштаб раскрытия персональных данных.

  • PastesSummary: предоставляет обзор утечек типа «paste» (раскрытие данных на публичных сервисах, подобных pastebin), включая количество и самый недавний случай. Это быстрый способ оценить раскрытие данных на таких платформах.

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

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


Пример вывода JSON при успешном нахождении совпадающей записи:

{
  "BreachMetrics": {
    "get_details": [],
    "industry": [
      [
        [          "elec",          1        ],
        [          "misc",          0        ],
        [          "mini",          0        ],
        [          "musi",          0        ],
        [          "manu",          0        ],
        [          "ener",          0        ],
        [          "news",          0        ],
        [          "ente",          0        ],
        [          "hosp",          0        ],
        [          "heal",          0        ],
        [          "food",          0        ],
        [          "phar",          0        ],
        [          "educ",          0        ],
        [          "cons",          0        ],
        [          "agri",          0        ],
        [          "tele",          0        ],
        [          "info",          0        ],
        [          "tran",          0        ],
        [          "aero",          0        ],
        [          "fina",          0        ],
        [          "reta",          0        ],
        [          "nonp",          0        ],
        [          "govt",          0        ],
        [          "spor",          0        ],
        [          "envi",          0        ]
      ]
    ],
    "passwords_strength": [
      {
        "EasyToCrack": 0,
        "PlainText": 0,
        "StrongHash": 1,
        "Unknown": 0
      }
    ],
    "risk": [
      {
        "risk_label": "Low",
        "risk_score": 3
      }
    ],
    "xposed_data": [
      {
        "children": [
          {
            "children": [
              {
                "colname": "level3",
                "group": "A",
                "name": "data_Usernames",
                "value": 1
              }
            ],
            "colname": "level2",
            "name": "👤 Personal Identification"
          },
          {
            "children": [
              {
                "colname": "level3",
                "group": "D",
                "name": "data_Passwords",
                "value": 1
              }
            ],
            "colname": "level2",
            "name": "🔒 Security Practices"
          },
          {
            "children": [
              {
                "colname": "level3",
                "group": "F",
                "name": "data_Email addresses",
                "value": 1
              }
            ],
            "colname": "level2",
            "name": "📞 Communication and Social Interactions"
          }
        ]
      }
    ],
    "yearwise_details": [
      {
        "y2007": 0,
        "y2008": 0,
        "y2009": 0,
        "y2010": 0,
        "y2011": 0,
        "y2012": 0,
        "y2013": 0,
        "y2014": 0,
        "y2015": 1,
        "y2016": 0,
        "y2017": 0,
        "y2018": 0,
        "y2019": 0,
        "y2020": 0,
        "y2021": 0,
        "y2022": 0,
        "y2023": 0
      }
    ]
  },
  "BreachesSummary": {
    "site": "SweClockers"
  },
  "ExposedBreaches": {
    "breaches_details": [
      {
        "breach": "SweClockers",
        "details": "SweClockers experienced a data breach in early 2015, where 255k accounts were exposed. As a result, usernames, email addresses, and salted hashes of passwords, which were stored using a combination of MD5 and SHA512, were disclosed. Exposed data: Usernames, Email addresses, Passwords.",
        "domain": "sweclockers.com",
        "industry": "Electronics",
        "logo": "Sweclockers.png",
        "password_risk": "hardtocrack",
        "references": "",
        "searchable": "Yes",
        "verified": "Yes",
        "xposed_data": "Usernames;Email addresses;Passwords",
        "xposed_date": "2015",
        "xposed_records": 254967
      }
    ]
  },
  "ExposedPastes": null,
  "PasteMetrics": null,
  "PastesSummary": {
    "cnt": 0,
    "domain": "",
    "tmpstmp": ""
  }
}
	       
Ниже приведены некоторые из показателей, используемых в BreachMetrics:
  1. Классификация по отраслям
  2. Даёт количество утечек, раскрытых в 19 крупнейших отраслях.
  3. Надёжность паролей
  4. Даёт количество утечек, в которых были пароли: 1. легко взламываемые, 2. в открытом виде и 3. с использованием надёжных и безопасных хешей паролей.
  5. Разбивка по годам
  6. Даёт исторические данные об утечках начиная с 2010 года и по настоящее время.

Пример вывода, когда совпадающий email-адрес не найден:
{
  "BreachMetrics": null,
  "BreachesSummary": {
    "site": ""
  },
  "ExposedBreaches": null,
  "ExposedPastes": null,
  "PasteMetrics": null,
  "PastesSummary": {
    "cnt": 0,
    "domain": "",
    "tmpstmp": ""
  }
}
 

Полностью «нулевой» ответ, как приведённый выше (возвращается с HTTP 200), означает, что email не был найден ни в одной из утечек данных, загруженных в XposedOrNot.


Этот эндпоинт проверяет, появлялся ли пароль в известных утечках, не раскрывая сам пароль. Вы вычисляете хеш SHA3 Keccak-512 пароля локально и отправляете только его первые 10 символов, поэтому ни пароль, ни полный хеш не покидают ваше устройство. Ответ указывает на наличие или отсутствие совпадения.


https://passwords.xposedornot.com/api/v1/pass/anon/{hash_prefix}
Здесь {hash_prefix} — это первые 10 символов хеша SHA3 Keccak-512 пароля, который вы хотите проверить.

Параметры:
Параметры эндпоинта анонимной проверки пароля
Параметр Где Обязательный Тип Описание
hash_prefix путь Да string Первые 10 символов хеша SHA3 Keccak-512 проверяемого пароля.
Пример вывода JSON при успешном нахождении совпадающего хеша пароля:
 {
  "SearchPassAnon": {
    "anon": "808d63ba47",
    "char": "D:6;A:0;S:0;L:6",
    "count": "11999477",
    "wordlist": 0
  }
}
 

API выдаёт результаты в формате JSON, который более информативен, чем простое «да/нет». Этот подробный вывод позволяет проводить дальнейший анализ и пополнять обширный список скомпрометированных паролей в реальном времени.


Описание структуры вывода:


  • anon: префикс хеша, который вы запросили, возвращённый обратно. Ничего, что могло бы раскрыть ваш пароль, не сохраняется и не передаётся.
  • char: разбивка состава пароля в формате D:<digits>;A:<alphabets>;S:<special>;L:<length> (см. таблицу ниже).
  • count: количество раз, когда этот пароль встречался в собранных данных утечек.
  • wordlist: был ли пароль найден в известном словаре (1 = да, 0 = нет).

Этот API полезен не только для выявления скомпрометированных паролей, но и помогает разрабатывать более строгие и безопасные политики паролей.


В следующей таблице простыми словами поясняются эти характеристики:

Разбивка характеристик пароля
Код Характеристика Описание
D Цифры Количество цифр
A Буквы Количество букв
S Спецсимволы Количество спецсимволов
L Длина Длина пароля
Полный список всех раскрытых веб-сайтов вы найдёте на странице Раскрытые веб-сайты в XON .

Также стоит отметить использование SHA3 Keccak-512 для поиска и хранения данных в XON. Традиционные алгоритмы хеширования, такие как MD5 и SHA1, на данный момент устарели, и, учитывая огромное количество раскрытых записей, я выбрал алгоритм SHA3 Keccak-512. Хеши Keccak-512 имеют длину 128 символов.

Ознакомьтесь с простым и удобным примером экрана входа, использующим этот API.

Для удобства приведены два примера хешей Keccak-512:

Keccak-512("test")
1e2e9fc2002b002d75198b7503210c05a1baac4560916a3c6d93bcce3a50d7f00fd395bf1647b9abb8d1afcc9c76c289b0c9383ba386a956da4b38934417789e

Keccak-512("pass")
adf34f3e63a8e0bd2938f3e09ddc161125a031c3c86d06ec59574a5c723e7fdbe04c2c15d9171e05e90a9c822936185f12b9d7384b2bedb02e75c4c5fe89e4d4

Пример вывода, когда совпадающий хеш пароля не найден:
            {  "Error": "Not found"}
        

https://api.xposedornot.com/v1/breaches
Параметры: все необязательные. Без параметров эндпоинт возвращает все загруженные утечки.
Параметры эндпоинта breaches
Параметр Где Обязательный Тип Описание
domain запрос Нет string Ограничить результаты одним доменом.
breach_id запрос Нет string Ограничить результаты одной утечкой по её ID.
API возвращает успешный ответ только в формате JSON.

Этот JSON легко разбирается всеми скриптовыми языками для удобной интерпретации и извлечения элементов данных, которые можно использовать в ваших приложениях.
   {
  "exposedBreaches": [
    {
      "breachID": "APK.TW",
      "breachedDate": "2022-09-01T00:00:00+00:00",
      "addedDate": "2023-11-08T06:30:35+00:00",
      "domain": "apk.tw",
      "exposedData": [
        "Email addresses",
        "Usernames",
        "Passwords",
        "IP addresses"
      ],
      "exposedRecords": 2457094,
      "exposureDescription": "APK.TW, a Taiwanese Android forum, experienced a data breach in September 2022, affecting 3.7 million members. This incident exposed usernames, email addresses, IP addresses, and passwords encrypted with salted MD5 hashes.",
      "industry": "Information Technology",
      "logo": "https://xposedornot.com/static/logos/APKTW.png",
      "passwordRisk": "easytocrack",
      "referenceURL": "",
      "searchable": true,
      "sensitive": false,
      "verified": true
    },
    {
      "breachID": "Habibs",
      "breachedDate": "2021-08-01T00:00:00+00:00",
      "addedDate": "2023-11-08T06:30:35+00:00",
      "domain": "habibs.com.br",
      "exposedData": [
        "Email addresses",
        "Names",
        "Phone numbers",
        "Dates of birth",
        "IP addresses"
      ],
      "exposedRecords": 3519666,
      "exposureDescription": "Habib's, a Brazilian fast food restaurant, experienced a significant data breach in August 2021,  that impacted 3.5 million users, revealing personal information like email addresses, IP addresses, names, phone numbers, and dates of birth, along with CPF numbers and social media profile links. ",
      "industry": "Food",
      "logo": "https://xposedornot.com/static/logos/Habibs.png",
      "passwordRisk": "unknown",
      "referenceURL": "",
      "searchable": true,
      "sensitive": false,
      "verified": true
    },
    {
      "breachID": "GreenGaming",
      "breachedDate": "2024-03-01T00:00:00+00:00",
      "addedDate": "2024-04-15T10:22:18+00:00",
      "domain": "mrgreengaming.com",
      "exposedData": [
        "Email addresses",
        "IP addresses",
        "Geographic locations",
        "Usernames",
        "Dates of birth"
      ],
      "exposedRecords": 27142,
      "exposureDescription": "MrGreenGaming announced on their community forum reported a security breach due to unauthorized access via an inactive administrator account leading to a data breach on 01-Mar-2024. The intrusion led to vandalism and the potential exposure of user data, including usernames, email addresses, IP addresses at account creation, and birthdays.",
      "industry": "Entertainment",
      "logo": "https://xposedornot.com/static/logos/GreenGaming.png",
      "passwordRisk": "unknown",
      "referenceURL": "https://forums.mrgreengaming.com/topic/30151-%E2%9A%A0%EF%B8%8Fdata-breach%E2%9A%A0%EF%B8%8F/#comment-536079",
      "searchable": true,
      "sensitive": false,
      "verified": true
    },
    {
      "breachID": "CutoutPro",
      "breachedDate": "2024-02-01T00:00:00+00:00",
      "addedDate": "2024-03-10T08:15:42+00:00",
      "domain": "cutout.pro",
      "exposedData": [
        "Names",
        "Passwords",
        "Email addresses",
        "IP addresses"
      ],
      "exposedRecords": 20021813,
      "exposureDescription": "Cutout.Pro, an AI-powered photo editing platform, experienced a data breach affecting 20 million users. Information exposed includes email addresses, hashed passwords, IP addresses, and names. A cybercriminal posted 5.93 GB of data on hacker forum, including a 41.4 million record database dump with unique email addresses.",
      "industry": "Information Technology",
      "logo": "https://xposedornot.com/static/logos/Cutout.pro.png",
      "passwordRisk": "easytocrack",
      "referenceURL": "https://www.bleepingcomputer.com/news/security/20-million-cutoutpro-user-records-leaked-on-data-breach-forum/",
      "searchable": true,
      "sensitive": false,
      "verified": true
    }
	       
… ответ сокращён для краткости; полный список продолжается.

Кроме того, вы можете передать параметр, например домен, и ограничить результаты, чтобы отобразить содержимое, относящееся к этой утечке.
https://api.xposedornot.com/v1/breaches?domain={domain}

{
  "exposedBreaches": [
    {
      "breachID": "Twitter-Scraped",
      "breachedDate": "2021-01-01T00:00:00+00:00",
      "addedDate": "2023-11-08T06:30:35+00:00",
      "domain": "twitter.com",
      "industry": "Information Technology",
      "logo": "https://xposedornot.com/static/logos/Twitter.png",
      "passwordRisk": "unknown",
      "searchable": true,
      "sensitive": false,
      "verified": true,
      "exposedData": [
        "Usernames",
        "Names",
        "Email addresses",
        "Phone numbers",
        "Geographic locations"
      ],
      "exposedRecords": 208918735,
      "exposureDescription": "The Twitter Email Addresses Leak involves a data leak of over 200 million Twitter user profiles around 2021. The leak includes email addresses, names, screen names, follow counts, and account creation dates. The data was obtained through a Twitter API vulnerability that allowed the input of email addresses and phone numbers to confirm their association with Twitter IDs.",
      "referenceURL": ""
    }
  ],
  "status": "success"
}
		  
API возвращает успешный ответ только в формате JSON.

https://api.xposedornot.com/v1/domain-breaches/
Параметры:
Заголовки эндпоинта domain-breaches
Параметр Где Обязательный Тип Описание
x-api-key заголовок Да string Ваш ключ API для домена. Домен определяется по ключу.
Content-Length заголовок Да 0 Этот эндпоинт не принимает тело запроса, поэтому установите длину содержимого равной 0.
Это POST-запрос, для которого необходимо передать действительный ключ API в заголовке с ключом «x-api-key». Домен определяется по ключу API, поэтому этот эндпоинт не принимает тело запроса, а заголовок длины содержимого должен быть установлен равным «0».
** Ещё нет ключа? Узнайте, как получить ключ API для данных об утечках по домену. Там описаны подтверждение домена и получение ключа из вашей панели управления.

Пример запроса к API с помощью curl. Храните ключ в переменной окружения, а не прописывайте его напрямую в коде, чтобы он не попадал в историю команд и систему контроля версий:
export XON_API_KEY="your_api_key_here"

curl -L -X POST \
  -H "x-api-key: $XON_API_KEY" \
  -H "Content-Length: 0" \
  https://api.xposedornot.com/v1/domain-breaches/
Ответ API возвращается в формате JSON. Основной ключ «metrics» содержит сведения об утечке. Ниже приведено описание каждого вложенного ключа в «metrics»:

1.Breach_Summary: это поле предоставляет сводку по количеству утечек на каждую организацию.
2.Breaches_Details: это массив, содержащий подробную информацию о каждой отдельной утечке, включая название пострадавшей организации, домен и email-адрес, связанный с утечкой.
3.Detailed_Breach_Info: это поле содержит подробную сводку об утечках, включая дату утечки, логотип организации, был ли пароль под угрозой, доступна ли утечка для поиска, тип раскрытых данных, общее количество раскрытых записей и описание утечки.
4.Domain_Summary: предоставляет сводку по количеству утечек на каждый домен.
5.Top10_Breaches: это поле предоставляет список 10 крупнейших утечек.
6.Yearly_Metrics: это поле предоставляет разбивку количества утечек по годам с 2010 года по текущий год.

Для удобства приведён пример вывода.
{
  "metrics": {
    "Breach_Summary": {
      "AerServ": 1
    },
    "Breaches_Details": [
      {
        "breach": "AerServ",
        "domain": "xposedornot.com",
        "email": "deva@xposedornot.com"
      }
    ],
    "Detailed_Breach_Info": {
      "AerServ": {
        "breached_date": "Tue, 01 Apr 2014 00:00:00 GMT",
        "logo": "Aerserv.png",
        "password_risk": "plaintext",
        "searchable": "Yes",
        "xposed_data": "Email Addresses",
        "xposed_records": 64777,
        "xposure_desc": "AerServ, an ad management platform, experienced a data breach in April 2018. This incident occurred after its acquisition by InMobi and affected more than 64,000 unique email addresses. The exposed data included contact information and passwords, which were stored as salted SHA-512 hashes. Later in 2018, the breached data was publicly posted on Twitter, prompting InMobi to acknowledge the incident "
      }
    },
    "Domain_Summary": {
      "xposedornot.com": 1
    },
    "Top10_Breaches": {
      "AerServ": 1
    },
    "Yearly_Metrics": {
      "2010": 0,
      "2011": 0,
      "2012": 0,
      "2013": 0,
      "2014": 1,
      "2015": 0,
      "2016": 0,
      "2017": 0,
      "2018": 0,
      "2019": 0,
      "2020": 0,
      "2021": 0,
      "2022": 0,
      "2023": 0
    }
  },
  "status": "success"
}

	       
Обработка ошибок: если ключ API недействителен, эндпоинт отвечает с HTTP 401 и следующим JSON:
{
  "detail": "Invalid or missing API key"
}
	       
Поле detail содержит описание ошибки.

Не забудьте установить в XON_API_KEY ваш настоящий ключ API перед обращением к эндпоинту.
API XposedOrNot использует стандартные коды ответов HTTP для обозначения успешного или неудачного выполнения запроса. В общем случае: коды в диапазоне 2xx означают успех. Коды в диапазоне 4xx означают ошибку, вызванную предоставленными данными (например, неверные параметры, недостаточно опций запроса, неверный url и т. д.). Коды в диапазоне 5xx означают ошибку на сервере XposedOrNot.

Иными словами, коды в диапазоне 4xx указывают на ошибку на стороне клиента (ваш запрос), а коды 5xx — на ошибку на стороне сервера (с нашей стороны).

Коды ответов HTTP и их значения
Код Описание
200 Успех — будет выведен ответ в формате JSON
401 Недействительный/неавторизованный ключ API
404 Ошибка во входных данных (данные не найдены)
429 Достигнут предел частоты — пора снизить скорость
502/503 Ошибка на стороне сервера. Пожалуйста, сообщите нам, если столкнётесь с этим.