datadog_api_client 1.11.0 → 2.0.0

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 (277) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +291 -114
  4. data/.generator/schemas/v2/openapi.yaml +1156 -41
  5. data/.generator/src/generator/cli.py +57 -40
  6. data/.generator/src/generator/openapi.py +12 -6
  7. data/.generator/src/generator/templates/api.j2 +14 -13
  8. data/.generator/src/generator/templates/api_client.j2 +63 -11
  9. data/.generator/src/generator/templates/configuration.j2 +12 -8
  10. data/.generator/src/generator/templates/example.j2 +1 -1
  11. data/.generator/src/generator/templates/inflector.j2 +28 -0
  12. data/.generator/src/generator/templates/model_base.j2 +2 -2
  13. data/.generator/src/generator/templates/model_oneof.j2 +1 -1
  14. data/.generator/src/generator/templates/package.j2 +7 -12
  15. data/.github/workflows/approved_status.yml +0 -2
  16. data/.github/workflows/codeql-analysis.yml +49 -0
  17. data/.github/workflows/docs.yml +1 -1
  18. data/.github/workflows/prepare_release.yml +1 -1
  19. data/.github/workflows/publish.yml +1 -1
  20. data/.github/workflows/release.yml +1 -1
  21. data/.github/workflows/test.yml +4 -6
  22. data/.github/workflows/test_integration.yml +1 -1
  23. data/.pre-commit-config.yaml +3 -12
  24. data/CHANGELOG.md +25 -0
  25. data/Gemfile +1 -0
  26. data/Makefile +1 -2
  27. data/datadog_api_client.gemspec +2 -0
  28. data/examples/v1/downtimes/CreateDowntime_1393233946.rb +3 -0
  29. data/examples/v1/downtimes/CreateDowntime_2908359488.rb +3 -0
  30. data/examples/v1/downtimes/CreateDowntime_3059354445.rb +3 -0
  31. data/examples/v1/events/ListEvents.rb +1 -1
  32. data/examples/v1/service-level-objectives/GetSLOHistory.rb +1 -1
  33. data/examples/v1/service-level-objectives/SearchSLO.rb +1 -1
  34. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_2932742688.rb +1 -1
  35. data/examples/v1/synthetics/GetAPITestLatestResults.rb +1 -1
  36. data/examples/v1/synthetics/GetAPITestResult.rb +1 -1
  37. data/examples/v1/synthetics/GetBrowserTestLatestResults.rb +1 -1
  38. data/examples/v1/synthetics/GetBrowserTestResult.rb +1 -1
  39. data/examples/v1/usage-metering/GetDailyCustomReports.rb +1 -1
  40. data/examples/v1/usage-metering/GetHourlyUsageAttribution.rb +0 -3
  41. data/examples/v1/usage-metering/GetMonthlyCustomReports.rb +1 -1
  42. data/examples/v1/usage-metering/GetMonthlyUsageAttribution.rb +0 -3
  43. data/examples/v1/usage-metering/GetSpecifiedDailyCustomReports.rb +1 -1
  44. data/examples/v1/usage-metering/GetSpecifiedMonthlyCustomReports.rb +1 -1
  45. data/examples/v1/usage-metering/GetUsageAttribution.rb +1 -1
  46. data/examples/v1/usage-metering/GetUsageCIApp.rb +2 -5
  47. data/examples/v1/usage-metering/GetUsageCIApp_1064440884.rb +8 -0
  48. data/examples/v1/usage-metering/GetUsageCWS.rb +2 -5
  49. data/examples/v1/usage-metering/GetUsageCWS_736958514.rb +8 -0
  50. data/examples/v1/usage-metering/GetUsageDBM.rb +2 -5
  51. data/examples/v1/usage-metering/GetUsageDBM_3446806203.rb +8 -0
  52. data/examples/v1/usage-metering/GetUsageLambda.rb +2 -5
  53. data/examples/v1/usage-metering/GetUsageLambda_3132428705.rb +8 -0
  54. data/examples/v1/usage-metering/GetUsageLogs.rb +2 -5
  55. data/examples/v1/usage-metering/GetUsageLogsByIndex.rb +2 -5
  56. data/examples/v1/usage-metering/GetUsageLogsByIndex_1025184776.rb +8 -0
  57. data/examples/v1/usage-metering/GetUsageLogs_2562396405.rb +8 -0
  58. data/examples/v1/usage-metering/GetUsageNetworkFlows.rb +2 -5
  59. data/examples/v1/usage-metering/GetUsageNetworkFlows_1239422069.rb +8 -0
  60. data/examples/v1/usage-metering/GetUsageNetworkHosts.rb +2 -5
  61. data/examples/v1/usage-metering/GetUsageNetworkHosts_1249907835.rb +8 -0
  62. data/examples/v1/usage-metering/GetUsageOnlineArchive.rb +2 -5
  63. data/examples/v1/usage-metering/GetUsageOnlineArchive_1501172903.rb +8 -0
  64. data/examples/v1/usage-metering/GetUsageRumSessions.rb +2 -5
  65. data/examples/v1/usage-metering/GetUsageRumSessions_714937291.rb +8 -0
  66. data/examples/v1/usage-metering/GetUsageRumUnits.rb +2 -5
  67. data/examples/v1/usage-metering/GetUsageRumUnits_3959755399.rb +8 -0
  68. data/examples/v1/usage-metering/GetUsageSDS.rb +2 -5
  69. data/examples/v1/usage-metering/GetUsageSDS_271128478.rb +8 -0
  70. data/examples/v1/usage-metering/GetUsageSynthetics.rb +1 -1
  71. data/examples/v1/usage-metering/GetUsageSyntheticsAPI.rb +2 -5
  72. data/examples/v1/usage-metering/GetUsageSyntheticsAPI_4048033529.rb +8 -0
  73. data/examples/v1/usage-metering/GetUsageSyntheticsBrowser.rb +2 -5
  74. data/examples/v1/usage-metering/GetUsageSyntheticsBrowser_1704663299.rb +8 -0
  75. data/examples/v2/events/ListEvents.rb +8 -0
  76. data/examples/v2/events/ListEvents_2663715109.rb +14 -0
  77. data/examples/v2/events/SearchEvents.rb +23 -0
  78. data/examples/v2/incident-services/CreateIncidentService.rb +1 -1
  79. data/examples/v2/incident-services/DeleteIncidentService.rb +1 -1
  80. data/examples/v2/incident-services/GetIncidentService.rb +1 -1
  81. data/examples/v2/incident-services/ListIncidentServices.rb +1 -1
  82. data/examples/v2/incident-services/UpdateIncidentService.rb +1 -1
  83. data/examples/v2/incident-teams/CreateIncidentTeam.rb +1 -1
  84. data/examples/v2/incident-teams/DeleteIncidentTeam.rb +1 -1
  85. data/examples/v2/incident-teams/GetIncidentTeam.rb +1 -1
  86. data/examples/v2/incident-teams/ListIncidentTeams.rb +1 -1
  87. data/examples/v2/incident-teams/UpdateIncidentTeam.rb +1 -1
  88. data/examples/v2/incidents/CreateIncident.rb +1 -1
  89. data/examples/v2/incidents/DeleteIncident.rb +1 -1
  90. data/examples/v2/incidents/GetIncident.rb +1 -1
  91. data/examples/v2/incidents/ListIncidents.rb +1 -1
  92. data/examples/v2/incidents/UpdateIncident.rb +1 -1
  93. data/examples/v2/incidents/UpdateIncident_1009194038.rb +1 -1
  94. data/examples/v2/incidents/UpdateIncident_3369341440.rb +1 -1
  95. data/examples/v2/metrics/SubmitMetrics.rb +6 -0
  96. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalAssignee.rb +15 -0
  97. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalIncidents.rb +15 -0
  98. data/examples/v2/security-monitoring/EditSecurityMonitoringSignalState.rb +14 -0
  99. data/examples/v2/security-monitoring/UpdateSecurityMonitoringRule.rb +1 -0
  100. data/examples/v2/usage-metering/GetEstimatedCostByOrg.rb +5 -2
  101. data/examples/v2/usage-metering/GetEstimatedCostByOrg_2734954020.rb +11 -0
  102. data/examples/v2/usage-metering/GetEstimatedCostByOrg_3186693804.rb +11 -0
  103. data/examples/v2/usage-metering/GetUsageApplicationSecurityMonitoring.rb +2 -5
  104. data/examples/v2/usage-metering/GetUsageApplicationSecurityMonitoring_3959166796.rb +8 -0
  105. data/examples/v2/usage-metering/GetUsageLambdaTracedInvocations.rb +2 -5
  106. data/examples/v2/usage-metering/GetUsageLambdaTracedInvocations_1436752065.rb +8 -0
  107. data/examples/v2/usage-metering/GetUsageObservabilityPipelines.rb +2 -5
  108. data/examples/v2/usage-metering/GetUsageObservabilityPipelines_970725512.rb +8 -0
  109. data/lib/datadog_api_client/{v2/api_client.rb → api_client.rb} +63 -11
  110. data/lib/datadog_api_client/api_key_configuration.rb +1 -18
  111. data/lib/datadog_api_client/{v1/configuration.rb → configuration.rb} +84 -31
  112. data/lib/datadog_api_client/inflector.rb +1293 -0
  113. data/lib/datadog_api_client/models.rb +66 -0
  114. data/lib/datadog_api_client/v1/api/authentication_api.rb +3 -11
  115. data/lib/datadog_api_client/v1/api/aws_integration_api.rb +19 -91
  116. data/lib/datadog_api_client/v1/api/aws_logs_integration_api.rb +15 -71
  117. data/lib/datadog_api_client/v1/api/azure_integration_api.rb +11 -51
  118. data/lib/datadog_api_client/v1/api/dashboard_lists_api.rb +11 -51
  119. data/lib/datadog_api_client/v1/api/dashboards_api.rb +15 -71
  120. data/lib/datadog_api_client/v1/api/downtimes_api.rb +15 -71
  121. data/lib/datadog_api_client/v1/api/events_api.rb +9 -33
  122. data/lib/datadog_api_client/v1/api/gcp_integration_api.rb +9 -41
  123. data/lib/datadog_api_client/v1/api/hosts_api.rb +9 -41
  124. data/lib/datadog_api_client/v1/api/ip_ranges_api.rb +3 -11
  125. data/lib/datadog_api_client/v1/api/key_management_api.rb +21 -101
  126. data/lib/datadog_api_client/v1/api/logs_api.rb +5 -21
  127. data/lib/datadog_api_client/v1/api/logs_indexes_api.rb +13 -61
  128. data/lib/datadog_api_client/v1/api/logs_pipelines_api.rb +15 -71
  129. data/lib/datadog_api_client/v1/api/metrics_api.rb +15 -71
  130. data/lib/datadog_api_client/v1/api/monitors_api.rb +21 -101
  131. data/lib/datadog_api_client/v1/api/notebooks_api.rb +11 -51
  132. data/lib/datadog_api_client/v1/api/organizations_api.rb +13 -61
  133. data/lib/datadog_api_client/v1/api/pager_duty_integration_api.rb +9 -41
  134. data/lib/datadog_api_client/v1/api/security_monitoring_api.rb +8 -32
  135. data/lib/datadog_api_client/v1/api/service_checks_api.rb +3 -11
  136. data/lib/datadog_api_client/v1/api/service_level_objective_corrections_api.rb +11 -51
  137. data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +31 -99
  138. data/lib/datadog_api_client/v1/api/slack_integration_api.rb +11 -51
  139. data/lib/datadog_api_client/v1/api/snapshots_api.rb +3 -11
  140. data/lib/datadog_api_client/v1/api/synthetics_api.rb +55 -271
  141. data/lib/datadog_api_client/v1/api/tags_api.rb +11 -51
  142. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +171 -418
  143. data/lib/datadog_api_client/v1/api/users_api.rb +11 -51
  144. data/lib/datadog_api_client/v1/api/webhooks_integration_api.rb +17 -81
  145. data/lib/datadog_api_client/v1/model_base.rb +2 -2
  146. data/lib/datadog_api_client/v1/models/distribution_point_item.rb +1 -1
  147. data/lib/datadog_api_client/v1/models/distribution_widget_histogram_request_query.rb +1 -1
  148. data/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb +1 -1
  149. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_body.rb +5 -1
  150. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +7 -0
  151. data/lib/datadog_api_client/v1/models/logs_processor.rb +1 -1
  152. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_query_definition.rb +1 -1
  153. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_body.rb +6 -2
  154. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +14 -0
  155. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +21 -1
  156. data/lib/datadog_api_client/v1/models/notebook_cell_create_request_attributes.rb +1 -1
  157. data/lib/datadog_api_client/v1/models/notebook_cell_response_attributes.rb +1 -1
  158. data/lib/datadog_api_client/v1/models/notebook_cell_time.rb +1 -1
  159. data/lib/datadog_api_client/v1/models/notebook_cell_update_request_attributes.rb +1 -1
  160. data/lib/datadog_api_client/v1/models/notebook_global_time.rb +1 -1
  161. data/lib/datadog_api_client/v1/models/notebook_update_cell.rb +1 -1
  162. data/lib/datadog_api_client/v1/models/sunburst_widget_legend.rb +1 -1
  163. data/lib/datadog_api_client/v1/models/synthetics_assertion.rb +1 -1
  164. data/lib/datadog_api_client/v1/models/synthetics_basic_auth.rb +1 -1
  165. data/lib/datadog_api_client/v1/models/tree_map_color_by.rb +1 -1
  166. data/lib/datadog_api_client/v1/models/tree_map_group_by.rb +1 -1
  167. data/lib/datadog_api_client/v1/models/tree_map_size_by.rb +1 -1
  168. data/lib/datadog_api_client/v1/models/tree_map_widget_definition.rb +28 -6
  169. data/lib/datadog_api_client/v1/models/usage_attribution_body.rb +6 -2
  170. data/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +2 -0
  171. data/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +2 -0
  172. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +22 -2
  173. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -1
  174. data/lib/datadog_api_client/v2/api/audit_api.rb +11 -25
  175. data/lib/datadog_api_client/v2/api/authn_mappings_api.rb +11 -51
  176. data/lib/datadog_api_client/v2/api/cloud_workload_security_api.rb +13 -61
  177. data/lib/datadog_api_client/v2/api/dashboard_lists_api.rb +9 -41
  178. data/lib/datadog_api_client/v2/api/events_api.rb +228 -0
  179. data/lib/datadog_api_client/v2/api/incident_services_api.rb +36 -46
  180. data/lib/datadog_api_client/v2/api/incident_teams_api.rb +36 -46
  181. data/lib/datadog_api_client/v2/api/incidents_api.rb +39 -48
  182. data/lib/datadog_api_client/v2/api/key_management_api.rb +29 -141
  183. data/lib/datadog_api_client/v2/api/logs_api.rb +15 -45
  184. data/lib/datadog_api_client/v2/api/logs_archives_api.rb +21 -101
  185. data/lib/datadog_api_client/v2/api/logs_metrics_api.rb +11 -51
  186. data/lib/datadog_api_client/v2/api/metrics_api.rb +26 -112
  187. data/lib/datadog_api_client/v2/api/opsgenie_integration_api.rb +11 -51
  188. data/lib/datadog_api_client/v2/api/organizations_api.rb +3 -11
  189. data/lib/datadog_api_client/v2/api/processes_api.rb +6 -13
  190. data/lib/datadog_api_client/v2/api/roles_api.rb +27 -131
  191. data/lib/datadog_api_client/v2/api/rum_api.rb +13 -35
  192. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +247 -125
  193. data/lib/datadog_api_client/v2/api/service_accounts_api.rb +11 -51
  194. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +132 -68
  195. data/lib/datadog_api_client/v2/api/users_api.rb +21 -101
  196. data/lib/datadog_api_client/v2/model_base.rb +2 -2
  197. data/lib/datadog_api_client/v2/models/api_key_response_included_item.rb +1 -1
  198. data/lib/datadog_api_client/v2/models/application_key_response_included_item.rb +1 -1
  199. data/lib/datadog_api_client/v2/models/authn_mapping_included.rb +1 -1
  200. data/lib/datadog_api_client/v2/models/event.rb +141 -0
  201. data/lib/datadog_api_client/v2/models/event_attributes.rb +305 -0
  202. data/lib/datadog_api_client/v2/models/event_priority.rb +27 -0
  203. data/lib/datadog_api_client/v2/models/event_response.rb +133 -0
  204. data/lib/datadog_api_client/v2/models/event_response_attributes.rb +133 -0
  205. data/lib/datadog_api_client/v2/models/event_status_type.rb +35 -0
  206. data/lib/datadog_api_client/v2/models/event_type.rb +26 -0
  207. data/lib/datadog_api_client/v2/models/events_list_request.rb +142 -0
  208. data/lib/datadog_api_client/v2/models/events_list_response.rb +133 -0
  209. data/lib/datadog_api_client/v2/models/events_list_response_links.rb +112 -0
  210. data/lib/datadog_api_client/v2/models/events_query_filter.rb +137 -0
  211. data/lib/datadog_api_client/v2/models/events_query_options.rb +124 -0
  212. data/lib/datadog_api_client/v2/models/events_request_page.rb +134 -0
  213. data/lib/datadog_api_client/v2/models/events_response_metadata.rb +144 -0
  214. data/lib/datadog_api_client/v2/models/events_response_metadata_page.rb +112 -0
  215. data/lib/datadog_api_client/v2/models/events_sort.rb +27 -0
  216. data/lib/datadog_api_client/v2/models/events_warning.rb +131 -0
  217. data/lib/datadog_api_client/v2/models/hourly_usage.rb +133 -0
  218. data/lib/datadog_api_client/v2/models/hourly_usage_attributes.rb +163 -0
  219. data/lib/datadog_api_client/v2/models/hourly_usage_measurement.rb +122 -0
  220. data/lib/datadog_api_client/v2/models/hourly_usage_metadata.rb +111 -0
  221. data/lib/datadog_api_client/v2/models/hourly_usage_pagination.rb +112 -0
  222. data/lib/datadog_api_client/v2/models/hourly_usage_response.rb +123 -0
  223. data/lib/datadog_api_client/v2/models/incident_field_attributes.rb +1 -1
  224. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  225. data/lib/datadog_api_client/v2/models/incident_service_included_items.rb +1 -1
  226. data/lib/datadog_api_client/v2/models/incident_team_included_items.rb +1 -1
  227. data/lib/datadog_api_client/v2/models/incident_timeline_cell_create_attributes.rb +1 -1
  228. data/lib/datadog_api_client/v2/models/logs_aggregate_bucket_value.rb +1 -1
  229. data/lib/datadog_api_client/v2/models/logs_archive_create_request_destination.rb +1 -1
  230. data/lib/datadog_api_client/v2/models/logs_archive_destination.rb +1 -1
  231. data/lib/datadog_api_client/v2/models/logs_group_by_missing.rb +1 -1
  232. data/lib/datadog_api_client/v2/models/logs_group_by_total.rb +1 -1
  233. data/lib/datadog_api_client/v2/models/metric_intake_type.rb +1 -2
  234. data/lib/datadog_api_client/v2/models/metric_resource.rb +2 -2
  235. data/lib/datadog_api_client/v2/models/metric_series.rb +1 -1
  236. data/lib/datadog_api_client/v2/models/metric_volumes.rb +1 -1
  237. data/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations.rb +1 -1
  238. data/lib/datadog_api_client/v2/models/monitor_type.rb +215 -0
  239. data/lib/datadog_api_client/v2/models/rum_aggregate_bucket_value.rb +1 -1
  240. data/lib/datadog_api_client/v2/models/rum_group_by_missing.rb +1 -1
  241. data/lib/datadog_api_client/v2/models/rum_group_by_total.rb +1 -1
  242. data/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb +13 -1
  243. data/lib/datadog_api_client/v2/models/security_monitoring_rule_query_create.rb +13 -1
  244. data/lib/datadog_api_client/v2/models/security_monitoring_signal_archive_reason.rb +29 -0
  245. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_attributes.rb +132 -0
  246. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_data.rb +122 -0
  247. data/lib/datadog_api_client/v2/models/security_monitoring_signal_assignee_update_request.rb +122 -0
  248. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_attributes.rb +134 -0
  249. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_data.rb +122 -0
  250. data/lib/datadog_api_client/v2/models/security_monitoring_signal_incidents_update_request.rb +122 -0
  251. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state.rb +28 -0
  252. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_attributes.rb +152 -0
  253. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_data.rb +122 -0
  254. data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_request.rb +122 -0
  255. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_attributes.rb +248 -0
  256. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_update_data.rb +111 -0
  257. data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_update_response.rb +122 -0
  258. data/lib/datadog_api_client/v2/models/security_monitoring_triage_user.rb +152 -0
  259. data/lib/datadog_api_client/v2/models/user_response_included_item.rb +1 -1
  260. data/lib/datadog_api_client/v2.rb +40 -0
  261. data/lib/datadog_api_client/version.rb +1 -1
  262. data/lib/datadog_api_client.rb +11 -5
  263. data/spec/{v1/api_client_spec.rb → api_client_spec.rb} +29 -29
  264. data/spec/{v1/configuration_spec.rb → configuration_spec.rb} +3 -3
  265. data/spec/spec_helper.rb +1 -3
  266. metadata +97 -21
  267. data/.dockerignore +0 -1
  268. data/.generator/src/generator/templates/api_error.j2 +0 -49
  269. data/examples/v2/usage-metering/GetEstimatedCostByOrg_1171921972.rb +0 -9
  270. data/examples/v2/usage-metering/GetEstimatedCostByOrg_627383212.rb +0 -9
  271. data/lib/datadog_api_client/v1/api_client.rb +0 -453
  272. data/lib/datadog_api_client/v1/api_error.rb +0 -60
  273. data/lib/datadog_api_client/v1.rb +0 -813
  274. data/lib/datadog_api_client/v2/api_error.rb +0 -60
  275. data/lib/datadog_api_client/v2/configuration.rb +0 -420
  276. data/spec/v2/api_client_spec.rb +0 -210
  277. data/spec/v2/configuration_spec.rb +0 -45
