---
title: "seek"
method: POST
path: "/groups/{groupId}/playback/seek"
tags: ["playback"]
---

# seek

`POST /groups/{groupId}/playback/seek`

## Request

- Base URL: `https://api.ws.sonos.com/control/api/v1`
- URL: `https://api.ws.sonos.com/control/api/v1/groups/{groupId}/playback/seek`
- Auth: OAuth 2 and HTTP bearer and API key in header `X-Sonos-Api-Key`
  - Authorization code: `https://api.sonos.com/login/v3/oauth`
  - Token URL: `https://api.sonos.com/login/v3/oauth/access` scopes: `playback-control-all`

Use the seek command in the playback namespace to go to a specific position in the current track. Optionally add the cloud queue itemId to target a specific track.

 Use itemId to ensure the group seeks on the current item. If the current item’s itemId does not match the one provided, the player returns an ERROR_INVALID_OBJECT_ID error.

## Request body

- object
  - `itemId` string, nullable: (Optional) The identifier for the item. If included and it does not match the currently playing item, the command fails. This ensures that playback does not jump back to a track if a user starts to scrub just as the player begins to play the next item or due to latency.
  - `positionMillis` integer, required: Position within track in milliseconds. If this value exceeds the current track duration time, Sonos moves to the end of the current track, which results in a skip to the next track.

## Response `200`

*Success Code*: `200 OK`

 *Content Examples*:
 1. When including the optional `itemId`.
 ```javascript
 {
 "positionMillis" : 30000,
 "itemId" : "123"
 }
 ```
 2. When omitting the optional `itemId`.
 ```javascript
 {
 "positionMillis" : 30000
 }
 ```

- Ok: This object represents an empty (default) success. The platform returns an empty object ({}).

## Other responses

- `400`: *Success Code*: `200 OK` *Content Examples*: 1. When including the optional `itemId`. ```javascript { "positionMillis" : 30000, "itemId" : "123" } ``` 2. When omitting the optional `itemId`. ```javascript { "positionMillis" : 30000 } ```
- `401`: A client has not provided authorization credentials to perform a command
- `403`: A client does not have the correct permissions to perform a command
- `404`: *Success Code*: `200 OK` *Content Examples*: 1. When including the optional `itemId`. ```javascript { "positionMillis" : 30000, "itemId" : "123" } ``` 2. When omitting the optional `itemId`. ```javascript { "positionMillis" : 30000 } ```
- `499`: *Success Code*: `200 OK` *Content Examples*: 1. When including the optional `itemId`. ```javascript { "positionMillis" : 30000, "itemId" : "123" } ``` 2. When omitting the optional `itemId`. ```javascript { "positionMillis" : 30000 } ```
- `500`: Sonos has experience an unexpected condition it is unable to recover from
- `503`: Player is unable to reach the service.

---

[API](https://skmtc.dev/sonos/apis/sonos-control-api-cloud.md) - [All operations](https://skmtc.dev/sonos/apis/sonos-control-api-cloud/llms.txt) - [OpenAPI document](https://skmtc.dev/sonos/apis/sonos-control-api-cloud/revisions/0c452bcf7b2a?raw)
