# Remove your photo

> The users.avatar.remove operation: DELETE /api/v1/users/me/avatar in the REST API and the users_avatar_remove tool in the MCP server.

Removes your photo: your initials show again. The photo is deleted from storage. Removing when there is no
photo changes nothing.

**Who can call it:** the signed-in user, for their own account, in the console.

## At a glance

- **REST:** `DELETE /api/v1/users/me/avatar`
- **MCP tool:** `users_avatar_remove`
- **Operation ID:** `users.avatar.remove`
- **Scope:** Platform
- **Permission:** `account:write`
- **Risk tier:** `write`
- **Dry run:** Supported (send `Ownrecord-Dry-Run: true`)
- **Idempotency:** `Idempotency-Key` optional
- **Modes:** Test and live
- **Authentication:** API key with the `account:write` scope
- **Since:** M13

## Request

### Body

This operation takes no body.

## Response

`200 OK` with a JSON object:

| Field           | Type             | Description                                                                                                     |
| --------------- | ---------------- | --------------------------------------------------------------------------------------------------------------- |
| `object`        | `"user_profile"` |                                                                                                                 |
| `id`            | `usr_…` ID       |                                                                                                                 |
| `email`         | string           | Your account's address (changed with `users.email_change.start`).                                               |
| `name`          | string or null   | Your display name, or null when there is none yet.                                                              |
| `nameSetByUser` | boolean          | Whether you set the name yourself. Until you do, a Google or Microsoft sign-in may update it from that account. |
| `avatar`        | object or null   | Your uploaded photo (private: shown to you, to the people in your organizations and to staff), or null.         |
| `updatedAt`     | date-time        |                                                                                                                 |

## Examples

### Go back to my initials

```http
DELETE /api/v1/users/me/avatar
Authorization: Bearer or_test_…
```

Response (`200`):

```json
{
  "object": "user_profile",
  "id": "usr_01m4tx5nj8emwbyf7y9vcf47xa",
  "email": "ana@acme.example",
  "name": "Ana Novak",
  "nameSetByUser": true,
  "avatar": null,
  "updatedAt": "2026-11-05T09:00:00.000Z"
}
```

## Errors

| Code                                                                                                   | HTTP status | When                                                | What to do                                                                      |
| ------------------------------------------------------------------------------------------------------ | ----------- | --------------------------------------------------- | ------------------------------------------------------------------------------- |
| [`profile_photo_unavailable`](https://ownrecord.io/docs/reference/errors.md#profile_photo_unavailable) | 500         | The platform isn't set up yet.                      | Try again later. If it persists, contact support with the request ID.           |
| [`version_conflict`](https://ownrecord.io/docs/reference/errors.md#version_conflict)                   | 409         | Your account changed at the same time; retry.       | Fetch the object again and retry the change.                                    |
| [`permission_denied`](https://ownrecord.io/docs/reference/errors.md#permission_denied)                 | 403         | The caller isn't a person signed in to the console. | Ask an organization owner or admin for a role or scope that allows this action. |

It can also return these [common errors](https://ownrecord.io/docs/reference.md#common-errors): [`validation_failed`](https://ownrecord.io/docs/reference/errors.md#validation_failed), [`api_version_unsupported`](https://ownrecord.io/docs/reference/errors.md#api_version_unsupported), [`invalid_json`](https://ownrecord.io/docs/reference/errors.md#invalid_json), [`unsupported_media_type`](https://ownrecord.io/docs/reference/errors.md#unsupported_media_type), [`authentication_required`](https://ownrecord.io/docs/reference/errors.md#authentication_required), [`api_key_invalid`](https://ownrecord.io/docs/reference/errors.md#api_key_invalid), [`resource_not_found`](https://ownrecord.io/docs/reference/errors.md#resource_not_found), [`idempotency_key_reused`](https://ownrecord.io/docs/reference/errors.md#idempotency_key_reused), [`idempotency_in_progress`](https://ownrecord.io/docs/reference/errors.md#idempotency_in_progress), [`rate_limited`](https://ownrecord.io/docs/reference/errors.md#rate_limited), [`internal_error`](https://ownrecord.io/docs/reference/errors.md#internal_error).
