Video player URL parameters.
The player app is hosted on /play/
on your site. To play a slug, the url is https://yoursite.com/play/#/film/123
Note: the slug, and any player URL parameters go in the hash/fragment portion of the URL!
Some of these parameters (e.g. Chromecast, Airplay) are also controlled globally by site configuration.
Parameter | Type | Description | Default |
---|---|---|---|
t | number | Position in the video to play from. | Resume from last watched. May prompt the user if they want to start over |
from | string | Where the player was launched from. This is where the back button on the player titlebar will take you. Setting this to blank &from= will hide the back button |
|
nav | bool | Set to false to hide the player title bar and back button. | true |
airplay | string | false will disable the Airplay option | true |
cast | bool | false will disable the Chromecast option | true |
rates | bool | Enable faster playback rates UI | false |
tm | bool | Enable theatre mode button. Intended for use in iframed player as part of the S72 site template | false |
p | string | Playtoken. If provided this is used to authorize video playback. | None. The user’s auth will be used, and they’ll be redirected to sign in if unauthorized |
m | string | Additional playback position telemetry URL. Telemetry will be sent here as well as Shift72 servers |
https://vod.shift72.com/play/#/film/123?from=https:%2F%2Fapidocs.shift72.com&p=eyJhbGciOiJIUzI1NiIsInR5cCI...
The player sends a series of telemetry events roughly every 30 seconds of playback. This allows tracking engagement/watch time, and is also used to track playback progress.
If you provide a telemetry URL, these events will also be sent to your server as a POST request.
The user’s playtoken will be sent as the X-Play-Session
header. This can be
decoded to access info about the user, or any additional claims added when
issuing an external user token.
The payload is documented in the telemetry endpoint
POST /your-api/telemetry
Host: yoursite.com
X-Play-Session: eyJhbGciOiJIUzI1NiIsInR5cCI...
Content-Type: application/json
{
"ts": "2025-08-08T00:11:34.524Z",
"slug": "/film/3283",
"player": 1,
"elapsed": 30,
"buffered": 0,
"bitrate": 4658,
"estbitrate": 88432,
"seeked": false,
"position": 30,
"length": 214,
"droppedFrames": 0,
"adBlocked": false
}
The web player will send telemetry with player id 1 (DASH: most browsers), or 6
(HLS: Safari and Safari-adjacent browsers). The additional telemetry URL will also be passed to Chromecast which will have player_id 4