YouTube Live Streaming API - Errors

This document identifies the different types of errors that YouTube Live Streaming API operations can return. You can also find a list of errors for any individual method in the reference documentation for that method.

fanFundingEvents

The following tables identify error messages that the API returns in response to calls related to fanFundingEvents resources.

fanFundingEvents.list

Error type Error detail Description
forbidden (403) insufficientPermissions You do not have the necessary permissions to view the channel's Fan Funding events.
invalidValue (400) fanFundingNotEnabledForChannelId The channel does not have Fan Funding enabled.

liveBroadcasts

The following tables identify error messages that the API returns in response to calls related to liveBroadcasts resources.

liveBroadcasts.bind

Error type Error detail Description
backendError internalError An internal error occurred during the bind.
forbidden (403) liveBroadcastBindingNotAllowed The current status of the live broadcast does not allow it to be bound to a stream.
insufficientPermissions insufficientLivePermissions The request is not authorized to retrieve the specified live broadcast. For more information, see Implementing OAuth2 authentication.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
notFound (404) liveBroadcastNotFound The broadcast specified by the id parameter does not exist.
notFound (404) liveStreamNotFound The stream specified by the streamId parameter does not exist.
rateLimitExceeded userRequestsExceedRateLimit The user has sent too many requests in a given timeframe.
required (400) idRequired The required id parameter must identify the broadcast to bind.

liveBroadcasts.delete

Error type Error detail Description
forbidden (403) liveBroadcastDeletionNotAllowed The current status of the live broadcast does not allow it to be deleted.
insufficientPermissions insufficientLivePermissions The request is not authorized to delete the specified live broadcast. For more information, see Implementing OAuth2 authentication.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
notFound (404) liveBroadcastNotFound The id property specified in the liveBroadcast resource did not identify a broadcast.

liveBroadcasts.insert

Error type Error detail Description
insufficientPermissions insufficientLivePermissions The request is not authorized to create the live broadcast.
insufficientPermissions livePermissionBlocked The user that authorized the request is unable to stream live video on YouTube at this time. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
invalidValue (400) invalidDescription The liveBroadcast resource did not specify a valid value for the snippet.description property. The property's value can contain up to 5000 characters.
invalidValue (400) invalidPrivacyStatus The liveBroadcast resource contained an invalid value for the status.privacy_status property.
invalidValue (400) invalidScheduledEndTime The liveBroadcast resource contained an invalid value for the snippet.scheduledEndTime property. The scheduled end time must follow the scheduled start time.
invalidValue (400) invalidScheduledStartTime The liveBroadcast resource contained an invalid value for the snippet.scheduledStartTime property. The scheduled start time must be in the future and close enough to the current date that a broadcast could be reliably scheduled at that time.
invalidValue (400) invalidTitle The liveBroadcast resource did not specify a valid value for the snippet.title property. The property's value must be between 1 and 100 characters long.
rateLimitExceeded userRequestsExceedRateLimit The user has sent too many requests in a given timeframe.
required (400) privacyStatusRequired The liveBroadcast resource must specify a privacy status. See valid privacyStatus values.
required (400) scheduledEndTimeRequired The liveBroadcast resource must specify the snippet.scheduledEndTime property.
required (400) scheduledStartTimeRequired The liveBroadcast resource must specify the snippet.scheduledStartTime property.
required (400) titleRequired The liveBroadcast resource must specify the snippet.title property.

liveBroadcasts.list

Error type Error detail Description
insufficientPermissions insufficientLivePermissions The request is not authorized to retrieve the live broadcast.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.

liveBroadcasts.transition

Error type Error detail Description
backendError errorExecutingTransition An error occurred while changing the broadcast's status.
forbidden (403) errorStreamInactive The requested transition is not allowed when the stream that is bound to the broadcast is inactive.
forbidden (403) invalidTransition The live broadcast can't transition from its current status to the requested status.
forbidden (403) redundantTransition The live broadcast is already in the requested status or processing to the requested status.
insufficientPermissions insufficientLivePermissions The request is not authorized to transition the live broadcast.
insufficientPermissions livePermissionBlocked The user that authorized the request is unable to stream live video on YouTube at this time. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
notFound (404) liveBroadcastNotFound The broadcast specified by the id parameter does not exist.
required (400) idRequired The required id parameter must identify the broadcast whose status you want to transition.
required (400) statusRequired The API request must specify a value for the status parameter.

