Skip to main content

Upload Staff Avatar (v1)

Method + Path

POST /v1/workspace/:workspaceId/staff/:staffId/avatar

Actual backend path: /v1/workspace/:workspaceId/staff/:staffId/avatar

Description

Upload an avatar image for a staff member.

Authentication

Required - JWT token in Authorization header

Required Permissions:

  • staff.update

Headers

HeaderTypeRequiredDescription
AuthorizationstringYesBearer token: Bearer <token>
Content-TypestringYesmultipart/form-data

Path Parameters

ParameterTypeRequiredDescription
workspaceIdstringYesWorkspace identifier
staffIdstringYesStaff member identifier

Request Body

Form data with a file field named file.

Form Fields

FieldTypeRequiredDescription
filefileYesImage file to upload (JPEG, PNG, etc.)

Response (201)

{
"avatar": {
"url": "https://storage.example.com/avatars/staff-123.jpg",
"path": "avatars/staff-123.jpg",
"width": 200,
"height": 200,
"sizeBytes": 45678,
"contentType": "image/jpeg"
}
}

Common Errors

  • 400 Bad Request: Missing or invalid file
  • 401 Unauthorized: Missing or invalid authentication token
  • 403 Forbidden: Insufficient permissions (requires staff.update)
  • 404 Not Found: Staff member or workspace not found
  • 413 Payload Too Large: File size exceeds limit
  • 415 Unsupported Media Type: Invalid file type
  • 500 Internal Server Error: Server error