datadog_api_client 1.10.0 → 1.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +715 -44
  4. data/.generator/schemas/v2/openapi.yaml +458 -44
  5. data/.generator/src/generator/formatter.py +14 -0
  6. data/.github/workflows/test_integration.yml +0 -7
  7. data/CHANGELOG.md +34 -0
  8. data/examples/v1/dashboards/CreateDashboard_1442588603.rb +61 -0
  9. data/examples/v1/dashboards/CreateDashboard_252716965.rb +52 -0
  10. data/examples/v1/dashboards/CreateDashboard_3882428227.rb +60 -0
  11. data/examples/v1/metrics/SubmitDistributionPoints.rb +22 -0
  12. data/examples/v1/metrics/SubmitDistributionPoints_3109558960.rb +25 -0
  13. data/examples/v1/organizations/DowngradeOrg.rb +5 -0
  14. data/examples/v1/organizations/UpdateOrg.rb +1 -0
  15. data/examples/v1/service-level-objectives/SearchSLO.rb +16 -0
  16. data/examples/v1/snapshots/GetGraphSnapshot.rb +2 -0
  17. data/examples/v1/synthetics/CreateSyntheticsAPITest.rb +3 -0
  18. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_2932742688.rb +3 -0
  19. data/examples/v1/synthetics/UpdateBrowserTest.rb +3 -0
  20. data/examples/v2/metrics/CreateTagConfiguration.rb +0 -3
  21. data/examples/v2/metrics/DeleteTagConfiguration.rb +0 -3
  22. data/examples/v2/metrics/ListTagConfigurationByName.rb +0 -3
  23. data/examples/v2/metrics/ListTagConfigurations.rb +0 -3
  24. data/examples/v2/metrics/ListTagConfigurations_103226315.rb +0 -3
  25. data/examples/v2/metrics/ListTagConfigurations_1799362914.rb +0 -3
  26. data/examples/v2/metrics/UpdateTagConfiguration.rb +0 -3
  27. data/examples/v2/opsgenie-integration/CreateOpsgenieService.rb +16 -0
  28. data/examples/v2/opsgenie-integration/DeleteOpsgenieService.rb +8 -0
  29. data/examples/v2/opsgenie-integration/GetOpsgenieService.rb +8 -0
  30. data/examples/v2/opsgenie-integration/ListOpsgenieServices.rb +5 -0
  31. data/examples/v2/opsgenie-integration/UpdateOpsgenieService.rb +21 -0
  32. data/examples/v2/security-monitoring/ListSecurityMonitoringSignals.rb +0 -3
  33. data/examples/v2/security-monitoring/SearchSecurityMonitoringSignals.rb +0 -3
  34. data/examples/v2/security-monitoring/UpdateSecurityMonitoringRule.rb +3 -0
  35. data/examples/v2/usage-metering/GetEstimatedCostByOrg.rb +5 -0
  36. data/examples/v2/usage-metering/GetEstimatedCostByOrg_1171921972.rb +9 -0
  37. data/examples/v2/usage-metering/GetEstimatedCostByOrg_627383212.rb +9 -0
  38. data/lib/datadog_api_client/v1/api/metrics_api.rb +81 -0
  39. data/lib/datadog_api_client/v1/api/organizations_api.rb +74 -1
  40. data/lib/datadog_api_client/v1/api/security_monitoring_api.rb +2 -2
  41. data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +78 -4
  42. data/lib/datadog_api_client/v1/api/snapshots_api.rb +4 -0
  43. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +9 -5
  44. data/lib/datadog_api_client/v1/configuration.rb +51 -0
  45. data/lib/datadog_api_client/v1/models/distribution_point_item.rb +63 -0
  46. data/lib/datadog_api_client/v1/models/distribution_points_content_encoding.rb +26 -0
  47. data/lib/datadog_api_client/v1/models/distribution_points_payload.rb +124 -0
  48. data/lib/datadog_api_client/v1/models/distribution_points_series.rb +179 -0
  49. data/lib/datadog_api_client/v1/models/distribution_points_type.rb +26 -0
  50. data/lib/datadog_api_client/v1/models/distribution_widget_histogram_request_query.rb +64 -0
  51. data/lib/datadog_api_client/v1/models/distribution_widget_histogram_request_type.rb +26 -0
  52. data/lib/datadog_api_client/v1/models/distribution_widget_request.rb +21 -1
  53. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stat_name.rb +1 -0
  54. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +2 -0
  55. data/lib/datadog_api_client/v1/models/ip_prefixes_synthetics_private_locations.rb +125 -0
  56. data/lib/datadog_api_client/v1/models/ip_ranges.rb +11 -1
  57. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +4 -0
  58. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +41 -1
  59. data/lib/datadog_api_client/v1/models/org_downgraded_response.rb +111 -0
  60. data/lib/datadog_api_client/v1/models/organization.rb +14 -4
  61. data/lib/datadog_api_client/v1/models/search_slo_response.rb +131 -0
  62. data/lib/datadog_api_client/v1/models/search_slo_response_data.rb +121 -0
  63. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes.rb +123 -0
  64. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets.rb +197 -0
  65. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets_object_int.rb +121 -0
  66. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets_object_string.rb +121 -0
  67. data/lib/datadog_api_client/v1/models/search_slo_response_links.rb +151 -0
  68. data/lib/datadog_api_client/v1/models/search_slo_response_meta.rb +111 -0
  69. data/lib/datadog_api_client/v1/models/search_slo_response_meta_page.rb +181 -0
  70. data/lib/datadog_api_client/v1/models/service_level_objective.rb +3 -3
  71. data/lib/datadog_api_client/v1/models/service_level_objective_query.rb +1 -1
  72. data/lib/datadog_api_client/v1/models/service_level_objective_request.rb +3 -3
  73. data/lib/datadog_api_client/v1/models/slo_history_metrics.rb +1 -1
  74. data/lib/datadog_api_client/v1/models/slo_response_data.rb +1 -1
  75. data/lib/datadog_api_client/v1/models/synthetics_api_test.rb +11 -0
  76. data/lib/datadog_api_client/v1/models/synthetics_browser_test.rb +11 -0
  77. data/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb +2 -2
  78. data/lib/datadog_api_client/v1/models/synthetics_test_ci_options.rb +111 -0
  79. data/lib/datadog_api_client/v1/models/synthetics_test_options.rb +11 -1
  80. data/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +4 -0
  81. data/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +4 -0
  82. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +41 -1
  83. data/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb +474 -4
  84. data/lib/datadog_api_client/v1.rb +19 -0
  85. data/lib/datadog_api_client/v2/api/cloud_workload_security_api.rb +1 -1
  86. data/lib/datadog_api_client/v2/api/metrics_api.rb +0 -2
  87. data/lib/datadog_api_client/v2/api/opsgenie_integration_api.rb +395 -0
  88. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +76 -0
  89. data/lib/datadog_api_client/v2/configuration.rb +0 -7
  90. data/lib/datadog_api_client/v2/models/intake_payload_accepted.rb +10 -8
  91. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +0 -2
  92. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +0 -2
  93. data/lib/datadog_api_client/v2/models/opsgenie_service_create_attributes.rb +174 -0
  94. data/lib/datadog_api_client/v2/models/opsgenie_service_create_data.rb +145 -0
  95. data/lib/datadog_api_client/v2/models/opsgenie_service_create_request.rb +122 -0
  96. data/lib/datadog_api_client/v2/models/opsgenie_service_region_type.rb +28 -0
  97. data/lib/datadog_api_client/v2/models/opsgenie_service_response.rb +122 -0
  98. data/lib/datadog_api_client/v2/models/opsgenie_service_response_attributes.rb +132 -0
  99. data/lib/datadog_api_client/v2/models/opsgenie_service_response_data.rb +166 -0
  100. data/lib/datadog_api_client/v2/models/opsgenie_service_type.rb +26 -0
  101. data/lib/datadog_api_client/v2/models/opsgenie_service_update_attributes.rb +142 -0
  102. data/lib/datadog_api_client/v2/models/opsgenie_service_update_data.rb +166 -0
  103. data/lib/datadog_api_client/v2/models/opsgenie_service_update_request.rb +122 -0
  104. data/lib/datadog_api_client/v2/models/opsgenie_services_response.rb +124 -0
  105. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +30 -4
  106. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_method.rb +27 -0
  107. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_threshold.rb +27 -0
  108. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +13 -1
  109. data/lib/datadog_api_client/v2.rb +15 -0
  110. data/lib/datadog_api_client/version.rb +1 -1
  111. metadata +51 -2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 1.11.0 / 2022-07-01
