# Disify

> Catch fake and throwaway email addresses with Disify: check an address or a whole list for valid syntax, working mail servers and disposable mail services, or screen a domain on its own.

App · 3 actions. Web page: https://docs.lodol.com/docs/integrations/disify

## Actions

### Check a domain

Check whether a domain belongs to a disposable (throwaway) mail service and whether it can receive mail, without a full address. Use it to screen a company's website or an email's domain.

**Inputs**

- Domain (`domain`, text, required): The domain to check, such as mailinator.com. A link or an email address works too.

**Outputs**

- `disposable` (true/false): Whether it belongs to a disposable (throwaway) mail service
- `disposable_score` (number): How strong the evidence of a disposable address is, from 0 to 100
- `dns_inconclusive` (true/false): True when the mail server lookup timed out, so a missing mail server is not certain; check again later
- `domain` (text): The domain that was checked
- `free_provider` (true/false): Whether it is free webmail, such as Gmail or Yahoo
- `has_mail_server` (true/false): Whether the domain has mail servers to receive mail
- `is_subdomain` (true/false): Whether the domain is a subdomain of another
- `is_valid` (true/false): True when the syntax is valid, the domain can receive mail and it is not disposable
- `mail_servers` (list): The domain's mail server (MX) host names
- `parent_domain` (text): The parent domain, for a subdomain
- `signals` (list): Disify's evidence codes, such as blacklist_exact or no_mx_records
- `top_level_domain` (text): The domain's ending, such as com
- `trusted_provider` (true/false): Whether Disify lists the domain as a trusted provider
- `valid_format` (true/false): Whether the syntax is valid
- `verdict` (text): One word for the result: valid, invalid_format, disposable, no_mail_server or dns_inconclusive

**Example output**

```json
{
  "disposable": true,
  "disposable_score": 100,
  "dns_inconclusive": false,
  "domain": "mailinator.com",
  "free_provider": false,
  "has_mail_server": true,
  "is_subdomain": false,
  "is_valid": false,
  "mail_servers": [
    "mail.mailinator.com",
    "mail2.mailinator.com"
  ],
  "parent_domain": null,
  "signals": [
    "blacklist_exact",
    "keyword_match",
    "mx_blacklist_exact"
  ],
  "top_level_domain": "com",
  "trusted_provider": false,
  "valid_format": true,
  "verdict": "disposable"
}
```

### Check an email

Check whether an email address is real and usable: valid syntax, a domain that can receive mail, and not a disposable (throwaway) address. Also says whether it is free webmail or a role address such as info@, and suggests a fix for a misspelled domain.

**Inputs**

- Email (`email`, text, required): The address to check, such as jane@example.com.

**Outputs**

- `disposable` (true/false): Whether it belongs to a disposable (throwaway) mail service
- `disposable_score` (number): How strong the evidence of a disposable address is, from 0 to 100
- `dns_inconclusive` (true/false): True when the mail server lookup timed out, so a missing mail server is not certain; check again later
- `domain` (text): The domain that was checked
- `email` (text): The address that was checked, as given
- `free_provider` (true/false): Whether it is free webmail, such as Gmail or Yahoo
- `has_mail_server` (true/false): Whether the domain has mail servers to receive mail
- `is_subdomain` (true/false): Whether the domain is a subdomain of another
- `is_valid` (true/false): True when the syntax is valid, the domain can receive mail and it is not disposable
- `mail_servers` (list): The domain's mail server (MX) host names
- `parent_domain` (text): The parent domain, for a subdomain
- `plus_alias` (true/false): Whether it uses a + alias, such as jane+news@gmail.com
- `role_address` (true/false): Whether it is a role address, such as info@ or support@
- `signals` (list): Disify's evidence codes, such as blacklist_exact or no_mx_records
- `suggested_domain` (text): A likely correct domain when this one looks misspelled, such as gmail.com
- `suggested_email` (text): The address with that domain, such as john@gmail.com
- `top_level_domain` (text): The domain's ending, such as com
- `trusted_provider` (true/false): Whether Disify lists the domain as a trusted provider
- `valid_format` (true/false): Whether the syntax is valid
- `verdict` (text): One word for the result: valid, invalid_format, disposable, no_mail_server or dns_inconclusive

