Sales engagement
Check email domains, domain age and links in GMass
Check the domain behind every address in the Google Sheet you mail with GMass, so risky and throwaway addresses are marked before a campaign goes out.
Why the data matters in GMass
GMass sends campaigns from your own Gmail account, so every address that bounces counts against the mailbox you also use for ordinary mail. A list with typos, throwaway domains and domains that cannot receive mail turns one campaign into a reputation problem for that account, and the bounce webhooks only tell you after the damage is done.
What LookValid checks
| Product | What it does here | Credits |
|---|---|---|
| Email Domain Check | Reads the domain behind each address and reports whether it has mail servers, whether it is a throwaway domain and whether it is a free mailbox provider. It never contacts the mail server, so it cannot confirm that one mailbox exists. Marks role addresses such as info@ and sales@, which usually reach a shared inbox instead of a person, so you can split them out of a personal-sounding campaign. | 1 credit per address checked |
| Domain Age | Returns when a recipient domain was registered, so a domain created last week stands out from one that has existed for years. | 2 credits per registered domain (unregistered domains are free) |
| Link Safety Check | Checks the domain of a link you plan to put in the campaign against a public list of reported malicious domains. A domain on no list is not proof the page is safe. | 1 credit per URL checked (a check that cannot run is free) |
Connect it in four steps
- Create a LookValid account and generate an API key from your dashboard.
- Open the sheet you mail from, choose Extensions then Apps Script, and add the key as a script property named LOOKVALID_API_KEY so it never sits in a cell.
- Call the function once per row: it sends a POST to the email-domain-check endpoint, returns nothing when the lookup found no answer, and stops with the error code and fix when the API refuses the call.
- Write the three returned values into new columns beside the address, then filter on them so GMass only receives rows whose address check is good and whose domain is not a throwaway one.
a script bound to the Google Sheet that holds the list you mail with GMass The call is POST https://YOUR_API_HOST/v1/email-domain-check and costs 1 credit per address checked.
var API_URL = "https://YOUR_API_HOST/v1/email-domain-check";
function checkGmassRecipient(value) {
var key = PropertiesService.getScriptProperties().getProperty("LOOKVALID_API_KEY");
var response = UrlFetchApp.fetch(API_URL, {
method: "post",
contentType: "application/json",
headers: { Authorization: "Bearer " + key },
muteHttpExceptions: true,
payload: JSON.stringify({
"email": value,
}),
});
var result = JSON.parse(response.getContentText());
if (response.getResponseCode() >= 400) throw new Error(result.error.code + ": " + result.error.fix);
if (!result.found) return null;
return {
"Address check": result.data?.deliverability_signal === undefined ? null : result.data?.deliverability_signal,
"Throwaway domain": result.data?.disposable === undefined ? null : result.data?.disposable,
"Role mailbox": result.data?.role_account === undefined ? null : result.data?.role_account,
};
}
| Response field | Goes into |
|---|---|
| data.deliverability_signal | Address check |
| data.disposable | Throwaway domain |
| data.role_account | Role mailbox |
The recipe returns nothing when the lookup finds nothing, which costs no credits for this product, and stops with the error code and fix on a failed request.
Without code
If you prefer not to edit a script, GMass can also push its own send and bounce events to a URL you choose, and any automation platform with a generic HTTP request step can sit on that URL. Add one step that posts the recipient address to the email-domain-check endpoint with your key in a bearer header, then add a second step that writes the result back to the sheet row. No dedicated app is needed on either side.
Questions
What does each address check cost?
Each lookup uses credits from your LookValid balance. The pricing page lists the current amount for the email domain check.
Does the check prove an address exists?
No. It reads the domain: mail servers, SPF and DMARC records, throwaway and free-provider flags and role mailboxes. It cannot tell you that a particular mailbox is live.
Where does the key go in a Sheets script?
In the script properties of the Apps Script project, under the name LOOKVALID_API_KEY. The function reads it at run time, so the key never appears in a cell or in a shared sheet.
Sources
- GMass webhooks guide https://www.gmass.co/blog/webhooks-guide/, read 2026-10-18
- GMass API overview https://www.gmass.co/features/api, read 2026-10-18
- LookValid API reference: Email Domain Check https://lookvalid.com/docs/api/email-domain-check, read 2026-10-18
LookValid is run by Meralume Labs. It is not connected to, endorsed by or a partner of any company or product named on this page, and every product name belongs to its owner.
Related pages
LookValid bills every lookup in credits from one shared balance, so the same key works for each check above.
See Email Domain Check