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
@@ -25,14 +25,14 @@ module DatadogAPIClient::V2
25
25
  # @!visibility private
26
26
  attr_accessor :_unparsed
27
27
 
28
- # The status of the intake payload.
29
- attr_accessor :status
28
+ # A list of errors.
29
+ attr_accessor :errors
30
30
 
31
31
  # Attribute mapping from ruby-style variable name to JSON key.
32
32
  # @!visibility private
33
33
  def self.attribute_map
34
34
  {
35
- :'status' => :'status'
35
+ :'errors' => :'errors'
36
36
  }
37
37
  end
38
38
 
@@ -46,7 +46,7 @@ module DatadogAPIClient::V2
46
46
  # @!visibility private
47
47
  def self.openapi_types
48
48
  {
49
- :'status' => :'String'
49
+ :'errors' => :'Array<String>'
50
50
  }
51
51
  end
52
52
 
@@ -73,8 +73,10 @@ module DatadogAPIClient::V2
73
73
  h[k.to_sym] = v
74
74
  }
75
75
 
76
- if attributes.key?(:'status')
77
- self.status = attributes[:'status']
76
+ if attributes.key?(:'errors')
77
+ if (value = attributes[:'errors']).is_a?(Array)
78
+ self.errors = value
79
+ end
78
80
  end
79
81
  end
80
82
 
@@ -91,7 +93,7 @@ module DatadogAPIClient::V2
91
93
  def ==(o)
92
94
  return true if self.equal?(o)
93
95
  self.class == o.class &&
94
- status == o.status
96
+ errors == o.errors
95
97
  end
96
98
 
97
99
  # @see the `==` method
@@ -105,7 +107,7 @@ module DatadogAPIClient::V2
105
107
  # @return [Integer] Hash code
106
108
  # @!visibility private
107
109
  def hash
108
- [status].hash
110
+ [errors].hash
109
111
  end
110
112
  end
111
113
  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
@@ -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
@@ -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
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # The type of metric.
20
+ # The type of metric. The available types are `0` (unspecified), `1` (count), `2` (rate), and `3` (gauge).
21
21
  class MetricIntakeType
22
22
  include BaseEnumModel
23
23
 
@@ -25,6 +25,5 @@ module DatadogAPIClient::V2
25
25
  COUNT = 1.freeze
26
26
  RATE = 2.freeze
27
27
  GAUGE = 3.freeze
28
- UNSPECIFIED_LEGACY = 15.freeze
29
28
  end
30
29
  end
@@ -25,10 +25,10 @@ module DatadogAPIClient::V2
25
25
  # @!visibility private
26
26
  attr_accessor :_unparsed
27
27
 
28
- # The name of the metric.
28
+ # The name of the resource.
29
29
  attr_accessor :name
30
30
 
31
- # The type of metric.
31
+ # The type of the resource.
32
32
  attr_accessor :type
33
33
 
34
34
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -47,7 +47,7 @@ module DatadogAPIClient::V2
47
47
  # A list of tags associated with the metric.
48
48
  attr_accessor :tags
49
49
 
50
- # The type of metric.
50
+ # The type of metric. The available types are `0` (unspecified), `1` (count), `2` (rate), and `3` (gauge).
51
51
  attr_accessor :type
52
52
 
53
53
  # The unit of point value.
@@ -112,8 +112,6 @@ module DatadogAPIClient::V2
112
112
 
113
113
  if attributes.key?(:'include_percentiles')
114
114
  self.include_percentiles = attributes[:'include_percentiles']
115
- else
116
- self.include_percentiles = false
117
115
  end
118
116
 
119
117
  if attributes.key?(:'metric_type')
@@ -107,8 +107,6 @@ module DatadogAPIClient::V2
107
107
 
108
108
  if attributes.key?(:'include_percentiles')
109
109
  self.include_percentiles = attributes[:'include_percentiles']
110
- else
111
- self.include_percentiles = false
112
110
  end
113
111
 
114
112
  if attributes.key?(:'tags')