**Example output**

```json
{
  "disposable": true,
  "disposable_score": 100,
  "dns_inconclusive": false,
  "domain": "gmial.com",
  "email": "john@gmial.com",
  "free_provider": false,
  "has_mail_server": false,
  "is_subdomain": false,
  "is_valid": false,
  "mail_servers": [],
  "parent_domain": null,
  "plus_alias": false,
  "role_address": false,
  "signals": [
    "blacklist_exact",
    "no_mx_records"
  ],
  "suggested_domain": "gmail.com",
  "suggested_email": "john@gmail.com",
  "top_level_domain": "com",
  "trusted_provider": false,
  "valid_format": true,
  "verdict": "disposable"
}
```

### Check many emails

Check up to 100 email addresses in one go, such as a sign-up list, and get each one's result plus the list of valid ones. A domain on its own is checked as a domain.

**Inputs**

- Emails (`emails`, list, required): Up to 100 addresses: a list from an earlier step, or addresses separated by commas or new lines.

**Outputs**

- `checked` (number): How many different addresses were checked
- `disposable` (number): How many are disposable
- `invalid_format` (number): How many are not valid addresses
- `no_mail_server` (number): How many have no mail server, or none found yet
- `rejected_emails` (list): Every address that is not valid, for any reason
- `results` (list): One result for each address, in the order given
- `valid` (number): How many are valid
- `valid_emails` (list): The valid addresses, ready to use

**Example output**

```json
{
  "checked": 3,
  "disposable": 1,
  "invalid_format": 1,
  "no_mail_server": 0,
  "rejected_emails": [
    "foo@mailinator.com",
    "not-an-email"
  ],
  "results": [
    {
      "disposable": false,
      "disposable_score": 0,
      "dns_inconclusive": false,
      "domain": "gmail.com",
      "email": "test@gmail.com",
      "free_provider": true,
      "has_mail_server": true,
      "is_subdomain": false,
      "is_valid": true,
      "mail_servers": [
        "gmail-smtp-in.l.google.com",
        "alt1.gmail-smtp-in.l.google.com",
        "alt2.gmail-smtp-in.l.google.com",
        "alt3.gmail-smtp-in.l.google.com",
        "alt4.gmail-smtp-in.l.google.com"
      ],
      "parent_domain": null,
      "plus_alias": false,
      "role_address": false,
      "signals": [],
      "suggested_domain": null,
      "suggested_email": null,
      "top_level_domain": "com",
      "trusted_provider": true,
      "valid_format": true,
      "verdict": "valid"
    },
    {
      "disposable": true,
      "disposable_score": 100,
      "dns_inconclusive": false,
      "domain": "mailinator.com",
      "email": "foo@mailinator.com",
      "free_provider": false,
      "has_mail_server": true,
      "is_subdomain": false,
      "is_valid": false,
      "mail_servers": [
        "mail.mailinator.com",
        "mail2.mailinator.com"
      ],
      "parent_domain": null,
      "plus_alias": false,
      "role_address": false,
      "signals": [
        "blacklist_exact",
        "keyword_match",
        "mx_blacklist_exact"
      ],
      "suggested_domain": null,
      "suggested_email": null,
      "top_level_domain": "com",
      "trusted_provider": false,
      "valid_format": true,
      "verdict": "disposable"
    },
    {
      "disposable": false,
      "disposable_score": null,
      "dns_inconclusive": false,
      "domain": null,
      "email": "not-an-email",
      "free_provider": false,
      "has_mail_server": false,
      "is_subdomain": false,
      "is_valid": false,
      "mail_servers": [],
      "parent_domain": null,
      "plus_alias": false,
      "role_address": false,
      "signals": [],
      "suggested_domain": null,
      "suggested_email": null,
      "top_level_domain": null,
      "trusted_provider": false,
      "valid_format": false,
      "verdict": "invalid_format"
    }
  ],
  "valid": 1,
  "valid_emails": [
    "test@gmail.com"
  ]
}
```
