Skip to main content
PATCH
/
api
/
public
/
teams
/
{teamId}
/
profile
/
images
Update Team Profile Images
curl --request PATCH \
  --url https://spaces.nexudus.com/api/public/teams/{teamId}/profile/images \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "Base64TeamLogo": "<string>",
  "Base64TeamImage1": "<string>",
  "Base64TeamImage2": "<string>",
  "Base64TeamImage3": "<string>",
  "DeleteTeamLogo": true,
  "DeleteTeamImage1": true,
  "DeleteTeamImage2": true,
  "DeleteTeamImage3": true
}
'
{
  "401 Unauthorized": {},
  "403 Forbidden": {},
  "400 Bad Request": {},
  "404 Not Found": {}
}

Update Team Profile Images

Uploads, replaces, or deletes team profile images, including the team logo and up to 3 additional images. Only team administrators can call this endpoint.

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 can include either Base64-encoded images to upload/replace or delete flags to remove existing images. You can combine both in a single request.

Upload or Replace Images

Provide the full Base64-encoded image data (including the data URI prefix, e.g. data:image/png;base64,...) for any image you want to upload or replace.
Full Base64-encoded string for the team logo, including the data URI prefix (e.g. data:image/png;base64,iVBORw0KGgo...). Omit or set to null to leave unchanged.
Base64TeamImage1
string
Full Base64-encoded string for the first team image. Omit or set to null to leave unchanged.
Base64TeamImage2
string
Full Base64-encoded string for the second team image. Omit or set to null to leave unchanged.
Base64TeamImage3
string
Full Base64-encoded string for the third team image. Omit or set to null to leave unchanged.

Delete Images

Set the corresponding delete flag to true to remove an existing image.
Set to true to delete the current team logo. Default is false.
DeleteTeamImage1
boolean
Set to true to delete the current first team image. Default is false.
DeleteTeamImage2
boolean
Set to true to delete the current second team image. Default is false.
DeleteTeamImage3
boolean
Set to true to delete the current third team image. Default is false.

Response

Returns HTTP 200 OK with an empty body on success.

Examples

PATCH /api/public/teams/55/profile/images
Authorization: Bearer {token}
Content-Type: application/json
{
  "Base64TeamLogo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="
}
Status: 200 OK
Body: (empty)

Delete an existing team image

PATCH /api/public/teams/55/profile/images
Authorization: Bearer {token}
Content-Type: application/json
{
  "DeleteTeamImage1": true
}
Status: 200 OK
Body: (empty)

Replace logo and delete an old image in one request

PATCH /api/public/teams/55/profile/images
Authorization: Bearer {token}
Content-Type: application/json
{
  "Base64TeamLogo": "data:image/jpeg;base64,/9j/4AAQSkZJRg...",
  "DeleteTeamImage2": true
}
Status: 200 OK
Body: (empty)

TypeScript Integration

import { endpoints } from '@/api/endpoints'

const updateTeamImages = async (
  teamId: number,
  imagePayload: {
    base64TeamLogo?: string | null
    base64TeamImage1?: string | null
    base64TeamImage2?: string | null
    base64TeamImage3?: string | null
    deleteTeamLogo?: boolean
    deleteTeamImage1?: boolean
    deleteTeamImage2?: boolean
    deleteTeamImage3?: boolean
  }
) => {
  await httpClient.patch(
    endpoints.teams.patchImages(teamId),
    imagePayload
  )
}

Usage in Portal

ContextSource file
Team Professional Profile Page (/team/profile/{teamId})src/views/user/team/profile/TeamProfessionalProfilePage.tsx
Team Professional Profile form component (image upload fields)src/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, malformed Base64 encoding.
404 Not Found
error
Team with the specified ID does not exist.
MethodEndpointDescription
PUT/api/public/teams/{teamId}/profileUpdate team profile fields
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