@@ -0,0 +1,8 @@
1
+ # Get a list of events returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.list_events".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::EventsAPI.new
8
+ p api_instance.list_events()
@@ -0,0 +1,14 @@
1
+ # Get a quick list of events returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.list_events".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::EventsAPI.new
8
+ opts = {
9
+ filter_query: "datadog-agent",
10
+ filter_from: "2020-09-17T11:48:36+01:00",
11
+ filter_to: "2020-09-17T12:48:36+01:00",
12
+ page_limit: 5,
13
+ }
14
+ p api_instance.list_events(opts)
@@ -0,0 +1,23 @@
1
+ # Search events returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.search_events".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::EventsAPI.new
8
+
9
+ body = DatadogAPIClient::V2::EventsListRequest.new({
10
+ filter: DatadogAPIClient::V2::EventsQueryFilter.new({
11
+ query: "datadog-agent",
12
+ from: "2020-09-17T11:48:36+01:00",
13
+ to: "2020-09-17T12:48:36+01:00",
14
+ }),
15
+ sort: DatadogAPIClient::V2::EventsSort::TIMESTAMP_ASCENDING,
16
+ page: DatadogAPIClient::V2::EventsRequestPage.new({
17
+ limit: 5,
18
+ }),
19
+ })
20
+ opts = {
21
+ body: body,
22
+ }
23
+ p api_instance.search_events(opts)
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:create_incident_service] = true
5
+ config.unstable_operations["v2.create_incident_service".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentServicesAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:delete_incident_service] = true
5
+ config.unstable_operations["v2.delete_incident_service".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentServicesAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:get_incident_service] = true
5
+ config.unstable_operations["v2.get_incident_service".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentServicesAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_incident_services] = true
5
+ config.unstable_operations["v2.list_incident_services".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentServicesAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_incident_service] = true
5
+ config.unstable_operations["v2.update_incident_service".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentServicesAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:create_incident_team] = true
5
+ config.unstable_operations["v2.create_incident_team".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentTeamsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:delete_incident_team] = true
5
+ config.unstable_operations["v2.delete_incident_team".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentTeamsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:get_incident_team] = true
5
+ config.unstable_operations["v2.get_incident_team".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentTeamsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_incident_teams] = true
5
+ config.unstable_operations["v2.list_incident_teams".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentTeamsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_incident_team] = true
5
+ config.unstable_operations["v2.update_incident_team".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentTeamsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:create_incident] = true
5
+ config.unstable_operations["v2.create_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:delete_incident] = true
5
+ config.unstable_operations["v2.delete_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:get_incident] = true
5
+ config.unstable_operations["v2.get_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:list_incidents] = true
5
+ config.unstable_operations["v2.list_incidents".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
  p api_instance.list_incidents()
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_incident] = true
5
+ config.unstable_operations["v2.update_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_incident] = true
5
+ config.unstable_operations["v2.update_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  DatadogAPIClient::V2.configure do |config|
5
- config.unstable_operations[:update_incident] = true
5
+ config.unstable_operations["v2.update_incident".to_sym] = true
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::IncidentsAPI.new
8
8
 
@@ -14,6 +14,12 @@ body = DatadogAPIClient::V2::MetricPayload.new({
14
14
  value: 0.7,
15
15
  }),
16
16
  ],
17
+ resources: [
18
+ DatadogAPIClient::V2::MetricResource.new({
19
+ name: "dummyhost",
20
+ type: "host",
21
+ }),
22
+ ],
17
23
  }),
18
24
  ],
19
25
  })
