LiveChatMessages: insert

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

配额影响: 调用此方法会产生 20 个单位的配额费用。

常见应用场景

请求

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 - 选择以下选项之一:textMessageEvent 或 pollEvent
  • 如果类型为 textMessageEvent,请添加 snippet.textMessageDetails.messageText
  • 如果类型为 pollEvent,请添加 snippet.pollDetails 对象,其结构如下所示:
    • snippet.pollDetails.metadata.questionText(字符串):投票的主要问题。
    • snippet.pollDetails.metadata.options(数组):选项对象列表。
    • 要求:您必须添加至少 2 个、最多 4 个项。
    • 排序:项会按照列出的确切顺序依次显示。
    • 数组中的每个对象都必须包含:
      • optionText(字符串):针对特定投票选项显示的内容。

响应

如果成功,此方法会在响应正文中返回 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 请求和响应。