# YouTube Data API . liveChatMessages

## Instance Methods

Deletes a chat message.

Adds a message to a live chat.

Lists live chat messages for a specific chat.

Retrieves the next page of results.

### Method Details

`delete(id)`

    Deletes a chat message.

    Args:
      id: string, The id parameter specifies the YouTube chat message ID of the resource that is being deleted. (required)

`insert(part, body)`

    Adds a message to a live chat.

    Args:
      part: string, The part parameter serves two purposes. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the parameter value to snippet. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A liveChatMessage resource represents a chat message in a YouTube Live Chat.
        "snippet": { # The snippet object contains basic details about the message.
          "displayMessage": "A String", # Contains a string that can be displayed to the user. If this field is not present the message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.
          "messageRetractedDetails": {
            "retractedMessageId": "A String",
          },
          "fanFundingEventDetails": { # Details about the funding event, this is only set if the type is 'fanFundingEvent'.
            "currency": "A String", # The currency in which the fund was made.
            "amountDisplayString": "A String", # A rendered string that displays the fund amount and currency to the user.
            "userComment": "A String", # The comment added by the user to this fan funding event.
            "amountMicros": "A String", # The amount of the fund.
          },
          "hasDisplayContent": True or False, # Whether the message has display content that should be displayed to users.
          "publishedAt": "A String", # The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
          "userBannedDetails": {
            "banDurationSeconds": "A String", # The duration of the ban. This property is only present if the banType is temporary.
            "bannedUserDetails": { # The details of the user that was banned.
              "channelId": "A String", # The YouTube channel ID.
              "displayName": "A String", # The channel's display name.
              "profileImageUrl": "A String", # The channels's avatar URL.
              "channelUrl": "A String", # The channel's URL.
            },
            "banType": "A String", # The type of ban.
          },
          "liveChatId": "A String",
          "authorChannelId": "A String", # The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action
          "pollEditedDetails": {
            "items": [
              {
                "itemId": "A String",
                "description": "A String", # Plain text description of the item.
              },
            ],
            "prompt": "A String",
            "id": "A String",
          },
          "textMessageDetails": { # Details about the text message, this is only set if the type is 'textMessageEvent'.
            "messageText": "A String", # The user's message.
          },
          "messageDeletedDetails": {
            "deletedMessageId": "A String",
          },
          "pollVotedDetails": {
            "itemId": "A String", # The poll item the user chose.
            "pollId": "A String", # The poll the user voted on.
          },
          "pollOpenedDetails": {
            "items": [
              {
                "itemId": "A String",
                "description": "A String", # Plain text description of the item.
              },
            ],
            "prompt": "A String",
            "id": "A String",
          },
          "type": "A String", # The type of message, this will always be present, it determines the contents of the message as well as which fields will be present.
          "pollClosedDetails": {
            "pollId": "A String", # The id of the poll that was closed.
          },
        },
        "kind": "youtube#liveChatMessage", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveChatMessage".
        "etag": "A String", # Etag of this resource.
        "authorDetails": { # The authorDetails object contains basic details about the user that posted this message.
          "displayName": "A String", # The channel's display name.
          "isChatModerator": True or False, # Whether the author is a moderator of the live chat.
          "channelId": "A String", # The YouTube channel ID.
          "isChatSponsor": True or False, # Whether the author is a sponsor of the live chat.
          "profileImageUrl": "A String", # The channels's avatar URL.
          "isChatOwner": True or False, # Whether the author is the owner of the live chat.
          "isVerified": True or False, # Whether the author's identity has been verified by YouTube.
          "channelUrl": "A String", # The channel's URL.
        },
        "id": "A String", # The ID that YouTube assigns to uniquely identify the message.
      }

    Returns:
      An object of the form:

        { # A liveChatMessage resource represents a chat message in a YouTube Live Chat.
          "snippet": { # The snippet object contains basic details about the message.
            "displayMessage": "A String", # Contains a string that can be displayed to the user. If this field is not present the message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.
            "messageRetractedDetails": {
              "retractedMessageId": "A String",
            },
            "fanFundingEventDetails": { # Details about the funding event, this is only set if the type is 'fanFundingEvent'.
              "currency": "A String", # The currency in which the fund was made.
              "amountDisplayString": "A String", # A rendered string that displays the fund amount and currency to the user.
              "userComment": "A String", # The comment added by the user to this fan funding event.
              "amountMicros": "A String", # The amount of the fund.
            },
            "hasDisplayContent": True or False, # Whether the message has display content that should be displayed to users.
            "publishedAt": "A String", # The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
            "userBannedDetails": {
              "banDurationSeconds": "A String", # The duration of the ban. This property is only present if the banType is temporary.
              "bannedUserDetails": { # The details of the user that was banned.
                "channelId": "A String", # The YouTube channel ID.
                "displayName": "A String", # The channel's display name.
                "profileImageUrl": "A String", # The channels's avatar URL.
                "channelUrl": "A String", # The channel's URL.
              },
              "banType": "A String", # The type of ban.
            },
            "liveChatId": "A String",
            "authorChannelId": "A String", # The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action
            "pollEditedDetails": {
              "items": [
                {
                  "itemId": "A String",
                  "description": "A String", # Plain text description of the item.
                },
              ],
              "prompt": "A String",
              "id": "A String",
            },
            "textMessageDetails": { # Details about the text message, this is only set if the type is 'textMessageEvent'.
              "messageText": "A String", # The user's message.
            },
            "messageDeletedDetails": {
              "deletedMessageId": "A String",
            },
            "pollVotedDetails": {
              "itemId": "A String", # The poll item the user chose.
              "pollId": "A String", # The poll the user voted on.
            },
            "pollOpenedDetails": {
              "items": [
                {
                  "itemId": "A String",
                  "description": "A String", # Plain text description of the item.
                },
              ],
              "prompt": "A String",
              "id": "A String",
            },
            "type": "A String", # The type of message, this will always be present, it determines the contents of the message as well as which fields will be present.
            "pollClosedDetails": {
              "pollId": "A String", # The id of the poll that was closed.
            },
          },
          "kind": "youtube#liveChatMessage", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveChatMessage".
          "etag": "A String", # Etag of this resource.
          "authorDetails": { # The authorDetails object contains basic details about the user that posted this message.
            "displayName": "A String", # The channel's display name.
            "isChatModerator": True or False, # Whether the author is a moderator of the live chat.
            "channelId": "A String", # The YouTube channel ID.
            "isChatSponsor": True or False, # Whether the author is a sponsor of the live chat.
            "profileImageUrl": "A String", # The channels's avatar URL.
            "isChatOwner": True or False, # Whether the author is the owner of the live chat.
            "isVerified": True or False, # Whether the author's identity has been verified by YouTube.
            "channelUrl": "A String", # The channel's URL.
          },
          "id": "A String", # The ID that YouTube assigns to uniquely identify the message.
        }

