Disposable Phones
The Disposable Phone Dataset provides structured information on phone numbers associated with disposable, temporary, or virtual providers. This dataset is useful for fraud detection, risk assessment, and identity verification processes. The dataset is updated periodically and is delivered in CSV format for easy integration into various database systems.
Dataset Structure
The dataset contains the following fields:
- msisdn: The mobile phone number is in international format with
+
sign. - updated_at: The date timestamp when the entry was last updated in the format
YYYY-MM-DD
. - providers: A JSON-formatted array of disposable phone providers associated with the number.
Example Data
msisdn,updated_at,disposable_provider_list
+3197010580467,2025-03-04,"[""quackr.io""]"
+32468799959,2025-03-04,"[""smstome.com""]"
+3197010587412,2025-03-04,"[""quackr.io""]"
+447457413062,2025-03-04,"[""quackr.io""]"
+5522920058491,2025-03-04,"[""sms-man.com""]"
+17804237849,2025-03-04,"[""smsonline.cloud""]"
+447893986803,2025-03-04,"[""quackr.io"", ""smscodeonline.com""]"
Creating the SQL Schema
To store the dataset efficiently in a relational database, the following schema structure is recommended.
Table: disposable_phone_data
disposable_phone_data
This table stores the core dataset information.
CREATE TABLE disposable_phone_data (
msisdn VARCHAR(20) PRIMARY KEY,
updated_at DATE NOT NULL,
providers JSONB NOT NULL
);
Table: disposable_providers
(Optional for Normalization)
disposable_providers
(Optional for Normalization)If you need to normalize the disposable_provider_list field, a separate table can store individual provider associations.
CREATE TABLE disposable_providers (
id UNIQUEID PRIMARY KEY,
msisdn VARCHAR(20) REFERENCES disposable_phone_data(msisdn),
provider_name VARCHAR(255) NOT NULL
);
Importing into PostgreSQL
To import the dataset into PostgreSQL, use the COPY
command:
COPY
disposable_phone_data(msisdn, updated_at, providers)
FROM
'/path/to/disposable_phone_dataset.csv'
DELIMITER ','
CSV HEADER;
Normalizing the Provider List
If using a normalized schema, a script or stored procedure will be needed to split the disposable_provider_list
column and insert the individual provider records into the disposable_providers
table.
INSERT INTO
disposable_providers (msisdn, provider_name)
SELECT
msisdn,
unnest(string_to_array(replace(providers::TEXT, '"', ''), ','))
FROM
disposable_phone_data;
Updated 4 days ago