@@ -0,0 +1,15 @@
1
+ # Modify the triage assignee of a security signal returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+
6
+ body = DatadogAPIClient::V2::SecurityMonitoringSignalAssigneeUpdateRequest.new({
7
+ data: DatadogAPIClient::V2::SecurityMonitoringSignalAssigneeUpdateData.new({
8
+ attributes: DatadogAPIClient::V2::SecurityMonitoringSignalAssigneeUpdateAttributes.new({
9
+ assignee: DatadogAPIClient::V2::SecurityMonitoringTriageUser.new({
10
+ uuid: "",
11
+ }),
12
+ }),
13
+ }),
14
+ })
15
+ p api_instance.edit_security_monitoring_signal_assignee("AQAAAYG1bl5K4HuUewAAAABBWUcxYmw1S0FBQmt2RmhRN0V4ZUVnQUE", body)
@@ -0,0 +1,15 @@
1
+ # Change the related incidents of a security signal returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+
6
+ body = DatadogAPIClient::V2::SecurityMonitoringSignalIncidentsUpdateRequest.new({
7
+ data: DatadogAPIClient::V2::SecurityMonitoringSignalIncidentsUpdateData.new({
8
+ attributes: DatadogAPIClient::V2::SecurityMonitoringSignalIncidentsUpdateAttributes.new({
9
+ incident_ids: [
10
+ 2066,
11
+ ],
12
+ }),
13
+ }),
14
+ })
15
+ p api_instance.edit_security_monitoring_signal_incidents("AQAAAYG1bl5K4HuUewAAAABBWUcxYmw1S0FBQmt2RmhRN0V4ZUVnQUE", body)
@@ -0,0 +1,14 @@
1
+ # Change the triage state of a security signal returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+
6
+ body = DatadogAPIClient::V2::SecurityMonitoringSignalStateUpdateRequest.new({
7
+ data: DatadogAPIClient::V2::SecurityMonitoringSignalStateUpdateData.new({
8
+ attributes: DatadogAPIClient::V2::SecurityMonitoringSignalStateUpdateAttributes.new({
9
+ archive_reason: DatadogAPIClient::V2::SecurityMonitoringSignalArchiveReason::NONE,
10
+ state: DatadogAPIClient::V2::SecurityMonitoringSignalState::OPEN,
11
+ }),
12
+ }),
13
+ })
14
+ p api_instance.edit_security_monitoring_signal_state("AQAAAYG1bl5K4HuUewAAAABBWUcxYmw1S0FBQmt2RmhRN0V4ZUVnQUE", body)
@@ -38,6 +38,7 @@ body = DatadogAPIClient::V2::SecurityMonitoringRuleUpdatePayload.new({
38
38
  aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::COUNT,
39
39
  distinct_fields: [],
40
40
  group_by_fields: [],
41
+ metrics: [],
41
42
  }),