4
+
5
+ ### Fixed
6
+ * Fix additionalProperties on SyntheticsAPITestResultData by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/935
7
+ * Fix synthetics vitals type by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/936
8
+ * Remove include_percentiles default by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/961
9
+ * Mark message as required for Synthetics tests by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/956
10
+ ### Added
11
+ * Add include descendants to monthly and hourly usage attribution APIs by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/931
12
+ * Add v2 endpoints for Opsgenie Integration by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/918
13
+ * Add distribution points intake endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/916
14
+ * Add height and width params to graph snapshot by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/945
15
+ * Add support for defining histogram requests in Distribution widgets by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/929
16
+ * Add DowngradeOrg endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/947
17
+ * Add new options for new value detection type on security monitoring rules by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/939
18
+ * Add ci execution rule in Synthetics options by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/940
19
+ * Add SLO Search API endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/856
20
+ * New usage metering endpoint for estimated cost by org by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/964
21
+ * Add estimated indexed spans usage attribution by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/963
22
+ * Handle raw json for additionalProperties in typescript by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/937
23
+ * Add Application Security Monitoring Hosts Attribution by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/965
24
+ * Add support for security monitoring rule dynamic criticality by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/951
25
+ * Update IP ranges with synthetics private locations section by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/968
26
+ * Add new products to billable summary by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/971
27
+ ### Changed
28
+ * Remove unstable/beta note since Metrics Without Limits is GA by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/928
29
+ * Remove unstable marker on security list signal endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/944
30
+ * Update metric intake v2 accept response by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/969
31
+
32
+ ## New Contributors
33
+ * @jybp made their first contribution in https://github.com/DataDog/datadog-api-client-ruby/pull/959
34
+
35
+ **Full Changelog**: https://github.com/DataDog/datadog-api-client-ruby/compare/v1.10.0...v1.11.0
36
+
3
37
  ## 1.10.0 / 2022-05-30
