Skip to main content
The space membership functions let the logged-in user join and leave spaces, and let admins and moderators manage a space’s membership — roles, pending approvals, and bans.

joinSpace

Joins a space as the logged-in user, or requests to join if the space requires approval.
const result = await sublay.spaces.joinSpace({ spaceId: "spc_abc123" });
spaceId
string
required
The Sublay space ID.
ReturnsPromise<JoinSpaceResponse>

leaveSpace

Leaves a space as the logged-in user.
const result = await sublay.spaces.leaveSpace({ spaceId: "spc_abc123" });
spaceId
string
required
The Sublay space ID.
ReturnsPromise<LeaveSpaceResponse>

checkMyMembership

Checks the logged-in user’s membership status in a space.
const membership = await sublay.spaces.checkMyMembership({
  spaceId: "spc_abc123",
});
spaceId
string
required
The Sublay space ID.
ReturnsPromise<CheckMyMembershipResponse>

fetchSpaceMembers

Fetches a paginated list of a space’s members, filterable by role and status.
const members = await sublay.spaces.fetchSpaceMembers({
  spaceId: "spc_abc123",
  role: "member",
  status: "active",
});
spaceId
string
required
The Sublay space ID.
page
number
The page number to fetch.
limit
number
The number of members to return per page.
role
string
Filter by role: "admin", "moderator", or "member".
status
string
Filter by status: "pending", "active", "banned", or "rejected".
ReturnsPromise<SpaceMembersResponse>

fetchSpaceTeam

Fetches the team (admins and moderators) of a space.
const team = await sublay.spaces.fetchSpaceTeam({ spaceId: "spc_abc123" });
spaceId
string
required
The Sublay space ID.
ReturnsPromise<SpaceTeamResponse>

updateMemberRole

Updates a member’s role within a space.
const result = await sublay.spaces.updateMemberRole({
  spaceId: "spc_abc123",
  memberId: "mbr_xyz789",
  role: "moderator",
});
spaceId
string
required
The Sublay space ID.
memberId
string
required
The membership ID of the member to update.
role
string
required
The new role: "admin", "moderator", or "member".
ReturnsPromise<UpdateMemberRoleResponse>

approveMembership

Approves a pending membership request.
const result = await sublay.spaces.approveMembership({
  spaceId: "spc_abc123",
  memberId: "mbr_xyz789",
});
spaceId
string
required
The Sublay space ID.
memberId
string
required
The membership ID of the pending member.
ReturnsPromise<ApproveMemberResponse>

declineMembership

Declines a pending membership request.
const result = await sublay.spaces.declineMembership({
  spaceId: "spc_abc123",
  memberId: "mbr_xyz789",
});
spaceId
string
required
The Sublay space ID.
memberId
string
required
The membership ID of the pending member.
ReturnsPromise<DeclineMemberResponse>

banMember

Bans a member from a space.
const result = await sublay.spaces.banMember({
  spaceId: "spc_abc123",
  memberId: "mbr_xyz789",
});
spaceId
string
required
The Sublay space ID.
memberId
string
required
The membership ID of the member to ban.
ReturnsPromise<{ message: string; membership: { id: string; status: "banned" } }>

unbanMember

Unbans a previously banned member.
const result = await sublay.spaces.unbanMember({
  spaceId: "spc_abc123",
  memberId: "mbr_xyz789",
});
spaceId
string
required
The Sublay space ID.
memberId
string
required
The membership ID of the member to unban.
ReturnsPromise<{ message: string; membership: { id: string; status: "active" } }>