`list(liveChatId, part, profileImageSize=None, hl=None, maxResults=None, pageToken=None)`

    Lists live chat messages for a specific chat.

    Args:
      liveChatId: string, The liveChatId parameter specifies the ID of the chat whose messages will be returned. (required)
      part: string, The part parameter specifies the liveChatComment resource parts that the API response will include. Supported values are id and snippet. (required)
      profileImageSize: integer, The profileImageSize parameter specifies the size of the user profile pictures that should be returned in the result set. Default: 88.
      hl: string, The hl parameter instructs the API to retrieve localized resource metadata for a specific application language that the YouTube website supports. The parameter value must be a language code included in the list returned by the i18nLanguages.list method.

    If localized resource details are available in that language, the resource's snippet.localized object will contain the localized values. However, if localized details are not available, the snippet.localized object will contain resource details in the resource's default language.
      maxResults: integer, The maxResults parameter specifies the maximum number of messages that should be returned in the result set.
      pageToken: string, The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken property identify other pages that could be retrieved.

    Returns:
      An object of the form:

        {
        "eventId": "A String", # Serialized EventId of the request which produced this response.
        "nextPageToken": "A String", # The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.
        "kind": "youtube#liveChatMessageListResponse", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveChatMessageListResponse".
        "visitorId": "A String", # The visitorId identifies the visitor.
        "items": [ # A list of live chat messages.
          { # A liveChatMessage resource represents a chat message in a YouTube Live Chat.
              "snippet": { # The snippet object contains basic details about the message.
                "displayMessage": "A String", # Contains a string that can be displayed to the user. If this field is not present the message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.
                "messageRetractedDetails": {
                  "retractedMessageId": "A String",
                },
                "fanFundingEventDetails": { # Details about the funding event, this is only set if the type is 'fanFundingEvent'.
                  "currency": "A String", # The currency in which the fund was made.
                  "amountDisplayString": "A String", # A rendered string that displays the fund amount and currency to the user.
                  "userComment": "A String", # The comment added by the user to this fan funding event.
                  "amountMicros": "A String", # The amount of the fund.
                },
                "hasDisplayContent": True or False, # Whether the message has display content that should be displayed to users.
                "publishedAt": "A String", # The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
                "userBannedDetails": {
                  "banDurationSeconds": "A String", # The duration of the ban. This property is only present if the banType is temporary.
                  "bannedUserDetails": { # The details of the user that was banned.
                    "channelId": "A String", # The YouTube channel ID.
                    "displayName": "A String", # The channel's display name.
                    "profileImageUrl": "A String", # The channels's avatar URL.
                    "channelUrl": "A String", # The channel's URL.
                  },
                  "banType": "A String", # The type of ban.
                },
                "liveChatId": "A String",
                "authorChannelId": "A String", # The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action
                "pollEditedDetails": {
                  "items": [
                    {
                      "itemId": "A String",
                      "description": "A String", # Plain text description of the item.
                    },
                  ],
                  "prompt": "A String",
                  "id": "A String",
                },
                "textMessageDetails": { # Details about the text message, this is only set if the type is 'textMessageEvent'.
                  "messageText": "A String", # The user's message.
                },
                "messageDeletedDetails": {
                  "deletedMessageId": "A String",
                },
                "pollVotedDetails": {
                  "itemId": "A String", # The poll item the user chose.
                  "pollId": "A String", # The poll the user voted on.
                },
                "pollOpenedDetails": {
                  "items": [
                    {
                      "itemId": "A String",
                      "description": "A String", # Plain text description of the item.
                    },
                  ],
                  "prompt": "A String",
                  "id": "A String",
                },
                "type": "A String", # The type of message, this will always be present, it determines the contents of the message as well as which fields will be present.
                "pollClosedDetails": {
                  "pollId": "A String", # The id of the poll that was closed.
                },
              },
              "kind": "youtube#liveChatMessage", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveChatMessage".
              "etag": "A String", # Etag of this resource.
              "authorDetails": { # The authorDetails object contains basic details about the user that posted this message.
                "displayName": "A String", # The channel's display name.
                "isChatModerator": True or False, # Whether the author is a moderator of the live chat.
                "channelId": "A String", # The YouTube channel ID.
                "isChatSponsor": True or False, # Whether the author is a sponsor of the live chat.
                "profileImageUrl": "A String", # The channels's avatar URL.
                "isChatOwner": True or False, # Whether the author is the owner of the live chat.
                "isVerified": True or False, # Whether the author's identity has been verified by YouTube.
                "channelUrl": "A String", # The channel's URL.
              },
              "id": "A String", # The ID that YouTube assigns to uniquely identify the message.
            },
        ],
        "tokenPagination": { # Stub token pagination template to suppress results.
        },
        "etag": "A String", # Etag of this resource.
        "pollingIntervalMillis": 42, # The amount of time the client should wait before polling again.
        "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page.
          "totalResults": 42, # The total number of results in the result set.
          "resultsPerPage": 42, # The number of results included in the API response.
        },
        "offlineAt": "A String", # The date and time when the underlying stream went offline. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
      }

`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.