API Services - Fraudulent E-mails
Returns whether the e-mail address provided is a disposable/temporary e-mail or not.


URL

http://api.proxstop.com/email.format


Formats

json, xml


HTTP Methods

GET, POST


Request Data

Required Variable Example Info
Yes key 098f6bcd4621d373cade4e832627b4f6 Your unique API key
Yes email jsmith@example.com Fully qualified email address
No ref A personal note / comment


Example Request

http://api.proxstop.com/email.xml?key=098f6bcd4621d373cade4e832627b4f6&email=jsmith@example.com&ref=


Good Response Example

<?xml version="1.0" encoding="UTF-8"?>
<response>
	<is_fraud>true</is_fraud>
</response>		
{
	"version": "1.0",
	"encoding": "UTF-8",
	"response": {
		"is_fraud": true
	}
}		


Bad Response Example

<?xml version="1.0" encoding="UTF-8"?>
<failed>
	<error_code>INVALID_EMAIL</error_code>
	<error_msg>The e-mail address provided is not valid.</error_msg>
</failed>		
{
	"version": "1.0",
	"encoding": "UTF-8",
	"failed": {
		"error_code": "INVALID_EMAIL",
		"error_msg": "The e-mail address provided is not valid."
	}
}		


Simple Programming Example

This uses our PHP5 class which can be downloaded by clicking here. The downloadable zip archive will also contain more detailed examples with forms.

// Load config & main class
require_once('config.ProxStop.php');

// Perform Lookup
$email = 'jsmith@example.com'; // Fully qualified email address
$ref = ''; // A personal note / comment
$result = $ProxStop->emailLookup($email,$ref);

// The lookup failed, print the error message.
if($result===false)
{
	echo 'The lookup failed with the error "'.$ProxStop->errors['code'].': '.$ProxStop->errors['msg'].'"';
}

// The e-mail is fraud
else if((string)$result->is_fraud=='true')
{
	echo 'The e-mail is disposable/temporary.';
}

// The e-mail is safe
else
{
	echo 'The e-mail is safe.';
}		
$apiUrl = 'http://api.proxstop.com/email.xml';
$apiKey = '098f6bcd4621d373cade4e832627b4f6'; // Replace with your API key
$email = 'jsmith@example.com'; // Fully qualified email address
$ref = ''; // A personal note / comment

$result = file_get_contents($apiUrl.'?key='.$apiKey.'&email='.$email.'&ref='.$ref);
$result = simplexml_load_string($result);

if(isset($result->error_code))
{
	echo 'The lookup failed with the error "'.$result->error_code.': '.$result->error_msg.'"';
}
else if(!isset($result->is_fraud))
{
	echo 'The service seems to be temporarily unavailable.';
}
else if((string)$result->is_fraud=='true')
{
	// Do what you need here
	echo 'The e-mail is disposable/temporary.';
}
else
{
	// Do what you need here
	echo 'The e-mail is safe.';
}		
string apiUrl = "http://api.proxstop.com/email.xml";
string apiKey = "098f6bcd4621d373cade4e832627b4f6"; // Replace with your API key
string varEmail = "jsmith@example.com"; // Fully qualified email address
string varRef = ""; // A personal note / comment

string results = new System.Net.WebClient().DownloadString(apiUrl+"?key="+apiKey+"&email="+varEmail+"&ref="+varRef);
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml(results);

if(doc.SelectSingleNode("//failed/error_code")!=null)
{
	Response.Write("The lookup failed with the error \""+doc.SelectSingleNode("//failed/error_code/text()").Value+": "+doc.SelectSingleNode("//failed/error_msg/text()").Value+"\"");
}
else if(doc.SelectSingleNode("//response/is_fraud")==null)
{
	Response.Write("The service seems to be temporarily unavailable.");
}
else if(doc.SelectSingleNode("//response/is_fraud/text()").Value=="true")
{
	// Do what you need here
	Response.Write("The e-mail is disposable/temporary.");
}
else
{
	// Do what you need here
	Response.Write("The e-mail is safe.");
}		
require 'net/http'
require 'rexml/document'

