Account and organization
Signing up creates your organization, the agency or team that owns all clients, domains and channels. Every sign-up starts a 14-day trial with the scope of the Agency plan, no credit card. Afterwards the account continues on the Free plan: three domains free forever; if there are more in the account, the three oldest keep running and the rest are paused, nothing is deleted.
The slug of the organization appears in the dashboard URL and is the same one the API uses. Time zone and language of the organization decide when the digest arrives and in which language reports and chat replies appear.
Adding a domain
Under Domains → New domain you enter a name, optionally with a client. Anything DomainWarn can reduce to a registrable domain is allowed: client.com, https://www.client.com/shop, shop.client.com or an IDN such as bäckerei-weber.de. Scheme, path and port are removed, IDNs are stored as Punycode and shown with their readable name.
What is stored is always the registrable domain. If you enter a subdomain, the domain client.com is created with a website monitor on shop.client.com. Rejected are IP addresses, names without a public suffix and local suffixes such as .local, .test or .internal.
- Every domain gets monitors for all enabled check types (SMTP and IPv6 only if the operator enables them): website monitors for
https://client.com/andhttps://www.client.com/, a certificate monitor per host name, all other checks on the domain itself. - If neither MX nor SPF records are found, DomainWarn switches off the email area of the domain when creating it; you can enable it any time in the domain settings.
- The first check starts immediately. The first run establishes the baseline (event "baseline established") and does not report changes yet; state findings such as an expired certificate do open an incident from the first run.
- Mail server checks on port 25 (
smtp) and the IPv6 check only exist if the operator has enabled them; both are described in the checks chapter.
See also: All check types
Import from a list
Domains → Bulk import → tab "List": one domain per line, commas and spaces separate as well, lines starting with # are ignored. A client can be chosen for the whole list. This path creates up to 200 domains per call, three times per hour, and checks each one immediately; the result names the number of created domains and a list of failures with a reason per name.
# Client Miller
miller-dental.example
www.miller-dentistry.example
# Client Smith
smith-motors.example, smith-usedcars.exampleFor more than 200 names use the import from a zone file or provider zones, or paste the list in several steps.
Import from a zone file
Tab "Zone file": paste the BIND export of the hosting provider as Plesk, Cloudflare, IONOS or Hetzner deliver it. DomainWarn reads $ORIGIN, skips $TTL and $INCLUDE, handles comments from ; and recognises A, AAAA, CNAME, MX, TXT, NS, SRV, CAA, PTR and TLSA records. If $ORIGIN is missing and the file uses relative names such as www, you enter the zone in the field next to it.
Taken over are the zone itself and the owners of A, AAAA and CNAME records, i.e. the host names that can serve a website. Left out are wildcards, names with underscore labels (_dmarc, _acme-challenge), names outside the zone and infrastructure names such as mail, smtp, imap, pop, mx, ns, ftp, autoconfig, autodiscover, webmail, cpanel, dkim, mta-sts and their numbered variants.
- "Preview" shows the recognised host names 200 per page, the zone first; names already monitored are greyed out and marked.
- Select host names; the selection accumulates across all pages.
- "Create {n}" starts the import in the background (next section).
Import from the zones of your DNS provider
Tab "Provider": if a DNS provider is connected under Settings → Integrations (Cloudflare, Hetzner DNS, IONOS, netcup, INWX, OVHcloud, Amazon Route 53, deSEC or autoDNS), "Load zones" fetches all zones of the account page by page, 200 at a time, up to 10,000 zones. Zones already monitored are marked, you select the rest and create them.
Integrations are created by owners and admins; the import itself needs the same permission. At netcup the API returns a zone list only for domain resellers; other netcup accounts import via list or zone file, records in one click still work.
See also: Connect DNS providers
The import in the background
Zone file and provider imports do not create the domains right away but hand them to a job in the queue: up to 5,000 names per import and 10 imports per hour and organization. The dashboard shows the progress ("Import waiting for a free worker", "Import running, domains are created in blocks", a bar with "{done} of {total} processed") and at the end the summary: created, skipped, rejected, with a list of the names not created and the reason.
- Empty lines, comments and duplicates (case-insensitive) are removed beforehand; parent domains are created before their subdomains.
- Skipped: domains already monitored. Created: new domains and new host names for existing domains, as long as the host name limit per domain allows.
- Once the domain limit of the plan is reached, all further names are rejected with that reason without an attempt. After a plan change you can import them again.
- Imported domains are not checked immediately; the monitors start staggered at their first due time, domain profile and CMS detection within 30 minutes. That keeps the queue free for the running checks.
- An import runs for at most 14 minutes; if it aborts, the progress so far is kept and the error is shown in the result. Imports run one after another; a waiting import starts as soon as the previous one has finished.
Editing many domains at once
With write access (owner, admin, member; viewers and client accounts see none), every row of the domain list has a checkbox. Hold Shift and click to select all rows up to the last one you clicked. The checkbox in the table header selects the whole page; the list then offers to select all matches of the current filter (state, client, system, search), at most 500. The selection is kept while you page through the list.
As soon as something is selected, the action bar appears above the table, on a phone at the bottom of the screen:
- Pause and resume: as in the settings of the domain. Pausing closes open incidents without an all-clear; domains above the plan’s domain limit stay paused when you resume.
- Assign client: one client for all selected domains, or “No client” to remove the assignment.
- Areas: switch website, email, domain and DNS and security on or off; “Unchanged” leaves an area as it is.
- Interval: set the check interval of one check type on all selected domains, choosing from the steps your plan allows. Domains without a monitor of that type are skipped.
- Check now: for at most 50 domains at once; each one counts against the “check now” limit (five times per domain, 60 times per organization and hour), domains without remaining quota are skipped.
- Delete: with all monitors, results and incidents; freed plan slots move paused domains up.
Every action asks first and names the number of domains. Up to 100 domains the result comes right away, above that the action runs in the background with a progress bar. The result lists every skipped or failed domain with a reason, such as “was not paused” or “has no monitor of this type”. The audit log gets one entry per bulk action with the action and the numbers, for deletions with the domain names.
The API offers the same via POST /domains/bulk-actions.
See also: API: bulk action on domains
Reading the first results
The overview shows a state per domain: healthy, warning, critical or unknown (no check yet). The state is the worst of the open incidents and the checks with a warning or outage – the same as what the domain page lists under "Needs attention". The domain page has tabs for Overview, DNS, E-Mail, Website, Timeline and Settings: the overview starts with what needs attention (monitors with a warning or outage, with finding and recommendation), otherwise "All checks passing"; below it one row per area (website, email, domain and DNS) with its state, a click shows all checks of the area with their findings; "E-Mail" lists MTA-STS and the BIMI logo next to MX, SPF, DKIM, DMARC and TLS-RPT, "Website" the security.txt that DomainWarn serves. Every detail page shows on the right, always in the same order, the status, the management (who maintains the record, with the one-click way to the DNS provider) and the findings with suggestions; the timeline shows changes with before and after.
"Check now" triggers all active monitors of a domain immediately, five times per domain and hour, 60 times per organization and hour.
Next steps
Three things are worth doing right after the import:
- Set up a channel and trigger the test delivery: without a successful test a channel counts as unconfirmed. Email to the members is active from the start.
- Create clients and assign domains so that status pages, reports and client access work per client.
- Enter maintenance windows for planned migrations so that the changes land in the timeline but wake nobody.
See also: Alerts and channels · Clients
Frequently asked questions
- What counts as a domain?
- Every registrable domain counts once, regardless of how many host names you monitor under it. Host names such as shop.client.com count as host names of the domain, whose number is limited per plan (3 on Free, 10 on Freelancer and Agency, 20 on Agency Pro).
- Can I assign domains to a client later?
- Yes, in the settings of the domain or during import for the whole list. A domain belongs to at most one client; the assignment can be changed or removed at any time.
- Does the import trigger alerts immediately?
- Not change alerts: the first run of every domain only establishes the baseline. State findings such as an expired certificate, missing MX records or an unreachable website do open an incident after their threshold, because that is what monitoring is for.
- What happens to domains above the plan limit?
- They are rejected during import with the reason "domain limit reached". If you drop to the Free plan after the trial, all domains are kept; the three oldest keep running, the rest are paused until you choose a plan.