YouTube

Videos

A video resource represents a YouTube video.

Methods

The API supports the following methods for videos resources:

getRating
Retrieves the ratings that the authorized user gave to a list of specified videos. Try it now.
list
Returns a list of videos that match the API request parameters. Try it now.
insert
Uploads a video to YouTube and optionally sets the video's metadata.
update
Updates a video's metadata. Try it now.
delete
Deletes a YouTube video. Try it now.
rate
Add a like or dislike rating to a video or remove a rating from a video. Try it now.

Resource representation

The JSON structure below shows the format of a videos resource:

{
  "kind": "youtube#video",
  "etag": etag,
  "id": string,
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "channelTitle": string,
    "tags": [
      string
    ],
    "categoryId": string,
    "liveBroadcastContent": string
  },
  "contentDetails": {
    "duration": string,
    "dimension": string,
    "definition": string,
    "caption": string,
    "licensedContent": boolean,
    "regionRestriction": {
      "allowed": [
        string
      ],
      "blocked": [
        string
      ]
    },
    "contentRating": {
      "mpaaRating": string,
      "tvpgRating": string,
      "bbfcRating": string,
      "chvrsRating": string,
      "eirinRating": string,
      "cbfcRating": string,
      "fmocRating": string,
      "icaaRating": string,
      "acbRating": string,
      "oflcRating": string,
      "fskRating": string,
      "kmrbRating": string,
      "djctqRating": string,
      "russiaRating": string,
      "rtcRating": string,
      "ytRating": string,
      "mibacRating": string,
      "catvRating": string,
      "catvfrRating": string
    }
  },
  "status": {
    "uploadStatus": string,
    "failureReason": string,
    "rejectionReason": string,
    "privacyStatus": string,
    "publishAt": datetime,
    "license": string,
    "embeddable": boolean,
    "publicStatsViewable": boolean
  },
  "statistics": {
    "viewCount": unsigned long,
    "likeCount": unsigned long,
    "dislikeCount": unsigned long,
    "favoriteCount": unsigned long,
    "commentCount": unsigned long
  },
  "player": {
    "embedHtml": string
  },
  "topicDetails": {
    "topicIds": [
      string
    ],
    "relevantTopicIds": [
      string
    ]
  },
  "recordingDetails": {
    "locationDescription": string,
    "location": {
      "latitude": double,
      "longitude": double,
      "altitude": double
    },
    "recordingDate": datetime
  },
  "fileDetails": {
    "fileName": string,
    "fileSize": unsigned long,
    "fileType": string,
    "container": string,
    "videoStreams": [
      {
        "widthPixels": unsigned integer,
        "heightPixels": unsigned integer,
        "frameRateFps": double,
        "aspectRatio": double,
        "codec": string,
        "bitrateBps": unsigned long,
        "rotation": string,
        "vendor": string
      }
    ],
    "audioStreams": [
      {
        "channelCount": unsigned integer,
        "codec": string,
        "bitrateBps": unsigned long,
        "vendor": string
      }
    ],
    "durationMs": unsigned long,
    "bitrateBps": unsigned long,
    "recordingLocation": {
      "latitude": double,
      "longitude": double,
      "altitude": double
    },
    "creationTime": string
  },
  "processingDetails": {
    "processingStatus": string,
    "processingProgress": {
      "partsTotal": unsigned long,
      "partsProcessed": unsigned long,
      "timeLeftMs": unsigned long
    },
    "processingFailureReason": string,
    "fileDetailsAvailability": string,
    "processingIssuesAvailability": string,
    "tagSuggestionsAvailability": string,
    "editorSuggestionsAvailability": string,
    "thumbnailsAvailability": string
  },
  "suggestions": {
    "processingErrors": [
      string
    ],
    "processingWarnings": [
      string
    ],
    "processingHints": [
      string
    ],
    "tagSuggestions": [
      {
        "tag": string,
        "categoryRestricts": [
          string
        ]
      }
    ],
    "editorSuggestions": [
      string
    ]
  },
  "liveStreamingDetails": {
    "actualStartTime": datetime,
    "actualEndTime": datetime,
    "scheduledStartTime": datetime,
    "scheduledEndTime": datetime,
    "concurrentViewers": unsigned long
  }
}

