Quellcode durchsuchen

Support aggregator delivery.

sdk-team vor 4 Jahren
Ursprung
Commit
0b62e66ece
69 geänderte Dateien mit 3225 neuen und 19 gelöschten Zeilen
  1. 3 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 44 0
      config/CMakeLists.txt
  4. 88 0
      config/include/alibabacloud/config/ConfigClient.h
  5. 72 0
      config/include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelRequest.h
  6. 51 0
      config/include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelResult.h
  7. 69 0
      config/include/alibabacloud/config/model/CreateConfigDeliveryChannelRequest.h
  8. 51 0
      config/include/alibabacloud/config/model/CreateConfigDeliveryChannelResult.h
  9. 45 0
      config/include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelRequest.h
  10. 68 0
      config/include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelResult.h
  11. 42 0
      config/include/alibabacloud/config/model/GetConfigDeliveryChannelRequest.h
  12. 67 0
      config/include/alibabacloud/config/model/GetConfigDeliveryChannelResult.h
  13. 2 2
      config/include/alibabacloud/config/model/GetManagedRuleResult.h
  14. 3 0
      config/include/alibabacloud/config/model/IgnoreAggregateEvaluationResultsRequest.h
  15. 3 0
      config/include/alibabacloud/config/model/IgnoreEvaluationResultsRequest.h
  16. 45 0
      config/include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsRequest.h
  17. 68 0
      config/include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsResult.h
  18. 1 0
      config/include/alibabacloud/config/model/ListAggregateConfigRuleEvaluationResultsResult.h
  19. 1 1
      config/include/alibabacloud/config/model/ListAggregateDiscoveredResourcesResult.h
  20. 5 4
      config/include/alibabacloud/config/model/ListAggregateRemediationsResult.h
  21. 1 0
      config/include/alibabacloud/config/model/ListAggregateResourceEvaluationResultsResult.h
  22. 42 0
      config/include/alibabacloud/config/model/ListConfigDeliveryChannelsRequest.h
  23. 67 0
      config/include/alibabacloud/config/model/ListConfigDeliveryChannelsResult.h
  24. 1 0
      config/include/alibabacloud/config/model/ListConfigRuleEvaluationResultsResult.h
  25. 1 1
      config/include/alibabacloud/config/model/ListDiscoveredResourcesResult.h
  26. 1 0
      config/include/alibabacloud/config/model/ListResourceEvaluationResultsResult.h
  27. 39 0
      config/include/alibabacloud/config/model/ListTagResourcesRequest.h
  28. 60 0
      config/include/alibabacloud/config/model/ListTagResourcesResult.h
  29. 39 0
      config/include/alibabacloud/config/model/TagResourcesRequest.h
  30. 49 0
      config/include/alibabacloud/config/model/TagResourcesResult.h
  31. 39 0
      config/include/alibabacloud/config/model/UntagResourcesRequest.h
  32. 49 0
      config/include/alibabacloud/config/model/UntagResourcesResult.h
  33. 75 0
      config/include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelRequest.h
  34. 51 0
      config/include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelResult.h
  35. 72 0
      config/include/alibabacloud/config/model/UpdateConfigDeliveryChannelRequest.h
  36. 51 0
      config/include/alibabacloud/config/model/UpdateConfigDeliveryChannelResult.h
  37. 396 0
      config/src/ConfigClient.cc
  38. 126 0
      config/src/model/CreateAggregateConfigDeliveryChannelRequest.cc
  39. 51 0
      config/src/model/CreateAggregateConfigDeliveryChannelResult.cc
  40. 117 0
      config/src/model/CreateConfigDeliveryChannelRequest.cc
  41. 51 0
      config/src/model/CreateConfigDeliveryChannelResult.cc
  42. 45 0
      config/src/model/GetAggregateConfigDeliveryChannelRequest.cc
  43. 78 0
      config/src/model/GetAggregateConfigDeliveryChannelResult.cc
  44. 36 0
      config/src/model/GetConfigDeliveryChannelRequest.cc
  45. 76 0
      config/src/model/GetConfigDeliveryChannelResult.cc
  46. 4 6
      config/src/model/GetManagedRuleResult.cc
  47. 9 0
      config/src/model/IgnoreAggregateEvaluationResultsRequest.cc
  48. 9 0
      config/src/model/IgnoreEvaluationResultsRequest.cc
  49. 45 0
      config/src/model/ListAggregateConfigDeliveryChannelsRequest.cc
  50. 83 0
      config/src/model/ListAggregateConfigDeliveryChannelsResult.cc
  51. 2 0
      config/src/model/ListAggregateConfigRuleEvaluationResultsResult.cc
  52. 2 2
      config/src/model/ListAggregateDiscoveredResourcesResult.cc
  53. 2 0
      config/src/model/ListAggregateRemediationsResult.cc
  54. 2 0
      config/src/model/ListAggregateResourceEvaluationResultsResult.cc
  55. 36 0
      config/src/model/ListConfigDeliveryChannelsRequest.cc
  56. 81 0
      config/src/model/ListConfigDeliveryChannelsResult.cc
  57. 2 0
      config/src/model/ListConfigRuleEvaluationResultsResult.cc
  58. 2 2
      config/src/model/ListDiscoveredResourcesResult.cc
  59. 2 0
      config/src/model/ListResourceEvaluationResultsResult.cc
  60. 27 0
      config/src/model/ListTagResourcesRequest.cc
  61. 70 0
      config/src/model/ListTagResourcesResult.cc
  62. 27 0
      config/src/model/TagResourcesRequest.cc
  63. 44 0
      config/src/model/TagResourcesResult.cc
  64. 27 0
      config/src/model/UntagResourcesRequest.cc
  65. 44 0
      config/src/model/UntagResourcesResult.cc
  66. 135 0
      config/src/model/UpdateAggregateConfigDeliveryChannelRequest.cc
  67. 51 0
      config/src/model/UpdateAggregateConfigDeliveryChannelResult.cc
  68. 126 0
      config/src/model/UpdateConfigDeliveryChannelRequest.cc
  69. 51 0
      config/src/model/UpdateConfigDeliveryChannelResult.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2022-05-31 Version: 1.36.1141
+- Support aggregator delivery.
+
 2022-05-31 Version: 1.36.1140
 - Add Template API Support.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1140
+1.36.1141

+ 44 - 0
config/CMakeLists.txt

@@ -29,6 +29,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/AttachConfigRuleToCompliancePackResult.h
 	include/alibabacloud/config/model/CreateAggregateCompliancePackRequest.h
 	include/alibabacloud/config/model/CreateAggregateCompliancePackResult.h
+	include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/CreateAggregateConfigRuleRequest.h
 	include/alibabacloud/config/model/CreateAggregateConfigRuleResult.h
 	include/alibabacloud/config/model/CreateAggregateRemediationRequest.h
@@ -37,6 +39,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/CreateAggregatorResult.h
 	include/alibabacloud/config/model/CreateCompliancePackRequest.h
 	include/alibabacloud/config/model/CreateCompliancePackResult.h
+	include/alibabacloud/config/model/CreateConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/CreateConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/CreateConfigRuleRequest.h
 	include/alibabacloud/config/model/CreateConfigRuleResult.h
 	include/alibabacloud/config/model/CreateRemediationRequest.h
@@ -75,6 +79,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/GetAggregateCompliancePackResult.h
 	include/alibabacloud/config/model/GetAggregateCompliancePackReportRequest.h
 	include/alibabacloud/config/model/GetAggregateCompliancePackReportResult.h
+	include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/GetAggregateConfigRuleRequest.h
 	include/alibabacloud/config/model/GetAggregateConfigRuleResult.h
 	include/alibabacloud/config/model/GetAggregateConfigRuleComplianceByPackRequest.h
@@ -107,6 +113,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/GetCompliancePackResult.h
 	include/alibabacloud/config/model/GetCompliancePackReportRequest.h
 	include/alibabacloud/config/model/GetCompliancePackReportResult.h
+	include/alibabacloud/config/model/GetConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/GetConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/GetConfigRuleRequest.h
 	include/alibabacloud/config/model/GetConfigRuleResult.h
 	include/alibabacloud/config/model/GetConfigRuleComplianceByPackRequest.h
@@ -141,6 +149,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/IgnoreEvaluationResultsResult.h
 	include/alibabacloud/config/model/ListAggregateCompliancePacksRequest.h
 	include/alibabacloud/config/model/ListAggregateCompliancePacksResult.h
+	include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsRequest.h
+	include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsResult.h
 	include/alibabacloud/config/model/ListAggregateConfigRuleEvaluationResultsRequest.h
 	include/alibabacloud/config/model/ListAggregateConfigRuleEvaluationResultsResult.h
 	include/alibabacloud/config/model/ListAggregateConfigRulesRequest.h
@@ -157,6 +167,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/ListCompliancePackTemplatesResult.h
 	include/alibabacloud/config/model/ListCompliancePacksRequest.h
 	include/alibabacloud/config/model/ListCompliancePacksResult.h
+	include/alibabacloud/config/model/ListConfigDeliveryChannelsRequest.h
+	include/alibabacloud/config/model/ListConfigDeliveryChannelsResult.h
 	include/alibabacloud/config/model/ListConfigRuleEvaluationResultsRequest.h
 	include/alibabacloud/config/model/ListConfigRuleEvaluationResultsResult.h
 	include/alibabacloud/config/model/ListDiscoveredResourcesRequest.h
@@ -169,6 +181,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/ListRemediationsResult.h
 	include/alibabacloud/config/model/ListResourceEvaluationResultsRequest.h
 	include/alibabacloud/config/model/ListResourceEvaluationResultsResult.h
+	include/alibabacloud/config/model/ListTagResourcesRequest.h
+	include/alibabacloud/config/model/ListTagResourcesResult.h
 	include/alibabacloud/config/model/RevertAggregateEvaluationResultsRequest.h
 	include/alibabacloud/config/model/RevertAggregateEvaluationResultsResult.h
 	include/alibabacloud/config/model/RevertEvaluationResultsRequest.h
