Copied from ConnectToken.AuthProvider — how the user signed in: google, microsoft, apple,
facebook, signicat, email, passkey or sso. Empty for a guest, and for a sign-in that
predates the platform recording it, which is not the same as any one method. Signed by the
backend, so an app may rely on it, for example to require that its enterprise users came in
through their organisation's IdP.
Copied from ConnectToken.EdgeRttMsec — the round-trip time, in milliseconds, between the client
and the load balancer that answered its /init, measured once when it connected. A first guess at
the connection's quality, for example to start on lighter media for a distant or slow client
before anything else is known. 0 when not measured. It is not the latency to this server.
Copied from ConnectToken.GeoCity — the city name the load balancer placed the client in
(Helsinki). Empty when it could not, which is common. Same trust as GeoCountry.
Copied from ConnectToken.GeoCountry — the country the load balancer placed the client in at /init,
as an uppercase CLDR region code (FI, US; ISO 3166-1 alpha-2 for nearly every country). Empty
when the client was not placed, which every local run is. It is the network's location, so a VPN,
a corporate egress or a mobile carrier's gateway reports where that is rather than the person.
Only the app sees the four placement fields: the copy of a Context that reaches any other client
in the session has them empty. Resolved by the backend from the edge, never from the client, but
still a hint for what to show: a request that bypasses the load balancer carries its own value,
so never gate access, pricing or compliance on it.
Copied from ConnectToken.GeoSubdivision — the state, province or region within GeoCountry, as a
CLDR subdivision id (USCA for California). Empty whenever GeoCountry is, and where the edge
could not narrow it down. Same trust as GeoCountry.
Copied from ConnectToken.InitialUrl — the absolute URL the browser loaded, so an app can see the
host it was reached on (a custom customer domain) and not just the path. A strict superset of
InitialPath: same SDK-internal ikon-* query params stripped, everything else kept, so
InitialUrl.PathAndQuery reproduces InitialPath. Empty for every non-browser client, so read it as
an addition to InitialPath rather than a replacement. Client-controlled like InitialPath — treat
it as a hint and re-authorize server-side; it must never gate anything security-relevant on its own.
Copied from ConnectToken.IsAnonymous — true when the user is anonymous (guest login or no
login): a device-scoped identity rather than a real account. The authoritative signal for
guest detection; AuthSessionId is a login-session identifier, not an authentication flag.
Copied from ConnectToken.IsGlobal — true when this anonymous user is the space's GLOBAL
communal identity (the "global" login method), where every global visitor shares one UserId.
Always false for device-scoped guests and signed-in users; implies IsAnonymous. Lets an app
offer "continue as guest" or per-visitor features only where they make sense.
Opaque, monotonically-increasing capability level advertised by the connecting SDK (companion to SdkType).
0 = legacy/unknown. Copied from ConnectToken.SdkCapability when the server builds the client Context.
Copied from ConnectToken.SnapshotVariant — the boot-snapshot variant id the capture client asks
the app to render; empty for route captures and all live clients. Client-controlled like
IsSnapshot — must never gate anything security-relevant.
Copied from ConnectToken.SsoConnectionId — the space's SSO connection the user signed in through;
empty unless AuthProvider is sso. What an app compares against the connection it assigned to one
of its tenants.
Copied from ConnectToken.TestLinkId / TestLinkName — set when this session came in through a
test link the app's makers minted. A guest that is also a tester: the feedback button is offered
whatever the audience setting, and its reports carry the link's name. Empty otherwise.