42
43
  ],
43
44
  tags: [],
@@ -1,5 +1,8 @@
1
- # Get estimated cost across multi-org account returns "OK" response
1
+ # Get estimated cost across your account returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.get_estimated_cost_by_org".to_sym] = true
6
+ end
4
7
  api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
- p api_instance.get_estimated_cost_by_org()
8
+ p api_instance.get_estimated_cost_by_org("view")
@@ -0,0 +1,11 @@
1
+ # GetEstimatedCostByOrg with start_date returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.get_estimated_cost_by_org".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
8
+ opts = {
9
+ start_date: (Time.now + -5 * 86400),
10
+ }
11
+ p api_instance.get_estimated_cost_by_org("sub-org", opts)
@@ -0,0 +1,11 @@
1
+ # GetEstimatedCostByOrg with start_month returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient::V2.configure do |config|
5
+ config.unstable_operations["v2.get_estimated_cost_by_org".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
8
+ opts = {
9
+ start_month: (Time.now + -5 * 86400),
10
+ }
11
+ p api_instance.get_estimated_cost_by_org("sub-org", opts)
@@ -1,8 +1,5 @@
1
- # Get hourly usage for Application Security returns "OK" response
1
+ # Get hourly usage for application security returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
4
  api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
- opts = {
6
- end_hr: (Time.now + -3 * 86400),
7
- }
8
- p api_instance.get_usage_application_security_monitoring((Time.now + -5 * 86400), opts)
5
+ p api_instance.get_usage_application_security_monitoring("2021-11-11T11:11:11.111+00:00")
@@ -0,0 +1,8 @@
1
+ # Get hourly usage for Application Security returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ opts = {
6
+ end_hr: (Time.now + -3 * 86400),
7
+ }
8
+ p api_instance.get_usage_application_security_monitoring((Time.now + -5 * 86400), opts)
@@ -1,8 +1,5 @@
1
- # Get hourly usage for Lambda Traced Invocations returns "OK" response
1
+ # Get hourly usage for lambda traced invocations returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
4
  api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
