| 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 .jsv suffix or ?format=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
}
}