datadog_api_client 1.10.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +1014 -166
  4. data/.generator/schemas/v2/openapi.yaml +1615 -86
  5. data/.generator/src/generator/cli.py +57 -40
  6. data/.generator/src/generator/formatter.py +14 -0
  7. data/.generator/src/generator/openapi.py +12 -6
  8. data/.generator/src/generator/templates/api.j2 +14 -13
  9. data/.generator/src/generator/templates/api_client.j2 +63 -11
  10. data/.generator/src/generator/templates/configuration.j2 +12 -8
  11. data/.generator/src/generator/templates/example.j2 +1 -1
  12. data/.generator/src/generator/templates/inflector.j2 +28 -0
  13. data/.generator/src/generator/templates/model_base.j2 +2 -2
  14. data/.generator/src/generator/templates/model_oneof.j2 +1 -1
  15. data/.generator/src/generator/templates/package.j2 +7 -12
  16. data/.github/workflows/approved_status.yml +0 -2
  17. data/.github/workflows/codeql-analysis.yml +49 -0
  18. data/.github/workflows/docs.yml +1 -1
  19. data/.github/workflows/prepare_release.yml +1 -1
  20. data/.github/workflows/publish.yml +1 -1
  21. data/.github/workflows/release.yml +1 -1
  22. data/.github/workflows/test.yml +4 -6
  23. data/.github/workflows/test_integration.yml +1 -8
  24. data/.pre-commit-config.yaml +3 -12
  25. data/CHANGELOG.md +69 -0
  26. data/Gemfile +1 -0
  27. data/Makefile +1 -2
  28. data/README.md +13 -13
  29. data/datadog_api_client.gemspec +2 -0
  30. data/examples/v1/dashboards/CreateDashboard_1442588603.rb +61 -0
  31. data/examples/v1/dashboards/CreateDashboard_252716965.rb +52 -0
  32. data/examples/v1/dashboards/CreateDashboard_3882428227.rb +60 -0
  33. data/examples/v1/downtimes/CreateDowntime_1393233946.rb +3 -0
  34. data/examples/v1/downtimes/CreateDowntime_2908359488.rb +3 -0
  35. data/examples/v1/downtimes/CreateDowntime_3059354445.rb +3 -0
  36. data/examples/v1/events/ListEvents.rb +1 -1
  37. data/examples/v1/metrics/SubmitDistributionPoints.rb +22 -0
  38. data/examples/v1/metrics/SubmitDistributionPoints_3109558960.rb +25 -0
  39. data/examples/v1/organizations/DowngradeOrg.rb +5 -0
  40. data/examples/v1/organizations/UpdateOrg.rb +1 -0
  41. data/examples/v1/service-level-objectives/GetSLOHistory.rb +1 -1
  42. data/examples/v1/service-level-objectives/SearchSLO.rb +16 -0
  43. data/examples/v1/snapshots/GetGraphSnapshot.rb +2 -0
  44. data/examples/v1/synthetics/CreateSyntheticsAPITest.rb +3 -0
  45. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_2932742688.rb +4 -1
  46. data/examples/v1/synthetics/GetAPITestLatestResults.rb +1 -1
  47. data/examples/v1/synthetics/GetAPITestResult.rb +1 -1
  48. data/examples/v1/synthetics/GetBrowserTestLatestResults.rb +1 -1
  49. data/examples/v1/synthetics/GetBrowserTestResult.rb +1 -1
  50. data/examples/v1/synthetics/UpdateBrowserTest.rb +3 -0
  51. data/examples/v1/usage-metering/GetDailyCustomReports.rb +1 -1
  52. data/examples/v1/usage-metering/GetHourlyUsageAttribution.rb +0 -3
  53. data/examples/v1/usage-metering/GetMonthlyCustomReports.rb +1 -1
  54. data/examples/v1/usage-metering/GetMonthlyUsageAttribution.rb +0 -3
  55. data/examples/v1/usage-metering/GetSpecifiedDailyCustomReports.rb +1 -1
  56. data/examples/v1/usage-metering/GetSpecifiedMonthlyCustomReports.rb +1 -1
  57. data/examples/v1/usage-metering/GetUsageAttribution.rb +1 -1
  58. data/examples/v1/usage-metering/GetUsageCIApp.rb +2 -5
  59. data/examples/v1/usage-metering/GetUsageCIApp_1064440884.rb +8 -0
  60. data/examples/v1/usage-metering/GetUsageCWS.rb +2 -5
  61. data/examples/v1/usage-metering/GetUsageCWS_736958514.rb +8 -0
  62. data/examples/v1/usage-metering/GetUsageDBM.rb +2 -5
  63. data/examples/v1/usage-metering/GetUsageDBM_3446806203.rb +8 -0
  64. data/examples/v1/usage-metering/GetUsageLambda.rb +2 -5
  65. data/examples/v1/usage-metering/GetUsageLambda_3132428705.rb +8 -0
  66. data/examples/v1/usage-metering/GetUsageLogs.rb +2 -5
  67. data/examples/v1/usage-metering/GetUsageLogsByIndex.rb +2 -5
  68. data/examples/v1/usage-metering/GetUsageLogsByIndex_1025184776.rb +8 -0
  69. data/examples/v1/usage-metering/GetUsageLogs_2562396405.rb +8 -0
  70. data/examples/v1/usage-metering/GetUsageNetworkFlows.rb +2 -5
  71. data/examples/v1/usage-metering/GetUsageNetworkFlows_1239422069.rb +8 -0
  72. data/examples/v1/usage-metering/GetUsageNetworkHosts.rb +2 -5
  73. data/examples/v1/usage-metering/GetUsageNetworkHosts_1249907835.rb +8 -0
  74. data/examples/v1/usage-metering/GetUsageOnlineArchive.rb +2 -5
  75. data/examples/v1/usage-metering/GetUsageOnlineArchive_1501172903.rb +8 -0
  76. data/examples/v1/usage-metering/GetUsageRumSessions.rb +2 -5
  77. data/examples/v1/usage-metering/GetUsageRumSessions_714937291.rb +8 -0
  78. data/examples/v1/usage-metering/GetUsageRumUnits.rb +2 -5
  79. data/examples/v1/usage-metering/GetUsageRumUnits_3959755399.rb +8 -0
  80. data/examples/v1/usage-metering/GetUsageSDS.rb +2 -5
  81. data/examples/v1/usage-metering/GetUsageSDS_271128478.rb +8 -0
  82. data/examples/v1/usage-metering/GetUsageSynthetics.rb +1 -1
  83. data/examples/v1/usage-metering/GetUsageSyntheticsAPI.rb +2 -5
  84. data/examples/v1/usage-metering/GetUsageSyntheticsAPI_4048033529.rb +8 -0
  85. data/examples/v1/usage-metering/GetUsageSyntheticsBrowser.rb +2 -5
  86. data/examples/v1/usage-metering/GetUsageSyntheticsBrowser_1704663299.rb +8 -0
  87. data/examples/v2/events/ListEvents.rb +8 -0
  88. data/examples/v2/events/ListEvents_2663715109.rb +14 -0
  89. data/examples/v2/events/SearchEvents.rb +23 -0
  90. data/examples/v2/incident-services/CreateIncidentService.rb +1 -1
  91. data/examples/v2/incident-services/DeleteIncidentService.rb +1 -1
  92. data/examples/v2/incident-services/GetIncidentService.rb +1 -1
  93. data/examples/v2/incident-services/ListIncidentServices.rb +1 -1
  94. data/examples/v2/incident-services/UpdateIncidentService.rb +1 -1
  95. data/examples/v2/incident-teams/CreateIncidentTeam.rb +1 -1
  96. data/examples/v2/incident-teams/DeleteIncidentTeam.rb +1 -1
  97. data/examples/v2/incident-teams/GetIncidentTeam.rb +1 -1
  98. data/examples/v2/incident-teams/ListIncidentTeams.rb +1 -1
  99. data/examples/v2/incident-teams/UpdateIncidentTeam.rb +1 -1
  100. data/examples/v2/incidents/CreateIncident.rb +1 -1
  101. data/examples/v2/incidents/DeleteIncident.rb +1 -1
  102. data/examples/v2/incidents/GetIncident.rb +1 -1
  103. data/examples/v2/incidents/ListIncidents.rb +1 -1
  104. data/examples/v2/incidents/UpdateIncident.rb +1 -1
  105. data/examples/v2/incidents/UpdateIncident_1009194038.rb +1 -1
  106. data/examples/v2/incidents/UpdateIncident_3369341440.rb +1 -1
  107. data/examples/v2/metrics/CreateTagConfiguration.rb +0 -3
  108. data/examples/v2/metrics/DeleteTagConfiguration.rb +0 -3
  109. data/examples/v2/metrics/ListTagConfigurationByName.rb +0 -3
  110. data/examples/v2/metrics/ListTagConfigurations.rb +0 -3
  111. data/examples/v2/metrics/ListTagConfigurations_103226315.rb +0 -3
  112. data/examples/v2/metrics/ListTagConfigurations_1799362914.rb +0 -3
  113. data/examples/v2/metrics/SubmitMetrics.rb +6 -0
  114. data/examples/v2/metrics/UpdateTagConfiguration.rb +0 -3
  115. data/examples/v2/opsgenie-integration/CreateOpsgenieService.rb +16 -0
  116. data/examples/v2/opsgenie-integration/DeleteOpsgenieService.rb +8 -0
  117. data/examples/v2/opsgenie-integration/GetOpsgenieService.rb +8 -0
  118. data/examples/v2/opsgenie-integration/ListOpsgenieServices.rb +5 -0
  119. data/examples/v2/opsgenie-integration/UpdateOpsgenieService.rb +21 -0
  120. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalAssignee.rb +15 -0
  121. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalIncidents.rb +15 -0
  122. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalState.rb +14 -0
  123. data/examples/v2/security-monitoring/ListSecurityMonitoringSignals.rb +0 -3
  124. data/examples/v2/security-monitoring/SearchSecurityMonitoringSignals.rb +0 -3
  125. data/examples/v2/security-monitoring/UpdateSecurityMonitoringRule.rb +4 -0
  126. data/examples/v2/usage-metering/GetEstimatedCostByOrg.rb +8 -0
  127. data/examples/v2/usage-metering/GetEstimatedCostByOrg_2734954020.rb +11 -0
  128. data/examples/v2/usage-metering/GetEstimatedCostByOrg_3186693804.rb +11 -0
  129. data/examples/v2/usage-metering/GetUsageApplicationSecurityMonitoring.rb +2 -5
  130. data/examples/v2/usage-metering/GetUsageApplicationSecurityMonitoring_3959166796.rb +8 -0
  131. data/examples/v2/usage-metering/GetUsageLambdaTracedInvocations.rb +2 -5
  132. data/examples/v2/usage-metering/GetUsageLambdaTracedInvocations_1436752065.rb +8 -0
  133. data/examples/v2/usage-metering/GetUsageObservabilityPipelines.rb +2 -5
  134. data/examples/v2/usage-metering/GetUsageObservabilityPipelines_970725512.rb +8 -0
  135. data/lib/datadog_api_client/{v2/api_client.rb → api_client.rb} +63 -11
  136. data/lib/datadog_api_client/api_key_configuration.rb +1 -18
  137. data/lib/datadog_api_client/{v1/configuration.rb → configuration.rb} +133 -29
  138. data/lib/datadog_api_client/inflector.rb +1293 -0
  139. data/lib/datadog_api_client/models.rb +66 -0
  140. data/lib/datadog_api_client/v1/api/authentication_api.rb +3 -11
  141. data/lib/datadog_api_client/v1/api/aws_integration_api.rb +19 -91
  142. data/lib/datadog_api_client/v1/api/aws_logs_integration_api.rb +15 -71
  143. data/lib/datadog_api_client/v1/api/azure_integration_api.rb +11 -51
  144. data/lib/datadog_api_client/v1/api/dashboard_lists_api.rb +11 -51
  145. data/lib/datadog_api_client/v1/api/dashboards_api.rb +15 -71
  146. data/lib/datadog_api_client/v1/api/downtimes_api.rb +15 -71
  147. data/lib/datadog_api_client/v1/api/events_api.rb +9 -33
  148. data/lib/datadog_api_client/v1/api/gcp_integration_api.rb +9 -41
  149. data/lib/datadog_api_client/v1/api/hosts_api.rb +9 -41
  150. data/lib/datadog_api_client/v1/api/ip_ranges_api.rb +3 -11
  151. data/lib/datadog_api_client/v1/api/key_management_api.rb +21 -101
  152. data/lib/datadog_api_client/v1/api/logs_api.rb +5 -21
  153. data/lib/datadog_api_client/v1/api/logs_indexes_api.rb +13 -61
  154. data/lib/datadog_api_client/v1/api/logs_pipelines_api.rb +15 -71
  155. data/lib/datadog_api_client/v1/api/metrics_api.rb +86 -61
  156. data/lib/datadog_api_client/v1/api/monitors_api.rb +21 -101
  157. data/lib/datadog_api_client/v1/api/notebooks_api.rb +11 -51
  158. data/lib/datadog_api_client/v1/api/organizations_api.rb +77 -52
  159. data/lib/datadog_api_client/v1/api/pager_duty_integration_api.rb +9 -41
  160. data/lib/datadog_api_client/v1/api/security_monitoring_api.rb +10 -34
  161. data/lib/datadog_api_client/v1/api/service_checks_api.rb +3 -11
  162. data/lib/datadog_api_client/v1/api/service_level_objective_corrections_api.rb +11 -51
  163. data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +100 -94
  164. data/lib/datadog_api_client/v1/api/slack_integration_api.rb +11 -51
  165. data/lib/datadog_api_client/v1/api/snapshots_api.rb +7 -11
  166. data/lib/datadog_api_client/v1/api/synthetics_api.rb +55 -271
  167. data/lib/datadog_api_client/v1/api/tags_api.rb +11 -51
  168. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +175 -418
  169. data/lib/datadog_api_client/v1/api/users_api.rb +11 -51
  170. data/lib/datadog_api_client/v1/api/webhooks_integration_api.rb +17 -81
  171. data/lib/datadog_api_client/v1/model_base.rb +2 -2
  172. data/lib/datadog_api_client/v1/models/distribution_point_item.rb +63 -0
  173. data/lib/datadog_api_client/v1/models/distribution_points_content_encoding.rb +26 -0
  174. data/lib/datadog_api_client/v1/models/distribution_points_payload.rb +124 -0
  175. data/lib/datadog_api_client/v1/models/distribution_points_series.rb +179 -0
  176. data/lib/datadog_api_client/v1/models/distribution_points_type.rb +26 -0
  177. data/lib/datadog_api_client/v1/models/distribution_widget_histogram_request_query.rb +64 -0
  178. data/lib/datadog_api_client/v1/models/distribution_widget_histogram_request_type.rb +26 -0
  179. data/lib/datadog_api_client/v1/models/distribution_widget_request.rb +21 -1
  180. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stat_name.rb +1 -0
  181. data/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb +1 -1
  182. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_body.rb +5 -1
  183. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +9 -0
  184. data/lib/datadog_api_client/v1/models/ip_prefixes_synthetics_private_locations.rb +125 -0
  185. data/lib/datadog_api_client/v1/models/ip_ranges.rb +11 -1
  186. data/lib/datadog_api_client/v1/models/logs_processor.rb +1 -1
  187. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_query_definition.rb +1 -1
  188. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_body.rb +6 -2
  189. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +18 -0
  190. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +61 -1
  191. data/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb +1 -1
  192. data/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb +1 -1
  193. data/lib/datadog_api_client/v1/models/notebook_cell_time.rb +1 -1
  194. data/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb +1 -1
  195. data/lib/datadog_api_client/v1/models/notebook_global_time.rb +1 -1
  196. data/lib/datadog_api_client/v1/models/notebook_update_cell.rb +1 -1
  197. data/lib/datadog_api_client/v1/models/org_downgraded_response.rb +111 -0
  198. data/lib/datadog_api_client/v1/models/organization.rb +14 -4
  199. data/lib/datadog_api_client/v1/models/search_slo_response.rb +131 -0
  200. data/lib/datadog_api_client/v1/models/search_slo_response_data.rb +121 -0
  201. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes.rb +123 -0
  202. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets.rb +197 -0
  203. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets_object_int.rb +121 -0
  204. data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes_facets_object_string.rb +121 -0
  205. data/lib/datadog_api_client/v1/models/search_slo_response_links.rb +151 -0
  206. data/lib/datadog_api_client/v1/models/search_slo_response_meta.rb +111 -0
  207. data/lib/datadog_api_client/v1/models/search_slo_response_meta_page.rb +181 -0
  208. data/lib/datadog_api_client/v1/models/service_level_objective.rb +3 -3
  209. data/lib/datadog_api_client/v1/models/service_level_objective_query.rb +1 -1
  210. data/lib/datadog_api_client/v1/models/service_level_objective_request.rb +3 -3
  211. data/lib/datadog_api_client/v1/models/slo_history_metrics.rb +1 -1
  212. data/lib/datadog_api_client/v1/models/slo_response_data.rb +1 -1
  213. data/lib/datadog_api_client/v1/models/sunburst_widget_legend.rb +1 -1
  214. data/lib/datadog_api_client/v1/models/synthetics_api_test.rb +11 -0
  215. data/lib/datadog_api_client/v1/models/synthetics_assertion.rb +1 -1
  216. data/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb +1 -1
  217. data/lib/datadog_api_client/v1/models/synthetics_browser_test.rb +11 -0
  218. data/lib/datadog_api_client/v1/models/synthetics_core_web_vitals.rb +2 -2
  219. data/lib/datadog_api_client/v1/models/synthetics_test_ci_options.rb +111 -0
  220. data/lib/datadog_api_client/v1/models/synthetics_test_options.rb +11 -1
  221. data/lib/datadog_api_client/v1/models/tree_map_color_by.rb +1 -1
  222. data/lib/datadog_api_client/v1/models/tree_map_group_by.rb +1 -1
  223. data/lib/datadog_api_client/v1/models/tree_map_size_by.rb +1 -1
  224. data/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb +28 -6
  225. data/lib/datadog_api_client/v1/models/usage_attribution_body.rb +6 -2
  226. data/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +6 -0
  227. data/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +6 -0
  228. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +61 -1
  229. data/lib/datadog_api_client/v1/models/usage_billable_summary_keys.rb +474 -4
  230. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -1
  231. data/lib/datadog_api_client/v2/api/audit_api.rb +11 -25
  232. data/lib/datadog_api_client/v2/api/authn_mappings_api.rb +11 -51
  233. data/lib/datadog_api_client/v2/api/cloud_workload_security_api.rb +14 -62
  234. data/lib/datadog_api_client/v2/api/dashboard_lists_api.rb +9 -41
  235. data/lib/datadog_api_client/v2/api/events_api.rb +228 -0
  236. data/lib/datadog_api_client/v2/api/incident_services_api.rb +36 -46
  237. data/lib/datadog_api_client/v2/api/incident_teams_api.rb +36 -46
  238. data/lib/datadog_api_client/v2/api/incidents_api.rb +39 -48
  239. data/lib/datadog_api_client/v2/api/key_management_api.rb +29 -141
  240. data/lib/datadog_api_client/v2/api/logs_api.rb +15 -45
  241. data/lib/datadog_api_client/v2/api/logs_archives_api.rb +21 -101
  242. data/lib/datadog_api_client/v2/api/logs_metrics_api.rb +11 -51
  243. data/lib/datadog_api_client/v2/api/metrics_api.rb +26 -114
  244. data/lib/datadog_api_client/v2/api/opsgenie_integration_api.rb +355 -0
  245. data/lib/datadog_api_client/v2/api/organizations_api.rb +3 -11
  246. data/lib/datadog_api_client/v2/api/processes_api.rb +6 -13
  247. data/lib/datadog_api_client/v2/api/roles_api.rb +27 -131
  248. data/lib/datadog_api_client/v2/api/rum_api.rb +13 -35
  249. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +247 -125
  250. data/lib/datadog_api_client/v2/api/service_accounts_api.rb +11 -51
  251. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +190 -50
  252. data/lib/datadog_api_client/v2/api/users_api.rb +21 -101
  253. data/lib/datadog_api_client/v2/model_base.rb +2 -2
  254. data/lib/datadog_api_client/v2/models/api_key_response_included_item.rb +1 -1
  255. data/lib/datadog_api_client/v2/models/application_key_response_included_item.rb +1 -1
  256. data/lib/datadog_api_client/v2/models/authn_mapping_included.rb +1 -1
  257. data/lib/datadog_api_client/v2/models/event.rb +141 -0
  258. data/lib/datadog_api_client/v2/models/event_attributes.rb +305 -0
  259. data/lib/datadog_api_client/v2/models/event_priority.rb +27 -0
  260. data/lib/datadog_api_client/v2/models/event_response.rb +133 -0
  261. data/lib/datadog_api_client/v2/models/event_response_attributes.rb +133 -0
  262. data/lib/datadog_api_client/v2/models/event_status_type.rb +35 -0
  263. data/lib/datadog_api_client/v2/models/event_type.rb +26 -0
  264. data/lib/datadog_api_client/v2/models/events_list_request.rb +142 -0
  265. data/lib/datadog_api_client/v2/models/events_list_response.rb +133 -0
  266. data/lib/datadog_api_client/v2/models/events_list_response_links.rb +112 -0
  267. data/lib/datadog_api_client/v2/models/events_query_filter.rb +137 -0
  268. data/lib/datadog_api_client/v2/models/events_query_options.rb +124 -0
  269. data/lib/datadog_api_client/v2/models/events_request_page.rb +134 -0
  270. data/lib/datadog_api_client/v2/models/events_response_metadata.rb +144 -0
  271. data/lib/datadog_api_client/v2/models/events_response_metadata_page.rb +112 -0
  272. data/lib/datadog_api_client/v2/models/events_sort.rb +27 -0
  273. data/lib/datadog_api_client/v2/models/events_warning.rb +131 -0
  274. data/lib/datadog_api_client/v2/models/hourly_usage.rb +133 -0
  275. data/lib/datadog_api_client/v2/models/hourly_usage_attributes.rb +163 -0
  276. data/lib/datadog_api_client/v2/models/hourly_usage_measurement.rb +122 -0
  277. data/lib/datadog_api_client/v2/models/hourly_usage_metadata.rb +111 -0
  278. data/lib/datadog_api_client/v2/models/hourly_usage_pagination.rb +112 -0
  279. data/lib/datadog_api_client/v2/models/hourly_usage_response.rb +123 -0
  280. data/lib/datadog_api_client/v2/models/incident_field_attributes.rb +1 -1
  281. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  282. data/lib/datadog_api_client/v2/models/incident_service_included_items.rb +1 -1
  283. data/lib/datadog_api_client/v2/models/incident_team_included_items.rb +1 -1
  284. data/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb +1 -1
  285. data/lib/datadog_api_client/v2/models/intake_payload_accepted.rb +10 -8
  286. data/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb +1 -1
  287. data/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb +1 -1
  288. data/lib/datadog_api_client/v2/models/logs_archive_destination.rb +1 -1
  289. data/lib/datadog_api_client/v2/models/logs_group_by_missing.rb +1 -1
  290. data/lib/datadog_api_client/v2/models/logs_group_by_total.rb +1 -1
  291. data/lib/datadog_api_client/v2/models/metric_intake_type.rb +1 -2
  292. data/lib/datadog_api_client/v2/models/metric_resource.rb +2 -2
  293. data/lib/datadog_api_client/v2/models/metric_series.rb +1 -1
  294. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +0 -2
  295. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +0 -2
  296. data/lib/datadog_api_client/v2/models/metric_volumes.rb +1 -1
  297. data/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb +1 -1
  298. data/lib/datadog_api_client/v2/models/monitor_type.rb +215 -0
  299. data/lib/datadog_api_client/v2/models/opsgenie_service_create_attributes.rb +174 -0
  300. data/lib/datadog_api_client/v2/models/opsgenie_service_create_data.rb +145 -0
  301. data/lib/datadog_api_client/v2/models/opsgenie_service_create_request.rb +122 -0
  302. data/lib/datadog_api_client/v2/models/opsgenie_service_region_type.rb +28 -0
  303. data/lib/datadog_api_client/v2/models/opsgenie_service_response.rb +122 -0
  304. data/lib/datadog_api_client/v2/models/opsgenie_service_response_attributes.rb +132 -0
  305. data/lib/datadog_api_client/v2/models/opsgenie_service_response_data.rb +166 -0
  306. data/lib/datadog_api_client/v2/models/opsgenie_service_type.rb +26 -0
  307. data/lib/datadog_api_client/v2/models/opsgenie_service_update_attributes.rb +142 -0
  308. data/lib/datadog_api_client/v2/models/opsgenie_service_update_data.rb +166 -0
  309. data/lib/datadog_api_client/v2/models/opsgenie_service_update_request.rb +122 -0
  310. data/lib/datadog_api_client/v2/models/opsgenie_services_response.rb +124 -0
  311. data/lib/datadog_api_client/v2/models/rum_aggregate_bucket_value.rb +1 -1
  312. data/lib/datadog_api_client/v2/models/rum_group_by_missing.rb +1 -1
  313. data/lib/datadog_api_client/v2/models/rum_group_by_total.rb +1 -1
  314. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +30 -4
  315. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_method.rb +27 -0
  316. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options_learning_threshold.rb +27 -0
  317. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +13 -1
  318. data/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb +13 -1
  319. data/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb +13 -1
  320. data/lib/datadog_api_client/v2/models/security_monitoring_signal_archive_reason.rb +29 -0
  321. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_attributes.rb +132 -0
  322. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_data.rb +122 -0
  323. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_request.rb +122 -0
  324. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_attributes.rb +134 -0
  325. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_data.rb +122 -0
  326. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_request.rb +122 -0
  327. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state.rb +28 -0
  328. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_attributes.rb +152 -0
  329. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_data.rb +122 -0
  330. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_request.rb +122 -0
  331. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_attributes.rb +248 -0
  332. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_update_data.rb +111 -0
  333. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_update_response.rb +122 -0
  334. data/lib/datadog_api_client/v2/models/security_monitoring_triage_user.rb +152 -0
  335. data/lib/datadog_api_client/v2/models/user_response_included_item.rb +1 -1
  336. data/lib/datadog_api_client/version.rb +1 -1
  337. data/lib/datadog_api_client.rb +11 -5
  338. data/spec/{v1/api_client_spec.rb → api_client_spec.rb} +29 -29
  339. data/spec/{v1/configuration_spec.rb → configuration_spec.rb} +3 -3
  340. data/spec/spec_helper.rb +1 -3
  341. metadata +144 -20
  342. data/.dockerignore +0 -1
  343. data/.generator/src/generator/templates/api_error.j2 +0 -49
  344. data/lib/datadog_api_client/v1/api_client.rb +0 -453
  345. data/lib/datadog_api_client/v1/api_error.rb +0 -60
  346. data/lib/datadog_api_client/v1.rb +0 -794
  347. data/lib/datadog_api_client/v2/api_error.rb +0 -60
  348. data/lib/datadog_api_client/v2/configuration.rb +0 -427
  349. data/lib/datadog_api_client/v2.rb +0 -540
  350. data/spec/v2/api_client_spec.rb +0 -210
  351. data/spec/v2/configuration_spec.rb +0 -45
