---
title: "Photo upload"
method: POST
path: "/v1/settings/profile/photo-upload"
tags: ["Settings"]
---

# Photo upload

`POST /v1/settings/profile/photo-upload`

## Request

- Base URL: `https://api.vicem.ai`
- URL: `https://api.vicem.ai/v1/settings/profile/photo-upload`
- Auth: HTTP bearer

## Request body

- PhotoUploadReq
  - `contentType` 'image/jpeg' | 'image/png' | 'image/webp'
  - `bytes` integer

## Response `200`

OK

- PhotoUploadRes
  - `uploadUrl` string, uri, required
  - `method` 'PUT', required
  - `headers` object, required
  - `objectUrl` string, uri, required
  - `expiresAt` string, date-time, required

## Other responses

- `400`: Invalid request (body not JSON, or schema validation failed).
- `401`: Missing, expired or invalid bearer token.
- `413`: Body over the limit (64 KB; 512 KB for contact import).
- `500`: Unexpected server error (reported to Sentry).

---

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