# YouTube Data API v3 . liveBroadcasts

## Instance Methods

Bind a broadcast to a stream.

Close httplib2 connections.

Slate and recording control of the live broadcast. Support actions: slate on/off, recording start/stop/pause/resume. Design doc: goto/yt-api-liveBroadcast-control

Delete a given broadcast.

Inserts a new stream for the authenticated user.

Retrieve the list of broadcasts associated with the given channel.

Retrieves the next page of results.

Transition a broadcast to a given status.

Updates an existing broadcast for the authenticated user.

### Method Details

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

    Bind a broadcast to a stream.

    Args:
      id: string, Broadcast to bind to the 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) (repeated)
      streamId: string, Stream to bind, if not set unbind the current one.
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
        "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
          "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "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.
            "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.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          },
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
          "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
          "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.
          "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.
          "closedCaptionsType": "A String",
          "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
          "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
          "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
          "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
          "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.
          "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.
          "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        },
        "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "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.
          "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 format.
          "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 format.
          "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 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.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "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.
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
          },
          "liveChatId": "A String", # The id of the live chat for this broadcast.
          "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
        },
        "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
          "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
        },
        "etag": "A String", # Etag of this resource.
        "status": { # Live broadcast state. # The status object contains information about the event's status.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
          "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
          "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
          "recordingStatus": "A String", # The broadcast's recording status.
          "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
          "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.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`close()`

    Close httplib2 connections.

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

    Slate and recording control of the live broadcast. Support actions: slate on/off, recording start/stop/pause/resume. Design doc: goto/yt-api-liveBroadcast-control

    Args:
      id: string, Broadcast to operate. (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) (repeated)
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      displaySlate: boolean, Whether display or hide slate.
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      offsetTimeMs: string, The exact time when the actions (e.g. slate on) are executed. It is an offset from the first frame of the monitor stream. If not set, it means "now" or ASAP. This field should not be set if the monitor stream is disabled, otherwise an error will be returned.
      walltime: string, The wall clock time at which the action should be executed. Only one of offset_time_ms and walltime may be set at a time.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
        "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
          "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "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.
            "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.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          },
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
          "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
          "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.
          "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.
          "closedCaptionsType": "A String",
          "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
          "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
          "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
          "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
          "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.
          "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.
          "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        },
        "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "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.
          "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 format.
          "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 format.
          "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 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.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "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.
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
          },
          "liveChatId": "A String", # The id of the live chat for this broadcast.
          "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
        },
        "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
          "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
        },
        "etag": "A String", # Etag of this resource.
        "status": { # Live broadcast state. # The status object contains information about the event's status.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
          "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
          "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
          "recordingStatus": "A String", # The broadcast's recording status.
          "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
          "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.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`delete(id, onBehalfOfContentOwner=None, onBehalfOfContentOwnerChannel=None, x__xgafv=None)`

    Delete a given broadcast.

    Args:
      id: string, Broadcast to delete. (required)
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

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

    Inserts a new stream for the authenticated user.

    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) (repeated)
      body: object, The request body.
        The object takes the form of:

    { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
      "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
        "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
        "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
        "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.
          "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.
          "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
          "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
        },
        "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
        "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
        "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
        "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.
        "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.
        "closedCaptionsType": "A String",
        "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
        "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
        "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
        "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.
        "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.
        "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
      },
      "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
        "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.
        "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 format.
        "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 format.
        "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 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.
        "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
        "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
        "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.
          "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
        },
        "liveChatId": "A String", # The id of the live chat for this broadcast.
        "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
        "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
      },
      "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
        "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
      },
      "etag": "A String", # Etag of this resource.
      "status": { # Live broadcast state. # The status object contains information about the event's status.
        "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
        "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
        "recordingStatus": "A String", # The broadcast's recording status.
        "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
        "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.
      },
      "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
    }

      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
        "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
          "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "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.
            "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.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          },
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
          "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
          "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.
          "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.
          "closedCaptionsType": "A String",
          "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
          "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
          "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
          "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
          "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.
          "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.
          "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        },
        "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "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.
          "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 format.
          "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 format.
          "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 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.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "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.
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
          },
          "liveChatId": "A String", # The id of the live chat for this broadcast.
          "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
        },
        "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
          "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
        },
        "etag": "A String", # Etag of this resource.
        "status": { # Live broadcast state. # The status object contains information about the event's status.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
          "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
          "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
          "recordingStatus": "A String", # The broadcast's recording status.
          "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
          "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.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

`list(part, onBehalfOfContentOwner=None, pageToken=None, onBehalfOfContentOwnerChannel=None, maxResults=None, id=None, broadcastStatus=None, mine=None, broadcastType=None, x__xgafv=None)`

    Retrieve the list of broadcasts associated with the given channel.

    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, status and statistics. (required) (repeated)
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      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.
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      maxResults: integer, The *maxResults* parameter specifies the maximum number of items that should be returned in the result set.
      id: string, Return broadcasts with the given ids from Stubby or Apiary. (repeated)
      broadcastStatus: string, Return broadcasts with a certain status, e.g. active broadcasts.
        Allowed values
          broadcastStatusFilterUnspecified -
          all - Return all broadcasts.
          active - Return current live broadcasts.
          upcoming - Return broadcasts that have not yet started.
          completed - Return broadcasts that have already ended.
      mine: boolean, A parameter
      broadcastType: string, Return only broadcasts with the selected type.
        Allowed values
          broadcastTypeFilterUnspecified -
          all - Return all broadcasts.
          event - Return only scheduled event broadcasts.
          persistent - Return only persistent broadcasts.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        {
        "visitorId": "A String", # The visitorId identifies the visitor.
        "kind": "youtube#liveBroadcastListResponse", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveBroadcastListResponse".
        "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.
        "etag": "A String", # Etag of this resource.
        "tokenPagination": { # Stub token pagination template to suppress results.
        },
        "eventId": "A String", # Serialized EventId of the request which produced this 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.
        "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.
            "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
              "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
              "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
              "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.
                "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.
                "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
                "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
              },
              "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
              "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
              "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
              "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.
              "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.
              "closedCaptionsType": "A String",
              "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
              "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
              "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
              "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
              "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.
              "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.
              "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
            },
            "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
              "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.
              "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 format.
              "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 format.
              "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 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.
              "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
              "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
              "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.
                "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
                  "height": 42, # (Optional) Height of the thumbnail image.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                },
                "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
                  "height": 42, # (Optional) Height of the thumbnail image.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                },
                "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
                  "height": 42, # (Optional) Height of the thumbnail image.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                },
                "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
                  "height": 42, # (Optional) Height of the thumbnail image.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                },
                "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
                  "height": 42, # (Optional) Height of the thumbnail image.
                  "url": "A String", # The thumbnail image's URL.
                  "width": 42, # (Optional) Width of the thumbnail image.
                },
              },
              "liveChatId": "A String", # The id of the live chat for this broadcast.
              "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
              "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
            },
            "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
              "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
            },
            "etag": "A String", # Etag of this resource.
            "status": { # Live broadcast state. # The status object contains information about the event's status.
              "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
              "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
              "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
              "recordingStatus": "A String", # The broadcast's recording status.
              "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
              "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.
            },
            "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
          },
        ],
        "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # General pagination information.
          "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, onBehalfOfContentOwnerChannel=None, onBehalfOfContentOwner=None, x__xgafv=None)`

    Transition a broadcast to a given status.

    Args:
      broadcastStatus: string, The status to which the broadcast is going to transition. (required)
        Allowed values
          statusUnspecified -
          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.",
          live - Return only persistent broadcasts.
          complete - The broadcast is over. YouTube stops transmitting video.
      id: string, Broadcast to transition. (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) (repeated)
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
        "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
          "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "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.
            "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.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          },
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
          "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
          "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.
          "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.
          "closedCaptionsType": "A String",
          "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
          "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
          "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
          "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
          "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.
          "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.
          "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        },
        "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "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.
          "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 format.
          "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 format.
          "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 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.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "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.
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
          },
          "liveChatId": "A String", # The id of the live chat for this broadcast.
          "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
        },
        "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
          "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
        },
        "etag": "A String", # Etag of this resource.
        "status": { # Live broadcast state. # The status object contains information about the event's status.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
          "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
          "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
          "recordingStatus": "A String", # The broadcast's recording status.
          "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
          "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.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }

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

    Updates an existing broadcast for the authenticated user.

    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) (repeated)
      body: object, The request body.
        The object takes the form of:

    { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
      "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
        "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
        "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
        "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.
          "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.
          "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
          "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
        },
        "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
        "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
        "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
        "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.
        "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.
        "closedCaptionsType": "A String",
        "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
        "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
        "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
        "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.
        "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.
        "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
      },
      "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
        "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.
        "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 format.
        "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 format.
        "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 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.
        "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
        "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
        "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.
          "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
          "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
            "height": 42, # (Optional) Height of the thumbnail image.
            "url": "A String", # The thumbnail image's URL.
            "width": 42, # (Optional) Width of the thumbnail image.
          },
        },
        "liveChatId": "A String", # The id of the live chat for this broadcast.
        "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
        "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
      },
      "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
        "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
      },
      "etag": "A String", # Etag of this resource.
      "status": { # Live broadcast state. # The status object contains information about the event's status.
        "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
        "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
        "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
        "recordingStatus": "A String", # The broadcast's recording status.
        "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
        "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.
      },
      "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
    }

      onBehalfOfContentOwner: string, *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.
      onBehalfOfContentOwnerChannel: string, This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* parameter specifies the YouTube channel ID of the channel to which a video is being added. This parameter is required when a request specifies a value for the onBehalfOfContentOwner parameter, and it can only be used in conjunction with that parameter. In addition, the request must be authorized using a CMS account that is linked to the content owner that the onBehalfOfContentOwner parameter specifies. Finally, the channel that the onBehalfOfContentOwnerChannel parameter value specifies must be linked to the content owner that the onBehalfOfContentOwner parameter specifies. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and perform actions on behalf of the channel specified in the parameter value, without having to provide authentication credentials for each separate channel.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A *liveBroadcast* resource represents an event that will be streamed, via live video, on YouTube.
        "kind": "youtube#liveBroadcast", # Identifies what kind of resource this is. Value: the fixed string "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.
          "latencyPreference": "A String", # If both this and enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency omitted.
          "boundStreamId": "A String", # This value uniquely identifies the live stream bound to the broadcast.
          "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.
            "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.
            "embedHtml": "A String", # HTML code that embeds a player that plays the monitor stream.
            "broadcastStreamDelayMs": 42, # If you have set the enableMonitorStream property to true, then this property determines the length of the live broadcast delay.
          },
          "enableContentEncryption": True or False, # This setting indicates whether YouTube should enable content encryption for the broadcast.
          "enableLowLatency": True or False, # Indicates whether this broadcast has low latency enabled.
          "enableClosedCaptions": True or False, # This setting indicates whether HTTP POST closed captioning is enabled for this broadcast. The ingestion URL of the closed captions is returned through the liveStreams API. This is mutually exclusive with using the closed_captions_type property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.
          "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.
          "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.
          "closedCaptionsType": "A String",
          "boundStreamLastUpdateTimeMs": "A String", # The date and time that the live stream referenced by boundStreamId was last updated.
          "mesh": "A String", # The mesh for projecting the video if projection is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification for an mshp box, excluding the box size and type but including the following four reserved zero bytes for the version and flags.
          "enableAutoStart": True or False, # This setting indicates whether auto start is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
          "projection": "A String", # The projection format of this broadcast. This defaults to rectangular.
          "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.
          "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.
          "enableAutoStop": True or False, # This setting indicates whether auto stop is enabled for this broadcast. The default value for this property is false. This setting can only be used by Events.
        },
        "snippet": { # Basic broadcast information. # The snippet object contains basic details about the event, including its title, description, start time, and end time.
          "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.
          "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 format.
          "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 format.
          "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 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.
          "scheduledEndTime": "A String", # The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 format.
          "channelId": "A String", # The ID that YouTube uses to uniquely identify the channel that is publishing the broadcast.
          "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.
            "maxres": { # A thumbnail is an image representing a YouTube resource. # The maximum resolution quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "high": { # A thumbnail is an image representing a YouTube resource. # The high quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "standard": { # A thumbnail is an image representing a YouTube resource. # The standard quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "default": { # A thumbnail is an image representing a YouTube resource. # The default image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
            "medium": { # A thumbnail is an image representing a YouTube resource. # The medium quality image for this resource.
              "height": 42, # (Optional) Height of the thumbnail image.
              "url": "A String", # The thumbnail image's URL.
              "width": 42, # (Optional) Width of the thumbnail image.
            },
          },
          "liveChatId": "A String", # The id of the live chat for this broadcast.
          "isDefaultBroadcast": True or False, # Indicates whether this broadcast is the default broadcast. Internal only.
          "scheduledStartTime": "A String", # The date and time that the broadcast is scheduled to start. The value is specified in ISO 8601 format.
        },
        "statistics": { # Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts. # The statistics object contains info about the event's current stats. These include concurrent viewers and total chat count. Statistics can change (in either direction) during the lifetime of an event. Statistics are only returned while the event is live.
          "totalChatCount": "A String", # The total number of live chat messages currently on the broadcast. The property and its value will be present if the broadcast is public, has the live chat feature enabled, and has at least one message. Note that this field will not be filled after the broadcast ends. So this property would not identify the number of chat messages for an archived video of a completed live broadcast.
        },
        "etag": "A String", # Etag of this resource.
        "status": { # Live broadcast state. # The status object contains information about the event's status.
          "lifeCycleStatus": "A String", # The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.
          "liveBroadcastPriority": "A String", # Priority of the live broadcast event (internal state).
          "selfDeclaredMadeForKids": True or False, # This field will be set to True if the creator declares the broadcast to be kids only: go/live-cw-work.
          "recordingStatus": "A String", # The broadcast's recording status.
          "madeForKids": True or False, # Whether the broadcast is made for kids or not, decided by YouTube instead of the creator. This field is read only.
          "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.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the broadcast.
      }