---
title: "Update favorite meme"
method: PATCH
path: "/users/@me/memes/{meme_id}"
tags: ["Saved Media"]
---

# Update favorite meme

`PATCH /users/@me/memes/{meme_id}`

Updates details of a favorite meme.

## Path parameters

- `meme_id` string, required

## Request body

- UpdateFavoriteMemeBodySchema
  - `name` string — Display name for the meme
  - `alt_text` string, nullable — Alternative text description for accessibility
  - `tags` string[], nullable — New tags for categorizing and searching the meme

## Response `200`

Success

- FavoriteMemeResponse
  - `id` string, required — Unique identifier for the favorite meme
  - `user_id` string, required — ID of the user who owns this favorite meme
  - `name` string, required — Display name of the meme
  - `alt_text` string, nullable — Alternative text description for accessibility
  - `tags` string[], required — Tags for categorizing and searching the meme
  - `attachment_id` string, required — ID of the attachment storing the meme
  - `filename` string, required — Original filename of the meme
  - `content_type` string, required — MIME type of the meme file
  - `content_hash` string, nullable — Hash of the file content for deduplication
  - `size` integer, required — File size in bytes
  - `width` integer, nullable — Width of the image or video in pixels
  - `height` integer, nullable — Height of the image or video in pixels
  - `duration` number, nullable — Duration of the video in seconds
  - `url` string, required — CDN URL to access the meme
  - `is_gifv` boolean — Whether the meme is a video converted from GIF
  - `gif_slug` string, nullable — Provider-issued slug for the GIF this meme was sourced from, if any
  - `gif_provider` string, nullable — Stable name of the GIF provider that issued gif_slug, if any. Legacy records may contain older provider names.
  - `media` object, nullable — Provider-issued format-name → media descriptor map for gif-sourced memes (mirrors GifResponse.media). Null on memes uploaded as plain attachments.
  - `placeholder` string, nullable — Compact thumbhash placeholder produced by the media proxy at favorite-time. Clients render it as a low-res preview while the full media loads. Null when the proxy did not emit one.

## Other responses

- `400` — Bad Request - The request was malformed or contained invalid data
- `401` — Unauthorized - Authentication is required or the token is invalid
- `403` — Forbidden - You do not have permission to perform this action
- `429` — Too Many Requests - You are being rate limited
- `500` — Internal Server Error - An unexpected error occurred

---

[API](https://skmtc.dev/fluxer/apis/fluxer-api.md) · [All operations](https://skmtc.dev/fluxer/apis/fluxer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fluxer/fluxer-api/revisions/d9c706133cc5/schema)
