datadog_api_client 1.3.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +6 -6
  3. data/.generator/templates/api.mustache +2 -2
  4. data/.generator/templates/api_client.mustache +7 -0
  5. data/.generator/templates/api_client_typhoeus_partial.mustache +7 -0
  6. data/.generator/templates/configuration.mustache +4 -0
  7. data/.openapi-generator/VERSION +1 -1
  8. data/CHANGELOG.md +27 -0
  9. data/README.md +12 -1
  10. data/data/v1/openapi.yaml +866 -119
  11. data/data/v2/openapi.yaml +113 -0
  12. data/docs/v1/AWSAccount.md +6 -0
  13. data/docs/v1/DowntimeRecurrence.md +1 -1
  14. data/docs/v1/Event.md +1 -1
  15. data/docs/v1/FormulaAndFunctionApmDependencyStatName.md +15 -0
  16. data/docs/v1/FormulaAndFunctionApmDependencyStatsDataSource.md +15 -0
  17. data/docs/v1/FormulaAndFunctionApmDependencyStatsQueryDefinition.md +36 -0
  18. data/docs/v1/FormulaAndFunctionApmResourceStatName.md +15 -0
  19. data/docs/v1/FormulaAndFunctionApmResourceStatsDataSource.md +15 -0
  20. data/docs/v1/FormulaAndFunctionApmResourceStatsQueryDefinition.md +36 -0
  21. data/docs/v1/FormulaAndFunctionQueryDefinition.md +5 -1
  22. data/docs/v1/FunnelQuery.md +22 -0
  23. data/docs/v1/FunnelRequestType.md +15 -0
  24. data/docs/v1/FunnelSource.md +15 -0
  25. data/docs/v1/FunnelWidgetDefinition.md +28 -0
  26. data/docs/v1/FunnelWidgetDefinitionType.md +15 -0
  27. data/docs/v1/FunnelWidgetRequest.md +20 -0
  28. data/docs/v1/LogsAPI.md +1 -1
  29. data/docs/v1/MetricContentEncoding.md +15 -0
  30. data/docs/v1/MetricsAPI.md +10 -6
  31. data/docs/v1/MetricsPayload.md +1 -1
  32. data/docs/v1/MonitorOptions.md +5 -1
  33. data/docs/v1/MonitorRenotifyStatusType.md +15 -0
  34. data/docs/v1/MonitorsAPI.md +9 -9
  35. data/docs/v1/NotebookCreateDataAttributes.md +2 -0
  36. data/docs/v1/NotebookMetadata.md +22 -0
  37. data/docs/v1/NotebookMetadataType.md +15 -0
  38. data/docs/v1/NotebookResponseDataAttributes.md +2 -0
  39. data/docs/v1/NotebookUpdateDataAttributes.md +2 -0
  40. data/docs/v1/NotebooksAPI.md +7 -3
  41. data/docs/v1/NotebooksResponseDataAttributes.md +2 -0
  42. data/docs/v1/ProcessQueryDefinition.md +1 -1
  43. data/docs/v1/README.md +31 -3
  44. data/docs/v1/SLOCorrection.md +1 -1
  45. data/docs/v1/SLOCorrectionCreateData.md +1 -1
  46. data/docs/v1/SLOCorrectionCreateRequestAttributes.md +4 -4
  47. data/docs/v1/SLOCorrectionListResponse.md +1 -1
  48. data/docs/v1/SLOCorrectionResponseAttributes.md +4 -4
  49. data/docs/v1/SLOCorrectionUpdateRequestAttributes.md +3 -3
  50. data/docs/v1/ScatterPlotWidgetDefinitionRequests.md +4 -2
  51. data/docs/v1/ScatterplotDimension.md +15 -0
  52. data/docs/v1/ScatterplotTableRequest.md +22 -0
  53. data/docs/v1/ScatterplotWidgetFormula.md +22 -0
  54. data/docs/v1/Series.md +1 -1
  55. data/docs/v1/ServiceChecksAPI.md +1 -1
  56. data/docs/v1/ServiceLevelObjectiveCorrectionsAPI.md +11 -11
  57. data/docs/v1/SyntheticsAPI.md +61 -0
  58. data/docs/v1/SyntheticsAPIStep.md +1 -1
  59. data/docs/v1/SyntheticsBatchDetails.md +18 -0
  60. data/docs/v1/SyntheticsBatchDetailsData.md +22 -0
  61. data/docs/v1/SyntheticsBatchResult.md +36 -0
  62. data/docs/v1/SyntheticsBrowserError.md +3 -3
  63. data/docs/v1/SyntheticsCIBatchMetadata.md +20 -0
  64. data/docs/v1/{SyntheticsCITestMetadataCi.md → SyntheticsCIBatchMetadataCI.md} +2 -2
  65. data/docs/v1/SyntheticsCIBatchMetadataGit.md +20 -0
  66. data/docs/v1/SyntheticsCITest.md +1 -1
  67. data/docs/v1/SyntheticsStatus.md +15 -0
  68. data/docs/v1/SyntheticsTestDetails.md +2 -0
  69. data/docs/v1/SyntheticsTestExecutionRule.md +15 -0
  70. data/docs/v1/SyntheticsTestRequest.md +2 -0
  71. data/docs/v1/UsageAttributionValues.md +4 -4
  72. data/docs/v1/UsageMeteringAPI.md +65 -0
  73. data/docs/v1/UsageSDSHour.md +22 -0
  74. data/docs/v1/UsageSDSResponse.md +18 -0
  75. data/docs/v1/UsageSummaryDate.md +4 -0
  76. data/docs/v1/UsageSummaryDateOrg.md +6 -2
  77. data/docs/v1/UsageSummaryResponse.md +6 -2
  78. data/docs/v1/UsageTimeseriesHour.md +1 -1
  79. data/docs/v1/WebhooksIntegration.md +1 -1
  80. data/docs/v1/WebhooksIntegrationUpdateRequest.md +1 -1
  81. data/docs/v1/WidgetDefinition.md +2 -0
  82. data/docs/v2/IncidentServicesAPI.md +5 -5
  83. data/docs/v2/IncidentTeamsAPI.md +5 -5
  84. data/docs/v2/IncidentsAPI.md +5 -5
  85. data/docs/v2/README.md +5 -0
  86. data/docs/v2/SecurityMonitoringAPI.md +5 -5
  87. data/examples/v1/metrics/SubmitMetrics.rbbeta +14 -0
  88. data/extract-code-blocks.awk +4 -0
  89. data/lib/datadog_api_client/v1/api/logs_api.rb +1 -1
  90. data/lib/datadog_api_client/v1/api/metrics_api.rb +5 -2
  91. data/lib/datadog_api_client/v1/api/monitors_api.rb +9 -9
  92. data/lib/datadog_api_client/v1/api/notebooks_api.rb +8 -2
  93. data/lib/datadog_api_client/v1/api/service_checks_api.rb +1 -1
  94. data/lib/datadog_api_client/v1/api/service_level_objective_corrections_api.rb +16 -16
  95. data/lib/datadog_api_client/v1/api/synthetics_api.rb +73 -0
  96. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +77 -0
  97. data/lib/datadog_api_client/v1/api_client.rb +14 -0
  98. data/lib/datadog_api_client/v1/configuration.rb +7 -0
  99. data/lib/datadog_api_client/v1/models/aws_account.rb +37 -1
  100. data/lib/datadog_api_client/v1/models/content_encoding.rb +2 -2
  101. data/lib/datadog_api_client/v1/models/creator.rb +1 -0
  102. data/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb +1 -0
  103. data/lib/datadog_api_client/v1/models/downtime_recurrence.rb +1 -1
  104. data/lib/datadog_api_client/v1/models/event.rb +1 -16
  105. data/lib/datadog_api_client/v1/models/formula_and_function_apm_dependency_stat_name.rb +44 -0
  106. data/lib/datadog_api_client/v1/models/formula_and_function_apm_dependency_stats_data_source.rb +38 -0
  107. data/lib/datadog_api_client/v1/models/formula_and_function_apm_dependency_stats_query_definition.rb +356 -0
  108. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stat_name.rb +47 -0
  109. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stats_data_source.rb +38 -0
  110. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stats_query_definition.rb +348 -0
  111. data/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb +2 -0
  112. data/lib/datadog_api_client/v1/models/funnel_query.rb +271 -0
  113. data/lib/datadog_api_client/v1/models/funnel_request_type.rb +38 -0
  114. data/lib/datadog_api_client/v1/models/funnel_source.rb +38 -0
  115. data/lib/datadog_api_client/v1/models/funnel_widget_definition.rb +322 -0
  116. data/lib/datadog_api_client/v1/models/funnel_widget_definition_type.rb +38 -0
  117. data/lib/datadog_api_client/v1/models/funnel_widget_request.rb +251 -0
  118. data/lib/datadog_api_client/v1/models/metric_content_encoding.rb +38 -0
  119. data/lib/datadog_api_client/v1/models/metrics_query_metadata.rb +1 -0
  120. data/lib/datadog_api_client/v1/models/monitor.rb +2 -0
  121. data/lib/datadog_api_client/v1/models/monitor_options.rb +26 -2
  122. data/lib/datadog_api_client/v1/models/monitor_renotify_status_type.rb +40 -0
  123. data/lib/datadog_api_client/v1/models/notebook_author.rb +2 -0
  124. data/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb +10 -1
  125. data/lib/datadog_api_client/v1/models/notebook_metadata.rb +259 -0
  126. data/lib/datadog_api_client/v1/models/notebook_metadata_type.rb +42 -0
  127. data/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb +10 -1
  128. data/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb +10 -1
  129. data/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb +10 -1
  130. data/lib/datadog_api_client/v1/models/notebooks_response_meta.rb +1 -1
  131. data/lib/datadog_api_client/v1/models/scatter_plot_widget_definition_requests.rb +10 -11
  132. data/lib/datadog_api_client/v1/models/scatterplot_dimension.rb +41 -0
  133. data/lib/datadog_api_client/v1/models/scatterplot_table_request.rb +256 -0
  134. data/lib/datadog_api_client/v1/models/scatterplot_widget_formula.rb +262 -0
  135. data/lib/datadog_api_client/v1/models/slo_correction.rb +2 -2
  136. data/lib/datadog_api_client/v1/models/slo_correction_create_data.rb +6 -1
  137. data/lib/datadog_api_client/v1/models/slo_correction_create_request.rb +1 -1
  138. data/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb +5 -5
  139. data/lib/datadog_api_client/v1/models/slo_correction_list_response.rb +2 -2
  140. data/lib/datadog_api_client/v1/models/slo_correction_response.rb +1 -1
  141. data/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb +5 -5
  142. data/lib/datadog_api_client/v1/models/slo_correction_update_data.rb +1 -1
  143. data/lib/datadog_api_client/v1/models/slo_correction_update_request.rb +1 -1
  144. data/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb +4 -4
  145. data/lib/datadog_api_client/v1/models/synthetics_batch_details.rb +232 -0
  146. data/lib/datadog_api_client/v1/models/synthetics_batch_details_data.rb +253 -0
  147. data/lib/datadog_api_client/v1/models/synthetics_batch_result.rb +319 -0
  148. data/lib/datadog_api_client/v1/models/{synthetics_ci_test_metadata.rb → synthetics_ci_batch_metadata.rb} +6 -6
  149. data/lib/datadog_api_client/v1/models/{synthetics_ci_test_metadata_ci.rb → synthetics_ci_batch_metadata_ci.rb} +4 -4
  150. data/lib/datadog_api_client/v1/models/{synthetics_ci_test_metadata_git.rb → synthetics_ci_batch_metadata_git.rb} +5 -5
  151. data/lib/datadog_api_client/v1/models/synthetics_ci_test.rb +1 -1
  152. data/lib/datadog_api_client/v1/models/synthetics_status.rb +40 -0
  153. data/lib/datadog_api_client/v1/models/synthetics_test_details.rb +10 -1
  154. data/lib/datadog_api_client/v1/models/synthetics_test_execution_rule.rb +40 -0
  155. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +11 -1
  156. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +13 -13
  157. data/lib/datadog_api_client/v1/models/usage_sds_hour.rb +253 -0
  158. data/lib/datadog_api_client/v1/models/usage_sds_response.rb +235 -0
  159. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +21 -1
  160. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +28 -8
  161. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +29 -9
  162. data/lib/datadog_api_client/v1/models/usage_timeseries_hour.rb +1 -1
  163. data/lib/datadog_api_client/v1/models/webhooks_integration.rb +1 -1
  164. data/lib/datadog_api_client/v1/models/webhooks_integration_update_request.rb +1 -1
  165. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -0
  166. data/lib/datadog_api_client/v1.rb +29 -3
  167. data/lib/datadog_api_client/v2/api/incident_services_api.rb +5 -5
  168. data/lib/datadog_api_client/v2/api/incident_teams_api.rb +5 -5
  169. data/lib/datadog_api_client/v2/api/incidents_api.rb +5 -5
  170. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +5 -5
  171. data/lib/datadog_api_client/v2/api_client.rb +14 -0
  172. data/lib/datadog_api_client/v2/configuration.rb +5 -0
  173. data/lib/datadog_api_client/v2/models/incident_field_attributes_multiple_value.rb +1 -0
  174. data/lib/datadog_api_client/v2/models/incident_field_attributes_single_value.rb +1 -0
  175. data/lib/datadog_api_client/v2/models/incident_response_attributes.rb +1 -0
  176. data/lib/datadog_api_client/v2/models/user_attributes.rb +2 -0
  177. data/lib/datadog_api_client/version.rb +1 -1
  178. data/spec/v1/models/formula_and_function_apm_dependency_stat_name_spec.rb +31 -0
  179. data/spec/v1/models/formula_and_function_apm_dependency_stats_data_source_spec.rb +31 -0
  180. data/spec/v1/models/formula_and_function_apm_dependency_stats_query_definition_spec.rb +91 -0
  181. data/spec/v1/models/formula_and_function_apm_resource_stat_name_spec.rb +31 -0
  182. data/spec/v1/models/formula_and_function_apm_resource_stats_data_source_spec.rb +31 -0
  183. data/spec/v1/models/formula_and_function_apm_resource_stats_query_definition_spec.rb +91 -0
  184. data/spec/v1/models/funnel_query_spec.rb +49 -0
  185. data/spec/v1/models/funnel_request_type_spec.rb +31 -0
  186. data/spec/v1/models/funnel_source_spec.rb +31 -0
  187. data/spec/v1/models/funnel_widget_definition_spec.rb +67 -0
  188. data/spec/v1/models/funnel_widget_definition_type_spec.rb +31 -0
  189. data/spec/v1/models/funnel_widget_request_spec.rb +43 -0
  190. data/spec/v1/models/metric_content_encoding_spec.rb +31 -0
  191. data/spec/v1/models/monitor_renotify_status_type_spec.rb +31 -0
  192. data/spec/v1/models/notebook_metadata_spec.rb +49 -0
  193. data/spec/v1/models/notebook_metadata_type_spec.rb +31 -0
  194. data/spec/v1/models/scatterplot_dimension_spec.rb +31 -0
  195. data/spec/v1/models/scatterplot_table_request_spec.rb +49 -0
  196. data/spec/v1/models/scatterplot_widget_formula_spec.rb +49 -0
  197. data/spec/v1/models/synthetics_batch_details_data_spec.rb +49 -0
  198. data/spec/v1/models/synthetics_batch_details_spec.rb +37 -0
  199. data/spec/v1/models/synthetics_batch_result_spec.rb +91 -0
  200. data/spec/v1/models/{synthetics_ci_test_metadata_ci_spec.rb → synthetics_ci_batch_metadata_ci_spec.rb} +6 -6
  201. data/spec/v1/models/{synthetics_ci_test_metadata_git_spec.rb → synthetics_ci_batch_metadata_git_spec.rb} +6 -6
  202. data/spec/v1/models/{synthetics_ci_test_metadata_spec.rb → synthetics_ci_batch_metadata_spec.rb} +6 -6
  203. data/spec/v1/models/synthetics_status_spec.rb +31 -0
  204. data/spec/v1/models/synthetics_test_execution_rule_spec.rb +31 -0
  205. data/spec/v1/models/usage_sds_hour_spec.rb +49 -0
  206. data/spec/v1/models/usage_sds_response_spec.rb +37 -0
  207. metadata +119 -14
  208. data/docs/v1/SyntheticsCITestMetadata.md +0 -20
  209. data/docs/v1/SyntheticsCITestMetadataGit.md +0 -20
