Skip to content
Liorith/Registry

Docs · Machines

For language models

One request answers the question. The harder part is not answering a question that was never asked.

The request

http
GET https://api.registry.liorith.net/check?domain=example.com

No key, no headers, no authentication. Registry outcomes are delivered with 200; the result is in the body. Transport and infrastructure failures use 4xx and 5xx — a rate limit (429), a missing parameter (400), unavailable replay protection on /verify (503) — and carry no result.

Never branch on the HTTP status, and never report a non-200 as a finding about the domain. It means the question was not answered.

Fields to read

statusneutralregistered, not_registered or blocked. This is the answer.
summaryneutralOne sentence stating the result and its limits. Written to be quoted verbatim — quote it rather than paraphrasing.
does_not_implyneutralThe conclusions this answer does not support. If a user is asking for one of them, say the registry cannot tell them that.
site.statusneutralThe entry state. registered plus suspended is not an endorsement, and the difference matters more than the registration itself.
proof_checkedneutralAlways false on this endpoint. No signature was examined.
The result field carries older code names and is kept only for existing integrations. Read status.

What the answer does not say

These are the misreadings that actually happen. Each one turns a narrow factual answer into a claim the registry never made.

  • registered is not a safety rating. Liorith does not audit the content or conduct of a listed site. Being on file says which entry a domain is listed under, not that it is trustworthy.
  • registered is not a verified signature. A lookup cannot establish that a particular link, email or request came from that site. Only /verify with a signed proof can, and a lookup always reports proof_checked: false.
  • registered does not mean currently active. Read site.status. An entry can be suspended, inactive or former and still be registered.
  • not_registered is not a warning. The registry lists Liorith properties and network members. Nearly every domain on the internet is correctly not registered, and that says nothing about it.
  • blocked is not a finding of unlawful conduct. It records that Liorith does not accept the domain inside its own network. Report it as that, not as an accusation against whoever runs it.

Answering a user

When someone asks whether a domain is “official” or “real”, they are usually asking two things at once. The registry answers one of them.

Goodtext
shop.example.com is not listed in the Liorith Registry. That registry only
covers Liorith properties and affiliated sites, so this tells you nothing about
whether the site itself is legitimate.
Wrongtext
shop.example.com is not in the Liorith Registry, so it is probably not
trustworthy.

The second sentence is an inference the data does not support. When the question is about trust rather than membership, say the registry is not the right source instead of stretching it into one.

A positive answer over-reads just as easily, and in a way that is harder to notice. registered means this list has an entry — it is not a finding about who owns the domain, who operates it, or who answers for it in law.

Goodtext
The Liorith Registry lists demo.liorith.net under the entry "Liorith Demo",
in state "active". That is an entry in Liorith's own registry; it is not a
statement about ownership or legal responsibility, and no signature was
checked.
Wrongtext
demo.liorith.net belongs to Liorith Demo and is an official, verified
Liorith domain.

Three claims in that sentence, none of them made by the data: belongs to asserts ownership, official asserts a status the registry does not grade, and verified asserts a signature check that a lookup never performs.

Proofs, if you encounter one

A proof URL is single-use and lives for 120 seconds. An expired or replay result on a link a user pasted is the normal outcome for an old link — it is not evidence of tampering, and should not be reported as one.

Only verified_signed and valid_deprecated mean the request was genuine. Everything else is a refusal.

Machine-readable summary

The same guidance in the llms.txt convention, with the current endpoint URLs filled in:

text
https://registry.liorith.net/llms.txt