LiveChatMessages: insert

向实时聊天添加消息或投票。

常见使用场景

请求

HTTP 请求

POST https://www.googleapis.com/youtube/v3/liveChat/messages

授权

此请求需要获得以下至少一个范围的授权。如需详细了解身份验证和授权,请参阅实现 OAuth 2.0 身份验证

范围
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

参数

下表列出了此查询支持的参数。列出的所有参数都是查询参数。

参数
必需参数
part string
part 参数有两个用途。它用于标识写入操作将设置的属性,以及 API 响应将包含的属性。将参数值设置为 snippet

请求正文

在请求正文中提供 liveChatMessage 资源。 对于该资源,您必须为以下属性指定值

  • snippet.liveChatId
  • snippet.type - 选择以下选项之一:textMessageEventpollEvent
  • 如果类型为 textMessageEvent,则添加 snippet.textMessageDetails.messageText
  • 如果类型为 pollEvent,请添加 snippet.pollDetails,并使用以下值:
    • snippet.pollDetails.metadata.options.questionText
    • snippet.pollDetails.metadata.options.optionText 的列表。您必须列出至少 2 项,但不得超过 5 项。项会按列出的顺序依序显示。

响应

如果成功,此方法将在响应正文中返回一项 liveChatMessage 资源

错误

下表列出了该 API 在响应对此方法的调用时可能会返回的错误消息。如需了解详情,请参阅 YouTube Live Streaming API - 错误

错误类型 错误详情 说明
forbidden (403) forbidden 您没有创建指定消息所需的权限。
forbidden (403) liveChatDisabled 指定的实时聊天已被所有者停用,这意味着无法向聊天中添加消息。
forbidden (403) liveChatEnded 指定的实时聊天已结束。
invalidValue (400) messageTextInvalid 消息文本 (snippet.textMessageDetails.messageText) 无效。
notFound (404) liveChatNotFound API 请求中标识的实时聊天不存在。如果对话已被所有者删除,则会出现此错误。
required (400) liveChatIdRequired liveChatMessage 资源必须包含 snippet.liveChatId 属性并为其指定值。
required (400) messageTextRequired liveChatMessage 资源必须包含 snippet.textMessageDetails.messageText 属性并为其指定值。
required (400) typeRequired liveChatMessage 资源必须包含 snippet.type 属性并为其指定值。将参数值设置为 text
required (400) preconditionCheckFailed 已存在已固定的有效投票。
rateLimitExceeded rateLimitExceeded 用户在给定时间范围内发布了过多聊天消息。

试试看!

使用 APIs Explorer 调用此 API,并查看 API 请求和响应。