> ## Documentation Index
> Fetch the complete documentation index at: https://docs.snipp.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Edit Upload

Update an existing upload's title, description, or privacy level.

## Behavior

* You must own the upload to edit it.
* At least one of `title`, `description`, or `post-privacy` must be provided.
* Send `title` or `description` as multipart form fields. This is required for non-ASCII values such as emoji or accented characters, which cannot be carried in HTTP headers. The `title` and `description` headers still work for plain ASCII values but are discouraged.
* Send an empty string for `title` or `description` to clear the field.
* `title` is truncated to 30 characters, `description` to 200 characters.
* A restricted post cannot be made public. Setting `post-privacy` to `public` on a restricted post returns `403`. You can still switch it between `private` and `unlisted`.

## Examples

Update a post's title and privacy:

```bash theme={null}
curl -X PATCH "https://api.snipp.gg/editUpload" \
  -H "api-key: YOUR_API_KEY" \
  -H "code: AbCd1234" \
  -H "post-privacy: public" \
  -F "title=New title 🎉"
```

Clear a post's description:

```bash theme={null}
curl -X PATCH "https://api.snipp.gg/editUpload" \
  -H "api-key: YOUR_API_KEY" \
  -H "code: AbCd1234" \
  -F "description="
```

## Responses

```json theme={null}
{
  "message": "Upload updated successfully.",
  "post": {
    "code": "AbCd1234",
    "title": "New title",
    "description": null,
    "postPrivacy": "public"
  }
}
```
