How to validate email addresses in Powershell

Our free API to validate e-mail addresses is really easy to use in Powershell.

 

Validate e-mail in Powershell with the Invoke-WebRequest method


$headers=@{}
$headers.Add("x-rapidapi-host", "mailcheck.p.rapidapi.com")
$headers.Add("x-rapidapi-key", "YOUR-API-KEY")
$response = Invoke-WebRequest -Uri 'https://mailcheck.p.rapidapi.com/?domain=EMAIL-OR-DOMAIN' -Method GET -Headers $headers
                

This will return a JSON-array with information about the domain, and if you should block it or not.

 

Validate e-mail in Powershell with the Invoke-RestMethod method


$headers=@{}
$headers.Add("x-rapidapi-host", "mailcheck.p.rapidapi.com")
$headers.Add("x-rapidapi-key", "YOUR-API-KEY")
$response = Invoke-RestMethod -Uri 'https://mailcheck.p.rapidapi.com/?domain=EMAIL-OR-DOMAIN' -Method GET -Headers $headers
                

 

You can of course just send it as a regular GET-request to that URL also, in your favorite way, as long as you have the API-key in the header.

You will receive a JSON response, telling you if this is a disposable e-mail to block, or if there are other issues with the domain:

 


{
   "valid": true,
   "block": true,
   "disposable": true,
   "domain": "cocovpn.com",
   "text": "Disposable e-mail",
   "reason": "Heuristics (1b)",
   "risk": 91,
   "mx_host": "mail56.cocovpn.com",
   "mx_info": "Using MX pointer mail56.cocovpn.com from DNS with priority: 0",
   "mx_ip": "109.236.84.18",
   "last_changed_at": "2020-06-11T09:56:02+02:00"
}
               

This will tell you if you should block the domain cocovpn.com or not, and the reason to why the API thinks so (disposable e-mail, etc). You can also see more detailed documentation of the response here.

To get started for free, and get an API key, click here!