@@ -0,0 +1,124 @@
1
+ =begin
2
+ #Datadog API V2 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::V2
20
+ # Response with a list of Opsgenie services.
21
+ class OpsgenieServicesResponse
22
+ include BaseGenericModel
23
+
24
+ # Whether the object has unparsed attributes
25
+ # @!visibility private
26
+ attr_accessor :_unparsed
27
+
28
+ # An array of Opsgenie services.
29
+ attr_accessor :data
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ # @!visibility private
33
+ def self.attribute_map
34
+ {
35
+ :'data' => :'data'
36
+ }
37
+ end
38
+
39
+ # Returns all the JSON keys this model knows about
40
+ # @!visibility private
41
+ def self.acceptable_attributes
42
+ attribute_map.values
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'data' => :'Array<OpsgenieServiceResponseData>'
50
+ }
51
+ end
52
+
53
+ # List of attributes with nullable: true
54
+ # @!visibility private
55
+ def self.openapi_nullable
56
+ Set.new([
57
+ ])
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param attributes [Hash] Model attributes in the form of hash
62
+ # @!visibility private
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::OpsgenieServicesResponse` initialize method"
66
+ end
67
+
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h|
70
+ if (!self.class.attribute_map.key?(k.to_sym))
71
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::OpsgenieServicesResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ end
73
+ h[k.to_sym] = v
74
+ }
75
+
76
+ if attributes.key?(:'data')
77
+ if (value = attributes[:'data']).is_a?(Array)
78
+ self.data = value
79
+ end
80
+ end
81
+ end
82
+
83
+ # Check to see if the all the properties in the model are valid
84
+ # @return true if the model is valid
85
+ # @!visibility private
86
+ def valid?
87
+ return false if @data.nil?
88
+ true
89
+ end
90
+
91
+ # Custom attribute writer method with validation
92
+ # @param data [Object] Object to be assigned
93
+ # @!visibility private
94
+ def data=(data)
95
+ if data.nil?
96
+ fail ArgumentError, 'invalid value for "data", data cannot be nil.'
97
+ end
98
+ @data = data
99
+ end
100
+
101
+ # Checks equality by comparing each attribute.
102
+ # @param o [Object] Object to be compared
103
+ # @!visibility private
104
+ def ==(o)
105
+ return true if self.equal?(o)
106
+ self.class == o.class &&
107
+ data == o.data
108
+ end
109
+
110
+ # @see the `==` method
111
+ # @param o [Object] Object to be compared
112
+ # @!visibility private
113
+ def eql?(o)
114
+ self == o
115
+ end
116
+
117
+ # Calculates hash code according to all attributes.
118
+ # @return [Integer] Hash code
119
+ # @!visibility private
120
+ def hash
121
+ [data].hash
122
+ end
123
+ end
124
+ end
@@ -56,7 +56,7 @@ module DatadogAPIClient::V2
56
56
  data
57
57
  else
58
58
  self._unparsed = true
59
- DatadogAPIClient::V2::UnparsedObject.new(data)
59
+ DatadogAPIClient::UnparsedObject.new(data)
60
60
  end
61
61
  end
62
62
  end
@@ -55,7 +55,7 @@ module DatadogAPIClient::V2
55
55
  data
56
56
  else
57
57
  self._unparsed = true
58
- DatadogAPIClient::V2::UnparsedObject.new(data)
58
+ DatadogAPIClient::UnparsedObject.new(data)
59
59
  end
60
60
  end
61
61
  end
@@ -56,7 +56,7 @@ module DatadogAPIClient::V2
56
56
  data
57
57
  else
58
58
  self._unparsed = true
59
- DatadogAPIClient::V2::UnparsedObject.new(data)
59
+ DatadogAPIClient::UnparsedObject.new(data)
60
60
  end
61
61
  end
62
62
  end
@@ -32,12 +32,20 @@ module DatadogAPIClient::V2
32
32
  # weren't learned. If set to 0, a signal will be generated for all new values after the first value is learned.
33
33
  attr_accessor :learning_duration
34
34
 
35
+ # The learning method used to determine when signals should be generated for values that weren't learned.
36
+ attr_accessor :learning_method
37
+
38
+ # A number of occurrences after which signals will be generated for values that weren't learned.
39
+ attr_accessor :learning_threshold
40
+
35
41
  # Attribute mapping from ruby-style variable name to JSON key.
36
42
  # @!visibility private
37
43
  def self.attribute_map
38
44
  {
39
45
  :'forget_after' => :'forgetAfter',
40
- :'learning_duration' => :'learningDuration'
46
+ :'learning_duration' => :'learningDuration',
47
+ :'learning_method' => :'learningMethod',
48
+ :'learning_threshold' => :'learningThreshold'
41
49
  }
42
50
  end
43
51
 
@@ -52,7 +60,9 @@ module DatadogAPIClient::V2
52
60
  def self.openapi_types
53
61
  {
54
62
  :'forget_after' => :'SecurityMonitoringRuleNewValueOptionsForgetAfter',
55
- :'learning_duration' => :'SecurityMonitoringRuleNewValueOptionsLearningDuration'
63
+ :'learning_duration' => :'SecurityMonitoringRuleNewValueOptionsLearningDuration',
64
+ :'learning_method' => :'SecurityMonitoringRuleNewValueOptionsLearningMethod',
65
+ :'learning_threshold' => :'SecurityMonitoringRuleNewValueOptionsLearningThreshold'
56
66
  }
57
67
  end
58
68
 
@@ -85,6 +95,20 @@ module DatadogAPIClient::V2
85
95
 
86
96
  if attributes.key?(:'learning_duration')
87
97
  self.learning_duration = attributes[:'learning_duration']
98
+ else
99
+ self.learning_duration = 0
100
+ end
101
+
102
+ if attributes.key?(:'learning_method')
103
+ self.learning_method = attributes[:'learning_method']
104
+ else
105
+ self.learning_method = 'duration'
106
+ end
107
+
108
+ if attributes.key?(:'learning_threshold')
109
+ self.learning_threshold = attributes[:'learning_threshold']
110
+ else
111
+ self.learning_threshold = 0
88
112
  end
89
113
  end
90
114
 
@@ -102,7 +126,9 @@ module DatadogAPIClient::V2
102
126
  return true if self.equal?(o)
103
127
  self.class == o.class &&
104
128
  forget_after == o.forget_after &&
105
- learning_duration == o.learning_duration
129
+ learning_duration == o.learning_duration &&
130
+ learning_method == o.learning_method &&
131
+ learning_threshold == o.learning_threshold
106
132
  end
107
133
 
108
134
  # @see the `==` method
@@ -116,7 +142,7 @@ module DatadogAPIClient::V2
116
142
  # @return [Integer] Hash code
117
143
  # @!visibility private
118
144
  def hash
119
- [forget_after, learning_duration].hash
145
+ [forget_after, learning_duration, learning_method, learning_threshold].hash
120
146
  end
121
147
  end
122
148
  end
@@ -0,0 +1,27 @@
1
+ =begin
2
+ #Datadog API V2 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::V2
20
+ # The learning method used to determine when signals should be generated for values that weren't learned.
21
+ class SecurityMonitoringRuleNewValueOptionsLearningMethod
22
+ include BaseEnumModel
23
+
24
+ DURATION = "duration".freeze
25
+ THRESHOLD = "threshold".freeze
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ =begin
2
+ #Datadog API V2 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::V2
20
+ # A number of occurrences after which signals will be generated for values that weren't learned.
21
+ class SecurityMonitoringRuleNewValueOptionsLearningThreshold
22
+ include BaseEnumModel
23
+
24
+ ZERO_OCCURRENCES = 0.freeze
25
+ ONE_OCCURRENCE = 1.freeze
26
+ end
27
+ end
@@ -25,6 +25,11 @@ module DatadogAPIClient::V2
25
25
  # @!visibility private
26
26
  attr_accessor :_unparsed
27
27
 
28
+ # If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce signal noise.
29
+ # The severity is decreased by one level: `CRITICAL` in production becomes `HIGH` in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` remains `INFO`.
30
+ # The decrement is applied when the environment tag of the signal starts with `staging`, `test` or `dev`.
31
+ attr_accessor :decrease_criticality_based_on_env
32
+
28
33
  # The detection method.