@@ -179,8 +193,14 @@ set(config_public_header_model
 	include/alibabacloud/config/model/StartAggregateRemediationResult.h
 	include/alibabacloud/config/model/StartRemediationRequest.h
 	include/alibabacloud/config/model/StartRemediationResult.h
+	include/alibabacloud/config/model/TagResourcesRequest.h
+	include/alibabacloud/config/model/TagResourcesResult.h
+	include/alibabacloud/config/model/UntagResourcesRequest.h
+	include/alibabacloud/config/model/UntagResourcesResult.h
 	include/alibabacloud/config/model/UpdateAggregateCompliancePackRequest.h
 	include/alibabacloud/config/model/UpdateAggregateCompliancePackResult.h
+	include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/UpdateAggregateConfigRuleRequest.h
 	include/alibabacloud/config/model/UpdateAggregateConfigRuleResult.h
 	include/alibabacloud/config/model/UpdateAggregateRemediationRequest.h
@@ -189,6 +209,8 @@ set(config_public_header_model
 	include/alibabacloud/config/model/UpdateAggregatorResult.h
 	include/alibabacloud/config/model/UpdateCompliancePackRequest.h
 	include/alibabacloud/config/model/UpdateCompliancePackResult.h
+	include/alibabacloud/config/model/UpdateConfigDeliveryChannelRequest.h
+	include/alibabacloud/config/model/UpdateConfigDeliveryChannelResult.h
 	include/alibabacloud/config/model/UpdateConfigRuleRequest.h
 	include/alibabacloud/config/model/UpdateConfigRuleResult.h )
 
@@ -202,6 +224,8 @@ set(config_src
 	src/model/AttachConfigRuleToCompliancePackResult.cc
 	src/model/CreateAggregateCompliancePackRequest.cc
 	src/model/CreateAggregateCompliancePackResult.cc
+	src/model/CreateAggregateConfigDeliveryChannelRequest.cc
+	src/model/CreateAggregateConfigDeliveryChannelResult.cc
 	src/model/CreateAggregateConfigRuleRequest.cc
 	src/model/CreateAggregateConfigRuleResult.cc
 	src/model/CreateAggregateRemediationRequest.cc
@@ -210,6 +234,8 @@ set(config_src
 	src/model/CreateAggregatorResult.cc
 	src/model/CreateCompliancePackRequest.cc
 	src/model/CreateCompliancePackResult.cc
+	src/model/CreateConfigDeliveryChannelRequest.cc
+	src/model/CreateConfigDeliveryChannelResult.cc
 	src/model/CreateConfigRuleRequest.cc
 	src/model/CreateConfigRuleResult.cc
 	src/model/CreateRemediationRequest.cc
@@ -248,6 +274,8 @@ set(config_src
 	src/model/GetAggregateCompliancePackResult.cc
 	src/model/GetAggregateCompliancePackReportRequest.cc
 	src/model/GetAggregateCompliancePackReportResult.cc
+	src/model/GetAggregateConfigDeliveryChannelRequest.cc
+	src/model/GetAggregateConfigDeliveryChannelResult.cc
 	src/model/GetAggregateConfigRuleRequest.cc
 	src/model/GetAggregateConfigRuleResult.cc
 	src/model/GetAggregateConfigRuleComplianceByPackRequest.cc
@@ -280,6 +308,8 @@ set(config_src
 	src/model/GetCompliancePackResult.cc
 	src/model/GetCompliancePackReportRequest.cc
 	src/model/GetCompliancePackReportResult.cc
+	src/model/GetConfigDeliveryChannelRequest.cc
+	src/model/GetConfigDeliveryChannelResult.cc
 	src/model/GetConfigRuleRequest.cc
 	src/model/GetConfigRuleResult.cc
 	src/model/GetConfigRuleComplianceByPackRequest.cc
@@ -314,6 +344,8 @@ set(config_src
 	src/model/IgnoreEvaluationResultsResult.cc
 	src/model/ListAggregateCompliancePacksRequest.cc
 	src/model/ListAggregateCompliancePacksResult.cc
+	src/model/ListAggregateConfigDeliveryChannelsRequest.cc
+	src/model/ListAggregateConfigDeliveryChannelsResult.cc
 	src/model/ListAggregateConfigRuleEvaluationResultsRequest.cc
 	src/model/ListAggregateConfigRuleEvaluationResultsResult.cc
 	src/model/ListAggregateConfigRulesRequest.cc
@@ -330,6 +362,8 @@ set(config_src
 	src/model/ListCompliancePackTemplatesResult.cc
 	src/model/ListCompliancePacksRequest.cc
 	src/model/ListCompliancePacksResult.cc
+	src/model/ListConfigDeliveryChannelsRequest.cc
+	src/model/ListConfigDeliveryChannelsResult.cc
 	src/model/ListConfigRuleEvaluationResultsRequest.cc
 	src/model/ListConfigRuleEvaluationResultsResult.cc
 	src/model/ListDiscoveredResourcesRequest.cc
@@ -342,6 +376,8 @@ set(config_src
 	src/model/ListRemediationsResult.cc
 	src/model/ListResourceEvaluationResultsRequest.cc
 	src/model/ListResourceEvaluationResultsResult.cc
+	src/model/ListTagResourcesRequest.cc
+	src/model/ListTagResourcesResult.cc
 	src/model/RevertAggregateEvaluationResultsRequest.cc
 	src/model/RevertAggregateEvaluationResultsResult.cc
 	src/model/RevertEvaluationResultsRequest.cc
@@ -352,8 +388,14 @@ set(config_src
 	src/model/StartAggregateRemediationResult.cc
 	src/model/StartRemediationRequest.cc
 	src/model/StartRemediationResult.cc
+	src/model/TagResourcesRequest.cc
+	src/model/TagResourcesResult.cc
+	src/model/UntagResourcesRequest.cc
+	src/model/UntagResourcesResult.cc
 	src/model/UpdateAggregateCompliancePackRequest.cc
 	src/model/UpdateAggregateCompliancePackResult.cc
+	src/model/UpdateAggregateConfigDeliveryChannelRequest.cc
+	src/model/UpdateAggregateConfigDeliveryChannelResult.cc
 	src/model/UpdateAggregateConfigRuleRequest.cc
 	src/model/UpdateAggregateConfigRuleResult.cc
 	src/model/UpdateAggregateRemediationRequest.cc
@@ -362,6 +404,8 @@ set(config_src
 	src/model/UpdateAggregatorResult.cc
 	src/model/UpdateCompliancePackRequest.cc
 	src/model/UpdateCompliancePackResult.cc
+	src/model/UpdateConfigDeliveryChannelRequest.cc
+	src/model/UpdateConfigDeliveryChannelResult.cc
 	src/model/UpdateConfigRuleRequest.cc
 	src/model/UpdateConfigRuleResult.cc )
 

+ 88 - 0
config/include/alibabacloud/config/ConfigClient.h

@@ -30,6 +30,8 @@
 #include "model/AttachConfigRuleToCompliancePackResult.h"
 #include "model/CreateAggregateCompliancePackRequest.h"
 #include "model/CreateAggregateCompliancePackResult.h"
+#include "model/CreateAggregateConfigDeliveryChannelRequest.h"
+#include "model/CreateAggregateConfigDeliveryChannelResult.h"
 #include "model/CreateAggregateConfigRuleRequest.h"
 #include "model/CreateAggregateConfigRuleResult.h"
 #include "model/CreateAggregateRemediationRequest.h"
@@ -38,6 +40,8 @@
 #include "model/CreateAggregatorResult.h"
 #include "model/CreateCompliancePackRequest.h"
 #include "model/CreateCompliancePackResult.h"
+#include "model/CreateConfigDeliveryChannelRequest.h"
+#include "model/CreateConfigDeliveryChannelResult.h"
 #include "model/CreateConfigRuleRequest.h"
 #include "model/CreateConfigRuleResult.h"
 #include "model/CreateRemediationRequest.h"
@@ -76,6 +80,8 @@
 #include "model/GetAggregateCompliancePackResult.h"
 #include "model/GetAggregateCompliancePackReportRequest.h"
 #include "model/GetAggregateCompliancePackReportResult.h"
+#include "model/GetAggregateConfigDeliveryChannelRequest.h"
+#include "model/GetAggregateConfigDeliveryChannelResult.h"
 #include "model/GetAggregateConfigRuleRequest.h"
 #include "model/GetAggregateConfigRuleResult.h"
 #include "model/GetAggregateConfigRuleComplianceByPackRequest.h"
@@ -108,6 +114,8 @@
 #include "model/GetCompliancePackResult.h"
 #include "model/GetCompliancePackReportRequest.h"
 #include "model/GetCompliancePackReportResult.h"
+#include "model/GetConfigDeliveryChannelRequest.h"
+#include "model/GetConfigDeliveryChannelResult.h"
 #include "model/GetConfigRuleRequest.h"
 #include "model/GetConfigRuleResult.h"
 #include "model/GetConfigRuleComplianceByPackRequest.h"
@@ -142,6 +150,8 @@
 #include "model/IgnoreEvaluationResultsResult.h"
 #include "model/ListAggregateCompliancePacksRequest.h"
 #include "model/ListAggregateCompliancePacksResult.h"
+#include "model/ListAggregateConfigDeliveryChannelsRequest.h"
+#include "model/ListAggregateConfigDeliveryChannelsResult.h"
 #include "model/ListAggregateConfigRuleEvaluationResultsRequest.h"
 #include "model/ListAggregateConfigRuleEvaluationResultsResult.h"
 #include "model/ListAggregateConfigRulesRequest.h"
@@ -158,6 +168,8 @@
 #include "model/ListCompliancePackTemplatesResult.h"
 #include "model/ListCompliancePacksRequest.h"
 #include "model/ListCompliancePacksResult.h"
+#include "model/ListConfigDeliveryChannelsRequest.h"
+#include "model/ListConfigDeliveryChannelsResult.h"
 #include "model/ListConfigRuleEvaluationResultsRequest.h"
 #include "model/ListConfigRuleEvaluationResultsResult.h"
 #include "model/ListDiscoveredResourcesRequest.h"
@@ -170,6 +182,8 @@
 #include "model/ListRemediationsResult.h"
 #include "model/ListResourceEvaluationResultsRequest.h"
 #include "model/ListResourceEvaluationResultsResult.h"
+#include "model/ListTagResourcesRequest.h"
+#include "model/ListTagResourcesResult.h"
 #include "model/RevertAggregateEvaluationResultsRequest.h"
 #include "model/RevertAggregateEvaluationResultsResult.h"
 #include "model/RevertEvaluationResultsRequest.h"
@@ -180,8 +194,14 @@
 #include "model/StartAggregateRemediationResult.h"
 #include "model/StartRemediationRequest.h"
 #include "model/StartRemediationResult.h"
+#include "model/TagResourcesRequest.h"
+#include "model/TagResourcesResult.h"
+#include "model/UntagResourcesRequest.h"
+#include "model/UntagResourcesResult.h"
 #include "model/UpdateAggregateCompliancePackRequest.h"
 #include "model/UpdateAggregateCompliancePackResult.h"
+#include "model/UpdateAggregateConfigDeliveryChannelRequest.h"
+#include "model/UpdateAggregateConfigDeliveryChannelResult.h"
 #include "model/UpdateAggregateConfigRuleRequest.h"
 #include "model/UpdateAggregateConfigRuleResult.h"
 #include "model/UpdateAggregateRemediationRequest.h"
@@ -190,6 +210,8 @@
 #include "model/UpdateAggregatorResult.h"
 #include "model/UpdateCompliancePackRequest.h"
 #include "model/UpdateCompliancePackResult.h"
+#include "model/UpdateConfigDeliveryChannelRequest.h"
+#include "model/UpdateConfigDeliveryChannelResult.h"
 #include "model/UpdateConfigRuleRequest.h"
 #include "model/UpdateConfigRuleResult.h"
 
@@ -213,6 +235,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateAggregateCompliancePackResult> CreateAggregateCompliancePackOutcome;
 			typedef std::future<CreateAggregateCompliancePackOutcome> CreateAggregateCompliancePackOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::CreateAggregateCompliancePackRequest&, const CreateAggregateCompliancePackOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAggregateCompliancePackAsyncHandler;
+			typedef Outcome<Error, Model::CreateAggregateConfigDeliveryChannelResult> CreateAggregateConfigDeliveryChannelOutcome;
+			typedef std::future<CreateAggregateConfigDeliveryChannelOutcome> CreateAggregateConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::CreateAggregateConfigDeliveryChannelRequest&, const CreateAggregateConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAggregateConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::CreateAggregateConfigRuleResult> CreateAggregateConfigRuleOutcome;
 			typedef std::future<CreateAggregateConfigRuleOutcome> CreateAggregateConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::CreateAggregateConfigRuleRequest&, const CreateAggregateConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAggregateConfigRuleAsyncHandler;
@@ -225,6 +250,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateCompliancePackResult> CreateCompliancePackOutcome;
 			typedef std::future<CreateCompliancePackOutcome> CreateCompliancePackOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::CreateCompliancePackRequest&, const CreateCompliancePackOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateCompliancePackAsyncHandler;
+			typedef Outcome<Error, Model::CreateConfigDeliveryChannelResult> CreateConfigDeliveryChannelOutcome;
+			typedef std::future<CreateConfigDeliveryChannelOutcome> CreateConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::CreateConfigDeliveryChannelRequest&, const CreateConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::CreateConfigRuleResult> CreateConfigRuleOutcome;
 			typedef std::future<CreateConfigRuleOutcome> CreateConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::CreateConfigRuleRequest&, const CreateConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateConfigRuleAsyncHandler;
@@ -282,6 +310,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetAggregateCompliancePackReportResult> GetAggregateCompliancePackReportOutcome;
 			typedef std::future<GetAggregateCompliancePackReportOutcome> GetAggregateCompliancePackReportOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::GetAggregateCompliancePackReportRequest&, const GetAggregateCompliancePackReportOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAggregateCompliancePackReportAsyncHandler;
+			typedef Outcome<Error, Model::GetAggregateConfigDeliveryChannelResult> GetAggregateConfigDeliveryChannelOutcome;
+			typedef std::future<GetAggregateConfigDeliveryChannelOutcome> GetAggregateConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::GetAggregateConfigDeliveryChannelRequest&, const GetAggregateConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAggregateConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::GetAggregateConfigRuleResult> GetAggregateConfigRuleOutcome;
 			typedef std::future<GetAggregateConfigRuleOutcome> GetAggregateConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::GetAggregateConfigRuleRequest&, const GetAggregateConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAggregateConfigRuleAsyncHandler;
@@ -330,6 +361,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetCompliancePackReportResult> GetCompliancePackReportOutcome;
 			typedef std::future<GetCompliancePackReportOutcome> GetCompliancePackReportOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::GetCompliancePackReportRequest&, const GetCompliancePackReportOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetCompliancePackReportAsyncHandler;
+			typedef Outcome<Error, Model::GetConfigDeliveryChannelResult> GetConfigDeliveryChannelOutcome;
+			typedef std::future<GetConfigDeliveryChannelOutcome> GetConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::GetConfigDeliveryChannelRequest&, const GetConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::GetConfigRuleResult> GetConfigRuleOutcome;
 			typedef std::future<GetConfigRuleOutcome> GetConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::GetConfigRuleRequest&, const GetConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetConfigRuleAsyncHandler;
@@ -381,6 +415,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListAggregateCompliancePacksResult> ListAggregateCompliancePacksOutcome;
 			typedef std::future<ListAggregateCompliancePacksOutcome> ListAggregateCompliancePacksOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::ListAggregateCompliancePacksRequest&, const ListAggregateCompliancePacksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAggregateCompliancePacksAsyncHandler;
+			typedef Outcome<Error, Model::ListAggregateConfigDeliveryChannelsResult> ListAggregateConfigDeliveryChannelsOutcome;
+			typedef std::future<ListAggregateConfigDeliveryChannelsOutcome> ListAggregateConfigDeliveryChannelsOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::ListAggregateConfigDeliveryChannelsRequest&, const ListAggregateConfigDeliveryChannelsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAggregateConfigDeliveryChannelsAsyncHandler;
 			typedef Outcome<Error, Model::ListAggregateConfigRuleEvaluationResultsResult> ListAggregateConfigRuleEvaluationResultsOutcome;
 			typedef std::future<ListAggregateConfigRuleEvaluationResultsOutcome> ListAggregateConfigRuleEvaluationResultsOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::ListAggregateConfigRuleEvaluationResultsRequest&, const ListAggregateConfigRuleEvaluationResultsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAggregateConfigRuleEvaluationResultsAsyncHandler;
@@ -405,6 +442,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListCompliancePacksResult> ListCompliancePacksOutcome;
 			typedef std::future<ListCompliancePacksOutcome> ListCompliancePacksOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::ListCompliancePacksRequest&, const ListCompliancePacksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListCompliancePacksAsyncHandler;
+			typedef Outcome<Error, Model::ListConfigDeliveryChannelsResult> ListConfigDeliveryChannelsOutcome;
+			typedef std::future<ListConfigDeliveryChannelsOutcome> ListConfigDeliveryChannelsOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::ListConfigDeliveryChannelsRequest&, const ListConfigDeliveryChannelsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListConfigDeliveryChannelsAsyncHandler;
 			typedef Outcome<Error, Model::ListConfigRuleEvaluationResultsResult> ListConfigRuleEvaluationResultsOutcome;
 			typedef std::future<ListConfigRuleEvaluationResultsOutcome> ListConfigRuleEvaluationResultsOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::ListConfigRuleEvaluationResultsRequest&, const ListConfigRuleEvaluationResultsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListConfigRuleEvaluationResultsAsyncHandler;
@@ -423,6 +463,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListResourceEvaluationResultsResult> ListResourceEvaluationResultsOutcome;
 			typedef std::future<ListResourceEvaluationResultsOutcome> ListResourceEvaluationResultsOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::ListResourceEvaluationResultsRequest&, const ListResourceEvaluationResultsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListResourceEvaluationResultsAsyncHandler;
+			typedef Outcome<Error, Model::ListTagResourcesResult> ListTagResourcesOutcome;
+			typedef std::future<ListTagResourcesOutcome> ListTagResourcesOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::ListTagResourcesRequest&, const ListTagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagResourcesAsyncHandler;
 			typedef Outcome<Error, Model::RevertAggregateEvaluationResultsResult> RevertAggregateEvaluationResultsOutcome;
 			typedef std::future<RevertAggregateEvaluationResultsOutcome> RevertAggregateEvaluationResultsOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::RevertAggregateEvaluationResultsRequest&, const RevertAggregateEvaluationResultsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RevertAggregateEvaluationResultsAsyncHandler;
@@ -438,9 +481,18 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::StartRemediationResult> StartRemediationOutcome;
 			typedef std::future<StartRemediationOutcome> StartRemediationOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::StartRemediationRequest&, const StartRemediationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartRemediationAsyncHandler;
+			typedef Outcome<Error, Model::TagResourcesResult> TagResourcesOutcome;
+			typedef std::future<TagResourcesOutcome> TagResourcesOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::TagResourcesRequest&, const TagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> TagResourcesAsyncHandler;
+			typedef Outcome<Error, Model::UntagResourcesResult> UntagResourcesOutcome;
+			typedef std::future<UntagResourcesOutcome> UntagResourcesOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::UntagResourcesRequest&, const UntagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UntagResourcesAsyncHandler;
 			typedef Outcome<Error, Model::UpdateAggregateCompliancePackResult> UpdateAggregateCompliancePackOutcome;
 			typedef std::future<UpdateAggregateCompliancePackOutcome> UpdateAggregateCompliancePackOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::UpdateAggregateCompliancePackRequest&, const UpdateAggregateCompliancePackOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateAggregateCompliancePackAsyncHandler;
+			typedef Outcome<Error, Model::UpdateAggregateConfigDeliveryChannelResult> UpdateAggregateConfigDeliveryChannelOutcome;
+			typedef std::future<UpdateAggregateConfigDeliveryChannelOutcome> UpdateAggregateConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::UpdateAggregateConfigDeliveryChannelRequest&, const UpdateAggregateConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateAggregateConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::UpdateAggregateConfigRuleResult> UpdateAggregateConfigRuleOutcome;
 			typedef std::future<UpdateAggregateConfigRuleOutcome> UpdateAggregateConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::UpdateAggregateConfigRuleRequest&, const UpdateAggregateConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateAggregateConfigRuleAsyncHandler;
@@ -453,6 +505,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateCompliancePackResult> UpdateCompliancePackOutcome;
 			typedef std::future<UpdateCompliancePackOutcome> UpdateCompliancePackOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::UpdateCompliancePackRequest&, const UpdateCompliancePackOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateCompliancePackAsyncHandler;
+			typedef Outcome<Error, Model::UpdateConfigDeliveryChannelResult> UpdateConfigDeliveryChannelOutcome;
+			typedef std::future<UpdateConfigDeliveryChannelOutcome> UpdateConfigDeliveryChannelOutcomeCallable;
+			typedef std::function<void(const ConfigClient*, const Model::UpdateConfigDeliveryChannelRequest&, const UpdateConfigDeliveryChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateConfigDeliveryChannelAsyncHandler;
 			typedef Outcome<Error, Model::UpdateConfigRuleResult> UpdateConfigRuleOutcome;
 			typedef std::future<UpdateConfigRuleOutcome> UpdateConfigRuleOutcomeCallable;
 			typedef std::function<void(const ConfigClient*, const Model::UpdateConfigRuleRequest&, const UpdateConfigRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateConfigRuleAsyncHandler;
@@ -473,6 +528,9 @@ namespace AlibabaCloud
 			CreateAggregateCompliancePackOutcome createAggregateCompliancePack(const Model::CreateAggregateCompliancePackRequest &request)const;
 			void createAggregateCompliancePackAsync(const Model::CreateAggregateCompliancePackRequest& request, const CreateAggregateCompliancePackAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateAggregateCompliancePackOutcomeCallable createAggregateCompliancePackCallable(const Model::CreateAggregateCompliancePackRequest& request) const;
+			CreateAggregateConfigDeliveryChannelOutcome createAggregateConfigDeliveryChannel(const Model::CreateAggregateConfigDeliveryChannelRequest &request)const;
+			void createAggregateConfigDeliveryChannelAsync(const Model::CreateAggregateConfigDeliveryChannelRequest& request, const CreateAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateAggregateConfigDeliveryChannelOutcomeCallable createAggregateConfigDeliveryChannelCallable(const Model::CreateAggregateConfigDeliveryChannelRequest& request) const;
 			CreateAggregateConfigRuleOutcome createAggregateConfigRule(const Model::CreateAggregateConfigRuleRequest &request)const;
 			void createAggregateConfigRuleAsync(const Model::CreateAggregateConfigRuleRequest& request, const CreateAggregateConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateAggregateConfigRuleOutcomeCallable createAggregateConfigRuleCallable(const Model::CreateAggregateConfigRuleRequest& request) const;
@@ -485,6 +543,9 @@ namespace AlibabaCloud
 			CreateCompliancePackOutcome createCompliancePack(const Model::CreateCompliancePackRequest &request)const;
 			void createCompliancePackAsync(const Model::CreateCompliancePackRequest& request, const CreateCompliancePackAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateCompliancePackOutcomeCallable createCompliancePackCallable(const Model::CreateCompliancePackRequest& request) const;
+			CreateConfigDeliveryChannelOutcome createConfigDeliveryChannel(const Model::CreateConfigDeliveryChannelRequest &request)const;
+			void createConfigDeliveryChannelAsync(const Model::CreateConfigDeliveryChannelRequest& request, const CreateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateConfigDeliveryChannelOutcomeCallable createConfigDeliveryChannelCallable(const Model::CreateConfigDeliveryChannelRequest& request) const;
 			CreateConfigRuleOutcome createConfigRule(const Model::CreateConfigRuleRequest &request)const;
 			void createConfigRuleAsync(const Model::CreateConfigRuleRequest& request, const CreateConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateConfigRuleOutcomeCallable createConfigRuleCallable(const Model::CreateConfigRuleRequest& request) const;
@@ -542,6 +603,9 @@ namespace AlibabaCloud
 			GetAggregateCompliancePackReportOutcome getAggregateCompliancePackReport(const Model::GetAggregateCompliancePackReportRequest &request)const;
 			void getAggregateCompliancePackReportAsync(const Model::GetAggregateCompliancePackReportRequest& request, const GetAggregateCompliancePackReportAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetAggregateCompliancePackReportOutcomeCallable getAggregateCompliancePackReportCallable(const Model::GetAggregateCompliancePackReportRequest& request) const;
+			GetAggregateConfigDeliveryChannelOutcome getAggregateConfigDeliveryChannel(const Model::GetAggregateConfigDeliveryChannelRequest &request)const;
+			void getAggregateConfigDeliveryChannelAsync(const Model::GetAggregateConfigDeliveryChannelRequest& request, const GetAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetAggregateConfigDeliveryChannelOutcomeCallable getAggregateConfigDeliveryChannelCallable(const Model::GetAggregateConfigDeliveryChannelRequest& request) const;
 			GetAggregateConfigRuleOutcome getAggregateConfigRule(const Model::GetAggregateConfigRuleRequest &request)const;
 			void getAggregateConfigRuleAsync(const Model::GetAggregateConfigRuleRequest& request, const GetAggregateConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetAggregateConfigRuleOutcomeCallable getAggregateConfigRuleCallable(const Model::GetAggregateConfigRuleRequest& request) const;
@@ -590,6 +654,9 @@ namespace AlibabaCloud
 			GetCompliancePackReportOutcome getCompliancePackReport(const Model::GetCompliancePackReportRequest &request)const;
 			void getCompliancePackReportAsync(const Model::GetCompliancePackReportRequest& request, const GetCompliancePackReportAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetCompliancePackReportOutcomeCallable getCompliancePackReportCallable(const Model::GetCompliancePackReportRequest& request) const;
+			GetConfigDeliveryChannelOutcome getConfigDeliveryChannel(const Model::GetConfigDeliveryChannelRequest &request)const;
+			void getConfigDeliveryChannelAsync(const Model::GetConfigDeliveryChannelRequest& request, const GetConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetConfigDeliveryChannelOutcomeCallable getConfigDeliveryChannelCallable(const Model::GetConfigDeliveryChannelRequest& request) const;
 			GetConfigRuleOutcome getConfigRule(const Model::GetConfigRuleRequest &request)const;
 			void getConfigRuleAsync(const Model::GetConfigRuleRequest& request, const GetConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetConfigRuleOutcomeCallable getConfigRuleCallable(const Model::GetConfigRuleRequest& request) const;
@@ -641,6 +708,9 @@ namespace AlibabaCloud
 			ListAggregateCompliancePacksOutcome listAggregateCompliancePacks(const Model::ListAggregateCompliancePacksRequest &request)const;
 			void listAggregateCompliancePacksAsync(const Model::ListAggregateCompliancePacksRequest& request, const ListAggregateCompliancePacksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListAggregateCompliancePacksOutcomeCallable listAggregateCompliancePacksCallable(const Model::ListAggregateCompliancePacksRequest& request) const;
+			ListAggregateConfigDeliveryChannelsOutcome listAggregateConfigDeliveryChannels(const Model::ListAggregateConfigDeliveryChannelsRequest &request)const;
+			void listAggregateConfigDeliveryChannelsAsync(const Model::ListAggregateConfigDeliveryChannelsRequest& request, const ListAggregateConfigDeliveryChannelsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListAggregateConfigDeliveryChannelsOutcomeCallable listAggregateConfigDeliveryChannelsCallable(const Model::ListAggregateConfigDeliveryChannelsRequest& request) const;
 			ListAggregateConfigRuleEvaluationResultsOutcome listAggregateConfigRuleEvaluationResults(const Model::ListAggregateConfigRuleEvaluationResultsRequest &request)const;
 			void listAggregateConfigRuleEvaluationResultsAsync(const Model::ListAggregateConfigRuleEvaluationResultsRequest& request, const ListAggregateConfigRuleEvaluationResultsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListAggregateConfigRuleEvaluationResultsOutcomeCallable listAggregateConfigRuleEvaluationResultsCallable(const Model::ListAggregateConfigRuleEvaluationResultsRequest& request) const;
@@ -665,6 +735,9 @@ namespace AlibabaCloud
 			ListCompliancePacksOutcome listCompliancePacks(const Model::ListCompliancePacksRequest &request)const;
 			void listCompliancePacksAsync(const Model::ListCompliancePacksRequest& request, const ListCompliancePacksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListCompliancePacksOutcomeCallable listCompliancePacksCallable(const Model::ListCompliancePacksRequest& request) const;
+			ListConfigDeliveryChannelsOutcome listConfigDeliveryChannels(const Model::ListConfigDeliveryChannelsRequest &request)const;
+			void listConfigDeliveryChannelsAsync(const Model::ListConfigDeliveryChannelsRequest& request, const ListConfigDeliveryChannelsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListConfigDeliveryChannelsOutcomeCallable listConfigDeliveryChannelsCallable(const Model::ListConfigDeliveryChannelsRequest& request) const;
 			ListConfigRuleEvaluationResultsOutcome listConfigRuleEvaluationResults(const Model::ListConfigRuleEvaluationResultsRequest &request)const;
 			void listConfigRuleEvaluationResultsAsync(const Model::ListConfigRuleEvaluationResultsRequest& request, const ListConfigRuleEvaluationResultsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListConfigRuleEvaluationResultsOutcomeCallable listConfigRuleEvaluationResultsCallable(const Model::ListConfigRuleEvaluationResultsRequest& request) const;
@@ -683,6 +756,9 @@ namespace AlibabaCloud
 			ListResourceEvaluationResultsOutcome listResourceEvaluationResults(const Model::ListResourceEvaluationResultsRequest &request)const;
 			void listResourceEvaluationResultsAsync(const Model::ListResourceEvaluationResultsRequest& request, const ListResourceEvaluationResultsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListResourceEvaluationResultsOutcomeCallable listResourceEvaluationResultsCallable(const Model::ListResourceEvaluationResultsRequest& request) const;
+			ListTagResourcesOutcome listTagResources(const Model::ListTagResourcesRequest &request)const;
+			void listTagResourcesAsync(const Model::ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagResourcesOutcomeCallable listTagResourcesCallable(const Model::ListTagResourcesRequest& request) const;
 			RevertAggregateEvaluationResultsOutcome revertAggregateEvaluationResults(const Model::RevertAggregateEvaluationResultsRequest &request)const;
 			void revertAggregateEvaluationResultsAsync(const Model::RevertAggregateEvaluationResultsRequest& request, const RevertAggregateEvaluationResultsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RevertAggregateEvaluationResultsOutcomeCallable revertAggregateEvaluationResultsCallable(const Model::RevertAggregateEvaluationResultsRequest& request) const;
@@ -698,9 +774,18 @@ namespace AlibabaCloud
 			StartRemediationOutcome startRemediation(const Model::StartRemediationRequest &request)const;
 			void startRemediationAsync(const Model::StartRemediationRequest& request, const StartRemediationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StartRemediationOutcomeCallable startRemediationCallable(const Model::StartRemediationRequest& request) const;
+			TagResourcesOutcome tagResources(const Model::TagResourcesRequest &request)const;
+			void tagResourcesAsync(const Model::TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			TagResourcesOutcomeCallable tagResourcesCallable(const Model::TagResourcesRequest& request) const;
+			UntagResourcesOutcome untagResources(const Model::UntagResourcesRequest &request)const;
+			void untagResourcesAsync(const Model::UntagResourcesRequest& request, const UntagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UntagResourcesOutcomeCallable untagResourcesCallable(const Model::UntagResourcesRequest& request) const;
 			UpdateAggregateCompliancePackOutcome updateAggregateCompliancePack(const Model::UpdateAggregateCompliancePackRequest &request)const;
 			void updateAggregateCompliancePackAsync(const Model::UpdateAggregateCompliancePackRequest& request, const UpdateAggregateCompliancePackAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateAggregateCompliancePackOutcomeCallable updateAggregateCompliancePackCallable(const Model::UpdateAggregateCompliancePackRequest& request) const;
+			UpdateAggregateConfigDeliveryChannelOutcome updateAggregateConfigDeliveryChannel(const Model::UpdateAggregateConfigDeliveryChannelRequest &request)const;
+			void updateAggregateConfigDeliveryChannelAsync(const Model::UpdateAggregateConfigDeliveryChannelRequest& request, const UpdateAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateAggregateConfigDeliveryChannelOutcomeCallable updateAggregateConfigDeliveryChannelCallable(const Model::UpdateAggregateConfigDeliveryChannelRequest& request) const;
 			UpdateAggregateConfigRuleOutcome updateAggregateConfigRule(const Model::UpdateAggregateConfigRuleRequest &request)const;
 			void updateAggregateConfigRuleAsync(const Model::UpdateAggregateConfigRuleRequest& request, const UpdateAggregateConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateAggregateConfigRuleOutcomeCallable updateAggregateConfigRuleCallable(const Model::UpdateAggregateConfigRuleRequest& request) const;
@@ -713,6 +798,9 @@ namespace AlibabaCloud
 			UpdateCompliancePackOutcome updateCompliancePack(const Model::UpdateCompliancePackRequest &request)const;
 			void updateCompliancePackAsync(const Model::UpdateCompliancePackRequest& request, const UpdateCompliancePackAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateCompliancePackOutcomeCallable updateCompliancePackCallable(const Model::UpdateCompliancePackRequest& request) const;
+			UpdateConfigDeliveryChannelOutcome updateConfigDeliveryChannel(const Model::UpdateConfigDeliveryChannelRequest &request)const;
+			void updateConfigDeliveryChannelAsync(const Model::UpdateConfigDeliveryChannelRequest& request, const UpdateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateConfigDeliveryChannelOutcomeCallable updateConfigDeliveryChannelCallable(const Model::UpdateConfigDeliveryChannelRequest& request) const;
 			UpdateConfigRuleOutcome updateConfigRule(const Model::UpdateConfigRuleRequest &request)const;
 			void updateConfigRuleAsync(const Model::UpdateConfigRuleRequest& request, const UpdateConfigRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateConfigRuleOutcomeCallable updateConfigRuleCallable(const Model::UpdateConfigRuleRequest& request) const;

+ 72 - 0
config/include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelRequest.h

@@ -0,0 +1,72 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT CreateAggregateConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	CreateAggregateConfigDeliveryChannelRequest();
+	~CreateAggregateConfigDeliveryChannelRequest();
+	bool getNonCompliantNotification() const;
+	void setNonCompliantNotification(bool nonCompliantNotification);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	bool getConfigurationSnapshot() const;
+	void setConfigurationSnapshot(bool configurationSnapshot);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getAggregatorId() const;
+	void setAggregatorId(const std::string &aggregatorId);
+	std::string getDeliveryChannelTargetArn() const;
+	void setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn);
+	std::string getDeliveryChannelCondition() const;
+	void setDeliveryChannelCondition(const std::string &deliveryChannelCondition);
+	bool getConfigurationItemChangeNotification() const;
+	void setConfigurationItemChangeNotification(bool configurationItemChangeNotification);
+	std::string getDeliveryChannelName() const;
+	void setDeliveryChannelName(const std::string &deliveryChannelName);
+	std::string getOversizedDataOSSTargetArn() const;
+	void setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn);
+	std::string getDeliveryChannelType() const;
+	void setDeliveryChannelType(const std::string &deliveryChannelType);
+
+private:
+	bool nonCompliantNotification_;
+	std::string clientToken_;
+	bool configurationSnapshot_;
+	std::string description_;
+	std::string aggregatorId_;
+	std::string deliveryChannelTargetArn_;
+	std::string deliveryChannelCondition_;
+	bool configurationItemChangeNotification_;
+	std::string deliveryChannelName_;
+	std::string oversizedDataOSSTargetArn_;
+	std::string deliveryChannelType_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_

+ 51 - 0
config/include/alibabacloud/config/model/CreateAggregateConfigDeliveryChannelResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT CreateAggregateConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+
+
+				CreateAggregateConfigDeliveryChannelResult();
+				explicit CreateAggregateConfigDeliveryChannelResult(const std::string &payload);
+				~CreateAggregateConfigDeliveryChannelResult();
+				std::string getDeliveryChannelId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string deliveryChannelId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_CREATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_

+ 69 - 0
config/include/alibabacloud/config/model/CreateConfigDeliveryChannelRequest.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT CreateConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	CreateConfigDeliveryChannelRequest();
+	~CreateConfigDeliveryChannelRequest();
+	bool getNonCompliantNotification() const;
+	void setNonCompliantNotification(bool nonCompliantNotification);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	bool getConfigurationSnapshot() const;
+	void setConfigurationSnapshot(bool configurationSnapshot);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getDeliveryChannelTargetArn() const;
+	void setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn);
+	std::string getDeliveryChannelCondition() const;
+	void setDeliveryChannelCondition(const std::string &deliveryChannelCondition);
+	bool getConfigurationItemChangeNotification() const;
+	void setConfigurationItemChangeNotification(bool configurationItemChangeNotification);
+	std::string getDeliveryChannelName() const;
+	void setDeliveryChannelName(const std::string &deliveryChannelName);
+	std::string getOversizedDataOSSTargetArn() const;
+	void setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn);
+	std::string getDeliveryChannelType() const;
+	void setDeliveryChannelType(const std::string &deliveryChannelType);
+
+private:
+	bool nonCompliantNotification_;
+	std::string clientToken_;
+	bool configurationSnapshot_;
+	std::string description_;
+	std::string deliveryChannelTargetArn_;
+	std::string deliveryChannelCondition_;
+	bool configurationItemChangeNotification_;
+	std::string deliveryChannelName_;
+	std::string oversizedDataOSSTargetArn_;
+	std::string deliveryChannelType_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELREQUEST_H_

+ 51 - 0
config/include/alibabacloud/config/model/CreateConfigDeliveryChannelResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT CreateConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+
+
+				CreateConfigDeliveryChannelResult();
+				explicit CreateConfigDeliveryChannelResult(const std::string &payload);
+				~CreateConfigDeliveryChannelResult();
+				std::string getDeliveryChannelId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string deliveryChannelId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_CREATECONFIGDELIVERYCHANNELRESULT_H_

+ 45 - 0
config/include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelRequest.h

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT GetAggregateConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	GetAggregateConfigDeliveryChannelRequest();
+	~GetAggregateConfigDeliveryChannelRequest();
+	std::string getAggregatorId() const;
+	void setAggregatorId(const std::string &aggregatorId);
+	std::string getDeliveryChannelId() const;
+	void setDeliveryChannelId(const std::string &deliveryChannelId);
+
+private:
+	std::string aggregatorId_;
+	std::string deliveryChannelId_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_

+ 68 - 0
config/include/alibabacloud/config/model/GetAggregateConfigDeliveryChannelResult.h

@@ -0,0 +1,68 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT GetAggregateConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+				struct DeliveryChannel
+				{
+					int status;
+					std::string oversizedDataOSSTargetArn;
+					bool configurationSnapshot;
+					std::string description;
+					std::string accountId;
+					std::string deliveryChannelId;
+					std::string deliveryChannelName;
+					std::string deliveryChannelTargetArn;
+					std::string deliveryChannelAssumeRoleArn;
+					std::string deliveryChannelType;
+					std::string deliveryChannelCondition;
+					bool nonCompliantNotification;
+					bool configurationItemChangeNotification;
+					std::string aggregatorId;
+				};
+
+
+				GetAggregateConfigDeliveryChannelResult();
+				explicit GetAggregateConfigDeliveryChannelResult(const std::string &payload);
+				~GetAggregateConfigDeliveryChannelResult();
+				DeliveryChannel getDeliveryChannel()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				DeliveryChannel deliveryChannel_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_GETAGGREGATECONFIGDELIVERYCHANNELRESULT_H_

+ 42 - 0
config/include/alibabacloud/config/model/GetConfigDeliveryChannelRequest.h

@@ -0,0 +1,42 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT GetConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	GetConfigDeliveryChannelRequest();
+	~GetConfigDeliveryChannelRequest();
+	std::string getDeliveryChannelId() const;
+	void setDeliveryChannelId(const std::string &deliveryChannelId);
+
+private:
+	std::string deliveryChannelId_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELREQUEST_H_

+ 67 - 0
config/include/alibabacloud/config/model/GetConfigDeliveryChannelResult.h

@@ -0,0 +1,67 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT GetConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+				struct DeliveryChannel
+				{
+					int status;
+					std::string oversizedDataOSSTargetArn;
+					bool configurationSnapshot;
+					std::string description;
+					long accountId;
+					std::string deliveryChannelId;
+					std::string deliveryChannelName;
+					std::string deliveryChannelTargetArn;
+					std::string deliveryChannelAssumeRoleArn;
+					std::string deliveryChannelType;
+					std::string deliveryChannelCondition;
+					bool nonCompliantNotification;
+					bool configurationItemChangeNotification;
+				};
+
+
+				GetConfigDeliveryChannelResult();
+				explicit GetConfigDeliveryChannelResult(const std::string &payload);
+				~GetConfigDeliveryChannelResult();
+				DeliveryChannel getDeliveryChannel()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				DeliveryChannel deliveryChannel_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_GETCONFIGDELIVERYCHANNELRESULT_H_

+ 2 - 2
config/include/alibabacloud/config/model/GetManagedRuleResult.h

@@ -44,9 +44,9 @@ namespace AlibabaCloud
 						std::string messageType;
 						std::string maximumExecutionFrequency;
 					};
-					std::vector<std::string> optionalInputParameterDetails;
+					std::string optionalInputParameterDetails;
 					std::string description;
-					std::vector<std::string> compulsoryInputParameterDetails;
+					std::string compulsoryInputParameterDetails;
 					std::string helpHint;
 					std::vector<std::string> labels;
 					std::string helpUrls;

+ 3 - 0
config/include/alibabacloud/config/model/IgnoreAggregateEvaluationResultsRequest.h

@@ -40,6 +40,8 @@ public:
 	void setConfigRuleId(const std::string &configRuleId);
 	std::string getReason() const;
 	void setReason(const std::string &reason);
+	std::string getIgnoreDate() const;
+	void setIgnoreDate(const std::string &ignoreDate);
 	std::vector<Resources> getResources() const;
 	void setResources(const std::vector<Resources> &resources);
 	std::string getAggregatorId() const;
@@ -48,6 +50,7 @@ public:
 private:
 	std::string configRuleId_;
 	std::string reason_;
+	std::string ignoreDate_;
 	std::vector<Resources> resources_;
 	std::string aggregatorId_;
 };

+ 3 - 0
config/include/alibabacloud/config/model/IgnoreEvaluationResultsRequest.h

@@ -40,12 +40,15 @@ public:
 	void setConfigRuleId(const std::string &configRuleId);
 	std::string getReason() const;
 	void setReason(const std::string &reason);
+	std::string getIgnoreDate() const;
+	void setIgnoreDate(const std::string &ignoreDate);
 	std::vector<Resources> getResources() const;
 	void setResources(const std::vector<Resources> &resources);
 
 private:
 	std::string configRuleId_;
 	std::string reason_;
+	std::string ignoreDate_;
 	std::vector<Resources> resources_;
 };
 } // namespace Model

+ 45 - 0
config/include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsRequest.h

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT ListAggregateConfigDeliveryChannelsRequest : public RpcServiceRequest {
+public:
+	ListAggregateConfigDeliveryChannelsRequest();
+	~ListAggregateConfigDeliveryChannelsRequest();
+	std::string getAggregatorId() const;
+	void setAggregatorId(const std::string &aggregatorId);
+	std::string getDeliveryChannelIds() const;
+	void setDeliveryChannelIds(const std::string &deliveryChannelIds);
+
+private:
+	std::string aggregatorId_;
+	std::string deliveryChannelIds_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSREQUEST_H_

+ 68 - 0
config/include/alibabacloud/config/model/ListAggregateConfigDeliveryChannelsResult.h

@@ -0,0 +1,68 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT ListAggregateConfigDeliveryChannelsResult : public ServiceResult
+			{
+			public:
+				struct DeliveryChannel
+				{
+					int status;
+					std::string oversizedDataOSSTargetArn;
+					bool configurationSnapshot;
+					std::string description;
+					long accountId;
+					std::string deliveryChannelName;
+					std::string deliveryChannelId;
+					std::string deliveryChannelTargetArn;
+					std::string deliveryChannelAssumeRoleArn;
+					std::string deliveryChannelType;
+					std::string deliveryChannelCondition;
+					bool nonCompliantNotification;
+					bool configurationItemChangeNotification;
+					std::string aggregatorId;
+				};
+
+
+				ListAggregateConfigDeliveryChannelsResult();
+				explicit ListAggregateConfigDeliveryChannelsResult(const std::string &payload);
+				~ListAggregateConfigDeliveryChannelsResult();
+				std::vector<DeliveryChannel> getDeliveryChannels()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DeliveryChannel> deliveryChannels_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTAGGREGATECONFIGDELIVERYCHANNELSRESULT_H_

+ 1 - 0
config/include/alibabacloud/config/model/ListAggregateConfigRuleEvaluationResultsResult.h

@@ -45,6 +45,7 @@ namespace AlibabaCloud
 								std::string configRuleArn;
 								std::string resourceId;
 								std::string resourceName;
+								std::string ignoreDate;
 								std::string configRuleName;
 								std::string resourceType;
 								std::string regionId;

+ 1 - 1
config/include/alibabacloud/config/model/ListAggregateDiscoveredResourcesResult.h

@@ -47,7 +47,7 @@ namespace AlibabaCloud
 						std::string tags;
 						int resourceDeleted;
 					};
-					std::string previousToken;
+					int totalCount;
 					std::string nextToken;
 					int maxResults;
 					std::vector<DiscoveredResourceProfile> discoveredResourceProfileList;

+ 5 - 4
config/include/alibabacloud/config/model/ListAggregateRemediationsResult.h

@@ -34,16 +34,17 @@ namespace AlibabaCloud
 			public:
 				struct Remediation
 				{
-					std::string lastSuccessfulInvocationType;
-					std::string configRuleId;
 					std::string remediationTemplateId;
 					long accountId;
 					std::string remediationSourceType;
+					std::string remediaitonOriginParams;
 					long lastSuccessfulInvocationTime;
-					std::string invokeType;
 					std::string remediationId;
-					std::string lastSuccessfulInvocationId;
 					std::string remediationDynamicParams;
+					std::string lastSuccessfulInvocationType;
+					std::string configRuleId;
+					std::string invokeType;
+					std::string lastSuccessfulInvocationId;
 					std::string remediationType;
 					std::string aggregatorId;
 				};

+ 1 - 0
config/include/alibabacloud/config/model/ListAggregateResourceEvaluationResultsResult.h

@@ -44,6 +44,7 @@ namespace AlibabaCloud
 								std::string configRuleArn;
 								std::string resourceId;
 								std::string resourceName;
+								std::string ignoreDate;
 								std::string configRuleName;
 								std::string resourceType;
 								std::string regionId;

+ 42 - 0
config/include/alibabacloud/config/model/ListConfigDeliveryChannelsRequest.h

@@ -0,0 +1,42 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT ListConfigDeliveryChannelsRequest : public RpcServiceRequest {
+public:
+	ListConfigDeliveryChannelsRequest();
+	~ListConfigDeliveryChannelsRequest();
+	std::string getDeliveryChannelIds() const;
+	void setDeliveryChannelIds(const std::string &deliveryChannelIds);
+
+private:
+	std::string deliveryChannelIds_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSREQUEST_H_

+ 67 - 0
config/include/alibabacloud/config/model/ListConfigDeliveryChannelsResult.h

@@ -0,0 +1,67 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT ListConfigDeliveryChannelsResult : public ServiceResult
+			{
+			public:
+				struct DeliveryChannel
+				{
+					int status;
+					std::string oversizedDataOSSTargetArn;
+					bool configurationSnapshot;
+					std::string description;
+					long accountId;
+					std::string deliveryChannelName;
+					std::string deliveryChannelId;
+					std::string deliveryChannelTargetArn;
+					std::string deliveryChannelAssumeRoleArn;
+					std::string deliveryChannelType;
+					std::string deliveryChannelCondition;
+					bool nonCompliantNotification;
+					bool configurationItemChangeNotification;
+				};
+
+
+				ListConfigDeliveryChannelsResult();
+				explicit ListConfigDeliveryChannelsResult(const std::string &payload);
+				~ListConfigDeliveryChannelsResult();
+				std::vector<DeliveryChannel> getDeliveryChannels()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DeliveryChannel> deliveryChannels_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTCONFIGDELIVERYCHANNELSRESULT_H_

+ 1 - 0
config/include/alibabacloud/config/model/ListConfigRuleEvaluationResultsResult.h

@@ -45,6 +45,7 @@ namespace AlibabaCloud
 								std::string configRuleArn;
 								std::string resourceId;
 								std::string resourceName;
+								std::string ignoreDate;
 								std::string configRuleName;
 								std::string resourceType;
 								std::string regionId;

+ 1 - 1
config/include/alibabacloud/config/model/ListDiscoveredResourcesResult.h

@@ -46,7 +46,7 @@ namespace AlibabaCloud
 						std::string tags;
 						int resourceDeleted;
 					};
-					std::string previousToken;
+					int totalCount;
 					std::string nextToken;
 					int maxResults;
 					std::vector<DiscoveredResourceProfile> discoveredResourceProfileList;

+ 1 - 0
config/include/alibabacloud/config/model/ListResourceEvaluationResultsResult.h

@@ -44,6 +44,7 @@ namespace AlibabaCloud
 								std::string configRuleArn;
 								std::string resourceId;
 								std::string resourceName;
+								std::string ignoreDate;
 								std::string configRuleName;
 								std::string resourceType;
 								std::string regionId;

+ 39 - 0
config/include/alibabacloud/config/model/ListTagResourcesRequest.h

@@ -0,0 +1,39 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT ListTagResourcesRequest : public RpcServiceRequest {
+public:
+	ListTagResourcesRequest();
+	~ListTagResourcesRequest();
+
+private:
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESREQUEST_H_

+ 60 - 0
config/include/alibabacloud/config/model/ListTagResourcesResult.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT ListTagResourcesResult : public ServiceResult
+			{
+			public:
+				struct TagResource
+				{
+					std::string resourceId;
+					std::string tagKey;
+					std::string resourceType;
+					std::string tagValue;
+				};
+
+
+				ListTagResourcesResult();
+				explicit ListTagResourcesResult(const std::string &payload);
+				~ListTagResourcesResult();
+				std::string getNextToken()const;
+				std::vector<TagResource> getTagResources()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string nextToken_;
+				std::vector<TagResource> tagResources_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_LISTTAGRESOURCESRESULT_H_

+ 39 - 0
config/include/alibabacloud/config/model/TagResourcesRequest.h

@@ -0,0 +1,39 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT TagResourcesRequest : public RpcServiceRequest {
+public:
+	TagResourcesRequest();
+	~TagResourcesRequest();
+
+private:
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESREQUEST_H_

+ 49 - 0
config/include/alibabacloud/config/model/TagResourcesResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT TagResourcesResult : public ServiceResult
+			{
+			public:
+
+
+				TagResourcesResult();
+				explicit TagResourcesResult(const std::string &payload);
+				~TagResourcesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_TAGRESOURCESRESULT_H_

+ 39 - 0
config/include/alibabacloud/config/model/UntagResourcesRequest.h

@@ -0,0 +1,39 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT UntagResourcesRequest : public RpcServiceRequest {
+public:
+	UntagResourcesRequest();
+	~UntagResourcesRequest();
+
+private:
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESREQUEST_H_

+ 49 - 0
config/include/alibabacloud/config/model/UntagResourcesResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT UntagResourcesResult : public ServiceResult
+			{
+			public:
+
+
+				UntagResourcesResult();
+				explicit UntagResourcesResult(const std::string &payload);
+				~UntagResourcesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UNTAGRESOURCESRESULT_H_

+ 75 - 0
config/include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelRequest.h

@@ -0,0 +1,75 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT UpdateAggregateConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	UpdateAggregateConfigDeliveryChannelRequest();
+	~UpdateAggregateConfigDeliveryChannelRequest();
+	bool getNonCompliantNotification() const;
+	void setNonCompliantNotification(bool nonCompliantNotification);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	bool getConfigurationSnapshot() const;
+	void setConfigurationSnapshot(bool configurationSnapshot);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getAggregatorId() const;
+	void setAggregatorId(const std::string &aggregatorId);
+	std::string getDeliveryChannelTargetArn() const;
+	void setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn);
+	std::string getDeliveryChannelCondition() const;
+	void setDeliveryChannelCondition(const std::string &deliveryChannelCondition);
+	bool getConfigurationItemChangeNotification() const;
+	void setConfigurationItemChangeNotification(bool configurationItemChangeNotification);
+	std::string getDeliveryChannelName() const;
+	void setDeliveryChannelName(const std::string &deliveryChannelName);
+	std::string getDeliveryChannelId() const;
+	void setDeliveryChannelId(const std::string &deliveryChannelId);
+	std::string getOversizedDataOSSTargetArn() const;
+	void setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn);
+	long getStatus() const;
+	void setStatus(long status);
+
+private:
+	bool nonCompliantNotification_;
+	std::string clientToken_;
+	bool configurationSnapshot_;
+	std::string description_;
+	std::string aggregatorId_;
+	std::string deliveryChannelTargetArn_;
+	std::string deliveryChannelCondition_;
+	bool configurationItemChangeNotification_;
+	std::string deliveryChannelName_;
+	std::string deliveryChannelId_;
+	std::string oversizedDataOSSTargetArn_;
+	long status_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELREQUEST_H_

+ 51 - 0
config/include/alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT UpdateAggregateConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateAggregateConfigDeliveryChannelResult();
+				explicit UpdateAggregateConfigDeliveryChannelResult(const std::string &payload);
+				~UpdateAggregateConfigDeliveryChannelResult();
+				std::string getDeliveryChannelId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string deliveryChannelId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UPDATEAGGREGATECONFIGDELIVERYCHANNELRESULT_H_

+ 72 - 0
config/include/alibabacloud/config/model/UpdateConfigDeliveryChannelRequest.h

@@ -0,0 +1,72 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELREQUEST_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELREQUEST_H_
+
+#include <alibabacloud/config/ConfigExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Config {
+namespace Model {
+class ALIBABACLOUD_CONFIG_EXPORT UpdateConfigDeliveryChannelRequest : public RpcServiceRequest {
+public:
+	UpdateConfigDeliveryChannelRequest();
+	~UpdateConfigDeliveryChannelRequest();
+	bool getNonCompliantNotification() const;
+	void setNonCompliantNotification(bool nonCompliantNotification);
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	bool getConfigurationSnapshot() const;
+	void setConfigurationSnapshot(bool configurationSnapshot);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getDeliveryChannelTargetArn() const;
+	void setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn);
+	std::string getDeliveryChannelCondition() const;
+	void setDeliveryChannelCondition(const std::string &deliveryChannelCondition);
+	bool getConfigurationItemChangeNotification() const;
+	void setConfigurationItemChangeNotification(bool configurationItemChangeNotification);
+	std::string getDeliveryChannelName() const;
+	void setDeliveryChannelName(const std::string &deliveryChannelName);
+	std::string getDeliveryChannelId() const;
+	void setDeliveryChannelId(const std::string &deliveryChannelId);
+	std::string getOversizedDataOSSTargetArn() const;
+	void setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn);
+	long getStatus() const;
+	void setStatus(long status);
+
+private:
+	bool nonCompliantNotification_;
+	std::string clientToken_;
+	bool configurationSnapshot_;
+	std::string description_;
+	std::string deliveryChannelTargetArn_;
+	std::string deliveryChannelCondition_;
+	bool configurationItemChangeNotification_;
+	std::string deliveryChannelName_;
+	std::string deliveryChannelId_;
+	std::string oversizedDataOSSTargetArn_;
+	long status_;
+};
+} // namespace Model
+} // namespace Config
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELREQUEST_H_

+ 51 - 0
config/include/alibabacloud/config/model/UpdateConfigDeliveryChannelResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELRESULT_H_
+#define ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/config/ConfigExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Config
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CONFIG_EXPORT UpdateConfigDeliveryChannelResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateConfigDeliveryChannelResult();
+				explicit UpdateConfigDeliveryChannelResult(const std::string &payload);
+				~UpdateConfigDeliveryChannelResult();
+				std::string getDeliveryChannelId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string deliveryChannelId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CONFIG_MODEL_UPDATECONFIGDELIVERYCHANNELRESULT_H_

+ 396 - 0
config/src/ConfigClient.cc

@@ -195,6 +195,42 @@ ConfigClient::CreateAggregateCompliancePackOutcomeCallable ConfigClient::createA
 	return task->get_future();
 }
 
+ConfigClient::CreateAggregateConfigDeliveryChannelOutcome ConfigClient::createAggregateConfigDeliveryChannel(const CreateAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateAggregateConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateAggregateConfigDeliveryChannelOutcome(CreateAggregateConfigDeliveryChannelResult(outcome.result()));
+	else
+		return CreateAggregateConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::createAggregateConfigDeliveryChannelAsync(const CreateAggregateConfigDeliveryChannelRequest& request, const CreateAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createAggregateConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::CreateAggregateConfigDeliveryChannelOutcomeCallable ConfigClient::createAggregateConfigDeliveryChannelCallable(const CreateAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateAggregateConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->createAggregateConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::CreateAggregateConfigRuleOutcome ConfigClient::createAggregateConfigRule(const CreateAggregateConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -339,6 +375,42 @@ ConfigClient::CreateCompliancePackOutcomeCallable ConfigClient::createCompliance
 	return task->get_future();
 }
 
+ConfigClient::CreateConfigDeliveryChannelOutcome ConfigClient::createConfigDeliveryChannel(const CreateConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateConfigDeliveryChannelOutcome(CreateConfigDeliveryChannelResult(outcome.result()));
+	else
+		return CreateConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::createConfigDeliveryChannelAsync(const CreateConfigDeliveryChannelRequest& request, const CreateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::CreateConfigDeliveryChannelOutcomeCallable ConfigClient::createConfigDeliveryChannelCallable(const CreateConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->createConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::CreateConfigRuleOutcome ConfigClient::createConfigRule(const CreateConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1023,6 +1095,42 @@ ConfigClient::GetAggregateCompliancePackReportOutcomeCallable ConfigClient::getA
 	return task->get_future();
 }
 
+ConfigClient::GetAggregateConfigDeliveryChannelOutcome ConfigClient::getAggregateConfigDeliveryChannel(const GetAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetAggregateConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetAggregateConfigDeliveryChannelOutcome(GetAggregateConfigDeliveryChannelResult(outcome.result()));
+	else
+		return GetAggregateConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::getAggregateConfigDeliveryChannelAsync(const GetAggregateConfigDeliveryChannelRequest& request, const GetAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getAggregateConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::GetAggregateConfigDeliveryChannelOutcomeCallable ConfigClient::getAggregateConfigDeliveryChannelCallable(const GetAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetAggregateConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->getAggregateConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::GetAggregateConfigRuleOutcome ConfigClient::getAggregateConfigRule(const GetAggregateConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1599,6 +1707,42 @@ ConfigClient::GetCompliancePackReportOutcomeCallable ConfigClient::getCompliance
 	return task->get_future();
 }
 
+ConfigClient::GetConfigDeliveryChannelOutcome ConfigClient::getConfigDeliveryChannel(const GetConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetConfigDeliveryChannelOutcome(GetConfigDeliveryChannelResult(outcome.result()));
+	else
+		return GetConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::getConfigDeliveryChannelAsync(const GetConfigDeliveryChannelRequest& request, const GetConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::GetConfigDeliveryChannelOutcomeCallable ConfigClient::getConfigDeliveryChannelCallable(const GetConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->getConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::GetConfigRuleOutcome ConfigClient::getConfigRule(const GetConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2211,6 +2355,42 @@ ConfigClient::ListAggregateCompliancePacksOutcomeCallable ConfigClient::listAggr
 	return task->get_future();
 }
 
+ConfigClient::ListAggregateConfigDeliveryChannelsOutcome ConfigClient::listAggregateConfigDeliveryChannels(const ListAggregateConfigDeliveryChannelsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListAggregateConfigDeliveryChannelsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListAggregateConfigDeliveryChannelsOutcome(ListAggregateConfigDeliveryChannelsResult(outcome.result()));
+	else
+		return ListAggregateConfigDeliveryChannelsOutcome(outcome.error());
+}
+
+void ConfigClient::listAggregateConfigDeliveryChannelsAsync(const ListAggregateConfigDeliveryChannelsRequest& request, const ListAggregateConfigDeliveryChannelsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listAggregateConfigDeliveryChannels(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::ListAggregateConfigDeliveryChannelsOutcomeCallable ConfigClient::listAggregateConfigDeliveryChannelsCallable(const ListAggregateConfigDeliveryChannelsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListAggregateConfigDeliveryChannelsOutcome()>>(
+			[this, request]()
+			{
+			return this->listAggregateConfigDeliveryChannels(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::ListAggregateConfigRuleEvaluationResultsOutcome ConfigClient::listAggregateConfigRuleEvaluationResults(const ListAggregateConfigRuleEvaluationResultsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2499,6 +2679,42 @@ ConfigClient::ListCompliancePacksOutcomeCallable ConfigClient::listCompliancePac
 	return task->get_future();
 }
 
+ConfigClient::ListConfigDeliveryChannelsOutcome ConfigClient::listConfigDeliveryChannels(const ListConfigDeliveryChannelsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListConfigDeliveryChannelsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListConfigDeliveryChannelsOutcome(ListConfigDeliveryChannelsResult(outcome.result()));
+	else
+		return ListConfigDeliveryChannelsOutcome(outcome.error());
+}
+
+void ConfigClient::listConfigDeliveryChannelsAsync(const ListConfigDeliveryChannelsRequest& request, const ListConfigDeliveryChannelsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listConfigDeliveryChannels(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::ListConfigDeliveryChannelsOutcomeCallable ConfigClient::listConfigDeliveryChannelsCallable(const ListConfigDeliveryChannelsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListConfigDeliveryChannelsOutcome()>>(
+			[this, request]()
+			{
+			return this->listConfigDeliveryChannels(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::ListConfigRuleEvaluationResultsOutcome ConfigClient::listConfigRuleEvaluationResults(const ListConfigRuleEvaluationResultsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2715,6 +2931,42 @@ ConfigClient::ListResourceEvaluationResultsOutcomeCallable ConfigClient::listRes
 	return task->get_future();
 }
 
+ConfigClient::ListTagResourcesOutcome ConfigClient::listTagResources(const ListTagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListTagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListTagResourcesOutcome(ListTagResourcesResult(outcome.result()));
+	else
+		return ListTagResourcesOutcome(outcome.error());
+}
+
+void ConfigClient::listTagResourcesAsync(const ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listTagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::ListTagResourcesOutcomeCallable ConfigClient::listTagResourcesCallable(const ListTagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListTagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->listTagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::RevertAggregateEvaluationResultsOutcome ConfigClient::revertAggregateEvaluationResults(const RevertAggregateEvaluationResultsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2895,6 +3147,78 @@ ConfigClient::StartRemediationOutcomeCallable ConfigClient::startRemediationCall
 	return task->get_future();
 }
 
+ConfigClient::TagResourcesOutcome ConfigClient::tagResources(const TagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return TagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return TagResourcesOutcome(TagResourcesResult(outcome.result()));
+	else
+		return TagResourcesOutcome(outcome.error());
+}
+
+void ConfigClient::tagResourcesAsync(const TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, tagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::TagResourcesOutcomeCallable ConfigClient::tagResourcesCallable(const TagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<TagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->tagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+ConfigClient::UntagResourcesOutcome ConfigClient::untagResources(const UntagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UntagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UntagResourcesOutcome(UntagResourcesResult(outcome.result()));
+	else
+		return UntagResourcesOutcome(outcome.error());
+}
+
+void ConfigClient::untagResourcesAsync(const UntagResourcesRequest& request, const UntagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, untagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::UntagResourcesOutcomeCallable ConfigClient::untagResourcesCallable(const UntagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UntagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->untagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::UpdateAggregateCompliancePackOutcome ConfigClient::updateAggregateCompliancePack(const UpdateAggregateCompliancePackRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2931,6 +3255,42 @@ ConfigClient::UpdateAggregateCompliancePackOutcomeCallable ConfigClient::updateA
 	return task->get_future();
 }
 
+ConfigClient::UpdateAggregateConfigDeliveryChannelOutcome ConfigClient::updateAggregateConfigDeliveryChannel(const UpdateAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateAggregateConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateAggregateConfigDeliveryChannelOutcome(UpdateAggregateConfigDeliveryChannelResult(outcome.result()));
+	else
+		return UpdateAggregateConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::updateAggregateConfigDeliveryChannelAsync(const UpdateAggregateConfigDeliveryChannelRequest& request, const UpdateAggregateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateAggregateConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::UpdateAggregateConfigDeliveryChannelOutcomeCallable ConfigClient::updateAggregateConfigDeliveryChannelCallable(const UpdateAggregateConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateAggregateConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->updateAggregateConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::UpdateAggregateConfigRuleOutcome ConfigClient::updateAggregateConfigRule(const UpdateAggregateConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3075,6 +3435,42 @@ ConfigClient::UpdateCompliancePackOutcomeCallable ConfigClient::updateCompliance
 	return task->get_future();
 }
 
+ConfigClient::UpdateConfigDeliveryChannelOutcome ConfigClient::updateConfigDeliveryChannel(const UpdateConfigDeliveryChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateConfigDeliveryChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateConfigDeliveryChannelOutcome(UpdateConfigDeliveryChannelResult(outcome.result()));
+	else
+		return UpdateConfigDeliveryChannelOutcome(outcome.error());
+}
+
+void ConfigClient::updateConfigDeliveryChannelAsync(const UpdateConfigDeliveryChannelRequest& request, const UpdateConfigDeliveryChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateConfigDeliveryChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ConfigClient::UpdateConfigDeliveryChannelOutcomeCallable ConfigClient::updateConfigDeliveryChannelCallable(const UpdateConfigDeliveryChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateConfigDeliveryChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->updateConfigDeliveryChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ConfigClient::UpdateConfigRuleOutcome ConfigClient::updateConfigRule(const UpdateConfigRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 126 - 0
config/src/model/CreateAggregateConfigDeliveryChannelRequest.cc

@@ -0,0 +1,126 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/CreateAggregateConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::CreateAggregateConfigDeliveryChannelRequest;
+
+CreateAggregateConfigDeliveryChannelRequest::CreateAggregateConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "CreateAggregateConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateAggregateConfigDeliveryChannelRequest::~CreateAggregateConfigDeliveryChannelRequest() {}
+
+bool CreateAggregateConfigDeliveryChannelRequest::getNonCompliantNotification() const {
+  return nonCompliantNotification_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setNonCompliantNotification(bool nonCompliantNotification) {
+  nonCompliantNotification_ = nonCompliantNotification;
+  setParameter(std::string("NonCompliantNotification"), nonCompliantNotification ? "true" : "false");
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+bool CreateAggregateConfigDeliveryChannelRequest::getConfigurationSnapshot() const {
+  return configurationSnapshot_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setConfigurationSnapshot(bool configurationSnapshot) {
+  configurationSnapshot_ = configurationSnapshot;
+  setParameter(std::string("ConfigurationSnapshot"), configurationSnapshot ? "true" : "false");
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getDescription() const {
+  return description_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getAggregatorId() const {
+  return aggregatorId_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setAggregatorId(const std::string &aggregatorId) {
+  aggregatorId_ = aggregatorId;
+  setParameter(std::string("AggregatorId"), aggregatorId);
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getDeliveryChannelTargetArn() const {
+  return deliveryChannelTargetArn_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn) {
+  deliveryChannelTargetArn_ = deliveryChannelTargetArn;
+  setParameter(std::string("DeliveryChannelTargetArn"), deliveryChannelTargetArn);
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getDeliveryChannelCondition() const {
+  return deliveryChannelCondition_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setDeliveryChannelCondition(const std::string &deliveryChannelCondition) {
+  deliveryChannelCondition_ = deliveryChannelCondition;
+  setParameter(std::string("DeliveryChannelCondition"), deliveryChannelCondition);
+}
+
+bool CreateAggregateConfigDeliveryChannelRequest::getConfigurationItemChangeNotification() const {
+  return configurationItemChangeNotification_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setConfigurationItemChangeNotification(bool configurationItemChangeNotification) {
+  configurationItemChangeNotification_ = configurationItemChangeNotification;
+  setParameter(std::string("ConfigurationItemChangeNotification"), configurationItemChangeNotification ? "true" : "false");
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getDeliveryChannelName() const {
+  return deliveryChannelName_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setDeliveryChannelName(const std::string &deliveryChannelName) {
+  deliveryChannelName_ = deliveryChannelName;
+  setParameter(std::string("DeliveryChannelName"), deliveryChannelName);
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getOversizedDataOSSTargetArn() const {
+  return oversizedDataOSSTargetArn_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn) {
+  oversizedDataOSSTargetArn_ = oversizedDataOSSTargetArn;
+  setParameter(std::string("OversizedDataOSSTargetArn"), oversizedDataOSSTargetArn);
+}
+
+std::string CreateAggregateConfigDeliveryChannelRequest::getDeliveryChannelType() const {
+  return deliveryChannelType_;
+}
+
+void CreateAggregateConfigDeliveryChannelRequest::setDeliveryChannelType(const std::string &deliveryChannelType) {
+  deliveryChannelType_ = deliveryChannelType;
+  setParameter(std::string("DeliveryChannelType"), deliveryChannelType);
+}
+

+ 51 - 0
config/src/model/CreateAggregateConfigDeliveryChannelResult.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/CreateAggregateConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+CreateAggregateConfigDeliveryChannelResult::CreateAggregateConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+CreateAggregateConfigDeliveryChannelResult::CreateAggregateConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateAggregateConfigDeliveryChannelResult::~CreateAggregateConfigDeliveryChannelResult()
+{}
+
+void CreateAggregateConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["DeliveryChannelId"].isNull())
+		deliveryChannelId_ = value["DeliveryChannelId"].asString();
+
+}
+
+std::string CreateAggregateConfigDeliveryChannelResult::getDeliveryChannelId()const
+{
+	return deliveryChannelId_;
+}
+

+ 117 - 0
config/src/model/CreateConfigDeliveryChannelRequest.cc

@@ -0,0 +1,117 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/CreateConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::CreateConfigDeliveryChannelRequest;
+
+CreateConfigDeliveryChannelRequest::CreateConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "CreateConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateConfigDeliveryChannelRequest::~CreateConfigDeliveryChannelRequest() {}
+
+bool CreateConfigDeliveryChannelRequest::getNonCompliantNotification() const {
+  return nonCompliantNotification_;
+}
+
+void CreateConfigDeliveryChannelRequest::setNonCompliantNotification(bool nonCompliantNotification) {
+  nonCompliantNotification_ = nonCompliantNotification;
+  setParameter(std::string("NonCompliantNotification"), nonCompliantNotification ? "true" : "false");
+}
+
+std::string CreateConfigDeliveryChannelRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void CreateConfigDeliveryChannelRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+bool CreateConfigDeliveryChannelRequest::getConfigurationSnapshot() const {
+  return configurationSnapshot_;
+}
+
+void CreateConfigDeliveryChannelRequest::setConfigurationSnapshot(bool configurationSnapshot) {
+  configurationSnapshot_ = configurationSnapshot;
+  setParameter(std::string("ConfigurationSnapshot"), configurationSnapshot ? "true" : "false");
+}
+
+std::string CreateConfigDeliveryChannelRequest::getDescription() const {
+  return description_;
+}
+
+void CreateConfigDeliveryChannelRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string CreateConfigDeliveryChannelRequest::getDeliveryChannelTargetArn() const {
+  return deliveryChannelTargetArn_;
+}
+
+void CreateConfigDeliveryChannelRequest::setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn) {
+  deliveryChannelTargetArn_ = deliveryChannelTargetArn;
+  setParameter(std::string("DeliveryChannelTargetArn"), deliveryChannelTargetArn);
+}
+
+std::string CreateConfigDeliveryChannelRequest::getDeliveryChannelCondition() const {
+  return deliveryChannelCondition_;
+}
+
+void CreateConfigDeliveryChannelRequest::setDeliveryChannelCondition(const std::string &deliveryChannelCondition) {
+  deliveryChannelCondition_ = deliveryChannelCondition;
+  setParameter(std::string("DeliveryChannelCondition"), deliveryChannelCondition);
+}
+
+bool CreateConfigDeliveryChannelRequest::getConfigurationItemChangeNotification() const {
+  return configurationItemChangeNotification_;
+}
+
+void CreateConfigDeliveryChannelRequest::setConfigurationItemChangeNotification(bool configurationItemChangeNotification) {
+  configurationItemChangeNotification_ = configurationItemChangeNotification;
+  setParameter(std::string("ConfigurationItemChangeNotification"), configurationItemChangeNotification ? "true" : "false");
+}
+
+std::string CreateConfigDeliveryChannelRequest::getDeliveryChannelName() const {
+  return deliveryChannelName_;
+}
+
+void CreateConfigDeliveryChannelRequest::setDeliveryChannelName(const std::string &deliveryChannelName) {
+  deliveryChannelName_ = deliveryChannelName;
+  setParameter(std::string("DeliveryChannelName"), deliveryChannelName);
+}
+
+std::string CreateConfigDeliveryChannelRequest::getOversizedDataOSSTargetArn() const {
+  return oversizedDataOSSTargetArn_;
+}
+
+void CreateConfigDeliveryChannelRequest::setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn) {
+  oversizedDataOSSTargetArn_ = oversizedDataOSSTargetArn;
+  setParameter(std::string("OversizedDataOSSTargetArn"), oversizedDataOSSTargetArn);
+}
+
+std::string CreateConfigDeliveryChannelRequest::getDeliveryChannelType() const {
+  return deliveryChannelType_;
+}
+
+void CreateConfigDeliveryChannelRequest::setDeliveryChannelType(const std::string &deliveryChannelType) {
+  deliveryChannelType_ = deliveryChannelType;
+  setParameter(std::string("DeliveryChannelType"), deliveryChannelType);
+}
+

+ 51 - 0
config/src/model/CreateConfigDeliveryChannelResult.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/CreateConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+CreateConfigDeliveryChannelResult::CreateConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+CreateConfigDeliveryChannelResult::CreateConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateConfigDeliveryChannelResult::~CreateConfigDeliveryChannelResult()
+{}
+
+void CreateConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["DeliveryChannelId"].isNull())
+		deliveryChannelId_ = value["DeliveryChannelId"].asString();
+
+}
+
+std::string CreateConfigDeliveryChannelResult::getDeliveryChannelId()const
+{
+	return deliveryChannelId_;
+}
+

+ 45 - 0
config/src/model/GetAggregateConfigDeliveryChannelRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/GetAggregateConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::GetAggregateConfigDeliveryChannelRequest;
+
+GetAggregateConfigDeliveryChannelRequest::GetAggregateConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "GetAggregateConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetAggregateConfigDeliveryChannelRequest::~GetAggregateConfigDeliveryChannelRequest() {}
+
+std::string GetAggregateConfigDeliveryChannelRequest::getAggregatorId() const {
+  return aggregatorId_;
+}
+
+void GetAggregateConfigDeliveryChannelRequest::setAggregatorId(const std::string &aggregatorId) {
+  aggregatorId_ = aggregatorId;
+  setParameter(std::string("AggregatorId"), aggregatorId);
+}
+
+std::string GetAggregateConfigDeliveryChannelRequest::getDeliveryChannelId() const {
+  return deliveryChannelId_;
+}
+
+void GetAggregateConfigDeliveryChannelRequest::setDeliveryChannelId(const std::string &deliveryChannelId) {
+  deliveryChannelId_ = deliveryChannelId;
+  setParameter(std::string("DeliveryChannelId"), deliveryChannelId);
+}
+

+ 78 - 0
config/src/model/GetAggregateConfigDeliveryChannelResult.cc

@@ -0,0 +1,78 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/GetAggregateConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+GetAggregateConfigDeliveryChannelResult::GetAggregateConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+GetAggregateConfigDeliveryChannelResult::GetAggregateConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetAggregateConfigDeliveryChannelResult::~GetAggregateConfigDeliveryChannelResult()
+{}
+
+void GetAggregateConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto deliveryChannelNode = value["DeliveryChannel"];
+	if(!deliveryChannelNode["Status"].isNull())
+		deliveryChannel_.status = std::stoi(deliveryChannelNode["Status"].asString());
+	if(!deliveryChannelNode["DeliveryChannelId"].isNull())
+		deliveryChannel_.deliveryChannelId = deliveryChannelNode["DeliveryChannelId"].asString();
+	if(!deliveryChannelNode["DeliveryChannelName"].isNull())
+		deliveryChannel_.deliveryChannelName = deliveryChannelNode["DeliveryChannelName"].asString();
+	if(!deliveryChannelNode["DeliveryChannelType"].isNull())
+		deliveryChannel_.deliveryChannelType = deliveryChannelNode["DeliveryChannelType"].asString();
+	if(!deliveryChannelNode["DeliveryChannelTargetArn"].isNull())
+		deliveryChannel_.deliveryChannelTargetArn = deliveryChannelNode["DeliveryChannelTargetArn"].asString();
+	if(!deliveryChannelNode["DeliveryChannelAssumeRoleArn"].isNull())
+		deliveryChannel_.deliveryChannelAssumeRoleArn = deliveryChannelNode["DeliveryChannelAssumeRoleArn"].asString();
+	if(!deliveryChannelNode["DeliveryChannelCondition"].isNull())
+		deliveryChannel_.deliveryChannelCondition = deliveryChannelNode["DeliveryChannelCondition"].asString();
+	if(!deliveryChannelNode["OversizedDataOSSTargetArn"].isNull())
+		deliveryChannel_.oversizedDataOSSTargetArn = deliveryChannelNode["OversizedDataOSSTargetArn"].asString();
+	if(!deliveryChannelNode["Description"].isNull())
+		deliveryChannel_.description = deliveryChannelNode["Description"].asString();
+	if(!deliveryChannelNode["ConfigurationSnapshot"].isNull())
+		deliveryChannel_.configurationSnapshot = deliveryChannelNode["ConfigurationSnapshot"].asString() == "true";
+	if(!deliveryChannelNode["ConfigurationItemChangeNotification"].isNull())
+		deliveryChannel_.configurationItemChangeNotification = deliveryChannelNode["ConfigurationItemChangeNotification"].asString() == "true";
+	if(!deliveryChannelNode["NonCompliantNotification"].isNull())
+		deliveryChannel_.nonCompliantNotification = deliveryChannelNode["NonCompliantNotification"].asString() == "true";
+	if(!deliveryChannelNode["AggregatorId"].isNull())
+		deliveryChannel_.aggregatorId = deliveryChannelNode["AggregatorId"].asString();
+	if(!deliveryChannelNode["AccountId"].isNull())
+		deliveryChannel_.accountId = deliveryChannelNode["AccountId"].asString();
+
+}
+
+GetAggregateConfigDeliveryChannelResult::DeliveryChannel GetAggregateConfigDeliveryChannelResult::getDeliveryChannel()const
+{
+	return deliveryChannel_;
+}
+

+ 36 - 0
config/src/model/GetConfigDeliveryChannelRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/GetConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::GetConfigDeliveryChannelRequest;
+
+GetConfigDeliveryChannelRequest::GetConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "GetConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetConfigDeliveryChannelRequest::~GetConfigDeliveryChannelRequest() {}
+
+std::string GetConfigDeliveryChannelRequest::getDeliveryChannelId() const {
+  return deliveryChannelId_;
+}
+
+void GetConfigDeliveryChannelRequest::setDeliveryChannelId(const std::string &deliveryChannelId) {
+  deliveryChannelId_ = deliveryChannelId;
+  setParameter(std::string("DeliveryChannelId"), deliveryChannelId);
+}
+

+ 76 - 0
config/src/model/GetConfigDeliveryChannelResult.cc

@@ -0,0 +1,76 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/GetConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+GetConfigDeliveryChannelResult::GetConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+GetConfigDeliveryChannelResult::GetConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetConfigDeliveryChannelResult::~GetConfigDeliveryChannelResult()
+{}
+
+void GetConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto deliveryChannelNode = value["DeliveryChannel"];
+	if(!deliveryChannelNode["Status"].isNull())
+		deliveryChannel_.status = std::stoi(deliveryChannelNode["Status"].asString());
+	if(!deliveryChannelNode["DeliveryChannelId"].isNull())
+		deliveryChannel_.deliveryChannelId = deliveryChannelNode["DeliveryChannelId"].asString();
+	if(!deliveryChannelNode["DeliveryChannelName"].isNull())
+		deliveryChannel_.deliveryChannelName = deliveryChannelNode["DeliveryChannelName"].asString();
+	if(!deliveryChannelNode["DeliveryChannelType"].isNull())
+		deliveryChannel_.deliveryChannelType = deliveryChannelNode["DeliveryChannelType"].asString();
+	if(!deliveryChannelNode["DeliveryChannelTargetArn"].isNull())
+		deliveryChannel_.deliveryChannelTargetArn = deliveryChannelNode["DeliveryChannelTargetArn"].asString();
+	if(!deliveryChannelNode["DeliveryChannelAssumeRoleArn"].isNull())
+		deliveryChannel_.deliveryChannelAssumeRoleArn = deliveryChannelNode["DeliveryChannelAssumeRoleArn"].asString();
+	if(!deliveryChannelNode["DeliveryChannelCondition"].isNull())
+		deliveryChannel_.deliveryChannelCondition = deliveryChannelNode["DeliveryChannelCondition"].asString();
+	if(!deliveryChannelNode["OversizedDataOSSTargetArn"].isNull())
+		deliveryChannel_.oversizedDataOSSTargetArn = deliveryChannelNode["OversizedDataOSSTargetArn"].asString();
+	if(!deliveryChannelNode["Description"].isNull())
+		deliveryChannel_.description = deliveryChannelNode["Description"].asString();
+	if(!deliveryChannelNode["ConfigurationSnapshot"].isNull())
+		deliveryChannel_.configurationSnapshot = deliveryChannelNode["ConfigurationSnapshot"].asString() == "true";
+	if(!deliveryChannelNode["ConfigurationItemChangeNotification"].isNull())
+		deliveryChannel_.configurationItemChangeNotification = deliveryChannelNode["ConfigurationItemChangeNotification"].asString() == "true";
+	if(!deliveryChannelNode["NonCompliantNotification"].isNull())
+		deliveryChannel_.nonCompliantNotification = deliveryChannelNode["NonCompliantNotification"].asString() == "true";
+	if(!deliveryChannelNode["AccountId"].isNull())
+		deliveryChannel_.accountId = std::stol(deliveryChannelNode["AccountId"].asString());
+
+}
+
+GetConfigDeliveryChannelResult::DeliveryChannel GetConfigDeliveryChannelResult::getDeliveryChannel()const
+{
+	return deliveryChannel_;
+}
+

+ 4 - 6
config/src/model/GetManagedRuleResult.cc

@@ -46,8 +46,12 @@ void GetManagedRuleResult::parse(const std::string &payload)
 		managedRule_.helpHint = managedRuleNode["HelpHint"].asString();
 	if(!managedRuleNode["DefaultName"].isNull())
 		managedRule_.defaultName = managedRuleNode["DefaultName"].asString();
+	if(!managedRuleNode["OptionalInputParameterDetails"].isNull())
+		managedRule_.optionalInputParameterDetails = managedRuleNode["OptionalInputParameterDetails"].asString();
 	if(!managedRuleNode["Identifier"].isNull())
 		managedRule_.identifier = managedRuleNode["Identifier"].asString();
+	if(!managedRuleNode["CompulsoryInputParameterDetails"].isNull())
+		managedRule_.compulsoryInputParameterDetails = managedRuleNode["CompulsoryInputParameterDetails"].asString();
 	if(!managedRuleNode["RegionId"].isNull())
 		managedRule_.regionId = managedRuleNode["RegionId"].asString();
 	if(!managedRuleNode["Description"].isNull())
@@ -86,12 +90,6 @@ void GetManagedRuleResult::parse(const std::string &payload)
 		auto allSourceConditions = managedRuleNode["SourceConditions"]["SourceConditions"];
 		for (auto value : allSourceConditions)
 			managedRule_.sourceConditions.push_back(value.asString());
-		auto allOptionalInputParameterDetails = managedRuleNode["OptionalInputParameterDetails"]["OptionalInputParameterDetails"];
-		for (auto value : allOptionalInputParameterDetails)
-			managedRule_.optionalInputParameterDetails.push_back(value.asString());
-		auto allCompulsoryInputParameterDetails = managedRuleNode["CompulsoryInputParameterDetails"]["CompulsoryInputParameterDetails"];
-		for (auto value : allCompulsoryInputParameterDetails)
-			managedRule_.compulsoryInputParameterDetails.push_back(value.asString());
 
 }
 

+ 9 - 0
config/src/model/IgnoreAggregateEvaluationResultsRequest.cc

@@ -43,6 +43,15 @@ void IgnoreAggregateEvaluationResultsRequest::setReason(const std::string &reaso
   setBodyParameter(std::string("Reason"), reason);
 }
 
+std::string IgnoreAggregateEvaluationResultsRequest::getIgnoreDate() const {
+  return ignoreDate_;
+}
+
+void IgnoreAggregateEvaluationResultsRequest::setIgnoreDate(const std::string &ignoreDate) {
+  ignoreDate_ = ignoreDate;
+  setBodyParameter(std::string("IgnoreDate"), ignoreDate);
+}
+
 std::vector<IgnoreAggregateEvaluationResultsRequest::Resources> IgnoreAggregateEvaluationResultsRequest::getResources() const {
   return resources_;
 }

+ 9 - 0
config/src/model/IgnoreEvaluationResultsRequest.cc

@@ -43,6 +43,15 @@ void IgnoreEvaluationResultsRequest::setReason(const std::string &reason) {
   setBodyParameter(std::string("Reason"), reason);
 }
 
+std::string IgnoreEvaluationResultsRequest::getIgnoreDate() const {
+  return ignoreDate_;
+}
+
+void IgnoreEvaluationResultsRequest::setIgnoreDate(const std::string &ignoreDate) {
+  ignoreDate_ = ignoreDate;
+  setBodyParameter(std::string("IgnoreDate"), ignoreDate);
+}
+
 std::vector<IgnoreEvaluationResultsRequest::Resources> IgnoreEvaluationResultsRequest::getResources() const {
   return resources_;
 }

+ 45 - 0
config/src/model/ListAggregateConfigDeliveryChannelsRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListAggregateConfigDeliveryChannelsRequest.h>
+
+using AlibabaCloud::Config::Model::ListAggregateConfigDeliveryChannelsRequest;
+
+ListAggregateConfigDeliveryChannelsRequest::ListAggregateConfigDeliveryChannelsRequest()
+    : RpcServiceRequest("config", "2020-09-07", "ListAggregateConfigDeliveryChannels") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListAggregateConfigDeliveryChannelsRequest::~ListAggregateConfigDeliveryChannelsRequest() {}
+
+std::string ListAggregateConfigDeliveryChannelsRequest::getAggregatorId() const {
+  return aggregatorId_;
+}
+
+void ListAggregateConfigDeliveryChannelsRequest::setAggregatorId(const std::string &aggregatorId) {
+  aggregatorId_ = aggregatorId;
+  setParameter(std::string("AggregatorId"), aggregatorId);
+}
+
+std::string ListAggregateConfigDeliveryChannelsRequest::getDeliveryChannelIds() const {
+  return deliveryChannelIds_;
+}
+
+void ListAggregateConfigDeliveryChannelsRequest::setDeliveryChannelIds(const std::string &deliveryChannelIds) {
+  deliveryChannelIds_ = deliveryChannelIds;
+  setParameter(std::string("DeliveryChannelIds"), deliveryChannelIds);
+}
+

+ 83 - 0
config/src/model/ListAggregateConfigDeliveryChannelsResult.cc

@@ -0,0 +1,83 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListAggregateConfigDeliveryChannelsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+ListAggregateConfigDeliveryChannelsResult::ListAggregateConfigDeliveryChannelsResult() :
+	ServiceResult()
+{}
+
+ListAggregateConfigDeliveryChannelsResult::ListAggregateConfigDeliveryChannelsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListAggregateConfigDeliveryChannelsResult::~ListAggregateConfigDeliveryChannelsResult()
+{}
+
+void ListAggregateConfigDeliveryChannelsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDeliveryChannelsNode = value["DeliveryChannels"]["DeliveryChannel"];
+	for (auto valueDeliveryChannelsDeliveryChannel : allDeliveryChannelsNode)
+	{
+		DeliveryChannel deliveryChannelsObject;
+		if(!valueDeliveryChannelsDeliveryChannel["Status"].isNull())
+			deliveryChannelsObject.status = std::stoi(valueDeliveryChannelsDeliveryChannel["Status"].asString());
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelName"].isNull())
+			deliveryChannelsObject.deliveryChannelName = valueDeliveryChannelsDeliveryChannel["DeliveryChannelName"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelId"].isNull())
+			deliveryChannelsObject.deliveryChannelId = valueDeliveryChannelsDeliveryChannel["DeliveryChannelId"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelType"].isNull())
+			deliveryChannelsObject.deliveryChannelType = valueDeliveryChannelsDeliveryChannel["DeliveryChannelType"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelTargetArn"].isNull())
+			deliveryChannelsObject.deliveryChannelTargetArn = valueDeliveryChannelsDeliveryChannel["DeliveryChannelTargetArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelAssumeRoleArn"].isNull())
+			deliveryChannelsObject.deliveryChannelAssumeRoleArn = valueDeliveryChannelsDeliveryChannel["DeliveryChannelAssumeRoleArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelCondition"].isNull())
+			deliveryChannelsObject.deliveryChannelCondition = valueDeliveryChannelsDeliveryChannel["DeliveryChannelCondition"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["OversizedDataOSSTargetArn"].isNull())
+			deliveryChannelsObject.oversizedDataOSSTargetArn = valueDeliveryChannelsDeliveryChannel["OversizedDataOSSTargetArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["Description"].isNull())
+			deliveryChannelsObject.description = valueDeliveryChannelsDeliveryChannel["Description"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["ConfigurationSnapshot"].isNull())
+			deliveryChannelsObject.configurationSnapshot = valueDeliveryChannelsDeliveryChannel["ConfigurationSnapshot"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["ConfigurationItemChangeNotification"].isNull())
+			deliveryChannelsObject.configurationItemChangeNotification = valueDeliveryChannelsDeliveryChannel["ConfigurationItemChangeNotification"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["NonCompliantNotification"].isNull())
+			deliveryChannelsObject.nonCompliantNotification = valueDeliveryChannelsDeliveryChannel["NonCompliantNotification"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["AggregatorId"].isNull())
+			deliveryChannelsObject.aggregatorId = valueDeliveryChannelsDeliveryChannel["AggregatorId"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["AccountId"].isNull())
+			deliveryChannelsObject.accountId = std::stol(valueDeliveryChannelsDeliveryChannel["AccountId"].asString());
+		deliveryChannels_.push_back(deliveryChannelsObject);
+	}
+
+}
+
+std::vector<ListAggregateConfigDeliveryChannelsResult::DeliveryChannel> ListAggregateConfigDeliveryChannelsResult::getDeliveryChannels()const
+{
+	return deliveryChannels_;
+}
+

+ 2 - 0
config/src/model/ListAggregateConfigRuleEvaluationResultsResult.cc

@@ -84,6 +84,8 @@ void ListAggregateConfigRuleEvaluationResultsResult::parse(const std::string &pa
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.regionId = evaluationResultQualifierNode["RegionId"].asString();
 		if(!evaluationResultQualifierNode["CompliancePackId"].isNull())
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.compliancePackId = evaluationResultQualifierNode["CompliancePackId"].asString();
+		if(!evaluationResultQualifierNode["IgnoreDate"].isNull())
+			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.ignoreDate = evaluationResultQualifierNode["IgnoreDate"].asString();
 		evaluationResults_.evaluationResultList.push_back(evaluationResultObject);
 	}
 

+ 2 - 2
config/src/model/ListAggregateDiscoveredResourcesResult.cc

@@ -44,8 +44,8 @@ void ListAggregateDiscoveredResourcesResult::parse(const std::string &payload)
 		discoveredResourceProfiles_.nextToken = discoveredResourceProfilesNode["NextToken"].asString();
 	if(!discoveredResourceProfilesNode["MaxResults"].isNull())
 		discoveredResourceProfiles_.maxResults = std::stoi(discoveredResourceProfilesNode["MaxResults"].asString());
-	if(!discoveredResourceProfilesNode["PreviousToken"].isNull())
-		discoveredResourceProfiles_.previousToken = discoveredResourceProfilesNode["PreviousToken"].asString();
+	if(!discoveredResourceProfilesNode["TotalCount"].isNull())
+		discoveredResourceProfiles_.totalCount = std::stoi(discoveredResourceProfilesNode["TotalCount"].asString());
 	auto allDiscoveredResourceProfileListNode = discoveredResourceProfilesNode["DiscoveredResourceProfileList"]["DiscoveredResourceProfile"];
 	for (auto discoveredResourceProfilesNodeDiscoveredResourceProfileListDiscoveredResourceProfile : allDiscoveredResourceProfileListNode)
 	{

+ 2 - 0
config/src/model/ListAggregateRemediationsResult.cc

@@ -67,6 +67,8 @@ void ListAggregateRemediationsResult::parse(const std::string &payload)
 			remediationsObject.configRuleId = valueRemediationsRemediation["ConfigRuleId"].asString();
 		if(!valueRemediationsRemediation["LastSuccessfulInvocationTime"].isNull())
 			remediationsObject.lastSuccessfulInvocationTime = std::stol(valueRemediationsRemediation["LastSuccessfulInvocationTime"].asString());
+		if(!valueRemediationsRemediation["RemediaitonOriginParams"].isNull())
+			remediationsObject.remediaitonOriginParams = valueRemediationsRemediation["RemediaitonOriginParams"].asString();
 		remediations_.push_back(remediationsObject);
 	}
 

+ 2 - 0
config/src/model/ListAggregateResourceEvaluationResultsResult.cc

@@ -80,6 +80,8 @@ void ListAggregateResourceEvaluationResultsResult::parse(const std::string &payl
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.resourceName = evaluationResultQualifierNode["ResourceName"].asString();
 		if(!evaluationResultQualifierNode["RegionId"].isNull())
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.regionId = evaluationResultQualifierNode["RegionId"].asString();
+		if(!evaluationResultQualifierNode["IgnoreDate"].isNull())
+			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.ignoreDate = evaluationResultQualifierNode["IgnoreDate"].asString();
 		evaluationResults_.evaluationResultList.push_back(evaluationResultObject);
 	}
 

+ 36 - 0
config/src/model/ListConfigDeliveryChannelsRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListConfigDeliveryChannelsRequest.h>
+
+using AlibabaCloud::Config::Model::ListConfigDeliveryChannelsRequest;
+
+ListConfigDeliveryChannelsRequest::ListConfigDeliveryChannelsRequest()
+    : RpcServiceRequest("config", "2020-09-07", "ListConfigDeliveryChannels") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListConfigDeliveryChannelsRequest::~ListConfigDeliveryChannelsRequest() {}
+
+std::string ListConfigDeliveryChannelsRequest::getDeliveryChannelIds() const {
+  return deliveryChannelIds_;
+}
+
+void ListConfigDeliveryChannelsRequest::setDeliveryChannelIds(const std::string &deliveryChannelIds) {
+  deliveryChannelIds_ = deliveryChannelIds;
+  setParameter(std::string("DeliveryChannelIds"), deliveryChannelIds);
+}
+

+ 81 - 0
config/src/model/ListConfigDeliveryChannelsResult.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListConfigDeliveryChannelsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+ListConfigDeliveryChannelsResult::ListConfigDeliveryChannelsResult() :
+	ServiceResult()
+{}
+
+ListConfigDeliveryChannelsResult::ListConfigDeliveryChannelsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListConfigDeliveryChannelsResult::~ListConfigDeliveryChannelsResult()
+{}
+
+void ListConfigDeliveryChannelsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDeliveryChannelsNode = value["DeliveryChannels"]["DeliveryChannel"];
+	for (auto valueDeliveryChannelsDeliveryChannel : allDeliveryChannelsNode)
+	{
+		DeliveryChannel deliveryChannelsObject;
+		if(!valueDeliveryChannelsDeliveryChannel["Status"].isNull())
+			deliveryChannelsObject.status = std::stoi(valueDeliveryChannelsDeliveryChannel["Status"].asString());
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelName"].isNull())
+			deliveryChannelsObject.deliveryChannelName = valueDeliveryChannelsDeliveryChannel["DeliveryChannelName"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelId"].isNull())
+			deliveryChannelsObject.deliveryChannelId = valueDeliveryChannelsDeliveryChannel["DeliveryChannelId"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelType"].isNull())
+			deliveryChannelsObject.deliveryChannelType = valueDeliveryChannelsDeliveryChannel["DeliveryChannelType"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelTargetArn"].isNull())
+			deliveryChannelsObject.deliveryChannelTargetArn = valueDeliveryChannelsDeliveryChannel["DeliveryChannelTargetArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelAssumeRoleArn"].isNull())
+			deliveryChannelsObject.deliveryChannelAssumeRoleArn = valueDeliveryChannelsDeliveryChannel["DeliveryChannelAssumeRoleArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["DeliveryChannelCondition"].isNull())
+			deliveryChannelsObject.deliveryChannelCondition = valueDeliveryChannelsDeliveryChannel["DeliveryChannelCondition"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["OversizedDataOSSTargetArn"].isNull())
+			deliveryChannelsObject.oversizedDataOSSTargetArn = valueDeliveryChannelsDeliveryChannel["OversizedDataOSSTargetArn"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["Description"].isNull())
+			deliveryChannelsObject.description = valueDeliveryChannelsDeliveryChannel["Description"].asString();
+		if(!valueDeliveryChannelsDeliveryChannel["ConfigurationSnapshot"].isNull())
+			deliveryChannelsObject.configurationSnapshot = valueDeliveryChannelsDeliveryChannel["ConfigurationSnapshot"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["ConfigurationItemChangeNotification"].isNull())
+			deliveryChannelsObject.configurationItemChangeNotification = valueDeliveryChannelsDeliveryChannel["ConfigurationItemChangeNotification"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["NonCompliantNotification"].isNull())
+			deliveryChannelsObject.nonCompliantNotification = valueDeliveryChannelsDeliveryChannel["NonCompliantNotification"].asString() == "true";
+		if(!valueDeliveryChannelsDeliveryChannel["AccountId"].isNull())
+			deliveryChannelsObject.accountId = std::stol(valueDeliveryChannelsDeliveryChannel["AccountId"].asString());
+		deliveryChannels_.push_back(deliveryChannelsObject);
+	}
+
+}
+
+std::vector<ListConfigDeliveryChannelsResult::DeliveryChannel> ListConfigDeliveryChannelsResult::getDeliveryChannels()const
+{
+	return deliveryChannels_;
+}
+

+ 2 - 0
config/src/model/ListConfigRuleEvaluationResultsResult.cc

@@ -84,6 +84,8 @@ void ListConfigRuleEvaluationResultsResult::parse(const std::string &payload)
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.regionId = evaluationResultQualifierNode["RegionId"].asString();
 		if(!evaluationResultQualifierNode["CompliancePackId"].isNull())
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.compliancePackId = evaluationResultQualifierNode["CompliancePackId"].asString();
+		if(!evaluationResultQualifierNode["IgnoreDate"].isNull())
+			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.ignoreDate = evaluationResultQualifierNode["IgnoreDate"].asString();
 		evaluationResults_.evaluationResultList.push_back(evaluationResultObject);
 	}
 

+ 2 - 2
config/src/model/ListDiscoveredResourcesResult.cc

@@ -44,8 +44,8 @@ void ListDiscoveredResourcesResult::parse(const std::string &payload)
 		discoveredResourceProfiles_.nextToken = discoveredResourceProfilesNode["NextToken"].asString();
 	if(!discoveredResourceProfilesNode["MaxResults"].isNull())
 		discoveredResourceProfiles_.maxResults = std::stoi(discoveredResourceProfilesNode["MaxResults"].asString());
-	if(!discoveredResourceProfilesNode["PreviousToken"].isNull())
-		discoveredResourceProfiles_.previousToken = discoveredResourceProfilesNode["PreviousToken"].asString();
+	if(!discoveredResourceProfilesNode["TotalCount"].isNull())
+		discoveredResourceProfiles_.totalCount = std::stoi(discoveredResourceProfilesNode["TotalCount"].asString());
 	auto allDiscoveredResourceProfileListNode = discoveredResourceProfilesNode["DiscoveredResourceProfileList"]["DiscoveredResourceProfile"];
 	for (auto discoveredResourceProfilesNodeDiscoveredResourceProfileListDiscoveredResourceProfile : allDiscoveredResourceProfileListNode)
 	{

+ 2 - 0
config/src/model/ListResourceEvaluationResultsResult.cc

@@ -80,6 +80,8 @@ void ListResourceEvaluationResultsResult::parse(const std::string &payload)
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.resourceName = evaluationResultQualifierNode["ResourceName"].asString();
 		if(!evaluationResultQualifierNode["RegionId"].isNull())
 			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.regionId = evaluationResultQualifierNode["RegionId"].asString();
+		if(!evaluationResultQualifierNode["IgnoreDate"].isNull())
+			evaluationResultObject.evaluationResultIdentifier.evaluationResultQualifier.ignoreDate = evaluationResultQualifierNode["IgnoreDate"].asString();
 		evaluationResults_.evaluationResultList.push_back(evaluationResultObject);
 	}
 

+ 27 - 0
config/src/model/ListTagResourcesRequest.cc

@@ -0,0 +1,27 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListTagResourcesRequest.h>
+
+using AlibabaCloud::Config::Model::ListTagResourcesRequest;
+
+ListTagResourcesRequest::ListTagResourcesRequest()
+    : RpcServiceRequest("config", "2020-09-07", "ListTagResources") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListTagResourcesRequest::~ListTagResourcesRequest() {}
+

+ 70 - 0
config/src/model/ListTagResourcesResult.cc

@@ -0,0 +1,70 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/ListTagResourcesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+ListTagResourcesResult::ListTagResourcesResult() :
+	ServiceResult()
+{}
+
+ListTagResourcesResult::ListTagResourcesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListTagResourcesResult::~ListTagResourcesResult()
+{}
+
+void ListTagResourcesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allTagResourcesNode = value["TagResources"]["TagResource"];
+	for (auto valueTagResourcesTagResource : allTagResourcesNode)
+	{
+		TagResource tagResourcesObject;
+		if(!valueTagResourcesTagResource["ResourceType"].isNull())
+			tagResourcesObject.resourceType = valueTagResourcesTagResource["ResourceType"].asString();
+		if(!valueTagResourcesTagResource["TagValue"].isNull())
+			tagResourcesObject.tagValue = valueTagResourcesTagResource["TagValue"].asString();
+		if(!valueTagResourcesTagResource["ResourceId"].isNull())
+			tagResourcesObject.resourceId = valueTagResourcesTagResource["ResourceId"].asString();
+		if(!valueTagResourcesTagResource["TagKey"].isNull())
+			tagResourcesObject.tagKey = valueTagResourcesTagResource["TagKey"].asString();
+		tagResources_.push_back(tagResourcesObject);
+	}
+	if(!value["NextToken"].isNull())
+		nextToken_ = value["NextToken"].asString();
+
+}
+
+std::string ListTagResourcesResult::getNextToken()const
+{
+	return nextToken_;
+}
+
+std::vector<ListTagResourcesResult::TagResource> ListTagResourcesResult::getTagResources()const
+{
+	return tagResources_;
+}
+

+ 27 - 0
config/src/model/TagResourcesRequest.cc

@@ -0,0 +1,27 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/TagResourcesRequest.h>
+
+using AlibabaCloud::Config::Model::TagResourcesRequest;
+
+TagResourcesRequest::TagResourcesRequest()
+    : RpcServiceRequest("config", "2020-09-07", "TagResources") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+TagResourcesRequest::~TagResourcesRequest() {}
+

+ 44 - 0
config/src/model/TagResourcesResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/TagResourcesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+TagResourcesResult::TagResourcesResult() :
+	ServiceResult()
+{}
+
+TagResourcesResult::TagResourcesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+TagResourcesResult::~TagResourcesResult()
+{}
+
+void TagResourcesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 27 - 0
config/src/model/UntagResourcesRequest.cc

@@ -0,0 +1,27 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UntagResourcesRequest.h>
+
+using AlibabaCloud::Config::Model::UntagResourcesRequest;
+
+UntagResourcesRequest::UntagResourcesRequest()
+    : RpcServiceRequest("config", "2020-09-07", "UntagResources") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UntagResourcesRequest::~UntagResourcesRequest() {}
+

+ 44 - 0
config/src/model/UntagResourcesResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UntagResourcesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+UntagResourcesResult::UntagResourcesResult() :
+	ServiceResult()
+{}
+
+UntagResourcesResult::UntagResourcesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UntagResourcesResult::~UntagResourcesResult()
+{}
+
+void UntagResourcesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 135 - 0
config/src/model/UpdateAggregateConfigDeliveryChannelRequest.cc

@@ -0,0 +1,135 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::UpdateAggregateConfigDeliveryChannelRequest;
+
+UpdateAggregateConfigDeliveryChannelRequest::UpdateAggregateConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "UpdateAggregateConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateAggregateConfigDeliveryChannelRequest::~UpdateAggregateConfigDeliveryChannelRequest() {}
+
+bool UpdateAggregateConfigDeliveryChannelRequest::getNonCompliantNotification() const {
+  return nonCompliantNotification_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setNonCompliantNotification(bool nonCompliantNotification) {
+  nonCompliantNotification_ = nonCompliantNotification;
+  setParameter(std::string("NonCompliantNotification"), nonCompliantNotification ? "true" : "false");
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+bool UpdateAggregateConfigDeliveryChannelRequest::getConfigurationSnapshot() const {
+  return configurationSnapshot_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setConfigurationSnapshot(bool configurationSnapshot) {
+  configurationSnapshot_ = configurationSnapshot;
+  setParameter(std::string("ConfigurationSnapshot"), configurationSnapshot ? "true" : "false");
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getDescription() const {
+  return description_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getAggregatorId() const {
+  return aggregatorId_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setAggregatorId(const std::string &aggregatorId) {
+  aggregatorId_ = aggregatorId;
+  setParameter(std::string("AggregatorId"), aggregatorId);
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getDeliveryChannelTargetArn() const {
+  return deliveryChannelTargetArn_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn) {
+  deliveryChannelTargetArn_ = deliveryChannelTargetArn;
+  setParameter(std::string("DeliveryChannelTargetArn"), deliveryChannelTargetArn);
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getDeliveryChannelCondition() const {
+  return deliveryChannelCondition_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setDeliveryChannelCondition(const std::string &deliveryChannelCondition) {
+  deliveryChannelCondition_ = deliveryChannelCondition;
+  setParameter(std::string("DeliveryChannelCondition"), deliveryChannelCondition);
+}
+
+bool UpdateAggregateConfigDeliveryChannelRequest::getConfigurationItemChangeNotification() const {
+  return configurationItemChangeNotification_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setConfigurationItemChangeNotification(bool configurationItemChangeNotification) {
+  configurationItemChangeNotification_ = configurationItemChangeNotification;
+  setParameter(std::string("ConfigurationItemChangeNotification"), configurationItemChangeNotification ? "true" : "false");
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getDeliveryChannelName() const {
+  return deliveryChannelName_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setDeliveryChannelName(const std::string &deliveryChannelName) {
+  deliveryChannelName_ = deliveryChannelName;
+  setParameter(std::string("DeliveryChannelName"), deliveryChannelName);
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getDeliveryChannelId() const {
+  return deliveryChannelId_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setDeliveryChannelId(const std::string &deliveryChannelId) {
+  deliveryChannelId_ = deliveryChannelId;
+  setParameter(std::string("DeliveryChannelId"), deliveryChannelId);
+}
+
+std::string UpdateAggregateConfigDeliveryChannelRequest::getOversizedDataOSSTargetArn() const {
+  return oversizedDataOSSTargetArn_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn) {
+  oversizedDataOSSTargetArn_ = oversizedDataOSSTargetArn;
+  setParameter(std::string("OversizedDataOSSTargetArn"), oversizedDataOSSTargetArn);
+}
+
+long UpdateAggregateConfigDeliveryChannelRequest::getStatus() const {
+  return status_;
+}
+
+void UpdateAggregateConfigDeliveryChannelRequest::setStatus(long status) {
+  status_ = status;
+  setParameter(std::string("Status"), std::to_string(status));
+}
+

+ 51 - 0
config/src/model/UpdateAggregateConfigDeliveryChannelResult.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UpdateAggregateConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+UpdateAggregateConfigDeliveryChannelResult::UpdateAggregateConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+UpdateAggregateConfigDeliveryChannelResult::UpdateAggregateConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateAggregateConfigDeliveryChannelResult::~UpdateAggregateConfigDeliveryChannelResult()
+{}
+
+void UpdateAggregateConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["DeliveryChannelId"].isNull())
+		deliveryChannelId_ = value["DeliveryChannelId"].asString();
+
+}
+
+std::string UpdateAggregateConfigDeliveryChannelResult::getDeliveryChannelId()const
+{
+	return deliveryChannelId_;
+}
+

+ 126 - 0
config/src/model/UpdateConfigDeliveryChannelRequest.cc

@@ -0,0 +1,126 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UpdateConfigDeliveryChannelRequest.h>
+
+using AlibabaCloud::Config::Model::UpdateConfigDeliveryChannelRequest;
+
+UpdateConfigDeliveryChannelRequest::UpdateConfigDeliveryChannelRequest()
+    : RpcServiceRequest("config", "2020-09-07", "UpdateConfigDeliveryChannel") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateConfigDeliveryChannelRequest::~UpdateConfigDeliveryChannelRequest() {}
+
+bool UpdateConfigDeliveryChannelRequest::getNonCompliantNotification() const {
+  return nonCompliantNotification_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setNonCompliantNotification(bool nonCompliantNotification) {
+  nonCompliantNotification_ = nonCompliantNotification;
+  setParameter(std::string("NonCompliantNotification"), nonCompliantNotification ? "true" : "false");
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getClientToken() const {
+  return clientToken_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setClientToken(const std::string &clientToken) {
+  clientToken_ = clientToken;
+  setParameter(std::string("ClientToken"), clientToken);
+}
+
+bool UpdateConfigDeliveryChannelRequest::getConfigurationSnapshot() const {
+  return configurationSnapshot_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setConfigurationSnapshot(bool configurationSnapshot) {
+  configurationSnapshot_ = configurationSnapshot;
+  setParameter(std::string("ConfigurationSnapshot"), configurationSnapshot ? "true" : "false");
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getDescription() const {
+  return description_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getDeliveryChannelTargetArn() const {
+  return deliveryChannelTargetArn_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setDeliveryChannelTargetArn(const std::string &deliveryChannelTargetArn) {
+  deliveryChannelTargetArn_ = deliveryChannelTargetArn;
+  setParameter(std::string("DeliveryChannelTargetArn"), deliveryChannelTargetArn);
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getDeliveryChannelCondition() const {
+  return deliveryChannelCondition_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setDeliveryChannelCondition(const std::string &deliveryChannelCondition) {
+  deliveryChannelCondition_ = deliveryChannelCondition;
+  setParameter(std::string("DeliveryChannelCondition"), deliveryChannelCondition);
+}
+
+bool UpdateConfigDeliveryChannelRequest::getConfigurationItemChangeNotification() const {
+  return configurationItemChangeNotification_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setConfigurationItemChangeNotification(bool configurationItemChangeNotification) {
+  configurationItemChangeNotification_ = configurationItemChangeNotification;
+  setParameter(std::string("ConfigurationItemChangeNotification"), configurationItemChangeNotification ? "true" : "false");
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getDeliveryChannelName() const {
+  return deliveryChannelName_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setDeliveryChannelName(const std::string &deliveryChannelName) {
+  deliveryChannelName_ = deliveryChannelName;
+  setParameter(std::string("DeliveryChannelName"), deliveryChannelName);
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getDeliveryChannelId() const {
+  return deliveryChannelId_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setDeliveryChannelId(const std::string &deliveryChannelId) {
+  deliveryChannelId_ = deliveryChannelId;
+  setParameter(std::string("DeliveryChannelId"), deliveryChannelId);
+}
+
+std::string UpdateConfigDeliveryChannelRequest::getOversizedDataOSSTargetArn() const {
+  return oversizedDataOSSTargetArn_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setOversizedDataOSSTargetArn(const std::string &oversizedDataOSSTargetArn) {
+  oversizedDataOSSTargetArn_ = oversizedDataOSSTargetArn;
+  setParameter(std::string("OversizedDataOSSTargetArn"), oversizedDataOSSTargetArn);
+}
+
+long UpdateConfigDeliveryChannelRequest::getStatus() const {
+  return status_;
+}
+
+void UpdateConfigDeliveryChannelRequest::setStatus(long status) {
+  status_ = status;
+  setParameter(std::string("Status"), std::to_string(status));
+}
+

+ 51 - 0
config/src/model/UpdateConfigDeliveryChannelResult.cc

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/config/model/UpdateConfigDeliveryChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Config;
+using namespace AlibabaCloud::Config::Model;
+
+UpdateConfigDeliveryChannelResult::UpdateConfigDeliveryChannelResult() :
+	ServiceResult()
+{}
+
+UpdateConfigDeliveryChannelResult::UpdateConfigDeliveryChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateConfigDeliveryChannelResult::~UpdateConfigDeliveryChannelResult()
+{}
+
+void UpdateConfigDeliveryChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["DeliveryChannelId"].isNull())
+		deliveryChannelId_ = value["DeliveryChannelId"].asString();
+
+}
+
+std::string UpdateConfigDeliveryChannelResult::getDeliveryChannelId()const
+{
+	return deliveryChannelId_;
+}
+