Skip to content

Queries

All queries are sent as POST /graphql with the operation in the request body. Include the Clerk JWT in the SessionToken header for authenticated queries.

← Back to GraphQL API Reference


accountabilityPartner

Returns the active accountability partner for a user, or null if none.

Returns: AccountabilityPartner ()

Arguments:

NameTypeRequiredDescription
userIdIDNopublic_id of the user whose accountability partner to retrieve. Defaults to the current user.

activeSeasonalEvent

The current active seasonal event, if any. Nil when seasonal_events_enabled is off.

Returns: SeasonalEvent ()


activeSeasonalEvents

Lists currently active seasonal events. Empty when seasonal_events_enabled is off.

Returns: [SeasonalEvent!] ()


adminActions

Admin only. Audit log, newest first, cursor-paginated.

Returns: AdminActionConnection! ()

Arguments:

NameTypeRequiredDescription
actionTypeStringNo
actorIdIDNo
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.
scopedToStringNoBucket filter — e.g. 'demo_data' narrows to Phase 30 demo-data actions.
targetTypeStringNo

adminAiUsage

Returns aggregated AI spend and usage for the admin dashboard. Admin only.

Returns: AdminAiUsage ()

Arguments:

NameTypeRequiredDescription
daysBackIntNoNumber of days to look back for AI spend aggregation. Defaults to 30.

adminSearchUsers

Admin only. pg_trgm-backed user search; sub-200ms on 100K users.

Returns: UserConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.
queryString!YesTrigram search string; 4+ chars recommended.

adminStats

Returns platform-wide statistics for the admin dashboard. Admin only.

Returns: AdminStats ()

Arguments:

NameTypeRequiredDescription
daysBackIntNoNumber of days to look back for time-series metrics. Defaults to 90.

adminTeamsMonitoring

Admin-only. Read-only Teams monitoring list (M11, PRIVACY-3): seat count, subscription status, and last-active per team.

Returns: [AdminTeamMonitoring!] ()


aiEmployee

Fetch a single AI employee by public_id. Admin only.

Returns: AiEmployee ()

Arguments:

NameTypeRequiredDescription
idString!Yes

aiEmployees

Admin only. AI employee list, cursor-paginated.

Returns: AiEmployeeConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
autonomyStringNo
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.
roleKeyStringNo
statusStringNo

aiRequest

Fetch a single async AiRequest by public_id. Owning user only; the reconnect-recovery counterpart to aiRequestUpdate (v4.60 Phase 1).

Returns: AiRequest ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the AiRequest to retrieve.

aiRun

Fetch a single AI run by public_id. Admin only.

Returns: AiRun ()

Arguments:

NameTypeRequiredDescription
idString!Yes

allyActivityFeed

Returns paginated activity events from the current user's accepted allies. Each item carries a kind discriminator (GOAL / JOIN / POST / ACHIEVEMENT / FOLLOW) and a per-kind details payload.

Returns: [AllyActivity!] ()

Arguments:

NameTypeRequiredDescription
limitIntNoMaximum number of events to return. Defaults to 20, capped at 50.
offsetIntNoNumber of items to skip for pagination. Defaults to 0.
userIdID!Yespublic_id of the user whose ally feed to retrieve.

allyInvitePreview

Public preview of an invite token — returns inviter name, avatar, and validity. No auth required. Rate-limited (60 req/min per IP for anonymous callers; per user when authenticated.).

Returns: AllyInvitePreview! ()

Arguments:

NameTypeRequiredDescription
tokenString!YesInvite token from the deep link.

askDocsQuestion

Ask a question about the Objectuve engineering docs corpus. Requires a Clerk session on an @objectuve.com email, verified server-side. Rate-limited 20 req/min per user. Returns DISABLED (not an error) when the assistant is off.

Returns: DocsAssistantAnswer! ()

Arguments:

NameTypeRequiredDescription
questionString!YesThe question to ask the docs assistant.