29
34
  attr_accessor :detection_method
30
35
 
@@ -53,6 +58,7 @@ module DatadogAPIClient::V2
53
58
  # @!visibility private
54
59
  def self.attribute_map
55
60
  {
61
+ :'decrease_criticality_based_on_env' => :'decreaseCriticalityBasedOnEnv',
56
62
  :'detection_method' => :'detectionMethod',
57
63
  :'evaluation_window' => :'evaluationWindow',
58
64
  :'hardcoded_evaluator_type' => :'hardcodedEvaluatorType',
@@ -73,6 +79,7 @@ module DatadogAPIClient::V2
73
79
  # @!visibility private
74
80
  def self.openapi_types
75
81
  {
82
+ :'decrease_criticality_based_on_env' => :'Boolean',
76
83
  :'detection_method' => :'SecurityMonitoringRuleDetectionMethod',
77
84
  :'evaluation_window' => :'SecurityMonitoringRuleEvaluationWindow',
78
85
  :'hardcoded_evaluator_type' => :'SecurityMonitoringRuleHardcodedEvaluatorType',
@@ -106,6 +113,10 @@ module DatadogAPIClient::V2
106
113
  h[k.to_sym] = v
107
114
  }
108
115
 
116
+ if attributes.key?(:'decrease_criticality_based_on_env')
117
+ self.decrease_criticality_based_on_env = attributes[:'decrease_criticality_based_on_env']
118
+ end
119
+
109
120
  if attributes.key?(:'detection_method')
110
121
  self.detection_method = attributes[:'detection_method']
111
122
  end
@@ -148,6 +159,7 @@ module DatadogAPIClient::V2
148
159
  def ==(o)
149
160
  return true if self.equal?(o)
150
161
  self.class == o.class &&
162
+ decrease_criticality_based_on_env == o.decrease_criticality_based_on_env &&
151
163
  detection_method == o.detection_method &&
152
164
  evaluation_window == o.evaluation_window &&
153
165
  hardcoded_evaluator_type == o.hardcoded_evaluator_type &&
@@ -168,7 +180,7 @@ module DatadogAPIClient::V2
168
180
  # @return [Integer] Hash code
169
181
  # @!visibility private
170
182
  def hash
171
- [detection_method, evaluation_window, hardcoded_evaluator_type, impossible_travel_options, keep_alive, max_signal_duration, new_value_options].hash
183
+ [decrease_criticality_based_on_env, detection_method, evaluation_window, hardcoded_evaluator_type, impossible_travel_options, keep_alive, max_signal_duration, new_value_options].hash
172
184
  end
173
185
  end
174
186
  end
@@ -38,6 +38,9 @@ module DatadogAPIClient::V2
38
38
  # aggregations.
39
39
  attr_accessor :metric
40
40
 
41
+ # Group of target fields to aggregate over when using the new value aggregations.
42
+ attr_accessor :metrics
43
+
41
44
  # Name of the query.
42
45
  attr_accessor :name
43
46
 
@@ -52,6 +55,7 @@ module DatadogAPIClient::V2
52
55
  :'distinct_fields' => :'distinctFields',
53
56
  :'group_by_fields' => :'groupByFields',
54
57
  :'metric' => :'metric',
58
+ :'metrics' => :'metrics',
55
59
  :'name' => :'name',
56
60
  :'query' => :'query'
57
61
  }