Properties

The following table defines the properties that appear in this resource:

Property name Value Description
kind string Identifies the API resource's type. The value will be youtube#video.
etag etag The Etag of this resource.
id string The ID that YouTube uses to uniquely identify the video.
snippet object The snippet object contains basic details about the video, such as its title, description, and category.
snippet.publishedAt datetime The date and time that the video was published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
snippet.channelId string The ID that YouTube uses to uniquely identify the channel that the video was uploaded to.
snippet.title string The video's title. The property value has a maximum length of 100 characters and may contain all valid UTF-8 characters except < and >.
snippet.description string The video's description. The property value has a maximum length of 5000 bytes and may contain all valid UTF-8 characters except < and >.
snippet.thumbnails object A map of thumbnail images associated with the video. For each object in the map, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
snippet.thumbnails.(key) object Valid key values are:
  • default – The default thumbnail image. The default thumbnail for a video – or a resource that refers to a video, such as a playlist item or search result – is 120px wide and 90px tall. The default thumbnail for a channel is 88px wide and 88px tall.
  • medium – A higher resolution version of the thumbnail image. For a video (or a resource that refers to a video), this image is 320px wide and 180px tall. For a channel, this image is 240px wide and 240px tall.
  • high – A high resolution version of the thumbnail image. For a video (or a resource that refers to a video), this image is 480px wide and 360px tall. For a channel, this image is 800px wide and 800px tall.
snippet.thumbnails.(key).url string The image's URL.
snippet.thumbnails.(key).width unsigned integer The image's width.
snippet.thumbnails.(key).height unsigned integer The image's height.
snippet.channelTitle string Channel title for the channel that the video belongs to.
snippet.tags[] list A list of keyword tags associated with the video. Tags may contain spaces. This field is only visible to the video's uploader. The property value has a maximum length of 500 characters. Note that the property value is a list and that commas between items in the list count toward the limit.
snippet.categoryId string The YouTube video category associated with the video.
snippet.liveBroadcastContent string Indicates if the video is an upcoming/active live broadcast. Or it's "none" if the video is not an upcoming/active live broadcast.

Valid values for this property are:
  • live
  • none
  • upcoming
contentDetails object The contentDetails object contains information about the video content, including the length of the video and an indication of whether captions are available for the video.
contentDetails.duration string The length of the video. The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that the value specifies a period of time, and the letters M and S refer to length in minutes and seconds, respectively. The # characters preceding the M and S letters are both integers that specify the number of minutes (or seconds) of the video. For example, a value of PT15M51S indicates that the video is 15 minutes and 51 seconds long.
contentDetails.dimension string Indicates whether the video is available in 3D or in 2D.
contentDetails.definition string Indicates whether the video is available in high definition (HD) or only in standard definition.

Valid values for this property are:
  • hd
  • sd
contentDetails.caption string Indicates whether captions are available for the video.

Valid values for this property are:
  • false
  • true
contentDetails.licensedContent boolean Indicates whether the video represents licensed content, which means that the content has been claimed by a YouTube content partner.
contentDetails.regionRestriction object The regionRestriction object contains information about the countries where a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed property or the contentDetails.regionRestriction.blocked property.
contentDetails.regionRestriction.allowed[] list A list of region codes that identify countries where the video is viewable. If this property is present and a country is not listed in its value, then the video is blocked from appearing in that country. If this property is present and contains an empty list, the video is blocked in all countries.
contentDetails.regionRestriction.blocked[] list A list of region codes that identify countries where the video is blocked. If this property is present and a country is not listed in its value, then the video is viewable in that country. If this property is present and contains an empty list, the video is viewable in all countries.
contentDetails.contentRating object Specifies the ratings that the video received under various rating schemes.
contentDetails.contentRating.mpaaRating string The video's Motion Picture Association of America (MPAA) rating.

