Docs
User guide
What domainhawk does, how to use the watchlist, statuses and limits.
domainhawk is a small, self-hosted watchlist for domain names. Add a name once and it checks the registry every four hours, emailing you when the name becomes available. For registered names it also tracks expiry, registrar and registry status, and can warn you before a name expires or enters a drop-related state.
What it does
- Watches domains on
.deand many other TLDs using official registry data. - Checks automatically every four hours.
- Emails you once when a watched name becomes available.
- Reads expiry dates, registrar, registry status and nameservers from RDAP.
- Warns 30, 7 and 1 days before a registered name expires, and when the registry reports a drop-related status.
- Shows every entry with its latest status in one list.
How to use it
Add a domain. Enter a bare name such as example.com; a pasted URL is
normalized to its hostname. Leave Email me when this domain becomes available
checked to get an availability email, and leave Email me before it expires or
when it may drop checked to get expiry and drop alerts. Untick either to opt
out of that kind of email.
Read the status.
| Status | Meaning |
|---|---|
| Checking | A check is running or queued. |
| Available | No registration record was found. Confirm with a registrar before buying. |
| Taken | A registration record exists. |
| Needs attention | The registry could not be queried. domainhawk retries automatically. |
Drop Radar
For registered domains, domainhawk stores the registry's expiry date, registrar, status codes and nameservers. Open Details on a row to see them, or use the Dropping soon filter to find entries that are close to expiry or in a drop-related state.
Expiry alerts are sent once per threshold: when a registered name first falls
within 30, 7 and 1 days of its stored expiry date. A renewal resets the cycle,
so the new expiry date gets its own reminders. Drop alerts are sent once when
the registry reports pending delete or redemption period; if the status
clears and later returns, you get a new alert.
Limits of the data. Not every registry publishes an expiry date — .de
has no RDAP service, and DENIC's WHOIS does not expose one — so those entries
show Expiry not published and will not send expiry alerts. A pending delete status does not guarantee that a name will become available: confirm the
current state with a registrar before ordering. Availability is still decided
only by an authoritative RDAP registration record.
Check manually if needed. Check now forces a fresh lookup, limited to once per day per entry. Check all now applies the same limit and reports how many entries were skipped.
Stay within the limits. Each account may watch up to 100 domains and add up to 100 per rolling 24 hours. Deleting entries does not reset the daily allowance.
Account
Signed-in users can manage their own account:
- Settings (
/settings) changes the password or requests an email change; the new address only takes effect after entering the code sent to it. Email changes require your current password; SSO-only users can set a local password with the reset code first. - Password reset: Forgot your password? on the sign-in page sends a one-time code by email. Resetting signs out other sessions, so sign in again with the new password.
- Registration: off by default. When the operator enables
DH_REGISTRATION_ENABLED, the sign-in page shows Create an account. New accounts must confirm their email with a 6-digit code before signing in. - Help (
/help) sends a message to the operator and lists your previous tickets. It is only available when an operator configuresDH_ADMIN_EMAIL. - Per-domain notifications: open Details on a watchlist row to change availability and expiry preferences for that entry.
Code emails require SMTP to be configured (see Operations).
API
Scripts and other tools can use the API instead of the web UI. Create a token
under API tokens, send it as a bearer token and call
https://domainhawk.chaops.de/api/v1. See API for token lifetimes, endpoints and
examples.
More
- Operations: configuration, OIDC, availability semantics, production and Docker.
- Development: tests, build tags, project layout and stack.