Choose the target and encode each query value
01WebFinger discovers relatively static metadata about a Uniform Resource Identifier (URI). A URI identifies something; it need not be a location you can fetch. The resource parameter identifies the subject of the question. The HTTPS endpoint is the service receiving it. An application can use an acct URI for an account without assuming it is an email address or a login.
Return to the account target. Add &rel=author&rel=copyright after its one resource value. These filters request either relation type. The joining ampersands separate outer parameters, with no inserted spaces.
Source for this drawing: RFC 7033 · Read RFC section 4.1 ↗
New to this? Start hereA quick picture + helpful background
A message needs an address.
Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
Encode values before joining parameters, so a target’s own punctuation cannot become a second query parameter.
- Every query MUST contain resource exactly once. Percent-encode each parameter value, including any = and & inside it. Join name=value pairs with &, without inserting spaces. Parameter order does not affect interpretation.
- The initial endpoint MUST use HTTPS and the path /.well-known/webfinger. When the target has a host under RFC 3986, the query host SHOULD match unless out-of-band instructions say otherwise. Otherwise the application determines the host using additional information.
- An acct URI has no generic RFC 3986 host component. Our account example uses the application’s acct-domain rule, illustrated by RFC 7565 §4. It does not define a universal URI-to-host algorithm or imply that the account can receive email.
- The optional rel parameter MAY occur more than once to request several link relation types. Encode each value separately. A nested %26 in the target URI becomes %2526 in the outer query; decoding that query once recovers the original URI.
The offline helpers accept bounded, already valid ASCII absolute-URI examples and an explicitly chosen ASCII service host. They are not complete URI, acct, IDNA or application-profile implementations. All identifiers are fictional.
Read the RFC section ↗