- opts = {
6
- end_hr: (Time.now + -3 * 86400),
7
- }
8
- p api_instance.get_usage_lambda_traced_invocations((Time.now + -5 * 86400), opts)
5
+ p api_instance.get_usage_lambda_traced_invocations("2021-11-11T11:11:11.111+00:00")
@@ -0,0 +1,8 @@
1
+ # Get hourly usage for Lambda Traced Invocations returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ opts = {
6
+ end_hr: (Time.now + -3 * 86400),
7
+ }
8
+ p api_instance.get_usage_lambda_traced_invocations((Time.now + -5 * 86400), opts)
@@ -1,8 +1,5 @@
1
- # Get hourly usage for Observability Pipelines returns "OK" response
1
+ # Get hourly usage for observability pipelines returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
4
  api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
- opts = {
6
- end_hr: (Time.now + -3 * 86400),
7
- }
8
- p api_instance.get_usage_observability_pipelines((Time.now + -5 * 86400), opts)
5
+ p api_instance.get_usage_observability_pipelines("2021-11-11T11:11:11.111+00:00")
@@ -0,0 +1,8 @@
1
+ # Get hourly usage for Observability Pipelines returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
5
+ opts = {
6
+ end_hr: (Time.now + -3 * 86400),
7
+ }
8
+ p api_instance.get_usage_observability_pipelines((Time.now + -5 * 86400), opts)
@@ -19,8 +19,12 @@ require 'logger'
19
19
  require 'tempfile'