Valid values for this property are:
  • mpaaG – G
  • mpaaNc17 – NC-17
  • mpaaPg – PG
  • mpaaPg13 – PG-13
  • mpaaR – R
  • mpaaUnrated
contentDetails.contentRating.tvpgRating string The video's TV Parental Guidelines (TVPG) rating.

Valid values for this property are:
  • pg14 – TV-14
  • tvpgG – TV-G
  • tvpgMa – TV-MA
  • tvpgPg – TV-PG
  • tvpgUnrated
  • tvpgY – TV-Y
  • tvpgY7 – TV-Y7
  • tvpgY7Fv – TV-Y7-FV
contentDetails.contentRating.bbfcRating string The video's British Board of Film Classification (BBFC) rating.

Valid values for this property are:
  • bbfc12 – 12
  • bbfc12a – 12A
  • bbfc15 – 15
  • bbfc18 – 18
  • bbfcPg – PG
  • bbfcR18 – R18
  • bbfcU – U
  • bbfcUnrated
contentDetails.contentRating.chvrsRating string The video's Canadian Home Video Rating System (CHVRS) rating.

Valid values for this property are:
  • chvrs14a – 14A
  • chvrs18a – 18A
  • chvrsE – E
  • chvrsG – G
  • chvrsPg – PG
  • chvrsR – R
  • chvrsUnrated
contentDetails.contentRating.eirinRating string The video's Eirin (映倫) rating. Eirin is the Japanese rating system.

Valid values for this property are:
  • eirinG – G
  • eirinPg12 – PG-12
  • eirinR15plus – R15+
  • eirinR18plus – R18+
  • eirinUnrated
contentDetails.contentRating.cbfcRating string The video's Central Board of Film Certification (CBFC - India) rating.

Valid values for this property are:
  • cbfcA – A
  • cbfcS – S
  • cbfcU – U
  • cbfcUA – U/A
  • cbfcUnrated
contentDetails.contentRating.fmocRating string The video's Centre national du cinéma et de l'image animé (French Ministry of Culture) rating.

Valid values for this property are:
  • fmoc10 – 10
  • fmoc12 – 12
  • fmoc16 – 16
  • fmoc18 – 18
  • fmocE – E
  • fmocU – U
  • fmocUnrated
contentDetails.contentRating.icaaRating string The video's Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA - Spain) rating.

Valid values for this property are:
  • icaa12 – 12
  • icaa13 – 13
  • icaa16 – 16
  • icaa18 – 18
  • icaa7 – 7
  • icaaApta – APTA
  • icaaUnrated
  • icaaX – X
contentDetails.contentRating.acbRating string The video's Australian Classification Board (ACB) or Australian Communications and Media Authority (ACMA) rating. ACMA ratings are used to classify children's television programming.

Valid values for this property are:
  • acbC – Programs that have been given a C classification by the Australian Communications and Media Authority. These programs are intended for children (other than preschool children) who are younger than 14 years of age.
  • acbE – E
  • acbG – G
  • acbM – M
  • acbMa15plus – MA15+
  • acbP – Programs that have been given a P classification by the Australian Communications and Media Authority. These programs are intended for preschool children.
  • acbPg – PG
  • acbR18plus – R18+
  • acbUnrated
contentDetails.contentRating.oflcRating string The video's Office of Film and Literature Classification (OFLC - New Zealand) rating.

Valid values for this property are:
  • oflcG – G
  • oflcM – M
  • oflcPg – PG
  • oflcR13 – R13
  • oflcR15 – R15
  • oflcR16 – R16
  • oflcR18 – R18
  • oflcUnrated
contentDetails.contentRating.fskRating string The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.