@@ -30,7 +30,7 @@ module DatadogAPIClient::V1
30
30
  # Whether or not to send a log sample when the log monitor triggers.
31
31
  attr_accessor :enable_logs_sample
32
32
 
33
- # We recommend using the [is_renotify](https://docs.datadoghq.com/monitors/notifications/?tab=is_alert#renotify), block in the original message instead. A message to include with a re-notification. Supports the `@username` notification we allow elsewhere. Not applicable if `renotify_interval` is `None`.
33
+ # We recommend using the [is_renotify](https://docs.datadoghq.com/monitors/notify/?tab=is_alert#renotify), block in the original message instead. A message to include with a re-notification. Supports the `@username` notification we allow elsewhere. Not applicable if `renotify_interval` is `None`.
34
34
  attr_accessor :escalation_message
35
35
 
36
36
  # Time (in seconds) to delay evaluation, as a non-negative integer. For example, if the value is set to `300` (5min), the timeframe is set to `last_5m` and the time is 7:00, the monitor evaluates data from 6:50 to 6:55. This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor always has data during evaluation.
@@ -69,6 +69,12 @@ module DatadogAPIClient::V1
69
69
  # The number of minutes after the last notification before a monitor re-notifies on the current status. It only re-notifies if it’s not resolved.
70
70
  attr_accessor :renotify_interval
