Skip to main content
PUT
/
api
/
public
/
teams
/
{teamId}
/
profile
{
  "401 Unauthorized": {},
  "403 Forbidden": {},
  "400 Bad Request": {},
  "404 Not Found": {}
}

Update Team Profile

Updates the profile information for a specific team, including display name, social media links, and public visibility. Only team administrators can call this endpoint; partial updates are supported.

Authentication

Requires a valid customer bearer token. The customer must be a team administrator of the specified team.

Path Parameters

teamId
number
required
Numeric identifier of the team. Returned as Id in the Records array from GET /api/public/teams/my.

Request Body

The request body should contain the team profile fields to update. Only include fields that are being modified — partial updates are supported.

Basic Information

Name
string
required
Display name of the team. Cannot be empty.
Description
string
Full-length team description. May contain HTML. Omit to leave unchanged.
ProfileSummary
string
Short tagline shown in team cards and selectors.
ProfileIsPublic
boolean
When true, the team profile is visible in the public member directory.
ProfileWebsite
string
Team website URL. Must be a valid URL format when provided.
ProfileTags
string
Space-separated tags describing the team.

Social Media

All social media fields are optional string values. Must be valid URL format when provided (except Skype which accepts a username).
FieldDescription
TwitterX / Twitter profile URL
FacebookFacebook page URL
LinkedinLinkedIn company page URL
InstagramInstagram profile URL
GithubGitHub org or user URL
PinterestPinterest profile URL
SkypeSkype username
TelegramTelegram handle
FlickrFlickr profile URL
VimeoVimeo channel URL
TumblrTumblr blog URL
BloggerBlogger profile URL

Response

Returns HTTP 200 OK with an empty body on success.

Examples

PUT /api/public/teams/55/profile
Authorization: Bearer {token}
Content-Type: application/json
{
  "Name": "Tech Innovators Updated",
  "ProfileSummary": "Building the future, one innovation at a time — now with AI focus",
  "ProfileIsPublic": true,
  "ProfileWebsite": "https://techinnovators-ai.example.com",
  "ProfileTags": "technology startup innovation collaboration AI machine-learning",
  "Twitter": "https://twitter.com/techinnovators_ai",
  "Linkedin": "https://linkedin.com/company/techinnovators-ai",
  "Github": "https://github.com/techinnovators-ai"
}
Status: 200 OK
Body: (empty)

TypeScript Integration

import { endpoints } from '@/api/endpoints'
import { Team } from '@/types/endpoints/TeamList'

const updateTeamProfile = async (teamId: number, profileData: Partial<Team>) => {
  await httpClient.put(endpoints.teams.one(teamId), profileData)
}

Usage in Portal

ContextSource file
Team Professional Profile Page (/team/profile/{teamId})src/views/user/team/profile/TeamProfessionalProfilePage.tsx
Team Professional Profile form componentsrc/views/user/team/profile/components/TeamProfessionalProfile.tsx

Error Responses

401 Unauthorized
error
The customer is not authenticated or the session has expired.
403 Forbidden
error
The customer is not an administrator of the specified team.
400 Bad Request
error
Invalid request data — for example, missing required Name field or invalid URL format in a social media field.
404 Not Found
error
Team with the specified ID does not exist.
MethodEndpointDescription
GET/api/public/teams/{teamId}/profileGet current team profile
GET/api/public/teams/myList the customer’s teams
GET/api/public/teams/{teamId}/kpiTeam KPI metrics
GET/api/public/teams/{teamId}/attendanceTeam attendance data
GET/api/public/teams/{teamId}/metricsTeam performance metrics