| POST | /ValidateEmail |
|---|
"use strict";
export class ValidateEmail {
/** @param {{email?:string,source?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?string} */
email;
/** @type {?string} */
source;
}
export class Additional {
/** @param {{hasKnownBounces?:boolean,hasSpamReports?:boolean,hasSuspectedBounces?:boolean,spamReportCreated?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
hasKnownBounces;
/** @type {boolean} */
hasSpamReports;
/** @type {boolean} */
hasSuspectedBounces;
/** @type {?string} */
spamReportCreated;
}
export class Domain {
/** @param {{hasMxOrARecord?:boolean,hasValidAddressSyntax?:boolean,isSuspectedDisposableAddress?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
hasMxOrARecord;
/** @type {boolean} */
hasValidAddressSyntax;
/** @type {boolean} */
isSuspectedDisposableAddress;
}
export class LocalPart {
/** @param {{isSuspectedRoleAddress?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
isSuspectedRoleAddress;
}
export class Checks {
/** @param {{additional?:Additional,domain?:Domain,localPart?:LocalPart}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?Additional} */
additional;
/** @type {?Domain} */
domain;
/** @type {?LocalPart} */
localPart;
}
export class Result {
/** @param {{checks?:Checks,email?:string,host?:string,ip_Address?:string,local?:string,score?:number,source?:string,suggestion?:string,verdict?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?Checks} */
checks;
/** @type {?string} */
email;
/** @type {?string} */
host;
/** @type {?string} */
ip_Address;
/** @type {?string} */
local;
/** @type {number} */
score;
/** @type {?string} */
source;
/** @type {?string} */
suggestion;
/** @type {?string} */
verdict;
}
export class EmailValidation {
/** @param {{result?:Result}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?Result} */
result;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
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: application/xml
Content-Type: application/xml
Content-Length: length
<ValidateEmail xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CPU.Notifications.ServiceModel">
<Email>String</Email>
<Source>String</Source>
</ValidateEmail>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<EmailValidation xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CPU.SendGridAPI">
<Result>
<Checks>
<Additional>
<HasKnownBounces>false</HasKnownBounces>
<HasSpamReports>false</HasSpamReports>
<HasSuspectedBounces>false</HasSuspectedBounces>
<SpamReportCreated>0001-01-01T00:00:00</SpamReportCreated>
</Additional>
<Domain>
<HasMxOrARecord>false</HasMxOrARecord>
<HasValidAddressSyntax>false</HasValidAddressSyntax>
<IsSuspectedDisposableAddress>false</IsSuspectedDisposableAddress>
</Domain>
<LocalPart>
<IsSuspectedRoleAddress>false</IsSuspectedRoleAddress>
</LocalPart>
</Checks>
<Email>String</Email>
<Host>String</Host>
<Ip_Address>String</Ip_Address>
<Local>String</Local>
<Source>String</Source>
<Verdict>String</Verdict>
</Result>
</EmailValidation>