Analyze Email List
curl --request POST \
--url https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/ \
--header 'Content-Type: multipart/form-data' \
--header 'X-API-KEY: <api-key>' \
--form file_id=751 \
--form 'name=Customer List Analysis'import requests
url = "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--"
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('file_id', '751');
form.append('name', 'Customer List Analysis');
const options = {method: 'POST', headers: {'X-API-KEY': '<api-key>'}};
options.body = form;
fetch('https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Content-Type: multipart/form-data",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/")
.header("X-API-KEY", "<api-key>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"file_id": 123,
"bounce_rate": 123,
"status": "analyzed"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}Validation endpoints
Analyze Email List
Analyze an uploaded email list to get a close estimate of the bounce rate. This analysis provides a nearly accurate result without requiring any credits, making it a free way to gauge list quality before committing to a full cleaning.
POST
/
v1
/
api
/
filesupload
/
analyze-list
/
Analyze Email List
curl --request POST \
--url https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/ \
--header 'Content-Type: multipart/form-data' \
--header 'X-API-KEY: <api-key>' \
--form file_id=751 \
--form 'name=Customer List Analysis'import requests
url = "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--"
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('file_id', '751');
form.append('name', 'Customer List Analysis');
const options = {method: 'POST', headers: {'X-API-KEY': '<api-key>'}};
options.body = form;
fetch('https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Content-Type: multipart/form-data",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/")
.header("X-API-KEY", "<api-key>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file_id\"\r\n\r\n751\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nCustomer List Analysis\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"file_id": 123,
"bounce_rate": 123,
"status": "analyzed"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}{
"error": 123,
"message": "<string>"
}This endpoint provides a quick analysis of an uploaded email list to estimate bounce rates and validation statistics without consuming credits. It performs intelligent sampling to deliver fast, approximate results that are close to actual values.
How it Works
1
Upload File First
Use the File Upload endpoint to
upload your CSV or XLSX file and obtain the
file_id2
Submit Analysis Request
Send the analysis request with the file ID and list name
3
Get Instant Results
Receive bounce rate estimates and status immediately
Key Features
No Credits Required
Analyze your email lists without consuming any validation credits
Fast Results
Get bounce rate estimates in seconds, not minutes
Smart Sampling
Uses intelligent analysis to provide close approximations of actual rates
Pre-Validation Insights
Make informed decisions before running full validation
Use Cases
- Quick Quality Assessment: Get a rapid overview of your email list quality
- Budget Planning: Estimate validation costs before processing
- List Comparison: Compare multiple lists without credit consumption
- Pre-Processing Insights: Understand your data before full validation
Example Usage
curl -X POST https://base.sanitizeemail.com/v1/api/filesupload/analyze-list/ \
-H "X-API-KEY: YOUR_API_KEY" \
-F "file_id=751" \
-F "name=Customer List Analysis"
Response Format
{
"file_id": 751,
"bounce_rate": 66.67,
"status": "analyzed"
}
Important Notes
Approximation Method: This endpoint uses intelligent sampling techniques
to provide bounce rate estimates. While results are close to actual values,
they are approximations and may vary from precise validation results.
Zero Cost Analysis: Perfect for getting insights into your email list
quality without spending credits. Use this before deciding whether to proceed
with full validation.
Not 100% Accurate: Results are estimates based on analysis patterns. For
exact validation results, use the Clean Email
List endpoint.
When to Use This vs Full Validation
| Use Analyze List When | Use Full Validation When |
|---|---|
| Quick quality check needed | Exact results required |
| Budget planning | Preparing final email campaigns |
| Comparing multiple lists | Compliance requirements |
| Initial assessment | Production email sends |
Prerequisites
File Upload Required: You must first upload a file using the
/v1/api/filesupload/ endpoint to obtain the required file_id.Authorizations
API key for authentication
Body
multipart/form-data
Email list analysis request payload