HELIX Docs
Platform API

Social & Presence

Presence, parties and matchmaking that ship today, and the planned friend graph (Helix.social).

Planned API, not in the shipped Web SDK

The friend graph and chat (Helix.social, Helix.chat) are part of the designed Platform API contract but are not in @hypersoniclabs/helix-sdk today, so the signatures in the Planned section are a specification, not something you can call. Presence, parties and matchmaking do ship; they come first below.

What ships today

Three social surfaces are in the Web SDK now:

Prop

Type

Friends and blocking exist as account routes on the backend (/api/v1/users/me/friends, /api/v1/users/:id/friend-request, /api/v1/users/:id/block, /api/v1/users/me/friends/presence), used by the HELIX site with the player's own account token. Worlds can't call them: the friend graph is not exposed to world code until Helix.social ships.

Planned: Helix.social

Helix.social exposes the player's social graph: who their friends are, who's online, and how to pull them into your world. Because identity is platform-wide, friendships and presence work across every world automatically.

Prop

Type

Invite a friend into your world (planned)

const friends = await Helix.social.getFriends();
const online = [];
for (const f of friends) {
  const p = await Helix.social.getPresence(f.id);
  if (p.online) online.push(f);
}

// pull an online friend into this instance
if (online[0]) await Helix.social.inviteToInstance(online[0].id);

Friend presence (planned)

Presence tells you whether a friend is online and, when permitted, what world they're in — the basis for "join friend" buttons and for surfacing active sessions. Respect the player's privacy settings; the platform enforces visibility.

Related social surfaces

Real-time chat (Helix.chat) is planned too. Spatial and proximity voice ships as Helix.voice (see the guides).

Reference

On this page