Valid values for this property are:
  • fsk0 – FSK 0
  • fsk12 – FSK 12
  • fsk16 – FSK 16
  • fsk18 – FSK 18
  • fsk6 – FSK 6
  • fskUnrated
contentDetails.contentRating.kmrbRating string The video's Korea Media Rating Board (영상물등급위원회) rating. The KMRB rates videos in South Korea.

Valid values for this property are:
  • kmrb12plus – 12세 이상 관람가
  • kmrb15plus – 15세 이상 관람가
  • kmrbAll – 전체관람가
  • kmrbR – 청소년 관람불가
  • kmrbTeenr
  • kmrbUnrated
contentDetails.contentRating.djctqRating string The video's Departamento de Justiça, Classificação, Qualificação e Títulos (DJCQT - Brazil) rating.

Valid values for this property are:
  • djctq10 – 10
  • djctq12 – 12
  • djctq14 – 14
  • djctq16 – 16
  • djctq18 – 18
  • djctqL – L
  • djctqUnrated
contentDetails.contentRating.russiaRating string The video's National Film Registry of the Russian Federation (MKRF - Russia) rating.

Valid values for this property are:
  • russia0 – 0+
  • russia12 – 12+
  • russia16 – 16+
  • russia18 – 18+
  • russia6 – 6+
  • russiaUnrated
contentDetails.contentRating.rtcRating string The video's General Directorate of Radio, Television and Cinematography (Mexico) rating.

Valid values for this property are:
  • rtcA – A
  • rtcAa – AA
  • rtcB – B
  • rtcB15 – B15
  • rtcC – C
  • rtcD – D
  • rtcUnrated
contentDetails.contentRating.ytRating string A rating that YouTube uses to identify age-restricted content.

Valid values for this property are:
  • ytAgeRestricted
contentDetails.contentRating.mibacRating string Rating system in Italy - Ministero dei Beni e delle Attivita Culturali e del Turismo

Valid values for this property are:
  • mibacT
  • mibacUnrated
  • mibacVap
  • mibacVm12
  • mibacVm14
  • mibacVm18
contentDetails.contentRating.catvRating string Rating system for Canadian TV - Canadian TV Classification System

Valid values for this property are:
  • catv14plus
  • catv18plus
  • catvC
  • catvC8
  • catvG
  • catvPg
  • catvUnrated
contentDetails.contentRating.catvfrRating string Rating system for French Canadian TV - Régie du cinema

Valid values for this property are:
  • catvfr13plus
  • catvfr16plus
  • catvfr18plus
  • catvfr8plus
  • catvfrG
  • catvfrUnrated
status object The status object contains information about the video's uploading, processing, and privacy statuses.
status.uploadStatus string The status of the uploaded video.

Valid values for this property are:
  • deleted
  • failed
  • processed
  • rejected
  • uploaded
status.failureReason string This value explains why a video failed to upload. This property is only present if the uploadStatus property indicates that the upload failed.

Valid values for this property are:
  • codec
  • conversion
  • emptyFile
  • invalidFile
  • tooSmall
  • uploadAborted
status.rejectionReason string This value explains why YouTube rejected an uploaded video. This property is only present if the uploadStatus property indicates that the upload was rejected.

Valid values for this property are:
  • claim
  • copyright
  • duplicate
  • inappropriate
  • length
  • termsOfUse
  • trademark
  • uploaderAccountClosed
  • uploaderAccountSuspended
status.privacyStatus string The video's privacy status.

Valid values for this property are:
  • private
  • public
  • unlisted
status.publishAt datetime The date and time when a private video is scheduled to be published. This property can only be set if the video's privacy status is private and the video has never been published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
status.license string The video's license.

Valid values for this property are:
  • creativeCommon
  • youtube
