PHP Integration
Using cURL or Guzzle.
<?php
function validateEmail($email, $apiKey) {
$url = "https://api.checkemail.dev/validate?email=" . urlencode($email);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"x-api-key: $apiKey"
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
$data = json_decode($response, true);
$confidence = $data['confidence'];
$validations = $data['validations'];
if ($confidence['status'] === 'DISPOSABLE' || $validations['is_disposable']) {
return ["valid" => false, "reason" => "disposable"];
}
if ($confidence['alias_status'] === 'ALIAS_CONFIRMED') {
// Handle canonical email for deduplication
$canonical = $confidence['canonical_email'];
}
return ["valid" => ($confidence['status'] === 'LIKELY'), "data" => $data];
}
return ["valid" => false, "reason" => "api_error"];
}
// Usage
$res = validateEmail("[email protected]", "ce_d_...");
if ($res['valid']) {
echo "Email is good to go!";
}
?>