liveBroadcasts.update

Error type Error detail Description
forbidden (403) closedCaptionsTypeModificationNotAllowed The contentDetails.closedCaptionsType value can only be modified when the broadcast is in the created or ready status.
forbidden (403) enableClosedCaptionsModificationNotAllowed The contentDetails.enableClosedCaptions value can only be modified when the broadcast's status is created or ready.
forbidden (403) enableContentEncryptionModificationNotAllowed The contentDetails.enableContentEncryption value can be modified only when the broadcast's status is created or ready.
forbidden (403) enableDvrModificationNotAllowed The contentDetails.enableDvr value can be modified only when the broadcast's status is created or ready.
forbidden (403) enableMonitorStreamModificationNotAllowed The contentDetails.monitorStream.enableMonitorStream value can be modified only when the broadcast's status is created or ready.
forbidden (403) recordFromStartModificationNotAllowed The contentDetails.recordFromStart value can be modified only when the broadcast's status is created or ready.
forbidden (403) startWithSlateModificationNotAllowed The contentDetails.startWithSlate value can be modified only when the broadcast's status is created or ready.
insufficientPermissions insufficientLivePermissions The request is not authorized to update the specified live broadcast. For more information, see Implementing OAuth2 authentication.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
invalidValue (400) invalidDescription The liveBroadcast resource did not specify a valid value for the snippet.description property. snippet.description can contain up to 5000 characters.
invalidValue (400) invalidEnableClosedCaptions In the liveBroadcast resource, the value of the contentDetails.enableClosedCaptions property is incompatible with the value of the contentDetails.closedCaptionType setting. Modify the resource to only include one of the two properties, and then resubmit the request.
invalidValue (400) invalidPrivacyStatus The liveBroadcast resource did not specify a valid privacy status. See valid privacyStatus values.
invalidValue (400) invalidScheduledEndTime The liveBroadcast resource contained an invalid value for the snippet.scheduledEndTime property. The scheduled end time must follow the scheduled start time.
invalidValue (400) invalidScheduledStartTime The liveBroadcast resource contained an invalid value for the snippet.scheduledStartTime property. The scheduled start time must be in the future.
invalidValue (400) invalidTitle The liveBroadcast resource did not specify a valid value for the snippet.title property. snippet.title must be between 1 and 100 characters long.
notFound (404) liveBroadcastNotFound The id property specified in the liveBroadcast resource did not identify a broadcast.
required (400) broadcastStreamDelayMsRequired The liveBroadcast resource did not specify the contentDetails.monitorStream.broadcastStreamDelayMs property.
required (400) enableContentEncryptionRequired The liveBroadcast resource did not specify the contentDetails.enableContentEncryption property.
required (400) enableDvrRequired The liveBroadcast resource did not specify the contentDetails.enableDvr property.
required (400) enableEmbedRequired The liveBroadcast resource did not specify the contentDetails.enableEmbed property.
required (400) enableMonitorStreamRequired The liveBroadcast resource did not specify the contentDetails.monitorStream.enableMonitorStream property.
required (400) idRequired The liveBroadcast resource must include and specify a value for the id property.
required (400) privacyStatusRequired The liveBroadcast resource did not specify a privacy status. See for valid privacyStatus values.
required (400) recordFromStartRequired The liveBroadcast resource did not specify the contentDetails.recordFromStart property.
required (400) scheduledEndTimeRequired The liveBroadcast resource did not specify the snippet.scheduledEndTime property.
required (400) scheduledStartTimeRequired The liveBroadcast resource did not specify the snippet.scheduledStartTime property.
required (400) startWithSlateRequired The liveBroadcast resource did not specify the contentDetails.startWithSlate property.
required (400) titleRequired The liveBroadcast resource did not specify the snippet.title property.

liveBroadcasts.control

Error type Error detail Description
backendError errorDisplaySlate An error occurred when executing the requested action.
forbidden (403) liveBroadcastControlNotAllowed The requested action is only allowed if the broadcast's status is live.
insufficientPermissions insufficientLivePermissions The user is not authorized to for the requested operation, possibly because the user does not have permission to stream live.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
invalidValue (400) conflictingTimeFields Only one of offsetTimeMs and walltime may be specified.
invalidValue (400) invalidOffsetTimeMs The offsetTimeMs parameter's value is invalid. The parameter value must be positive, but the parameter can only be specified if the broadcast's monitor stream is enabled.
invalidValue (400) invalidWalltime The walltime parameter's value is invalid.
notFound (404) liveBroadcastNotFound The broadcast specified by the id parameter does not exist.
required (400) actionRequired The API request needs to specify at least one action. At this time, the only supported action is the ability to enable or disable the slate.
required (400) idRequired The required id parameter must identify the broadcast that is being updated.