20
20
  require 'time'
21
21
  require 'httparty'
22
+ begin
23
+ require 'zstandard'
24
+ rescue LoadError
25
+ end
22
26
 
23
- module DatadogAPIClient::V2
27
+ module DatadogAPIClient
24
28
  class APIClient
25
29
  # The Configuration object holding settings to be used in the API client.
26
30
  attr_accessor :config
@@ -111,7 +115,7 @@ module DatadogAPIClient::V2
111
115
  end
112
116
 
113
117
  if opts[:return_type]
114
- data = deserialize(response, opts[:return_type])
118
+ data = deserialize(opts[:api_version], response, opts[:return_type])
115
119
  else
116
120
  data = nil
117
121
  end
@@ -198,6 +202,8 @@ module DatadogAPIClient::V2
198
202
  gzip.close
199
203
  elsif header_params['Content-Encoding'] == 'deflate'
200
204
  data = Zlib::deflate(data)
205
+ elsif header_params['Content-Encoding'] == 'zstd1'
206
+ data = Zstandard.deflate(data)
201
207
  end
202
208
  data
203
209
  end
@@ -216,9 +222,10 @@ module DatadogAPIClient::V2
216
222
 
217
223
  # Deserialize the response to the given return type.
218
224
  #
225
+ # @param [String] the api version
219
226
  # @param [Response] response HTTP response