71
71
 
72
+ # The number of times re-notification messages should be sent on the current status at the provided re-notification interval.
73
+ attr_accessor :renotify_occurrences
74
+
75
+ # The types of monitor statuses for which re-notification messages are sent.
76
+ attr_accessor :renotify_statuses
77
+
72
78
  # A Boolean indicating whether this monitor needs a full window of data before it’s evaluated. We highly recommend you set this to `false` for sparse metrics, otherwise some evaluations are skipped. Default is false.
73
79
  attr_accessor :require_full_window
74
80
 
@@ -104,6 +110,8 @@ module DatadogAPIClient::V1
104
110
  :'notify_audit' => :'notify_audit',
105
111
  :'notify_no_data' => :'notify_no_data',
106
112
  :'renotify_interval' => :'renotify_interval',
113
+ :'renotify_occurrences' => :'renotify_occurrences',
114
+ :'renotify_statuses' => :'renotify_statuses',
107
115
  :'require_full_window' => :'require_full_window',
108
116
  :'silenced' => :'silenced',
109
117
  :'synthetics_check_id' => :'synthetics_check_id',
@@ -137,6 +145,8 @@ module DatadogAPIClient::V1
137
145
  :'notify_audit' => :'Boolean',
138
146
  :'notify_no_data' => :'Boolean',
