Quando você se conecta pela primeira vez, a API envia uma série de mensagens com o histórico de chat recente. À medida que novas mensagens são postadas, o servidor continua enviando-as pela conexão aberta.
As mensagens em cada resposta do servidor são ordenadas da mais antiga para a mais recente. Cada resposta também inclui um
nextPageToken. Se o cliente se desconectar, use esse token para retomar a transmissão. Para fazer isso, forneça o último nextPageToken recebido como o valor do parâmetro pageToken na sua nova solicitação de conexão. A API vai retomar o envio de mensagens do ponto em que você parou.
  Demonstração
Para uma demonstração em Python desse endpoint, consulte o guia Chat em tempo real por streaming.
Solicitação
Parâmetros
A tabela a seguir lista os parâmetros compatíveis com essa consulta. Todos os parâmetros listados são os parâmetros de consulta.
| Parâmetros | ||
|---|---|---|
| Parâmetros obrigatórios | ||
| liveChatId | stringO parâmetro liveChatIdespecifica o ID da conversa cujas mensagens serão retornadas. O ID do chat ao vivo associado a uma transmissão é retornado na propriedadesnippet.liveChatIddo recursoliveBroadcast. | |
| part | stringO parâmetro partespecifica as partes do recursoliveChatMessageque a resposta da API vai incluir. Os valores aceitos sãoid,snippeteauthorDetails. | |
| Parâmetros opcionais | ||
| hl | stringO parâmetro hlinstrui a API a extrair uma string de exibição de moeda localizada para um idioma do aplicativo específico compatível com o site do YouTube. Por exemplo, em inglês, a moeda seria exibida como$1.50, mas em francês, como1,50$.O valor do parâmetro precisa ser um código de idioma incluído na lista retornada pelo método i18nLanguages.list. | |
| maxResults | unsigned integerO parâmetro maxResultsespecifica o número máximo de mensagens que devem ser retornadas no conjunto de resultados. Os valores aceitos vão de200a2000. O valor padrão é500. | |
| pageToken | stringO parâmetro pageTokenidentifica uma página específica no conjunto de resultados que precisa ser retornada. Em uma resposta da API, a propriedadenextPageTokenidentifica outras páginas que podem ser recuperadas. | |
| profileImageSize | unsigned integerO parâmetro profileImageSizeespecifica o tamanho das fotos de perfil do usuário que precisam ser retornadas no conjunto de resultados. As imagens são quadradas. O valor padrão é88, o que significa que as imagens terão 88 x 88 pixels. Os valores aceitos estão no intervalo de16a720. | |
Corpo da solicitação
Não forneça um corpo de solicitação ao chamar esse método.
Resposta
Se for bem-sucedido, esse método retornará um corpo de resposta com esta estrutura:
{
  "kind": "youtube#liveChatMessageListResponse",
  "etag": etag,
  "nextPageToken": string,
  "pollingIntervalMillis": unsigned integer,
  "offlineAt": datetime,
  "pageInfo": {
    "totalResults": integer,
    "resultsPerPage": integer
  },
  "items": [
    liveChatMessage Resource
  ],
  "activePollItem": liveChatMessage Resource
}Propriedades
A tabela a seguir define as propriedades que aparecem neste recurso:
| Propriedades | |
|---|---|
| kind | stringIdentifica o tipo do recurso da API. O valor será youtube#liveChatMessageListResponse. | 
| etag | etagA ETag deste recurso. | 
| nextPageToken | stringO token que pode ser usado como o valor do parâmetro pageTokenpara recuperar a próxima página no conjunto de resultados. | 
| offlineAt | datetimeA data e a hora em que a transmissão ao vivo ficou off-line. Essa propriedade só estará presente se a transmissão já estiver off-line. O valor é especificado no formato ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ). | 
| pageInfo | objectO objeto pageInfoencapsula informações de paginação para o conjunto de resultados. | 
| pageInfo.totalResults | integerO número total de resultados no conjunto de resultados. | 
| pageInfo.resultsPerPage | integerO número de resultados incluídos na resposta da API. | 
| items[] | listUma lista de mensagens. Cada item da lista é um recurso liveChatMessage. | 
| activePollItem | objectOs dados da enquete na mensagem. Cada pesquisa é um recurso liveChatMessagecom o tipopollEvent, que representa uma pesquisa ativa. Só é possível fazer uma enquete por conversa. | 
Erros
A tabela a seguir identifica as mensagens de erro que a API pode retornar em resposta a uma chamada para esse método. Consulte a documentação da mensagem de erro para mais detalhes.
Ao usar o gRPC para se conectar:
| Código de erro do gRPC | Detalhe do erro | Descrição | 
|---|---|---|
| PERMISSION_DENIED (7) | The caller does not have permission | Você não tem as permissões necessárias para recuperar mensagens do chat ao vivo especificado. | 
| INVALID_ARGUMENT (3) | Request contains an invalid argument | Falha ao analisar os parâmetros fornecidos. Confira se o liveChatId e outros parâmetros estão no formato correto. | 
| FAILED_PRECONDITION (9)* | Precondition check failed | LIVE_CHAT_DISABLED. O chat ao vivo especificado está desativado. | 
| FAILED_PRECONDITION (9)* | Precondition check failed | LIVE_CHAT_ENDED. Não é possível recuperar mensagens de um chat ao vivo encerrado. | 
| NOT_FOUND (5) | Requested entity was not found | Não foi possível encontrar o chat ao vivo que você está tentando recuperar. Verifique se o valor do parâmetro liveChatIdda solicitação está correto. | 
| RESOURCE_EXHAUSTED (8) | Resource has been exhausted (e.g. check quota) | A solicitação foi enviada muito rápido após a anterior. Esse erro ocorre quando as solicitações de API para recuperar mensagens são enviadas com mais frequência do que as taxas de atualização do YouTube, o que desperdiça largura de banda desnecessariamente. | 
* Devido a uma limitação do gRPC, não é possível distinguir com base no código de erro entre um caso LIVE_CHAT_DISABLED e um caso LIVE_CHAT_ENDED. O YouTube está trabalhando ativamente em uma solução para resolver esse problema.
Ao usar o tráfego da Web para se conectar:
| Tipo de erro | Detalhe do erro | Descrição | 
|---|---|---|
| HttpStatus.FORBIDDEN (403) | forbidden | Você não tem as permissões necessárias para recuperar mensagens do chat ao vivo especificado. | 
| HttpStatus.BAD_REQUEST (400) | Reason for invalid request, e.g. pageTokenInvalid | Falha ao analisar os parâmetros fornecidos. Confira se o liveChatId e outros parâmetros estão no formato correto. | 
| HttpStatus.FORBIDDEN (403) | liveChatDisabled | LIVE_CHAT_DISABLED. O chat ao vivo especificado está desativado. | 
| HttpStatus.FORBIDDEN (403) | liveChatEnded | LIVE_CHAT_ENDED. Não é possível recuperar mensagens de um chat ao vivo encerrado. | 
| HttpStatus.NOT_FOUND (404) | liveChatNotFound | Não foi possível encontrar o chat ao vivo que você está tentando recuperar. Verifique se o valor do parâmetro liveChatIdda solicitação está correto. | 
| HttpStatus.FORBIDDEN (403) | rateLimitExceeded | A solicitação foi enviada muito rápido após a anterior. Esse erro ocorre quando as solicitações de API para recuperar mensagens são enviadas com mais frequência do que as taxas de atualização do YouTube, o que desperdiça largura de banda desnecessariamente. |