@@ -71,6 +75,7 @@ module DatadogAPIClient::V2
71
75
  :'distinct_fields' => :'Array<String>',
72
76
  :'group_by_fields' => :'Array<String>',
73
77
  :'metric' => :'String',
78
+ :'metrics' => :'Array<String>',
74
79
  :'name' => :'String',
75
80
  :'query' => :'String'
76
81
  }
@@ -119,6 +124,12 @@ module DatadogAPIClient::V2
119
124
  self.metric = attributes[:'metric']
120
125
  end
121
126
 
127
+ if attributes.key?(:'metrics')
128
+ if (value = attributes[:'metrics']).is_a?(Array)
129
+ self.metrics = value
130
+ end
131
+ end
132
+
122
133
  if attributes.key?(:'name')
123
134
  self.name = attributes[:'name']
124
135
  end
@@ -145,6 +156,7 @@ module DatadogAPIClient::V2
145
156
  distinct_fields == o.distinct_fields &&
146
157
  group_by_fields == o.group_by_fields &&
147
158
  metric == o.metric &&
159
+ metrics == o.metrics &&
148
160
  name == o.name &&
149
161
  query == o.query
150
162
  end
@@ -160,7 +172,7 @@ module DatadogAPIClient::V2
160
172
  # @return [Integer] Hash code
