---
title: "Sets or replaces the agency end-client's own profile picture"
method: PUT
path: "/v2/settings/agency-users/{agencyUserId}/profile-picture"
tags: ["Agency Users Api Service"]
---

# Sets or replaces the agency end-client's own profile picture

`PUT /v2/settings/agency-users/{agencyUserId}/profile-picture`

## Request

- Base URL: `https://app.metricool.com/api`
- URL: `https://app.metricool.com/api/v2/settings/agency-users/{agencyUserId}/profile-picture`
- Auth: none declared

The request is multipart/form-data with a single file part named 'picture' — the same contract as POST /v2/media and the other profile-picture endpoints. The image is validated and normalised server-side to a 400x400 PNG, centre-cropped; there is no manual crop. The change is applied immediately and the previous picture is deleted, so it cannot be recovered. Accepted formats PNG, JPEG and WebP, decided from the actual bytes. Maximum upload size 1 MB, and neither side of the source image may exceed 2000 pixels — both are rejections, not automatic downscales. A client may only act on its own picture: there is no agency-side endpoint that sets a client's avatar, the agency only sees it in GET /v2/agency-CK/{agencyId}/end-clients.

## Path parameters

- `agencyUserId` integer, required

## Response `200`

The updated agency user, including the new profile picture URL

- JsonOkResponseAgencyUserDto
  - `metadata` object
  - `page` JsonPaging
    - `next` string
  - `data` AgencyUserDto
    - `id` integer
    - `agencyId` integer
    - `userName` string
    - `name` string
    - `lastName` string
    - `language` string
    - `timezone` string
    - `enabled` boolean
    - `firstDayOfTheWeek` integer
    - `profilePicture` string

## Other responses

- `400`: Missing 'picture' file part, not an image, unsupported format, over 1 MB, a side over 2000 px, or the request does not come from the agency's own domain (NotAllowedOperationException, which this resource maps to 400 rather than 403 — same as PATCH /v2/settings/agency-users/{agencyUserId})
- `401`: Not authenticated as the agency end client of the path
- `404`: The authenticated end client no longer exists
- `415`: Declared content type is not multipart/form-data

---

[API](https://skmtc.dev/metricool/apis/metricool-api.md) · [All operations](https://skmtc.dev/metricool/apis/metricool-api/llms.txt) · [OpenAPI document](https://skmtc.dev/metricool/apis/metricool-api/revisions/cd0ca612fa01?raw)
