interface InstanceMetadata

Served by every instance at /.well-known/openid-configuration (routes/well-known.ts), and read by another before it trusts it, starts a sign-in on it or sends it an event. The names are OpenID Connect's, and the gerbeur_ fields are this protocol's own.

Properties

issuer: string

The instance's public URL, an origin, which names it in every token.

Its /authorize page, where a user lets another instance sign them in.

POST /api/oauth/tokens, which trades a code for an identity token.

jwks_uri: string

GET /.well-known/jwks.json, its public keys.

The site's name, which a consent page and the peer list show.

Where its home instance sends a user back once they consent, as a client: its /federation/callback page, on its frontend.

POST /api/federation/events, where it receives a home's events.

optional
gerbeur_outgoing: boolean

Whether its users may sign in to other instances, so that a client refuses at once to send them to its /authorize page, which would. An instance that doesn't say lets them.