139
147
  :'renotify_interval' => :'Integer',
148
+ :'renotify_occurrences' => :'Integer',
149
+ :'renotify_statuses' => :'Array<MonitorRenotifyStatusType>',
140
150
  :'require_full_window' => :'Boolean',
141
151
  :'silenced' => :'Hash<String, Integer>',
142
152
  :'synthetics_check_id' => :'String',
@@ -156,6 +166,8 @@ module DatadogAPIClient::V1
156
166
  :'new_host_delay',
157
167
  :'no_data_timeframe',
158
168
  :'renotify_interval',
169
+ :'renotify_occurrences',
170
+ :'renotify_statuses',
159
171
  :'synthetics_check_id',
160
172
  :'timeout_h'
161
173
  ])
@@ -256,6 +268,16 @@ module DatadogAPIClient::V1
256
268
  self.renotify_interval = attributes[:'renotify_interval']
257
269
  end
258
270
 
271
+ if attributes.key?(:'renotify_occurrences')
272
+ self.renotify_occurrences = attributes[:'renotify_occurrences']
273
+ end
274
+
275
+ if attributes.key?(:'renotify_statuses')
276
+ if (value = attributes[:'renotify_statuses']).is_a?(Array)
277
+ self.renotify_statuses = value
278
+ end
279
+ end
280
+
259
281
  if attributes.key?(:'require_full_window')