220
227
  # @param [String] return_type some examples: "User", "Array<User>", "Hash<String, Integer>"
221
- def deserialize(response, return_type)
228
+ def deserialize(api_version, response, return_type)
222
229
  body = response.body
223
230
 
224
231
  # handle file downloading - return the File instance processed in request callbacks
@@ -251,14 +258,14 @@ module DatadogAPIClient::V2
251
258
  end
252
259
  end
253
260
 
254
- convert_to_type data, return_type
261
+ convert_to_type data, return_type, api_version
255
262
  end
256
263
 
257
264
  # Convert data to the given return type.
258
265
  # @param [Object] data Data to be converted
259
266
  # @param [String] return_type Return type
260
267
  # @return [Mixed] Data in a particular type
261
- def convert_to_type(data, return_type)
268
+ def convert_to_type(data, return_type, api_version)
262
269
  return nil if data.nil?
263
270
  case return_type
264
271
  when 'String'
@@ -281,16 +288,16 @@ module DatadogAPIClient::V2
281
288
  when /\AArray<(.+)>\z/
282
289
  # e.g. Array<Pet>
283
290
  sub_type = $1
284
- data.map { |item| convert_to_type(item, sub_type) }
291
+ data.map { |item| convert_to_type(item, sub_type, api_version) }
285
292
  when /\AHash\<String, (.+)\>\z/
