.well-known Endpoints¶
The .well-known endpoints are used for discovery of services within an Orb domain.
did-orb¶
Endpoint: /.well-known/did-orb
GET¶
Example¶
Request:
GET /.well-known/did-orb HTTP/1.1
Host: orb.domain1.com
Accept: application/json
Response:
{
"resolutionEndpoint": "https://orb.domain1.com/sidetree/v1/identifiers",
"operationEndpoint": "https://orb.domain1.com/sidetree/v1/operations"
}
host-meta¶
Endpoint: /.well-known/host-meta
GET¶
Example¶
Request:
GET /.well-known/host-meta HTTP/1.1
Host: orb.domain1.com
Accept: application/json
Response:
{
"links": [
{
"rel": "self",
"type": "application/jrd+json",
"template": "https://orb.domain1.com/.well-known/webfinger?resource={uri}"
},
{
"rel": "self",
"type": "application/activity+json",
"href": "https://orb.domain1.com/services/orb"
}
]
}
host-meta.json¶
Endpoint: /.well-known/host-meta.json
GET¶
Example¶
Request:
GET /.well-known/host-meta.json HTTP/1.1
Host: orb.domain1.com
Response:
{
"links": [
{
"rel": "self",
"type": "application/jrd+json",
"template": "https://orb.domain1.com/.well-known/webfinger?resource={uri}"
},
{
"rel": "self",
"type": "application/activity+json",
"href": "https://orb.domain1.com/services/orb"
}
]
}
did.json¶
Endpoint: /.well-known/did.json
GET¶
Example¶
Request:
GET /.well-known/did.json HTTP/1.1
Host: orb.domain1.com
Response:
{
"@context": "https://w3id.org/did/v1",
"id": "did:web:orb.domain1.com",
"verificationMethod": [
{
"id": "did:web:orb.domain1.com#orb1key2",
"controller": "did:web:orb.domain1.com",
"type": "Ed25519VerificationKey2018",
"publicKeyBase58": "Cd5DEcovdeweWWkMzXL5XmvtL5ov1jgcf7i6itnbVz8m"
},
{
"id": "did:web:orb.domain1.com#orb1key",
"controller": "did:web:orb.domain1.com",
"type": "Ed25519VerificationKey2018",
"publicKeyBase58": "245RycEHD7YAaaELTdUBLGF66iehCzpT3qy1jHLZoTMX"
}
],
"authentication": [
"did:web:orb.domain1.com#orb1key2",
"did:web:orb.domain1.com#orb1key"
],
"assertionMethod": [
"did:web:orb.domain1.com#orb1key2",
"did:web:orb.domain1.com#orb1key"
],
"capabilityDelegation": [
"did:web:orb.domain1.com#orb1key2",
"did:web:orb.domain1.com#orb1key"
],
"capabilityInvocation": [
"did:web:orb.domain1.com#orb1key2",
"did:web:orb.domain1.com#orb1key"
]
}
webfinger¶
Endpoint: /.well-known/webfinger?resource={uri}
GET¶
Example #1¶
Request information about the domain, including the VCT (if configured):
GET /.well-known/webfinger?resource=https://orb.domain1.com
Host: orb.domain1.com
Accept: application/json
Response:
{
"subject": "https://orb.domain1.com",
"properties": {
"https://trustbloc.dev/ns/ledger-type": "vct-v1"
},
"links": [
{
"rel": "self",
"type": "application/jrd+json",
"href": "https://orb.domain1.com"
},
{
"rel": "vct",
"type": "application/jrd+json",
"href": "http://orb.vct:8077/maple2022"
}
]
}
Example #2¶
Request information about the resolution endpoint:
GET /.well-known/webfinger?resource=https://orb.domain1.com/sidetree/v1/identifiers
Host: orb.domain1.com
Accept: application/json
Response:
{
"subject": "https://orb.domain1.com/sidetree/v1/identifiers",
"properties": {
"https://trustbloc.dev/ns/min-resolvers": 1
},
"links": [
{
"rel": "self",
"href": "https://orb.domain1.com/sidetree/v1/identifiers"
}
]
}
Example #3¶
Request information about the operations endpoint:
GET /.well-known/webfinger?resource=https://orb.domain1.com/sidetree/v1/operations
Host: orb.domain1.com
Accept: application/json
Response:
{
"subject": "https://orb.domain1.com/sidetree/v1/operations",
"links": [
{
"rel": "self",
"href": "https://orb.domain1.com/sidetree/v1/operations"
}
]
}
Example #4¶
Request information about a specific DID:
GET /.well-known/webfinger?resource=did:orb:uEiDYK49ULtocB0ecZB5kzdo1oCAbJEJmAr65xpoWDq3Y1w:EiAWa2VAwDV3iC7q2nWygTy4b5AuwfTnf1g_ZYPZJFnJRA
Host: orb.domain1.com
Accept: application/json
Response:
{
"properties": {
"https://trustbloc.dev/ns/anchor-origin": "https://orb.domain1.com",
"https://trustbloc.dev/ns/min-resolvers": 1
},
"links": [
{
"rel": "self",
"type": "application/did+ld+json",
"href": "https://orb.domain1.com/sidetree/v1/identifiers/did:orb:uEiB9vhEm-4i8Vn1NSLcjYH50IsLCuGYDsKHpCEn6T0VHMg:EiAWa2VAwDV3iC7q2nWygTy4b5AuwfTnf1g_ZYPZJFnJRA"
},
{
"rel": "via",
"type": "application/ld+json",
"href": "hl:uEiB9vhEm-4i8Vn1NSLcjYH50IsLCuGYDsKHpCEn6T0VHMg:uoQ-BeEJpcGZzOi8vYmFma3JlaWQ1eHlpc242NGl4cmxoMnRraXc0cndhN3R1ZWxibWZvZGdhb3lrZDJpaWpoNWU2cmtoZ2k"
},
{
"rel": "service",
"type": "application/activity+json",
"href": "https://orb.domain1.com/services/orb"
}
]
}
Example #5¶
Request information about an Anchor Linkset which also includes alternate links to the file:
GET /.well-known/webfinger?resource=https://orb.domain1.com/cas/uEiCYEQhiFYGnf74G6jcOz7tRdJ6xaA_eakBhsHxu0KJJBg
Host: orb.domain1.com
Accept: application/json
Response:
{
"subject": "https://orb.domain1.com/cas/uEiCYEQhiFYGnf74G6jcOz7tRdJ6xaA_eakBhsHxu0KJJBg",
"links": [
{
"rel": "self",
"type": "application/ld+json",
"href": "https://orb.domain1.com/cas/uEiCYEQhiFYGnf74G6jcOz7tRdJ6xaA_eakBhsHxu0KJJBg"
},
{
"rel": "alternate",
"type": "application/ld+json",
"href": "https://orb.domain2.com/cas/uEiCYEQhiFYGnf74G6jcOz7tRdJ6xaA_eakBhsHxu0KJJBg"
}
]
}
nodeinfo¶
Endpoint: /.well-known/nodeinfo
GET¶
Returns the NodeInfo endpoints that may be queried to provide general information about an Orb server.
Example¶
Request:
GET /.well-known/nodeinfo HTTP/1.1
Host: orb.domain1.com
Accept: application/json
Response:
{
"links": [
{
"rel": "http://nodeinfo.diaspora.software/ns/schema/2.0",
"href": "https://orb.domain1.com/nodeinfo/2.0"
},
{
"rel": "http://nodeinfo.diaspora.software/ns/schema/2.1",
"href": "https://orb.domain1.com/nodeinfo/2.1"
}
]
}