Stream uses a simplistic version of an oEmbed implementation in order to allow applications to dynamically get the embed code of a given video or channel. Because this is a simplistic verion of the oEmbed specification, and for security purposes, the returned values for title, thumbnail, description, author information, etc, is all listed as generic information.

An application can simply embed a video or channel from the returned oEmbed response, and the metadata information will be displayed automatically after a known authorized user sees the content. As a reminder, only authorized users are able to see secure content in Microsoft Stream, regardless of where it is embeded.



An example scenario

An example scenario of how this can help an application developer is the Stream collaboration with OneNote or Yammer. In both cases, a user simply adds a url from Microsoft Stream to either their note or conversation thread.

The application then takes the input Stream URL and gets the embed code from the html value of the oEmbed response. The application renders the embed code so that an authorized, signed in user can watch content inline.


Detecting a Microsoft Stream URL

Detecting a Stream URL is easy. Video URLs follow the pattern of:

https://*.microsoftstream.com/video/ID

Stream channels follow the pattern of:

https://*.microsoftstream.com/channel/ID


oEmbed endpoint

The Stream oEmbed endpoint can be reached at https://web.microsoftstream.com/oembed with addition of the supported query parameters.


Supported parameters

Parameter Required? Value Notes
url required string: url encoded string URL for a Microsoft Stream video or channel. Video urls from Office 365 Video are also supported.
autoplay optional boolean: true/false When true, the video will automatically start playing as soon as the user is logged in, if supported by the platform. Applies to videos only. Default is false.
width optional int width in pixels. It is recommended that the width to height ratio is 16:9. Default is 640px for a video.
height optional int height in pixels. It is recommended that the width to height ratio is 16:9. Default is 360px for a video.
preload optional auto/none Setting preload to auto automatically fetches the video chunks when the platform allows it. Setting preload to none waits until the user selects the play button before fetching the video chunks. Default is none.
st optional int Set this parameter to start the video at the value in seconds. Applies to Microsoft Stream videos only.

Example

A consumer makes the following HTTP requests:

https://web.microsoftstream.com/oembed?url=https%3A%2F%2Fweb.microsoftstream.com%2Fvideo%2Ff6df81b2-9438-4154-b32c-c023ebb2a4e3&preload=none&autoplay=false&width=1280&height=720


The response is returned as follows:

{

    "type": "video",

    "version": "1.0",

    "title": "",

    "provider_name": "Microsoft Stream",

    "provider_url": "https://stream.microsoft.com",

    "embed_url": "https://web.microsoftstream.com/embed/video/f6df81b2-9438-4154-b32c-c023ebb2a4e3?autoplay=false&preload=none",

    "html": "<iframe width=\"1280\" height=\"720\" src=\"https://web.microsoftstream.com/embed/video/f6df81b2-9438-4154-b32c-c023ebb2a4e3?autoplay=false&preload=none\" frameborder=\"0\" allowfullscreen><iframe>",

    "width": 1280,

    "height": 720,

    "thumbnail_url": "https://amsglob0cdnstream11.azureedge.net/oembed/images/poster_1280x720.jpg"

}


Source: Microsoft