161
173
  # @!visibility private
162
174
  def hash
163
- [aggregation, distinct_fields, group_by_fields, metric, name, query].hash
175
+ [aggregation, distinct_fields, group_by_fields, metric, metrics, name, query].hash
164
176
  end
165
177
  end
166
178
  end
@@ -38,6 +38,9 @@ module DatadogAPIClient::V2
38
38
  # aggregations.
39
39
  attr_accessor :metric
40
40
 
41
+ # Group of target fields to aggregate over when using the new value aggregations.
42
+ attr_accessor :metrics
43
+
41
44
  # Name of the query.
42
45
  attr_accessor :name
43
46
 
@@ -52,6 +55,7 @@ module DatadogAPIClient::V2
52
55
  :'distinct_fields' => :'distinctFields',
53
56
  :'group_by_fields' => :'groupByFields',
54
57
  :'metric' => :'metric',
58
+ :'metrics' => :'metrics',
55
59
  :'name' => :'name',
56
60
  :'query' => :'query'
57
61
  }
@@ -71,6 +75,7 @@ module DatadogAPIClient::V2
71
75
  :'distinct_fields' => :'Array<String>',
72
76
  :'group_by_fields' => :'Array<String>',
73
77
  :'metric' => :'String',
78
+ :'metrics' => :'Array<String>',
74
79
  :'name' => :'String',