4
38
 
5
39
  ### Fixed
@@ -0,0 +1,61 @@
1
+ # Create a distribution widget using a histogram request containing a formulas and functions APM Stats query
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ title: "Example-Create_a_distribution_widget_using_a_histogram_request_containing_a_formulas_and_functions_APM_Stats",
8
+ description: "",
9
+ widgets: [
10
+ DatadogAPIClient::V1::Widget.new({
11
+ definition: DatadogAPIClient::V1::DistributionWidgetDefinition.new({
12
+ title: "APM Stats - Request latency HOP",
13
+ title_size: "16",
14
+ title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
15
+ show_legend: false,
16
+ type: DatadogAPIClient::V1::DistributionWidgetDefinitionType::DISTRIBUTION,
17
+ xaxis: DatadogAPIClient::V1::DistributionWidgetXAxis.new({
18
+ max: "auto",
19
+ include_zero: true,
20
+ scale: "linear",
21
+ min: "auto",
22
+ }),
23
+ yaxis: DatadogAPIClient::V1::DistributionWidgetYAxis.new({
24
+ max: "auto",
25
+ include_zero: true,
26
+ scale: "linear",
27
+ min: "auto",
28
+ }),
29
+ requests: [
30
+ DatadogAPIClient::V1::DistributionWidgetRequest.new({
31
+ query: DatadogAPIClient::V1::FormulaAndFunctionApmResourceStatsQueryDefinition.new({
32
+ primary_tag_value: "*",
33
+ stat: DatadogAPIClient::V1::FormulaAndFunctionApmResourceStatName::LATENCY_DISTRIBUTION,
34
+ data_source: DatadogAPIClient::V1::FormulaAndFunctionApmResourceStatsDataSource::APM_RESOURCE_STATS,
35
+ name: "query1",
36
+ service: "azure-bill-import",
37
+ group_by: [
38
+ "resource_name",
39
+ ],
40
+ env: "staging",
41
+ primary_tag_name: "datacenter",
42
+ operation_name: "universal.http.client",
43
+ }),
44
+ request_type: DatadogAPIClient::V1::DistributionWidgetHistogramRequestType::HISTOGRAM,
45
+ style: DatadogAPIClient::V1::WidgetStyle.new({
46
+ palette: "dog_classic",
47
+ }),
48
+ }),
49
+ ],
50
+ }),
51
+ layout: DatadogAPIClient::V1::WidgetLayout.new({
52
+ x: 8,
53
+ y: 0,
54
+ width: 4,
55
+ height: 2,
56
+ }),
57
+ }),
58
+ ],
59
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
60
+ })
61
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,52 @@
1
+ # Create a distribution widget using a histogram request containing a formulas and functions metrics query
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ title: "Example-Create_a_distribution_widget_using_a_histogram_request_containing_a_formulas_and_functions_metrics_q",
8
+ widgets: [
9
+ DatadogAPIClient::V1::Widget.new({
10
+ definition: DatadogAPIClient::V1::DistributionWidgetDefinition.new({
11
+ title: "Metrics HOP",
12
+ title_size: "16",
13
+ title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
14
+ show_legend: false,
15
+ type: DatadogAPIClient::V1::DistributionWidgetDefinitionType::DISTRIBUTION,
16
+ xaxis: DatadogAPIClient::V1::DistributionWidgetXAxis.new({
17
+ max: "auto",
18
+ include_zero: true,
19
+ scale: "linear",
20
+ min: "auto",
21
+ }),
22
+ yaxis: DatadogAPIClient::V1::DistributionWidgetYAxis.new({
23
+ max: "auto",
24
+ include_zero: true,
25
+ scale: "linear",
26
+ min: "auto",
27
+ }),
28
+ requests: [
29
+ DatadogAPIClient::V1::DistributionWidgetRequest.new({
30
+ query: DatadogAPIClient::V1::FormulaAndFunctionMetricQueryDefinition.new({
31
+ query: "histogram:trace.Load{*}",
32
+ data_source: DatadogAPIClient::V1::FormulaAndFunctionMetricDataSource::METRICS,
33
+ name: "query1",
34
+ }),
35
+ request_type: DatadogAPIClient::V1::DistributionWidgetHistogramRequestType::HISTOGRAM,
36
+ style: DatadogAPIClient::V1::WidgetStyle.new({
37
+ palette: "dog_classic",
38
+ }),
39
+ }),
40
+ ],
41
+ }),
42
+ layout: DatadogAPIClient::V1::WidgetLayout.new({
43
+ x: 0,
44
+ y: 0,
45
+ width: 4,
46
+ height: 2,
47
+ }),
48
+ }),
49
+ ],
50
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
51
+ })
52
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,60 @@
1
+ # Create a distribution widget using a histogram request containing a formulas and functions events query
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ title: "Example-Create_a_distribution_widget_using_a_histogram_request_containing_a_formulas_and_functions_events_qu",
8
+ description: "Example-Create_a_distribution_widget_using_a_histogram_request_containing_a_formulas_and_functions_events_qu",
9
+ widgets: [
10
+ DatadogAPIClient::V1::Widget.new({
11
+ definition: DatadogAPIClient::V1::DistributionWidgetDefinition.new({
12
+ title: "Events Platform - Request latency HOP",
13
+ title_size: "16",
14
+ title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
15
+ show_legend: false,
16
+ type: DatadogAPIClient::V1::DistributionWidgetDefinitionType::DISTRIBUTION,
17
+ xaxis: DatadogAPIClient::V1::DistributionWidgetXAxis.new({
18
+ max: "auto",
19
+ include_zero: true,
20
+ scale: "linear",
21
+ min: "auto",
22
+ }),
23
+ yaxis: DatadogAPIClient::V1::DistributionWidgetYAxis.new({
24
+ max: "auto",
25
+ include_zero: true,
26
+ scale: "linear",
27
+ min: "auto",
28
+ }),
29
+ requests: [
30
+ DatadogAPIClient::V1::DistributionWidgetRequest.new({
31
+ query: DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinition.new({
32
+ search: DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinitionSearch.new({
33
+ query: "",
34
+ }),
35
+ data_source: DatadogAPIClient::V1::FormulaAndFunctionEventsDataSource::EVENTS,
36
+ compute: DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinitionCompute.new({
37
+ metric: "@duration",
38
+ aggregation: DatadogAPIClient::V1::FormulaAndFunctionEventAggregation::MIN,
39
+ }),
40
+ name: "query1",
41
+ indexes: [
42
+ "*",
43
+ ],
44
+ group_by: [],
45
+ }),
46
+ request_type: DatadogAPIClient::V1::DistributionWidgetHistogramRequestType::HISTOGRAM,
47
+ }),
48
+ ],
49
+ }),
50
+ layout: DatadogAPIClient::V1::WidgetLayout.new({
51
+ x: 0,
52
+ y: 0,
53
+ width: 4,
54
+ height: 2,
55
+ }),
56
+ }),
57
+ ],
58
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
59
+ })
60
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,22 @@
1
+ # Submit distribution points returns "Payload accepted" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::MetricsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::DistributionPointsPayload.new({
7
+ series: [
8
+ DatadogAPIClient::V1::DistributionPointsSeries.new({
9
+ metric: "system.load.1.dist",
10
+ points: [
11
+ [
12
+ Time.now,
13
+ [
14
+ 1.0,
15
+ 2.0,
16
+ ],
17
+ ],
18
+ ],
19
+ }),
20
+ ],
21
+ })
22
+ p api_instance.submit_distribution_points(body)
@@ -0,0 +1,25 @@
1
+ # Submit deflate distribution points returns "Payload accepted" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::MetricsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::DistributionPointsPayload.new({
7
+ series: [
8
+ DatadogAPIClient::V1::DistributionPointsSeries.new({
9
+ metric: "system.load.1.dist",
10
+ points: [
11
+ [
12
+ Time.now,
13
+ [
14
+ 1.0,
15
+ 2.0,
16
+ ],
17
+ ],
18
+ ],
19
+ }),
20
+ ],
21
+ })
22
+ opts = {
23
+ content_encoding: DistributionPointsContentEncoding::DEFLATE,
24
+ }
25
+ p api_instance.submit_distribution_points(body, opts)
@@ -0,0 +1,5 @@
1
+ # Spin-off Child Organization returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::OrganizationsAPI.new
5
+ p api_instance.downgrade_org("abc123")
@@ -36,5 +36,6 @@ body = DatadogAPIClient::V1::Organization.new({
36
36
  subscription: DatadogAPIClient::V1::OrganizationSubscription.new({
37
37
  type: "pro",
38
38
  }),
39
+ trial: false,
39
40
  })
