ORBIS.ID
You are on Anyone PUBorbis.id

BUILD · TOOLS · DID RESOLVER

Resolve any did:web. No service in the middle.

This page is not a working tool. What belongs here is a text box: type a did:web identifier, see the URL it resolves to and the document that URL returns. It is waiting on client-side JavaScript, which this site does not ship. Until it lands, the recipe below is the entire algorithm — a did:web resolver has no server of its own to be down, because resolution is just a URL transform.

did:web has no registry, no ledger, no resolver network. The identifier is a domain name in a trench coat.

The whole algorithm

Strip the did:web: prefix. Replace every remaining : with /. If nothing is left after the host, fetch /.well-known/did.json on that host; otherwise append /did.json to the path. There is no step three.

resolve any did:web locally
DID="did:web:orbis.id"
DOMAIN_AND_PATH=${DID#did:web:}
PATH_PART=${DOMAIN_AND_PATH//:/\/}
HOST=${PATH_PART%%/*}
REST=${PATH_PART#"$HOST"}
if [ -z "$REST" ]; then
  curl -s "https://$HOST/.well-known/did.json" | python3 -m json.tool
else
  curl -s "https://$HOST$REST/did.json" | python3 -m json.tool
fi
No third-party resolver sees the identifier — the fetch goes straight to the domain the identifier names.

Tried against this platform's own identifier

witnesseddid:web:orbis.id
curl -s https://id.orbis.id/.well-known/did.json | python3 -m json.tool
Reached on 2026-08-27 (src/data/externals.json). No path segment, so the well-known form applies.

What is real here.

The identifier this tool would resolve is real and live today. The browser tool itself does not exist — this site ships no client-side JavaScript on any page.

The register holds 17 live · 2 partial · 2 planned · 5 not yet.

1 of the 1 capabilities this page depends on have no row in the register yet, so this page will not print a state for them. They are named rather than dropped, because a slice that silently shortens itself is the same defect as a claim with no receipt.

  • did-web-anchor

The register route serves, but it carries no row for these yet. List what it does carry:

curl -s https://id.orbis.id/api/site/register | jq -r '.entries[].slug'

Straight answers

Is there a box to type a DID into on this page?
No. There is a shell recipe that resolves any did:web without one.
Does resolving a did:web ever touch a third party?
No — the fetch goes directly to the domain the identifier names.

Do not trust us. Check us.