华为云用户手册

  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表4 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 订阅名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须字母或数字开头 description 否 String 订阅描述 channel_id 是 String 所属事件通道ID sources 是 Array of SubscriptionSource objects 订阅的事件源列表, 当前仅支持订阅一个事件源 targets 是 Array of SubscriptionTarget objects 事件目标列表,至少订阅一个事件目标 表5 SubscriptionSource 参数 是否必选 参数类型 描述 id 否 String 订阅源ID,需保证全局唯一。指定ID的订阅源存在时则进行更新,否则进行创建;未指定时由系统自动生成。由小写字母、数字、中划线组成,必须字母或数字开头。 name 是 String 订阅的事件源名称 provider_type 是 String 订阅的事件源的提供方类型 detail 否 Object 订阅的事件源参数列表, 该字段序列化后总长度不超过1024字节 filter 是 Object 订阅事件源的匹配过滤规则, 该字段序列化后总长度不超过2048字节 表6 SubscriptionTarget 参数 是否必选 参数类型 描述 id 否 String 订阅目标ID,需保证全局唯一,由小写字母、数字、中划线组成,必须字母或数字开头。 更新订阅场景时,指定ID的订阅目标存在时则进行更新,否则进行创建; 创建订阅目标场景时,指定ID作为待创建的订阅目标对象ID,未指定时由系统自动生成。 更新订阅目标时,此字段忽略; name 是 String 订阅的事件目标名称 provider_type 是 String 订阅的事件目标的提供方类型 connection_id 否 String 订阅的事件目标使用的目标链接ID detail 否 Object 订阅的事件目标参数列表,该字段序列化后总长度不超过1024字节,函数(urn、invoke_type、agency_name)、函数流(workflow_id、agency_name)、webhook(url)订阅目标必填,其中函数、函数流委托名称必填 kafka_detail 否 KafkaTargetDetail object 订阅的kafka事件目标参数列表,该字段序列化后总长度不超过1024字节 smn_detail 否 SmnTargetDetail object 订阅的 SMN 事件目标参数列表,该字段序列化后总长度不超过1024字节 eg_detail 否 EgTargetDetail object 订阅的事件eg通道目标参数列表,该字段序列化后总长度不超过1024字节,eg通道目标必填 apigw_detail 否 ApigwTargetDetail object 订阅的事件APIGWurl目标参数列表,该字段序列化后总长度不超过1024字节,APIGW目标必填 retry_times 否 Integer 重试次数 transform 是 TransForm object 订阅的事件目标转换规则 dead_letter_queue 否 DeadLetterQueue object 订阅的死信参数列表 表7 KafkaTargetDetail 参数 是否必选 参数类型 描述 topic 是 String 主题 keyTransform 否 keyTransform object 键值规则 表8 keyTransform 参数 是否必选 参数类型 描述 type 否 String 键值规则类型 value 否 String 键值规则,键值规则为VARIABLE,CONSTANT时必填 template 否 String 键值规则模板,键值规则为VARIABLE时必填 表9 SmnTargetDetail 参数 是否必选 参数类型 描述 urn 是 String 主题urn agency_name 是 String 委托名称 subject_transform 否 subject_transform object 标题规则 表10 subject_transform 参数 是否必选 参数类型 描述 type 是 String 标题规则类型 value 是 String 标题规则 template 否 String 标题规则模板,键值规则为VARIABLE时必填 表11 EgTargetDetail 参数 是否必选 参数类型 描述 target_project_id 是 String 目标项目id target_channel_id 是 String 目标通道id target_region 是 String 目标region cross_region 否 Boolean 跨region开关 cross_account 否 Boolean 跨账号开关 agency_name 是 String 委托名称 表12 ApigwTargetDetail 参数 是否必选 参数类型 描述 url 是 String 目标url invocation_http_parameters 否 InvocationHttpParameters object 调用Http的参数 表13 InvocationHttpParameters 参数 是否必选 参数类型 描述 header_parameters 否 Array of HeaderParameter objects 对象列表 表14 HeaderParameter 参数 是否必选 参数类型 描述 is_value_secret 否 Boolean 是否加密 key 否 String header的key值 value 否 String deader的value值 表15 TransForm 参数 是否必选 参数类型 描述 type 是 String 转换规则类型 value 否 String 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 template 否 String 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 表16 DeadLetterQueue 参数 是否必选 参数类型 描述 type 是 String 队列类型 instance_id 是 String 实例id connection_id 是 String 目标连接id topic 是 String 主题
  • 响应参数 状态码:200 表17 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表18 响应Body参数 参数 参数类型 描述 eventStreamingID String 事件流ID
  • 请求示例 创建事件流 POST https://{eg_endpoint}/v1/{project_id}/eventstreamings { "name" : "test-eventstreaming", "description" : "this is a test eventstreaming", "source" : { "source_kafka" : { "addr" : "10.10.10.10:8100", "group" : "group-test", "instance_name" : "instance-name-test", "security_protocol" : "PLAINTEXT", "instance_id" : "instance-id-test", "topic" : "topic-test", "seek_to" : "earliest", "enable_sasl_ssl" : true, "sasl_mechanism" : "PLAIN", "ssl_certificate_url" : "https://domain/kafka-certs.zip", "ssl_certificate_pwd" : null, "user_name" : "", "password" : "" }, "source_mobile_rocketmq" : { "group_id" : "string", "instance_id" : "string", "topic" : "string", "tag" : "string", "authentication_required" : true, "msg_trace_switch" : true, "access_key" : "string", "secret_key" : "string", "message_model" : "CLUSTERING", "addr_type" : "PUBLIC", "addr" : "string", "sdk_url" : "string", "consume_timeout" : 30000, "message_type" : "string", "suspend_time" : 1800, "max_reconsumer_times" : 3, "consumer_thread_nums" : 20, "consumer_batch_max_size" : 20, "consumer_max_wait" : 5, "vpc_id" : "string", "subnet_id" : "string" }, "source_community_rocketmq" : { "instance_name" : "instance-name-test", "instance_id" : "instance-id-test", "addr" : "10.10.10.10:8100", "group" : "group-test", "topic" : "topic-test", "tag" : "string", "vpc_id" : "string", "subnet_id" : "string", "ssl_enable" : true, "enable_acl" : true, "access_key" : "string", "secret_key" : "string", "message_type" : "string", "consume_timeout" : 30000, "consumer_thread_nums" : 20, "consumer_batch_max_size" : 1, "max_reconsume_times" : -1, "suspend_current_queue_time_millis" : 1000 }, "source_dms_rocketmq" : { "instance_name" : "instance-name-test", "instance_id" : "instance-id-test", "group" : "group-test", "topic" : "topic-test", "tag" : "string", "ssl_enable" : true, "enable_acl" : true, "access_key" : "string", "secret_key" : "string", "message_type" : "string", "engine_version" : "string", "consume_timeout" : 30000, "consumer_thread_nums" : 20, "consumer_batch_max_size" : 1, "max_reconsume_times" : -1, "suspend_current_queue_time_millis" : 1000 }, "name" : "string" }, "sink" : { "sink_fg" : { "invoke_type" : "SYNC/ASYNC", "urn" : "String", "agency" : "string" }, "sink_kafka" : { "topic" : "string", "keyTransform" : [ { "type" : "VARIABLE", "value" : "{\"contant_boolean\": true,\"contant_string\": \"constant\",\"varaible_string\": \"$.data.string\",\"varaible_json_object\": \"$.data.object\"}", "template" : "{\"contant_boolean\": ${contant_boolean},\"contant_string\": \"${contant_string!\\\"default\\\"}\",\"varaible_string\": \"${contant_boolean}\",\"varaible_json_object\": ${varaible_json_object!\"null\"}}" } ], "connectionId" : "string" }, "sink_obs" : { "access_key" : "string", "secret_key" : "string", "obs_bucket" : "string", "obs_path" : "string", "time_format" : "string" }, "name" : "string" }, "rule_config" : { "transform" : { "type" : "VARIABLE", "value" : "{\"contant_boolean\": true,\"contant_string\": \"constant\",\"varaible_string\": \"$.data.string\",\"varaible_json_object\": \"$.data.object\"}", "template" : "{\"contant_boolean\": ${contant_boolean},\"contant_string\": \"${contant_string!\\\"default\\\"}\",\"varaible_string\": \"${contant_boolean}\",\"varaible_json_object\": ${varaible_json_object!\"null\"}}" }, "filter" : { } }, "option" : { "thread_num" : "3", "batch_window" : { "count" : 500, "time" : 10, "interval" : 0 } } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 事件流名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须字母或数字开头 description 否 String 事件流描述 source 是 EventStreamingSource object 事件源,一个事件流中事件源只有一个 sink 是 EventStreamingSink object 事件目标,一个事件流中只有一个事件目标,sink_fg、sink_kafka只能选择其中一个参数 rule_config 否 rule_config object 事件规则,包括过滤规则和转换规则 option 否 RunOption object 运行配置 表4 EventStreamingSource 参数 是否必选 参数类型 描述 source_kafka 否 SourceKafkaMQParameters object 事件源参数 source_mobile_rocketmq 否 SourceMobileMQParameters object 事件流移动云rockectMq事件源参数 source_community_rocketmq 否 SourceCommunityMQParameters object 事件流社区rockectMq事件源参数 source_dms_rocketmq 否 SourceDMSMQParameters object DMS事件源参数 name 否 String 事件源类型名称 表5 SourceKafkaMQParameters 参数 是否必选 参数类型 描述 addr 否 String kafka连接地址 group 是 String kafka消费组 instance_name 否 String kafka实例名称 security_protocol 否 String 安全协议 instance_id 否 String kafka实例ID topic 是 String kafka topic名称 seek_to 否 String 消费点位 enable_sasl_ssl 否 Boolean SASL_SSL是否开启 sasl_mechanism 否 String SASL认证机制 ssl_certificate_url 否 String SASL证书地址,配置的obs地址 ssl_certificate_pwd 否 String SASL证书密码 user_name 否 String 用户名 password 否 String 用户密码 表6 SourceMobileMQParameters 参数 是否必选 参数类型 描述 group_id 是 String 消费组id instance_id 是 String 实例id topic 是 String topic tag 否 String 标签 authentication_required 否 Boolean 鉴权认证 msg_trace_switch 否 Boolean 保存消息轨迹 access_key 否 String AccessKey secret_key 否 String SecretKey message_model 是 String 订阅方式 addr_type 是 String 接入点类型 addr 是 String 地址 sdk_url 是 String 依赖SDK consume_timeout 是 Integer 消费超时时间 message_type 是 String 消息类型 suspend_time 否 Integer 失败重试的等待时间 max_reconsumer_times 否 Integer 最大重试次数 consumer_thread_nums 否 Integer 消费线程数 consumer_batch_max_size 否 Integer 批量消费最大消息数 consumer_max_wait 否 Integer 批量消费最大等待时长,单位:秒 vpc_id 否 String 虚拟私有云 subnet_id 否 String 子网 表7 SourceCommunityMQParameters 参数 是否必选 参数类型 描述 instance_name 否 String 实例名称,仅dms的rockectMq需要该字段 instance_id 否 String 实例ID,仅dms的rockectMq需要该字段 addr 是 String rockectMq连接地址 group 是 String 消费组 topic 是 String topic名称 tag 否 String 标签 vpc_id 是 String 虚拟云id subnet_id 是 String 子网id ssl_enable 否 Boolean 开启SSL enable_acl 否 Boolean ACL访问控制 access_key 否 String 用户名 secret_key 否 String 密码 message_type 否 String 消息类型 consume_timeout 否 Integer 消费超时时间 consumer_thread_nums 否 Integer 线程消费数 consumer_batch_max_size 否 Integer 批量消费最大消息数 max_reconsume_times 否 Integer 最大重试次数,-1表示一直重试 suspend_current_queue_time_millis 否 Integer 重试间隔,单位ms 表8 SourceDMSMQParameters 参数 是否必选 参数类型 描述 instance_name 否 String 实例名称,仅dms的rockectMq需要该字段 instance_id 是 String 实例ID,仅dms的rockectMq需要该字段 group 是 String 消费组 topic 是 String topic名称 tag 否 String 标签 ssl_enable 否 Boolean 开启SSL enable_acl 否 Boolean ACL访问控制 access_key 否 String 用户名 secret_key 否 String 密码 message_type 否 String 消费方式,针对不同生产顺序消息类型,选择消费方式会导致不同结果,请严格按照需求选择消费方式。1、生产顺序为:设置消息组,保证消息顺序发送。消费方式为:顺序消费,实际消息处理结果:按照消息组粒度,严格保证消息顺序。 同一消息组内的消息的消费顺序和发送顺序完全一致。2、生产顺序为:设置消息组,保证消息顺序发送。消费方式为:并发消费,实际消息处理结果:并发消费,尽可能按时间顺序处理。3、生产顺序为:未设置消息组,消息乱序发送。消费方式为:顺序消费,实际消息处理结果:按队列存储粒度,严格顺序。 基于 Apache RocketMQ 本身队列的属性,消费顺序和队列存储的顺序一致,但不保证和发送顺序一致。4、生产顺序为:未设置消息组,消息乱序发送。消费方式为:并发消费,实际消息处理结果:并发消费,尽可能按照时间顺序处理。 engine_version 否 String mq实例版本 consume_timeout 否 Integer 消费超时时间 consumer_thread_nums 否 Integer 线程消费数 consumer_batch_max_size 否 Integer 批量消费最大消息数 max_reconsume_times 否 Integer 最大重试次数,-1表示一直重试 suspend_current_queue_time_millis 否 Integer 重试间隔,单位ms 表9 EventStreamingSink 参数 是否必选 参数类型 描述 sink_fg 否 SinkFGParameters object 函数事件目标的参数 sink_kafka 否 SinkKafkaParameters object kafka事件目标的参数 sink_obs 否 SinkObsParameters object OBS事件目标的参数 name 否 String 事件目标类型名称 表10 SinkFGParameters 参数 是否必选 参数类型 描述 invoke_type 否 String 函数执行方式,同步/异步 urn 否 String 函数链接 agency 否 String 租户委托 表11 SinkKafkaParameters 参数 是否必选 参数类型 描述 topic 是 String topic名称 keyTransform 否 Array of TransForm objects key的转换规则 connectionId 是 String 目标连接id 表12 TransForm 参数 是否必选 参数类型 描述 type 是 String 转换规则类型 value 否 String 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 template 否 String 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 表13 SinkObsParameters 参数 是否必选 参数类型 描述 access_key 是 String AK secret_key 是 String SK obs_bucket 是 String 桶 obs_path 否 String 转储目录 time_format 是 String 时间目录格式 表14 rule_config 参数 是否必选 参数类型 描述 transform 否 TransForm object 订阅的事件目标转换规则 filter 否 Object 过滤规则 表15 RunOption 参数 是否必选 参数类型 描述 thread_num 否 Integer 并发数 batch_window 否 BatchWindow object 批量推送 表16 BatchWindow 参数 是否必选 参数类型 描述 count 否 Integer 批量推送条数[1,10000] time 否 Integer 重试次数 interval 否 Integer 批量推送间隔[0,15],单位秒
  • 响应参数 状态码:200 表5 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表6 响应Body参数 参数 参数类型 描述 id String 事件源ID name String 事件源名称 label String 事件源名称展示 description String 事件源描述 provider_type String 事件源提供方类型,OFFICIAL:官方云服务事件源;CUSTOM:用户创建的自定义事件源;PARTNER:伙伴事件源 event_types Array of event_types objects 事件源提供的事件类型列表,只有官方云服务事件源提供事件类型 created_time String 创建UTC时间 updated_time String 更新UTC时间 channel_id String 事件源归属的事件通道ID channel_name String 事件源归属的事件通道名称 type String 事件源类型 detail Object json格式封装消息实例链接信息:如RabbitMQ实例的instance_id字段、 虚拟主机 vhost字段、队列queue字段、用户名、密码等 status String 自定义事件源状态 error_info ErrorInfo object 错误信息 表7 event_types 参数 参数类型 描述 name String 事件类型名称 description String 事件类型描述 表8 ErrorInfo 参数 参数类型 描述 error_code String 错误码 error_detail String 错误详情 error_msg String 错误信息
  • 响应示例 状态码:200 成功响应 { "id" : "90e0b962-c6c1-438c-ba8a-3024fe592bda", "name" : "first-source", "label" : "first-source", "description" : "first event source", "provider_type" : "CUSTOM", "event_types" : [ { "name" : "OBS:CloudTrace:ApiCall", "description" : "服务API调用类型事件" } ], "created_time" : "2021-12-09 09:00:00", "updated_time" : "2021-12-09 09:00:00", "channel_id" : "bd14144e-8f3c-43d6-bdfd-bf09b52c2b96", "channel_name" : "channel", "type" : "RABBITMQ", "detail" : "{\"instance_id\":\"ac14144e-9v3c-43d6-acfd-bf09b52c98uy\",\"user_name\":\"rabbitmq_user\",\"password\":\"changeme\",\"vhost_name\":\"vhost_name\",\"queue_name\":\"queue_name\"}", "status" : "RUNNING", "error_info" : { } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 自定义事件源名称,租户下唯一,由小写字母、数字、点、下划线和中划线组成,必须以字母或数字开头,且不能以hc.开头 description 否 String 事件源描述 channel_id 否 String 指导事件源归属的事件通道ID type 否 String 事件源类型 detail 否 RocketMqDetail object json格式封装消息实例链接信息 表4 RocketMqDetail 参数 是否必选 参数类型 描述 instance_id 否 String RocketMQ实例ID group 是 String 消费组 topic 是 String Topic access_key 是 String 用户名 secret_key 是 String 密钥 vpc_id 否 String 虚拟私有云 subnet_id 否 String 子网 namesrv_address 否 String 连接地址 ssl_enable 否 Boolean SSL enable_acl 否 Boolean ACL访问控制
  • 请求示例 创建自定义事件源 POST https://{endpoint}/v1/{project_id}/sources { "name" : "first-source", "description" : "first event source", "channel_id" : "bd14144e-8f3c-43d6-bdfd-bf09b52c2b96", "type" : "RABBITMQ" }
  • 请求示例 创建自定义事件模型版本 POST https://{endpoint}/v1/{project_id}/schemas/{schema_id}/versions { "definition" : "{\"$schema\": \"http://json-schema.org/draft-06/schema#\",\"title\": \"fileUpload\",\"definitions\": {\"fileUpload\": {\"properties\": {\"fileName\": {\"type\": \"string\"},\"fileSize\": {\"type\": \"integer\"}},\"required\": [\"foo\",\"bar\"],\"type\": \"object\"}},\"properties\": {\"specversion\": {\"type\": \"string\"},\"id\": {\"type\": \"string\"},\"type\": {\"type\": \"string\"},\"source\": {\"type\": \"string\"},\"subject\": {\"type\": \"string\"},\"datacontenttype\": {\"type\": \"string\"},\"dataschema\": {\"type\": \"string\"},\"time\": {\"format\": \"date-time\",\"type\": \"string\"},\"data\": {\"$ref\": \"#/definitions/fileUpload\"}},\"required\": [\"id\",\"source\",\"time\",\"type\",\"specversion\"],\"type\": \"object\"}" }
  • 响应参数 状态码:200 表4 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表5 响应Body参数 参数 参数类型 描述 id String 事件模型版本ID schema_id String 事件模型ID version Integer 事件模型版本号 format String 事件模型格式 created_time String 创建时间 updated_time String 更新时间 definition String 事件模型内容定义
  • 响应示例 状态码:200 Demo Information { "id" : "6f70e150-f20c-4c22-85aa-78ceecd52b98", "schema_id" : "2a0ee4f2-78a4-4122-80af-7455e37f64ee", "version" : 1, "format" : "OPENAPI_3_0", "created_time" : "2021-12-09 09:00:00", "updated_time" : "2021-12-09 09:00:00", "definition" : "{\"$schema\": \"http://json-schema.org/draft-06/schema#\",\"title\": \"fileUpload\",\"definitions\": {\"fileUpload\": {\"properties\": {\"fileName\": {\"type\": \"string\"},\"fileSize\": {\"type\": \"integer\"}},\"required\": [\"foo\",\"bar\"],\"type\": \"object\"}},\"properties\": {\"specversion\": {\"type\": \"string\"},\"id\": {\"type\": \"string\"},\"type\": {\"type\": \"string\"},\"source\": {\"type\": \"string\"},\"subject\": {\"type\": \"string\"},\"datacontenttype\": {\"type\": \"string\"},\"dataschema\": {\"type\": \"string\"},\"time\": {\"format\": \"date-time\",\"type\": \"string\"},\"data\": {\"$ref\": \"#/definitions/fileUpload\"}},\"required\": [\"id\",\"source\",\"time\",\"type\",\"specversion\"],\"type\": \"object\"}" }
  • 响应参数 状态码:200 表4 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表5 响应Body参数 参数 参数类型 描述 id String 事件模型ID name String 事件模型名称,租户下唯一 description String 事件模型描述 compatibility String 事件模型兼容性 provider_type String 提供方类型,OFFICIAL:官方事件源;CUSTOM:自定义事件源 format String 事件模型格式 number_of_versions Integer 事件模型版本数 created_time String 创建时间 updated_time String 更新时间 version Integer 事件模型当前版本号 definition String 事件模型内容定义
  • 请求示例 创建自定义事件模型 POST https://{endpoint}/v1/{project_id}/schemas { "name" : "file.upload", "description" : "文件上传事件模型定义", "compatibility" : "NONE", "format" : "OPENAPI_3_0", "definition" : "{\"$schema\": \"http://json-schema.org/draft-06/schema#\",\"title\": \"fileUpload\",\"definitions\": {\"fileUpload\": {\"properties\": {\"fileName\": {\"type\": \"string\"},\"fileSize\": {\"type\": \"integer\"}},\"required\": [\"foo\",\"bar\"],\"type\": \"object\"}},\"properties\": {\"specversion\": {\"type\": \"string\"},\"id\": {\"type\": \"string\"},\"type\": {\"type\": \"string\"},\"source\": {\"type\": \"string\"},\"subject\": {\"type\": \"string\"},\"datacontenttype\": {\"type\": \"string\"},\"dataschema\": {\"type\": \"string\"},\"time\": {\"format\": \"date-time\",\"type\": \"string\"},\"data\": {\"$ref\": \"#/definitions/fileUpload\"}},\"required\": [\"id\",\"source\",\"time\",\"type\",\"specversion\"],\"type\": \"object\"}" }
  • 响应示例 状态码:200 Demo Information { "id" : "2a0ee4f2-78a4-4122-80af-7455e37f64ee", "name" : "file.upload", "description" : "文件上传事件模型定义", "compatibility" : "NONE", "provider_type" : "CUSTOM", "format" : "OPENAPI_3_0", "number_of_versions" : 1, "created_time" : "2021-12-09 09:00:00", "updated_time" : "2021-12-09 09:00:00", "version" : 1, "definition" : "{\"$schema\": \"http://json-schema.org/draft-06/schema#\",\"title\": \"fileUpload\",\"definitions\": {\"fileUpload\": {\"properties\": {\"fileName\": {\"type\": \"string\"},\"fileSize\": {\"type\": \"integer\"}},\"required\": [\"foo\",\"bar\"],\"type\": \"object\"}},\"properties\": {\"specversion\": {\"type\": \"string\"},\"id\": {\"type\": \"string\"},\"type\": {\"type\": \"string\"},\"source\": {\"type\": \"string\"},\"subject\": {\"type\": \"string\"},\"datacontenttype\": {\"type\": \"string\"},\"dataschema\": {\"type\": \"string\"},\"time\": {\"format\": \"date-time\",\"type\": \"string\"},\"data\": {\"$ref\": \"#/definitions/fileUpload\"}},\"required\": [\"id\",\"source\",\"time\",\"type\",\"specversion\"],\"type\": \"object\"}" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 事件模型名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须字母或数字开头 description 否 String 事件模型描述 compatibility 是 String 事件模型兼容性 format 否 String schema内容格式 definition 是 String 事件模型内容定义
  • 请求示例 创建名为cluster-qapbtr95的kafka专业版事件流集群 POST https://{eg_endpoint}/v1/{project_id}/eventrouter/clusters { "name" : "cluster-qapbtr95", "description" : "", "vpc_id" : "199f632d-34e7-4915-b4d8-1bc4e2824867", "subnet_id" : "0d1799e1-116e-4551-92dc-02dd8a860072", "source_type" : "KAFKA", "sink_type" : "KAFKA" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 集群名称。约束:集群名称由大小英文字母、数字、点、中划线和下划线组成,必须以大小英文字母或数字开头,最多128个字符。 description 否 String 集群描述,约束:集群描述不能超过256位。 source_type 是 String 源端类型,可以为KAFKA/ROCKETMQ/D CS 三种类型其中一种,需要与目标端类型保持一致 sink_type 是 String 目标端类型 vpc_id 是 String 虚拟私有云ID subnet_id 是 String 子网ID zone_names 否 String 可用区名称 bss_param 否 bssParam object 表示计费模式的相关参数。置空时,默认计费模式为按需计费;否则是包周期方式。 flavor 否 String 集群规格 表4 bssParam 参数 是否必选 参数类型 描述 charging_mode 是 String 付费方式(后付费、按需付费;预付费,即包周期付费)
  • 响应示例 状态码:200 请求成功 { "cluster_id" : "fac59513-6c18-4266-bc81-5d412dfc1925", "name" : "cluster-ifpcv5u4", "description" : "", "source_type" : "KAFKA", "sink_type" : "KAFKA", "status" : "CREATING", "job_count" : 0, "err_code" : null, "err_message" : null, "created_time" : "2024-05-16T11:46:07Z", "updated_time" : "2024-05-16T11:46:07Z", "vpc_id" : "199f632d-34e7-4915-b4d8-1bc4e2824867", "subnet_id" : "0d1799e1-116e-4551-92dc-02dd8a860072", "zone_names" : "az0" }
  • 响应参数 状态码:200 表5 响应Header参数 参数 参数类型 描述 X-Request-Id String 请求ID 表6 响应Body参数 参数 参数类型 描述 cluster_id String 专业版事件流集群ID name String 集群名称。约束:集群名称由大小英文字母、数字、点、中划线和下划线组成,必须以大小英文字母或数字开头,最多128个字符。 description String 集群描述,约束:集群描述不能超过256位。 source_type String 源端类型 sink_type String 目标端类型 subnet_id String 子网ID vpc_id String 虚拟私有云ID zone_names String 可用区名称 status String 作业状态 job_count Number 当前集群下作业数量 flavor String 规格 charging_mode String 计费模式 err_code String 错误码 err_message String 错误原因 created_time String 创建UTC时间 updated_time String 更新UTC时间
  • 请求示例 创建访问端点 GET https://{eg_endpoint}/v1/{project_id}/endpoints { "name" : "endpoint", "vpc_id" : "68bfbcc1-dff2-47e4-a9d4-332b9bc1b8de", "subnet_id" : "84758cf5-9c62-43ae-a778-3dbd8370c0a4", "description" : "string" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String endpoint名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须以字母或数字开头 vpc_id 是 String 访问端点所在的VPC的ID subnet_id 是 String 访问端点所在的子网的ID description 否 String 描述
  • 响应示例 状态码:200 成功 { "id" : "23709d68-54d5-423b-a6be-03302e893152", "name" : "endpoint", "vpc_id" : "68bfbcc1-dff2-47e4-a9d4-332b9bc1b8de", "subnet_id" : "84758cf5-9c62-43ae-a778-3dbd8370c0a4", "domain" : "events.cn-north-4.myhuaweicloud.com", "description" : "访问端点", "status" : "CREATED", "error_info" : { }, "type" : "PRIVATE", "scalable" : false, "created_time" : "2021-12-09 09:00:00", "updated_time" : "2021-12-09 09:00:00", "endpoints" : [ { } ] }
  • 响应参数 状态码:200 表4 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表5 响应Body参数 参数 参数类型 描述 id String 访问端点ID name String 用户指定的访问端点名称 vpc_id String 访问端点所在的VPC的ID subnet_id String 访问端点所在的子网的ID domain String 访问 域名 description String 描述 status String 访问端点状态 error_info ErrorInfo object 错误信息 type String 访问端点类型 scalable Boolean 是否可更新 created_time String 创建UTC时间 updated_time String 更新UTC时间 endpoints Array of EndpointConnection objects 访问端点终端节点列表 表6 ErrorInfo 参数 参数类型 描述 error_code String 错误码 error_detail String 错误详情 error_msg String 错误信息 表7 EndpointConnection 参数 参数类型 描述 endpoint_service_id String 访问端点的服务ID endpoint_service_name String 访问端点的服务名称 marker_id String 访问端点的终端节点的报文ID id String 访问端点的终端节点ID ip String 访问端点的终端节点IP created_time String 访问端点的终端节点创建时间
  • 请求示例 创建目标连接 POST https://{endpoint}/v1/{project_id}/connections { "name" : "private-link", "description" : "", "vpc_id" : "ac14144e-8fec-53d6-bdfd-8f09b52c09iu", "subnet_id" : "bf14153e-5fec-67d6-b89d-5409b52c0op8", "type" : { } }
  • 响应示例 状态码:200 Demo Information { "id" : "90e0b962-c6c1-438c-ba8a-3024fe592bda", "name" : "private-link", "description" : "", "status" : "CREATING", "error_info" : { }, "vpc_id" : "ac14144e-8fec-53d6-bdfd-8f09b52c09iu", "subnet_id" : "bf14153e-5fec-67d6-b89d-5409b52c0op8", "agency" : "EG_TRUST", "flavor" : { "name" : "default", "concurrency_type" : "exclusive", "concurrency" : 500, "bandwidth_type" : "exclusive" }, "type" : { }, "kafka_detail" : { }, "created_time" : "2021-12-09 09:00:00", "updated_time" : "2021-12-09 09:00:00" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 目标连接名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须以字母或数字开头,不能为default description 否 String 目标连接描述 vpc_id 是 String 待连接的VPC ID subnet_id 是 String 待连接的子网ID type 否 String 目标连接类型。目前支持webhook:http连接;kafka:华为云官方kafka实例 kafka_detail 否 KafkaConnectionDetail object kafka连接参数 表4 KafkaConnectionDetail 参数 是否必选 参数类型 描述 instance_id 是 String kafka实例id。 addr 是 String kafka连接地址。 security_protocol 否 String 安全协议。 enable_sasl_ssl 是 Boolean kafka实例是否开启了SASL_SSL。 user_name 否 String kafka实例用户名。实例开启了SASL_SSL时必填 password 否 String kafka实例密码。实例开启了SASL_SSL时必填 acks 否 String 收到Server端确认信号个数,表示procuder需要收到多少个这样的确认信号,算消息发送成功。acks参数代表了数据备份的可用性。支持选项: acks=0:表示producer不需要等待任何确认收到的信息,副本将立即加到socket buffer并认为已经发送。没有任何保障可以保证此种情况下server已经成功接收数据,同时重试配置不会发生作用(因为客户端不知道是否失败)回馈的offset会总是设置为-1。 acks=1:这意味着至少要等待leader已经成功将数据写入本地log,但是并没有等待所有follower是否成功写入。如果follower没有成功备份数据,而此时leader又无法提供服务,则消息会丢失。 acks=all:这意味着leader需要等待ISR中所有备份都成功写入日志,只有任何一个备份存活,数据都不会丢失。min.insync.replicas指定必须确认写入才能被认为成功的副本的最小数量。
  • 响应参数 状态码:200 表5 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表6 响应Body参数 参数 参数类型 描述 id String 事件源ID name String 目标连接名称,租户下唯一,由小写字母、数字、点、下划线和中划线组成,必须以字母或数字开头,不能为default description String 目标连接描述 status String 目标连接状态 error_info ErrorInfo object 错误信息 vpc_id String 待连接的VPC ID subnet_id String 待连接的子网ID agency String 私网目标连接使用的用户委托名称 flavor flavor object 规格 type String 目标连接类型。目前支持webhook:http连接;kafka:华为云官方kafka实例 kafka_detail KafkaConnectionDetail object kafka连接参数 created_time String 创建UTC时间 updated_time String 更新UTC时间 表7 ErrorInfo 参数 参数类型 描述 error_code String 错误码 error_detail String 错误详情 error_msg String 错误信息 表8 flavor 参数 参数类型 描述 name String 规格名称 concurrency_type String 并发规格类型 concurrency Integer 并发数 bandwidth_type String 带宽类型 表9 KafkaConnectionDetail 参数 参数类型 描述 instance_id String kafka实例id。 addr String kafka连接地址。 security_protocol String 安全协议。 enable_sasl_ssl Boolean kafka实例是否开启了SASL_SSL。 user_name String kafka实例用户名。实例开启了SASL_SSL时必填 password String kafka实例密码。实例开启了SASL_SSL时必填 acks String 收到Server端确认信号个数,表示procuder需要收到多少个这样的确认信号,算消息发送成功。acks参数代表了数据备份的可用性。支持选项: acks=0:表示producer不需要等待任何确认收到的信息,副本将立即加到socket buffer并认为已经发送。没有任何保障可以保证此种情况下server已经成功接收数据,同时重试配置不会发生作用(因为客户端不知道是否失败)回馈的offset会总是设置为-1。 acks=1:这意味着至少要等待leader已经成功将数据写入本地log,但是并没有等待所有follower是否成功写入。如果follower没有成功备份数据,而此时leader又无法提供服务,则消息会丢失。 acks=all:这意味着leader需要等待ISR中所有备份都成功写入日志,只有任何一个备份存活,数据都不会丢失。min.insync.replicas指定必须确认写入才能被认为成功的副本的最小数量。
  • 请求示例 创建自定义事件通道 POST https://{endpoint}/v1/{project_id}/channels { "name" : "channel", "description" : "first channel", "enterprise_project_id" : "string", "cross_account" : true, "policy" : { "additionalProp1" : { "Sid" : "allow_account_to_put_events", "Effect" : "Allow", "Principal" : { "additionalProp1" : { "IAM" : [ "domainID" ] }, "additionalProp2" : { "IAM" : [ "domainID" ] }, "additionalProp3" : { "IAM" : [ "domainID" ] } }, "Action" : "eg:channels:putEvents", "Resource" : "urn:eg:cn-east-2:07d52e5245000fef0f08c008b20dc5c0:channel:testChannel" }, "additionalProp2" : { "Sid" : "allow_account_to_put_events", "Effect" : "Allow", "Principal" : { "additionalProp1" : { "IAM" : [ "domainID" ] }, "additionalProp2" : { "IAM" : [ "domainID" ] }, "additionalProp3" : { "IAM" : [ "domainID" ] } }, "Action" : "eg:channels:putEvents", "Resource" : "urn:eg:cn-east-2:07d52e5245000fef0f08c008b20dc5c0:channel:testChannel" }, "additionalProp3" : { "Sid" : "allow_account_to_put_events", "Effect" : "Allow", "Principal" : { "additionalProp1" : { "IAM" : [ "domainID" ] }, "additionalProp2" : { "IAM" : [ "domainID" ] }, "additionalProp3" : { "IAM" : [ "domainID" ] } }, "Action" : "eg:channels:putEvents", "Resource" : "urn:eg:cn-east-2:07d52e5245000fef0f08c008b20dc5c0:channel:testChannel" } } }
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表4 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 通道名称,租户下唯一,由字母,数字,点,下划线和中划线组成,必须字母或数字开头,不能是default description 否 String 通道描述 enterprise_project_id 否 String 企业项目id cross_account 否 Boolean 跨账号开关 policy 否 Object 策略
  • 响应参数 状态码:200 表5 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表6 响应Body参数 参数 参数类型 描述 id String 通道ID name String 通道名称 description String 通道描述 provider_type String 通道提供方类型,OFFICIAL:官方事件通道;CUSTOM:自定义事件通道;PARTNER:伙伴事件通道 created_time String 创建UTC时间 updated_time String 更新UTC时间 enterprise_project_id String 企业项目id
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全