askGuideQuestion

Ask a question about the Objectuve guide. No auth required. Rate-limited (20 req/min per IP for anonymous callers; per user when authenticated). Returns DISABLED (not an error) when the assistant is off.

Returns: GuideAssistantAnswer! ()

Arguments:

NameTypeRequiredDescription
questionString!YesThe question to ask the guide assistant.

authzCheck

Checks whether the current user has a specific permission (e.g. admin).

Returns: Result ()

Arguments:

NameTypeRequiredDescription
concernString!YesPermission name to check (e.g. "admin").
idID!Yespublic_id of the user to check authorization for.

badgeHolderCount

Public. Distinct number of users who have unlocked a given badge. Returns 0 for unknown keys (validated against the BadgeCatalog allowlist). Cached for 1 hour.

Returns: Int!

Arguments:

NameTypeRequiredDescription
badgeKeyString!YesBadge key from Achievements::BadgeCatalog::BADGE_KEYS.

badgeStats

Returns the unlock percentage for each badge across all users. Cached for 1 hour.

Returns: [BadgeStat!] ()


blockedUsers

Returns the authenticated user's blocked set (either direction — a block hides content symmetrically). Auth required.

Returns: [UserSearchResult!]! ()


coachConversation

Returns the persisted Coach conversation thread for the authenticated user. Scoped per goal if goal_id is provided; returns the global thread otherwise.

Returns: CoachConversation ()

Arguments:

NameTypeRequiredDescription
goalIdStringNopublic_id of the goal to scope the thread to. Omit for the global thread.

coachModelSetting

Returns the runtime Coach Gemini model setting: current value, allowlisted options with current rates, and the last 5 changes. Admin only.

Returns: CoachModelSetting! ()


communities

Lists communities, optionally filtered by user membership or goal category.

Returns: [Community!] ()

Arguments:

NameTypeRequiredDescription
goalCategoryIds[ID!]NoArray of goal category IDs to filter communities by.
userIdIDNopublic_id of a user to return only communities they are a member of.

community

Fetches a community by its public_id. Authorization: For a team-scoped room (teamId present), requires an actual CommunityMember record — seated team membership alone is not enough. Admins bypass. teamId-nil (public/free) communities are unaffected. See Communities § Room Access Boundary.

Returns: Community ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the community to retrieve.

communityBadges

Returns the threshold and status marks for a community. Authorization: For a team-scoped room (teamId present), requires an actual CommunityMember record — seated team membership alone is not enough. Admins bypass. teamId-nil (public/free) communities are unaffected. See Communities § Room Access Boundary.

Returns: CommunityBadges ()

Arguments:

NameTypeRequiredDescription
communityIdID!Yespublic_id of the community.

communityChallenge

Fetches a community challenge by public_id.

Returns: CommunityChallenge ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the challenge to retrieve.

communityChallengeLeaderboard

Paginated leaderboard for a challenge, ranked by progress_count DESC.

Returns: [ChallengeParticipant!] ()

Arguments:

NameTypeRequiredDescription
challengeIdID!Yespublic_id of the challenge.
completedOnlyBooleanNoWhen true, returns only participants who have completed the challenge.
limitIntNoNumber of participants to return. Defaults to 50.
offsetIntNoNumber of participants to skip. Defaults to 0.

communityChallenges

Lists challenges in a community, optionally filtered by status.

Returns: [CommunityChallenge!] ()

Arguments:

NameTypeRequiredDescription
communityIdID!Yespublic_id of the community.
statusStringNoFilter by status: "active", "upcoming", or "completed". Omit for all.

communityFeed

Returns the paginated post feed for a community, ordered by most recent. Authorization: For a team-scoped room (teamId present), requires an actual CommunityMember record — seated team membership alone is not enough. Admins bypass. teamId-nil (public/free) communities are unaffected. See Communities § Room Access Boundary.

