---
title: "Upload a workspace profile photo"
method: POST
path: "/api/v1/workspaces/{workspaceId}/profile/photo"
tags: ["Workspaces"]
---

# Upload a workspace profile photo

`POST /api/v1/workspaces/{workspaceId}/profile/photo`

## Request

- Base URL: `https://getoverlay.io`
- URL: `https://getoverlay.io/api/v1/workspaces/{workspaceId}/profile/photo`
- Auth: one of:
  - API key in cookie `overlay_session`
  - HTTP bearer

Accepts a multipart `file` image. The server authorizes active workspace membership before parsing or processing the upload.

## Path parameters

- `workspaceId` string, required

## Request body `multipart/form-data`

- object: Multipart form data. Field-level schemas are validated server-side.

## Response `200`

Successful response. Stable response schemas are documented in workflow guides when available.

- unknown

## Other responses

- `400`: Invalid request.
- `401`: Missing or invalid authentication.
- `500`: Unexpected server error.

## Changes

- **2026-10-27** `a9ad2f7df8ce`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/layernorm/apis/overlay-web-api/changes/api/v1/workspaces/:workspaceId/profile/photo/post.md)

---

[API](https://skmtc.dev/layernorm/apis/overlay-web-api.md) - [All operations](https://skmtc.dev/layernorm/apis/overlay-web-api/llms.txt) - [OpenAPI document](https://skmtc.dev/layernorm/apis/overlay-web-api/revisions/529aba7bcb64?raw)
