有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

1. 接口描述

接口请求域名: tdmq.tencentcloudapi.com 。

批量发送消息

注意:TDMQ 批量发送消息的接口是在 TDMQ-HTTP 的服务侧将消息打包为一个 Batch,然后将该 Batch 在服务内部当作一次 TCP 请求发送出去。所以在使用过程中,用户还是按照单条消息发送的逻辑,每一条消息是一个独立的 HTTP 的请求,在 TDMQ-HTTP 的服务内部,会将多个 HTTP 的请求聚合为一个 Batch 发送到服务端。即,批量发送消息在使用上与发送单条消息是一致的,batch 的聚合是在 TDMQ-HTTP 的服务内部完成的。

默认接口请求频率限制:1000次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:SendBatchMessages。
Version String 公共参数,本接口取值:2020-02-17。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-bangkok, ap-beijing, ap-chengdu, ap-chongqing, ap-guangzhou, ap-hongkong, ap-jakarta, ap-mumbai, ap-nanjing, ap-seoul, ap-shanghai, ap-shanghai-fsi, ap-shenzhen-fsi, ap-singapore, ap-tokyo, eu-frankfurt, na-ashburn, na-siliconvalley, na-toronto 。
Topic String 消息要发送的topic的名字, 这里尽量需要使用topic的全路径,即:tenant/namespace/topic。如果不指定,默认使用的是:public/default
示例值:persistent://tenant/namespace/my-topic
Payload String 需要发送消息的内容
示例值:hello tdmq
StringToken String String 类型的 token,可以不填,系统会自动获取
示例值:abcdefghijklmnopqrstovwxyz
ProducerName String producer 的名字,要求全局是唯一的,如果不设置,系统会自动生成
示例值:producer1
SendTimeout Integer 单位:s。消息发送的超时时间。默认值为:30s
示例值:30
MaxPendingMessages Integer 内存中允许缓存的生产消息的最大数量,默认值:1000条
示例值:1000
BatchingMaxMessages Integer 每一个batch中消息的最大数量,默认值:1000条/batch
示例值:1000
BatchingMaxPublishDelay Integer 每一个batch最大等待的时间,超过这个时间,不管是否达到指定的batch中消息的数量和大小,都会将该batch发送出去,默认:10ms
示例值:10L
BatchingMaxBytes Integer 每一个batch中最大允许的消息的大小,默认:128KB
示例值:128*1024

3. 输出参数

参数名称 类型 描述
MessageId String 消息的唯一标识
注意:此字段可能返回 null,表示取不到有效值。
示例值:{"Response":{"MessageId":"26365:1475:0"}}
ErrorMsg String 错误消息,返回为 "",代表没有错误
注意:此字段可能返回 null,表示取不到有效值。
示例值:""
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 成功发送多条消息

输入示例

https://tdmq.tencentcloudapi.com/?Action=SendBatchMessages
&Topic=tenant/namespace/topic
&Payload="hello TDMQ"
&<公共请求参数>

输出示例

{
    "Response": {
        "RequestId": "36713f94-d07d-4b96-babf-42d139276f23",
        "MessageId": "71:12:0:0",
        "ErrorMsg": ""
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.CreateProducerError 创建producer出错。
FailedOperation.CreatePulsarClientError 创建TDMQ client的出错。
FailedOperation.MaxMessageSizeError 最大消息超过1MB。
FailedOperation.MessageIDError 上传的msgID错误。
FailedOperation.ReceiveError 接收消息出错。
FailedOperation.ReceiveTimeout 接收消息超时,请重试。
FailedOperation.SendMessageTimeoutError 消息发送超时。
FailedOperation.TopicTypeError 请使用partition topic。
InvalidParameter.TenantNotFound 上传的 tenant name 错误。
InvalidParameter.TokenNotFound 没有获取到正确的 token。
InvalidParameterValue.TopicNotFound 上传的topic name错误。