# YouTube Data API . liveBroadcasts

## Instance Methods

Binds a YouTube broadcast to a stream or removes an existing binding between a broadcast and a stream. A broadcast can only be bound to one video stream.

Control the slate of the broadacast.

Deletes a broadcast.

Creates a broadcast.

Returns a list of YouTube broadcasts that match the API request parameters.

Retrieves the next page of results.

Changes the status of a YouTube live broadcast and initiates any processes associated with the new status. For example, when you transition a broadcast's status to testing, YouTube starts to transmit video to that broadcast's monitor stream.

Updates a broadcast. For example, you could modify the broadcast settings defined in the liveBroadcast resource's contentDetails object.

### Method Details

`bind(id, part, onBehalfOfContentOwner=None, streamId=None)`

    Binds a YouTube broadcast to a stream or removes an existing binding between a broadcast and a stream. A broadcast can only be bound to one video stream.

    Args:
      id: string, The id parameter specifies the unique ID of the broadcast that is being bound to a video stream. (required)
      part: string, The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status. (required)
      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner
      streamId: string, The streamId parameter specifies the unique ID of the video stream that is being bound to a broadcast. If this parameter is omitted, the API will remove any existing binding between the broadcast and a video stream.

    Returns:
      An object of the form:

        { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
        "status": { # The status object contains information about the event's status.
          "recordingStatus": "A String", # The broadcast's recording status.
          "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        },
        "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
        "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
          "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
          "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
              #
              #
              #
              # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
          "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
              #
              #
              #
              # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
          "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                #
                # You need to set this value to true if you intend to have a broadcast delay for your event.
                #
                # Note: This property cannot be updated once the broadcast is in the testing or live state.
          },
        },
        "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
          "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
          },
        },
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`control(id, part, onBehalfOfContentOwner=None, displaySlate=None, offsetTimeMs=None)`

    Control the slate of the broadacast.

    Args:
      id: string, The id parameter specifies the YouTube live broadcast ID for the resource that is being deleted. (required)
      part: string, The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status. (required)
      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner
      displaySlate: boolean, The displaySlate parameter specifies whether to enable or disable the slate.
      offsetTimeMs: string, The offsetTimeMs parameter specifies a point in time in the video when the specified action (e.g. display a slate) is executed. The property value identifies a positive time offset, in milliseconds, from the beginning of the monitor stream. Though measured in milliseconds, the value is actually an approximation, and YouTube will act as closely as possible to that time. If not specified, it indicates that the action should be performed as soon as possible. If your broadcast stream is not delayed, then it should not be specified. However, if your broadcast stream is delayed, then the parameter can specify the time when the operation should be executed. See the Getting started guide for more details. Note: The offset is measured from the time that the testing phase began.

    Returns:
      An object of the form:

        { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
        "status": { # The status object contains information about the event's status.
          "recordingStatus": "A String", # The broadcast's recording status.
          "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        },
        "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
        "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
          "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
          "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
              #
              #
              #
              # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
          "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
              #
              #
              #
              # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
          "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                #
                # You need to set this value to true if you intend to have a broadcast delay for your event.
                #
                # Note: This property cannot be updated once the broadcast is in the testing or live state.
          },
        },
        "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
          "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
          },
        },
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`delete(id, onBehalfOfContentOwner=None)`

    Deletes a broadcast.

    Args:
      id: string, The id parameter specifies the YouTube live broadcast ID for the resource that is being deleted. (required)
      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner

`insert(part=None, body, onBehalfOfContentOwner=None)`

    Creates a broadcast.

    Args:
      part: string, The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.

    The part properties that you can include in the parameter value are id, snippet, contentDetails, and status. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
      "status": { # The status object contains information about the event's status.
        "recordingStatus": "A String", # The broadcast's recording status.
        "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
        "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
      },
      "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
      "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
        "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
        "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
        "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
        "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
        "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
        "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
            #
            #
            #
            # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
        "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
            #
            #
            #
            # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
        "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
          "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
          "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
              #
              # You need to set this value to true if you intend to have a broadcast delay for your event.
              #
              # Note: This property cannot be updated once the broadcast is in the testing or live state.
        },
      },
      "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
        "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
        "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
        "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
        "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
          "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
        },
      },
      "etag": "A String", # Etag of this resource.
      "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
    }

      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner

    Returns:
      An object of the form:

        { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
        "status": { # The status object contains information about the event's status.
          "recordingStatus": "A String", # The broadcast's recording status.
          "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        },
        "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
        "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
          "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
          "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
              #
              #
              #
              # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
          "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
              #
              #
              #
              # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
          "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                #
                # You need to set this value to true if you intend to have a broadcast delay for your event.
                #
                # Note: This property cannot be updated once the broadcast is in the testing or live state.
          },
        },
        "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
          "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
          },
        },
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`list(part, broadcastStatus=None, pageToken=None, mine=None, maxResults=None, id=None)`

    Returns a list of YouTube broadcasts that match the API request parameters.

    Args:
      part: string, The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status. (required)
      broadcastStatus: string, The broadcastStatus parameter filters the API response to only include broadcasts with the specified status.
        Allowed values
          active - Return current live broadcasts.
          all - Return all broadcasts.
          completed - Return broadcasts that have already ended.
          upcoming - Return broadcasts that have not yet started.
      pageToken: string, The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.
      mine: boolean, The mine parameter can be used to instruct the API to only return broadcasts owned by the authenticated user. Set the parameter value to true to only retrieve your own broadcasts.
      maxResults: integer, The maxResults parameter specifies the maximum number of items that should be returned in the result set. Acceptable values are 0 to 50, inclusive. The default value is 5.
      id: string, The id parameter specifies a comma-separated list of YouTube broadcast IDs that identify the broadcasts being retrieved. In a liveBroadcast resource, the id property specifies the broadcast's ID.

    Returns:
      An object of the form:

        { # JSON template for list of broadcasts.
        "eventId": "A String", # Serialized EventId of the request which produced this response.
        "nextPageToken": "A String", # The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.
        "kind": "youtube#liveBroadcastList", # The type of the API response. For this operation, the value will be youtube#liveBroadcastList.
        "visitorId": "A String", # The visitorId identifies the visitor.
        "items": [ # A list of broadcasts that match the request criteria.
          { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
            "status": { # The status object contains information about the event's status.
              "recordingStatus": "A String", # The broadcast's recording status.
              "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
              "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
            },
            "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
            "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
              "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
              "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
              "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
              "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
              "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
              "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
                  #
                  #
                  #
                  # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
              "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
                  #
                  #
                  #
                  # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
              "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
                "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
                "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
                "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                    #
                    # You need to set this value to true if you intend to have a broadcast delay for your event.
                    #
                    # Note: This property cannot be updated once the broadcast is in the testing or live state.
              },
            },
            "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
              "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
              "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
              "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
              "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
              "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
              "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
              "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
              "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
              "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
                "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                  "height": 42, # (Optional) Height of the thumbnail image.
                },
                "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                  "height": 42, # (Optional) Height of the thumbnail image.
                },
                "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                  "height": 42, # (Optional) Height of the thumbnail image.
                },
                "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                  "height": 42, # (Optional) Height of the thumbnail image.
                },
                "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                  "height": 42, # (Optional) Height of the thumbnail image.
                },
              },
            },
            "etag": "A String", # Etag of this resource.
            "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
          },
        ],
        "etag": "A String", # The ETag of the response.
        "prevPageToken": "A String", # The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.
        "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # The pageInfo object encapsulates paging information for the result set.
          "totalResults": 42, # The total number of results in the result set.
          "resultsPerPage": 42, # The number of results included in the API response.
        },
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`transition(broadcastStatus, id, part, onBehalfOfContentOwner=None)`

    Changes the status of a YouTube live broadcast and initiates any processes associated with the new status. For example, when you transition a broadcast's status to testing, YouTube starts to transmit video to that broadcast's monitor stream.

    Args:
      broadcastStatus: string, The broadcastStatus parameter identifies the state to which the broadcast is changing. (required)
        Allowed values
          complete - The broadcast is over. YouTube stops transmitting video.
          live - The broadcast is visible to its audience. YouTube transmits video to the broadcast's monitor stream and its broadcast stream.
          testing - Start testing the broadcast. YouTube transmits video to the broadcast's monitor stream. Note that you can only transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream property is set to true.
      id: string, The id parameter specifies the unique ID of the broadcast that is transitioning to another status. (required)
      part: string, The part parameter specifies a comma-separated list of one or more liveBroadcast resource properties that the API response will include. The part names that you can include in the parameter value are id, snippet, contentDetails, and status. (required)
      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner

    Returns:
      An object of the form:

        { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
        "status": { # The status object contains information about the event's status.
          "recordingStatus": "A String", # The broadcast's recording status.
          "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        },
        "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
        "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
          "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
          "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
              #
              #
              #
              # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
          "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
              #
              #
              #
              # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
          "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                #
                # You need to set this value to true if you intend to have a broadcast delay for your event.
                #
                # Note: This property cannot be updated once the broadcast is in the testing or live state.
          },
        },
        "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
          "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
          },
        },
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`update(part=None, body, onBehalfOfContentOwner=None)`

    Updates a broadcast. For example, you could modify the broadcast settings defined in the liveBroadcast resource's contentDetails object.

    Args:
      part: string, The part parameter serves two purposes in this operation. It identifies the properties that the write operation will set as well as the properties that the API response will include.

    The part properties that you can include in the parameter value are id, snippet, contentDetails, and status.

    Note that this method will override the existing values for all of the mutable properties that are contained in any parts that the parameter value specifies. For example, a broadcast's privacy status is defined in the status part. As such, if your request is updating a private or unlisted broadcast, and the request's part parameter value includes the status part, the broadcast's privacy setting will be updated to whatever value the request body specifies. If the request body does not specify a value, the existing privacy setting will be removed and the broadcast will revert to the default privacy setting. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
      "status": { # The status object contains information about the event's status.
        "recordingStatus": "A String", # The broadcast's recording status.
        "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
        "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
      },
      "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
      "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
        "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
        "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
        "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
        "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
        "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
        "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
            #
            #
            #
            # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
        "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
            #
            #
            #
            # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
        "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
          "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
          "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
              #
              # You need to set this value to true if you intend to have a broadcast delay for your event.
              #
              # Note: This property cannot be updated once the broadcast is in the testing or live state.
        },
      },
      "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
        "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
        "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
        "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
        "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
        "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
          "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
          "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
            "height": 42, # (Optional) Height of the thumbnail image.
          },
        },
      },
      "etag": "A String", # Etag of this resource.
      "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
    }

      onBehalfOfContentOwner: string, USE_DESCRIPTION --- channels:list:onBehalfOfContentOwner

    Returns:
      An object of the form:

        { # A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.
        "status": { # The status object contains information about the event's status.
          "recordingStatus": "A String", # The broadcast's recording status.
          "privacyStatus": "A String", # The broadcast's privacy status. Note that the broadcast represents exactly one YouTube video, so the privacy settings are identical to those supported for videos. In addition, you can set this field by modifying the broadcast resource or by setting the privacyStatus field of the corresponding video resource.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        },
        "kind": "youtube#liveBroadcast", # The kind, fixed to "youtube#liveBroadcast".
        "contentDetails": { # Detailed settings of a broadcast. # The contentDetails object contains information about the event's video content, such as whether the content can be shown in an embedded video player or if it will be archived and therefore available for viewing after the event has concluded.
          "startWithSlate": True or False, # This setting indicates whether the broadcast should automatically begin with an in-stream slate when you update the broadcast's status to live. After updating the status, you then need to send a liveCuepoints.insert request that sets the cuepoint's eventState to end to remove the in-stream slate and make your broadcast stream visible to viewers.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "enableEmbed": True or False, # This setting indicates whether the broadcast video can be played in an embedded player. If you choose to archive the video (using the enableArchive property), this setting will also apply to the archived video.
          "enableClosedCaptions": True or False, # This setting indicates whether closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API.
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "recordFromStart": True or False, # Automatically start recording after the event goes live. The default value for this property is true.
              #
              #
              #
              # Important: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.
          "enableDvr": True or False, # This setting determines whether viewers can access DVR controls while watching the video. DVR controls enable the viewer to control the video playback experience by pausing, rewinding, or fast forwarding content. The default value for this property is true.
              #
              #
              #
              # Important: You must set the value to true and also set the enableArchive property's value to true if you want to make playback available immediately after the broadcast ends.
          "monitorStream": { # Settings and Info of the monitor stream # The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "enableMonitorStream": True or False, # This value determines whether the monitor stream is enabled for the broadcast. If the monitor stream is enabled, then YouTube will broadcast the event content on a special stream intended only for the broadcaster's consumption. The broadcaster can use the stream to review the event content and also to identify the optimal times to insert cuepoints.
                #
                # You need to set this value to true if you intend to have a broadcast delay for your event.
                #
                # Note: This property cannot be updated once the broadcast is in the testing or live state.
          },
        },
        "snippet": { # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "actualEndTime": "A String", # The date and time that the broadcast actually ended. This information is only available once the broadcast's state is complete. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "description": "A String", # The broadcast's description. As with the title, you can set this field by modifying the broadcast resource or by setting the description field of the corresponding video resource.
          "title": "A String", # The broadcast's title. Note that the broadcast represents exactly one YouTube video. You can set this field by modifying the broadcast resource or by setting the title field of the corresponding video resource.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "publishedAt": "A String", # The date and time that the broadcast was added to YouTube's live broadcast schedule. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "actualStartTime": "A String", # The date and time that the broadcast actually started. This information is only available once the broadcast's state is live. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "thumbnails": { # Internal representation of thumbnails for a YouTube resource. # A map of thumbnail images associated with the broadcast. For each nested object in this object, the key is the name of the thumbnail image, and the value is an object that contains other information about the thumbnail.
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
              "height": 42, # (Optional) Height of the thumbnail image.
            },
          },
        },
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }