schema
defineVideo(input?: Video)
SchemaOrgVideo
(see how components work)string
title
key, see defaults.string
description
key, see defaults.string
image
key, see defaults.string
datePublished
key, see defaults.VideoObject
${canonicalUrl}#/schema/video/${hash(image.url)}
options.defaultLanguage
(only when caption is provided) (see: user Config)url
See Global Resolves for full context.
width
and height
must be provided for either to be includeddefineVideo({
name: 'My cool video',
uploadDate: new Date(Date.UTC(2020, 10, 10)),
url: '/image.png',
})
export interface VideoSimple extends Thing {
/**
* The title of the video.
*/
name?: string
/**
* A description of the video (falling back to the caption, then to 'No description').
*/
description?: string
/**
* A reference-by-ID to an imageObject.
*/
thumbnailUrl?: NodeRelation<ImageObject>
/**
* The date the video was published, in ISO 8601 format (e.g., 2020-01-20).
*/
uploadDate?: ResolvableDate
/**
* Whether the video should be considered 'family friendly'
*/
isFamilyFriendly?: boolean
/**
* The URL of the image file (e.g., /images/cat.jpg).
*/
url: string
/**
* The fully-qualified, absolute URL of the image file (e.g., https://www.example.com/images/cat.jpg).
* Note: The contentUrl and url properties are intentionally duplicated.
*/
contentUrl?: string
/**
* A text string describing the image.
* - Fall back to the image alt attribute if no specific caption field exists or is defined.
*/
caption?: string
/**
* The height of the image in pixels.
* - Must be used with width.
*/
height?: number
/**
* The width of the image in pixels.
* - Must be used with height.
*/
width?: number
/**
* The language code for the textual content; e.g., en-GB.
* - Only needed when providing a caption.
*/
inLanguage?: string
/**
* The duration of the video in ISO 8601 format.
*/
duration?: string
/**
* A URL pointing to a player for the video.
*/
embedUrl?: string
}