Morrow
Free checker / Acceptable use

What this may be used for.

Last updated 2026-10-04. This is the line between a readiness tool and a reconnaissance tool. The free check at /check makes a connection to a host the person asking may not own, so what it may be used for has to be stated, and it forms part of the terms of use.

The Short Version

This tool reads public Certificate Transparency data for a domain and makes at most two TLS connections to it on port 443. That is the same kind of contact a browser or SSL Labs makes, and nothing more. Check hosts you own, or hosts whose public configuration you have a legitimate reason to read. Do not use it as a step in attacking anyone, and do not automate it.

The statement the service itself publishes is served by GET /api/public-check/config and shown on /check, so it cannot drift from the running code. This page is the longer form of that statement. If the two ever disagree, the one the service publishes describes the software that is actually running, and the difference is a bug — please report it to the address at the bottom of this page.

Permitted

Your own estate

Any hostname you operate, or operate on behalf of someone who asked you to. This is what the tool is for.

A supplier you are assessing

A vendor, processor or partner whose public TLS posture is part of your own due diligence. You are reading what their server tells every browser that visits it.

A domain you are researching in good faith

Research, teaching, journalism, or a public-interest look at a public endpoint. One domain, because you have a reason to look at that domain.

In all three cases the limits still apply, the result is still public at its URL, and the domain owner can still opt out.

Prohibited

What Happens On Breach

Most of the enforcement is automatic and impersonal: a request outside the rules is refused with a reason, and an address or a domain that is over budget is rate-limited with a retry hint. Beyond that:

Blocking

A requester who behaves as described above is blocked. This happens upstream of the application, at the edge, because the check log stores only a salted hash of a requesting address — the checker itself holds no requester blocklist and could not enforce one from a hash. The limits can also be tightened for everyone, and the service can be switched off entirely.

Opt-out for the complained-of domain

If a domain owner asks, their domain is added to the opt-out list and is refused before its name is resolved. That is done first, before any investigation.

Referral

Where the law requires it, or where a competent authority makes a valid request, the operator will refer a matter or respond to that request. The check log holds the domain, the time, the outcome and a salted hash of the requesting address — not the address itself. If more is asked for than that, the honest answer is that the data does not exist.

If You Operate A Domain You Do Not Want Checked

You do not have to argue the point or wait for an investigation. Ask, and the domain is refused before anything is resolved or connected to, including everything under it, and its cached result is deleted. The route and what to include is on the abuse and opt-out page. The scanner identity page describes exactly what the traffic in your logs was.

Your Own Copy Is Not Covered By This

The checker ships with the platform source under the MIT licence and runs from the command line against your own copy. This policy governs use of this hosted service. If you run your own copy, you are the party making the connections and the rules that apply are those of your own jurisdiction and your hosting provider.

Contact

Abuse reports, opt-out requests, and anything you think this page gets wrong: no abuse address is configured on this deployment, so the only route is the contact page.