apiUrl = 'http://api.proxstop.com/email.xml'
apiKey = '098f6bcd4621d373cade4e832627b4f6' #Replace with your API key
email = 'jsmith@example.com' #Fully qualified email address
ref = '' #A personal note / comment

xml_data = Net::HTTP.get_response(URI.parse(apiUrl+'?key='+apiKey+'&email='+email+'&ref='+ref)).body
doc = REXML::Document.new(xml_data)

if doc.elements['failed/error_code']
	print 'The lookup failed with the error '+doc.elements['failed/error_code'].text+': '+doc.elements['failed/error_msg'].text

elsif !doc.elements['response/is_fraud']
	print 'The service seems to be temporarily unavailable.'

elsif doc.elements['response/is_fraud'].text=='true'
	#Do what you need here
	print 'The e-mail is disposable/temporary.'

else
	#Do what you need here
	print 'The e-mail is safe.'

end		
from urllib.request import urlopen
from xml.dom import minidom

apiUrl = 'http://api.proxstop.com/email.xml'
apiKey = '098f6bcd4621d373cade4e832627b4f6' #Replace with your API key
email = 'jsmith@example.com' #Fully qualified email address
ref = '' #A personal note / comment

dom = minidom.parse(urlopen(apiUrl+'?key='+apiKey+'&email='+email+'&ref='+ref))

if (dom.getElementsByTagName('error_code')):
	print (dom.getElementsByTagName('error_code')[0].firstChild.data+': '+dom.getElementsByTagName('error_msg')[0].firstChild.data)

elif not (dom.getElementsByTagName('response')):
	print ('The service seems to be temporarily unavailable.')

elif (dom.getElementsByTagName('is_fraud')[0].firstChild.data=='true'):
	#Do what you need here
	print ('The e-mail is disposable/temporary.')

else:
	#Do what you need here
	print ('The e-mail is safe.')		
const http = require('http');

var apiHost = 'api.proxstop.com';
var apiPath = '/email.json';
var apiKey = '098f6bcd4621d373cade4e832627b4f6'; //Replace with your API key
var varEmail = 'jsmith@example.com'; //Fully qualified email address
var varRef = ''; //A personal note / comment

http.get({host:apiHost,port:80,path:apiPath+'?key='+apiKey+'&email='+varEmail+'&ref='+varRef,agent:false},function(res){
	res.setEncoding('utf8');
	res.on('data',function(chunk){
		var json = JSON.parse(chunk);
		if(json.failed!=undefined) {
			console.log(json.failed.error_code+': '+json.failed.error_msg);
		} else if(json.response==undefined) {
			console.log('The service seems to be temporarily unavailable.');
		} else if(json.response.is_fraud=='true') {
			//Do what you need here
			console.log('The e-mail is disposable/temporary.');
		} else {
			//Do what you need here
			console.log('The e-mail is safe.');
		}
	});
});		
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import java.io.File;

public class ProxStop {
	public static void main(String[] args) {

		String apiUrl = "http://api.proxstop.com/email.xml";
		String apiKey = "098f6bcd4621d373cade4e832627b4f6"; //Replace with your API key
		String varEmail = "jsmith@example.com"; //Fully qualified email address
		String varRef = ""; //A personal note / comment

		try {
			DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
			DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
			Element docEle = dBuilder.parse(apiUrl+"?key="+apiKey+"&email="+varEmail+"&ref="+varRef).getDocumentElement();

			if (docEle.getNodeName()=="failed") {
				System.out.println(docEle.getElementsByTagName("error_code").item(0).getChildNodes().item(0).getNodeValue()+": "+docEle.getElementsByTagName("error_msg").item(0).getChildNodes().item(0).getNodeValue());
			} else if (docEle.getNodeName()!="response") {
				System.out.println("The service seems to be temporarily unavailable.");
			} else if(docEle.getElementsByTagName("is_fraud").item(0).getChildNodes().item(0).getNodeValue()=="true") {
				//Do what you need here
				System.out.println("The e-mail is disposable/temporary.");
			} else {
				//Do what you need here
				System.out.println("The e-mail is safe.");
			}
		} catch (SAXParseException err) {
		} catch (SAXException e) {
		} catch (Throwable t) {
		}
	}
}		


Price

1 Point per query