Technical Details

This section provides technical details to help you integrate the Social Groups feature into your application, including examples of GraphQL queries and mutations.

Group Management

Manage social groups effectively within your application using intuitive group management features.

Invitation-Based Groups

  • Registration Codes: Groups are invitation-based, utilising unique registration codes that can be shared.

  • Sharing Invitations: Users share the registration code with family and friends to invite them to join a group.

  • Secure Access: Only those with the registration code can request to join, keeping groups secure.

Membership Requests and Roles

  • Membership Approval: Existing group members can accept or decline membership requests from new users.

  • User Roles: Each member within a group is assigned a specific role:

    • ADMIN: Has full control over group settings, including managing members and approving requests.

    • MEMBER: Standard participant with access to all group features.

    • PENDING: Users who have requested to join the group and are awaiting approval.

  • Role Management: ADMINs can change the roles of members as needed to maintain group integrity.

Managing Groups

  • Approving Requests: Members receive notifications of pending requests and can approve or deny them.

  • Maintaining Privacy: The role system ensures that only approved members have access to the group's information and features.

Technical Implementation

Group Features

Groups have specific features selected during creation, which determine their behavior in subsequent mutations and queries. These features, such as live location tracking, leaderboard rankings, or Points of Interest (POIs), influence how the group’s data is managed and retrieved.

Available features:

  • leaderboard: set flag with_leaderboard to true

  • event feed: set flag with_feed to true

  • live locations: set flag with_locations to true

  • points of interest: set flag with_poi to true

Create Group Mutation

Description: Creates a new social group with specified attributes.

Remove Group Membership Mutation

Description: Removes a user from a specified group.

Update Group Mutation

Description: Updates details of an existing group.

Delete Group Mutation

Description: Deletes a group using its ID.

Approve Group Join Mutation

Description: Approves a pending request for a user to join a group.

Decline Group Join Mutation

Description: Declines a pending request for a user to join a group.

Make Group Admin Mutation

Description: Assigns a user as an admin of a group.

Unmake Group Admin Mutation

Description: Removes a user's admin privileges in a group.

Join Group Mutation

Description: Allows a user to join a group using a registration code.

Leave Group Mutation

Description: Allows a user to leave a group.

Set In-Group Status Mutation

Description: Sets a specific status for a user within a group.

Create Group POI Mutation

Description: Creates a new Point of Interest (POI) within a group.

Delete Group POI Mutation

Description: Deletes a Point of Interest (POI) from a group.

Subscribe Group POI Mutation

Description: Subscribes to updates related to a POI in a group.

Unsubscribe Group POI Mutation

Description: Unsubscribes from updates related to a POI in a group.

Group Members Query

Description: Retrieves the members of a specific group, including their roles, status, and location details.

Group Leaderboard Query

Description: Retrieves leaderboard details for a specific group, including user ranks and scores.

Group Feed Query

Description: Retrieves the feed messages of a specific group.

Group POIs Query

Description: Retrieves the points of interest (POIs) for a specific group.


Additional helpful links:

Last updated