Captions: download

Downloads a caption track. The caption track is returned in its original format unless the request specifies a value for the tfmt parameter and in its original language unless the request specifies a value for the tlang parameter.

Quota impact: A call to this method has a quota cost of 200 units.

Common use cases


HTTP request



This request requires authorization with at least one of the following scopes (read more about authentication and authorization).



The table below lists the parameters that this query supports. All of the parameters listed are query parameters.

Required parameters
id string
The id parameter identifies the caption track that is being retrieved. The value is a caption track ID as identified by the id property in a caption resource.
Optional parameters
onBehalfOfContentOwner string
This parameter can only be used in a properly authorized request. Note: This parameter is intended exclusively for YouTube content partners.

The onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.
tfmt string
The tfmt parameter specifies that the caption track should be returned in a specific format. If the parameter is not included in the request, the track is returned in its original format.

Supported values are:
  • sbv – SubViewer subtitle
  • scc – Scenarist Closed Caption format
  • srt – SubRip subtitle
  • ttml – Timed Text Markup Language caption
  • vtt – Web Video Text Tracks caption
tlang string
The tlang parameter specifies that the API response should return a translation of the specified caption track. The parameter value is an ISO 639-1 two-letter language code that identifies the desired caption language. The translation is generated by using machine translation, such as Google Translate.

Request body

Do not provide a request body when calling this method.


If successful, this method returns a binary file. The Content-Type header for the response is application/octet-stream.


The table below identifies error messages that the API could return in response to a call to this method. Please see the error message documentation for more detail.

Error type Error detail Description
forbidden (403) forbidden The permissions associated with the request are not sufficient to download the caption track. The request might not be properly authorized, or the video order might not have enabled third-party contributions for this caption.
invalidValue (400) couldNotConvert The caption track data could not be converted to the requested language and/or format. Ensure that the requested tfmt and tlang values are valid, and that the snippet.status of the requested caption track is not failed.
notFound (404) captionNotFound The caption track could not be found. Check the value of the request's id parameter to ensure that it is correct.

Try it!

Use the APIs Explorer to call this API and see the API request and response.