Uploads a new photo for an employee. Accepts either a multipart/form-data POST with a file field carrying raw binary image bytes (typical browser/SDK usage), or an application/json POST with a fileBase64 property carrying the base64-encoded image bytes (typical MCP/LLM-connector usage). The server selects the path based on the request Content-Type. Supported formats: JPEG, PNG, BMP, GIF. Other formats (HEIC, SVG, AVIF, WebP) are rejected with 415; TIFF is accepted by the format gate but some variants may fail downstream. The image must be square (width and height must match within one pixel) and at least 150×150 pixels. Maximum file size is 20MB (applies to the decoded bytes for the JSON variant). The photo replaces the employee's current photo for all size variants. Employees may upload their own photo if the company has self-photo uploads enabled.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
201The photo was uploaded and processed successfully. No response body is returned.
400The request is invalid: no file provided, zero-byte file, or the maximum number of photo uploads (32767) has been exceeded.
402The photo could not be processed: the image crop failed, or the file contents could not be read.
403The authenticated user does not have permission to upload photos for this employee.
404The employee does not exist.
413The uploaded file exceeds the 20MB size limit.
415The image does not meet requirements: not square (width and height differ by more than one pixel), smaller than 150×150 pixels, or the file could not be read as a supported image format.