260
282
  self.require_full_window = attributes[:'require_full_window']
261
283
  end
@@ -341,6 +363,8 @@ module DatadogAPIClient::V1
341
363
  notify_audit == o.notify_audit &&
342
364
  notify_no_data == o.notify_no_data &&
343
365
  renotify_interval == o.renotify_interval &&
366
+ renotify_occurrences == o.renotify_occurrences &&
367
+ renotify_statuses == o.renotify_statuses &&
344
368
  require_full_window == o.require_full_window &&
345
369
  silenced == o.silenced &&
346
370
  synthetics_check_id == o.synthetics_check_id &&
@@ -358,7 +382,7 @@ module DatadogAPIClient::V1
358
382
  # Calculates hash code according to all attributes.
359
383
  # @return [Integer] Hash code
360
384
  def hash
361
- [aggregation, device_ids, enable_logs_sample, escalation_message, evaluation_delay, groupby_simple_monitor, include_tags, locked, min_failure_duration, min_location_failed, new_group_delay, new_host_delay, no_data_timeframe, notify_audit, notify_no_data, renotify_interval, require_full_window, silenced, synthetics_check_id, threshold_windows, thresholds, timeout_h].hash
385
+ [aggregation, device_ids, enable_logs_sample, escalation_message, evaluation_delay, groupby_simple_monitor, include_tags, locked, min_failure_duration, min_location_failed, new_group_delay, new_host_delay, no_data_timeframe, notify_audit, notify_no_data, renotify_interval, renotify_occurrences, renotify_statuses, require_full_window, silenced, synthetics_check_id, threshold_windows, thresholds, timeout_h].hash
362
386
  end
363
387
 
364
388
  # Builds the object from hash
@@ -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://openapi-generator.tech
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
+ class MonitorRenotifyStatusType
21
+ ALERT = "alert".freeze
22
+ WARN = "warn".freeze
23
+ NO_DATA = "no data".freeze
24
+
25
+ # Builds the enum from string
26
+ # @param [String] The enum value in the form of the string
27
+ # @return [String] The enum value
28
+ def self.build_from_hash(value)
29
+ new.build_from_hash(value)
30
+ end
31
+
32
+ # Builds the enum from string
33
+ # @param [String] The enum value in the form of the string
34
+ # @return [String] The enum value
35
+ def build_from_hash(value)
36
+ constantValues = MonitorRenotifyStatusType.constants.select { |c| MonitorRenotifyStatusType::const_get(c) == value }
37
+ constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value
38
+ end
39
+ end
40
+ end
@@ -87,6 +87,8 @@ module DatadogAPIClient::V1
87
87
  # List of attributes with nullable: true
88
88
  def self.openapi_nullable
89
89
  Set.new([
90
+ :'name',
91
+ :'title',
90
92
  ])
91
93
  end
92
94
 
@@ -25,6 +25,8 @@ module DatadogAPIClient::V1
25
25
  # List of cells to display in the notebook.
26
26
  attr_accessor :cells
27
27
 
28
+ attr_accessor :metadata
29
+
28
30
  # The name of the notebook.
29
31
  attr_accessor :name
30
32
 
@@ -36,6 +38,7 @@ module DatadogAPIClient::V1
36
38
  def self.attribute_map
