Skip to main content

Members

The people on the board. Members come in two flavors that share a common interface, plus a status enum that tracks where each membership stands.

Member (interface)

Common fields exposed on every member, regardless of subtype:

  • id — UUID.
  • identification — the identifier the board uses for this person (typically a member number or email-equivalent).
  • organizationId — the owning board (always your organization).
  • memberSince — when the membership started.
  • leaveDate — when it ended, or null if still active.
  • typeMemberType enum: Claimed or Unclaimed.
  • statusMembershipStatus enum (see below).

Two concrete types implement this interface:

ClaimedMember

A member who is linked to a Unioo platform user account. Adds:

  • userId — the platform User ID of the linked person.

UnclaimedMember

A member who has been added by the board but hasn't yet linked a platform account (e.g. they were imported from an external system or invited and haven't accepted). Adds:

  • invitationDate — when the unclaimed membership was created or last invited.

When projecting a list of members, use inline fragments to pull the type-specific field you care about:

members(first: 50) {
nodes {
id
identification
type
status
... on ClaimedMember { userId }
... on UnclaimedMember { invitationDate }
}
}

MembershipStatus

MembershipStatus describes where a membership sits in its lifecycle:

  • Internal — internal-only membership not yet visible to the user.
  • PendingApproval — awaiting board approval.
  • PendingUserAcceptance — board has approved; awaiting the user to accept.
  • Active — current member.
  • Inactive — temporarily inactive.
  • Former — left the organization.
  • RejectedByUser — invited user declined.

Filter on status to narrow a list to current members (Active) or to triage pending memberships.

MemberType

MemberType is just Claimed or Unclaimed. It mirrors the concrete subtype — Member.type == Claimed is equivalent to "this is a ClaimedMember". You'd typically filter or fragment on it depending on which path is more convenient.

Where to query

  • Read: Querying members.
  • There are no member mutations on the External API. Member lifecycle is managed in the Unioo platform.