75
80
  :'query' => :'String'
76
81
  }
@@ -119,6 +124,12 @@ module DatadogAPIClient::V2
119
124
  self.metric = attributes[:'metric']
120
125
  end
121
126
 
127
+ if attributes.key?(:'metrics')
128
+ if (value = attributes[:'metrics']).is_a?(Array)
129
+ self.metrics = value
130
+ end
131
+ end
132
+
122
133
  if attributes.key?(:'name')
123
134
  self.name = attributes[:'name']
124
135
  end
@@ -156,6 +167,7 @@ module DatadogAPIClient::V2
156
167
  distinct_fields == o.distinct_fields &&
157
168
  group_by_fields == o.group_by_fields &&
158
169
  metric == o.metric &&
170
+ metrics == o.metrics &&
159
171
  name == o.name &&
160
172
  query == o.query
161
173
  end
@@ -171,7 +183,7 @@ module DatadogAPIClient::V2
171
183
  # @return [Integer] Hash code
172
184
  # @!visibility private
173
185
  def hash
174
- [aggregation, distinct_fields, group_by_fields, metric, name, query].hash
186
+ [aggregation, distinct_fields, group_by_fields, metric, metrics, name, query].hash
175
187
  end
176
188
  end
177
189
  end
@@ -0,0 +1,29 @@
1
+ =begin
2
+ #Datadog API V2 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::V2
20
+ # Reason a signal is archived.
21
+ class SecurityMonitoringSignalArchiveReason
22
+ include BaseEnumModel
23
+
24
+ NONE = "none".freeze
25
+ FALSE_POSITIVE = "false_positive".freeze
26
+ TESTING_OR_MAINTENANCE = "testing_or_maintenance".freeze
27
+ OTHER = "other".freeze
28
+ end
29
+ end
@@ -0,0 +1,132 @@
1
+ =begin
2
+ #Datadog API V2 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::V2
20
+ # Attributes describing the new assignee of a security signal.
21
+ class SecurityMonitoringSignalAssigneeUpdateAttributes
22
+ include BaseGenericModel
23
+
24
+ # Whether the object has unparsed attributes
25
+ # @!visibility private
26
+ attr_accessor :_unparsed
27
+
28
+ # Object representing a given user entity.
29
+ attr_accessor :assignee
30
+
31
+ # Version of the updated signal. If server side version is higher, update will be rejected.
32
+ attr_accessor :version
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ # @!visibility private
36
+ def self.attribute_map
37
+ {
38
+ :'assignee' => :'assignee',
39
+ :'version' => :'version'
40
+ }
41
+ end
42
+
43
+ # Returns all the JSON keys this model knows about
44
+ # @!visibility private
45
+ def self.acceptable_attributes
46
+ attribute_map.values
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'assignee' => :'SecurityMonitoringTriageUser',
54
+ :'version' => :'Integer'
55
+ }
56
+ end
57
+
58
+ # List of attributes with nullable: true
59
+ # @!visibility private
60
+ def self.openapi_nullable
61
+ Set.new([
62
+ ])
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param attributes [Hash] Model attributes in the form of hash
67
+ # @!visibility private
68
+ def initialize(attributes = {})
69
+ if (!attributes.is_a?(Hash))
70
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSignalAssigneeUpdateAttributes` initialize method"
71
+ end
72
+
73
+ # check to see if the attribute exists and convert string to symbol for hash key
74
+ attributes = attributes.each_with_object({}) { |(k, v), h|
75
+ if (!self.class.attribute_map.key?(k.to_sym))
76
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::SecurityMonitoringSignalAssigneeUpdateAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
77
+ end
78
+ h[k.to_sym] = v
79
+ }
80
+
81
+ if attributes.key?(:'assignee')
82
+ self.assignee = attributes[:'assignee']
83
+ end
84
+
85
+ if attributes.key?(:'version')
86
+ self.version = attributes[:'version']
87
+ end
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ # @!visibility private
93
+ def valid?
94
+ return false if @assignee.nil?
95
+ true
96
+ end
97
+
98
+ # Custom attribute writer method with validation
99
+ # @param assignee [Object] Object to be assigned
100
+ # @!visibility private
101
+ def assignee=(assignee)
102
+ if assignee.nil?
103
+ fail ArgumentError, 'invalid value for "assignee", assignee cannot be nil.'
104
+ end
105
+ @assignee = assignee
106
+ end
107
+
108
+ # Checks equality by comparing each attribute.
109
+ # @param o [Object] Object to be compared
110
+ # @!visibility private
111
+ def ==(o)
112
+ return true if self.equal?(o)
113
+ self.class == o.class &&
114
+ assignee == o.assignee &&
115
+ version == o.version
116
+ end
117
+
118
+ # @see the `==` method
119
+ # @param o [Object] Object to be compared
120
+ # @!visibility private
121
+ def eql?(o)
122
+ self == o
123
+ end
124
+
125
+ # Calculates hash code according to all attributes.
126
+ # @return [Integer] Hash code
127
+ # @!visibility private
128
+ def hash
129
+ [assignee, version].hash
130
+ end
131
+ end
132
+ end