---
title: "Reports a user's playback progress."
method: POST
path: "/Users/{userId}/PlayingItems/{itemId}/Progress"
tags: ["Playstate"]
---

# Reports a user's playback progress.

`POST /Users/{userId}/PlayingItems/{itemId}/Progress`

## Path parameters

- `userId` string, uuid, required — User id.
- `itemId` string, uuid, required — Item id.

## Query parameters

- `mediaSourceId` string, nullable — The id of the MediaSource.
- `positionTicks` integer, nullable — Optional. The current position, in ticks. 1 tick = 10000 ms.
- `audioStreamIndex` integer, nullable — The audio stream index.
- `subtitleStreamIndex` integer, nullable — The subtitle stream index.
- `volumeLevel` integer, nullable — Scale of 0-100.
- `playMethod` 'Transcode' | 'DirectStream' | 'DirectPlay'
- `liveStreamId` string, nullable — The live stream id.
- `playSessionId` string, nullable — The play session id.
- `repeatMode` 'RepeatNone' | 'RepeatAll' | 'RepeatOne'
- `isPaused` boolean — Indicates if the player is paused.
- `isMuted` boolean — Indicates if the player is muted.

## Response `204`

Play progress recorded.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/jellyfin/apis/jellyfin-api.md) · [All operations](https://skmtc.net/jellyfin/apis/jellyfin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/jellyfin/jellyfin-api/revisions/eb6f75af7066/schema)