status.embeddable boolean This value indicates whether the video can be embedded on another website.
status.publicStatsViewable boolean This value indicates whether the extended video statistics on the video's watch page are publicly viewable. By default, those statistics are viewable, and statistics like a video's viewcount and ratings will still be publicly visible even if this property's value is set to false.
statistics object The statistics object contains statistics about the video.
statistics.viewCount unsigned long The number of times the video has been viewed.
statistics.likeCount unsigned long The number of users who have indicated that they liked the video.
statistics.dislikeCount unsigned long The number of users who have indicated that they disliked the video.
statistics.favoriteCount unsigned long The number of users who currently have the video marked as a favorite video.
statistics.commentCount unsigned long The number of comments for the video.
player object The player object contains information that you would use to play the video in an embedded player.
player.embedHtml string An <iframe> tag that embeds a player that will play the video.
topicDetails object The topicDetails object encapsulates information about Freebase topics associated with the video.
topicDetails.topicIds[] list A list of Freebase topic IDs that are centrally associated with the video. These are topics that are centrally featured in the video, and it can be said that the video is mainly about each of these. You can retrieve information about each topic using the Freebase Topic API.
topicDetails.relevantTopicIds[] list Similar to topic_id, except that these topics are merely relevant to the video. These are topics that may be mentioned in, or appear in the video. You can retrieve information about each topic using Freebase Topic API.
recordingDetails object The recordingDetails object encapsulates information about the location, date and address where the video was recorded.
recordingDetails.locationDescription string The text description of the location where the video was recorded.
recordingDetails.location object The geolocation information associated with the video.
recordingDetails.location.latitude double Latitude in degrees.
recordingDetails.location.longitude double Longitude in degrees.
recordingDetails.location.altitude double Altitude above the reference ellipsoid, in meters.
recordingDetails.recordingDate datetime The date and time when the video was recorded. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
fileDetails object The fileDetails object encapsulates information about the video file that was uploaded to YouTube, including the file's resolution, duration, audio and video codecs, stream bitrates, and more. This data can only be retrieved by the video owner.

The fileDetails object will only be returned if the processingDetails.fileAvailability property has a value of available.
fileDetails.fileName string The uploaded file's name. This field is present whether a video file or another type of file was uploaded.
fileDetails.fileSize unsigned long The uploaded file's size in bytes. This field is present whether a video file or another type of file was uploaded.
fileDetails.fileType string The uploaded file's type as detected by YouTube's video processing engine. Currently, YouTube only processes video files, but this field is present whether a video file or another type of file was uploaded.

Valid values for this property are:
  • archive – The file is an archive file, such as a .zip archive.
  • audio – The file is a known audio file type, such as an .mp3 file.
  • document – The file is a document or text file, such as a MS Word document.
  • image – The file is an image file, such as a .jpeg image.
  • other – The file is another non-video file type.
  • project – The file is a video project file, such as a Microsoft Windows Movie Maker project, that does not contain actual video data.
  • video – The file is a known video file type, such as an .mp4 file.
fileDetails.container string The uploaded video file's container format.
fileDetails.videoStreams[] list A list of video streams contained in the uploaded video file. Each item in the list contains detailed metadata about a video stream.
fileDetails.videoStreams[].widthPixels unsigned integer The encoded video content's width in pixels. You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.
fileDetails.videoStreams[].heightPixels unsigned integer The encoded video content's height in pixels.
fileDetails.videoStreams[].frameRateFps double The video stream's frame rate, in frames per second.
fileDetails.videoStreams[].aspectRatio double The video content's display aspect ratio, which specifies the aspect ratio in which the video should be displayed.
fileDetails.videoStreams[].codec string The video codec that the stream uses.
fileDetails.videoStreams[].bitrateBps unsigned long The video stream's bitrate, in bits per second.
fileDetails.videoStreams[].rotation string The amount that YouTube needs to rotate the original source content to properly display the video.

Valid values for this property are:
  • clockwise – The video needs to be rotated 90 degrees clockwise.
  • counterClockwise – The video needs to be rotated 90 degrees counter-clockwise.
  • none – The video does not need to be rotated.
  • other – The video needs to be rotated in some other, non-trivial way.
  • upsideDown – The video needs to be rotated upside down.
