> ## Documentation Index > Fetch the complete documentation index at: https://developer.rocket.chat/llms.txt > Use this file to discover all available pages before exploring further. # Set User Avatar > Use this endpoint to change your or another user's avatar. You can change avatars only if the `AllowUserAvatarChange` setting under **Accounts** is enabled. To change another user's avatar, you need the permission: `edit-other-user-avatar`. ### Changelog | Version | Description | | ---------------- | ------------| |8.7.0 | Added optional `service` multipart field (stored as `avatarOrigin`) | |0.56.0 | Add support for `username` argument. | |0.48.0 | Set other users avatars if the callee has permission. | |0.46.0 | Added | ## OpenAPI ````json POST /api/v1/users.setAvatar { "openapi": "3.0.0", "info": { "version": "1.0.0", "title": "User Management" }, "servers": [ { "url": "https://apiexplorer.support.rocket.chat" } ], "tags": [ { "name": "LDAP" }, { "name": "Permissions" }, { "name": "Roles" }, { "name": "Users" }, { "name": "SAML" } ], "paths": { "/api/v1/users.setAvatar": { "post": { "summary": "Set User Avatar", "operationId": "post-api-v1-users.setAvatar", "responses": { "200": { "$ref": "#/components/responses/trueSuccess" }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "type": "object", "properties": { "success": { "type": "boolean" }, "error": { "type": "string" } } }, "examples": { "Example 1": { "value": { "success": "false", "error": "Missing Content-Type" } } } } } }, "401": { "$ref": "#/components/responses/authorizationError" } }, "description": "Use this endpoint to change your or another user's avatar. You can change avatars only if the `AllowUserAvatarChange` setting under **Accounts** is enabled. To change another user's avatar, you need the permission: `edit-other-user-avatar`.\n\n### Changelog\n| Version | Description |\n| ---------------- | ------------|\n|8.7.0 | Added optional `service` multipart field (stored as `avatarOrigin`) |\n|0.56.0 | Add support for `username` argument. |\n|0.48.0 | Set other users avatars if the callee has permission. |\n|0.46.0 | Added |", "parameters": [ { "$ref": "#/components/parameters/UserId" }, { "$ref": "#/components/parameters/Auth-Token" } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "avatarUrl": { "type": "string", "description": "Enter the image URL you want to set as the user avatar.", "example": "http://domain.tld/to/my/own/avatar.jpg" }, "userId": { "type": "string", "description": "The ID or username of the user. If not provided, the avatar of the user who is sending the request is updated. Alternatively, you can enter the `username` parameter." } }, "required": [ "avatarUrl" ] }, "examples": { "Example": { "value": { "avatarUrl": "http://domain.tld/to/my/own/avatar.jpg" } } } }, "multipart/form-data": { "schema": { "type": "object", "properties": { "image": { "type": "string", "format": "binary", "description": "The image file to upload as the new avatar." }, "service": { "type": "string", "description": "Optional. The name of the OAuth/external service the avatar originates from (e.g. `google`, `facebook`, `gravatar`). Stored as `avatarOrigin`. ", "example": "google" }, "userId": { "type": "string", "description": "The ID or username of the user. If not provided, the avatar of the user who is sending the request is updated." } }, "required": [ "image" ] }, "examples": { "Example": { "value": { "image": "@my-own-avatar.png", "service": "google" } } } } }, "description": "You have two options to set the user avatar:\n * Upload the image file to use as the new avatar, as form-data. For example, `image=@my-own-avatar.png`. Optionally include a `service` field to record which OAuth/external service the avatar came from (stored as `avatarOrigin`).\n * Enter the image URL you want to set as the user avatar in the request body, using the parameter `avatarUrl`." }, "tags": [ "Users" ] } } }, "components": { "responses": { "trueSuccess": { "description": "OK", "content": { "application/json": { "schema": { "type": "object", "properties": { "success": { "type": "boolean" } } }, "examples": { "Success": { "value": { "success": "true" } } } } } }, "authorizationError": { "description": "Unauthorized", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "string" }, "message": { "type": "string" } } }, "examples": { "Authorization Error": { "value": { "status": "error", "message": "You must be logged in to do this." } } } } } } }, "parameters": { "UserId": { "name": "X-User-Id", "in": "header", "description": "The authenticated user ID.", "required": "true", "schema": { "type": "string" }, "example": "rbAXPnMktTFbNpwtJ" }, "Auth-Token": { "name": "X-Auth-Token", "in": "header", "description": "The authenticated user token.", "required": "true", "schema": { "type": "string" }, "example": "RScctEHSmLGZGywfIhWyRpyofhKOiMoUIpimhvheU3f" } } } } ````