10 Domains API: Check gTLD email verification status

This is a series of articles in which we are going to cover registrant contact verification.

This is a first article in a series in which we are going to search for email addresses and their respective statuses with regard to the aforementioned validation procedure. To get more information about our API in general, please use our documentation portal as your reference.

Due to ICANN requirements, Openprovider is obliged to verify the validity of each email address that is used in the owner contact details of any gTLD registration. gTLDs include all extensions that are not country codes (ccTLDs): common generics like .com, .net and .travel, and all new gTLDs like .guru, .berlin and .app.

Usually, this process is handled automatically depending on the actions that are being applied to a domain. More on this could be found in our Knowledge Base. However, if for some reason the process should be re-initiated, we have corresponding API methods for the very same purpose.

Searching for email's status

First, let's focus on retrieving the status of a validation request. In order to do so we are going to utilise List domain email verifications method.

NB If there are multiple domains linked to one e-mail address, multiple rows are returned.

All input parameters in this method are optional. Omitting all at once will result into a full list of email objects with their respective statuses.


Entering Geo Fence iconUse endpoint path below. Base URL is determined by both the target environment and API version.
GET {base_url}/customers/verifications/emails/domains


Name Type Description
domain string Optional.
handle string Optional.
email string Optional.
status custom Optional. Allowed values: failed / in progress / not verified / verified
description custom Reason of failure. Allowed values: expired / bounced
is_suspended boolean Optional.
limit integer default value: 100, maximum value: 1000
offset integer default value: 0


curl -X GET \
'https://api.cte.openprovider.eu/v1beta/customers/verifications/emails/domains?domain=domain.com' \
-H 'Authorization: ,Bearer 2831a37fb8*******90b5aac822' \
-H 'Content-Type: application/json' \


"code": 0,
"data": {
"results": [
"description": "",
"domain": "",
"email": "email@domain.com",
"expiration_date": "",
"handle": "XX123456-XX",
"is_suspended": false,
"status": "unverified"
"total": 0
"desc": ""


Name Type Description
handle string  
email string  
status custom Allowed values: failed / in progress / not verified / verified
description custom Reason of failure. Allowed values: expired / bounced
domain string  
is_suspended boolean  
expiration_date integer populated if the verification is still "in progress"; indicating the date & time at which the e-mail address will be marked as "failed" and related domains will be suspended

In the following article we are going to see how one can restart the verification procedure if need be.

Was this article helpful?
0 out of 0 found this helpful
Additional questions? Submit a request