liveChatBans

The following tables identify error messages that the API returns in response to calls related to liveChatBans resources.

liveChatBans.delete

Error type Error detail Description
forbidden (403) forbidden The specified ban cannot be removed. This error can occur if the request is authorized by one moderator who is attempting to remove a ban on another moderator.
forbidden (403) insufficientPermissions You do not have the necessary permissions to remove the specified ban.
invalidValue (400) invalidLiveChatBanId The id parameter specifies an invalid value.
notFound (404) liveChatBanNotFound The specified ban cannot be found.

liveChatBans.insert

Error type Error detail Description
forbidden (403) insufficientPermissions You do not have the necessary permissions to ban a user from the specified live chat.
forbidden (403) liveChatBanInsertionNotAllowed The specified ban cannot be created. This error can occur if the request attempts to ban the chat owner or another moderator.
invalidValue (400) invalidChannelId The specified channel ID cannot be found.
invalidValue (400) invalidLiveChatId The snippet.liveChatId value specified in the request is invalid. Check the associated liveBroadcast resource to ensure that you have the correct value.
notFound (404) liveChatNotFound The specified live chat cannot be found. Check the associated liveBroadcast resource to ensure that you are setting the the snippet.liveChatId property to the correct value.
notFound (404) liveChatUserNotFound The live chat user you are trying to ban cannot be found.
required (400) bannedUserChannelIdRequired The liveChatBan resource submitted in the request body must specify a value for the snippet.bannedUserDetails.channelId property.
required (400) liveChatIdRequired The liveChatBan resource submitted in the request body must specify a value for the snippet.liveChatId property.

liveChatMessages

The following tables identify error messages that the API returns in response to calls related to liveChatMessages resources.

liveChatMessages.delete

Error type Error detail Description
forbidden (403) forbidden You do not have the permissions required to delete the specified message.
forbidden (403) modificationNotAllowed The specified liveChatMessage resource cannot be deleted. The id parameter might identify a message created by a moderator or another user whose messages cannot be deleted.
notFound (404) liveChatMessageNotFound The message that you are trying to delete cannot be found. Check the value of the id parameter to ensure it is correct.

liveChatMessages.insert

Error type Error detail Description
forbidden (403) forbidden You do not have the permissions required to create the specified message.
forbidden (403) liveChatDisabled The specified live chat has been disabled by the owner, which means messages cannot be added to the chat.
forbidden (403) liveChatEnded The specified live chat is no longer live.
invalidValue (400) messageTextInvalid The message text (snippet.textMessageDetails.messageText) is not valid.
notFound (404) liveChatNotFound The live chat identified in the API request does not exist. This error occurs if the chat has been deleted by the owner.
rateLimitExceeded rateLimitExceeded The user has posted too many chat messages in a given timeframe.
required (400) liveChatIdRequired The liveChatMessage resource must include and specify a value for the snippet.liveChatId property.
required (400) messageTextRequired The liveChatMessage resource must include and specify a value for the snippet.textMessageDetails.messageText property.
required (400) typeRequired The liveChatMessage resource must include and specify a value for the snippet.type property. Set the parameter value to text

liveChatMessages.list

Error type Error detail Description
forbidden (403) forbidden You do not have the permissions required to retrieve messages for the specified live chat.
forbidden (403) liveChatDisabled Live chat is not enabled for the specified broadcast.
forbidden (403) liveChatEnded The specified live chat is no longer live.
notFound (404) liveChatNotFound The live chat that you are trying to retrieve cannot be found. Check the value of the request's liveChatId parameter to ensure that it is correct.
rateLimitExceeded rateLimitExceeded The request was sent too quickly after the previous request. This error occurs when API requests to retrieve messages are being sent more frequently than YouTube's refresh rates, which unnecessarily wastes bandwidth and quota.

liveCuepoints

The following tables identify error messages that the API returns in response to calls related to liveCuepoints resources.