40
41
  p api_instance.update_org("abc123", body)
@@ -0,0 +1,16 @@
1
+ # Search for SLOs returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations[:search_slo] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V1::ServiceLevelObjectivesAPI.new
8
+
9
+ # there is a valid "slo" in the system
10
+ SLO_DATA_0_NAME = ENV["SLO_DATA_0_NAME"]
11
+ opts = {
12
+ query: SLO_DATA_0_NAME,
13
+ page_size: 20,
14
+ page_number: 0,
15
+ }
16
+ p api_instance.search_slo(opts)
@@ -5,5 +5,7 @@ api_instance = DatadogAPIClient::V1::SnapshotsAPI.new
5
5
  opts = {
6
6
  metric_query: "avg:system.load.1{*}",
7
7
  title: "System load",
8
+ height: 400,
9
+ width: 600,
8
10
  }
9
11
  p api_instance.get_graph_snapshot((Time.now + -1 * 86400).to_i, Time.now.to_i, opts)
@@ -23,6 +23,9 @@ body = DatadogAPIClient::V1::SyntheticsAPITest.new({
23
23
  message: "Notification message",
24
24
  name: "Example test name",
25
25
  options: DatadogAPIClient::V1::SyntheticsTestOptions.new({
26
+ ci: DatadogAPIClient::V1::SyntheticsTestCiOptions.new({
27
+ execution_rule: DatadogAPIClient::V1::SyntheticsTestExecutionRule::BLOCKING,
28
+ }),
26
29
  device_ids: [
27
30
  DatadogAPIClient::V1::SyntheticsDeviceID::LAPTOP_LARGE,
28
31
  ],
@@ -46,6 +46,9 @@ body = DatadogAPIClient::V1::SyntheticsBrowserTest.new({
46
46
  client_token_id: 123456,
47
47
  }),
48
48
  tick_every: 300,
49
+ ci: DatadogAPIClient::V1::SyntheticsTestCiOptions.new({
50
+ execution_rule: DatadogAPIClient::V1::SyntheticsTestExecutionRule::SKIPPED,
51
+ }),
49
52
  }),
50
53
  tags: [
51
54
  "testing:browser",
@@ -41,6 +41,9 @@ body = DatadogAPIClient::V1::SyntheticsBrowserTest.new({
41
41
  message: "",
42
42
  name: "Example test name",
43
43
  options: DatadogAPIClient::V1::SyntheticsTestOptions.new({
44
+ ci: DatadogAPIClient::V1::SyntheticsTestCiOptions.new({
45
+ execution_rule: DatadogAPIClient::V1::SyntheticsTestExecutionRule::BLOCKING,
46
+ }),
44
47
  device_ids: [
45
48
  DatadogAPIClient::V1::SyntheticsDeviceID::LAPTOP_LARGE,
46
49
  ],
@@ -1,9 +1,6 @@
1
1
  # Create a tag configuration returns "Created" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:create_tag_configuration] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
 
9
6
  body = DatadogAPIClient::V2::MetricTagConfigurationCreateRequest.new({
@@ -1,8 +1,5 @@
1
1
  # Delete a tag configuration returns "No Content" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:delete_tag_configuration] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
  api_instance.delete_tag_configuration("ExampleDeleteatagconfigurationreturnsNoContentresponse")
@@ -1,9 +1,6 @@
1
1
  # List tag configuration by name returns "Success" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_tag_configuration_by_name] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
 
9
6
  # there is a valid "metric_tag_configuration" in the system
@@ -1,8 +1,5 @@
1
1
  # List tag configurations returns "Success" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_tag_configurations] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
  p api_instance.list_tag_configurations()
@@ -1,9 +1,6 @@
1
1
  # List tag configurations with configured filter returns "Success" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_tag_configurations] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
  opts = {
9
6
  filter_configured: true,
@@ -1,9 +1,6 @@
1
1
  # List tag configurations with a tag filter returns "Success" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_tag_configurations] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
  opts = {
9
6
  filter_tags: "ExampleListtagconfigurationswithatagfilterreturnsSuccessresponse",
@@ -1,9 +1,6 @@
1
1
  # Update a tag configuration returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_tag_configuration] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::MetricsAPI.new
8
5
 
9
6
  # there is a valid "metric_tag_configuration" in the system
@@ -0,0 +1,16 @@
1
+ # Create a new service object returns "CREATED" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::OpsgenieIntegrationAPI.new
5
+
6
+ body = DatadogAPIClient::V2::OpsgenieServiceCreateRequest.new({
7
+ data: DatadogAPIClient::V2::OpsgenieServiceCreateData.new({
8
+ attributes: DatadogAPIClient::V2::OpsgenieServiceCreateAttributes.new({
9
+ name: "Example-Create_a_new_service_object_returns_CREATED_response",
10
+ opsgenie_api_key: "00000000-0000-0000-0000-000000000000",
11
+ region: DatadogAPIClient::V2::OpsgenieServiceRegionType::US,
12
+ }),
13
+ type: DatadogAPIClient::V2::OpsgenieServiceType::OPSGENIE_SERVICE,
14
+ }),
15
+ })
16
+ p api_instance.create_opsgenie_service(body)
@@ -0,0 +1,8 @@
1
+ # Delete a single service object returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::OpsgenieIntegrationAPI.new
5
+
6
+ # there is a valid "opsgenie_service" in the system
7
+ OPSGENIE_SERVICE_DATA_ID = ENV["OPSGENIE_SERVICE_DATA_ID"]
8
+ api_instance.delete_opsgenie_service(OPSGENIE_SERVICE_DATA_ID)
@@ -0,0 +1,8 @@
1
+ # Get a single service object returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::OpsgenieIntegrationAPI.new
5
+
6
+ # there is a valid "opsgenie_service" in the system
7
+ OPSGENIE_SERVICE_DATA_ID = ENV["OPSGENIE_SERVICE_DATA_ID"]
8
+ p api_instance.get_opsgenie_service(OPSGENIE_SERVICE_DATA_ID)
@@ -0,0 +1,5 @@
1
+ # Get all service objects returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::OpsgenieIntegrationAPI.new
5
+ p api_instance.list_opsgenie_services()
@@ -0,0 +1,21 @@
1
+ # Update a single service object returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::OpsgenieIntegrationAPI.new
5
+
6
+ # there is a valid "opsgenie_service" in the system
7
+ OPSGENIE_SERVICE_DATA_ATTRIBUTES_NAME = ENV["OPSGENIE_SERVICE_DATA_ATTRIBUTES_NAME"]
8
+ OPSGENIE_SERVICE_DATA_ID = ENV["OPSGENIE_SERVICE_DATA_ID"]
9
+
10
+ body = DatadogAPIClient::V2::OpsgenieServiceUpdateRequest.new({
11
+ data: DatadogAPIClient::V2::OpsgenieServiceUpdateData.new({
12
+ attributes: DatadogAPIClient::V2::OpsgenieServiceUpdateAttributes.new({
13
+ name: "fake-opsgenie-service-name--updated",
14
+ opsgenie_api_key: "00000000-0000-0000-0000-000000000000",
15
+ region: DatadogAPIClient::V2::OpsgenieServiceRegionType::EU,
16
+ }),
17
+ id: OPSGENIE_SERVICE_DATA_ID,
18
+ type: DatadogAPIClient::V2::OpsgenieServiceType::OPSGENIE_SERVICE,
19
+ }),
20
+ })
21
+ p api_instance.update_opsgenie_service(OPSGENIE_SERVICE_DATA_ID, body)
@@ -1,8 +1,5 @@
1
1
  # Get a quick list of security signals returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_security_monitoring_signals] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
8
5
  p api_instance.list_security_monitoring_signals()
@@ -1,9 +1,6 @@
1
1
  # Get a list of security signals returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:search_security_monitoring_signals] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
8
5
 
9
6
  body = DatadogAPIClient::V2::SecurityMonitoringSignalListRequest.new({
@@ -17,6 +17,7 @@ body = DatadogAPIClient::V2::SecurityMonitoringRuleUpdatePayload.new({
17
17
  ],
18
18
  has_extended_title: true,
19
19
  options: DatadogAPIClient::V2::SecurityMonitoringRuleOptions.new({
20
+ decrease_criticality_based_on_env: false,
20
21
  detection_method: DatadogAPIClient::V2::SecurityMonitoringRuleDetectionMethod::THRESHOLD,
21
22
  evaluation_window: DatadogAPIClient::V2::SecurityMonitoringRuleEvaluationWindow::ZERO_MINUTES,
22
23
  hardcoded_evaluator_type: DatadogAPIClient::V2::SecurityMonitoringRuleHardcodedEvaluatorType::LOG4SHELL,
@@ -28,6 +29,8 @@ body = DatadogAPIClient::V2::SecurityMonitoringRuleUpdatePayload.new({
28
29
  new_value_options: DatadogAPIClient::V2::SecurityMonitoringRuleNewValueOptions.new({
29
30
  forget_after: DatadogAPIClient::V2::SecurityMonitoringRuleNewValueOptionsForgetAfter::ONE_DAY,
30
31
  learning_duration: DatadogAPIClient::V2::SecurityMonitoringRuleNewValueOptionsLearningDuration::ZERO_DAYS,
32
+ learning_method: DatadogAPIClient::V2::SecurityMonitoringRuleNewValueOptionsLearningMethod::DURATION,
33
+ learning_threshold: DatadogAPIClient::V2::SecurityMonitoringRuleNewValueOptionsLearningThreshold::ZERO_OCCURRENCES,
31
34
  }),
32
35
  }),
33
36
  queries: [
@@ -0,0 +1,5 @@
1
+ # Get estimated cost across multi-org account returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ p api_instance.get_estimated_cost_by_org()
@@ -0,0 +1,9 @@
1
+ # Get estimated cost across multi-org account with month returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ opts = {
6
+ start_month: (Time.now + -5 * 86400),
7
+ end_month: (Time.now + -3 * 86400),
8
+ }
9
+ p api_instance.get_estimated_cost_by_org(opts)
@@ -0,0 +1,9 @@
1
+ # Get estimated cost across multi-org account with date returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ opts = {
6
+ start_date: (Time.now + -5 * 86400),
7
+ end_date: (Time.now + -3 * 86400),
8
+ }
9
+ p api_instance.get_estimated_cost_by_org(opts)
@@ -334,6 +334,87 @@ module DatadogAPIClient::V1
334
334
  return data, status_code, headers
335
335
  end
336
336
 
337
+ # Submit distribution points.
338
+ #
339
+ # @see #submit_distribution_points_with_http_info
340
+ def submit_distribution_points(body, opts = {})
341
+ data, _status_code, _headers = submit_distribution_points_with_http_info(body, opts)
342
+ data
343
+ end
344
+
345
+ # Submit distribution points.
346
+ #
347
+ # The distribution points end-point allows you to post distribution data that can be graphed on Datadog’s dashboards.
348
+ #
349
+ # @param body [DistributionPointsPayload]
350
+ # @param opts [Hash] the optional parameters
351
+ # @option opts [DistributionPointsContentEncoding] :content_encoding HTTP header used to compress the media-type.
352
+ # @return [Array<(IntakePayloadAccepted, Integer, Hash)>] IntakePayloadAccepted data, response status code and response headers
353
+ def submit_distribution_points_with_http_info(body, opts = {})
354
+
355
+ if @api_client.config.unstable_operations.has_key?(:submit_distribution_points)
356
+ unstable_enabled = @api_client.config.unstable_operations[:submit_distribution_points]
357
+ if unstable_enabled
358
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "submit_distribution_points")
359
+ else
360
+ raise APIError.new(message: format("Unstable operation '%s' is disabled", "submit_distribution_points"))
361
+ end
362
+ end
363
+
364
+ if @api_client.config.debugging
365
+ @api_client.config.logger.debug 'Calling API: MetricsAPI.submit_distribution_points ...'
366
+ end
367
+ allowable_values = ['deflate']
368
+ if @api_client.config.client_side_validation && opts[:'content_encoding'] && !allowable_values.include?(opts[:'content_encoding'])
369
+ fail ArgumentError, "invalid value for \"content_encoding\", must be one of #{allowable_values}"
370
+ end
371
+ # verify the required parameter 'body' is set
372
+ if @api_client.config.client_side_validation && body.nil?
373
+ fail ArgumentError, "Missing the required parameter 'body' when calling MetricsAPI.submit_distribution_points"
374
+ end
375
+ # resource path
376
+ local_var_path = '/api/v1/distribution_points'
377
+
378
+ # query parameters
379
+ query_params = opts[:query_params] || {}
380
+
381
+ # header parameters
382
+ header_params = opts[:header_params] || {}
383
+ # HTTP header 'Accept' (if needed)
384
+ header_params['Accept'] = @api_client.select_header_accept(['text/json', 'application/json'])
385
+ # HTTP header 'Content-Type'
386
+ header_params['Content-Type'] = @api_client.select_header_content_type(['text/json'])
387
+ header_params['Content-Encoding'] = opts[:'content_encoding'] if !opts[:'content_encoding'].nil?
388
+
389
+ # form parameters
390
+ form_params = opts[:form_params] || {}
391
+
392
+ # http body (model)
393
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
394
+
395
+ # return_type
396
+ return_type = opts[:debug_return_type] || 'IntakePayloadAccepted'
397
+
398
+ # auth_names
399
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth]
400
+
401
+ new_options = opts.merge(
402
+ :operation => :submit_distribution_points,
403
+ :header_params => header_params,
404
+ :query_params => query_params,
405
+ :form_params => form_params,
406
+ :body => post_body,
407
+ :auth_names => auth_names,
408
+ :return_type => return_type
409
+ )
410
+
411
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
412
+ if @api_client.config.debugging
413
+ @api_client.config.logger.debug "API called: MetricsAPI#submit_distribution_points\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
414
+ end
415
+ return data, status_code, headers
416
+ end
417
+
337
418
  # Submit metrics.
338
419
  #
339
420
  # @see #submit_metrics_with_http_info