Download OpenAPI specification:Download
Welcome to HEROIC APIs reference documentation.
HEROIC enterprise APIs offers breach search APIs to it's clients which they can use for their own development requirements. The APIs provides following set of operations.
HEROIC intelligently searches for your search queries in it's huge database with over 15 billion records to provide you with accurate result at high speeds.
You are required to have an enterprise account with HEROIC to get access to these powerful APIs. Click here to sign up for an HEROIC Enterprise account.
You can access the APIs using the below endpoint:
HEROIC APIs are protected by the unique API key. Follow the below steps to get an API key.
Most of the parameters and data accompanying your requests will be contained in the body of the HTTP request.
Use a third party client, such as curl, Postman, or Advanced REST Client, to test the HEROIC REST API.
If a request does not complete within 60 seconds, the request times out and HEROIC returns a Gateway Timeout error.
If a request to HEROIC REST API fails, the response throw an error with status code, according to error type, with a corresponding error message to indicate the details of the error.
Code | Error category | Description | Resolution |
---|---|---|---|
403 | Authentication Failed | Authentication fails due to invalid API authentication credentials. | Ensure that a valid API credential is specified. |
404 | Path not found | The given API path does not exist. | Ensure that you have passed correct API route. |
405 | Invalid input | Error occured due to invlid input. | Ensure that you have entered correct input. |
422 | Validation Error | Fails due validation throws an error. | Read the message in api and try to send correct data according to message. |
500 | Internal server error | Something went wrong or The server encounters an internal error. | Contact HEROIC Enterprise support |
We are happy to assist you whenever you need us. Just drop us an email with your queries to support@heroic.com and we'll get back to you.
The HEROIC APIs are version controlled. Versioning ensures that changes made to the APIs are backward compatible. HEROIC uses a major and minor version nomenclature to manage changes. By specifying a version in a REST request, you can get expected responses regardless of future changes to the API.
The major version number of the REST API appears in the REST URL. Currently, HEROIC only supports the v7
major version. For example, GET https://api.heroic.com/v7
.
The data breach comprises several attributes that describes the breach, The attributes may potentially increase in the future without requiring versioning of the API. Presently, the attributes include:
Attribute | Type | Description |
---|---|---|
uuid | UUID | Unique identifier for each data breach. |
sourceName | String | A distinctive title for the breach that can be shown to end users. It remains exclusive to each breach, although specific values may be subject to modification in the future (for instance, if another breach happens involving an organization already present in the system). If a constant value is needed to refer to the breach, please use the "uuid" attribute instead. |
siteDomain | String | The domain associated with the main website where the breach took place. This information can be utilized to identify any other assets that external systems may have related to the website. |
dateAdded | String | The date the breach was added to the system, specified in ISO 8601 format |
dateLeaked | String | The date of the original breach occurrence (without specifying the time) in ISO 8601 format. Please note that this date may not always be entirely accurate, as breaches are often discovered and reported significantly later than the actual incident. Therefore, it is advisable to consider this attribute as a reference rather than a definitive value |
category | String[] | Theme or the niche of website based on their content, purpose, or subject matter. |
country | String | Geographic location or country associated with a particular website. It indicates the country in which the website is registered, hosted, or primarily operates from |
language | String | Primary language used for the content and communication on a particular website. It denotes the language in which the website's text, labels, menus, and other textual elements are presented. |
passwordType | String | The hashing algorithm used to store and authenticate passwords. |
leakedDataTypes | String[] | Leaked data types refer to the various types of personal or sensitive information that can be exposed or compromised in a data breach or leak. Some common examples of leaked data types include Email address, Phone number, IP Address, Password, Credit card details etc. |
isVerified | Boolean | False implies that the breach is classified as unverified. An unverified breach does not necessarily originate from the specified website and may not have been a result of hacking. However, unverified breaches are included in HEROIC when there is a reasonable level of confidence that a substantial portion of the data is genuine. |
isSensitive | Boolean | A Breach that consists sensitive information such as passwords, locations, financial information. Such data breaches are not shared publicly to all. |
description | String | Refers to a summary or explanation of a data breach that has occurred. It provides relevant details and information about the breach, typically including Nature of breach, Scope and impact, Data exposed, Recommendations, Announcements made by the target website company etc. |
pwnedCount | Integer | Number of exposed in the data breach. |
heroicArticle | String | A Link to an article or blog authored by HEROIC, intended to provide a concise summary and assist users in comprehending the details of the breach. |
Returns an array of all the breaches HEROIC has discovered.
number_of_records | any Example: number_of_records=12 Optional parameter to limit the number of breaches that needs to be returned. If you don't pass this parameter, All the breaches would be returned |
curl -X GET "https://api.heroic.com/v7/breaches" \ -H "Content-Type: application/json" \ -H "api-key: YOUR_API_KEY"
[- {
- "uuid": "f5d77b03-44b4-11eb-9442-1d5c76d5a106",
- "site_name": "Ledger",
- "site_domain": "ledger.com",
- "date_leaked": "25-Jun-2020",
- "site_categories": "Crypto",
- "site_country": "United States",
- "site_language": "English",
- "password_types": "None",
- "leaked_data_types": "Email Addresss, Phone",
- "heroic_article_url": null,
- "description": "The hacker likely responsible for Ledger’s security breach in July recently dumped a large amount of data exposing the personal information of over 270,000 customers, including phone numbers and physical addresses. The leak also included 1 million emails of Ledger wallet owners and customers that were signed up to the company’s newsletter service.\nthe hacker presumably responsible for breaching the Ledger e-commerce database back in July dumped the personal information of thousands of affected users online. The company was blamed on social media for not providing better protection of user data and downplaying the extent of the initial breach. At the time, the hardware wallet maker declared that only 9,500 customers were affected by the security breach.\n",
- "pwned_count": 1075382
}
]
Provides information associated with a breach. Requires UUID as a parameter.
uuid | any Example: f5d77b03-44b4-11eb-9442-1d5c76d5a110 UUID of the data breach you wish to get the details for. |
curl -X GET "https://api.heroic.com/v7/breaches/{uuid}" \ -H "Content-Type: application/json" \ -H "api-key: YOUR_API_KEY"
{- "uuid": "f5d77b03-44b4-11eb-9442-1d5c76d5a106",
- "site_name": "Ledger",
- "site_domain": "ledger.com",
- "date_leaked": "25-Jun-2020",
- "site_categories": "Crypto",
- "site_country": "United States",
- "site_language": "English",
- "password_types": "None",
- "leaked_data_types": "Email Addresss, Phone",
- "heroic_article_url": null,
- "description": "The hacker likely responsible for Ledger’s security breach in July recently dumped a large amount of data exposing the personal information of over 270,000 customers, including phone numbers and physical addresses. The leak also included 1 million emails of Ledger wallet owners and customers that were signed up to the company’s newsletter service.\nthe hacker presumably responsible for breaching the Ledger e-commerce database back in July dumped the personal information of thousands of affected users online. The company was blamed on social media for not providing better protection of user data and downplaying the extent of the initial breach. At the time, the hardware wallet maker declared that only 9,500 customers were affected by the security breach.\n",
- "pwned_count": 1075382
}
Breach search API allows you to search for the breach details of an Email, IP Address, Phone number etc.
type required | any Example: type=email Account Type Filter, Available values are one of these |
account required | any Example: account=myemail@example.com Account name as per selected account type. |
paging_token | any Optional Field Required For pagination, value will be received in first search response data. |
api-key required | any
|
curl -X GET "https://api.heroic.com/v7/breach-search" \ -H "Content-Type: application/json" \ -H "api-key: YOUR_API_KEY"
{- "records_found": 12,
- "pagination_token": "0053001032e271c0ddeb11ed8a50195359d257484062633566646662383939636438356362623630343361663638656663353038393939333131346166633061393937306331626132643632623633623065383132f07ffffff5f07ffffff110",
- "data": [
- {
- "breached_data": {
- "user_name": "kmatch7",
- "first_name": null,
- "last_name": null,
- "email": "kmatch7@yahoo.com",
- "email_domain": "yahoo.com",
- "phone_number": null,
- "ip_address": null,
- "bitcoin_address": null,
- "password": null,
- "password_hash": "71bb2e8e85702bc6dc8fe49bc2ca2664",
- "other_attributes": "{\"DATE_REG\": \"2012-01-31 03:50:51\"}"
}, - "breach_details": {
- "uuid": "f5d77b03-44b4-11eb-9442-1d5c76d5a106",
- "site_name": "Ledger",
- "site_domain": "ledger.com",
- "date_leaked": "25-Jun-2020",
- "site_categories": "Crypto",
- "site_country": "United States",
- "site_language": "English",
- "password_types": "None",
- "leaked_data_types": "Email Addresss, Phone",
- "heroic_article_url": null,
- "description": "The hacker likely responsible for Ledger’s security breach in July recently dumped a large amount of data exposing the personal information of over 270,000 customers, including phone numbers and physical addresses. The leak also included 1 million emails of Ledger wallet owners and customers that were signed up to the company’s newsletter service.\nthe hacker presumably responsible for breaching the Ledger e-commerce database back in July dumped the personal information of thousands of affected users online. The company was blamed on social media for not providing better protection of user data and downplaying the extent of the initial breach. At the time, the hardware wallet maker declared that only 9,500 customers were affected by the security breach.\n",
- "pwned_count": 1075382
}
}
]
}