Skip to content

Returns one member public profile by username, with the navigation tabs the portal should render for that member.

How much comes back depends on the profile_page_visibility privacy setting and on who is asking: a restricted profile is flagged is_restricted and omits the bio, website, social links and join date. The profile owner and community admins additionally receive the email address, name parts, and flags saying whether the username, email and password can be changed. The Courses tab only appears when the course_module feature is enabled.

Endpoint

  • Method: GET

  • Path: /profile/{username}

  • Edition: Core

  • Controller: ProfileController@getProfile

  • Route source: fluent-community/app/Http/Routes/api.php:86

  • Controller source: fluent-community/app/Http/Controllers/ProfileController.php

  • Profiles that are not active are hidden from everyone except community moderators, with a 403.

Live sample

The request and response below were recorded against a running FluentCommunity install and then anonymised — member names, emails, avatars and post content are fictional, and long collections are trimmed to a few entries.

GET Get Profile

GET
/profile/{username}

Returns one member public profile by username, with the navigation tabs the portal should render for that member.

Controller: ProfileController@getProfile
Route source: fluent-community/app/Http/Routes/api.php:86

Authorizations

ApplicationPasswords

WordPress Application Passwords — use Basic auth with username:application_password.

Type
API Key (header: Authorization)

Parameters

Path Parameters

username*

Username extracted from the URL path.

Type
string
Required

Responses

Successful response

application/json
JSON
{
  
"profile": {
  
  
"avatar": "string",
  
  
"badge_slugs": [
  
  
  
"string"
  
  
],
  
  
"canViewUserSpaces": true,
  
  
"can_change_email": true,
  
  
"can_change_password": true,
  
  
"can_change_username": true,
  
  
"compilation_score": 0,
  
  
"cover_photo": "string",
  
  
"created_at": "string",
  
  
"display_name": "string",
  
  
"email": "string",
  
  
"first_name": "string",
  
  
"followers_count": 0,
  
  
"followings_count": 0,
  
  
"has_custom_avatar": true,
  
  
"headline": "string",
  
  
"is_moderator": "string",
  
  
"is_restricted": true,
  
  
"is_verified": 0,
  
  
"last_activity": "string",
  
  
"last_name": "string",
  
  
"profile_nav_actions": [
  
  
  
{
  
  
  
  
"additionalProperties": "string"
  
  
  
}
  
  
],
  
  
"profile_navs": [
  
  
  
{
  
  
  
  
"route": {
  
  
  
  
  
"name": "string"
  
  
  
  
},
  
  
  
  
"slug": "string",
  
  
  
  
"title": "string",
  
  
  
  
"url": "string",
  
  
  
  
"wrapper_class": "string"
  
  
  
}
  
  
],
  
  
"scheduled_posts_count": 0,
  
  
"short_description": "string",
  
  
"short_description_rendered": "string",
  
  
"social_links": {
  
  
  
"fb": "string",
  
  
  
"instagram": "string",
  
  
  
"linkedin": "string",
  
  
  
"twitter": "string",
  
  
  
"youtube": "string"
  
  
},
  
  
"status": "string",
  
  
"total_points": 0,
  
  
"user_id": 0,
  
  
"username": "string",
  
  
"website": "string"
  
}
}

Playground

Authorization
Variables
Key
Value

Samples

Powered by VitePress OpenAPI

FluentCommunity developer documentation