37
39
  {
38
40
  :'cells' => :'cells',
41
+ :'metadata' => :'metadata',
39
42
  :'name' => :'name',
40
43
  :'status' => :'status',
41
44
  :'time' => :'time'
@@ -51,6 +54,7 @@ module DatadogAPIClient::V1
51
54
  def self.openapi_types
52
55
  {
53
56
  :'cells' => :'Array<NotebookCellCreateRequest>',
57
+ :'metadata' => :'NotebookMetadata',
54
58
  :'name' => :'String',
55
59
  :'status' => :'NotebookStatus',
56
60
  :'time' => :'NotebookGlobalTime'
@@ -84,6 +88,10 @@ module DatadogAPIClient::V1
84
88
  end
85
89
  end
86
90
 
91
+ if attributes.key?(:'metadata')
92
+ self.metadata = attributes[:'metadata']
93
+ end
94
+
87
95
  if attributes.key?(:'name')
88
96
  self.name = attributes[:'name']
89
97
  end
@@ -161,6 +169,7 @@ module DatadogAPIClient::V1
161
169
  return true if self.equal?(o)
162
170
  self.class == o.class &&
163
171
  cells == o.cells &&
172
+ metadata == o.metadata &&
164
173
  name == o.name &&
165
174
  status == o.status &&
166
175
  time == o.time
@@ -175,7 +184,7 @@ module DatadogAPIClient::V1
175
184
  # Calculates hash code according to all attributes.
176
185
  # @return [Integer] Hash code
177
186
  def hash
178
- [cells, name, status, time].hash
187
+ [cells, metadata, name, status, time].hash
179
188
  end
180
189
 
181
190
  # Builds the object from hash
@@ -0,0 +1,259 @@
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://openapi-generator.tech
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
+ # Metadata associated with the notebook.
21
+ class NotebookMetadata
22
+ # whether the object has unparsed attributes
23
+ attr_accessor :_unparsed
24
+
25
+ # Whether or not the notebook is a template.
26
+ attr_accessor :is_template
27
+
28
+ # Whether or not the notebook takes snapshot image backups of the notebook's fixed-time graphs.
29
+ attr_accessor :take_snapshots
30
+
31
+ attr_accessor :type
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+ :'is_template' => :'is_template',
37
+ :'take_snapshots' => :'take_snapshots',
38
+ :'type' => :'type'
39
+ }
40
+ end
41
+
42
+ # Returns all the JSON keys this model knows about
43
+ def self.acceptable_attributes
44
+ attribute_map.values
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ def self.openapi_types
49
+ {
50
+ :'is_template' => :'Boolean',
51
+ :'take_snapshots' => :'Boolean',
52
+ :'type' => :'NotebookMetadataType'
53
+ }
54
+ end
55
+
56
+ # List of attributes with nullable: true
57
+ def self.openapi_nullable
58
+ Set.new([
59
+ :'type'
60
+ ])
61
+ end
62
+
63
+ # Initializes the object
64
+ # @param [Hash] attributes Model attributes in the form of hash
65
+ def initialize(attributes = {})
66
+ if (!attributes.is_a?(Hash))
67
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V1::NotebookMetadata` initialize method"
68
+ end
69
+
70
+ # check to see if the attribute exists and convert string to symbol for hash key
71
+ attributes = attributes.each_with_object({}) { |(k, v), h|
72
+ if (!self.class.attribute_map.key?(k.to_sym))
73
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V1::NotebookMetadata`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
74
+ end
75
+ h[k.to_sym] = v
76
+ }
77
+
78
+ if attributes.key?(:'is_template')
79
+ self.is_template = attributes[:'is_template']
80
+ else
81
+ self.is_template = false
82
+ end
83
+
84
+ if attributes.key?(:'take_snapshots')
85
+ self.take_snapshots = attributes[:'take_snapshots']
86
+ else
87
+ self.take_snapshots = false
88
+ end
89
+
90
+ if attributes.key?(:'type')
91
+ self.type = attributes[:'type']
92
+ else
93
+ self.type = 'null'
94
+ end
95
+ end
96
+
97
+ # Show invalid properties with the reasons. Usually used together with valid?
98
+ # @return Array for valid properties with the reasons
99
+ def list_invalid_properties
100
+ invalid_properties = Array.new
101
+ invalid_properties
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ def valid?
107
+ true
108
+ end
109
+
110
+ # Checks equality by comparing each attribute.
111
+ # @param [Object] Object to be compared
112
+ def ==(o)
113
+ return true if self.equal?(o)
114
+ self.class == o.class &&
115
+ is_template == o.is_template &&
116
+ take_snapshots == o.take_snapshots &&
117
+ type == o.type
118
+ end
119
+
120
+ # @see the `==` method
121
+ # @param [Object] Object to be compared
122
+ def eql?(o)
123
+ self == o
124
+ end
125
+
126
+ # Calculates hash code according to all attributes.
127
+ # @return [Integer] Hash code
128
+ def hash
129
+ [is_template, take_snapshots, type].hash
130
+ end
131
+
132
+ # Builds the object from hash
133
+ # @param [Hash] attributes Model attributes in the form of hash
134
+ # @return [Object] Returns the model itself
135
+ def self.build_from_hash(attributes)
136
+ new.build_from_hash(attributes)
137
+ end
138
+
139
+ # Builds the object from hash
140
+ # @param [Hash] attributes Model attributes in the form of hash
141
+ # @return [Object] Returns the model itself
142
+ def build_from_hash(attributes)
143
+ return nil unless attributes.is_a?(Hash)
144
+ self.class.openapi_types.each_pair do |key, type|
145
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
146
+ self.send("#{key}=", nil)
147
+ elsif type =~ /\AArray<(.*)>/i
148
+ # check to ensure the input is an array given that the attribute
149
+ # is documented as an array but the input is not
150
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
151
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
152
+ end
153
+ elsif !attributes[self.class.attribute_map[key]].nil?
154
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
+ end
156
+ end
157
+
158
+ self
159
+ end
160
+
161
+ # Deserializes the data based on type
162
+ # @param string type Data type
163
+ # @param string value Value to be deserialized
164
+ # @return [Object] Deserialized data
165
+ def _deserialize(type, value)
166
+ case type.to_sym
167
+ when :Time
168
+ Time.parse(value)
169
+ when :Date
170
+ Date.parse(value)
171
+ when :String
172
+ value.to_s
173
+ when :Integer
174
+ value.to_i
175
+ when :Float
176
+ value.to_f
177
+ when :Boolean
178
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
179
+ true
180
+ else
181
+ false
182
+ end
183
+ when :Object
184
+ # generic object (usually a Hash), return directly
185
+ value
186
+ when :Array
187
+ # generic array, return directly
188
+ value
189
+ when /\AArray<(?<inner_type>.+)>\z/
190
+ inner_type = Regexp.last_match[:inner_type]
191
+ value.map { |v| _deserialize(inner_type, v) }
192
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
193
+ k_type = Regexp.last_match[:k_type]
194
+ v_type = Regexp.last_match[:v_type]
195
+ {}.tap do |hash|
196
+ value.each do |k, v|
197
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
198
+ end
199
+ end
200
+ else # model
201
+ # models (e.g. Pet) or oneOf
202
+ klass = DatadogAPIClient::V1.const_get(type)
203
+ res = klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
204
+ if res.instance_of? DatadogAPIClient::V1::UnparsedObject
205
+ self._unparsed = true
206
+ end
207
+ res
208
+ end
209
+ end
210
+
211
+ # Returns the string representation of the object
212
+ # @return [String] String presentation of the object
213
+ def to_s
214
+ to_hash.to_s
215
+ end
216
+
217
+ # to_body is an alias to to_hash (backward compatibility)
218
+ # @return [Hash] Returns the object in the form of hash
219
+ def to_body
220
+ to_hash
221
+ end
222
+
223
+ # Returns the object in the form of hash
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_hash
226
+ hash = {}
227
+ self.class.attribute_map.each_pair do |attr, param|
228
+ value = self.send(attr)
229
+ if value.nil?
230
+ is_nullable = self.class.openapi_nullable.include?(attr)
231
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
232
+ end
233
+
234
+ hash[param] = _to_hash(value)
235
+ end
236
+ hash
237
+ end
238
+
239
+ # Outputs non-array value in the form of hash
240
+ # For object, use to_hash. Otherwise, just return the value
241
+ # @param [Object] value Any valid value
242
+ # @return [Hash] Returns the value in the form of hash
243
+ def _to_hash(value)
244
+ if value.is_a?(Array)
245
+ value.compact.map { |v| _to_hash(v) }
246
+ elsif value.is_a?(Hash)
247
+ {}.tap do |hash|
248
+ value.each { |k, v| hash[k] = _to_hash(v) }
249
+ end
250
+ elsif value.respond_to? :to_hash
251
+ value.to_hash
252
+ else
253
+ value
254
+ end
255
+ end
256
+
257
+ end
258
+
259
+ end
@@ -0,0 +1,42 @@
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://openapi-generator.tech
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
+ class NotebookMetadataType
21
+ POSTMORTEM = "postmortem".freeze
22
+ RUNBOOK = "runbook".freeze
23
+ INVESTIGATION = "investigation".freeze
24
+ DOCUMENTATION = "documentation".freeze
25
+ REPORT = "report".freeze
26
+
27
+ # Builds the enum from string
28
+ # @param [String] The enum value in the form of the string
29
+ # @return [String] The enum value
30
+ def self.build_from_hash(value)
31
+ new.build_from_hash(value)
32
+ end
33
+
34
+ # Builds the enum from string
35
+ # @param [String] The enum value in the form of the string
36
+ # @return [String] The enum value
37
+ def build_from_hash(value)
38
+ constantValues = NotebookMetadataType.constants.select { |c| NotebookMetadataType::const_get(c) == value }
39
+ constantValues.empty? ? DatadogAPIClient::V1::UnparsedObject.new(value) : value
40
+ end
41
+ end
42
+ end
@@ -30,6 +30,8 @@ module DatadogAPIClient::V1
30
30
  # UTC time stamp for when the notebook was created.