286
293
  # e.g. Hash<String, Integer>
287
294
  sub_type = $1
288
295
  {}.tap do |hash|
289
- data.each { |k, v| hash[k] = convert_to_type(v, sub_type) }
296
+ data.each { |k, v| hash[k] = convert_to_type(v, sub_type, api_version) }
290
297
  end
291
298
  else
292
299
  # models (e.g. Pet) or oneOf
293
- klass = DatadogAPIClient::V2.const_get(return_type)
300
+ klass = DatadogAPIClient.const_get(api_version).const_get(return_type)
294
301
  klass.respond_to?(:openapi_one_of) ? klass.build(data) : klass.build_from_hash(data)
295
302
  end
296
303
  end
@@ -307,7 +314,7 @@ module DatadogAPIClient::V2
307
314
  def build_request_url(path, opts = {})
308
315
  # Add leading and trailing slashes to path
309
316
  path = "/#{path}".gsub(/\/+/, '/')
310
- @config.base_url(opts[:operation]) + path
317
+ @config.base_url("#{opts[:api_version].respond_to?(:downcase) ? opts[:api_version].downcase : opts[:api_version]}.#{opts[:operation]}") + path
311
318
  end
312
319
 
313
320
  # Update header and query params based on authentication settings.
@@ -422,12 +429,13 @@ module DatadogAPIClient::V2
422
429
 
423
430
  # Set an attribute at the given path
424
431
  #
432
+ # @param [String] api_version The api version
425
433
  # @param [Object] obj The source object
426
434
  # @param [String] attribute_path The path spefication, separated by "."
427
435
  # @param [Object] builder The class matching the top level attribute
428
436
  # @param [Object] value The value to set
429
437
  # @!visibility private
430
- def set_attribute_from_path(obj, attribute_path, builder, value)
438
+ def set_attribute_from_path(api_version, obj, attribute_path, builder, value)
431
439
  attrs = attribute_path.split(".")
432
440
  last = attrs.pop
433
441
  i = 0
@@ -438,7 +446,7 @@ module DatadogAPIClient::V2
438
446
  else
439
447
  obj = obj.send(attr)
440
448
  end
441
- builder = DatadogAPIClient::V2.const_get(builder.openapi_types[attr.to_sym]) if i > 0
449
+ builder = DatadogAPIClient.const_get(api_version).const_get(builder.openapi_types[attr.to_sym]) if i > 0
442
450
  obj = builder.new if obj.nil?
443
451
  i += 1
444
452
  end
@@ -450,4 +458,48 @@ module DatadogAPIClient::V2
450
458
  end
451
459
  end
452
460
  end
461
+
462
+ class APIError < StandardError
463
+ attr_reader :code, :response_headers, :response_body
464
+
465
+ # Usage examples:
466
+ # APIError.new
467
+ # APIError.new("message")
468
+ # APIError.new(:code => 500, :response_headers => {}, :response_body => "")
469
+ # APIError.new(:code => 404, :message => "Not Found")
470
+ def initialize(arg = nil)
471
+ if arg.is_a? Hash
472
+ if arg.key?(:message) || arg.key?('message')
473
+ super(arg[:message] || arg['message'])
474
+ else
475
+ super arg
476
+ end
477
+
478
+ arg.each do |k, v|
479
+ instance_variable_set "@#{k}", v
480
+ end
481
+ else
482
+ super arg
483
+ end
484
+ end
485
+
486
+ # Override to_s to display a friendly error message
487
+ def to_s
488
+ message
489
+ end
490
+
491
+ def message
492
+ if @message.nil?
493
+ msg = "Error message: the server returns an error"
494
+ else
495
+ msg = @message
496
+ end
497
+
498
+ msg += "\nHTTP status code: #{code}" if code
499
+ msg += "\nResponse headers: #{response_headers}" if response_headers
500
+ msg += "\nResponse body: #{response_body}" if response_body
501
+
502
+ msg
503
+ end
504
+ end
453
505
  end
@@ -1,24 +1,7 @@
1
- require 'datadog_api_client/v1'
2
- require 'datadog_api_client/v2'
3
-
4
1
  # Extend the automatically-generated client configuration classes with a user-friendly
5
2
  # authentication configuration, hiding the original #api_key method.
6
3
 
7
- module DatadogAPIClient::V1
8
- class Configuration
9
- private :api_key # Make original getter private
10
-
11
- def api_key=(api_key)
12
- @api_key['apiKeyAuth'] = api_key
13
- end
14
-
15
- def application_key=(app_key)
16
- @api_key['appKeyAuth'] = app_key
17
- end
18
- end
19
- end
20
-
21
- module DatadogAPIClient::V2
4
+ module DatadogAPIClient
22
5
  class Configuration
23
6
  private :api_key # Make original getter private
24
7