Skip to main content

Avatar Management

Upload, retrieve, and delete user profile images.

GET /api/users/{username}/avatar

Get user's avatar image.

Authentication: Required (publicly accessible endpoint)

Path Parameters:

ParameterTypeDescription
usernamestringUsername

Query Parameters:

ParameterTypeDescription
tintegerTimestamp for cache busting

Response:

Returns the avatar image file (JPEG, PNG, etc.) or default avatar if none set.

Content-Type: image/jpeg, image/png, etc.


GET /api/users/{username}/avatar-full

Get user's full-size avatar image.

Authentication: Required

Response:

Returns the original uploaded avatar without resizing.


PUT /api/users/{username}/avatar

Upload a new avatar image.

Authentication: Required

Permissions: User can update own avatar; admins can update any user's avatar

Path Parameters:

ParameterTypeDescription
usernamestringUsername

Request:

Multipart form upload with image file.

Response:

{
"username": "john.doe",
"avatarUrl": "/api/users/john.doe/avatar?t=1707484800000"
}

DELETE /api/users/{username}/avatar

Remove user's avatar.

Authentication: Required

Permissions: User can delete own avatar; admins can delete any user's avatar

Path Parameters:

ParameterTypeDescription
usernamestringUsername

Response:

204 No Content on success.

Behavior:

Removes custom avatar; subsequent requests return default avatar.


POST /api/users/{username}/_upload/{uploadId}/avatar-upload

Upload avatar via chunked upload.

Authentication: Required

Path Parameters:

ParameterTypeDescription
usernamestringUsername
uploadIdstringUpload session ID

Use Case:

For large avatar files or resumable uploads.