datadog_api_client 2.6.0 → 2.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +233 -14
  4. data/.generator/schemas/v2/openapi.yaml +1403 -151
  5. data/CHANGELOG.md +27 -0
  6. data/examples/v1/dashboards/CreateDashboard_1039800684.rb +37 -0
  7. data/examples/v1/dashboards/CreateDashboard_2432046716.rb +33 -0
  8. data/examples/v1/dashboards/CreateDashboard_2610827685.rb +38 -0
  9. data/examples/v1/dashboards/CreateDashboard_2843286292.rb +43 -0
  10. data/examples/v1/gcp-integration/CreateGCPIntegration.rb +1 -0
  11. data/examples/v1/gcp-integration/DeleteGCPIntegration.rb +1 -0
  12. data/examples/v1/gcp-integration/UpdateGCPIntegration.rb +1 -0
  13. data/examples/v1/monitors/ValidateExistingMonitor.rb +1 -0
  14. data/examples/v1/monitors/ValidateMonitor.rb +1 -0
  15. data/examples/v1/service-level-objectives/CreateSLO.rb +2 -2
  16. data/examples/v1/synthetics/CreateSyntheticsAPITest.rb +16 -0
  17. data/examples/v1/synthetics/CreateSyntheticsAPITest_1487281163.rb +1 -0
  18. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_397420811.rb +74 -0
  19. data/examples/v1/synthetics/UpdateBrowserTest.rb +16 -0
  20. data/examples/v2/cloudflare-integration/CreateCloudflareAccount.rb +16 -0
  21. data/examples/v2/cloudflare-integration/DeleteCloudflareAccount.rb +5 -0
  22. data/examples/v2/cloudflare-integration/GetCloudflareAccount.rb +8 -0
  23. data/examples/v2/cloudflare-integration/ListCloudflareAccounts.rb +5 -0
  24. data/examples/v2/cloudflare-integration/UpdateCloudflareAccount.rb +18 -0
  25. data/examples/v2/fastly-integration/CreateFastlyAccount.rb +16 -0
  26. data/examples/v2/fastly-integration/CreateFastlyService.rb +18 -0
  27. data/examples/v2/fastly-integration/DeleteFastlyAccount.rb +5 -0
  28. data/examples/v2/fastly-integration/DeleteFastlyService.rb +5 -0
  29. data/examples/v2/fastly-integration/GetFastlyAccount.rb +8 -0
  30. data/examples/v2/fastly-integration/GetFastlyService.rb +5 -0
  31. data/examples/v2/fastly-integration/ListFastlyAccounts.rb +5 -0
  32. data/examples/v2/fastly-integration/ListFastlyServices.rb +5 -0
  33. data/examples/v2/fastly-integration/UpdateFastlyAccount.rb +17 -0
  34. data/examples/v2/fastly-integration/UpdateFastlyService.rb +18 -0
  35. data/examples/v2/metrics/QueryScalarData.rb +5 -6
  36. data/examples/v2/metrics/QueryScalarData_3112571352.rb +35 -0
  37. data/examples/v2/metrics/QueryTimeseriesData.rb +5 -6
  38. data/examples/v2/metrics/QueryTimeseriesData_301142940.rb +35 -0
  39. data/examples/v2/monitors/CreateMonitorConfigPolicy.rb +22 -0
  40. data/examples/v2/monitors/DeleteMonitorConfigPolicy.rb +8 -0
  41. data/examples/v2/monitors/GetMonitorConfigPolicy.rb +8 -0
  42. data/examples/v2/monitors/ListMonitorConfigPolicies.rb +5 -0
  43. data/examples/v2/monitors/UpdateMonitorConfigPolicy.rb +26 -0
  44. data/examples/v2/sensitive-data-scanner/CreateScanningRule.rb +6 -0
  45. data/examples/v2/{users → service-accounts}/CreateServiceAccount.rb +1 -1
  46. data/lib/datadog_api_client/inflector.rb +61 -0
  47. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +3 -3
  48. data/lib/datadog_api_client/v1/models/gcp_account.rb +11 -1
  49. data/lib/datadog_api_client/v1/models/host_meta.rb +1 -1
  50. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +1 -1
  51. data/lib/datadog_api_client/v1/models/list_stream_compute_aggregation.rb +40 -0
  52. data/lib/datadog_api_client/v1/models/list_stream_compute_items.rb +112 -0
  53. data/lib/datadog_api_client/v1/models/list_stream_group_by_items.rb +102 -0
  54. data/lib/datadog_api_client/v1/models/list_stream_query.rb +61 -1
  55. data/lib/datadog_api_client/v1/models/list_stream_source.rb +2 -0
  56. data/lib/datadog_api_client/v1/models/metrics_query_metadata.rb +3 -2
  57. data/lib/datadog_api_client/v1/models/monitor_options.rb +11 -1
  58. data/lib/datadog_api_client/v1/models/monitor_options_notification_presets.rb +29 -0
  59. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +2 -2
  60. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +13 -13
  61. data/lib/datadog_api_client/v1/models/run_workflow_widget_definition.rb +187 -0
  62. data/lib/datadog_api_client/v1/models/run_workflow_widget_definition_type.rb +26 -0
  63. data/lib/datadog_api_client/v1/models/run_workflow_widget_input.rb +123 -0
  64. data/lib/datadog_api_client/v1/models/synthetics_config_variable.rb +1 -1
  65. data/lib/datadog_api_client/v1/models/synthetics_test_options.rb +21 -1
  66. data/lib/datadog_api_client/v1/models/synthetics_test_options_http_version.rb +28 -0
  67. data/lib/datadog_api_client/v1/models/synthetics_test_options_scheduling.rb +103 -0
  68. data/lib/datadog_api_client/v1/models/synthetics_test_options_scheduling_timeframe.rb +126 -0
  69. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -0
  70. data/lib/datadog_api_client/v2/api/cloudflare_integration_api.rb +355 -0
  71. data/lib/datadog_api_client/v2/api/fastly_integration_api.rb +709 -0
  72. data/lib/datadog_api_client/v2/api/metrics_api.rb +7 -6
  73. data/lib/datadog_api_client/v2/api/monitors_api.rb +355 -0
  74. data/lib/datadog_api_client/v2/api/service_accounts_api.rb +67 -0
  75. data/lib/datadog_api_client/v2/api/users_api.rb +0 -67
  76. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request.rb +102 -0
  77. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_attributes.rb +133 -0
  78. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_data.rb +123 -0
  79. data/lib/datadog_api_client/v2/models/cloudflare_account_response.rb +91 -0
  80. data/lib/datadog_api_client/v2/models/cloudflare_account_response_attributes.rb +112 -0
  81. data/lib/datadog_api_client/v2/models/cloudflare_account_response_data.rb +144 -0
  82. data/lib/datadog_api_client/v2/models/cloudflare_account_type.rb +26 -0
  83. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request.rb +102 -0
  84. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_attributes.rb +112 -0
  85. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_data.rb +101 -0
  86. data/lib/datadog_api_client/v2/models/cloudflare_accounts_response.rb +93 -0
  87. data/lib/datadog_api_client/v2/models/cost_by_org_attributes.rb +11 -1
  88. data/lib/datadog_api_client/v2/models/data_scalar_column.rb +123 -0
  89. data/lib/datadog_api_client/v2/models/fastly_accoun_response_attributes.rb +114 -0
  90. data/lib/datadog_api_client/v2/models/fastly_account_create_request.rb +102 -0
  91. data/lib/datadog_api_client/v2/models/fastly_account_create_request_attributes.rb +135 -0
  92. data/lib/datadog_api_client/v2/models/fastly_account_create_request_data.rb +123 -0
  93. data/lib/datadog_api_client/v2/models/fastly_account_response.rb +91 -0
  94. data/lib/datadog_api_client/v2/models/fastly_account_response_data.rb +144 -0
  95. data/lib/datadog_api_client/v2/models/fastly_account_type.rb +26 -0
  96. data/lib/datadog_api_client/v2/models/fastly_account_update_request.rb +102 -0
  97. data/lib/datadog_api_client/v2/models/fastly_account_update_request_attributes.rb +91 -0
  98. data/lib/datadog_api_client/v2/models/fastly_account_update_request_data.rb +101 -0
  99. data/lib/datadog_api_client/v2/models/fastly_accounts_response.rb +93 -0
  100. data/lib/datadog_api_client/v2/models/fastly_service.rb +114 -0
  101. data/lib/datadog_api_client/v2/models/fastly_service_attributes.rb +93 -0
  102. data/lib/datadog_api_client/v2/models/fastly_service_data.rb +133 -0
  103. data/lib/datadog_api_client/v2/models/fastly_service_request.rb +102 -0
  104. data/lib/datadog_api_client/v2/models/fastly_service_response.rb +91 -0
  105. data/lib/datadog_api_client/v2/models/fastly_service_type.rb +26 -0
  106. data/lib/datadog_api_client/v2/models/fastly_services_response.rb +93 -0
  107. data/lib/datadog_api_client/v2/models/group_scalar_column.rb +113 -0
  108. data/lib/datadog_api_client/v2/models/monitor_config_policy_attribute_create_request.rb +123 -0
  109. data/lib/datadog_api_client/v2/models/monitor_config_policy_attribute_edit_request.rb +123 -0
  110. data/lib/datadog_api_client/v2/models/monitor_config_policy_attribute_response.rb +101 -0
  111. data/lib/datadog_api_client/v2/models/monitor_config_policy_create_data.rb +123 -0
  112. data/lib/datadog_api_client/v2/models/monitor_config_policy_create_request.rb +102 -0
  113. data/lib/datadog_api_client/v2/models/monitor_config_policy_edit_data.rb +144 -0
  114. data/lib/datadog_api_client/v2/models/monitor_config_policy_edit_request.rb +102 -0
  115. data/lib/datadog_api_client/v2/models/monitor_config_policy_list_response.rb +93 -0
  116. data/lib/datadog_api_client/v2/models/monitor_config_policy_policy.rb +62 -0
  117. data/lib/datadog_api_client/v2/models/monitor_config_policy_policy_create_request.rb +62 -0
  118. data/lib/datadog_api_client/v2/models/monitor_config_policy_resource_type.rb +26 -0
  119. data/lib/datadog_api_client/v2/models/monitor_config_policy_response.rb +91 -0
  120. data/lib/datadog_api_client/v2/models/monitor_config_policy_response_data.rb +111 -0
  121. data/lib/datadog_api_client/v2/models/monitor_config_policy_tag_policy.rb +124 -0
  122. data/lib/datadog_api_client/v2/models/monitor_config_policy_tag_policy_create_request.rb +150 -0
  123. data/lib/datadog_api_client/v2/models/monitor_config_policy_type.rb +26 -0
  124. data/lib/datadog_api_client/v2/models/scalar_column.rb +35 -77
  125. data/lib/datadog_api_client/v2/models/scalar_formula_response_atrributes.rb +4 -16
  126. data/lib/datadog_api_client/v2/models/scalar_meta.rb +96 -0
  127. data/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb +1 -0
  128. data/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb +1 -0
  129. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_response.rb +11 -1
  130. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +11 -1
  131. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_rule_attributes.rb +22 -9
  132. data/lib/datadog_api_client/v2/models/timeseries_response_series.rb +4 -1
  133. data/lib/datadog_api_client/version.rb +1 -1
  134. metadata +91 -3
