Skip to content

Commit

Permalink
Spec ?animated on /thumbnail (#1757)
Browse files Browse the repository at this point in the history
* Spec `?animated` on `/thumbnail`

* v3*

* v1.11
  • Loading branch information
turt2live authored Apr 1, 2024
1 parent 8ff3623 commit d547154
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 1 deletion.
1 change: 1 addition & 0 deletions changelogs/client_server/newsfragments/1757.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add optional `animated` query string option to `GET /_matrix/media/v3/thumbnail`, as per [MSC2705](https://github.com/matrix-org/matrix-spec-proposals/pull/2705).
43 changes: 42 additions & 1 deletion data/api/client-server/content-repo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -633,6 +633,28 @@ paths:
schema:
type: boolean
default: false
- in: query
name: animated
x-addedInMatrixVersion: "1.11"
required: false
description: |
Indicates preference for an animated thumbnail from the server, if possible. Animated
thumbnails typically use the content types `image/gif`, `image/png` (with APNG format),
`image/apng`, and `image/webp` instead of the common static `image/png` or `image/jpeg`
content types.
When `true`, the server SHOULD return an animated thumbnail if possible and supported.
When `false`, the server MUST NOT return an animated thumbnail. For example, returning a
static `image/png` or `image/jpeg` thumbnail. When not provided, the server SHOULD NOT
return an animated thumbnail.
Servers SHOULD prefer to return `image/webp` thumbnails when supporting animation.
When `true` and the media cannot be animated, such as in the case of a JPEG or PDF, the
server should behave as though `animated` is `false`.
example: false
schema:
type: boolean
responses:
"200":
description: A thumbnail of the requested content.
Expand All @@ -644,14 +666,33 @@ paths:
enum:
- image/jpeg
- image/png
- image/apng
- image/gif
- image/webp
content:
image/jpeg:
schema:
# This is a workaround for us not being able to say the response is required.
description: "**Required.** The bytes for the thumbnail."
image/png:
schema:
description: "**Required.** The bytes for the thumbnail."
x-changedInMatrixVersion:
"1.11": The PNG may be of the APNG variety if animation is supported and requested.
description: |
**Required.** The bytes for the thumbnail. The thumbnail MAY use an animated
format if `animated=true`.
image/apng:
schema:
x-addedInMatrixVersion: "1.11"
description: "**Required.** The bytes for the *animated* thumbnail."
image/gif:
schema:
x-addedInMatrixVersion: "1.11"
description: "**Required.** The bytes for the *animated* thumbnail."
image/webp:
schema:
x-addedInMatrixVersion: "1.11"
description: "**Required.** The bytes for the *animated* thumbnail."
"307":
description: A redirect to the thumbnail of the requested content.
headers:
Expand Down

0 comments on commit d547154

Please sign in to comment.