1// Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//    http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package v20190819
16
17import (
18    "encoding/json"
19    "errors"
20
21    tchttp "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http"
22)
23
24type Acl struct {
25
26	// Acl资源类型,(0:UNKNOWN,1:ANY,2:TOPIC,3:GROUP,4:CLUSTER,5:TRANSACTIONAL_ID)当前只有TOPIC,
27	ResourceType *int64 `json:"ResourceType,omitempty" name:"ResourceType"`
28
29	// 资源名称,和resourceType相关如当resourceType为TOPIC时,则该字段表示topic名称,当resourceType为GROUP时,该字段表示group名称
30	ResourceName *string `json:"ResourceName,omitempty" name:"ResourceName"`
31
32	// 用户列表,默认为User:*,表示任何user都可以访问,当前用户只能是用户列表中包含的用户
33	// 注意:此字段可能返回 null,表示取不到有效值。
34	Principal *string `json:"Principal,omitempty" name:"Principal"`
35
36	// 默认为*,表示任何host都可以访问,当前ckafka不支持host为*,但是后面开源kafka的产品化会直接支持
37	// 注意:此字段可能返回 null,表示取不到有效值。
38	Host *string `json:"Host,omitempty" name:"Host"`
39
40	// Acl操作方式(0:UNKNOWN,1:ANY,2:ALL,3:READ,4:WRITE,5:CREATE,6:DELETE,7:ALTER,8:DESCRIBE,9:CLUSTER_ACTION,10:DESCRIBE_CONFIGS,11:ALTER_CONFIGS,12:IDEMPOTEN_WRITE)
41	Operation *int64 `json:"Operation,omitempty" name:"Operation"`
42
43	// 权限类型(0:UNKNOWN,1:ANY,2:DENY,3:ALLOW)
44	PermissionType *int64 `json:"PermissionType,omitempty" name:"PermissionType"`
45}
46
47type AclResponse struct {
48
49	// 符合条件的总数据条数
50	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
51
52	// ACL列表
53	// 注意:此字段可能返回 null,表示取不到有效值。
54	AclList []*Acl `json:"AclList,omitempty" name:"AclList" list`
55}
56
57type AppIdResponse struct {
58
59	// 符合要求的所有AppId数量
60	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
61
62	// 符合要求的App Id列表
63	// 注意:此字段可能返回 null,表示取不到有效值。
64	AppIdList []*int64 `json:"AppIdList,omitempty" name:"AppIdList" list`
65}
66
67type Assignment struct {
68
69	// assingment版本信息
70	Version *int64 `json:"Version,omitempty" name:"Version"`
71
72	// topic信息列表
73	// 注意:此字段可能返回 null,表示取不到有效值。
74	Topics []*GroupInfoTopics `json:"Topics,omitempty" name:"Topics" list`
75}
76
77type ClusterInfo struct {
78
79	// 集群Id
80	ClusterId *int64 `json:"ClusterId,omitempty" name:"ClusterId"`
81
82	// 集群名称
83	ClusterName *string `json:"ClusterName,omitempty" name:"ClusterName"`
84
85	// 集群最大磁盘 单位GB
86	// 注意:此字段可能返回 null,表示取不到有效值。
87	MaxDiskSize *int64 `json:"MaxDiskSize,omitempty" name:"MaxDiskSize"`
88
89	// 集群最大带宽 单位MB/s
90	// 注意:此字段可能返回 null,表示取不到有效值。
91	MaxBandWidth *int64 `json:"MaxBandWidth,omitempty" name:"MaxBandWidth"`
92
93	// 集群当前可用磁盘  单位GB
94	// 注意:此字段可能返回 null,表示取不到有效值。
95	AvailableDiskSize *int64 `json:"AvailableDiskSize,omitempty" name:"AvailableDiskSize"`
96
97	// 集群当前可用带宽 单位MB/s
98	// 注意:此字段可能返回 null,表示取不到有效值。
99	AvailableBandWidth *int64 `json:"AvailableBandWidth,omitempty" name:"AvailableBandWidth"`
100
101	// 集群所属可用区,表明集群归属的可用区
102	// 注意:此字段可能返回 null,表示取不到有效值。
103	ZoneId *int64 `json:"ZoneId,omitempty" name:"ZoneId"`
104
105	// 集群节点所在的可用区,若该集群为跨可用区集群,则包含该集群节点所在的多个可用区。
106	// 注意:此字段可能返回 null,表示取不到有效值。
107	ZoneIds []*int64 `json:"ZoneIds,omitempty" name:"ZoneIds" list`
108}
109
110type Config struct {
111
112	// 消息保留时间
113	// 注意:此字段可能返回 null,表示取不到有效值。
114	Retention *int64 `json:"Retention,omitempty" name:"Retention"`
115
116	// 最小同步复制数
117	// 注意:此字段可能返回 null,表示取不到有效值。
118	MinInsyncReplicas *int64 `json:"MinInsyncReplicas,omitempty" name:"MinInsyncReplicas"`
119
120	// 日志清理模式,默认 delete。
121	// delete:日志按保存时间删除;compact:日志按 key 压缩;compact, delete:日志按 key 压缩且会保存时间删除。
122	// 注意:此字段可能返回 null,表示取不到有效值。
123	CleanUpPolicy *string `json:"CleanUpPolicy,omitempty" name:"CleanUpPolicy"`
124
125	// Segment 分片滚动的时长
126	// 注意:此字段可能返回 null,表示取不到有效值。
127	SegmentMs *int64 `json:"SegmentMs,omitempty" name:"SegmentMs"`
128
129	// 0表示 false。 1表示 true。
130	// 注意:此字段可能返回 null,表示取不到有效值。
131	UncleanLeaderElectionEnable *int64 `json:"UncleanLeaderElectionEnable,omitempty" name:"UncleanLeaderElectionEnable"`
132
133	// Segment 分片滚动的字节数
134	// 注意:此字段可能返回 null,表示取不到有效值。
135	SegmentBytes *int64 `json:"SegmentBytes,omitempty" name:"SegmentBytes"`
136
137	// 最大消息字节数
138	// 注意:此字段可能返回 null,表示取不到有效值。
139	MaxMessageBytes *int64 `json:"MaxMessageBytes,omitempty" name:"MaxMessageBytes"`
140}
141
142type ConsumerGroup struct {
143
144	// 用户组名称
145	ConsumerGroupName *string `json:"ConsumerGroupName,omitempty" name:"ConsumerGroupName"`
146
147	// 订阅信息实体
148	SubscribedInfo []*SubscribedInfo `json:"SubscribedInfo,omitempty" name:"SubscribedInfo" list`
149}
150
151type ConsumerGroupResponse struct {
152
153	// 符合条件的消费组数量
154	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
155
156	// 主题列表
157	// 注意:此字段可能返回 null,表示取不到有效值。
158	TopicList []*ConsumerGroupTopic `json:"TopicList,omitempty" name:"TopicList" list`
159
160	// 消费分组List
161	// 注意:此字段可能返回 null,表示取不到有效值。
162	GroupList []*ConsumerGroup `json:"GroupList,omitempty" name:"GroupList" list`
163
164	// 所有分区数量
165	// 注意:此字段可能返回 null,表示取不到有效值。
166	TotalPartition *int64 `json:"TotalPartition,omitempty" name:"TotalPartition"`
167
168	// 监控的分区列表
169	// 注意:此字段可能返回 null,表示取不到有效值。
170	PartitionListForMonitor []*Partition `json:"PartitionListForMonitor,omitempty" name:"PartitionListForMonitor" list`
171
172	// 主题总数
173	// 注意:此字段可能返回 null,表示取不到有效值。
174	TotalTopic *int64 `json:"TotalTopic,omitempty" name:"TotalTopic"`
175
176	// 监控的主题列表
177	// 注意:此字段可能返回 null,表示取不到有效值。
178	TopicListForMonitor []*ConsumerGroupTopic `json:"TopicListForMonitor,omitempty" name:"TopicListForMonitor" list`
179
180	// 监控的组列表
181	// 注意:此字段可能返回 null,表示取不到有效值。
182	GroupListForMonitor []*Group `json:"GroupListForMonitor,omitempty" name:"GroupListForMonitor" list`
183}
184
185type ConsumerGroupTopic struct {
186
187	// 主题ID
188	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
189
190	// 主题名称
191	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
192}
193
194type CreateAclRequest struct {
195	*tchttp.BaseRequest
196
197	// 实例id信息
198	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
199
200	// Acl资源类型,(0:UNKNOWN,1:ANY,2:TOPIC,3:GROUP,4:CLUSTER,5:TRANSACTIONAL_ID),当前只有TOPIC,其它字段用于后续兼容开源kafka的acl时使用
201	ResourceType *int64 `json:"ResourceType,omitempty" name:"ResourceType"`
202
203	// Acl操作方式,(0:UNKNOWN,1:ANY,2:ALL,3:READ,4:WRITE,5:CREATE,6:DELETE,7:ALTER,8:DESCRIBE,9:CLUSTER_ACTION,10:DESCRIBE_CONFIGS,11:ALTER_CONFIGS)
204	Operation *int64 `json:"Operation,omitempty" name:"Operation"`
205
206	// 权限类型,(0:UNKNOWN,1:ANY,2:DENY,3:ALLOW),当前ckakfa支持ALLOW(相当于白名单),其它用于后续兼容开源kafka的acl时使用
207	PermissionType *int64 `json:"PermissionType,omitempty" name:"PermissionType"`
208
209	// 资源名称,和resourceType相关,如当resourceType为TOPIC时,则该字段表示topic名称,当resourceType为GROUP时,该字段表示group名称
210	ResourceName *string `json:"ResourceName,omitempty" name:"ResourceName"`
211
212	// 默认为\*,表示任何host都可以访问,当前ckafka不支持host为\*,但是后面开源kafka的产品化会直接支持
213	Host *string `json:"Host,omitempty" name:"Host"`
214
215	// 用户列表,默认为User:*,表示任何user都可以访问,当前用户只能是用户列表中包含的用户。传入时需要加 User: 前缀,如用户A则传入User:A。
216	Principal *string `json:"Principal,omitempty" name:"Principal"`
217}
218
219func (r *CreateAclRequest) ToJsonString() string {
220    b, _ := json.Marshal(r)
221    return string(b)
222}
223
224// It is highly **NOT** recommended to use this function
225// because it has no param check, nor strict type check
226func (r *CreateAclRequest) FromJsonString(s string) error {
227	f := make(map[string]interface{})
228	if err := json.Unmarshal([]byte(s), &f); err != nil {
229		return err
230	}
231	delete(f, "InstanceId")
232	delete(f, "ResourceType")
233	delete(f, "Operation")
234	delete(f, "PermissionType")
235	delete(f, "ResourceName")
236	delete(f, "Host")
237	delete(f, "Principal")
238	if len(f) > 0 {
239		return errors.New("CreateAclRequest has unknown keys!")
240	}
241	return json.Unmarshal([]byte(s), &r)
242}
243
244type CreateAclResponse struct {
245	*tchttp.BaseResponse
246	Response *struct {
247
248		// 返回结果
249		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
250
251		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
252		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
253	} `json:"Response"`
254}
255
256func (r *CreateAclResponse) ToJsonString() string {
257    b, _ := json.Marshal(r)
258    return string(b)
259}
260
261// It is highly **NOT** recommended to use this function
262// because it has no param check, nor strict type check
263func (r *CreateAclResponse) FromJsonString(s string) error {
264	return json.Unmarshal([]byte(s), &r)
265}
266
267type CreateInstancePreData struct {
268
269	// CreateInstancePre返回固定为0,不能作为CheckTaskStatus的查询条件。只是为了保证和后台数据结构对齐。
270	// 注意:此字段可能返回 null,表示取不到有效值。
271	FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"`
272
273	// 订单号列表
274	// 注意:此字段可能返回 null,表示取不到有效值。
275	DealNames []*string `json:"DealNames,omitempty" name:"DealNames" list`
276}
277
278type CreateInstancePreRequest struct {
279	*tchttp.BaseRequest
280
281	// 实例名称,是一个不超过 64 个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线(-)
282	InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"`
283
284	// 可用区
285	ZoneId *int64 `json:"ZoneId,omitempty" name:"ZoneId"`
286
287	// 预付费购买时长,例如 "1m",就是一个月
288	Period *string `json:"Period,omitempty" name:"Period"`
289
290	// 实例规格,1:入门型 ,2: 标准型,3 :进阶型,4 :容量型,5: 高阶型1,6:高阶性2, 7: 高阶型3,8: 高阶型4, 9 :独占型。
291	InstanceType *int64 `json:"InstanceType,omitempty" name:"InstanceType"`
292
293	// vpcId,不填默认基础网络
294	VpcId *string `json:"VpcId,omitempty" name:"VpcId"`
295
296	// 子网id,vpc网络需要传该参数,基础网络可以不传
297	SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"`
298
299	// 可选。实例日志的最长保留时间,单位分钟,默认为10080(7天),最大30天,不填默认0,代表不开启日志保留时间回收策略
300	MsgRetentionTime *int64 `json:"MsgRetentionTime,omitempty" name:"MsgRetentionTime"`
301
302	// 创建实例时可以选择集群Id, 该入参表示集群Id
303	ClusterId *int64 `json:"ClusterId,omitempty" name:"ClusterId"`
304
305	// 预付费自动续费标记,0表示默认状态(用户未设置,即初始状态), 1表示自动续费,2表示明确不自动续费(用户设置)
306	RenewFlag *int64 `json:"RenewFlag,omitempty" name:"RenewFlag"`
307}
308
309func (r *CreateInstancePreRequest) ToJsonString() string {
310    b, _ := json.Marshal(r)
311    return string(b)
312}
313
314// It is highly **NOT** recommended to use this function
315// because it has no param check, nor strict type check
316func (r *CreateInstancePreRequest) FromJsonString(s string) error {
317	f := make(map[string]interface{})
318	if err := json.Unmarshal([]byte(s), &f); err != nil {
319		return err
320	}
321	delete(f, "InstanceName")
322	delete(f, "ZoneId")
323	delete(f, "Period")
324	delete(f, "InstanceType")
325	delete(f, "VpcId")
326	delete(f, "SubnetId")
327	delete(f, "MsgRetentionTime")
328	delete(f, "ClusterId")
329	delete(f, "RenewFlag")
330	if len(f) > 0 {
331		return errors.New("CreateInstancePreRequest has unknown keys!")
332	}
333	return json.Unmarshal([]byte(s), &r)
334}
335
336type CreateInstancePreResponse struct {
337	*tchttp.BaseResponse
338	Response *struct {
339
340		// 返回的code,0为正常,非0为错误
341		ReturnCode *string `json:"ReturnCode,omitempty" name:"ReturnCode"`
342
343		// 成功消息
344		ReturnMessage *string `json:"ReturnMessage,omitempty" name:"ReturnMessage"`
345
346		// 操作型返回的Data数据
347	// 注意:此字段可能返回 null,表示取不到有效值。
348		Data *CreateInstancePreData `json:"Data,omitempty" name:"Data"`
349	} `json:"Response"`
350}
351
352func (r *CreateInstancePreResponse) ToJsonString() string {
353    b, _ := json.Marshal(r)
354    return string(b)
355}
356
357// It is highly **NOT** recommended to use this function
358// because it has no param check, nor strict type check
359func (r *CreateInstancePreResponse) FromJsonString(s string) error {
360	return json.Unmarshal([]byte(s), &r)
361}
362
363type CreatePartitionRequest struct {
364	*tchttp.BaseRequest
365
366	// 实例Id
367	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
368
369	// 主题名称
370	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
371
372	// 主题分区个数
373	PartitionNum *int64 `json:"PartitionNum,omitempty" name:"PartitionNum"`
374}
375
376func (r *CreatePartitionRequest) ToJsonString() string {
377    b, _ := json.Marshal(r)
378    return string(b)
379}
380
381// It is highly **NOT** recommended to use this function
382// because it has no param check, nor strict type check
383func (r *CreatePartitionRequest) FromJsonString(s string) error {
384	f := make(map[string]interface{})
385	if err := json.Unmarshal([]byte(s), &f); err != nil {
386		return err
387	}
388	delete(f, "InstanceId")
389	delete(f, "TopicName")
390	delete(f, "PartitionNum")
391	if len(f) > 0 {
392		return errors.New("CreatePartitionRequest has unknown keys!")
393	}
394	return json.Unmarshal([]byte(s), &r)
395}
396
397type CreatePartitionResponse struct {
398	*tchttp.BaseResponse
399	Response *struct {
400
401		// 返回的结果集
402		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
403
404		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
405		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
406	} `json:"Response"`
407}
408
409func (r *CreatePartitionResponse) ToJsonString() string {
410    b, _ := json.Marshal(r)
411    return string(b)
412}
413
414// It is highly **NOT** recommended to use this function
415// because it has no param check, nor strict type check
416func (r *CreatePartitionResponse) FromJsonString(s string) error {
417	return json.Unmarshal([]byte(s), &r)
418}
419
420type CreateTopicIpWhiteListRequest struct {
421	*tchttp.BaseRequest
422
423	// 实例Id
424	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
425
426	// 主题名称
427	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
428
429	// ip白名单列表
430	IpWhiteList []*string `json:"IpWhiteList,omitempty" name:"IpWhiteList" list`
431}
432
433func (r *CreateTopicIpWhiteListRequest) ToJsonString() string {
434    b, _ := json.Marshal(r)
435    return string(b)
436}
437
438// It is highly **NOT** recommended to use this function
439// because it has no param check, nor strict type check
440func (r *CreateTopicIpWhiteListRequest) FromJsonString(s string) error {
441	f := make(map[string]interface{})
442	if err := json.Unmarshal([]byte(s), &f); err != nil {
443		return err
444	}
445	delete(f, "InstanceId")
446	delete(f, "TopicName")
447	delete(f, "IpWhiteList")
448	if len(f) > 0 {
449		return errors.New("CreateTopicIpWhiteListRequest has unknown keys!")
450	}
451	return json.Unmarshal([]byte(s), &r)
452}
453
454type CreateTopicIpWhiteListResponse struct {
455	*tchttp.BaseResponse
456	Response *struct {
457
458		// 删除主题IP白名单结果
459		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
460
461		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
462		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
463	} `json:"Response"`
464}
465
466func (r *CreateTopicIpWhiteListResponse) ToJsonString() string {
467    b, _ := json.Marshal(r)
468    return string(b)
469}
470
471// It is highly **NOT** recommended to use this function
472// because it has no param check, nor strict type check
473func (r *CreateTopicIpWhiteListResponse) FromJsonString(s string) error {
474	return json.Unmarshal([]byte(s), &r)
475}
476
477type CreateTopicRequest struct {
478	*tchttp.BaseRequest
479
480	// 实例Id
481	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
482
483	// 主题名称,是一个不超过 64 个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线(-)
484	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
485
486	// Partition个数,大于0
487	PartitionNum *int64 `json:"PartitionNum,omitempty" name:"PartitionNum"`
488
489	// 副本个数,不能多于 broker 数,最大为3
490	ReplicaNum *int64 `json:"ReplicaNum,omitempty" name:"ReplicaNum"`
491
492	// ip白名单开关, 1:打开  0:关闭,默认不打开
493	EnableWhiteList *int64 `json:"EnableWhiteList,omitempty" name:"EnableWhiteList"`
494
495	// Ip白名单列表,配额限制,enableWhileList=1时必选
496	IpWhiteList []*string `json:"IpWhiteList,omitempty" name:"IpWhiteList" list`
497
498	// 清理日志策略,日志清理模式,默认为"delete"。"delete":日志按保存时间删除,"compact":日志按 key 压缩,"compact, delete":日志按 key 压缩且会按保存时间删除。
499	CleanUpPolicy *string `json:"CleanUpPolicy,omitempty" name:"CleanUpPolicy"`
500
501	// 主题备注,是一个不超过 64 个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线(-)
502	Note *string `json:"Note,omitempty" name:"Note"`
503
504	// 默认为1
505	MinInsyncReplicas *int64 `json:"MinInsyncReplicas,omitempty" name:"MinInsyncReplicas"`
506
507	// 是否允许未同步的副本选为leader,false:不允许,true:允许,默认不允许
508	UncleanLeaderElectionEnable *int64 `json:"UncleanLeaderElectionEnable,omitempty" name:"UncleanLeaderElectionEnable"`
509
510	// 可消息选。保留时间,单位ms,当前最小值为60000ms
511	RetentionMs *int64 `json:"RetentionMs,omitempty" name:"RetentionMs"`
512
513	// Segment分片滚动的时长,单位ms,当前最小为3600000ms
514	SegmentMs *int64 `json:"SegmentMs,omitempty" name:"SegmentMs"`
515}
516
517func (r *CreateTopicRequest) ToJsonString() string {
518    b, _ := json.Marshal(r)
519    return string(b)
520}
521
522// It is highly **NOT** recommended to use this function
523// because it has no param check, nor strict type check
524func (r *CreateTopicRequest) FromJsonString(s string) error {
525	f := make(map[string]interface{})
526	if err := json.Unmarshal([]byte(s), &f); err != nil {
527		return err
528	}
529	delete(f, "InstanceId")
530	delete(f, "TopicName")
531	delete(f, "PartitionNum")
532	delete(f, "ReplicaNum")
533	delete(f, "EnableWhiteList")
534	delete(f, "IpWhiteList")
535	delete(f, "CleanUpPolicy")
536	delete(f, "Note")
537	delete(f, "MinInsyncReplicas")
538	delete(f, "UncleanLeaderElectionEnable")
539	delete(f, "RetentionMs")
540	delete(f, "SegmentMs")
541	if len(f) > 0 {
542		return errors.New("CreateTopicRequest has unknown keys!")
543	}
544	return json.Unmarshal([]byte(s), &r)
545}
546
547type CreateTopicResp struct {
548
549	// 主题Id
550	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
551}
552
553type CreateTopicResponse struct {
554	*tchttp.BaseResponse
555	Response *struct {
556
557		// 返回创建结果
558		Result *CreateTopicResp `json:"Result,omitempty" name:"Result"`
559
560		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
561		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
562	} `json:"Response"`
563}
564
565func (r *CreateTopicResponse) ToJsonString() string {
566    b, _ := json.Marshal(r)
567    return string(b)
568}
569
570// It is highly **NOT** recommended to use this function
571// because it has no param check, nor strict type check
572func (r *CreateTopicResponse) FromJsonString(s string) error {
573	return json.Unmarshal([]byte(s), &r)
574}
575
576type CreateUserRequest struct {
577	*tchttp.BaseRequest
578
579	// 实例Id
580	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
581
582	// 用户名称
583	Name *string `json:"Name,omitempty" name:"Name"`
584
585	// 用户密码
586	Password *string `json:"Password,omitempty" name:"Password"`
587}
588
589func (r *CreateUserRequest) ToJsonString() string {
590    b, _ := json.Marshal(r)
591    return string(b)
592}
593
594// It is highly **NOT** recommended to use this function
595// because it has no param check, nor strict type check
596func (r *CreateUserRequest) FromJsonString(s string) error {
597	f := make(map[string]interface{})
598	if err := json.Unmarshal([]byte(s), &f); err != nil {
599		return err
600	}
601	delete(f, "InstanceId")
602	delete(f, "Name")
603	delete(f, "Password")
604	if len(f) > 0 {
605		return errors.New("CreateUserRequest has unknown keys!")
606	}
607	return json.Unmarshal([]byte(s), &r)
608}
609
610type CreateUserResponse struct {
611	*tchttp.BaseResponse
612	Response *struct {
613
614		// 返回的结果
615		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
616
617		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
618		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
619	} `json:"Response"`
620}
621
622func (r *CreateUserResponse) ToJsonString() string {
623    b, _ := json.Marshal(r)
624    return string(b)
625}
626
627// It is highly **NOT** recommended to use this function
628// because it has no param check, nor strict type check
629func (r *CreateUserResponse) FromJsonString(s string) error {
630	return json.Unmarshal([]byte(s), &r)
631}
632
633type DeleteAclRequest struct {
634	*tchttp.BaseRequest
635
636	// 实例id信息
637	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
638
639	// Acl资源类型,(0:UNKNOWN,1:ANY,2:TOPIC,3:GROUP,4:CLUSTER,5:TRANSACTIONAL_ID),当前只有TOPIC,其它字段用于后续兼容开源kafka的acl时使用
640	ResourceType *int64 `json:"ResourceType,omitempty" name:"ResourceType"`
641
642	// 资源名称,和resourceType相关,如当resourceType为TOPIC时,则该字段表示topic名称,当resourceType为GROUP时,该字段表示group名称
643	ResourceName *string `json:"ResourceName,omitempty" name:"ResourceName"`
644
645	// Acl操作方式,(0:UNKNOWN,1:ANY,2:ALL,3:READ,4:WRITE,5:CREATE,6:DELETE,7:ALTER,8:DESCRIBE,9:CLUSTER_ACTION,10:DESCRIBE_CONFIGS,11:ALTER_CONFIGS,12:IDEMPOTEN_WRITE),当前ckafka只支持READ,WRITE,其它用于后续兼容开源kafka的acl时使用
646	Operation *int64 `json:"Operation,omitempty" name:"Operation"`
647
648	// 权限类型,(0:UNKNOWN,1:ANY,2:DENY,3:ALLOW),当前ckakfa支持ALLOW(相当于白名单),其它用于后续兼容开源kafka的acl时使用
649	PermissionType *int64 `json:"PermissionType,omitempty" name:"PermissionType"`
650
651	// 默认为\*,表示任何host都可以访问,当前ckafka不支持host为\*,但是后面开源kafka的产品化会直接支持
652	Host *string `json:"Host,omitempty" name:"Host"`
653
654	// 用户列表,默认为*,表示任何user都可以访问,当前用户只能是用户列表中包含的用户
655	Principal *string `json:"Principal,omitempty" name:"Principal"`
656}
657
658func (r *DeleteAclRequest) ToJsonString() string {
659    b, _ := json.Marshal(r)
660    return string(b)
661}
662
663// It is highly **NOT** recommended to use this function
664// because it has no param check, nor strict type check
665func (r *DeleteAclRequest) FromJsonString(s string) error {
666	f := make(map[string]interface{})
667	if err := json.Unmarshal([]byte(s), &f); err != nil {
668		return err
669	}
670	delete(f, "InstanceId")
671	delete(f, "ResourceType")
672	delete(f, "ResourceName")
673	delete(f, "Operation")
674	delete(f, "PermissionType")
675	delete(f, "Host")
676	delete(f, "Principal")
677	if len(f) > 0 {
678		return errors.New("DeleteAclRequest has unknown keys!")
679	}
680	return json.Unmarshal([]byte(s), &r)
681}
682
683type DeleteAclResponse struct {
684	*tchttp.BaseResponse
685	Response *struct {
686
687		// 返回结果
688		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
689
690		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
691		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
692	} `json:"Response"`
693}
694
695func (r *DeleteAclResponse) ToJsonString() string {
696    b, _ := json.Marshal(r)
697    return string(b)
698}
699
700// It is highly **NOT** recommended to use this function
701// because it has no param check, nor strict type check
702func (r *DeleteAclResponse) FromJsonString(s string) error {
703	return json.Unmarshal([]byte(s), &r)
704}
705
706type DeleteAclRuleRequest struct {
707	*tchttp.BaseRequest
708
709	// 实例id信息
710	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
711
712	// acl规则名称
713	RuleName *string `json:"RuleName,omitempty" name:"RuleName"`
714}
715
716func (r *DeleteAclRuleRequest) ToJsonString() string {
717    b, _ := json.Marshal(r)
718    return string(b)
719}
720
721// It is highly **NOT** recommended to use this function
722// because it has no param check, nor strict type check
723func (r *DeleteAclRuleRequest) FromJsonString(s string) error {
724	f := make(map[string]interface{})
725	if err := json.Unmarshal([]byte(s), &f); err != nil {
726		return err
727	}
728	delete(f, "InstanceId")
729	delete(f, "RuleName")
730	if len(f) > 0 {
731		return errors.New("DeleteAclRuleRequest has unknown keys!")
732	}
733	return json.Unmarshal([]byte(s), &r)
734}
735
736type DeleteAclRuleResponse struct {
737	*tchttp.BaseResponse
738	Response *struct {
739
740		// 返回被删除的规则的ID
741		Result *int64 `json:"Result,omitempty" name:"Result"`
742
743		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
744		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
745	} `json:"Response"`
746}
747
748func (r *DeleteAclRuleResponse) ToJsonString() string {
749    b, _ := json.Marshal(r)
750    return string(b)
751}
752
753// It is highly **NOT** recommended to use this function
754// because it has no param check, nor strict type check
755func (r *DeleteAclRuleResponse) FromJsonString(s string) error {
756	return json.Unmarshal([]byte(s), &r)
757}
758
759type DeleteTopicIpWhiteListRequest struct {
760	*tchttp.BaseRequest
761
762	// 实例ID
763	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
764
765	// 主题名称
766	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
767
768	// ip白名单列表
769	IpWhiteList []*string `json:"IpWhiteList,omitempty" name:"IpWhiteList" list`
770}
771
772func (r *DeleteTopicIpWhiteListRequest) ToJsonString() string {
773    b, _ := json.Marshal(r)
774    return string(b)
775}
776
777// It is highly **NOT** recommended to use this function
778// because it has no param check, nor strict type check
779func (r *DeleteTopicIpWhiteListRequest) FromJsonString(s string) error {
780	f := make(map[string]interface{})
781	if err := json.Unmarshal([]byte(s), &f); err != nil {
782		return err
783	}
784	delete(f, "InstanceId")
785	delete(f, "TopicName")
786	delete(f, "IpWhiteList")
787	if len(f) > 0 {
788		return errors.New("DeleteTopicIpWhiteListRequest has unknown keys!")
789	}
790	return json.Unmarshal([]byte(s), &r)
791}
792
793type DeleteTopicIpWhiteListResponse struct {
794	*tchttp.BaseResponse
795	Response *struct {
796
797		// 删除主题IP白名单结果
798		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
799
800		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
801		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
802	} `json:"Response"`
803}
804
805func (r *DeleteTopicIpWhiteListResponse) ToJsonString() string {
806    b, _ := json.Marshal(r)
807    return string(b)
808}
809
810// It is highly **NOT** recommended to use this function
811// because it has no param check, nor strict type check
812func (r *DeleteTopicIpWhiteListResponse) FromJsonString(s string) error {
813	return json.Unmarshal([]byte(s), &r)
814}
815
816type DeleteTopicRequest struct {
817	*tchttp.BaseRequest
818
819	// ckafka 实例Id
820	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
821
822	// ckafka 主题名称
823	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
824}
825
826func (r *DeleteTopicRequest) ToJsonString() string {
827    b, _ := json.Marshal(r)
828    return string(b)
829}
830
831// It is highly **NOT** recommended to use this function
832// because it has no param check, nor strict type check
833func (r *DeleteTopicRequest) FromJsonString(s string) error {
834	f := make(map[string]interface{})
835	if err := json.Unmarshal([]byte(s), &f); err != nil {
836		return err
837	}
838	delete(f, "InstanceId")
839	delete(f, "TopicName")
840	if len(f) > 0 {
841		return errors.New("DeleteTopicRequest has unknown keys!")
842	}
843	return json.Unmarshal([]byte(s), &r)
844}
845
846type DeleteTopicResponse struct {
847	*tchttp.BaseResponse
848	Response *struct {
849
850		// 返回的结果集
851		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
852
853		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
854		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
855	} `json:"Response"`
856}
857
858func (r *DeleteTopicResponse) ToJsonString() string {
859    b, _ := json.Marshal(r)
860    return string(b)
861}
862
863// It is highly **NOT** recommended to use this function
864// because it has no param check, nor strict type check
865func (r *DeleteTopicResponse) FromJsonString(s string) error {
866	return json.Unmarshal([]byte(s), &r)
867}
868
869type DeleteUserRequest struct {
870	*tchttp.BaseRequest
871
872	// 实例Id
873	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
874
875	// 用户名称
876	Name *string `json:"Name,omitempty" name:"Name"`
877}
878
879func (r *DeleteUserRequest) ToJsonString() string {
880    b, _ := json.Marshal(r)
881    return string(b)
882}
883
884// It is highly **NOT** recommended to use this function
885// because it has no param check, nor strict type check
886func (r *DeleteUserRequest) FromJsonString(s string) error {
887	f := make(map[string]interface{})
888	if err := json.Unmarshal([]byte(s), &f); err != nil {
889		return err
890	}
891	delete(f, "InstanceId")
892	delete(f, "Name")
893	if len(f) > 0 {
894		return errors.New("DeleteUserRequest has unknown keys!")
895	}
896	return json.Unmarshal([]byte(s), &r)
897}
898
899type DeleteUserResponse struct {
900	*tchttp.BaseResponse
901	Response *struct {
902
903		// 返回结果
904		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
905
906		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
907		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
908	} `json:"Response"`
909}
910
911func (r *DeleteUserResponse) ToJsonString() string {
912    b, _ := json.Marshal(r)
913    return string(b)
914}
915
916// It is highly **NOT** recommended to use this function
917// because it has no param check, nor strict type check
918func (r *DeleteUserResponse) FromJsonString(s string) error {
919	return json.Unmarshal([]byte(s), &r)
920}
921
922type DescribeACLRequest struct {
923	*tchttp.BaseRequest
924
925	// 实例Id
926	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
927
928	// Acl资源类型,(0:UNKNOWN,1:ANY,2:TOPIC,3:GROUP,4:CLUSTER,5:TRANSACTIONAL_ID),当前只有TOPIC,其它字段用于后续兼容开源kafka的acl时使用
929	ResourceType *int64 `json:"ResourceType,omitempty" name:"ResourceType"`
930
931	// 资源名称,和resourceType相关,如当resourceType为TOPIC时,则该字段表示topic名称,当resourceType为GROUP时,该字段表示group名称
932	ResourceName *string `json:"ResourceName,omitempty" name:"ResourceName"`
933
934	// 偏移位置
935	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
936
937	// 个数限制
938	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
939
940	// 关键字匹配
941	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
942}
943
944func (r *DescribeACLRequest) ToJsonString() string {
945    b, _ := json.Marshal(r)
946    return string(b)
947}
948
949// It is highly **NOT** recommended to use this function
950// because it has no param check, nor strict type check
951func (r *DescribeACLRequest) FromJsonString(s string) error {
952	f := make(map[string]interface{})
953	if err := json.Unmarshal([]byte(s), &f); err != nil {
954		return err
955	}
956	delete(f, "InstanceId")
957	delete(f, "ResourceType")
958	delete(f, "ResourceName")
959	delete(f, "Offset")
960	delete(f, "Limit")
961	delete(f, "SearchWord")
962	if len(f) > 0 {
963		return errors.New("DescribeACLRequest has unknown keys!")
964	}
965	return json.Unmarshal([]byte(s), &r)
966}
967
968type DescribeACLResponse struct {
969	*tchttp.BaseResponse
970	Response *struct {
971
972		// 返回的ACL结果集对象
973		Result *AclResponse `json:"Result,omitempty" name:"Result"`
974
975		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
976		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
977	} `json:"Response"`
978}
979
980func (r *DescribeACLResponse) ToJsonString() string {
981    b, _ := json.Marshal(r)
982    return string(b)
983}
984
985// It is highly **NOT** recommended to use this function
986// because it has no param check, nor strict type check
987func (r *DescribeACLResponse) FromJsonString(s string) error {
988	return json.Unmarshal([]byte(s), &r)
989}
990
991type DescribeAppInfoRequest struct {
992	*tchttp.BaseRequest
993
994	// 偏移位置
995	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
996
997	// 本次查询用户数目最大数量限制,最大值为50,默认50
998	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
999}
1000
1001func (r *DescribeAppInfoRequest) ToJsonString() string {
1002    b, _ := json.Marshal(r)
1003    return string(b)
1004}
1005
1006// It is highly **NOT** recommended to use this function
1007// because it has no param check, nor strict type check
1008func (r *DescribeAppInfoRequest) FromJsonString(s string) error {
1009	f := make(map[string]interface{})
1010	if err := json.Unmarshal([]byte(s), &f); err != nil {
1011		return err
1012	}
1013	delete(f, "Offset")
1014	delete(f, "Limit")
1015	if len(f) > 0 {
1016		return errors.New("DescribeAppInfoRequest has unknown keys!")
1017	}
1018	return json.Unmarshal([]byte(s), &r)
1019}
1020
1021type DescribeAppInfoResponse struct {
1022	*tchttp.BaseResponse
1023	Response *struct {
1024
1025		// 返回的符合要求的App Id列表
1026		Result *AppIdResponse `json:"Result,omitempty" name:"Result"`
1027
1028		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1029		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1030	} `json:"Response"`
1031}
1032
1033func (r *DescribeAppInfoResponse) ToJsonString() string {
1034    b, _ := json.Marshal(r)
1035    return string(b)
1036}
1037
1038// It is highly **NOT** recommended to use this function
1039// because it has no param check, nor strict type check
1040func (r *DescribeAppInfoResponse) FromJsonString(s string) error {
1041	return json.Unmarshal([]byte(s), &r)
1042}
1043
1044type DescribeCkafkaZoneRequest struct {
1045	*tchttp.BaseRequest
1046}
1047
1048func (r *DescribeCkafkaZoneRequest) ToJsonString() string {
1049    b, _ := json.Marshal(r)
1050    return string(b)
1051}
1052
1053// It is highly **NOT** recommended to use this function
1054// because it has no param check, nor strict type check
1055func (r *DescribeCkafkaZoneRequest) FromJsonString(s string) error {
1056	f := make(map[string]interface{})
1057	if err := json.Unmarshal([]byte(s), &f); err != nil {
1058		return err
1059	}
1060	if len(f) > 0 {
1061		return errors.New("DescribeCkafkaZoneRequest has unknown keys!")
1062	}
1063	return json.Unmarshal([]byte(s), &r)
1064}
1065
1066type DescribeCkafkaZoneResponse struct {
1067	*tchttp.BaseResponse
1068	Response *struct {
1069
1070		// 查询结果复杂对象实体
1071		Result *ZoneResponse `json:"Result,omitempty" name:"Result"`
1072
1073		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1074		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1075	} `json:"Response"`
1076}
1077
1078func (r *DescribeCkafkaZoneResponse) ToJsonString() string {
1079    b, _ := json.Marshal(r)
1080    return string(b)
1081}
1082
1083// It is highly **NOT** recommended to use this function
1084// because it has no param check, nor strict type check
1085func (r *DescribeCkafkaZoneResponse) FromJsonString(s string) error {
1086	return json.Unmarshal([]byte(s), &r)
1087}
1088
1089type DescribeConsumerGroupRequest struct {
1090	*tchttp.BaseRequest
1091
1092	// ckafka实例id。
1093	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1094
1095	// 可选,用户需要查询的group名称。
1096	GroupName *string `json:"GroupName,omitempty" name:"GroupName"`
1097
1098	// 可选,用户需要查询的group中的对应的topic名称,如果指定了该参数,而group又未指定则忽略该参数。
1099	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
1100
1101	// 本次返回个数限制
1102	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1103
1104	// 偏移位置
1105	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1106}
1107
1108func (r *DescribeConsumerGroupRequest) ToJsonString() string {
1109    b, _ := json.Marshal(r)
1110    return string(b)
1111}
1112
1113// It is highly **NOT** recommended to use this function
1114// because it has no param check, nor strict type check
1115func (r *DescribeConsumerGroupRequest) FromJsonString(s string) error {
1116	f := make(map[string]interface{})
1117	if err := json.Unmarshal([]byte(s), &f); err != nil {
1118		return err
1119	}
1120	delete(f, "InstanceId")
1121	delete(f, "GroupName")
1122	delete(f, "TopicName")
1123	delete(f, "Limit")
1124	delete(f, "Offset")
1125	if len(f) > 0 {
1126		return errors.New("DescribeConsumerGroupRequest has unknown keys!")
1127	}
1128	return json.Unmarshal([]byte(s), &r)
1129}
1130
1131type DescribeConsumerGroupResponse struct {
1132	*tchttp.BaseResponse
1133	Response *struct {
1134
1135		// 返回的消费分组信息
1136		Result *ConsumerGroupResponse `json:"Result,omitempty" name:"Result"`
1137
1138		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1139		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1140	} `json:"Response"`
1141}
1142
1143func (r *DescribeConsumerGroupResponse) ToJsonString() string {
1144    b, _ := json.Marshal(r)
1145    return string(b)
1146}
1147
1148// It is highly **NOT** recommended to use this function
1149// because it has no param check, nor strict type check
1150func (r *DescribeConsumerGroupResponse) FromJsonString(s string) error {
1151	return json.Unmarshal([]byte(s), &r)
1152}
1153
1154type DescribeGroup struct {
1155
1156	// groupId
1157	Group *string `json:"Group,omitempty" name:"Group"`
1158
1159	// 该 group 使用的协议。
1160	Protocol *string `json:"Protocol,omitempty" name:"Protocol"`
1161}
1162
1163type DescribeGroupInfoRequest struct {
1164	*tchttp.BaseRequest
1165
1166	// (过滤条件)按照实例 ID 过滤。
1167	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1168
1169	// Kafka 消费分组,Consumer-group,这里是数组形式,格式:GroupList.0=xxx&GroupList.1=yyy。
1170	GroupList []*string `json:"GroupList,omitempty" name:"GroupList" list`
1171}
1172
1173func (r *DescribeGroupInfoRequest) ToJsonString() string {
1174    b, _ := json.Marshal(r)
1175    return string(b)
1176}
1177
1178// It is highly **NOT** recommended to use this function
1179// because it has no param check, nor strict type check
1180func (r *DescribeGroupInfoRequest) FromJsonString(s string) error {
1181	f := make(map[string]interface{})
1182	if err := json.Unmarshal([]byte(s), &f); err != nil {
1183		return err
1184	}
1185	delete(f, "InstanceId")
1186	delete(f, "GroupList")
1187	if len(f) > 0 {
1188		return errors.New("DescribeGroupInfoRequest has unknown keys!")
1189	}
1190	return json.Unmarshal([]byte(s), &r)
1191}
1192
1193type DescribeGroupInfoResponse struct {
1194	*tchttp.BaseResponse
1195	Response *struct {
1196
1197		// 返回的结果
1198	// 注意:此字段可能返回 null,表示取不到有效值。
1199		Result []*GroupInfoResponse `json:"Result,omitempty" name:"Result" list`
1200
1201		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1202		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1203	} `json:"Response"`
1204}
1205
1206func (r *DescribeGroupInfoResponse) ToJsonString() string {
1207    b, _ := json.Marshal(r)
1208    return string(b)
1209}
1210
1211// It is highly **NOT** recommended to use this function
1212// because it has no param check, nor strict type check
1213func (r *DescribeGroupInfoResponse) FromJsonString(s string) error {
1214	return json.Unmarshal([]byte(s), &r)
1215}
1216
1217type DescribeGroupOffsetsRequest struct {
1218	*tchttp.BaseRequest
1219
1220	// (过滤条件)按照实例 ID 过滤
1221	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1222
1223	// Kafka 消费分组
1224	Group *string `json:"Group,omitempty" name:"Group"`
1225
1226	// group 订阅的主题名称数组,如果没有该数组,则表示指定的 group 下所有 topic 信息
1227	Topics []*string `json:"Topics,omitempty" name:"Topics" list`
1228
1229	// 模糊匹配 topicName
1230	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1231
1232	// 本次查询的偏移位置,默认为0
1233	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1234
1235	// 本次返回结果的最大个数,默认为50,最大值为50
1236	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1237}
1238
1239func (r *DescribeGroupOffsetsRequest) ToJsonString() string {
1240    b, _ := json.Marshal(r)
1241    return string(b)
1242}
1243
1244// It is highly **NOT** recommended to use this function
1245// because it has no param check, nor strict type check
1246func (r *DescribeGroupOffsetsRequest) FromJsonString(s string) error {
1247	f := make(map[string]interface{})
1248	if err := json.Unmarshal([]byte(s), &f); err != nil {
1249		return err
1250	}
1251	delete(f, "InstanceId")
1252	delete(f, "Group")
1253	delete(f, "Topics")
1254	delete(f, "SearchWord")
1255	delete(f, "Offset")
1256	delete(f, "Limit")
1257	if len(f) > 0 {
1258		return errors.New("DescribeGroupOffsetsRequest has unknown keys!")
1259	}
1260	return json.Unmarshal([]byte(s), &r)
1261}
1262
1263type DescribeGroupOffsetsResponse struct {
1264	*tchttp.BaseResponse
1265	Response *struct {
1266
1267		// 返回的结果对象
1268		Result *GroupOffsetResponse `json:"Result,omitempty" name:"Result"`
1269
1270		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1271		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1272	} `json:"Response"`
1273}
1274
1275func (r *DescribeGroupOffsetsResponse) ToJsonString() string {
1276    b, _ := json.Marshal(r)
1277    return string(b)
1278}
1279
1280// It is highly **NOT** recommended to use this function
1281// because it has no param check, nor strict type check
1282func (r *DescribeGroupOffsetsResponse) FromJsonString(s string) error {
1283	return json.Unmarshal([]byte(s), &r)
1284}
1285
1286type DescribeGroupRequest struct {
1287	*tchttp.BaseRequest
1288
1289	// 实例ID
1290	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1291
1292	// 搜索关键字
1293	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1294
1295	// 偏移量
1296	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1297
1298	// 最大返回数量
1299	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1300}
1301
1302func (r *DescribeGroupRequest) ToJsonString() string {
1303    b, _ := json.Marshal(r)
1304    return string(b)
1305}
1306
1307// It is highly **NOT** recommended to use this function
1308// because it has no param check, nor strict type check
1309func (r *DescribeGroupRequest) FromJsonString(s string) error {
1310	f := make(map[string]interface{})
1311	if err := json.Unmarshal([]byte(s), &f); err != nil {
1312		return err
1313	}
1314	delete(f, "InstanceId")
1315	delete(f, "SearchWord")
1316	delete(f, "Offset")
1317	delete(f, "Limit")
1318	if len(f) > 0 {
1319		return errors.New("DescribeGroupRequest has unknown keys!")
1320	}
1321	return json.Unmarshal([]byte(s), &r)
1322}
1323
1324type DescribeGroupResponse struct {
1325	*tchttp.BaseResponse
1326	Response *struct {
1327
1328		// 返回结果集列表
1329		Result *GroupResponse `json:"Result,omitempty" name:"Result"`
1330
1331		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1332		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1333	} `json:"Response"`
1334}
1335
1336func (r *DescribeGroupResponse) ToJsonString() string {
1337    b, _ := json.Marshal(r)
1338    return string(b)
1339}
1340
1341// It is highly **NOT** recommended to use this function
1342// because it has no param check, nor strict type check
1343func (r *DescribeGroupResponse) FromJsonString(s string) error {
1344	return json.Unmarshal([]byte(s), &r)
1345}
1346
1347type DescribeInstanceAttributesRequest struct {
1348	*tchttp.BaseRequest
1349
1350	// 实例id
1351	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1352}
1353
1354func (r *DescribeInstanceAttributesRequest) ToJsonString() string {
1355    b, _ := json.Marshal(r)
1356    return string(b)
1357}
1358
1359// It is highly **NOT** recommended to use this function
1360// because it has no param check, nor strict type check
1361func (r *DescribeInstanceAttributesRequest) FromJsonString(s string) error {
1362	f := make(map[string]interface{})
1363	if err := json.Unmarshal([]byte(s), &f); err != nil {
1364		return err
1365	}
1366	delete(f, "InstanceId")
1367	if len(f) > 0 {
1368		return errors.New("DescribeInstanceAttributesRequest has unknown keys!")
1369	}
1370	return json.Unmarshal([]byte(s), &r)
1371}
1372
1373type DescribeInstanceAttributesResponse struct {
1374	*tchttp.BaseResponse
1375	Response *struct {
1376
1377		// 实例属性返回结果对象
1378		Result *InstanceAttributesResponse `json:"Result,omitempty" name:"Result"`
1379
1380		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1381		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1382	} `json:"Response"`
1383}
1384
1385func (r *DescribeInstanceAttributesResponse) ToJsonString() string {
1386    b, _ := json.Marshal(r)
1387    return string(b)
1388}
1389
1390// It is highly **NOT** recommended to use this function
1391// because it has no param check, nor strict type check
1392func (r *DescribeInstanceAttributesResponse) FromJsonString(s string) error {
1393	return json.Unmarshal([]byte(s), &r)
1394}
1395
1396type DescribeInstancesDetailRequest struct {
1397	*tchttp.BaseRequest
1398
1399	// (过滤条件)按照实例ID过滤
1400	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1401
1402	// (过滤条件)按照实例名称过滤,支持模糊查询
1403	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1404
1405	// (过滤条件)实例的状态。0:创建中,1:运行中,2:删除中,不填默认返回全部
1406	Status []*int64 `json:"Status,omitempty" name:"Status" list`
1407
1408	// 偏移量,不填默认为0
1409	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1410
1411	// 返回数量,不填则默认10,最大值20
1412	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1413
1414	// 匹配标签key值。
1415	TagKey *string `json:"TagKey,omitempty" name:"TagKey"`
1416
1417	// 过滤器
1418	Filters []*Filter `json:"Filters,omitempty" name:"Filters" list`
1419}
1420
1421func (r *DescribeInstancesDetailRequest) ToJsonString() string {
1422    b, _ := json.Marshal(r)
1423    return string(b)
1424}
1425
1426// It is highly **NOT** recommended to use this function
1427// because it has no param check, nor strict type check
1428func (r *DescribeInstancesDetailRequest) FromJsonString(s string) error {
1429	f := make(map[string]interface{})
1430	if err := json.Unmarshal([]byte(s), &f); err != nil {
1431		return err
1432	}
1433	delete(f, "InstanceId")
1434	delete(f, "SearchWord")
1435	delete(f, "Status")
1436	delete(f, "Offset")
1437	delete(f, "Limit")
1438	delete(f, "TagKey")
1439	delete(f, "Filters")
1440	if len(f) > 0 {
1441		return errors.New("DescribeInstancesDetailRequest has unknown keys!")
1442	}
1443	return json.Unmarshal([]byte(s), &r)
1444}
1445
1446type DescribeInstancesDetailResponse struct {
1447	*tchttp.BaseResponse
1448	Response *struct {
1449
1450		// 返回的实例详情结果对象
1451		Result *InstanceDetailResponse `json:"Result,omitempty" name:"Result"`
1452
1453		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1454		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1455	} `json:"Response"`
1456}
1457
1458func (r *DescribeInstancesDetailResponse) ToJsonString() string {
1459    b, _ := json.Marshal(r)
1460    return string(b)
1461}
1462
1463// It is highly **NOT** recommended to use this function
1464// because it has no param check, nor strict type check
1465func (r *DescribeInstancesDetailResponse) FromJsonString(s string) error {
1466	return json.Unmarshal([]byte(s), &r)
1467}
1468
1469type DescribeInstancesRequest struct {
1470	*tchttp.BaseRequest
1471
1472	// (过滤条件)按照实例ID过滤
1473	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1474
1475	// (过滤条件)按照实例名称过滤,支持模糊查询
1476	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1477
1478	// (过滤条件)实例的状态。0:创建中,1:运行中,2:删除中,不填默认返回全部
1479	Status []*int64 `json:"Status,omitempty" name:"Status" list`
1480
1481	// 偏移量,不填默认为0
1482	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1483
1484	// 返回数量,不填则默认10,最大值100
1485	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1486
1487	// 匹配标签key值。
1488	TagKey *string `json:"TagKey,omitempty" name:"TagKey"`
1489}
1490
1491func (r *DescribeInstancesRequest) ToJsonString() string {
1492    b, _ := json.Marshal(r)
1493    return string(b)
1494}
1495
1496// It is highly **NOT** recommended to use this function
1497// because it has no param check, nor strict type check
1498func (r *DescribeInstancesRequest) FromJsonString(s string) error {
1499	f := make(map[string]interface{})
1500	if err := json.Unmarshal([]byte(s), &f); err != nil {
1501		return err
1502	}
1503	delete(f, "InstanceId")
1504	delete(f, "SearchWord")
1505	delete(f, "Status")
1506	delete(f, "Offset")
1507	delete(f, "Limit")
1508	delete(f, "TagKey")
1509	if len(f) > 0 {
1510		return errors.New("DescribeInstancesRequest has unknown keys!")
1511	}
1512	return json.Unmarshal([]byte(s), &r)
1513}
1514
1515type DescribeInstancesResponse struct {
1516	*tchttp.BaseResponse
1517	Response *struct {
1518
1519		// 返回的结果
1520		Result *InstanceResponse `json:"Result,omitempty" name:"Result"`
1521
1522		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1523		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1524	} `json:"Response"`
1525}
1526
1527func (r *DescribeInstancesResponse) ToJsonString() string {
1528    b, _ := json.Marshal(r)
1529    return string(b)
1530}
1531
1532// It is highly **NOT** recommended to use this function
1533// because it has no param check, nor strict type check
1534func (r *DescribeInstancesResponse) FromJsonString(s string) error {
1535	return json.Unmarshal([]byte(s), &r)
1536}
1537
1538type DescribeRegionRequest struct {
1539	*tchttp.BaseRequest
1540
1541	// 偏移量
1542	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1543
1544	// 返回最大结果数
1545	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1546
1547	// 业务字段,可忽略
1548	Business *string `json:"Business,omitempty" name:"Business"`
1549}
1550
1551func (r *DescribeRegionRequest) ToJsonString() string {
1552    b, _ := json.Marshal(r)
1553    return string(b)
1554}
1555
1556// It is highly **NOT** recommended to use this function
1557// because it has no param check, nor strict type check
1558func (r *DescribeRegionRequest) FromJsonString(s string) error {
1559	f := make(map[string]interface{})
1560	if err := json.Unmarshal([]byte(s), &f); err != nil {
1561		return err
1562	}
1563	delete(f, "Offset")
1564	delete(f, "Limit")
1565	delete(f, "Business")
1566	if len(f) > 0 {
1567		return errors.New("DescribeRegionRequest has unknown keys!")
1568	}
1569	return json.Unmarshal([]byte(s), &r)
1570}
1571
1572type DescribeRegionResponse struct {
1573	*tchttp.BaseResponse
1574	Response *struct {
1575
1576		// 返回地域枚举结果列表
1577	// 注意:此字段可能返回 null,表示取不到有效值。
1578		Result []*Region `json:"Result,omitempty" name:"Result" list`
1579
1580		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1581		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1582	} `json:"Response"`
1583}
1584
1585func (r *DescribeRegionResponse) ToJsonString() string {
1586    b, _ := json.Marshal(r)
1587    return string(b)
1588}
1589
1590// It is highly **NOT** recommended to use this function
1591// because it has no param check, nor strict type check
1592func (r *DescribeRegionResponse) FromJsonString(s string) error {
1593	return json.Unmarshal([]byte(s), &r)
1594}
1595
1596type DescribeRouteRequest struct {
1597	*tchttp.BaseRequest
1598
1599	// 实例唯一id
1600	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1601}
1602
1603func (r *DescribeRouteRequest) ToJsonString() string {
1604    b, _ := json.Marshal(r)
1605    return string(b)
1606}
1607
1608// It is highly **NOT** recommended to use this function
1609// because it has no param check, nor strict type check
1610func (r *DescribeRouteRequest) FromJsonString(s string) error {
1611	f := make(map[string]interface{})
1612	if err := json.Unmarshal([]byte(s), &f); err != nil {
1613		return err
1614	}
1615	delete(f, "InstanceId")
1616	if len(f) > 0 {
1617		return errors.New("DescribeRouteRequest has unknown keys!")
1618	}
1619	return json.Unmarshal([]byte(s), &r)
1620}
1621
1622type DescribeRouteResponse struct {
1623	*tchttp.BaseResponse
1624	Response *struct {
1625
1626		// 返回的路由信息结果集
1627		Result *RouteResponse `json:"Result,omitempty" name:"Result"`
1628
1629		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1630		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1631	} `json:"Response"`
1632}
1633
1634func (r *DescribeRouteResponse) ToJsonString() string {
1635    b, _ := json.Marshal(r)
1636    return string(b)
1637}
1638
1639// It is highly **NOT** recommended to use this function
1640// because it has no param check, nor strict type check
1641func (r *DescribeRouteResponse) FromJsonString(s string) error {
1642	return json.Unmarshal([]byte(s), &r)
1643}
1644
1645type DescribeTopicAttributesRequest struct {
1646	*tchttp.BaseRequest
1647
1648	// 实例 ID
1649	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1650
1651	// 主题名称
1652	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
1653}
1654
1655func (r *DescribeTopicAttributesRequest) ToJsonString() string {
1656    b, _ := json.Marshal(r)
1657    return string(b)
1658}
1659
1660// It is highly **NOT** recommended to use this function
1661// because it has no param check, nor strict type check
1662func (r *DescribeTopicAttributesRequest) FromJsonString(s string) error {
1663	f := make(map[string]interface{})
1664	if err := json.Unmarshal([]byte(s), &f); err != nil {
1665		return err
1666	}
1667	delete(f, "InstanceId")
1668	delete(f, "TopicName")
1669	if len(f) > 0 {
1670		return errors.New("DescribeTopicAttributesRequest has unknown keys!")
1671	}
1672	return json.Unmarshal([]byte(s), &r)
1673}
1674
1675type DescribeTopicAttributesResponse struct {
1676	*tchttp.BaseResponse
1677	Response *struct {
1678
1679		// 返回的结果对象
1680		Result *TopicAttributesResponse `json:"Result,omitempty" name:"Result"`
1681
1682		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1683		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1684	} `json:"Response"`
1685}
1686
1687func (r *DescribeTopicAttributesResponse) ToJsonString() string {
1688    b, _ := json.Marshal(r)
1689    return string(b)
1690}
1691
1692// It is highly **NOT** recommended to use this function
1693// because it has no param check, nor strict type check
1694func (r *DescribeTopicAttributesResponse) FromJsonString(s string) error {
1695	return json.Unmarshal([]byte(s), &r)
1696}
1697
1698type DescribeTopicDetailRequest struct {
1699	*tchttp.BaseRequest
1700
1701	// 实例id
1702	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1703
1704	// (过滤条件)按照topicName过滤,支持模糊查询
1705	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1706
1707	// 偏移量,不填默认为0
1708	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1709
1710	// 返回数量,不填则默认 10,最大值20,取值要大于0
1711	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1712}
1713
1714func (r *DescribeTopicDetailRequest) ToJsonString() string {
1715    b, _ := json.Marshal(r)
1716    return string(b)
1717}
1718
1719// It is highly **NOT** recommended to use this function
1720// because it has no param check, nor strict type check
1721func (r *DescribeTopicDetailRequest) FromJsonString(s string) error {
1722	f := make(map[string]interface{})
1723	if err := json.Unmarshal([]byte(s), &f); err != nil {
1724		return err
1725	}
1726	delete(f, "InstanceId")
1727	delete(f, "SearchWord")
1728	delete(f, "Offset")
1729	delete(f, "Limit")
1730	if len(f) > 0 {
1731		return errors.New("DescribeTopicDetailRequest has unknown keys!")
1732	}
1733	return json.Unmarshal([]byte(s), &r)
1734}
1735
1736type DescribeTopicDetailResponse struct {
1737	*tchttp.BaseResponse
1738	Response *struct {
1739
1740		// 返回的主题详情实体
1741		Result *TopicDetailResponse `json:"Result,omitempty" name:"Result"`
1742
1743		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1744		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1745	} `json:"Response"`
1746}
1747
1748func (r *DescribeTopicDetailResponse) ToJsonString() string {
1749    b, _ := json.Marshal(r)
1750    return string(b)
1751}
1752
1753// It is highly **NOT** recommended to use this function
1754// because it has no param check, nor strict type check
1755func (r *DescribeTopicDetailResponse) FromJsonString(s string) error {
1756	return json.Unmarshal([]byte(s), &r)
1757}
1758
1759type DescribeTopicRequest struct {
1760	*tchttp.BaseRequest
1761
1762	// 实例 ID
1763	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1764
1765	// 过滤条件,按照 topicName 过滤,支持模糊查询
1766	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1767
1768	// 偏移量,不填默认为0
1769	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1770
1771	// 返回数量,不填则默认为10,最大值为50
1772	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1773}
1774
1775func (r *DescribeTopicRequest) ToJsonString() string {
1776    b, _ := json.Marshal(r)
1777    return string(b)
1778}
1779
1780// It is highly **NOT** recommended to use this function
1781// because it has no param check, nor strict type check
1782func (r *DescribeTopicRequest) FromJsonString(s string) error {
1783	f := make(map[string]interface{})
1784	if err := json.Unmarshal([]byte(s), &f); err != nil {
1785		return err
1786	}
1787	delete(f, "InstanceId")
1788	delete(f, "SearchWord")
1789	delete(f, "Offset")
1790	delete(f, "Limit")
1791	if len(f) > 0 {
1792		return errors.New("DescribeTopicRequest has unknown keys!")
1793	}
1794	return json.Unmarshal([]byte(s), &r)
1795}
1796
1797type DescribeTopicResponse struct {
1798	*tchttp.BaseResponse
1799	Response *struct {
1800
1801		// 返回的结果
1802	// 注意:此字段可能返回 null,表示取不到有效值。
1803		Result *TopicResult `json:"Result,omitempty" name:"Result"`
1804
1805		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1806		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1807	} `json:"Response"`
1808}
1809
1810func (r *DescribeTopicResponse) ToJsonString() string {
1811    b, _ := json.Marshal(r)
1812    return string(b)
1813}
1814
1815// It is highly **NOT** recommended to use this function
1816// because it has no param check, nor strict type check
1817func (r *DescribeTopicResponse) FromJsonString(s string) error {
1818	return json.Unmarshal([]byte(s), &r)
1819}
1820
1821type DescribeUserRequest struct {
1822	*tchttp.BaseRequest
1823
1824	// 实例Id
1825	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
1826
1827	// 按照名称过滤
1828	SearchWord *string `json:"SearchWord,omitempty" name:"SearchWord"`
1829
1830	// 偏移
1831	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1832
1833	// 本次返回个数
1834	Limit *int64 `json:"Limit,omitempty" name:"Limit"`
1835}
1836
1837func (r *DescribeUserRequest) ToJsonString() string {
1838    b, _ := json.Marshal(r)
1839    return string(b)
1840}
1841
1842// It is highly **NOT** recommended to use this function
1843// because it has no param check, nor strict type check
1844func (r *DescribeUserRequest) FromJsonString(s string) error {
1845	f := make(map[string]interface{})
1846	if err := json.Unmarshal([]byte(s), &f); err != nil {
1847		return err
1848	}
1849	delete(f, "InstanceId")
1850	delete(f, "SearchWord")
1851	delete(f, "Offset")
1852	delete(f, "Limit")
1853	if len(f) > 0 {
1854		return errors.New("DescribeUserRequest has unknown keys!")
1855	}
1856	return json.Unmarshal([]byte(s), &r)
1857}
1858
1859type DescribeUserResponse struct {
1860	*tchttp.BaseResponse
1861	Response *struct {
1862
1863		// 返回结果列表
1864		Result *UserResponse `json:"Result,omitempty" name:"Result"`
1865
1866		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1867		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
1868	} `json:"Response"`
1869}
1870
1871func (r *DescribeUserResponse) ToJsonString() string {
1872    b, _ := json.Marshal(r)
1873    return string(b)
1874}
1875
1876// It is highly **NOT** recommended to use this function
1877// because it has no param check, nor strict type check
1878func (r *DescribeUserResponse) FromJsonString(s string) error {
1879	return json.Unmarshal([]byte(s), &r)
1880}
1881
1882type DynamicRetentionTime struct {
1883
1884	// 动态消息保留时间配置开关(0: 关闭,1: 开启)
1885	// 注意:此字段可能返回 null,表示取不到有效值。
1886	Enable *int64 `json:"Enable,omitempty" name:"Enable"`
1887
1888	// 磁盘配额百分比触发条件,即消息达到此值触发消息保留时间变更事件
1889	// 注意:此字段可能返回 null,表示取不到有效值。
1890	DiskQuotaPercentage *int64 `json:"DiskQuotaPercentage,omitempty" name:"DiskQuotaPercentage"`
1891
1892	// 每次向前调整消息保留时间百分比
1893	// 注意:此字段可能返回 null,表示取不到有效值。
1894	StepForwardPercentage *int64 `json:"StepForwardPercentage,omitempty" name:"StepForwardPercentage"`
1895
1896	// 保底时长,单位分钟
1897	// 注意:此字段可能返回 null,表示取不到有效值。
1898	BottomRetention *int64 `json:"BottomRetention,omitempty" name:"BottomRetention"`
1899}
1900
1901type Filter struct {
1902
1903	// 需要过滤的字段。
1904	Name *string `json:"Name,omitempty" name:"Name"`
1905
1906	// 字段的过滤值。
1907	Values []*string `json:"Values,omitempty" name:"Values" list`
1908}
1909
1910type Group struct {
1911
1912	// 组名称
1913	GroupName *string `json:"GroupName,omitempty" name:"GroupName"`
1914}
1915
1916type GroupInfoMember struct {
1917
1918	// coordinator 为消费分组中的消费者生成的唯一 ID
1919	MemberId *string `json:"MemberId,omitempty" name:"MemberId"`
1920
1921	// 客户消费者 SDK 自己设置的 client.id 信息
1922	ClientId *string `json:"ClientId,omitempty" name:"ClientId"`
1923
1924	// 一般存储客户的 IP 地址
1925	ClientHost *string `json:"ClientHost,omitempty" name:"ClientHost"`
1926
1927	// 存储着分配给该消费者的 partition 信息
1928	Assignment *Assignment `json:"Assignment,omitempty" name:"Assignment"`
1929}
1930
1931type GroupInfoResponse struct {
1932
1933	// 错误码,正常为0
1934	ErrorCode *string `json:"ErrorCode,omitempty" name:"ErrorCode"`
1935
1936	// group 状态描述(常见的为 Empty、Stable、Dead 三种状态):
1937	// Dead:消费分组不存在
1938	// Empty:消费分组,当前没有任何消费者订阅
1939	// PreparingRebalance:消费分组处于 rebalance 状态
1940	// CompletingRebalance:消费分组处于 rebalance 状态
1941	// Stable:消费分组中各个消费者已经加入,处于稳定状态
1942	State *string `json:"State,omitempty" name:"State"`
1943
1944	// 消费分组选择的协议类型正常的消费者一般为 consumer 但有些系统采用了自己的协议如 kafka-connect 用的就是 connect。只有标准的 consumer 协议,本接口才知道具体的分配方式的格式,才能解析到具体的 partition 的分配情况
1945	ProtocolType *string `json:"ProtocolType,omitempty" name:"ProtocolType"`
1946
1947	// 消费者 partition 分配算法常见的有如下几种(Kafka 消费者 SDK 默认的选择项为 range):range、 roundrobin、 sticky
1948	Protocol *string `json:"Protocol,omitempty" name:"Protocol"`
1949
1950	// 仅当 state 为 Stable 且 protocol_type 为 consumer 时, 该数组才包含信息
1951	Members []*GroupInfoMember `json:"Members,omitempty" name:"Members" list`
1952
1953	// Kafka 消费分组
1954	Group *string `json:"Group,omitempty" name:"Group"`
1955}
1956
1957type GroupInfoTopics struct {
1958
1959	// 分配的 topic 名称
1960	Topic *string `json:"Topic,omitempty" name:"Topic"`
1961
1962	// 分配的 partition 信息
1963	// 注意:此字段可能返回 null,表示取不到有效值。
1964	Partitions []*int64 `json:"Partitions,omitempty" name:"Partitions" list`
1965}
1966
1967type GroupOffsetPartition struct {
1968
1969	// topic 的 partitionId
1970	Partition *int64 `json:"Partition,omitempty" name:"Partition"`
1971
1972	// consumer 提交的 offset 位置
1973	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
1974
1975	// 支持消费者提交消息时,传入 metadata 作为它用,当前一般为空字符串
1976	// 注意:此字段可能返回 null,表示取不到有效值。
1977	Metadata *string `json:"Metadata,omitempty" name:"Metadata"`
1978
1979	// 错误码
1980	ErrorCode *int64 `json:"ErrorCode,omitempty" name:"ErrorCode"`
1981
1982	// 当前 partition 最新的 offset
1983	LogEndOffset *int64 `json:"LogEndOffset,omitempty" name:"LogEndOffset"`
1984
1985	// 未消费的消息个数
1986	Lag *int64 `json:"Lag,omitempty" name:"Lag"`
1987}
1988
1989type GroupOffsetResponse struct {
1990
1991	// 符合调节的总结果数
1992	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
1993
1994	// 该主题分区数组,其中每个元素为一个 json object
1995	// 注意:此字段可能返回 null,表示取不到有效值。
1996	TopicList []*GroupOffsetTopic `json:"TopicList,omitempty" name:"TopicList" list`
1997}
1998
1999type GroupOffsetTopic struct {
2000
2001	// 主题名称
2002	Topic *string `json:"Topic,omitempty" name:"Topic"`
2003
2004	// 该主题分区数组,其中每个元素为一个 json object
2005	// 注意:此字段可能返回 null,表示取不到有效值。
2006	Partitions []*GroupOffsetPartition `json:"Partitions,omitempty" name:"Partitions" list`
2007}
2008
2009type GroupResponse struct {
2010
2011	// 计数
2012	// 注意:此字段可能返回 null,表示取不到有效值。
2013	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2014
2015	// GroupList
2016	// 注意:此字段可能返回 null,表示取不到有效值。
2017	GroupList []*DescribeGroup `json:"GroupList,omitempty" name:"GroupList" list`
2018}
2019
2020type Instance struct {
2021
2022	// 实例id
2023	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2024
2025	// 实例名称
2026	InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"`
2027
2028	// 实例的状态。0:创建中,1:运行中,2:删除中 , 5 隔离中,-1 创建失败
2029	Status *int64 `json:"Status,omitempty" name:"Status"`
2030
2031	// 是否开源实例。开源:true,不开源:false
2032	// 注意:此字段可能返回 null,表示取不到有效值。
2033	IfCommunity *bool `json:"IfCommunity,omitempty" name:"IfCommunity"`
2034}
2035
2036type InstanceAttributesResponse struct {
2037
2038	// 实例ID
2039	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2040
2041	// 实例名称
2042	InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"`
2043
2044	// 接入点 VIP 列表信息
2045	VipList []*VipEntity `json:"VipList,omitempty" name:"VipList" list`
2046
2047	// 虚拟IP
2048	Vip *string `json:"Vip,omitempty" name:"Vip"`
2049
2050	// 虚拟端口
2051	Vport *string `json:"Vport,omitempty" name:"Vport"`
2052
2053	// 实例的状态。0:创建中,1:运行中,2:删除中
2054	Status *int64 `json:"Status,omitempty" name:"Status"`
2055
2056	// 实例带宽,单位:Mbps
2057	Bandwidth *int64 `json:"Bandwidth,omitempty" name:"Bandwidth"`
2058
2059	// 实例的存储大小,单位:GB
2060	DiskSize *int64 `json:"DiskSize,omitempty" name:"DiskSize"`
2061
2062	// 可用区
2063	ZoneId *int64 `json:"ZoneId,omitempty" name:"ZoneId"`
2064
2065	// VPC 的 ID,为空表示是基础网络
2066	VpcId *string `json:"VpcId,omitempty" name:"VpcId"`
2067
2068	// 子网 ID, 为空表示基础网络
2069	SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"`
2070
2071	// 实例健康状态, 1:健康,2:告警,3:异常
2072	Healthy *int64 `json:"Healthy,omitempty" name:"Healthy"`
2073
2074	// 实例健康信息,当前会展示磁盘利用率,最大长度为256
2075	HealthyMessage *string `json:"HealthyMessage,omitempty" name:"HealthyMessage"`
2076
2077	// 创建时间
2078	CreateTime *uint64 `json:"CreateTime,omitempty" name:"CreateTime"`
2079
2080	// 消息保存时间,单位为分钟
2081	MsgRetentionTime *int64 `json:"MsgRetentionTime,omitempty" name:"MsgRetentionTime"`
2082
2083	// 自动创建 Topic 配置, 若该字段为空,则表示未开启自动创建
2084	Config *InstanceConfigDO `json:"Config,omitempty" name:"Config"`
2085
2086	// 剩余创建分区数
2087	RemainderPartitions *int64 `json:"RemainderPartitions,omitempty" name:"RemainderPartitions"`
2088
2089	// 剩余创建主题数
2090	RemainderTopics *int64 `json:"RemainderTopics,omitempty" name:"RemainderTopics"`
2091
2092	// 当前创建分区数
2093	CreatedPartitions *int64 `json:"CreatedPartitions,omitempty" name:"CreatedPartitions"`
2094
2095	// 当前创建主题数
2096	CreatedTopics *int64 `json:"CreatedTopics,omitempty" name:"CreatedTopics"`
2097
2098	// 标签数组
2099	// 注意:此字段可能返回 null,表示取不到有效值。
2100	Tags []*Tag `json:"Tags,omitempty" name:"Tags" list`
2101
2102	// 过期时间
2103	// 注意:此字段可能返回 null,表示取不到有效值。
2104	ExpireTime *uint64 `json:"ExpireTime,omitempty" name:"ExpireTime"`
2105
2106	// 跨可用区
2107	// 注意:此字段可能返回 null,表示取不到有效值。
2108	ZoneIds []*int64 `json:"ZoneIds,omitempty" name:"ZoneIds" list`
2109
2110	// kafka版本信息
2111	// 注意:此字段可能返回 null,表示取不到有效值。
2112	Version *string `json:"Version,omitempty" name:"Version"`
2113
2114	// 最大分组数
2115	// 注意:此字段可能返回 null,表示取不到有效值。
2116	MaxGroupNum *int64 `json:"MaxGroupNum,omitempty" name:"MaxGroupNum"`
2117
2118	// 售卖类型,0:标准版,1:专业版
2119	// 注意:此字段可能返回 null,表示取不到有效值。
2120	Cvm *int64 `json:"Cvm,omitempty" name:"Cvm"`
2121
2122	// 类型
2123	// 注意:此字段可能返回 null,表示取不到有效值。
2124	InstanceType *string `json:"InstanceType,omitempty" name:"InstanceType"`
2125
2126	// 表示该实例支持的特性。FEATURE_SUBNET_ACL:表示acl策略支持设置子网。
2127	// 注意:此字段可能返回 null,表示取不到有效值。
2128	Features []*string `json:"Features,omitempty" name:"Features" list`
2129
2130	// 动态消息保留策略
2131	// 注意:此字段可能返回 null,表示取不到有效值。
2132	RetentionTimeConfig *DynamicRetentionTime `json:"RetentionTimeConfig,omitempty" name:"RetentionTimeConfig"`
2133}
2134
2135type InstanceConfigDO struct {
2136
2137	// 是否自动创建主题
2138	AutoCreateTopicsEnable *bool `json:"AutoCreateTopicsEnable,omitempty" name:"AutoCreateTopicsEnable"`
2139
2140	// 分区数
2141	DefaultNumPartitions *int64 `json:"DefaultNumPartitions,omitempty" name:"DefaultNumPartitions"`
2142
2143	// 默认的复制Factor
2144	DefaultReplicationFactor *int64 `json:"DefaultReplicationFactor,omitempty" name:"DefaultReplicationFactor"`
2145}
2146
2147type InstanceDetail struct {
2148
2149	// 实例id
2150	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2151
2152	// 实例名称
2153	InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"`
2154
2155	// 访问实例的vip 信息
2156	Vip *string `json:"Vip,omitempty" name:"Vip"`
2157
2158	// 访问实例的端口信息
2159	Vport *string `json:"Vport,omitempty" name:"Vport"`
2160
2161	// 虚拟IP列表
2162	VipList []*VipEntity `json:"VipList,omitempty" name:"VipList" list`
2163
2164	// 实例的状态。0:创建中,1:运行中,2:删除中:5隔离中, -1 创建失败
2165	Status *int64 `json:"Status,omitempty" name:"Status"`
2166
2167	// 实例带宽,单位Mbps
2168	Bandwidth *int64 `json:"Bandwidth,omitempty" name:"Bandwidth"`
2169
2170	// 实例的存储大小,单位GB
2171	DiskSize *int64 `json:"DiskSize,omitempty" name:"DiskSize"`
2172
2173	// 可用区域ID
2174	ZoneId *int64 `json:"ZoneId,omitempty" name:"ZoneId"`
2175
2176	// vpcId,如果为空,说明是基础网络
2177	VpcId *string `json:"VpcId,omitempty" name:"VpcId"`
2178
2179	// 子网id
2180	SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"`
2181
2182	// 实例是否续费,int  枚举值:1表示自动续费,2表示明确不自动续费
2183	RenewFlag *int64 `json:"RenewFlag,omitempty" name:"RenewFlag"`
2184
2185	// 实例状态 int:0表示健康,1表示告警,2 表示实例状态异常
2186	Healthy *int64 `json:"Healthy,omitempty" name:"Healthy"`
2187
2188	// 实例状态信息
2189	HealthyMessage *string `json:"HealthyMessage,omitempty" name:"HealthyMessage"`
2190
2191	// 实例创建时间时间
2192	CreateTime *int64 `json:"CreateTime,omitempty" name:"CreateTime"`
2193
2194	// 实例过期时间
2195	ExpireTime *int64 `json:"ExpireTime,omitempty" name:"ExpireTime"`
2196
2197	// 是否为内部客户。值为1 表示内部客户
2198	IsInternal *int64 `json:"IsInternal,omitempty" name:"IsInternal"`
2199
2200	// Topic个数
2201	TopicNum *int64 `json:"TopicNum,omitempty" name:"TopicNum"`
2202
2203	// 标识tag
2204	Tags []*Tag `json:"Tags,omitempty" name:"Tags" list`
2205
2206	// kafka版本信息
2207	// 注意:此字段可能返回 null,表示取不到有效值。
2208	Version *string `json:"Version,omitempty" name:"Version"`
2209
2210	// 跨可用区
2211	// 注意:此字段可能返回 null,表示取不到有效值。
2212	ZoneIds []*int64 `json:"ZoneIds,omitempty" name:"ZoneIds" list`
2213
2214	// ckafka售卖类型
2215	// 注意:此字段可能返回 null,表示取不到有效值。
2216	Cvm *int64 `json:"Cvm,omitempty" name:"Cvm"`
2217
2218	// ckafka实例类型
2219	// 注意:此字段可能返回 null,表示取不到有效值。
2220	InstanceType *string `json:"InstanceType,omitempty" name:"InstanceType"`
2221
2222	// 磁盘类型
2223	// 注意:此字段可能返回 null,表示取不到有效值。
2224	DiskType *string `json:"DiskType,omitempty" name:"DiskType"`
2225
2226	// 当前规格最大Topic数
2227	// 注意:此字段可能返回 null,表示取不到有效值。
2228	MaxTopicNumber *int64 `json:"MaxTopicNumber,omitempty" name:"MaxTopicNumber"`
2229
2230	// 当前规格最大Partition数
2231	// 注意:此字段可能返回 null,表示取不到有效值。
2232	MaxPartitionNumber *int64 `json:"MaxPartitionNumber,omitempty" name:"MaxPartitionNumber"`
2233
2234	// 计划升级配置时间
2235	// 注意:此字段可能返回 null,表示取不到有效值。
2236	RebalanceTime *string `json:"RebalanceTime,omitempty" name:"RebalanceTime"`
2237}
2238
2239type InstanceDetailResponse struct {
2240
2241	// 符合条件的实例总数
2242	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2243
2244	// 符合条件的实例详情列表
2245	InstanceList []*InstanceDetail `json:"InstanceList,omitempty" name:"InstanceList" list`
2246}
2247
2248type InstanceResponse struct {
2249
2250	// 符合条件的实例列表
2251	// 注意:此字段可能返回 null,表示取不到有效值。
2252	InstanceList []*Instance `json:"InstanceList,omitempty" name:"InstanceList" list`
2253
2254	// 符合条件的结果总数
2255	// 注意:此字段可能返回 null,表示取不到有效值。
2256	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2257}
2258
2259type JgwOperateResponse struct {
2260
2261	// 返回的code,0为正常,非0为错误
2262	ReturnCode *string `json:"ReturnCode,omitempty" name:"ReturnCode"`
2263
2264	// 成功消息
2265	ReturnMessage *string `json:"ReturnMessage,omitempty" name:"ReturnMessage"`
2266
2267	// 操作型返回的Data数据,可能有flowId等
2268	// 注意:此字段可能返回 null,表示取不到有效值。
2269	Data *OperateResponseData `json:"Data,omitempty" name:"Data"`
2270}
2271
2272type ModifyGroupOffsetsRequest struct {
2273	*tchttp.BaseRequest
2274
2275	// kafka实例id
2276	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2277
2278	// kafka 消费分组
2279	Group *string `json:"Group,omitempty" name:"Group"`
2280
2281	// 重置offset的策略,入参含义 0. 对齐shift-by参数,代表把offset向前或向后移动shift条 1. 对齐参考(by-duration,to-datetime,to-earliest,to-latest),代表把offset移动到指定timestamp的位置 2. 对齐参考(to-offset),代表把offset移动到指定的offset位置
2282	Strategy *int64 `json:"Strategy,omitempty" name:"Strategy"`
2283
2284	// 表示需要重置的topics, 不填表示全部
2285	Topics []*string `json:"Topics,omitempty" name:"Topics" list`
2286
2287	// 当strategy为0时,必须包含该字段,可以大于零代表会把offset向后移动shift条,小于零则将offset向前回溯shift条数。正确重置后新的offset应该是(old_offset + shift),需要注意的是如果新的offset小于partition的earliest则会设置为earliest,如果大于partition 的latest则会设置为latest
2288	Shift *int64 `json:"Shift,omitempty" name:"Shift"`
2289
2290	// 单位ms。当strategy为1时,必须包含该字段,其中-2表示重置offset到最开始的位置,-1表示重置到最新的位置(相当于清空),其它值则代表指定的时间,会获取topic中指定时间的offset然后进行重置,需要注意的时,如果指定的时间不存在消息,则获取最末尾的offset。
2291	ShiftTimestamp *int64 `json:"ShiftTimestamp,omitempty" name:"ShiftTimestamp"`
2292
2293	// 需要重新设置的offset位置。当strategy为2,必须包含该字段。
2294	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
2295
2296	// 需要重新设置的partition的列表,如果没有指定Topics参数。则重置全部topics的对应的Partition列表里的partition。指定Topics时则重置指定的topic列表的对应的Partitions列表的partition。
2297	Partitions []*int64 `json:"Partitions,omitempty" name:"Partitions" list`
2298}
2299
2300func (r *ModifyGroupOffsetsRequest) ToJsonString() string {
2301    b, _ := json.Marshal(r)
2302    return string(b)
2303}
2304
2305// It is highly **NOT** recommended to use this function
2306// because it has no param check, nor strict type check
2307func (r *ModifyGroupOffsetsRequest) FromJsonString(s string) error {
2308	f := make(map[string]interface{})
2309	if err := json.Unmarshal([]byte(s), &f); err != nil {
2310		return err
2311	}
2312	delete(f, "InstanceId")
2313	delete(f, "Group")
2314	delete(f, "Strategy")
2315	delete(f, "Topics")
2316	delete(f, "Shift")
2317	delete(f, "ShiftTimestamp")
2318	delete(f, "Offset")
2319	delete(f, "Partitions")
2320	if len(f) > 0 {
2321		return errors.New("ModifyGroupOffsetsRequest has unknown keys!")
2322	}
2323	return json.Unmarshal([]byte(s), &r)
2324}
2325
2326type ModifyGroupOffsetsResponse struct {
2327	*tchttp.BaseResponse
2328	Response *struct {
2329
2330		// 返回结果
2331		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
2332
2333		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2334		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
2335	} `json:"Response"`
2336}
2337
2338func (r *ModifyGroupOffsetsResponse) ToJsonString() string {
2339    b, _ := json.Marshal(r)
2340    return string(b)
2341}
2342
2343// It is highly **NOT** recommended to use this function
2344// because it has no param check, nor strict type check
2345func (r *ModifyGroupOffsetsResponse) FromJsonString(s string) error {
2346	return json.Unmarshal([]byte(s), &r)
2347}
2348
2349type ModifyInstanceAttributesConfig struct {
2350
2351	// 自动创建 true 表示开启,false 表示不开启
2352	AutoCreateTopicEnable *bool `json:"AutoCreateTopicEnable,omitempty" name:"AutoCreateTopicEnable"`
2353
2354	// 可选,如果auto.create.topic.enable设置为true没有设置该值时,默认设置为3
2355	DefaultNumPartitions *int64 `json:"DefaultNumPartitions,omitempty" name:"DefaultNumPartitions"`
2356
2357	// 如歌auto.create.topic.enable设置为true没有指定该值时默认设置为2
2358	DefaultReplicationFactor *int64 `json:"DefaultReplicationFactor,omitempty" name:"DefaultReplicationFactor"`
2359}
2360
2361type ModifyInstanceAttributesRequest struct {
2362	*tchttp.BaseRequest
2363
2364	// 实例id
2365	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2366
2367	// 实例日志的最长保留时间,单位分钟,最大30天,0代表不开启日志保留时间回收策略
2368	MsgRetentionTime *int64 `json:"MsgRetentionTime,omitempty" name:"MsgRetentionTime"`
2369
2370	// 实例名称,是一个不超过 64 个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线(-)
2371	InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"`
2372
2373	// 实例配置
2374	Config *ModifyInstanceAttributesConfig `json:"Config,omitempty" name:"Config"`
2375
2376	// 动态消息保留策略配置
2377	DynamicRetentionConfig *DynamicRetentionTime `json:"DynamicRetentionConfig,omitempty" name:"DynamicRetentionConfig"`
2378
2379	// 修改升配置rebalance时间
2380	RebalanceTime *int64 `json:"RebalanceTime,omitempty" name:"RebalanceTime"`
2381}
2382
2383func (r *ModifyInstanceAttributesRequest) ToJsonString() string {
2384    b, _ := json.Marshal(r)
2385    return string(b)
2386}
2387
2388// It is highly **NOT** recommended to use this function
2389// because it has no param check, nor strict type check
2390func (r *ModifyInstanceAttributesRequest) FromJsonString(s string) error {
2391	f := make(map[string]interface{})
2392	if err := json.Unmarshal([]byte(s), &f); err != nil {
2393		return err
2394	}
2395	delete(f, "InstanceId")
2396	delete(f, "MsgRetentionTime")
2397	delete(f, "InstanceName")
2398	delete(f, "Config")
2399	delete(f, "DynamicRetentionConfig")
2400	delete(f, "RebalanceTime")
2401	if len(f) > 0 {
2402		return errors.New("ModifyInstanceAttributesRequest has unknown keys!")
2403	}
2404	return json.Unmarshal([]byte(s), &r)
2405}
2406
2407type ModifyInstanceAttributesResponse struct {
2408	*tchttp.BaseResponse
2409	Response *struct {
2410
2411		// 返回结果
2412		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
2413
2414		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2415		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
2416	} `json:"Response"`
2417}
2418
2419func (r *ModifyInstanceAttributesResponse) ToJsonString() string {
2420    b, _ := json.Marshal(r)
2421    return string(b)
2422}
2423
2424// It is highly **NOT** recommended to use this function
2425// because it has no param check, nor strict type check
2426func (r *ModifyInstanceAttributesResponse) FromJsonString(s string) error {
2427	return json.Unmarshal([]byte(s), &r)
2428}
2429
2430type ModifyPasswordRequest struct {
2431	*tchttp.BaseRequest
2432
2433	// 实例Id
2434	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2435
2436	// 用户名称
2437	Name *string `json:"Name,omitempty" name:"Name"`
2438
2439	// 用户当前密码
2440	Password *string `json:"Password,omitempty" name:"Password"`
2441
2442	// 用户新密码
2443	PasswordNew *string `json:"PasswordNew,omitempty" name:"PasswordNew"`
2444}
2445
2446func (r *ModifyPasswordRequest) ToJsonString() string {
2447    b, _ := json.Marshal(r)
2448    return string(b)
2449}
2450
2451// It is highly **NOT** recommended to use this function
2452// because it has no param check, nor strict type check
2453func (r *ModifyPasswordRequest) FromJsonString(s string) error {
2454	f := make(map[string]interface{})
2455	if err := json.Unmarshal([]byte(s), &f); err != nil {
2456		return err
2457	}
2458	delete(f, "InstanceId")
2459	delete(f, "Name")
2460	delete(f, "Password")
2461	delete(f, "PasswordNew")
2462	if len(f) > 0 {
2463		return errors.New("ModifyPasswordRequest has unknown keys!")
2464	}
2465	return json.Unmarshal([]byte(s), &r)
2466}
2467
2468type ModifyPasswordResponse struct {
2469	*tchttp.BaseResponse
2470	Response *struct {
2471
2472		// 返回结果
2473		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
2474
2475		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2476		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
2477	} `json:"Response"`
2478}
2479
2480func (r *ModifyPasswordResponse) ToJsonString() string {
2481    b, _ := json.Marshal(r)
2482    return string(b)
2483}
2484
2485// It is highly **NOT** recommended to use this function
2486// because it has no param check, nor strict type check
2487func (r *ModifyPasswordResponse) FromJsonString(s string) error {
2488	return json.Unmarshal([]byte(s), &r)
2489}
2490
2491type ModifyTopicAttributesRequest struct {
2492	*tchttp.BaseRequest
2493
2494	// 实例 ID。
2495	InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"`
2496
2497	// 主题名称。
2498	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
2499
2500	// 主题备注,是一个不超过64个字符的字符串,必须以字母为首字符,剩余部分可以包含字母、数字和横划线-。
2501	Note *string `json:"Note,omitempty" name:"Note"`
2502
2503	// IP 白名单开关,1:打开;0:关闭。
2504	EnableWhiteList *int64 `json:"EnableWhiteList,omitempty" name:"EnableWhiteList"`
2505
2506	// 默认为1。
2507	MinInsyncReplicas *int64 `json:"MinInsyncReplicas,omitempty" name:"MinInsyncReplicas"`
2508
2509	// 默认为 0,0:false;1:true。
2510	UncleanLeaderElectionEnable *int64 `json:"UncleanLeaderElectionEnable,omitempty" name:"UncleanLeaderElectionEnable"`
2511
2512	// 消息保留时间,单位:ms,当前最小值为60000ms。
2513	RetentionMs *int64 `json:"RetentionMs,omitempty" name:"RetentionMs"`
2514
2515	// Segment 分片滚动的时长,单位:ms,当前最小为86400000ms。
2516	SegmentMs *int64 `json:"SegmentMs,omitempty" name:"SegmentMs"`
2517
2518	// 主题消息最大值,单位为 Byte,最大值为8388608Byte(即8MB)。
2519	MaxMessageBytes *int64 `json:"MaxMessageBytes,omitempty" name:"MaxMessageBytes"`
2520
2521	// 消息删除策略,可以选择delete 或者compact
2522	CleanUpPolicy *string `json:"CleanUpPolicy,omitempty" name:"CleanUpPolicy"`
2523}
2524
2525func (r *ModifyTopicAttributesRequest) ToJsonString() string {
2526    b, _ := json.Marshal(r)
2527    return string(b)
2528}
2529
2530// It is highly **NOT** recommended to use this function
2531// because it has no param check, nor strict type check
2532func (r *ModifyTopicAttributesRequest) FromJsonString(s string) error {
2533	f := make(map[string]interface{})
2534	if err := json.Unmarshal([]byte(s), &f); err != nil {
2535		return err
2536	}
2537	delete(f, "InstanceId")
2538	delete(f, "TopicName")
2539	delete(f, "Note")
2540	delete(f, "EnableWhiteList")
2541	delete(f, "MinInsyncReplicas")
2542	delete(f, "UncleanLeaderElectionEnable")
2543	delete(f, "RetentionMs")
2544	delete(f, "SegmentMs")
2545	delete(f, "MaxMessageBytes")
2546	delete(f, "CleanUpPolicy")
2547	if len(f) > 0 {
2548		return errors.New("ModifyTopicAttributesRequest has unknown keys!")
2549	}
2550	return json.Unmarshal([]byte(s), &r)
2551}
2552
2553type ModifyTopicAttributesResponse struct {
2554	*tchttp.BaseResponse
2555	Response *struct {
2556
2557		// 返回结果集
2558		Result *JgwOperateResponse `json:"Result,omitempty" name:"Result"`
2559
2560		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2561		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
2562	} `json:"Response"`
2563}
2564
2565func (r *ModifyTopicAttributesResponse) ToJsonString() string {
2566    b, _ := json.Marshal(r)
2567    return string(b)
2568}
2569
2570// It is highly **NOT** recommended to use this function
2571// because it has no param check, nor strict type check
2572func (r *ModifyTopicAttributesResponse) FromJsonString(s string) error {
2573	return json.Unmarshal([]byte(s), &r)
2574}
2575
2576type OperateResponseData struct {
2577
2578	// FlowId
2579	// 注意:此字段可能返回 null,表示取不到有效值。
2580	FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"`
2581}
2582
2583type Partition struct {
2584
2585	// 分区ID
2586	PartitionId *int64 `json:"PartitionId,omitempty" name:"PartitionId"`
2587}
2588
2589type PartitionOffset struct {
2590
2591	// Partition,例如"0"或"1"
2592	// 注意:此字段可能返回 null,表示取不到有效值。
2593	Partition *string `json:"Partition,omitempty" name:"Partition"`
2594
2595	// Offset,例如100
2596	// 注意:此字段可能返回 null,表示取不到有效值。
2597	Offset *int64 `json:"Offset,omitempty" name:"Offset"`
2598}
2599
2600type Price struct {
2601
2602	// 折扣价
2603	RealTotalCost *float64 `json:"RealTotalCost,omitempty" name:"RealTotalCost"`
2604
2605	// 原价
2606	TotalCost *float64 `json:"TotalCost,omitempty" name:"TotalCost"`
2607}
2608
2609type Region struct {
2610
2611	// 地域ID
2612	RegionId *int64 `json:"RegionId,omitempty" name:"RegionId"`
2613
2614	// 地域名称
2615	RegionName *string `json:"RegionName,omitempty" name:"RegionName"`
2616
2617	// 区域名称
2618	AreaName *string `json:"AreaName,omitempty" name:"AreaName"`
2619
2620	// 地域代码
2621	// 注意:此字段可能返回 null,表示取不到有效值。
2622	RegionCode *string `json:"RegionCode,omitempty" name:"RegionCode"`
2623
2624	// 地域代码(V3版本)
2625	// 注意:此字段可能返回 null,表示取不到有效值。
2626	RegionCodeV3 *string `json:"RegionCodeV3,omitempty" name:"RegionCodeV3"`
2627
2628	// NONE:默认值不支持任何特殊机型\nCVM:支持CVM类型
2629	// 注意:此字段可能返回 null,表示取不到有效值。
2630	Support *string `json:"Support,omitempty" name:"Support"`
2631
2632	// 是否支持ipv6, 0:表示不支持,1:表示支持
2633	// 注意:此字段可能返回 null,表示取不到有效值。
2634	Ipv6 *int64 `json:"Ipv6,omitempty" name:"Ipv6"`
2635
2636	// 是否支持跨可用区, 0:表示不支持,1:表示支持
2637	// 注意:此字段可能返回 null,表示取不到有效值。
2638	MultiZone *int64 `json:"MultiZone,omitempty" name:"MultiZone"`
2639}
2640
2641type Route struct {
2642
2643	// 实例接入方式
2644	// 0:PLAINTEXT (明文方式,没有带用户信息老版本及社区版本都支持)
2645	// 1:SASL_PLAINTEXT(明文方式,不过在数据开始时,会通过SASL方式登录鉴权,仅社区版本支持)
2646	// 2:SSL(SSL加密通信,没有带用户信息,老版本及社区版本都支持)
2647	// 3:SASL_SSL(SSL加密通信,在数据开始时,会通过SASL方式登录鉴权,仅社区版本支持)
2648	AccessType *int64 `json:"AccessType,omitempty" name:"AccessType"`
2649
2650	// 路由ID
2651	RouteId *int64 `json:"RouteId,omitempty" name:"RouteId"`
2652
2653	// vip网络类型(1:外网TGW  2:基础网络 3:VPC网络 4:腾讯云支持环境(一般用于内部实例) 5:SSL外网访问方式访问 6:黑石环境vpc)
2654	VipType *int64 `json:"VipType,omitempty" name:"VipType"`
2655
2656	// 虚拟IP列表
2657	VipList []*VipEntity `json:"VipList,omitempty" name:"VipList" list`
2658
2659	// 域名
2660	// 注意:此字段可能返回 null,表示取不到有效值。
2661	Domain *string `json:"Domain,omitempty" name:"Domain"`
2662
2663	// 域名port
2664	// 注意:此字段可能返回 null,表示取不到有效值。
2665	DomainPort *int64 `json:"DomainPort,omitempty" name:"DomainPort"`
2666}
2667
2668type RouteResponse struct {
2669
2670	// 路由信息列表
2671	// 注意:此字段可能返回 null,表示取不到有效值。
2672	Routers []*Route `json:"Routers,omitempty" name:"Routers" list`
2673}
2674
2675type SubscribedInfo struct {
2676
2677	// 订阅的主题名
2678	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
2679
2680	// 订阅的分区
2681	// 注意:此字段可能返回 null,表示取不到有效值。
2682	Partition []*int64 `json:"Partition,omitempty" name:"Partition" list`
2683
2684	// 分区offset信息
2685	// 注意:此字段可能返回 null,表示取不到有效值。
2686	PartitionOffset []*PartitionOffset `json:"PartitionOffset,omitempty" name:"PartitionOffset" list`
2687
2688	// 订阅的主题ID
2689	// 注意:此字段可能返回 null,表示取不到有效值。
2690	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
2691}
2692
2693type Tag struct {
2694
2695	// 标签的key
2696	TagKey *string `json:"TagKey,omitempty" name:"TagKey"`
2697
2698	// 标签的值
2699	TagValue *string `json:"TagValue,omitempty" name:"TagValue"`
2700}
2701
2702type Topic struct {
2703
2704	// 主题的ID
2705	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
2706
2707	// 主题的名称
2708	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
2709
2710	// 备注
2711	// 注意:此字段可能返回 null,表示取不到有效值。
2712	Note *string `json:"Note,omitempty" name:"Note"`
2713}
2714
2715type TopicAttributesResponse struct {
2716
2717	// 主题 ID
2718	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
2719
2720	// 创建时间
2721	CreateTime *int64 `json:"CreateTime,omitempty" name:"CreateTime"`
2722
2723	// 主题备注
2724	// 注意:此字段可能返回 null,表示取不到有效值。
2725	Note *string `json:"Note,omitempty" name:"Note"`
2726
2727	// 分区个数
2728	PartitionNum *int64 `json:"PartitionNum,omitempty" name:"PartitionNum"`
2729
2730	// IP 白名单开关,1:打开; 0:关闭
2731	EnableWhiteList *int64 `json:"EnableWhiteList,omitempty" name:"EnableWhiteList"`
2732
2733	// IP 白名单列表
2734	IpWhiteList []*string `json:"IpWhiteList,omitempty" name:"IpWhiteList" list`
2735
2736	// topic 配置数组
2737	Config *Config `json:"Config,omitempty" name:"Config"`
2738
2739	// 分区详情
2740	Partitions []*TopicPartitionDO `json:"Partitions,omitempty" name:"Partitions" list`
2741}
2742
2743type TopicDetail struct {
2744
2745	// 主题名称
2746	TopicName *string `json:"TopicName,omitempty" name:"TopicName"`
2747
2748	// 主题ID
2749	TopicId *string `json:"TopicId,omitempty" name:"TopicId"`
2750
2751	// 分区数
2752	PartitionNum *int64 `json:"PartitionNum,omitempty" name:"PartitionNum"`
2753
2754	// 副本数
2755	ReplicaNum *int64 `json:"ReplicaNum,omitempty" name:"ReplicaNum"`
2756
2757	// 备注
2758	// 注意:此字段可能返回 null,表示取不到有效值。
2759	Note *string `json:"Note,omitempty" name:"Note"`
2760
2761	// 创建时间
2762	CreateTime *int64 `json:"CreateTime,omitempty" name:"CreateTime"`
2763
2764	// 是否开启ip鉴权白名单,true表示开启,false表示不开启
2765	EnableWhiteList *bool `json:"EnableWhiteList,omitempty" name:"EnableWhiteList"`
2766
2767	// ip白名单中ip个数
2768	IpWhiteListCount *int64 `json:"IpWhiteListCount,omitempty" name:"IpWhiteListCount"`
2769
2770	// 数据备份cos bucket: 转存到cos 的bucket地址
2771	// 注意:此字段可能返回 null,表示取不到有效值。
2772	ForwardCosBucket *string `json:"ForwardCosBucket,omitempty" name:"ForwardCosBucket"`
2773
2774	// 数据备份cos 状态: 1 不开启数据备份,0 开启数据备份
2775	ForwardStatus *int64 `json:"ForwardStatus,omitempty" name:"ForwardStatus"`
2776
2777	// 数据备份到cos的周期频率
2778	ForwardInterval *int64 `json:"ForwardInterval,omitempty" name:"ForwardInterval"`
2779
2780	// 高级配置
2781	// 注意:此字段可能返回 null,表示取不到有效值。
2782	Config *Config `json:"Config,omitempty" name:"Config"`
2783
2784	// 消息保留时间配置(用于动态配置变更记录)
2785	// 注意:此字段可能返回 null,表示取不到有效值。
2786	RetentionTimeConfig *TopicRetentionTimeConfigRsp `json:"RetentionTimeConfig,omitempty" name:"RetentionTimeConfig"`
2787}
2788
2789type TopicDetailResponse struct {
2790
2791	// 返回的主题详情列表
2792	// 注意:此字段可能返回 null,表示取不到有效值。
2793	TopicList []*TopicDetail `json:"TopicList,omitempty" name:"TopicList" list`
2794
2795	// 符合条件的所有主题详情数量
2796	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2797}
2798
2799type TopicPartitionDO struct {
2800
2801	// Partition ID
2802	Partition *int64 `json:"Partition,omitempty" name:"Partition"`
2803
2804	// Leader 运行状态
2805	LeaderStatus *int64 `json:"LeaderStatus,omitempty" name:"LeaderStatus"`
2806
2807	// ISR 个数
2808	IsrNum *int64 `json:"IsrNum,omitempty" name:"IsrNum"`
2809
2810	// 副本个数
2811	ReplicaNum *int64 `json:"ReplicaNum,omitempty" name:"ReplicaNum"`
2812}
2813
2814type TopicResult struct {
2815
2816	// 返回的主题信息列表
2817	// 注意:此字段可能返回 null,表示取不到有效值。
2818	TopicList []*Topic `json:"TopicList,omitempty" name:"TopicList" list`
2819
2820	// 符合条件的 topic 数量
2821	// 注意:此字段可能返回 null,表示取不到有效值。
2822	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2823}
2824
2825type TopicRetentionTimeConfigRsp struct {
2826
2827	// 期望值,即用户配置的Topic消息保留时间(单位分钟)
2828	// 注意:此字段可能返回 null,表示取不到有效值。
2829	Expect *int64 `json:"Expect,omitempty" name:"Expect"`
2830
2831	// 当前值,即当前生效值(可能存在动态调整,单位分钟)
2832	// 注意:此字段可能返回 null,表示取不到有效值。
2833	Current *int64 `json:"Current,omitempty" name:"Current"`
2834
2835	// 最近变更时间
2836	// 注意:此字段可能返回 null,表示取不到有效值。
2837	ModTimeStamp *int64 `json:"ModTimeStamp,omitempty" name:"ModTimeStamp"`
2838}
2839
2840type User struct {
2841
2842	// 用户id
2843	UserId *int64 `json:"UserId,omitempty" name:"UserId"`
2844
2845	// 用户名称
2846	Name *string `json:"Name,omitempty" name:"Name"`
2847
2848	// 创建时间
2849	CreateTime *string `json:"CreateTime,omitempty" name:"CreateTime"`
2850
2851	// 最后更新时间
2852	UpdateTime *string `json:"UpdateTime,omitempty" name:"UpdateTime"`
2853}
2854
2855type UserResponse struct {
2856
2857	// 符合条件的用户列表
2858	// 注意:此字段可能返回 null,表示取不到有效值。
2859	Users []*User `json:"Users,omitempty" name:"Users" list`
2860
2861	// 符合条件的总用户数
2862	TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"`
2863}
2864
2865type VipEntity struct {
2866
2867	// 虚拟IP
2868	Vip *string `json:"Vip,omitempty" name:"Vip"`
2869
2870	// 虚拟端口
2871	Vport *string `json:"Vport,omitempty" name:"Vport"`
2872}
2873
2874type ZoneInfo struct {
2875
2876	// zone的id
2877	ZoneId *string `json:"ZoneId,omitempty" name:"ZoneId"`
2878
2879	// 是否内部APP
2880	IsInternalApp *int64 `json:"IsInternalApp,omitempty" name:"IsInternalApp"`
2881
2882	// app id
2883	AppId *int64 `json:"AppId,omitempty" name:"AppId"`
2884
2885	// 标识
2886	Flag *bool `json:"Flag,omitempty" name:"Flag"`
2887
2888	// zone名称
2889	ZoneName *string `json:"ZoneName,omitempty" name:"ZoneName"`
2890
2891	// zone状态
2892	ZoneStatus *int64 `json:"ZoneStatus,omitempty" name:"ZoneStatus"`
2893
2894	// 额外标识
2895	Exflag *string `json:"Exflag,omitempty" name:"Exflag"`
2896
2897	// json对象,key为机型,value true为售罄,false为未售罄
2898	SoldOut *string `json:"SoldOut,omitempty" name:"SoldOut"`
2899}
2900
2901type ZoneResponse struct {
2902
2903	// zone列表
2904	ZoneList []*ZoneInfo `json:"ZoneList,omitempty" name:"ZoneList" list`
2905
2906	// 最大购买实例个数
2907	MaxBuyInstanceNum *int64 `json:"MaxBuyInstanceNum,omitempty" name:"MaxBuyInstanceNum"`
2908
2909	// 最大购买带宽 单位Mb/s
2910	MaxBandwidth *int64 `json:"MaxBandwidth,omitempty" name:"MaxBandwidth"`
2911
2912	// 后付费单位价格
2913	UnitPrice *Price `json:"UnitPrice,omitempty" name:"UnitPrice"`
2914
2915	// 后付费消息单价
2916	MessagePrice *Price `json:"MessagePrice,omitempty" name:"MessagePrice"`
2917
2918	// 用户独占集群信息
2919	// 注意:此字段可能返回 null,表示取不到有效值。
2920	ClusterInfo []*ClusterInfo `json:"ClusterInfo,omitempty" name:"ClusterInfo" list`
2921
2922	// 购买标准版配置
2923	// 注意:此字段可能返回 null,表示取不到有效值。
2924	Standard *string `json:"Standard,omitempty" name:"Standard"`
2925
2926	// 购买标准版S2配置
2927	// 注意:此字段可能返回 null,表示取不到有效值。
2928	StandardS2 *string `json:"StandardS2,omitempty" name:"StandardS2"`
2929
2930	// 购买专业版配置
2931	// 注意:此字段可能返回 null,表示取不到有效值。
2932	Profession *string `json:"Profession,omitempty" name:"Profession"`
2933
2934	// 购买物理独占版配置
2935	// 注意:此字段可能返回 null,表示取不到有效值。
2936	Physical *string `json:"Physical,omitempty" name:"Physical"`
2937}
2938