Routes

The routes below are generated from the OpenAPI document media-api serves at /v1/media/openapi.json. The API renders that document from its router, so this page lists every route the program serves.

The media API is the page beside this one. It says what the API is for, which routes redirect to display-api and audio-api, how it composes a screen with its sound, who may capture a Player, and what each error means.

media-api, version v1alpha1, described in OpenAPI 3.1.0.

media-api serves the HTTP routes for a Player. Its screen routes redirect to display-api, its audio routes redirect to audio-api, and its media routes compose the two into one muxed stream.

GET /v1/media

The routes this API serves, as RFC 6570 templates.

Answers

Status Description
200 The discovery document, keyed by plural, with one entry per aspect.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
405 A method other than GET, HEAD, or OPTIONS.

HEAD /v1/media

The routes this API serves, as RFC 6570 templates. The headers alone, with no body, no capture, and no upstream call.

Answers

Status Description
200 The discovery document, keyed by plural, with one entry per aspect.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
405 A method other than GET, HEAD, or OPTIONS.

OPTIONS /v1/media

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}

The Player’s Display, its Sinks, whether a Play runs, and the stream count.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string

Answers

Status Description
200 The Player’s capture facts, with a related link to every capture route.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name.
405 A method other than GET, HEAD, or OPTIONS.

HEAD /v1/media/namespaces/{namespace}/players/{name}

The Player’s Display, its Sinks, whether a Play runs, and the stream count. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string

Answers

Status Description
200 The Player’s capture facts, with a related link to every capture route.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name.
405 A method other than GET, HEAD, or OPTIONS.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/audio

The Player’s sound, in the format chosen by Accept.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/audio

The Player’s sound, in the format chosen by Accept. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/audio

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/audio.flac

The Player’s sound, as audio/flac.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/audio.flac

The Player’s sound, as audio/flac. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/audio.flac

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/audio.opus

The Player’s sound, as audio/ogg.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/audio.opus

The Player’s sound, as audio/ogg. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/audio.opus

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/audio.wav

The Player’s sound, as audio/wav.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/audio.wav

The Player’s sound, as audio/wav. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
bitrate query no string

Answers

Status Description
307 The audio-api route for this Player’s Sink.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 No Play runs on this Player, or it resolves no Sink.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/audio.wav

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/media

The Player’s screen and sound in one stream, in the format chosen by Accept.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/media

The Player’s screen and sound in one stream, in the format chosen by Accept. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/media

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/media.mkv

The Player’s screen and sound in one stream, as video/matroska.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/media.mkv

The Player’s screen and sound in one stream, as video/matroska. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/media.mkv

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/media.mp4

The Player’s screen and sound in one stream, as video/mp4.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/media.mp4

The Player’s screen and sound in one stream, as video/mp4. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string
bitrate query no string

Answers

Status Description
200 The composed stream: one video track where the Player has a screen, and one audio track per Sink in spec.sinks order.
307 The stream’s route, returned when this Player resolves exactly one stream.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player resolves no stream at all, or an upstream reports its Display, Sink, or Source away.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/media.mp4

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/screen

The Player’s screen, in the format chosen by Accept.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/screen

The Player’s screen, in the format chosen by Accept. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/screen

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/screen.jpg

The Player’s screen, as image/jpeg.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/screen.jpg

The Player’s screen, as image/jpeg. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/screen.jpg

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/screen.mjpeg

The Player’s screen, as multipart/x-mixed-replace.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/screen.mjpeg

The Player’s screen, as multipart/x-mixed-replace. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/screen.mjpeg

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/screen.mp4

The Player’s screen, as video/mp4.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/screen.mp4

The Player’s screen, as video/mp4. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/screen.mp4

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/namespaces/{namespace}/players/{name}/screen.png

The Player’s screen, as image/png.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

HEAD /v1/media/namespaces/{namespace}/players/{name}/screen.png

The Player’s screen, as image/png. The headers alone, with no body, no capture, and no upstream call.

Parameters

Parameter In Required Type Description
namespace path yes string
name path yes string
t query no string
xywh query no string
width query no string
height query no string
framerate query no string
quality query no string

Answers

Status Description
307 The display-api route for this Player’s Display.
400 A query the grammar refuses, or an upstream 400.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
404 No Player of that name, or an upstream 404.
405 A method other than GET, HEAD, or OPTIONS.
406 Nothing this route serves is acceptable.
409 The Player has no status.screen.
502 An upstream answer this API cannot relay.
503 An upstream is busy, or this API is at its composition limit.
504 An upstream sent no headers within ten seconds plus the t= begin.

OPTIONS /v1/media/namespaces/{namespace}/players/{name}/screen.png

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

GET /v1/media/openapi.json

This OpenAPI document.

Answers

Status Description
200 This document, with the servers entry naming the origin the request reached.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
405 A method other than GET, HEAD, or OPTIONS.

HEAD /v1/media/openapi.json

This OpenAPI document. The headers alone, with no body, no capture, and no upstream call.

Answers

Status Description
200 This document, with the servers entry naming the origin the request reached.
304 The document matches the If-None-Match field.
401 No client certificate and no token, or a token the TokenReview refused.
403 The SubjectAccessReview denied the subject.
405 A method other than GET, HEAD, or OPTIONS.

OPTIONS /v1/media/openapi.json

The methods this route allows.

Answers

Status Description
204 Allow names GET, HEAD, and OPTIONS.

Security

Every route requires mutualTLS, or bearer, unless its own section states otherwise.

Scheme Type Description
bearer HTTP bearer, JWT A Kubernetes ServiceAccount token minted with the audience media-api, which this API checks with a TokenReview.
mutualTLS Mutual TLS A client certificate the cluster’s own authority signed. The subject’s common name is the user and its organization values are the groups, which is how the API server reads one.

The document itself

media-api serves the document this page is made from at /v1/media/openapi.json. The repository holds the same copy at openapi.json, and a test fails when the router and that copy differ.