fileDetails.videoStreams[].vendor string A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code.
fileDetails.audioStreams[] list A list of audio streams contained in the uploaded video file. Each item in the list contains detailed metadata about an audio stream.
fileDetails.audioStreams[].channelCount unsigned integer The number of audio channels that the stream contains.
fileDetails.audioStreams[].codec string The audio codec that the stream uses.
fileDetails.audioStreams[].bitrateBps unsigned long The audio stream's bitrate, in bits per second.
fileDetails.audioStreams[].vendor string A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code.
fileDetails.durationMs unsigned long The length of the uploaded video in milliseconds.
fileDetails.bitrateBps unsigned long The uploaded video file's combined (video and audio) bitrate in bits per second.
fileDetails.recordingLocation object Geographic coordinates that identify the place where the uploaded video was recorded. Coordinates are defined using WGS 84.
fileDetails.recordingLocation.latitude double Latitude in degrees.
fileDetails.recordingLocation.longitude double Longitude in degrees.
fileDetails.recordingLocation.altitude double Altitude above the reference ellipsoid, in meters.
fileDetails.creationTime string The date and time when the uploaded video file was created. The value is specified in ISO 8601 format. Currently, the following ISO 8601 formats are supported:
  • Date only: YYYY-MM-DD
  • Naive time: YYYY-MM-DDTHH:MM:SS
  • Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM
processingDetails object The processingProgress object encapsulates information about YouTube's progress in processing the uploaded video file. The properties in the object identify the current processing status and an estimate of the time remaining until YouTube finishes processing the video. This part also indicates whether different types of data or content, such as file details or thumbnail images, are available for the video.

The processingProgress object is designed to be polled so that the video uploaded can track the progress that YouTube has made in processing the uploaded video file. This data can only be retrieved by the video owner.
processingDetails.processingStatus string The video's processing status. This value indicates whether YouTube was able to process the video or if the video is still being processed.

Valid values for this property are:
  • failed – Video processing has failed. See ProcessingFailureReason.
  • processing – Video is currently being processed. See ProcessingProgress.
  • succeeded – Video has been successfully processed.
  • terminated – Processing information is no longer available.
processingDetails.processingProgress object The processingProgress object contains information about the progress YouTube has made in processing the video. The values are really only relevant if the video's processing status is processing.
processingDetails.processingProgress.partsTotal unsigned long An estimate of the total number of parts that need to be processed for the video. The number may be updated with more precise estimates while YouTube processes the video.
processingDetails.processingProgress.partsProcessed unsigned long The number of parts of the video that YouTube has already processed. You can estimate the percentage of the video that YouTube has already processed by calculating:
100 * parts_processed / parts_total

Note that since the estimated number of parts could increase without a corresponding increase in the number of parts that have already been processed, it is possible that the calculated progress could periodically decrease while YouTube processes a video.
processingDetails.processingProgress.timeLeftMs unsigned long An estimate of the amount of time, in millseconds, that YouTube needs to finish processing the video.
processingDetails.processingFailureReason string The reason that YouTube failed to process the video. This property will only have a value if the processingStatus property's value is failed.

Valid values for this property are:
  • other – Some other processing component has failed.
  • streamingFailed – Video could not be sent to streamers.
  • transcodeFailed – Content transcoding has failed.
  • uploadFailed – File delivery has failed.
processingDetails.fileDetailsAvailability string This value indicates whether file details are available for the uploaded video. You can retrieve a video's file details by requesting the fileDetails part in your videos.list() request.
processingDetails.processingIssuesAvailability string This value indicates whether the video processing engine has generated suggestions that might improve YouTube's ability to process the the video, warnings that explain video processing problems, or errors that cause video processing problems. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.
processingDetails.tagSuggestionsAvailability string This value indicates whether keyword (tag) suggestions are available for the video. Tags can be added to a video's metadata to make it easier for other users to find the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.
processingDetails.editorSuggestionsAvailability string This value indicates whether video editing suggestions, which might improve video quality or the playback experience, are available for the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.
processingDetails.thumbnailsAvailability string This value indicates whether thumbnail images have been generated for the video.
suggestions object The suggestions object encapsulates suggestions that identify opportunities to improve the video quality or the metadata for the uploaded video. This data can only be retrieved by the video owner.

