华为云用户手册

  • URI GET /v2/{engine}/{project_id}/instances/{instance_id}/trace 表1 路径参数 参数 是否必选 参数类型 描述 engine 是 String 消息引擎。 缺省值:reliability project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 表2 Query参数 参数 是否必选 参数类型 描述 msg_id 否 String 消息ID。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 trace Array of trace objects 消息轨迹列表。 表4 trace 参数 参数类型 描述 success Boolean 是否成功。 trace_type String 轨迹类型 timestamp Number 时间。 group_name String 生产组或消费组。 cost_time Number 耗时。 request_id String 请求ID。 consume_status Number 消费状态。 topic String 主题名称。 msg_id String 消息ID。 offset_msg_id String offset消息ID。 tags String 消息的标签。 keys String 消息的keys。 store_host String 存储消息的主机IP。 client_host String 产生消息的主机IP。 retry_times String 重试次数。 body_length Number 消息体长度。 msg_type String 消息类型。 transaction_state String 事务状态。 transaction_id String 事务ID。 from_transaction_check Boolean 是否为事务回查的响应。
  • 响应示例 状态码: 200 导出死信消息成功。 { "topic" : "topic_01", "body" : "Hello world", "property_list" : { "name" : "ORIGIN_MESSAGE_ID", "value" : "C0A8005B00002775000000000000EBAE" }, "msg_id" : "C0A8005B0000277500000000000133A2", "instance_id" : "56055acb-3c3b-4481-aeab-10464086c2b4", "store_timestamp" : 1662690563020, "born_timestamp" : 1662690324415, "reconsume_times" : 5, "body_crc" : 198614610, "store_size" : 317, "born_host" : "10.58.233.224:63529", "store_host" : "192.168.0.91:10101", "queue_id" : 0, "queue_offset" : 0}
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 [数组元素] Array of Message objects 消息。 表4 Message 参数 参数类型 描述 msg_id String 消息ID。 instance_id String 实例ID。 topic String 主题名称。 store_timestamp Number 存储消息的时间。 born_timestamp Number 产生消息的时间。 reconsume_times String 重试次数。 body String 消息体。 body_crc Number 消息体校验和。 store_size Number 存储大小。 property_list Array of property_list objects 消息属性列表。 born_host String 产生消息的主机IP。 store_host String 存储消息的主机IP。 queue_id String 队列ID。 queue_offset String 在队列中的偏移量。 表5 property_list 参数 参数类型 描述 name String 属性名称。 value String 属性值。
  • 请求示例 导出主题中指定消息ID和Key的死信消息。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/messages/export{ "topic" : "%DLQ%group1", "msg_id_list" : [ "C0A8011700002774000000000013B19D", "C0A8011700002774000000000013B30F" ], "uniq_key_list" : [ "7F000001001C18B4AAC26B8AED170010", "7F000001001C18B4AAC26B8AEE030015" ]}
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 policies Array of policies objects 用户列表。 total Number 总用户个数。 name String 主题或消费组名称。 表4 policies 参数 参数类型 描述 access_key String 用户名。 secret_key String 密钥。 white_remote_address String IP白名单。 admin Boolean 是否为管理员。 perm String 权限。
  • URI GET /v2/{engine}/{project_id}/instances/{instance_id}/groups/{group_id}/accesspolicy 表1 路径参数 参数 是否必选 参数类型 描述 engine 是 String 消息引擎。 缺省值:reliability project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 group_id 是 String 消费组。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 String 偏移量,表示从此偏移量开始查询, offset大于等于0。 limit 否 String 查询数量。
  • 响应示例 状态码: 200 消费组的授权用户列表成功。 { "policies" : { "access_key" : "test_01", "secret_key" : "**************", "white_remote_address" : "", "admin" : false, "perm" : "" }, "total" : 1, "name" : "test"}
  • URI GET /v2/{project_id}/instances/{instance_id}/topics/{topic}/groups 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 topic 是 String 主题名称。 表2 Query参数 参数 是否必选 参数类型 描述 limit 否 Integer 当次查询返回的最大个数,默认值为10,取值范围为1~50。 offset 否 Integer 偏移量,表示从此偏移量开始查询,offset大于等于0。
  • 响应示例 状态码: 200 查询可用区信息成功。 { "region_id" : "xxx", "available_zones" : [ { "soldOut" : false, "id" : "8c90c2a4e2594c0782faa6b205afeca7", "code" : "xxx", "name" : "可用区1", "port" : "8002", "resource_availability" : "true", "default_az" : false, "remain_time" : 9223372036854776000, "ipv6_enable" : false }, { "soldOut" : false, "id" : "d539378ec1314c85b76fefa3f7071458", "code" : "xxx", "name" : "可用区2", "port" : "8003", "resource_availability" : "true", "default_az" : false, "remain_time" : 9223372036854776000, "ipv6_enable" : false }, { "soldOut" : false, "id" : "9f1c5806706d4c1fb0eb72f0a9b18c77", "code" : "xxx", "name" : "可用区3", "port" : "443", "resource_availability" : "true", "default_az" : true, "remain_time" : 9223372036854776000, "ipv6_enable" : false } ]}
  • 响应参数 状态码: 200 表1 响应Body参数 参数 参数类型 描述 region_id String 区域ID。 available_zones Array of available_zones objects 可用区数组。 表2 available_zones 参数 参数类型 描述 soldOut Boolean 是否售罄。 id String 可用区ID。 code String 可用区编码。 name String 可用区名称。 port String 可用区端口号。 resource_availability String 分区上是否还有可用资源。 default_az Boolean 是否为默认可用区。 remain_time Long 剩余时间。 ipv6_enable Boolean 是否支持IPv6。
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 access_key String 用户名。 secret_key String 密钥。 white_remote_address String IP白名单。 admin Boolean 是否为管理员。 default_topic_perm String 默认的主题权限。 default_group_perm String 默认的消费组权限。 topic_perms Array of topic_perms objects 特殊的主题权限。 group_perms Array of group_perms objects 特殊的消费组权限。 表6 topic_perms 参数 参数类型 描述 name String 主题名称。 perm String 权限。 表7 group_perms 参数 参数类型 描述 name String 消费组名称。 perm String 权限。
  • 响应示例 状态码: 200 创建成功。 { "access_key" : "test_01", "admin" : false, "default_group_perm" : "DENY", "default_topic_perm" : "SUB", "group_perms" : [ ], "secret_key" : "**************", "topic_perms" : [ ], "white_remote_address" : ""}
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 access_key 否 String 用户名。 secret_key 否 String 密钥。 white_remote_address 否 String IP白名单。 admin 否 Boolean 是否为管理员。 default_topic_perm 否 String 默认的主题权限。 default_group_perm 否 String 默认的消费组权限。 topic_perms 否 Array of topic_perms objects 特殊的主题权限。 group_perms 否 Array of group_perms objects 特殊的消费组权限。 表3 topic_perms 参数 是否必选 参数类型 描述 name 否 String 主题名称。 perm 否 String 权限。 表4 group_perms 参数 是否必选 参数类型 描述 name 否 String 消费组名称。 perm 否 String 权限。
  • 请求示例 创建一个非管理员的用户,授予发布、订阅topic1和group1的权限。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/users{ "access_key" : "user_name", "secret_key" : "**************", "white_remote_address" : "", "admin" : false, "default_topic_perm" : "DENY", "default_group_perm" : "DENY", "topic_perms" : [ { "name" : "topic1", "perm" : "PUB|SUB" } ], "group_perms" : [ { "name" : "group1", "perm" : "PUB|SUB" } ]}
  • 响应示例 状态码: 200 查询实例成功。 { "name" : "reliability-test", "engine" : "reliability", "status" : "RUNNING", "description" : "", "type" : "cluster", "specification" : "c6.4u8g.cluster * 1 broker", "engine_version" : "4.8.0", "instance_id" : "68fdc9a8-805e-439d-8dd9-25adc1c58bf6", "resource_spec_code" : "", "charging_mode" : 1, "vpc_id" : "3db8490c-4d6d-4d8f-8d3f-047b0de4c5cf", "vpc_name" : "vpc-1101840", "created_at" : "1636699753874", "product_id" : "c6.4u8g.cluster", "security_group_id" : "23c5977f-ff33-4b95-a73e-08d8a0bc4e6c", "security_group_name" : "Sys-default", "subnet_id" : "0a0f1fcb-f019-458d-b9e5-301867394d50", "subnet_name" : "subnet-boce", "subnet_cidr" : "192.168.1.0/24", "available_zones" : [ "9f1c5806706d4c1fb0eb72f0a9b18c77" ], "user_id" : "0b01fbb53600d4671fa8c00673c71260", "user_name" : "", "maintain_begin" : "02:00:00", "maintain_end" : "06:00:00", "enable_log_collection" : false, "storage_space" : 558, "total_storage_space" : 600, "used_storage_space" : 28, "enable_publicip" : true, "publicip_id" : "7e6b7beb-ef13-4805-878d-285890b17a12,87827295-84e1-4118-9ab3-a90dd8c9dace,91306a18-5781-4529-b739-5aeec10ec4e6,a68e8f0e-a24f-4521-910e-39696a56fcdf,bb1cd147-a7af-46ca-9548-99fec4034ba2", "publicip_address" : "***", "ssl_enable" : false, "cross_vpc_info" : "{\"192.168.1.21\":{\"advertised_ip\":\"192.168.1.21\",\"broker_port\":\"-\",\"port_id\":\"fa020857-d899-497c-a5f8-8dd90ed67ff7\",\"namesrv_port\":\"8301\"},\"192.168.1.246\":{\"advertised_ip\":\"192.168.1.246\",\"broker_port\":\"10100\",\"port_id\":\"c0f0586f-a4ee-41b5-a7f1-b4e554bbf12d\",\"namesrv_port\":\"-\"},\"192.168.1.77\":{\"advertised_ip\":\"192.168.1.77\",\"broker_port\":\"10101\",\"port_id\":\"8eb1d144-4315-402f-8498-37c9a10b630c\",\"namesrv_port\":\"-\"},\"192.168.1.159\":{\"advertised_ip\":\"192.168.1.159\",\"broker_port\":\"-\",\"port_id\":\"d35b22af-a202-4329-bda4-26e1bdf2aa8e\",\"namesrv_port\":\"8300\"},\"192.168.1.14\":{\"advertised_ip\":\"192.168.1.14\",\"broker_port\":\"10102\",\"port_id\":\"5fcb50fd-3af5-4123-a455-a67f1b926026\",\"namesrv_port\":\"-\"}}", "storage_resource_id" : "164bdaef-2e67-4fd5-be8b-a18f91d455a2", "storage_spec_code" : "dms.physical.storage.ultra.v2", "service_type" : "advanced", "storage_type" : "hec", "extend_times" : 0, "ipv6_enable" : false, "support_features" : "kafka.crossvpc.domain.enable,feature.physerver.kafka.topic.accesspolicy,rabbitmq.plugin.management,rocketmq.acl,roma_app_enable,auto_topic_switch,feature.physerver.kafka.user.manager,enable.new.authinfo,route,kafka.config.dynamic.modify.enable,kafka.new.pod.port,feature.physerver.kafka.topic.modify,message_trace_enable,features.pod.token.access,kafka.ssl.cert.modify.enable,roma.user.manage.no.support,feature.physerver.kafka.pulbic.dynamic,features.log.collection,kafka.config.static.modify.enable", "disk_encrypted" : false, "ces_version" : "linux,v1,v2", "node_num" : 5, "new_spec_billing_enable" : true, "enable_acl" : false, "broker_num" : 1, "namesrv_address" : "***", "broker_address" : "***", "public_namesrv_address" : "***", "public_broker_address" : "***"}
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 name String 实例名称。 engine String 引擎。 status String 状态。 description String 消息描述。 type String 实例类型:集群,cluster。 specification String 实例规格。 engine_version String 版本。 instance_id String 实例ID。 charging_mode Integer 付费模式,1表示按需计费,0表示包年/包月计费。 vpc_id String 私有云ID。 vpc_name String 私有云名称。 created_at String 完成创建时间。 格式为时间戳,指从格林威治时间1970年01月01日00时00分00秒起至指定时间的偏差总毫秒数。 product_id String 产品标识。 security_group_id String 安全组ID。 security_group_name String 租户安全组名称。 subnet_id String 子网ID。 subnet_name String 子网名称。 subnet_cidr String 子网路由。 available_zones Array of strings IO未售罄的可用区列表。 user_id String 用户ID。 user_name String 用户名。 maintain_begin String 维护时间窗开始时间,格式为HH:mm:ss。 maintain_end String 维护时间窗结束时间,格式为HH:mm:ss。 enable_log_collection Boolean 是否开启消息收集功能。 storage_space Integer 存储空间,单位:GB。 used_storage_space Integer 已用消息存储空间,单位:GB。 enable_publicip Boolean 是否开启公网。 publicip_id String 实例绑定的弹性IP地址的ID。以英文逗号隔开多个弹性IP地址的ID。如果开启了公网访问功能(即enable_publicip为true),该字段为必选。 publicip_address String 公网IP地址。 ssl_enable Boolean 是否开启SSL。 cross_vpc_info String 跨VPC访问信息。 storage_resource_id String 存储资源ID。 storage_spec_code String 存储规格代码。 service_type String 服务类型。 storage_type String 存储类型。 extend_times Long 扩展时间。 ipv6_enable Boolean 是否开启IPv6。 support_features String 实例支持的特性功能。 disk_encrypted Boolean 是否开启磁盘加密。 ces_version String 云监控 版本。 node_num Integer 节点数。 new_spec_billing_enable Boolean 是否启用新规格计费。 enable_acl Boolean 是否开启访问控制列表。 broker_num Integer 节点数。 namesrv_address String 元数据地址。 broker_address String 业务数据地址。 public_namesrv_address String 公网元数据地址。 public_broker_address String 公网业务数据地址。 tags Array of TagEntity objects 标签列表。 total_storage_space Integer 总存储空间。 resource_spec_code String 资源规格。 表3 TagEntity 参数 参数类型 描述 key String 键。 key不能为空,长度1~128个字符(中文也可以输入128个字符)。 可用UTF-8格式表示的字母、数字和空格,以及以下字符: _ . : = + - @ key两头不能有空格字符。 value String 值。 长度0~255个字符(中文也可以输入255个字符)。 可用UTF-8格式表示的字母、数字和空格,以及以下字符: _ . : / = + - @。 value可以为空字符串。
  • 创建RocketMQ实例 如下示例是创建RocketMQ实例的请求消息: { "name" : "rocketmq-test", "description" : "", "engine" : "reliability", "engine_version" : "4.8.0", "storage_space" : 600, "vpc_id" : "3db8490c-******-047b0de4c5cf", "subnet_id" : "0a0f1fcb-******-301867394d50", "security_group_id" : "23c5977f-******-08d8a0bc4e6c", "available_zones" : [ "9f1c58067******a9b18c77" ], "product_id" : "c6.4u8g.cluster", "ssl_enable" : false, "storage_spec_code" : "dms.physical.storage.ultra.v2", "ipv6_enable" : false, "enable_publicip" : false, "publicip_id" : ""} name:实例名称,由您自行定义。 description:实例描述信息。 engine:消息引擎,设置为reliability。 engine_version:消息引擎的版本。 storage_space:消息存储空间,单位MB。具体取值范围,请参考创建实例。 vpc_id:RocketMQ实例所在的VPC(虚拟私有云)的ID。您可以在虚拟私有云控制台查询,也可以通过查询VPC列表API查询。 subnet_id:VPC内子网的网络ID。您可以在虚拟私有云控制台查询,也可以通过查询子网列表API查询。 security_group_id:安全组ID。您可以在虚拟私有云控制台查询,也可以通过查询安全组列表API查询。 available_zones:创建节点到指定的AZ ID,该参数不能为空数组或者数组的值为空,请参考查询可用区信息获取。 product_id:产品规格。具体取值范围,请参考创建实例。 ssl_enable:是否打开SSL加密访问。 storage_spec_code:存储IO规格。具体取值范围,请参考创建实例。 ipv6_enable:是否支持IPv6。 enable_publicip:是否开启公网访问功能。 publicip_id:实例绑定的弹性IP地址的ID。
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 action 否 String 操作标识(仅支持小写): create(创建) delete(删除) tags 否 Array of TagEntity objects 标签列表。 表3 TagEntity 参数 是否必选 参数类型 描述 key 否 String 键。 key不能为空,长度1~128个字符(中文也可以输入128个字符)。 可用UTF-8格式表示的字母、数字和空格,以及以下字符: _ . : = + - @ key两头不能有空格字符。 value 否 String 值。 长度0~255个字符(中文也可以输入255个字符)。 可用UTF-8格式表示的字母、数字和空格,以及以下字符: _ . : / = + - @。 value可以为空字符串。
  • 请求示例 创建两个实例标签,标签名为key1、key2,值为value1、value2。 POST https://{endpoint}/v2/{project_id}/rocketmq/{instance_id}/tags/action{ "action" : "create", "tags" : [ { "key" : "key1", "value" : "value1" }, { "key" : "key2", "value" : "value2" } ]}
  • 状态码 状态码如表1所示 表1 状态码 状态码 编码 错误码说明 100 Continue 继续请求。 这个临时响应用来通知客户端,它的部分请求已经被服务器接收,且仍未被拒绝。 101 Switching Protocols 切换协议。只能切换到更高级的协议。 例如,切换到HTTP的新版本协议。 200 OK 请求成功。 201 Created 创建类的请求完全成功。 202 Accepted 已经接受请求,但未处理完成。 203 Non-Authoritative Information 非授权信息,请求成功。 204 NoContent 请求完全成功,同时HTTP响应不包含响应体。 在响应OPTIONS方法的HTTP请求时返回此状态码。 205 Reset Content 重置内容,服务器处理成功。 206 Partial Content 服务器成功处理了部分GET请求。 300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。 301 Moved Permanently 永久移动,请求的资源已被永久的移动到新的URI,返回信息会包括新的URI。 302 Found 资源被临时移动。 303 See Other 查看其它地址。 使用GET和POST请求查看。 304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。 305 Use Proxy 所请求的资源必须通过代理访问。 306 Unused 已经被废弃的HTTP状态码。 400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 402 Payment Required 保留请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。 405 MethodNotAllowed 请求中带有该资源不支持的方法。 建议直接修改该请求,不要重试该请求。 406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求。 407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权。 408 Request Time-out 服务器等候请求时发生超时。 客户端可以随时再次提交该请求而无需进行任何更改。 409 Conflict 服务器在完成请求时发生冲突。 返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。 410 Gone 客户端请求的资源已经不存在。 返回该状态码,表明请求的资源已被永久删除。 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息。 412 Precondition Failed 未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。 414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理。 415 Unsupported Media Type 服务器无法处理请求附带的媒体格式。 416 Requested range not satisfiable 客户端请求的范围无效。 417 Expectation Failed 服务器无法满足Expect的请求头信息。 422 UnprocessableEntity 请求格式正确,但是由于含有语义错误,无法响应。 429 TooManyRequests 表明请求超出了客户端访问频率的限制或者服务端接收到多于它能处理的请求。建议客户端读取相应的Retry-After首部,然后等待该首部指出的时间后再重试。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 501 Not Implemented 服务器不支持请求的功能,无法完成请求。 502 Bad Gateway 充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。 503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重试该请求。 504 ServerTimeout 请求在给定的时间内无法完成。客户端仅在为请求指定超时(Timeout)参数时会得到该响应。 505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理。 父主题: 附录
  • 修订记录 发布日期 修订记录 2023-06-06 本次变更如下: 新增新建元数据迁移任务、查询实例下所有迁移任务或查询指定迁移任务信息和删除元数据迁移任务接口。 2023-04-21 本次变更如下: 新增查询消费者列表接口。 2023-02-17 本次变更如下: 更新创建实例的URI。 新增批量添加或删除实例标签、查询实例标签和查询项目标签接口。 2023-01-13 本次变更如下: 新增查询主题列表接口。 2022-07-07 本次变更如下: 新增权限和授权项章节。 2022-05-16 第一次正式发布。
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为 IAM 的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "xxx-xxx-xxx", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" }}
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12M以内,12M以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。Token可通过调用获取用户Token接口获取。 云服务存在两种部署方式:项目级服务和全局级服务。其中: 项目级服务需要获取项目级别的Token,此时请求body中auth.scope的取值为project。 全局级服务需要获取全局级别的Token,此时请求body中auth.scope的取值为domain。 调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } }} 获取Token 后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/projectsContent-Type: application/jsonX-Auth-Token: ABCDEFJ.... 您还可以通过这个视频教程了解如何使用Token认证:https://bbs.huaweicloud.com/videos/101333。
  • 响应消息体(可选) 该部分可选。响应消息体通常以结构化格式(如JSON或XML)返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于获取用户Token接口,返回如下消息体。为篇幅起见,这里只展示部分内容。 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "XXXXXX",...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error_msg": "The format of message is error", "error_code": "AS.0001"} 其中,error_code表示错误码,error_msg表示错误描述信息。
  • API概览 表1 实例管理类接口 API 说明 生命周期管理 包括创建实例、修改实例信息、查询实例、删除实例、查询代理列表。 消费组管理 包括查询消费组、创建消费组、删除消费组、修改消费组、查询消费列表或详情、重置消费进度。 Topic管理 包括创建主题、删除主题、查询主题、修改主题、查询主题消费组列表、查询主题的消息数。 消息管理 包括查询消息、查询消息轨迹、导出死信消息。 用户管理 包括创建用户、查询用户、修改用户、删除用户、查询主题的授权用户列表、查询消费组的授权用户列表。 其他接口 包括查询可用区信息。 标签管理 包括添加或删除实例标签、查询实例标签和查询项目标签。
  • 请求示例 修改用户参数,授予user_name用户发布、订阅topic1和group1的权限。 PUT https://{endpoint}/v2/{project_id}/instances/{instance_id}/users/{user_name}{ "access_key" : "user_name", "secret_key" : "**************", "white_remote_address" : "", "admin" : false, "default_topic_perm" : "DENY", "default_group_perm" : "DENY", "topic_perms" : [ { "name" : "topic1", "perm" : "PUB|SUB" } ], "group_perms" : [ { "name" : "group1", "perm" : "PUB|SUB" } ]}
  • 概述 欢迎使用分布式消息服务RocketMQ版。分布式消息服务RocketMQ版是一个低延迟、弹性高可靠、高吞吐、动态扩展、便捷多样的消息中间件服务。 本文档提供了分布式消息服务RocketMQ版API的描述、语法、参数说明及样例等内容。 分布式消息服务RocketMQ版持续增加新的功能,将不可避免对现有接口有所调整,比如增加响应参数。 为了减少接口变更带来的影响,除了分布式消息服务RocketMQ版自身尽量做到接口向下兼容的同时,用户在使用过程中,应当接受出现返回内容(JSON格式)含有未使用的参数和值的现象,即能够正常忽略未使用的参数和值。 父主题: 使用前必读
  • 响应示例 状态码: 200 修改成功。 { "access_key" : "test_01", "admin" : false, "default_group_perm" : "DENY", "default_topic_perm" : "SUB", "group_perms" : [ ], "secret_key" : "**************", "topic_perms" : [ ], "white_remote_address" : ""}
共100000条