Returns: [CommunityPost!] ()

Arguments:

NameTypeRequiredDescription
communityIdID!Yespublic_id of the community whose feed to retrieve.
limitIntNoNumber of posts to return per page. Defaults to 20.
offsetIntNoNumber of posts to skip for pagination. Defaults to 0.

communityGoals

Returns paginated goals shared into a community. Authorization: For a team-scoped room (teamId present), requires an actual CommunityMember record — seated team membership alone is not enough. Admins bypass. teamId-nil (public/free) communities are unaffected. See Communities § Room Access Boundary.

Returns: [Goal!] ()

Arguments:

NameTypeRequiredDescription
communityIdID!Yespublic_id of the community.
limitIntNoNumber of goals to return. Defaults to 20.
offsetIntNoNumber of goals to skip. Defaults to 0.

communityInsights

Returns community engagement insights and recommendations for a user.

Returns: CommunityInsights ()

Arguments:

NameTypeRequiredDescription
userIdID!Yespublic_id of the user to generate insights for.

communityMemberCheck

Checks whether a given user is a member of a community.

Returns: Result ()

Arguments:

NameTypeRequiredDescription
cidID!Yespublic_id of the community to check membership for.
idIDNopublic_id of the user to check. Defaults to the authenticated user.

communityMembers

Returns paginated members of a community. Authorization: For a team-scoped room (teamId present), requires an actual CommunityMember record — seated team membership alone is not enough. Admins bypass. teamId-nil (public/free) communities are unaffected. See Communities § Room Access Boundary.

Returns: [CommunityMember!] ()

Arguments:

NameTypeRequiredDescription
communityIdID!Yespublic_id of the community.
limitIntNoNumber of members to return. Defaults to 50.
offsetIntNoNumber of members to skip. Defaults to 0.

communitySuggestions

Returns communities suggested for a user based on their goals and interests.

Returns: [CommunitySuggestion!] ()

Arguments:

NameTypeRequiredDescription
userIdIDNopublic_id of the user to generate suggestions for. Defaults to the current user.

connectedApps

Returns the current user's Connected Apps state: available providers plus their own connections and mappings. Requires authentication.

Returns: ConnectedApps! ()


contentReports

Admin only. Pending user-submitted content reports, newest first.

Returns: [ContentReport!]! ()


criticalPathReminderPreferences

Returns the daily reminder preferences for the authenticated user.

Returns: CriticalPathReminderPreferences! ()


criticalPathStimXpStatus

Returns the authenticated user's Stim XP totals, streak, theme, and theme catalog.

Returns: StimXpStatus! ()


criticalPathToday

Returns today's Critical Path puzzle status for the authenticated user.

Returns: CriticalPathPlayStatus! ()


curatableCommunities

Returns discoverable communities with their editorial fields, ordered by editorial_slot, editorial_position, then name. Admin only.

Returns: [Community!] ()


dataImportStatus

Reads commit progress/result for a DataImport owned by the authenticated user.

Returns: DataImport ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the DataImport to read.

demoDataRunStatus

Polls Rails.cache for the progress of an in-flight demo-data job.

Returns: DemoDataRunStatus! ()

Arguments:

NameTypeRequiredDescription
jobIdID!Yes

demoScopePreview

Live counts of demo-tagged records across all 12 demo-bearing tables.

Returns: DemoScopePreview! ()


editorialCommunities

Returns up to 8 communities admin-assigned to the given editorial slot, ordered by editorial_position then editorial_updated_at. Unknown slots return [].

Returns: [Community!] ()

Arguments:

NameTypeRequiredDescription
slotString!YesEditorial slot to fetch (e.g. "active_now", "just_started", "most_members").

enneagramAssessment

Returns the latest non-deleted Enneagram assessment for a user. Auth: own user or admin.

Returns: EnneagramAssessment ()

Arguments:

NameTypeRequiredDescription
userIdID!Yespublic_id of the user whose latest assessment to retrieve.

enneagramAssessmentHistory

Returns all Enneagram assessments for a user, newest first. Auth: own user or admin.

Returns: [EnneagramAssessment!]! ()

Arguments:

NameTypeRequiredDescription
userIdID!Yespublic_id of the user whose assessment history to retrieve.

feedbackPost

Returns a single feedback post by public ID.

Returns: FeedbackPost ()

Arguments:

NameTypeRequiredDescription
idID!YesPublic ID of the feedback post.

feedbackPosts

Returns feedback posts, filterable by category, status, and search.

Returns: [FeedbackPost!] ()

Arguments:

NameTypeRequiredDescription
categoryStringNoFilter by category (feature, improvement, bug, other).
filterStringNoFilter view: my_posts (current user posts), my_votes (posts user voted on).
searchStringNoSearch titles and descriptions (case-insensitive).
sortStringNoSort order: votes (default), newest.
statusStringNoFilter by status (open, planned, in_progress, completed, declined).
tags[String!]NoFilter by tag slugs (any-of). Posts carrying any of the given tags are returned.

feedbackStats

Returns feedback board statistics for admin dashboard. Admin only.

Returns: FeedbackStats ()


feedbackTags

Returns feedback tags, non-archived by default. Admin only.

Returns: [FeedbackTag!] ()

Arguments:

NameTypeRequiredDescription
includeArchivedBooleanNoInclude archived tags (for the admin UI).

feedbackWeeklySummary

Coach-analyzed themed summary of the past week of feedback. Admin only. Null when feedback_ai_summary_enabled is off or there is nothing to summarize.

Returns: FeedbackWeeklySummary ()


findUserForInvite

Phase 75. Looks up a user by username or email for ally invite. Exactly one arg required. Auth-required. Rate-limited (10/min). Returns nil for not-found or soft-deleted users (no enumeration).

Returns: User ()

Arguments:

NameTypeRequiredDescription
emailStringNoEmail address to search for. Mutually exclusive with username.
usernameStringNoUsername to search for. Mutually exclusive with email.

formingCommunities

Returns up to 12 newly forming communities (0-4 members), newest first, excluding communities the caller admins. Requires authentication.

Returns: [Community!] ()


funnelStats

Onboarding funnel aggregates and TTFG percentiles. Admin only.

Returns: OnboardingFunnel ()

Arguments:

NameTypeRequiredDescription
periodSecondsIntNoWindow in seconds (default 30 days = 2,592,000).
variantIdStringNoFilter to a specific onboarding variant cohort (e.g. control, variant_a).

gdprRequest

Fetch a GDPR request by public_id. super_admin or support only.

Returns: GdprRequest ()

Arguments:

NameTypeRequiredDescription
publicIdString!Yespublic_id of the GDPR request.

gdprRequests

GDPR request queue. super_admin or support only.

Returns: GdprRequestConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.
requestTypeStringNoFilter by request type.
statusStringNoFilter by status.

goal

Fetches a private goal owned by the authenticated user.

Returns: Goal ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the goal to retrieve.

goalCategories

Returns all available goal categories (fitness, learning, personal, etc.).

Returns: [GoalCategory!] ()


goalEvent

Fetches a single goal progress event by public_id.

Returns: GoalEvent ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the goal event to retrieve.

goalKinds

Returns all available goal types/kinds (habit, milestone, quantity, etc.).

Returns: [GoalType!] ()


goalProgressData

Returns progress visualization data for a goal.

Returns: GoalProgressData ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the goal to get progress data for.
lookbackDaysIntNoNumber of days to look back. Defaults to 90.
periodStringNoGrouping period: day, week, or month. Defaults to week.

goals

Lists top-level goals (no parent) for the authenticated user or a specified user (admin only).

Returns: [Goal!] ()

Arguments:

NameTypeRequiredDescription
userIdIDNopublic_id of the user whose goals to retrieve. Omit to use the current user.

goalSummary

Aggregated KPI counts for the current user's goals.

Returns: GoalSummary! ()


goalTemplates

Returns all non-deleted goal templates ordered by (theme, display_order). Auth required.

Returns: [GoalTemplate!]! ()


isFollowingGoal

Checks whether the authenticated user is currently following a goal.

Returns: Result ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the goal to check.

me

Returns the currently authenticated user. Requires authentication.

Returns: User ()


moderationQueue

Admin only. Pending moderation flags, cursor-paginated.

Returns: ContentFlagConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
ageBucketStringNoSingle-select age bucket: under_1h|under_24h|under_7d|older_than_7d.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
flaggableType[String!]NoFilter by polymorphic flaggable class name (e.g. CommunityPost).
flaggedUserIdStringNoPublic_id of the user whose flagged content should be returned.
lastIntNoReturns the last n elements from the list.
severity[String!]NoFilter by severity: low|medium|high|critical. Multi-select ORs within; AND with other filters.
source[String!]NoFilter by source: profanity_filter|ai_screen|user_report.

myAllyInvites

Returns the authenticated user's active accountability-partner invites. Auth required.

Returns: [AllyInvite!]! ()


myLatestDataExport

Returns the most recent self-service data export request for the authenticated user.

Returns: GdprRequest ()


myTeam

The authenticated user's Team, if any. Null when the user has no team membership.

Returns: Team ()


myTeams

Every team the authenticated user belongs to, ordered joined_at ASC. Backs the team-picker switcher (OBJ-1821). Empty array, never null, for a user with no memberships.

Returns: [TeamSwitcherEntry!]! ()


notificationHistory

Returns paginated notification history for the current user, newest first.

Returns: NotificationHistory ()

Arguments:

NameTypeRequiredDescription
limitIntNoNumber of notifications per page. Defaults to 20.
offsetIntNoNumber of items to skip for pagination. Defaults to 0.
teamIdIDNoWhen present, scopes results to notifications for this team. A non-member gets an empty result.

outgoingAllyRequests

Returns pending ally requests the authenticated user has sent. Auth required.

Returns: [UserSearchResult!]! ()


pendingAllyRequests

Returns incoming pending ally requests for the authenticated user. Auth required.

Returns: [UserAlly!]! ()


pendingArtifacts

Admin only. Artifacts awaiting review, cursor-paginated.

Returns: AiArtifactConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
employeeIdIDNo
firstIntNoReturns the first n elements from the list.
kindStringNo
lastIntNoReturns the last n elements from the list.

pendingCounts

Per-queue pending item counts for the admin sidebar, filtered by role. Admin only.

Returns: PendingCounts! ()


personalAnalyticsActivityHeatmap

Trailing 90-day activity heatmap for the current user. Auth required; gated behind personal_analytics_enabled.

Returns: AnalyticsActivityHeatmap ()


personalAnalyticsCompletionByCategory

Completion-by-category series for the current user, month-to-date. Auth required; gated behind personal_analytics_enabled.

Returns: AnalyticsCompletionByCategory ()


personalAnalyticsMonthInReview

Month-in-review hero card for the current user, month-to-date. Auth required; gated behind personal_analytics_enabled.

Returns: AnalyticsMonthInReview ()


personalAnalyticsStreakHistory

Trailing 26-week streak history for the current user. Auth required; gated behind personal_analytics_enabled.

Returns: AnalyticsStreakHistory ()


personalAnalyticsXpOverTime

Trailing 26-week cumulative XP for the current user. Auth required; gated behind personal_analytics_enabled.

Returns: AnalyticsXpOverTime ()


pickableFeedbackTags

Returns non-archived feedback tags, ordered by position then name. Any authenticated user — for the feedback create-post picker and board filter.

Returns: [FeedbackTag!]! ()


plans