@@ -1,4 +1,4 @@
1
- # Timeseries cross product query returns "OK" response
1
+ # Query timeseries data across multiple products returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
@@ -11,23 +11,22 @@ body = DatadogAPIClient::V2::TimeseriesFormulaQueryRequest.new({
11
11
  attributes: DatadogAPIClient::V2::TimeseriesFormulaRequestAttributes.new({
12
12
  formulas: [
13
13
  DatadogAPIClient::V2::QueryFormula.new({
14
- formula: "a",
14
+ formula: "a+b",
15
15
  limit: DatadogAPIClient::V2::FormulaLimit.new({
16
16
  count: 10,
17
17
  order: DatadogAPIClient::V2::QuerySortOrder::DESC,
18
18
  }),
19
19
  }),
20
20
  ],
21
- from: 1671612804000,
21
+ from: 1568899800000,
22
22
  interval: 5000,
23
23
  queries: [
24
24
  DatadogAPIClient::V2::MetricsTimeseriesQuery.new({
25
25
  data_source: DatadogAPIClient::V2::MetricsDataSource::METRICS,
26
- query: "avg:system.cpu.user{*}",
27
- name: "a",
26
+ query: "avg:system.cpu.user{*} by {env}",
28
27
  }),
29
28
  ],
30
- to: 1671620004000,
29
+ to: 1568923200000,
31
30
  }),
32
31
  type: DatadogAPIClient::V2::TimeseriesFormulaRequestType::TIMESERIES_REQUEST,
33
32
  }),