@@ -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
@@ -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
@@ -0,0 +1,215 @@
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 from the monitor that triggered the event.
21
+ class MonitorType
22
+ include BaseGenericModel
23
+
24
+ # Whether the object has unparsed attributes
25
+ # @!visibility private
26
+ attr_accessor :_unparsed
27
+
28
+ # The POSIX timestamp of the monitor's creation in nanoseconds.
29
+ attr_accessor :created_at
30
+
31
+ # Monitor group status used when there is no `result_groups`.
32
+ attr_accessor :group_status
33
+
34
+ # Groups to which the monitor belongs.
35
+ attr_accessor :groups
36
+
37
+ # The monitor ID.
38
+ attr_accessor :id
39
+
40
+ # The monitor message.
41
+ attr_accessor :message
42
+
43
+ # The monitor's last-modified timestamp.
44
+ attr_accessor :modified
45
+
46
+ # The monitor name.
47
+ attr_accessor :name
48
+
49
+ # The query that triggers the alert.
50
+ attr_accessor :query
51
+
52
+ # A list of tags attached to the monitor.
53
+ attr_accessor :tags
54
+
55
+ # The templated name of the monitor before resolving any template variables.
56
+ attr_accessor :templated_name
57
+
58
+ # The monitor type.
59
+ attr_accessor :type
60
+
61
+ # Attribute mapping from ruby-style variable name to JSON key.
62
+ # @!visibility private
63
+ def self.attribute_map
64
+ {
65
+ :'created_at' => :'created_at',
66
+ :'group_status' => :'group_status',
67
+ :'groups' => :'groups',
68
+ :'id' => :'id',
69
+ :'message' => :'message',
70
+ :'modified' => :'modified',
71
+ :'name' => :'name',
72
+ :'query' => :'query',
73
+ :'tags' => :'tags',
74
+ :'templated_name' => :'templated_name',
75
+ :'type' => :'type'
76
+ }
77
+ end
78
+
79
+ # Returns all the JSON keys this model knows about
80
+ # @!visibility private
81
+ def self.acceptable_attributes
82
+ attribute_map.values
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ # @!visibility private
87
+ def self.openapi_types
88
+ {
89
+ :'created_at' => :'Integer',
90
+ :'group_status' => :'Integer',
91
+ :'groups' => :'Array<String>',
92
+ :'id' => :'Integer',
93
+ :'message' => :'String',
94
+ :'modified' => :'Integer',
95
+ :'name' => :'String',
96
+ :'query' => :'String',
97
+ :'tags' => :'Array<String>',
98
+ :'templated_name' => :'String',
99
+ :'type' => :'String'
100
+ }
101
+ end
102
+
103
+ # List of attributes with nullable: true
104
+ # @!visibility private
105
+ def self.openapi_nullable
106
+ Set.new([
107
+ ])
108
+ end
109
+
110
+ # Initializes the object
111
+ # @param attributes [Hash] Model attributes in the form of hash
112
+ # @!visibility private
113
+ def initialize(attributes = {})
114
+ if (!attributes.is_a?(Hash))
115
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::MonitorType` initialize method"
116
+ end
117
+
118
+ # check to see if the attribute exists and convert string to symbol for hash key
119
+ attributes = attributes.each_with_object({}) { |(k, v), h|
120
+ if (!self.class.attribute_map.key?(k.to_sym))
121
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::MonitorType`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
122
+ end
123
+ h[k.to_sym] = v
124
+ }
125
+
126
+ if attributes.key?(:'created_at')
127
+ self.created_at = attributes[:'created_at']
128
+ end
129
+
130
+ if attributes.key?(:'group_status')
131
+ self.group_status = attributes[:'group_status']
132
+ end
133
+
134
+ if attributes.key?(:'groups')
135
+ if (value = attributes[:'groups']).is_a?(Array)
136
+ self.groups = value
137
+ end
138
+ end
139
+
140
+ if attributes.key?(:'id')
141
+ self.id = attributes[:'id']
142
+ end
143
+
144
+ if attributes.key?(:'message')
145
+ self.message = attributes[:'message']
146
+ end
147
+
148
+ if attributes.key?(:'modified')
149
+ self.modified = attributes[:'modified']
150
+ end
151
+
152
+ if attributes.key?(:'name')
153
+ self.name = attributes[:'name']
154
+ end
155
+
156
+ if attributes.key?(:'query')
157
+ self.query = attributes[:'query']
158
+ end
159
+
160
+ if attributes.key?(:'tags')
161
+ if (value = attributes[:'tags']).is_a?(Array)
162
+ self.tags = value
163
+ end
164
+ end
165
+
166
+ if attributes.key?(:'templated_name')
167
+ self.templated_name = attributes[:'templated_name']
168
+ end
169
+
170
+ if attributes.key?(:'type')
171
+ self.type = attributes[:'type']
172
+ end
173
+ end
174
+
175
+ # Check to see if the all the properties in the model are valid
176
+ # @return true if the model is valid
177
+ # @!visibility private
178
+ def valid?
179
+ true
180
+ end
181
+
182
+ # Checks equality by comparing each attribute.
183
+ # @param o [Object] Object to be compared
184
+ # @!visibility private
185
+ def ==(o)
186
+ return true if self.equal?(o)
187
+ self.class == o.class &&
188
+ created_at == o.created_at &&
189
+ group_status == o.group_status &&
190
+ groups == o.groups &&
191
+ id == o.id &&
192
+ message == o.message &&
193
+ modified == o.modified &&
194
+ name == o.name &&
195
+ query == o.query &&
196
+ tags == o.tags &&
197
+ templated_name == o.templated_name &&
198
+ type == o.type
199
+ end
200
+
201
+ # @see the `==` method
202
+ # @param o [Object] Object to be compared
203
+ # @!visibility private
204
+ def eql?(o)
205
+ self == o
206
+ end
207
+
208
+ # Calculates hash code according to all attributes.
209
+ # @return [Integer] Hash code
210
+ # @!visibility private
211
+ def hash
212
+ [created_at, group_status, groups, id, message, modified, name, query, tags, templated_name, type].hash
213
+ end
214
+ end
215
+ end
@@ -0,0 +1,174 @@
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 Opsgenie service attributes for a create request.
21
+ class OpsgenieServiceCreateAttributes
22
+ include BaseGenericModel
23
+
24
+ # Whether the object has unparsed attributes
25
+ # @!visibility private
26
+ attr_accessor :_unparsed
27
+
28
+ # The custom URL for a custom region.
29
+ attr_accessor :custom_url
30
+
31
+ # The name for the Opsgenie service.
32
+ attr_accessor :name
33
+
34
+ # The Opsgenie API key for your Opsgenie service.
35
+ attr_accessor :opsgenie_api_key
36
+
37
+ # The region for the Opsgenie service.
38
+ attr_accessor :region
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ # @!visibility private
42
+ def self.attribute_map
43
+ {
44
+ :'custom_url' => :'custom_url',
45
+ :'name' => :'name',
46
+ :'opsgenie_api_key' => :'opsgenie_api_key',
47
+ :'region' => :'region'
48
+ }
49
+ end
50
+
51
+ # Returns all the JSON keys this model knows about
52
+ # @!visibility private
53
+ def self.acceptable_attributes
54
+ attribute_map.values
55
+ end
56
+
57
+ # Attribute type mapping.
58
+ # @!visibility private
59
+ def self.openapi_types
60
+ {
61
+ :'custom_url' => :'String',
62
+ :'name' => :'String',
63
+ :'opsgenie_api_key' => :'String',
64
+ :'region' => :'OpsgenieServiceRegionType'
65
+ }
66
+ end
67
+
68
+ # List of attributes with nullable: true
69
+ # @!visibility private
70
+ def self.openapi_nullable
71
+ Set.new([
72
+ ])
73
+ end
74
+
75
+ # Initializes the object
76
+ # @param attributes [Hash] Model attributes in the form of hash
77
+ # @!visibility private
78
+ def initialize(attributes = {})
79
+ if (!attributes.is_a?(Hash))
80
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::OpsgenieServiceCreateAttributes` initialize method"
81
+ end
82
+
83
+ # check to see if the attribute exists and convert string to symbol for hash key
84
+ attributes = attributes.each_with_object({}) { |(k, v), h|
85
+ if (!self.class.attribute_map.key?(k.to_sym))
86
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::OpsgenieServiceCreateAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
87
+ end
88
+ h[k.to_sym] = v
89
+ }
90
+
91
+ if attributes.key?(:'custom_url')
92
+ self.custom_url = attributes[:'custom_url']
93
+ end
94
+
95
+ if attributes.key?(:'name')
96
+ self.name = attributes[:'name']
97
+ end
98
+
99
+ if attributes.key?(:'opsgenie_api_key')
100
+ self.opsgenie_api_key = attributes[:'opsgenie_api_key']
101
+ end
102
+
103
+ if attributes.key?(:'region')
104
+ self.region = attributes[:'region']
105
+ end
106
+ end
107
+
108
+ # Check to see if the all the properties in the model are valid
109
+ # @return true if the model is valid
110
+ # @!visibility private
111
+ def valid?
112
+ return false if @name.nil?
113
+ return false if @opsgenie_api_key.nil?
114
+ return false if @region.nil?
115
+ true
116
+ end
117
+
118
+ # Custom attribute writer method with validation
119
+ # @param name [Object] Object to be assigned
120
+ # @!visibility private
121
+ def name=(name)
122
+ if name.nil?
123
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
124
+ end
125
+ @name = name
126
+ end
127
+
128
+ # Custom attribute writer method with validation
129
+ # @param opsgenie_api_key [Object] Object to be assigned
130
+ # @!visibility private
131
+ def opsgenie_api_key=(opsgenie_api_key)
132
+ if opsgenie_api_key.nil?
133
+ fail ArgumentError, 'invalid value for "opsgenie_api_key", opsgenie_api_key cannot be nil.'
134
+ end
135
+ @opsgenie_api_key = opsgenie_api_key
136
+ end
137
+
138
+ # Custom attribute writer method with validation
139
+ # @param region [Object] Object to be assigned
140
+ # @!visibility private
141
+ def region=(region)
142
+ if region.nil?
143
+ fail ArgumentError, 'invalid value for "region", region cannot be nil.'
144
+ end
145
+ @region = region
146
+ end
147
+
148
+ # Checks equality by comparing each attribute.
149
+ # @param o [Object] Object to be compared
150
+ # @!visibility private
151
+ def ==(o)
152
+ return true if self.equal?(o)
153
+ self.class == o.class &&
154
+ custom_url == o.custom_url &&
155
+ name == o.name &&
156
+ opsgenie_api_key == o.opsgenie_api_key &&
157
+ region == o.region
158
+ end
159
+
160
+ # @see the `==` method
161
+ # @param o [Object] Object to be compared
162
+ # @!visibility private
163
+ def eql?(o)
164
+ self == o
165
+ end
166
+
167
+ # Calculates hash code according to all attributes.
168
+ # @return [Integer] Hash code
169
+ # @!visibility private
170
+ def hash
171
+ [custom_url, name, opsgenie_api_key, region].hash
172
+ end
173
+ end
174
+ end