The suggestions object will only be returned if the processingDetails.tagSuggestionsAvailability property or the processingDetails.editorSuggestionsAvailability property has a value of available.
suggestions.processingErrors[] list A list of errors that will prevent YouTube from successfully processing the uploaded video. These errors indicate that, regardless of the video's current processing status, eventually, that status will almost certainly be failed.

Valid values for this property are:
  • archiveFile – An archive file (e.g., a ZIP archive).
  • audioFile – File contains audio only (e.g., an MP3 file).
  • docFile – Document or text file (e.g., MS Word document).
  • imageFile – Image file (e.g., a JPEG image).
  • notAVideoFile – Other non-video file.
  • projectFile – Movie project file (e.g., Microsoft Windows Movie Maker project).
suggestions.processingWarnings[] list A list of reasons why YouTube may have difficulty transcoding the uploaded video or that might result in an erroneous transcoding. These warnings are generated before YouTube actually processes the uploaded video file. In addition, they identify issues that do not necessarily indicate that video processing will fail but that still might cause problems such as sync issues, video artifacts, or a missing audio track.

Valid values for this property are:
  • hasEditlist – Edit lists are not currently supported.
  • inconsistentResolution – Conflicting container and stream resolutions.
  • problematicAudioCodec – Audio codec that is known to cause problems was used.
  • problematicVideoCodec – Video codec that is known to cause problems was used.
  • unknownAudioCodec – Unrecognized audio codec, transcoding is likely to fail.
  • unknownContainer – Unrecognized file format, transcoding is likely to fail.
  • unknownVideoCodec – Unrecognized video codec, transcoding is likely to fail.
suggestions.processingHints[] list A list of suggestions that may improve YouTube's ability to process the video.

Valid values for this property are:
  • nonStreamableMov – The MP4 file is not streamable, this will slow down the processing.
  • sendBestQualityVideo – Probably a better quality version of the video exists.
suggestions.tagSuggestions[] list A list of keyword tags that could be added to the video's metadata to increase the likelihood that users will locate your video when searching or browsing on YouTube.
suggestions.tagSuggestions[].tag string The keyword tag suggested for the video.
suggestions.tagSuggestions[].categoryRestricts[] list A set of video categories for which the tag is relevant. You can use this information to display appropriate tag suggestions based on the video category that the video uploader associates with the video. By default, tag suggestions are relevant for all categories if there are no restricts defined for the keyword.
suggestions.editorSuggestions[] list A list of video editing operations that might improve the video quality or playback experience of the uploaded video.

Valid values for this property are:
  • audioQuietAudioSwap – The audio track appears silent and could be swapped with a better quality one.
  • videoAutoLevels – Picture brightness levels seem off and could be corrected.
  • videoCrop – Margins (mattes) detected around the picture could be cropped.
  • videoStabilize – The video appears shaky and could be stabilized.
liveStreamingDetails object The liveStreamingDetails object contains metadata about a live video broadcast. The object will only be present in a video resource if the video is an upcoming, live, or completed live broadcast.
liveStreamingDetails.actualStartTime datetime The time that the broadcast actually started. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast begins.
liveStreamingDetails.actualEndTime datetime The time that the broadcast actually ended. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. This value will not be available until the broadcast is over.
liveStreamingDetails.scheduledStartTime datetime The time that the broadcast is scheduled to begin. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
liveStreamingDetails.scheduledEndTime datetime The time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. If the value is empty or the property is not present, then the broadcast is scheduled to continue indefinitely.
liveStreamingDetails.concurrentViewers unsigned long The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.