liveCuepoints.insert

Error type Error detail Description
invalidValue (400) conflictingTimeFields Only one of offsetTimeMs and walltime may be specified.

liveStreams

The following tables identify error messages that the API returns in response to calls related to liveStreams resources.

liveStreams.delete

Error type Error detail Description
forbidden (403) liveStreamDeletionNotAllowed The specified live stream cannot be deleted because it is bound to a broadcast that has still not completed.
insufficientPermissions insufficientLivePermissions The request is not authorized to delete the specified live stream. For more information, see Implementing OAuth2 authentication.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
notFound (404) liveStreamNotFound The specified live stream doesn't exist.

liveStreams.insert

Error type Error detail Description
insufficientPermissions insufficientLivePermissions The request is not authorized to create the specified live stream.
insufficientPermissions livePermissionBlocked The user that authorized the request is unable to stream live video on YouTube at this time. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
invalidValue (400) invalidDescription The snippet.description property's value in the liveStream resource can have up to 10000 characters.
invalidValue (400) invalidFormat The cdn.format property's value in the liveStream resource is invalid.
invalidValue (400) invalidFrameRate The cdn.frameRate property's value in the liveStream resource is invalid.
invalidValue (400) invalidIngestionType The cdn.ingestionType property's value in the liveStream resource is invalid.
invalidValue (400) invalidResolution The cdn.resolution property's value in the liveStream resource is invalid.
invalidValue (400) invalidTitle The snippet.title property's value in the liveStream resource must be between 1 and 128 characters long.
rateLimitExceeded userRequestsExceedRateLimit The user has sent too many requests in a given timeframe.
required (400) cdnRequired The liveStream resource must contain the cdn object.
required (400) formatRequired The liveStream resource must specify a value for either the cdn.format property or the cdn.frameRate and cdn.resolution properties. The API returns this error if you do not specify a value for any of the three properties.
required (400) frameRateRequired The API returns this error if you specify a value for the cdn.resolution property but not for the cdn.frameRate property.
required (400) ingestionTypeRequired The liveStream resource must specify a value for the cdn.ingestionType property>.
required (400) resolutionRequired The API returns this error if you specify a value for the cdn.frameRate property but not for the cdn.resolution property.
required (400) titleRequired The liveStream resource must specify a value for the snippet.title property.

liveStreams.list

Error type Error detail Description
insufficientPermissions insufficientLivePermissions The request is not authorized to retrieve the specified live stream.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.

liveStreams.update

Error type Error detail Description
forbidden (403) liveStreamModificationNotAllowed The specified live stream cannot be modified in its current state. For more information, see Life of a Broadcast.
forbidden (403) liveStreamModificationNotAllowed The API does not allow you to change the value of the cdn.format, cdn.frameRate, cdn.ingestionType, or cdn.resolution fields after the stream is created.
forbidden (403) liveStreamModificationNotAllowed The API does not allow you to change a reusable stream to be non-reusable, or vice versa. For more information, see Understanding Broadcasts and Streams.
insufficientPermissions insufficientLivePermissions The request is not authorized to update the specified live stream. For more information, see Implementing OAuth2 authentication.
insufficientPermissions liveStreamingNotEnabled The user that authorized the request is not enabled to stream live video on YouTube. The user can find more information at https://www.youtube.com/features.
invalidValue (400) invalidDescription The snippet.description property's value in the liveStream resource can have up to 10000 characters.
invalidValue (400) invalidTitle The snippet.title property's value in the liveStream resource must be between 1 and 128 characters long.
notFound (404) liveStreamNotFound The specified live stream doesn't exist.
required (400) formatRequired The liveStream resource must specify a value for the cdn.format property.
required (400) idRequired The liveStream resource must specify a value for the id property.
required (400) ingestionTypeRequired The liveStream resource must specify a value for the cdn.ingestionType property.
required (400) titleRequired The liveStream resource must specify a value for the snippet.title property.

sponsors

The following tables identify error messages that the API returns in response to calls related to sponsors resources.

sponsors.list

Error type Error detail Description
forbidden (403) insufficientPermissions You do not have the necessary permissions to view the channel's sponsors.
invalidValue (400) invalidValueInRequest The request contains an invalid value.
invalidValue (400) sponsorshipNotEnabledForChannelId The channel does not have sponsorships enabled.