31
31
  attr_accessor :created
32
32
 
33
+ attr_accessor :metadata
34
+
33
35
  # UTC time stamp for when the notebook was last modified.
34
36
  attr_accessor :modified
35
37
 
@@ -46,6 +48,7 @@ module DatadogAPIClient::V1
46
48
  :'author' => :'author',
47
49
  :'cells' => :'cells',
48
50
  :'created' => :'created',
51
+ :'metadata' => :'metadata',
49
52
  :'modified' => :'modified',
50
53
  :'name' => :'name',
51
54
  :'status' => :'status',
@@ -64,6 +67,7 @@ module DatadogAPIClient::V1
64
67
  :'author' => :'NotebookAuthor',
65
68
  :'cells' => :'Array<NotebookCellResponse>',
66
69
  :'created' => :'Time',
70
+ :'metadata' => :'NotebookMetadata',
67
71
  :'modified' => :'Time',
68
72
  :'name' => :'String',
69
73
  :'status' => :'NotebookStatus',
@@ -106,6 +110,10 @@ module DatadogAPIClient::V1
106
110
  self.created = attributes[:'created']
107
111
  end
108
112
 
113
+ if attributes.key?(:'metadata')
114
+ self.metadata = attributes[:'metadata']
115
+ end
116
+
109
117
  if attributes.key?(:'modified')
110
118
  self.modified = attributes[:'modified']
111
119
  end
@@ -189,6 +197,7 @@ module DatadogAPIClient::V1
189
197
  author == o.author &&
190
198
  cells == o.cells &&
