Phone Data Breaches

This endpoint provides information about known data breaches associated with a given identity. It returns both a summary and detailed information on individual breaches, including dates, sources, and the types of exposed personal data such as names, emails, and phone numbers.

The response includes the total number of breaches detected, along with the date of the first and most recent breach. For each breach event, the API returns an identifier, the date it occurred, and the title or source of the incident.

Additionally, the response contains a structured breakdown of the personal information found in the breaches. This includes a list of exposed names, email addresses, and phone numbers, each accompanied by a count indicating how many times that specific data point appeared across the breaches.

Following an example of a Phone Number Data Breaches

curl --request POST \
     --url https://api.trustfull.com/1.0/phone-data-breaches \
     --header 'Accept: application/json' \
     --header 'Content-Type: application/json' \
     --header 'x-api-key: [your_app_key]' \
     --data '
{
     "transaction_id": "your_transaction_id",     
     "phone_number": "39349xxxxxxx"
}'

Here's a detailed explanation of all fields needed for the api call:

nametype
transaction_idstring

A unique identifier for the transaction. Duplicate values are not allowed.

Ex: 4115d9d9-28f4-4100-8701-cafe2adbc4c2
phone_numberstring

The phone number to analyze, in international format.

Ex: 39349xxxxxxx

Response

Following is an example of the response:

{
  "is_valid_format": true,
  "data_breaches_count": 5,
  "data_breaches_first_breach": "2005-01-01",
  "data_breaches_last_breach": "2023-01-02",
  "data_breaches_data": [
    { "id": "41720",
      "date": "2023-03-09",
      "title": "A Data breach name"
    },
    {
      "id": "41723",
      "date": "2023-03-09",
      "title": "Another data breach name"
    }
  ],
  "data_breaches_data_lists": {
    "names": [
      {
        "first_name": "Peter",
        "last_name": "Parker",
        "count": 1
      },
      {
        "first_name": "Tony",
        "last_name": "Stark",
        "count": 1
      }
    ],
    "emails": [
      {
        "email": "[email protected]",
        "count": 1
      }
    ],
    "phones": [
        {
        "phone_number": "39349xxxxxxx",
        "count": 1
      }]
  }
}


Here's a detailed explanation of all fields returned:

nametype
is_valid_formatboolean

Indicates if the phone number you provided has a valid format

Ex: true
data_breaches_count?integer

The total number of data breaches recorded for this phone number

Ex: 5
data_breaches_first_breach?string

If a data breach has been found, it indicates the date of the first data breach

Ex: 2005-01-01
data_breaches_last_breach?string

If a data breach has been found, it indicates the date of the last data breach

Ex: 2023-01-02
data_breaches_data?object

data_breaches_data is an array of objects representing known data breaches associated with the analyzed phone number.

Each object in the array contains the following fields:

id (string): A unique identifier for the data breach source. It can be used for internal tracking or reference.

date (string in ISO 8601 format): The date when the breach was reported or made public.

title (string): A human-readable name describing the data breach or the leaked dataset.
data_breaches_data_lists?object

data_breaches_data_lists is an object that groups the types of personal information found in data breaches associated with the analyzed phone number. It includes separate lists for names, emails, and phone numbers. Each list contains entries along with a count indicating how many times the item appeared in the compromised datasets.

The object contains the following fields:

names: an array of objects containing:

first_name (string): the exposed first name.

last_name (string): the exposed last name.

count (integer): number of times this exact name combination was found across breaches.

emails: an array of objects containing:

email (string): the exposed email address.

count (integer): number of times this email was found in breaches.

phones: an array of objects containing:

phone_number (string): the exposed phone number (may be partially masked).

count (integer): number of times this phone number was found in breaches.

FAQ

Following are some common questions for this specific API:

πŸ“˜

Why do need to pass a transaction_id?

This value is useful to refer to a specific transaction in the system. Using only the phone number can lead to collision in case of duplicated call for the same phone number. Transaction id must be unique across all trustfull api endpoints.

πŸ“˜

What is the supported phone_number_format?

The phone_number parameter must be submitted in international format, using digits only. This means the number should include the country code directly followed by the national number, without any leading zeros, plus symbols, spaces, or special characters.

πŸ“˜

What happen if i pass an invalid phone_number?

We strongly encourage you to validate the phone number format before making a request, or to use our Phone Validation endpoint
If the phone_number provided has an invalid format, the response will only include the is_valid_format field (false)β€”charged at the same rate as a standard API call.

Language
Credentials
Header
Click Try It! to start a request and see the response here!