Skip to content

Profile API ​

Public profile retrieval plus profile edits, memberships, comments, spaces, and notification preferences.

Authentication ​

Profile routes are portal routes. Mutating routes enforce ownership or moderation rules inside the controller.

Endpoints ​

MethodPathEditionOperationWhat it does
GET/profile/{username}CoreGet ProfileReturns one member public profile by username, with the navigation tabs the portal should render for that member.
POST/profile/{username}CoreUpdate ProfileSaves the editable profile fields — names, bio, headline, website and social links — and mirrors the display name onto the WordPress user record.
PUT/profile/{username}CorePatch ProfileApplies a targeted profile change — swapping the avatar or cover photo, or deactivating the account.
POST/profile/{username}/change-passwordCorePost Change PasswordChanges the account password after verifying the current one, and returns freshly minted nonces so the open session keeps working.
GET/profile/{username}/spacesCoreList Profile SpacesReturns the spaces a member actively belongs to, each with its member count.
GET/profile/{username}/coursesCoreGet CoursesReturns the published courses a member is enrolled in, each with their progress, cover image and section, lesson and student counts.
GET/profile/{username}/membershipsCoreList Profile MembershipsReturns only the space ids a member actively belongs to — the cheap lookup used to decide what to show on their profile.
GET/profile/{username}/notification-preferencesCoreGet Notification PreferencesReturns the email notification preferences for a member — the global toggles, the per-space post preferences grouped by space group, and the digest send day.
POST/profile/{username}/notification-preferencesCoreSave Notification PreferencesStores the email notification preferences for a member, translating the per-space choices into the underlying subscription rows.
POST/profile/{username}/reconfirm-emailCorePost Reconfirm EmailPost Reconfirm Email for the FluentCommunity Profile API.
GET/profile/{username}/followersPROList Profile FollowersReturns the paginated list of members following this profile, each annotated with whether the current user follows them back.
GET/profile/{username}/followingsPROList Profile FollowingsReturns the paginated list of members this profile follows, each annotated with whether the current user follows them too.
GET/profile/{username}/blocked-usersPROList Profile Blocked UsersReturns the paginated list of members this profile has blocked.
POST/profile/{username}/followPROFollow Profile UserCreates a follow relationship from the current user to the named member.
POST/profile/{username}/unfollowPROUnfollow Profile UserRemoves the follow relationship from the current user to the named member.
POST/profile/{userId}/toggle-followPROToggle Profile FollowFollows the named member if not already followed, and unfollows them if they are — addressed by numeric user id rather than username.
POST/profile/{username}/blockPROBlock Profile UserBlocks a member, converting any existing follow relationship into a block rather than creating a second row.
POST/profile/{username}/unblockPROUnblock Profile UserLifts a block, deleting the relationship row entirely rather than reverting it to a follow.
POST/profile/{username}/notificationPROToggle Profile NotificationTurns notifications about a member you already follow on or off, without changing the follow itself.

FluentCommunity developer documentation