191
199
  created == o.created &&
200
+ metadata == o.metadata &&
192
201
  modified == o.modified &&
193
202
  name == o.name &&
194
203
  status == o.status &&
@@ -204,7 +213,7 @@ module DatadogAPIClient::V1
204
213
  # Calculates hash code according to all attributes.
205
214
  # @return [Integer] Hash code
206
215
  def hash
207
- [author, cells, created, modified, name, status, time].hash
216
+ [author, cells, created, metadata, modified, name, status, time].hash
208
217
  end
209
218
 
210
219
  # Builds the object from hash
@@ -25,6 +25,8 @@ module DatadogAPIClient::V1
25
25
  # List of cells to display in the notebook.
26
26
  attr_accessor :cells
27
27
 
28
+ attr_accessor :metadata
29
+
28
30
  # The name of the notebook.
29
31
  attr_accessor :name
30
32
 
@@ -36,6 +38,7 @@ module DatadogAPIClient::V1
36
38
  def self.attribute_map
37
39
  {
38
40
  :'cells' => :'cells',
41
+ :'metadata' => :'metadata',
39
42
  :'name' => :'name',
40
43
  :'status' => :'status',
41
44
  :'time' => :'time'
@@ -51,6 +54,7 @@ module DatadogAPIClient::V1
51
54
  def self.openapi_types
52
55
  {
53
56
  :'cells' => :'Array<NotebookUpdateCell>',
57
+ :'metadata' => :'NotebookMetadata',
54
58
  :'name' => :'String',
55
59
  :'status' => :'NotebookStatus',
56
60
  :'time' => :'NotebookGlobalTime'
@@ -84,6 +88,10 @@ module DatadogAPIClient::V1
84
88
  end
85
89
  end
86
90
 
91
+ if attributes.key?(:'metadata')
92
+ self.metadata = attributes[:'metadata']
93
+ end
94
+
87
95
  if attributes.key?(:'name')
88
96
  self.name = attributes[:'name']
89
97
  end
@@ -161,6 +169,7 @@ module DatadogAPIClient::V1
161
169
  return true if self.equal?(o)
162
170
  self.class == o.class &&
163
171
  cells == o.cells &&
172
+ metadata == o.metadata &&
164
173
  name == o.name &&
165
174
  status == o.status &&
166
175
  time == o.time
@@ -175,7 +184,7 @@ module DatadogAPIClient::V1
175
184
  # Calculates hash code according to all attributes.
176
185
  # @return [Integer] Hash code
177
186
  def hash
178
- [cells, name, status, time].hash
187
+ [cells, metadata, name, status, time].hash
179
188
  end
180
189
 
181
190
  # Builds the object from hash
@@ -30,6 +30,8 @@ module DatadogAPIClient::V1
30
30
  # UTC time stamp for when the notebook was created.
31
31
  attr_accessor :created
32
32
 
33
+ attr_accessor :metadata
34
+
33
35
  # UTC time stamp for when the notebook was last modified.
34
36
  attr_accessor :modified
35
37
 
@@ -46,6 +48,7 @@ module DatadogAPIClient::V1
46
48
  :'author' => :'author',
47
49
  :'cells' => :'cells',
48
50
  :'created' => :'created',
51
+ :'metadata' => :'metadata',
49
52
  :'modified' => :'modified',
50
53
  :'name' => :'name',
51
54
  :'status' => :'status',
@@ -64,6 +67,7 @@ module DatadogAPIClient::V1
64
67
  :'author' => :'NotebookAuthor',
65
68
  :'cells' => :'Array<NotebookCellResponse>',
66
69
  :'created' => :'Time',
70
+ :'metadata' => :'NotebookMetadata',
67
71
  :'modified' => :'Time',
68
72
  :'name' => :'String',
69
73
  :'status' => :'NotebookStatus',
@@ -106,6 +110,10 @@ module DatadogAPIClient::V1
106
110
  self.created = attributes[:'created']
107
111
  end
108
112
 
113
+ if attributes.key?(:'metadata')
114
+ self.metadata = attributes[:'metadata']
115
+ end
116
+
109
117
  if attributes.key?(:'modified')
110
118
  self.modified = attributes[:'modified']
111
119
  end
@@ -179,6 +187,7 @@ module DatadogAPIClient::V1
179
187
  author == o.author &&
180
188
  cells == o.cells &&
181
189
  created == o.created &&
190
+ metadata == o.metadata &&
182
191
  modified == o.modified &&
183
192
  name == o.name &&
184
193
  status == o.status &&
@@ -194,7 +203,7 @@ module DatadogAPIClient::V1
194
203
  # Calculates hash code according to all attributes.
195
204
  # @return [Integer] Hash code
196
205
  def hash
197
- [author, cells, created, modified, name, status, time].hash
206
+ [author, cells, created, metadata, modified, name, status, time].hash
198
207
  end
199
208
 
200
209
  # Builds the object from hash
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V1
20
- # Metadata returned by the API.
20
+ # Searches metadata returned by the API.
21
21
  class NotebooksResponseMeta
22
22
  # whether the object has unparsed attributes
23
23
  attr_accessor :_unparsed