Returns all active subscription plans (Supporter tiers).

Returns: [Plan!]! ()


publicFeedbackPost

Returns a single public feedback post by public ID. Null when not found, soft-deleted, or the read path is disabled.

Returns: PublicFeedbackPost ()

Arguments:

NameTypeRequiredDescription
idID!YesPublic ID of the feedback post.

publicFeedbackPosts

Public, unauthenticated feedback board listing. Null when the read path is disabled. Rate-limited (30 req/min per IP for anonymous callers; per user when authenticated).

Returns: [PublicFeedbackPost!] ()

Arguments:

NameTypeRequiredDescription
statusStringNoFilter by status (open, planned, in_progress, completed, declined).
tags[String!]NoFilter by tag slugs (any-of). Posts carrying any of the given tags are returned.

publicGoal

Fetches a publicly visible goal by public_id. Returns an error if the goal is private.

Returns: Goal ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the goal to retrieve.

recentArtifacts

Admin only. Recently processed (approved/rejected/delivered) artifacts from the last 7 days, cursor-paginated.

Returns: AiArtifactConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
employeeIdIDNo
firstIntNoReturns the first n elements from the list.
kindStringNo
lastIntNoReturns the last n elements from the list.

recommendedCommunities

Returns communities recommended for a user based on their goal interests.

Returns: [SuggestedCommunity!] ()

Arguments:

NameTypeRequiredDescription
limitIntNoMaximum number of recommendations to return. Defaults to 5.
userIdID!Yespublic_id of the user to generate recommendations for.

searchUsers

Auth-gated user search by username or email; pg_trgm-backed; rate-limited 10/min/user. Returns per-result allyStatus enrichment. Excludes the searching user and users who have blocked them.

Returns: UserSearchResultConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.
queryString!YesSearch query, minimum 2 characters.

seasonalEvent

Fetches a seasonal event by its public_id, regardless of status or is_active. Nil (never a GraphQL error) for an unknown id, a soft-deleted event, or when seasonal_events_enabled is off.

Returns: SeasonalEvent ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the seasonal event to retrieve.

seasonalEvents

Returns all seasonal events, newest first. Admin only.

Returns: [SeasonalEvent!] ()


shareableMoment

Server-authored share-card facts for a celebration the caller owns and has earned. Auth required. Returns null for a not-found, unowned, or not-yet-earned subject.

Returns: ShareableMoment ()

Arguments:

NameTypeRequiredDescription
kindString!YesOne of: badge, goal_completion, milestone, streak.
subjectPublicIdID!Yespublic_id of the subject (badge key for kind: badge; the caller's own public_id for kind: streak).

suggestedAllies

Returns suggested ally candidates ranked by shared community overlap. Auth required.

Returns: [AllySuggestion!]! ()

Arguments:

NameTypeRequiredDescription
limitIntNoMaximum number of suggestions to return. Defaults to 10, capped at 25.

systemHealth

Admin-only self-health probes for infra + identity.

Returns: SystemHealth! ()


teamHome

Aggregate read backing TeamHomeView (N13). Null when the team does not exist, or the caller is not a member (PRIVACY-2).

Returns: TeamHome ()

Arguments:

NameTypeRequiredDescription
teamIdString!Yes

teamInvitePreview

Public preview of a team invite by code — team name, inviter first name, and member count. No auth required. Never distinguishes expired/revoked/exhausted from each other ("unavailable"), only from a code that never existed ("not_found"). Rate-limited (60 req/min per IP for anonymous callers; per user when authenticated).

Returns: TeamInvitePreview! ()

Arguments:

NameTypeRequiredDescription
codeString!YesInvite code from the /join-team/{code} URL.

teamLeaderboard

Aggregate read backing TeamLeaderboardView (N19). Null when the teams_leaderboards kill switch is off, the team/community does not exist, or the caller is not a member (PRIVACY-2).

Returns: TeamLeaderboard ()

Arguments:

NameTypeRequiredDescription
communityIdStringNoScopes to a sub-community leaderboard. Omit for the team-wide leaderboard.
periodString!Yesweekly, monthly, or all_time.
teamIdString!Yes

teamLeaderboardOptOutStats

Admin-only. Raw per-team leaderboard opt-out counts (LEADERBOARD-5 anti-metric monitoring).

Returns: [TeamLeaderboardOptOutStat!] ()


teamMemberActivity

Read-only team-scoped activity summary for one member (N7b "View activity"). Null when the team or member does not exist, the member is not seated on the team, or the caller lacks manage_team (owner/admin only).

Returns: TeamMemberActivity ()

Arguments:

NameTypeRequiredDescription
memberIdString!YesThe target member's User public_id.
teamIdString!Yes

teamNotificationPreferences

Returns the team notification preferences for the authenticated user.

Returns: TeamNotificationPreferences! ()


teamPulseEligibility

Whether the viewer should be prompted for this quarter's pulse survey. Null when the team does not exist, or the caller is not a member (PRIVACY-2).

Returns: Boolean

Arguments:

NameTypeRequiredDescription
teamIdString!Yes

teamSettings

Aggregate read backing Team Settings (N7). Null when the team does not exist, or the caller is not a member (PRIVACY-2).

Returns: TeamSettings ()

Arguments:

NameTypeRequiredDescription
teamIdString!Yes

tourFunnelStats

Tour-completion funnel aggregates per tour id. Admin only.

Returns: [TourFunnel!] ()

Arguments:

NameTypeRequiredDescription
periodSecondsIntNoWindow in seconds, scoped by user signup date (default 30 days = 2,592,000).

trendingCommunities

Returns communities with the highest recent growth or activity.

Returns: [TrendingCommunity!] ()

Arguments:

NameTypeRequiredDescription
limitIntNoMaximum number of trending communities to return. Defaults to 5.

unifiedFeed

Returns a paginated unified activity feed combining ally activity, community posts, notifications, and own progress.

Returns: UnifiedFeed ()

Arguments:

NameTypeRequiredDescription
limitIntNoNumber of feed items per page. Defaults to 20.
offsetIntNoNumber of items to skip for pagination. Defaults to 0.

user

Fetches a user by public_id. Requires authentication; admins can fetch any user.

Returns: User ()

Arguments:

NameTypeRequiredDescription
idID!Yespublic_id of the user to retrieve.

userAllies

Returns a user's accepted ally (friend) connections.

Returns: [UserAlly!] ()

Arguments:

NameTypeRequiredDescription
userIdID!Yespublic_id of the user whose allies to retrieve.

userByUsername

Looks up a user by username and returns their public profile (public-safe fields only). Auth-required. Rate-limited (30/min). Returns nil for not-found, soft-deleted, or blank usernames.

Returns: PublicProfile ()

Arguments:

NameTypeRequiredDescription
usernameString!YesUsername (handle) to look up. Case-insensitive.

users

Admin only. Cursor-paginated user list, created_at DESC.

Returns: UserConnection! ()

Arguments:

NameTypeRequiredDescription
afterStringNoReturns the elements in the list that come after the specified cursor.
beforeStringNoReturns the elements in the list that come before the specified cursor.
firstIntNoReturns the first n elements from the list.
lastIntNoReturns the last n elements from the list.

weeklyDigestPreferences

Returns the weekly digest email preferences for the authenticated user.

Returns: WeeklyDigestPreferences! ()


wordCloud

Generates word frequency data from a model column for admin analytics.

Returns: [WordCloud!] ()

Arguments:

NameTypeRequiredDescription
columnString!YesColumn name to analyze for word frequency (e.g. "name").
modelString!YesActiveRecord model name to query (e.g. "Goal").

Last updated: 2026-09-19 (auto-generated from schema.graphql)

Loading…