@@ -0,0 +1,35 @@
1
+ # Timeseries cross product query returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.query_timeseries_data".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
+
9
+ body = DatadogAPIClient::V2::TimeseriesFormulaQueryRequest.new({
10
+ data: DatadogAPIClient::V2::TimeseriesFormulaRequest.new({
11
+ attributes: DatadogAPIClient::V2::TimeseriesFormulaRequestAttributes.new({
12
+ formulas: [
13
+ DatadogAPIClient::V2::QueryFormula.new({
14
+ formula: "a",
15
+ limit: DatadogAPIClient::V2::FormulaLimit.new({
16
+ count: 10,
17
+ order: DatadogAPIClient::V2::QuerySortOrder::DESC,
18
+ }),
19
+ }),
20
+ ],
21
+ from: 1671612804000,
22
+ interval: 5000,
23
+ queries: [
24
+ DatadogAPIClient::V2::MetricsTimeseriesQuery.new({
25
+ data_source: DatadogAPIClient::V2::MetricsDataSource::METRICS,
26
+ query: "avg:system.cpu.user{*}",
27
+ name: "a",
28
+ }),
29
+ ],
30
+ to: 1671620004000,
31
+ }),
32
+ type: DatadogAPIClient::V2::TimeseriesFormulaRequestType::TIMESERIES_REQUEST,
33
+ }),
34
+ })
35
+ p api_instance.query_timeseries_data(body)
@@ -0,0 +1,22 @@
1
+ # Create a monitor configuration policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
5
+
6
+ body = DatadogAPIClient::V2::MonitorConfigPolicyCreateRequest.new({
7
+ data: DatadogAPIClient::V2::MonitorConfigPolicyCreateData.new({
8
+ attributes: DatadogAPIClient::V2::MonitorConfigPolicyAttributeCreateRequest.new({
9
+ policy_type: DatadogAPIClient::V2::MonitorConfigPolicyType::TAG,
10
+ policy: DatadogAPIClient::V2::MonitorConfigPolicyTagPolicyCreateRequest.new({
11
+ tag_key: "datacenter",
12
+ tag_key_required: true,
13
+ valid_tag_values: [
14
+ "prod",
15
+ "staging",
16
+ ],
17
+ }),
18
+ }),
19
+ type: DatadogAPIClient::V2::MonitorConfigPolicyResourceType::MONITOR_CONFIG_POLICY,
20
+ }),
21
+ })
22
+ p api_instance.create_monitor_config_policy(body)
@@ -0,0 +1,8 @@
1
+ # Delete a monitor configuration policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
5
+
6
+ # there is a valid "monitor_configuration_policy" in the system
7
+ MONITOR_CONFIGURATION_POLICY_DATA_ID = ENV["MONITOR_CONFIGURATION_POLICY_DATA_ID"]
8
+ api_instance.delete_monitor_config_policy(MONITOR_CONFIGURATION_POLICY_DATA_ID)
@@ -0,0 +1,8 @@
1
+ # Get a monitor configuration policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
5
+
6
+ # there is a valid "monitor_configuration_policy" in the system
7
+ MONITOR_CONFIGURATION_POLICY_DATA_ID = ENV["MONITOR_CONFIGURATION_POLICY_DATA_ID"]
8
+ p api_instance.get_monitor_config_policy(MONITOR_CONFIGURATION_POLICY_DATA_ID)
@@ -0,0 +1,5 @@
1
+ # Get all monitor configuration policies returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
5
+ p api_instance.list_monitor_config_policies()
@@ -0,0 +1,26 @@
1
+ # Edit a monitor configuration policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
5
+
6
+ # there is a valid "monitor_configuration_policy" in the system
7
+ MONITOR_CONFIGURATION_POLICY_DATA_ID = ENV["MONITOR_CONFIGURATION_POLICY_DATA_ID"]
8
+
9
+ body = DatadogAPIClient::V2::MonitorConfigPolicyEditRequest.new({
10
+ data: DatadogAPIClient::V2::MonitorConfigPolicyEditData.new({
11
+ attributes: DatadogAPIClient::V2::MonitorConfigPolicyAttributeEditRequest.new({
12
+ policy: DatadogAPIClient::V2::MonitorConfigPolicyTagPolicy.new({
13
+ tag_key: "datacenter",
14
+ tag_key_required: true,
15
+ valid_tag_values: [
16
+ "prod",
17
+ "staging",
18
+ ],
19
+ }),
20
+ policy_type: DatadogAPIClient::V2::MonitorConfigPolicyType::TAG,
21
+ }),
22
+ id: MONITOR_CONFIGURATION_POLICY_DATA_ID,
23
+ type: DatadogAPIClient::V2::MonitorConfigPolicyResourceType::MONITOR_CONFIG_POLICY,
24
+ }),
25
+ })
26
+ p api_instance.update_monitor_config_policy(MONITOR_CONFIGURATION_POLICY_DATA_ID, body)
@@ -13,6 +13,12 @@ body = DatadogAPIClient::V2::SensitiveDataScannerRuleCreateRequest.new({
13
13
  attributes: DatadogAPIClient::V2::SensitiveDataScannerRuleAttributes.new({
14
14
  name: "Example-Create_Scanning_Rule_returns_OK_response",
15
15
  pattern: "pattern",
16
+ namespaces: [
17
+ "admin",
18
+ ],
19
+ excluded_namespaces: [
20
+ "admin.name",
21
+ ],
16
22
  text_replacement: DatadogAPIClient::V2::SensitiveDataScannerTextReplacement.new({
17
23
  type: DatadogAPIClient::V2::SensitiveDataScannerTextReplacementType::NONE,
18
24
  }),
@@ -1,7 +1,7 @@
1
1
  # Create a service account returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- api_instance = DatadogAPIClient::V2::UsersAPI.new
4
+ api_instance = DatadogAPIClient::V2::ServiceAccountsAPI.new
5
5
 
6
6
  # there is a valid "role" in the system
7
7
  ROLE_DATA_ID = ENV["ROLE_DATA_ID"]
@@ -181,6 +181,9 @@ module DatadogAPIClient
181
181
  "v1.ip_ranges" => "IPRanges",
182
182
  "v1.list_stream_column" => "ListStreamColumn",
183
183
  "v1.list_stream_column_width" => "ListStreamColumnWidth",
184
+ "v1.list_stream_compute_aggregation" => "ListStreamComputeAggregation",
185
+ "v1.list_stream_compute_items" => "ListStreamComputeItems",
186
+ "v1.list_stream_group_by_items" => "ListStreamGroupByItems",
184
187
  "v1.list_stream_query" => "ListStreamQuery",
185
188
  "v1.list_stream_response_format" => "ListStreamResponseFormat",
186
189
  "v1.list_stream_source" => "ListStreamSource",
@@ -274,6 +277,7 @@ module DatadogAPIClient
274
277
  "v1.monitor_group_search_result" => "MonitorGroupSearchResult",
275
278
  "v1.monitor_options" => "MonitorOptions",
276
279
  "v1.monitor_options_aggregation" => "MonitorOptionsAggregation",
280
+ "v1.monitor_options_notification_presets" => "MonitorOptionsNotificationPresets",
277
281
  "v1.monitor_options_scheduling_options" => "MonitorOptionsSchedulingOptions",
278
282
  "v1.monitor_options_scheduling_options_evaluation_window" => "MonitorOptionsSchedulingOptionsEvaluationWindow",
279
283
  "v1.monitor_overall_states" => "MonitorOverallStates",
@@ -366,6 +370,9 @@ module DatadogAPIClient
366
370
  "v1.query_value_widget_request" => "QueryValueWidgetRequest",
367
371
  "v1.reference_table_logs_lookup_processor" => "ReferenceTableLogsLookupProcessor",
368
372
  "v1.response_meta_attributes" => "ResponseMetaAttributes",
373
+ "v1.run_workflow_widget_definition" => "RunWorkflowWidgetDefinition",
374
+ "v1.run_workflow_widget_definition_type" => "RunWorkflowWidgetDefinitionType",
375
+ "v1.run_workflow_widget_input" => "RunWorkflowWidgetInput",
369
376
  "v1.scatterplot_dimension" => "ScatterplotDimension",
370
377
  "v1.scatter_plot_request" => "ScatterPlotRequest",
371
378
  "v1.scatterplot_table_request" => "ScatterplotTableRequest",
@@ -571,8 +578,11 @@ module DatadogAPIClient
571
578
  "v1.synthetics_test_execution_rule" => "SyntheticsTestExecutionRule",
572
579
  "v1.synthetics_test_monitor_status" => "SyntheticsTestMonitorStatus",
573
580
  "v1.synthetics_test_options" => "SyntheticsTestOptions",
581
+ "v1.synthetics_test_options_http_version" => "SyntheticsTestOptionsHTTPVersion",
574
582
  "v1.synthetics_test_options_monitor_options" => "SyntheticsTestOptionsMonitorOptions",
575
583
  "v1.synthetics_test_options_retry" => "SyntheticsTestOptionsRetry",
584
+ "v1.synthetics_test_options_scheduling" => "SyntheticsTestOptionsScheduling",
585
+ "v1.synthetics_test_options_scheduling_timeframe" => "SyntheticsTestOptionsSchedulingTimeframe",
576
586
  "v1.synthetics_test_pause_status" => "SyntheticsTestPauseStatus",
577
587
  "v1.synthetics_test_process_status" => "SyntheticsTestProcessStatus",
578
588
  "v1.synthetics_test_request" => "SyntheticsTestRequest",
@@ -867,6 +877,17 @@ module DatadogAPIClient
867
877
  "v2.cloud_configuration_rule_create_payload" => "CloudConfigurationRuleCreatePayload",
868
878
  "v2.cloud_configuration_rule_options" => "CloudConfigurationRuleOptions",
869
879
  "v2.cloud_configuration_rule_type" => "CloudConfigurationRuleType",
880
+ "v2.cloudflare_account_create_request" => "CloudflareAccountCreateRequest",
881
+ "v2.cloudflare_account_create_request_attributes" => "CloudflareAccountCreateRequestAttributes",
882
+ "v2.cloudflare_account_create_request_data" => "CloudflareAccountCreateRequestData",
883
+ "v2.cloudflare_account_response" => "CloudflareAccountResponse",
884
+ "v2.cloudflare_account_response_attributes" => "CloudflareAccountResponseAttributes",
885
+ "v2.cloudflare_account_response_data" => "CloudflareAccountResponseData",
886
+ "v2.cloudflare_accounts_response" => "CloudflareAccountsResponse",
887
+ "v2.cloudflare_account_type" => "CloudflareAccountType",
888
+ "v2.cloudflare_account_update_request" => "CloudflareAccountUpdateRequest",
889
+ "v2.cloudflare_account_update_request_attributes" => "CloudflareAccountUpdateRequestAttributes",
890
+ "v2.cloudflare_account_update_request_data" => "CloudflareAccountUpdateRequestData",
870
891
  "v2.cloud_workload_security_agent_rule_attributes" => "CloudWorkloadSecurityAgentRuleAttributes",
871
892
  "v2.cloud_workload_security_agent_rule_create_attributes" => "CloudWorkloadSecurityAgentRuleCreateAttributes",
872
893
  "v2.cloud_workload_security_agent_rule_create_data" => "CloudWorkloadSecurityAgentRuleCreateData",
@@ -917,6 +938,7 @@ module DatadogAPIClient
917
938
  "v2.dashboard_list_update_items_request" => "DashboardListUpdateItemsRequest",
918
939
  "v2.dashboard_list_update_items_response" => "DashboardListUpdateItemsResponse",
919
940
  "v2.dashboard_type" => "DashboardType",
941
+ "v2.data_scalar_column" => "DataScalarColumn",
920
942
  "v2.event" => "Event",
921
943
  "v2.event_attributes" => "EventAttributes",
922
944
  "v2.event_priority" => "EventPriority",
@@ -943,11 +965,30 @@ module DatadogAPIClient
943
965
  "v2.events_timeseries_query" => "EventsTimeseriesQuery",
944
966
  "v2.events_warning" => "EventsWarning",
945
967
  "v2.event_type" => "EventType",
968
+ "v2.fastly_accoun_response_attributes" => "FastlyAccounResponseAttributes",
969
+ "v2.fastly_account_create_request" => "FastlyAccountCreateRequest",
970
+ "v2.fastly_account_create_request_attributes" => "FastlyAccountCreateRequestAttributes",
971
+ "v2.fastly_account_create_request_data" => "FastlyAccountCreateRequestData",
972
+ "v2.fastly_account_response" => "FastlyAccountResponse",
973
+ "v2.fastly_account_response_data" => "FastlyAccountResponseData",
974
+ "v2.fastly_accounts_response" => "FastlyAccountsResponse",
975
+ "v2.fastly_account_type" => "FastlyAccountType",
976
+ "v2.fastly_account_update_request" => "FastlyAccountUpdateRequest",
977
+ "v2.fastly_account_update_request_attributes" => "FastlyAccountUpdateRequestAttributes",
978
+ "v2.fastly_account_update_request_data" => "FastlyAccountUpdateRequestData",
979
+ "v2.fastly_service" => "FastlyService",
980
+ "v2.fastly_service_attributes" => "FastlyServiceAttributes",
981
+ "v2.fastly_service_data" => "FastlyServiceData",
982
+ "v2.fastly_service_request" => "FastlyServiceRequest",
983
+ "v2.fastly_service_response" => "FastlyServiceResponse",
984
+ "v2.fastly_services_response" => "FastlyServicesResponse",
985
+ "v2.fastly_service_type" => "FastlyServiceType",
946
986
  "v2.formula_limit" => "FormulaLimit",
947
987
  "v2.full_api_key" => "FullAPIKey",
948
988
  "v2.full_api_key_attributes" => "FullAPIKeyAttributes",
949
989
  "v2.full_application_key" => "FullApplicationKey",
950
990
  "v2.full_application_key_attributes" => "FullApplicationKeyAttributes",
991
+ "v2.group_scalar_column" => "GroupScalarColumn",
951
992
  "v2.hourly_usage" => "HourlyUsage",
952
993
  "v2.hourly_usage_attributes" => "HourlyUsageAttributes",
953
994
  "v2.hourly_usage_measurement" => "HourlyUsageMeasurement",
@@ -1182,6 +1223,22 @@ module DatadogAPIClient
1182
1223
  "v2.metric_type" => "MetricType",
1183
1224
  "v2.metric_volumes" => "MetricVolumes",
1184
1225
  "v2.metric_volumes_response" => "MetricVolumesResponse",
1226
+ "v2.monitor_config_policy_attribute_create_request" => "MonitorConfigPolicyAttributeCreateRequest",
1227
+ "v2.monitor_config_policy_attribute_edit_request" => "MonitorConfigPolicyAttributeEditRequest",
1228
+ "v2.monitor_config_policy_attribute_response" => "MonitorConfigPolicyAttributeResponse",
1229
+ "v2.monitor_config_policy_create_data" => "MonitorConfigPolicyCreateData",
1230
+ "v2.monitor_config_policy_create_request" => "MonitorConfigPolicyCreateRequest",
1231
+ "v2.monitor_config_policy_edit_data" => "MonitorConfigPolicyEditData",
1232
+ "v2.monitor_config_policy_edit_request" => "MonitorConfigPolicyEditRequest",
1233
+ "v2.monitor_config_policy_list_response" => "MonitorConfigPolicyListResponse",
1234
+ "v2.monitor_config_policy_policy" => "MonitorConfigPolicyPolicy",
1235
+ "v2.monitor_config_policy_policy_create_request" => "MonitorConfigPolicyPolicyCreateRequest",
1236
+ "v2.monitor_config_policy_resource_type" => "MonitorConfigPolicyResourceType",
1237
+ "v2.monitor_config_policy_response" => "MonitorConfigPolicyResponse",
1238
+ "v2.monitor_config_policy_response_data" => "MonitorConfigPolicyResponseData",
1239
+ "v2.monitor_config_policy_tag_policy" => "MonitorConfigPolicyTagPolicy",
1240
+ "v2.monitor_config_policy_tag_policy_create_request" => "MonitorConfigPolicyTagPolicyCreateRequest",
1241
+ "v2.monitor_config_policy_type" => "MonitorConfigPolicyType",
1185
1242
  "v2.monitor_type" => "MonitorType",
1186
1243
  "v2.nullable_relationship_to_user" => "NullableRelationshipToUser",
1187
1244
  "v2.nullable_relationship_to_user_data" => "NullableRelationshipToUserData",
@@ -1317,6 +1374,7 @@ module DatadogAPIClient
1317
1374
  "v2.scalar_formula_request_type" => "ScalarFormulaRequestType",
1318
1375
  "v2.scalar_formula_response_atrributes" => "ScalarFormulaResponseAtrributes",
1319
1376
  "v2.scalar_formula_response_type" => "ScalarFormulaResponseType",
1377
+ "v2.scalar_meta" => "ScalarMeta",
1320
1378
  "v2.scalar_query" => "ScalarQuery",
1321
1379
  "v2.scalar_response" => "ScalarResponse",
1322
1380
  "v2.security_filter" => "SecurityFilter",
@@ -1557,9 +1615,11 @@ module DatadogAPIClient
1557
1615
  "v2.ci_visibility_pipelines_api" => "CIVisibilityPipelinesAPI",
1558
1616
  "v2.ci_visibility_tests_api" => "CIVisibilityTestsAPI",
1559
1617
  "v2.cloud_workload_security_api" => "CloudWorkloadSecurityAPI",
1618
+ "v2.cloudflare_integration_api" => "CloudflareIntegrationAPI",
1560
1619
  "v2.confluent_cloud_api" => "ConfluentCloudAPI",
1561
1620
  "v2.dashboard_lists_api" => "DashboardListsAPI",
1562
1621
  "v2.events_api" => "EventsAPI",
1622
+ "v2.fastly_integration_api" => "FastlyIntegrationAPI",
1563
1623
  "v2.incident_services_api" => "IncidentServicesAPI",
1564
1624
  "v2.incident_teams_api" => "IncidentTeamsAPI",
1565
1625
  "v2.incidents_api" => "IncidentsAPI",
@@ -1568,6 +1628,7 @@ module DatadogAPIClient
1568
1628
  "v2.logs_archives_api" => "LogsArchivesAPI",
1569
1629
  "v2.logs_metrics_api" => "LogsMetricsAPI",
1570
1630
  "v2.metrics_api" => "MetricsAPI",
1631
+ "v2.monitors_api" => "MonitorsAPI",
1571
1632
  "v2.opsgenie_integration_api" => "OpsgenieIntegrationAPI",
1572
1633
  "v2.organizations_api" => "OrganizationsAPI",
1573
1634
  "v2.processes_api" => "ProcessesAPI",
@@ -152,7 +152,7 @@ module DatadogAPIClient::V1
152
152
  fail ArgumentError, "Missing the required parameter 'usage_type' when calling UsageMeteringAPI.get_hourly_usage_attribution"
153
153
  end
154
154
  # verify enum value
155
- allowable_values = ['api_usage', 'apm_fargate_usage', 'apm_host_usage', 'appsec_fargate_usage', 'appsec_usage', 'browser_usage', 'container_usage', 'cspm_containers_usage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'cws_containers_usage', 'cws_hosts_usage', 'dbm_hosts_usage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_ingested_logs_usage', 'estimated_indexed_spans_usage', 'estimated_ingested_spans_usage', 'fargate_usage', 'functions_usage', 'infra_host_usage', 'invocations_usage', 'npm_host_usage', 'profiled_container_usage', 'profiled_host_usage', 'snmp_usage', 'estimated_rum_sessions_usage', 'cont_usage']
155
+ allowable_values = ['api_usage', 'apm_fargate_usage', 'apm_host_usage', 'appsec_fargate_usage', 'appsec_usage', 'browser_usage', 'container_excl_agent_usage', 'container_usage', 'cspm_containers_usage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'cws_containers_usage', 'cws_hosts_usage', 'dbm_hosts_usage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_ingested_logs_usage', 'estimated_indexed_spans_usage', 'estimated_ingested_spans_usage', 'fargate_usage', 'functions_usage', 'infra_host_usage', 'invocations_usage', 'npm_host_usage', 'profiled_container_usage', 'profiled_host_usage', 'snmp_usage', 'estimated_rum_sessions_usage']
156
156
  if @api_client.config.client_side_validation && !allowable_values.include?(usage_type)
157
157
  fail ArgumentError, "invalid value for \"usage_type\", must be one of #{allowable_values}"
158
158
  end
@@ -472,7 +472,7 @@ module DatadogAPIClient::V1
472
472
  fail ArgumentError, "Missing the required parameter 'fields' when calling UsageMeteringAPI.get_monthly_usage_attribution"
473
473
  end
474
474
  # verify enum value
475
- allowable_values = ['api_usage', 'api_percentage', 'apm_fargate_usage', 'apm_fargate_percentage', 'appsec_fargate_usage', 'appsec_fargate_percentage', 'apm_host_usage', 'apm_host_percentage', 'appsec_usage', 'appsec_percentage', 'browser_usage', 'browser_percentage', 'container_usage', 'container_percentage', 'cspm_containers_percentage', 'cspm_containers_usage', 'cspm_hosts_percentage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'custom_timeseries_percentage', 'cws_containers_percentage', 'cws_containers_usage', 'cws_hosts_percentage', 'cws_hosts_usage', 'dbm_hosts_percentage', 'dbm_hosts_usage', 'dbm_queries_percentage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_indexed_logs_percentage', 'estimated_ingested_logs_usage', 'estimated_ingested_logs_percentage', 'estimated_indexed_spans_usage', 'estimated_indexed_spans_percentage', 'estimated_ingested_spans_usage', 'estimated_ingested_spans_percentage', 'fargate_usage', 'fargate_percentage', 'functions_usage', 'functions_percentage', 'infra_host_usage', 'infra_host_percentage', 'invocations_usage', 'invocations_percentage', 'npm_host_usage', 'npm_host_percentage', 'profiled_container_usage', 'profiled_container_percentage', 'profiled_host_usage', 'profiled_host_percentage', 'snmp_usage', 'snmp_percentage', 'estimated_rum_sessions_usage', 'estimated_rum_sessions_percentage', 'cont_usage', 'cont_percentage', '*']
475
+ allowable_values = ['api_usage', 'api_percentage', 'apm_fargate_usage', 'apm_fargate_percentage', 'appsec_fargate_usage', 'appsec_fargate_percentage', 'apm_host_usage', 'apm_host_percentage', 'appsec_usage', 'appsec_percentage', 'browser_usage', 'browser_percentage', 'container_excl_agent_usage', 'container_excl_agent_percentage', 'container_usage', 'container_percentage', 'cspm_containers_percentage', 'cspm_containers_usage', 'cspm_hosts_percentage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'custom_timeseries_percentage', 'cws_containers_percentage', 'cws_containers_usage', 'cws_hosts_percentage', 'cws_hosts_usage', 'dbm_hosts_percentage', 'dbm_hosts_usage', 'dbm_queries_percentage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_indexed_logs_percentage', 'estimated_ingested_logs_usage', 'estimated_ingested_logs_percentage', 'estimated_indexed_spans_usage', 'estimated_indexed_spans_percentage', 'estimated_ingested_spans_usage', 'estimated_ingested_spans_percentage', 'fargate_usage', 'fargate_percentage', 'functions_usage', 'functions_percentage', 'infra_host_usage', 'infra_host_percentage', 'invocations_usage', 'invocations_percentage', 'npm_host_usage', 'npm_host_percentage', 'profiled_container_usage', 'profiled_container_percentage', 'profiled_host_usage', 'profiled_host_percentage', 'snmp_usage', 'snmp_percentage', 'estimated_rum_sessions_usage', 'estimated_rum_sessions_percentage', '*']
476
476
  if @api_client.config.client_side_validation && !allowable_values.include?(fields)
477
477
  fail ArgumentError, "invalid value for \"fields\", must be one of #{allowable_values}"
478
478
  end
@@ -480,7 +480,7 @@ module DatadogAPIClient::V1
480
480
  if @api_client.config.client_side_validation && opts[:'sort_direction'] && !allowable_values.include?(opts[:'sort_direction'])
481
481
  fail ArgumentError, "invalid value for \"sort_direction\", must be one of #{allowable_values}"
482
482
  end
483
- allowable_values = ['api_usage', 'api_percentage', 'apm_fargate_usage', 'apm_fargate_percentage', 'appsec_fargate_usage', 'appsec_fargate_percentage', 'apm_host_usage', 'apm_host_percentage', 'appsec_usage', 'appsec_percentage', 'browser_usage', 'browser_percentage', 'container_usage', 'container_percentage', 'cspm_containers_percentage', 'cspm_containers_usage', 'cspm_hosts_percentage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'custom_timeseries_percentage', 'cws_containers_percentage', 'cws_containers_usage', 'cws_hosts_percentage', 'cws_hosts_usage', 'dbm_hosts_percentage', 'dbm_hosts_usage', 'dbm_queries_percentage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_indexed_logs_percentage', 'estimated_ingested_logs_usage', 'estimated_ingested_logs_percentage', 'estimated_indexed_spans_usage', 'estimated_indexed_spans_percentage', 'estimated_ingested_spans_usage', 'estimated_ingested_spans_percentage', 'fargate_usage', 'fargate_percentage', 'functions_usage', 'functions_percentage', 'infra_host_usage', 'infra_host_percentage', 'invocations_usage', 'invocations_percentage', 'npm_host_usage', 'npm_host_percentage', 'profiled_container_usage', 'profiled_container_percentage', 'profiled_host_usage', 'profiled_host_percentage', 'snmp_usage', 'snmp_percentage', 'estimated_rum_sessions_usage', 'estimated_rum_sessions_percentage', 'cont_usage', 'cont_percentage', '*']
483
+ allowable_values = ['api_usage', 'api_percentage', 'apm_fargate_usage', 'apm_fargate_percentage', 'appsec_fargate_usage', 'appsec_fargate_percentage', 'apm_host_usage', 'apm_host_percentage', 'appsec_usage', 'appsec_percentage', 'browser_usage', 'browser_percentage', 'container_excl_agent_usage', 'container_excl_agent_percentage', 'container_usage', 'container_percentage', 'cspm_containers_percentage', 'cspm_containers_usage', 'cspm_hosts_percentage', 'cspm_hosts_usage', 'custom_timeseries_usage', 'custom_timeseries_percentage', 'cws_containers_percentage', 'cws_containers_usage', 'cws_hosts_percentage', 'cws_hosts_usage', 'dbm_hosts_percentage', 'dbm_hosts_usage', 'dbm_queries_percentage', 'dbm_queries_usage', 'estimated_indexed_logs_usage', 'estimated_indexed_logs_percentage', 'estimated_ingested_logs_usage', 'estimated_ingested_logs_percentage', 'estimated_indexed_spans_usage', 'estimated_indexed_spans_percentage', 'estimated_ingested_spans_usage', 'estimated_ingested_spans_percentage', 'fargate_usage', 'fargate_percentage', 'functions_usage', 'functions_percentage', 'infra_host_usage', 'infra_host_percentage', 'invocations_usage', 'invocations_percentage', 'npm_host_usage', 'npm_host_percentage', 'profiled_container_usage', 'profiled_container_percentage', 'profiled_host_usage', 'profiled_host_percentage', 'snmp_usage', 'snmp_percentage', 'estimated_rum_sessions_usage', 'estimated_rum_sessions_percentage', '*']
484
484
  if @api_client.config.client_side_validation && opts[:'sort_name'] && !allowable_values.include?(opts[:'sort_name'])
485
485
  fail ArgumentError, "invalid value for \"sort_name\", must be one of #{allowable_values}"
486
486
  end
@@ -51,6 +51,9 @@ module DatadogAPIClient::V1
51
51
  # Only hosts that match one of the defined tags are imported into Datadog.
52
52
  attr_accessor :host_filters
53
53
 
54
+ # When enabled, Datadog performs configuration checks across your Google Cloud environment by continuously scanning every resource.
55
+ attr_accessor :is_cspm_enabled
56
+
54
57
  # Your private key name found in your JSON service account key.
55
58
  attr_accessor :private_key
56
59
 
@@ -78,6 +81,7 @@ module DatadogAPIClient::V1
78
81
  :'client_x509_cert_url' => :'client_x509_cert_url',
79
82
  :'errors' => :'errors',
80
83
  :'host_filters' => :'host_filters',
84
+ :'is_cspm_enabled' => :'is_cspm_enabled',
81
85
  :'private_key' => :'private_key',
82
86
  :'private_key_id' => :'private_key_id',
83
87
  :'project_id' => :'project_id',
@@ -98,6 +102,7 @@ module DatadogAPIClient::V1
98
102
  :'client_x509_cert_url' => :'String',
99
103
  :'errors' => :'Array<String>',
100
104
  :'host_filters' => :'String',
105
+ :'is_cspm_enabled' => :'Boolean',
101
106
  :'private_key' => :'String',
102
107
  :'private_key_id' => :'String',
103
108
  :'project_id' => :'String',
@@ -156,6 +161,10 @@ module DatadogAPIClient::V1
156
161
  self.host_filters = attributes[:'host_filters']
157
162
  end
158
163
 
164
+ if attributes.key?(:'is_cspm_enabled')
165
+ self.is_cspm_enabled = attributes[:'is_cspm_enabled']
166
+ end
167
+
159
168
  if attributes.key?(:'private_key')
160
169
  self.private_key = attributes[:'private_key']
161
170
  end
@@ -198,6 +207,7 @@ module DatadogAPIClient::V1
198
207
  client_x509_cert_url == o.client_x509_cert_url &&
199
208
  errors == o.errors &&
200
209
  host_filters == o.host_filters &&
210
+ is_cspm_enabled == o.is_cspm_enabled &&
201
211
  private_key == o.private_key &&
202
212
  private_key_id == o.private_key_id &&
203
213
  project_id == o.project_id &&
@@ -209,7 +219,7 @@ module DatadogAPIClient::V1
209
219
  # @return [Integer] Hash code
210
220
  # @!visibility private
211
221
  def hash
212
- [auth_provider_x509_cert_url, auth_uri, automute, client_email, client_id, client_x509_cert_url, errors, host_filters, private_key, private_key_id, project_id, token_uri, type].hash
222
+ [auth_provider_x509_cert_url, auth_uri, automute, client_email, client_id, client_x509_cert_url, errors, host_filters, is_cspm_enabled, private_key, private_key_id, project_id, token_uri, type].hash
213
223
  end
214
224
  end
215
225
  end
@@ -102,7 +102,7 @@ module DatadogAPIClient::V1
102
102
  :'fbsd_v' => :'Array<String>',
103
103
  :'gohai' => :'String',
104
104
  :'install_method' => :'HostMetaInstallMethod',
105
- :'mac_v' => :'Array<String>',
105
+ :'mac_v' => :'Array<Object>',
106
106
  :'machine' => :'String',
107
107
  :'nix_v' => :'Array<String>',
108
108
  :'platform' => :'String',
@@ -27,6 +27,7 @@ module DatadogAPIClient::V1
27
27
  APPSEC_FARGATE_USAGE = "appsec_fargate_usage".freeze
28
28
  APPSEC_USAGE = "appsec_usage".freeze
29
29
  BROWSER_USAGE = "browser_usage".freeze
30
+ CONTAINER_EXCL_AGENT_USAGE = "container_excl_agent_usage".freeze
30
31
  CONTAINER_USAGE = "container_usage".freeze
31
32
  CSPM_CONTAINERS_USAGE = "cspm_containers_usage".freeze
32
33
  CSPM_HOSTS_USAGE = "cspm_hosts_usage".freeze
@@ -48,6 +49,5 @@ module DatadogAPIClient::V1
48
49
  PROFILED_HOST_USAGE = "profiled_host_usage".freeze
49
50
  SNMP_USAGE = "snmp_usage".freeze
50
51
  ESTIMATED_RUM_SESSIONS_USAGE = "estimated_rum_sessions_usage".freeze
51
- CONT_USAGE = "cont_usage".freeze
52
52
  end
53
53
  end
@@ -0,0 +1,40 @@
1
+ =begin
2
+ #Datadog API V1 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V1
20
+ # Aggregation value.
21
+ class ListStreamComputeAggregation
22
+ include BaseEnumModel
23
+
24
+ COUNT = "count".freeze
25
+ CARDINALITY = "cardinality".freeze
26
+ MEDIAN = "median".freeze
27
+ PC75 = "pc75".freeze
28
+ PC90 = "pc90".freeze
29
+ PC95 = "pc95".freeze
30
+ PC98 = "pc98".freeze
31
+ PC99 = "pc99".freeze
32
+ SUM = "sum".freeze
33
+ MIN = "min".freeze
34
+ MAX = "max".freeze
35
+ AVG = "avg".freeze
36
+ EARLIEST = "earliest".freeze
37
+ LATEST = "latest".freeze
38
+ MOST_FREQUENT = "most_frequent".freeze
39
+ end
40
+ end
@@ -0,0 +1,112 @@
1
+ =begin
2
+ #Datadog API V1 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V1
20
+ # List of facets and aggregations which to compute.
21
+ class ListStreamComputeItems
22
+ include BaseGenericModel
23
+
24
+ # Whether the object has unparsed attributes
25
+ # @!visibility private
26
+ attr_accessor :_unparsed
27
+
28
+ # Aggregation value.
29
+ attr_reader :aggregation
30
+
31
+ # Facet name.
32
+ attr_accessor :facet
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ # @!visibility private
36
+ def self.attribute_map
37
+ {
38
+ :'aggregation' => :'aggregation',
39
+ :'facet' => :'facet'
40
+ }
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ # @!visibility private
45
+ def self.openapi_types
46
+ {
47
+ :'aggregation' => :'ListStreamComputeAggregation',
48
+ :'facet' => :'String'
49
+ }
50
+ end
51
+
52
+ # Initializes the object
53
+ # @param attributes [Hash] Model attributes in the form of hash
54
+ # @!visibility private
55
+ def initialize(attributes = {})
56
+ if (!attributes.is_a?(Hash))
57
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V1::ListStreamComputeItems` initialize method"
58
+ end
59
+
60
+ # check to see if the attribute exists and convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!self.class.attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V1::ListStreamComputeItems`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'aggregation')
69
+ self.aggregation = attributes[:'aggregation']
70
+ end
71
+
72
+ if attributes.key?(:'facet')
73
+ self.facet = attributes[:'facet']
74
+ end
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ # @!visibility private
80
+ def valid?
81
+ return false if @aggregation.nil?
82
+ true
83
+ end
84
+
85
+ # Custom attribute writer method with validation
86
+ # @param aggregation [Object] Object to be assigned
87
+ # @!visibility private
88
+ def aggregation=(aggregation)
89
+ if aggregation.nil?
90
+ fail ArgumentError, 'invalid value for "aggregation", aggregation cannot be nil.'
91
+ end
92
+ @aggregation = aggregation
93
+ end
94
+
95
+ # Checks equality by comparing each attribute.
96
+ # @param o [Object] Object to be compared
97
+ # @!visibility private
98
+ def ==(o)
99
+ return true if self.equal?(o)
100
+ self.class == o.class &&
101
+ aggregation == o.aggregation &&
102
+ facet == o.facet
103
+ end
104
+
105
+ # Calculates hash code according to all attributes.
106
+ # @return [Integer] Hash code
107
+ # @!visibility private
108
+ def hash
109
+ [aggregation, facet].hash
110
+ end
111
+ end
112
+ end