CPU.Notifications

<back to all web services

ValidateEmail

The following routes are available for this service:
POST/ValidateEmail
import Foundation
import ServiceStack

public class ValidateEmail : Codable
{
    public var email:String
    public var source:String

    required public init(){}
}

public class EmailValidation : Codable
{
    public var result:Result

    required public init(){}
}

public class Result : Codable
{
    public var checks:Checks
    public var email:String
    public var host:String
    public var ip_Address:String
    public var local:String
    public var score:Float
    public var source:String
    public var suggestion:String
    public var verdict:String

    required public init(){}
}

public class Checks : Codable
{
    public var additional:Additional
    public var domain:Domain
    public var localPart:LocalPart

    required public init(){}
}

public class Additional : Codable
{
    public var hasKnownBounces:Bool
    public var hasSpamReports:Bool
    public var hasSuspectedBounces:Bool
    public var spamReportCreated:Date?

    required public init(){}
}

public class Domain : Codable
{
    public var hasMxOrARecord:Bool
    public var hasValidAddressSyntax:Bool
    public var isSuspectedDisposableAddress:Bool

    required public init(){}
}

public class LocalPart : Codable
{
    public var isSuspectedRoleAddress:Bool

    required public init(){}
}


Swift ValidateEmail DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /ValidateEmail HTTP/1.1 
Host: cpmwebservices-t.clarkpud.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	email: String,
	source: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	result: 
	{
		checks: 
		{
			additional: 
			{
				hasKnownBounces: False,
				hasSpamReports: False,
				hasSuspectedBounces: False,
				spamReportCreated: 0001-01-01
			},
			domain: 
			{
				hasMxOrARecord: False,
				hasValidAddressSyntax: False,
				isSuspectedDisposableAddress: False
			},
			localPart: 
			{
				isSuspectedRoleAddress: False
			}
		},
		email: String,
		host: String,
		ip_Address: String,
		local: String,
		score: 0,
		source: String,
		suggestion: String@String,
		verdict: String
	}
}