Liorith/Registry
REFERENCE · REGISTRY API

Response Codes

All possible result values of the Liorith Registry system - proof verification, registry lookup, and site status.

GET/api/verify?site=…&host=…&ts=…&nonce=…&sig=…
GET/api/check?domain=…

All endpoints return { result: string, ... } as application/json.

Proof Verification

/verify · /api/verify
Success
verified_signed
Signed request verified

HMAC-SHA256 valid, nonce unconsumed, host in allowed_domains, site active. Strongest confirmation.

valid_deprecated
Valid - site being deprecated

Like verified_signed but site status is deprecated. Proof valid, with a notice about a possible successor.

Timing & Format
expired
Proof expired

Timestamp is more than 120 seconds in the past. Proof links are intentionally short-lived.

clock_skew
Timestamp error

Timestamp is more than 30 s in the future. The issuing server must be NTP-synchronised.

malformed
Invalid request

Required parameters are missing or have an invalid format. No lookup is performed.

Domain
host_mismatch
Domain mismatch

Signature correct, but host is not in allowed_domains of the given site.

Security
replay
Already used

Nonce already consumed. Every proof link is single-use - protects against replay attacks.

invalid_signature
Invalid signature

HMAC comparison failed. Tampered link, unknown system, or corrupted URL.

Site State
site_inactive
Site disabled

Site in the registry but status = inactive. Proofs are temporarily not accepted.

site_archived
Archived registry entry

Site was part of the Liorith Network and has been archived. No proofs accepted anymore.

site_suspended
Site suspended

Site suspended from the registry (policy violation). All proofs from this site are rejected.

unknown_site
Unknown site ID

The site_id in the proof does not exist in the Liorith Registry.

Threat
blacklisted
Known threat

Host is on the Liorith Blacklist. Intercepted before all other checks.

Registry Lookup

/check · /api/check
verified_registry
In the Liorith Registry

Domain found in allowed_domains. status contains active / deprecated / inactive / former / suspended.

unknown
Not in the Liorith Registry

Domain is not registered in the Liorith Registry.

blacklisted
Known threat

Domain is on the blacklist. Registry lookup is skipped.

Site Status

sites.json · status
active

Normal verification - all proofs accepted

deprecated

Being deprecated - proof valid (valid_deprecated), but with a warning

inactive

Temporarily disabled - no proof accepted (site_inactive)

former

Archived - no proof accepted (site_archived)

suspended

Suspended - no proof accepted (site_suspended)