datadog_api_client 2.53.0 → 2.54.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 (380) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +2514 -18
  3. data/.generator/schemas/v2/openapi.yaml +17639 -617
  4. data/CHANGELOG.md +55 -0
  5. data/examples/v1/azure-integration/UpdateAzureHostFilters.rb +1 -0
  6. data/examples/v1/azure-integration/UpdateAzureIntegration.rb +1 -0
  7. data/examples/v1/dashboards/CreateDashboard_2049446128.rb +42 -0
  8. data/examples/v2/agentless-scanning/CreateAwsScanOptions.rb +1 -0
  9. data/examples/v2/app-builder/CreatePublishRequest.rb +15 -0
  10. data/examples/v2/app-builder/ListAppVersions.rb +5 -0
  11. data/examples/v2/app-builder/RevertApp.rb +5 -0
  12. data/examples/v2/app-builder/UpdateAppFavorite.rb +14 -0
  13. data/examples/v2/app-builder/UpdateAppSelfService.rb +14 -0
  14. data/examples/v2/app-builder/UpdateAppTags.rb +17 -0
  15. data/examples/v2/app-builder/UpdateAppVersionName.rb +14 -0
  16. data/examples/v2/app-builder/UpdateProtectionLevel.rb +14 -0
  17. data/examples/v2/cloud-cost-management/GetCommitmentsCommitmentList.rb +8 -0
  18. data/examples/v2/cloud-cost-management/GetCommitmentsCoverageScalar.rb +8 -0
  19. data/examples/v2/cloud-cost-management/GetCommitmentsCoverageTimeseries.rb +8 -0
  20. data/examples/v2/cloud-cost-management/GetCommitmentsOnDemandHotspotsScalar.rb +8 -0
  21. data/examples/v2/cloud-cost-management/GetCommitmentsSavingsScalar.rb +8 -0
  22. data/examples/v2/cloud-cost-management/GetCommitmentsSavingsTimeseries.rb +8 -0
  23. data/examples/v2/cloud-cost-management/GetCommitmentsUtilizationScalar.rb +8 -0
  24. data/examples/v2/cloud-cost-management/GetCommitmentsUtilizationTimeseries.rb +8 -0
  25. data/examples/v2/cloud-cost-management/GetCostAnomaly.rb +8 -0
  26. data/examples/v2/cloud-cost-management/GetCostTagKey.rb +5 -0
  27. data/examples/v2/cloud-cost-management/ListCostAnomalies.rb +8 -0
  28. data/examples/v2/cloud-cost-management/ListCostOCIConfigs.rb +5 -0
  29. data/examples/v2/cloud-cost-management/ListCostTagDescriptions.rb +5 -0
  30. data/examples/v2/cloud-cost-management/ListCostTagKeys.rb +5 -0
  31. data/examples/v2/cloud-cost-management/ListCostTags.rb +5 -0
  32. data/examples/v2/cloud-cost-management/ListCustomAllocationRulesStatus.rb +5 -0
  33. data/examples/v2/cloud-cost-management/ListTagPipelinesRulesetsStatus.rb +5 -0
  34. data/examples/v2/compliance/GetRuleBasedView.rb +8 -0
  35. data/examples/v2/feature-flags/ListFeatureFlags.rb +4 -1
  36. data/examples/v2/key-management/Validate.rb +8 -0
  37. data/examples/v2/key-management/ValidateAPIKey.rb +5 -0
  38. data/examples/v2/llm-observability/CreateLLMObsAnnotationQueue.rb +23 -1
  39. data/examples/v2/llm-observability/GetLLMObsAnnotationQueueLabelSchema.rb +8 -0
  40. data/examples/v2/llm-observability/UpdateLLMObsAnnotationQueue.rb +22 -0
  41. data/examples/v2/llm-observability/UpdateLLMObsAnnotationQueueLabelSchema.rb +38 -0
  42. data/examples/v2/logs-archives/CreateLogsArchive.rb +1 -0
  43. data/examples/v2/logs-archives/UpdateLogsArchive.rb +1 -0
  44. data/examples/v2/organizations/ListOrgs.rb +5 -0
  45. data/examples/v2/security-monitoring/BulkDeleteSecurityMonitoringRules.rb +17 -0
  46. data/examples/v2/security-monitoring/MuteSecurityFindings.rb +33 -0
  47. data/examples/v2/security-monitoring/MuteSecurityFindings_298521544.rb +31 -0
  48. data/examples/v2/security-monitoring/MuteSecurityFindings_3830190821.rb +32 -0
  49. data/examples/v2/security-monitoring/ValidateSecurityMonitoringRule_2609327779.rb +2 -2
  50. data/examples/v2/status-pages/CreateBackfilledDegradation.rb +53 -0
  51. data/examples/v2/status-pages/CreateBackfilledMaintenance.rb +42 -0
  52. data/examples/v2/status-pages/CreateStatusPage.rb +0 -1
  53. data/examples/v2/status-pages/PublishStatusPage.rb +3 -3
  54. data/examples/v2/status-pages/UnpublishStatusPage.rb +1 -4
  55. data/examples/v2/storage-management/UpsertSyncConfig.rb +34 -0
  56. data/examples/v2/synthetics/AddTestToSyntheticsDowntime.rb +5 -0
  57. data/examples/v2/synthetics/CreateSyntheticsDowntime.rb +31 -0
  58. data/examples/v2/synthetics/DeleteSyntheticsDowntime.rb +5 -0
  59. data/examples/v2/synthetics/GetSyntheticsDowntime.rb +5 -0
  60. data/examples/v2/synthetics/ListSyntheticsDowntimes.rb +5 -0
  61. data/examples/v2/synthetics/RemoveTestFromSyntheticsDowntime.rb +5 -0
  62. data/examples/v2/synthetics/UpdateSyntheticsDowntime.rb +31 -0
  63. data/examples/v2/test-optimization/DeleteTestOptimizationServiceSettings.rb +0 -3
  64. data/examples/v2/test-optimization/GetFlakyTestsManagementPolicies.rb +0 -3
  65. data/examples/v2/test-optimization/GetTestOptimizationServiceSettings.rb +0 -3
  66. data/examples/v2/test-optimization/SearchFlakyTests.rb +0 -3
  67. data/examples/v2/test-optimization/SearchFlakyTests_1224086727.rb +0 -3
  68. data/examples/v2/test-optimization/UpdateFlakyTests.rb +0 -3
  69. data/examples/v2/test-optimization/UpdateFlakyTestsManagementPolicies.rb +0 -3
  70. data/examples/v2/test-optimization/UpdateTestOptimizationServiceSettings.rb +0 -3
  71. data/examples/v2/users/DeleteUserInvitations.rb +5 -0
  72. data/examples/v2/users/GetCurrentUser.rb +5 -0
  73. data/examples/v2/users/UpdateCurrentUser.rb +15 -0
  74. data/examples/v2/web-integrations/CreateWebIntegrationAccount.rb +19 -0
  75. data/examples/v2/web-integrations/DeleteWebIntegrationAccount.rb +8 -0
  76. data/examples/v2/web-integrations/GetWebIntegrationAccount.rb +8 -0
  77. data/examples/v2/web-integrations/ListWebIntegrationAccounts.rb +8 -0
  78. data/examples/v2/web-integrations/UpdateWebIntegrationAccount.rb +19 -0
  79. data/lib/datadog_api_client/configuration.rb +20 -12
  80. data/lib/datadog_api_client/inflector.rb +213 -16
  81. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +3 -3
  82. data/lib/datadog_api_client/v1/models/azure_account.rb +11 -1
  83. data/lib/datadog_api_client/v1/models/data_projection_query.rb +166 -0
  84. data/lib/datadog_api_client/v1/models/data_projection_request_type.rb +26 -0
  85. data/lib/datadog_api_client/v1/models/formula_and_function_apm_resource_stats_query_definition.rb +4 -1
  86. data/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb +1 -0
  87. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +1 -0
  88. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +2 -0
  89. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +21 -1
  90. data/lib/datadog_api_client/v1/models/point_plot_dimension.rb +29 -0
  91. data/lib/datadog_api_client/v1/models/point_plot_projection.rb +158 -0
  92. data/lib/datadog_api_client/v1/models/point_plot_projection_dimension.rb +154 -0
  93. data/lib/datadog_api_client/v1/models/point_plot_projection_type.rb +26 -0
  94. data/lib/datadog_api_client/v1/models/point_plot_widget_definition.rb +240 -0
  95. data/lib/datadog_api_client/v1/models/point_plot_widget_definition_type.rb +26 -0
  96. data/lib/datadog_api_client/v1/models/point_plot_widget_legend.rb +123 -0
  97. data/lib/datadog_api_client/v1/models/point_plot_widget_legend_type.rb +27 -0
  98. data/lib/datadog_api_client/v1/models/point_plot_widget_request.rb +175 -0
  99. data/lib/datadog_api_client/v1/models/sankey_rum_data_source.rb +1 -1
  100. data/lib/datadog_api_client/v1/models/sankey_rum_query.rb +3 -3
  101. data/lib/datadog_api_client/v1/models/sankey_rum_query_mode.rb +1 -1
  102. data/lib/datadog_api_client/v1/models/sankey_rum_request.rb +2 -2
  103. data/lib/datadog_api_client/v1/models/sunburst_widget_request.rb +11 -1
  104. data/lib/datadog_api_client/v1/models/tree_map_widget_request.rb +23 -3
  105. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +121 -1
  106. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +121 -1
  107. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +121 -1
  108. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -0
  109. data/lib/datadog_api_client/v2/api/app_builder_api.rb +578 -0
  110. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +1580 -173
  111. data/lib/datadog_api_client/v2/api/compliance_api.rb +111 -0
  112. data/lib/datadog_api_client/v2/api/key_management_api.rb +129 -0
  113. data/lib/datadog_api_client/v2/api/llm_observability_api.rb +159 -5
  114. data/lib/datadog_api_client/v2/api/metrics_api.rb +9 -5
  115. data/lib/datadog_api_client/v2/api/organizations_api.rb +62 -0
  116. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +143 -0
  117. data/lib/datadog_api_client/v2/api/status_pages_api.rb +149 -1
  118. data/lib/datadog_api_client/v2/api/storage_management_api.rb +93 -0
  119. data/lib/datadog_api_client/v2/api/synthetics_api.rb +473 -0
  120. data/lib/datadog_api_client/v2/api/test_optimization_api.rb +0 -42
  121. data/lib/datadog_api_client/v2/api/users_api.rb +201 -0
  122. data/lib/datadog_api_client/v2/api/web_integrations_api.rb +410 -0
  123. data/lib/datadog_api_client/v2/api/widgets_api.rb +13 -4
  124. data/lib/datadog_api_client/v2/models/apm_dependency_stats_query.rb +24 -1
  125. data/lib/datadog_api_client/v2/models/apm_metrics_query.rb +24 -1
  126. data/lib/datadog_api_client/v2/models/apm_resource_stats_query.rb +24 -1
  127. data/lib/datadog_api_client/v2/models/{security_monitoring_rule_new_value_options_forget_after.rb → app_favorite_type.rb} +3 -8
  128. data/lib/datadog_api_client/v2/models/{security_monitoring_rule_new_value_options_learning_duration.rb → app_protection_level.rb} +4 -6
  129. data/lib/datadog_api_client/v2/models/app_protection_level_type.rb +26 -0
  130. data/lib/datadog_api_client/v2/models/app_self_service_type.rb +26 -0
  131. data/lib/datadog_api_client/v2/models/{incident_team_type.rb → app_tags_type.rb} +3 -3
  132. data/lib/datadog_api_client/v2/models/{incident_team_response_data.rb → app_version.rb} +10 -20
  133. data/lib/datadog_api_client/v2/models/app_version_attributes.rb +185 -0
  134. data/lib/datadog_api_client/v2/models/app_version_name_type.rb +26 -0
  135. data/lib/datadog_api_client/v2/models/app_version_type.rb +26 -0
  136. data/lib/datadog_api_client/v2/models/arbitrary_rule_status_response_array.rb +125 -0
  137. data/lib/datadog_api_client/v2/models/arbitrary_rule_status_response_data.rb +165 -0
  138. data/lib/datadog_api_client/v2/models/arbitrary_rule_status_response_data_attributes.rb +123 -0
  139. data/lib/datadog_api_client/v2/models/arbitrary_rule_status_response_data_type.rb +26 -0
  140. data/lib/datadog_api_client/v2/models/aws_scan_options_attributes.rb +11 -1
  141. data/lib/datadog_api_client/v2/models/aws_scan_options_create_attributes.rb +22 -1
  142. data/lib/datadog_api_client/v2/models/aws_scan_options_update_attributes.rb +11 -1
  143. data/lib/datadog_api_client/v2/models/azure_scan_options_data_attributes.rb +11 -1
  144. data/lib/datadog_api_client/v2/models/azure_scan_options_input_update_data_attributes.rb +11 -1
  145. data/lib/datadog_api_client/v2/models/cloud_inventory_cloud_provider_id.rb +28 -0
  146. data/lib/datadog_api_client/v2/models/cloud_inventory_cloud_provider_request_type.rb +26 -0
  147. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_attributes.rb +396 -0
  148. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_aws_request_attributes.rb +175 -0
  149. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_azure_request_attributes.rb +228 -0
  150. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_gcp_request_attributes.rb +186 -0
  151. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_resource_type.rb +26 -0
  152. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_response.rb +123 -0
  153. data/lib/datadog_api_client/v2/models/cloud_inventory_sync_config_response_data.rb +165 -0
  154. data/lib/datadog_api_client/v2/models/commitments_aws_ec2_ri_commitment.rb +298 -0
  155. data/lib/datadog_api_client/v2/models/commitments_aws_elasticache_ri_commitment.rb +267 -0
  156. data/lib/datadog_api_client/v2/models/commitments_aws_rdsri_commitment.rb +277 -0
  157. data/lib/datadog_api_client/v2/models/commitments_aws_sp_commitment.rb +215 -0
  158. data/lib/datadog_api_client/v2/models/commitments_azure_compute_sp_commitment.rb +194 -0
  159. data/lib/datadog_api_client/v2/models/commitments_azure_vmri_commitment.rb +268 -0
  160. data/lib/datadog_api_client/v2/models/commitments_azure_vmri_status.rb +28 -0
  161. data/lib/datadog_api_client/v2/models/commitments_commitment_type.rb +27 -0
  162. data/lib/datadog_api_client/v2/models/commitments_coverage_scalar_response.rb +125 -0
  163. data/lib/datadog_api_client/v2/models/commitments_coverage_timeseries_response.rb +144 -0
  164. data/lib/datadog_api_client/v2/models/{incident_team_included_items.rb → commitments_list_item.rb} +8 -3
  165. data/lib/datadog_api_client/v2/models/commitments_list_meta.rb +105 -0
  166. data/lib/datadog_api_client/v2/models/commitments_list_response.rb +135 -0
  167. data/lib/datadog_api_client/v2/models/commitments_on_demand_hotspots_scalar_meta.rb +123 -0
  168. data/lib/datadog_api_client/v2/models/commitments_on_demand_hotspots_scalar_response.rb +158 -0
  169. data/lib/datadog_api_client/v2/models/commitments_provider.rb +27 -0
  170. data/lib/datadog_api_client/v2/models/commitments_savings_scalar_response.rb +125 -0
  171. data/lib/datadog_api_client/v2/models/commitments_savings_timeseries_response.rb +186 -0
  172. data/lib/datadog_api_client/v2/models/commitments_scalar_column.rb +177 -0
  173. data/lib/datadog_api_client/v2/models/commitments_scalar_column_meta.rb +123 -0
  174. data/lib/datadog_api_client/v2/models/commitments_scalar_column_type.rb +27 -0
  175. data/lib/datadog_api_client/v2/models/commitments_timeseries_metric.rb +156 -0
  176. data/lib/datadog_api_client/v2/models/commitments_unit.rb +228 -0
  177. data/lib/datadog_api_client/v2/models/commitments_utilization_scalar_product_breakdown_entry.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/{incident_teams_response.rb → commitments_utilization_scalar_response.rb} +26 -36
  179. data/lib/datadog_api_client/v2/models/commitments_utilization_timeseries_response.rb +156 -0
  180. data/lib/datadog_api_client/v2/models/container_scalar_query.rb +24 -1
  181. data/lib/datadog_api_client/v2/models/container_timeseries_query.rb +24 -1
  182. data/lib/datadog_api_client/v2/models/cost_anomalies_response.rb +105 -0
  183. data/lib/datadog_api_client/v2/models/cost_anomalies_response_data.rb +165 -0
  184. data/lib/datadog_api_client/v2/models/cost_anomalies_response_data_attributes.rb +209 -0
  185. data/lib/datadog_api_client/v2/models/cost_anomalies_response_data_type.rb +26 -0
  186. data/lib/datadog_api_client/v2/models/cost_anomaly.rb +319 -0
  187. data/lib/datadog_api_client/v2/models/cost_anomaly_dismissal.rb +207 -0
  188. data/lib/datadog_api_client/v2/models/cost_anomaly_response.rb +105 -0
  189. data/lib/datadog_api_client/v2/models/cost_anomaly_response_data.rb +165 -0
  190. data/lib/datadog_api_client/v2/models/cost_tag.rb +165 -0
  191. data/lib/datadog_api_client/v2/models/cost_tag_attributes.rb +146 -0
  192. data/lib/datadog_api_client/v2/models/cost_tag_description.rb +165 -0
  193. data/lib/datadog_api_client/v2/models/cost_tag_description_attributes.rb +228 -0
  194. data/lib/datadog_api_client/v2/models/cost_tag_description_source.rb +28 -0
  195. data/lib/datadog_api_client/v2/models/cost_tag_description_type.rb +26 -0
  196. data/lib/datadog_api_client/v2/models/cost_tag_descriptions_response.rb +125 -0
  197. data/lib/datadog_api_client/v2/models/cost_tag_key.rb +165 -0
  198. data/lib/datadog_api_client/v2/models/cost_tag_key_attributes.rb +156 -0
  199. data/lib/datadog_api_client/v2/models/cost_tag_key_details.rb +146 -0
  200. data/lib/datadog_api_client/v2/models/{incident_team_create_request.rb → cost_tag_key_response.rb} +5 -5
  201. data/lib/datadog_api_client/v2/models/cost_tag_key_type.rb +26 -0
  202. data/lib/datadog_api_client/v2/models/cost_tag_keys_response.rb +125 -0
  203. data/lib/datadog_api_client/v2/models/cost_tag_type.rb +26 -0
  204. data/lib/datadog_api_client/v2/models/cost_tags_response.rb +125 -0
  205. data/lib/datadog_api_client/v2/models/create_backfilled_degradation_request.rb +105 -0
  206. data/lib/datadog_api_client/v2/models/{incident_team_create_data.rb → create_backfilled_degradation_request_data.rb} +8 -18
  207. data/lib/datadog_api_client/v2/models/create_backfilled_degradation_request_data_attributes.rb +146 -0
  208. data/lib/datadog_api_client/v2/models/create_backfilled_degradation_request_data_attributes_updates_items.rb +166 -0
  209. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request.rb +105 -0
  210. data/lib/datadog_api_client/v2/models/{incident_team_update_data.rb → create_backfilled_maintenance_request_data.rb} +8 -28
  211. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request_data_attributes.rb +154 -0
  212. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request_data_attributes_updates_items.rb +188 -0
  213. data/lib/datadog_api_client/v2/models/create_degradation_request_data_attributes.rb +15 -3
  214. data/lib/datadog_api_client/v2/models/create_degradation_request_data_attributes_updates_items.rb +188 -0
  215. data/lib/datadog_api_client/v2/models/create_degradation_request_data_attributes_updates_items_components_affected_items.rb +154 -0
  216. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes.rb +15 -3
  217. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes_updates_items.rb +188 -0
  218. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes_updates_items_components_affected_items.rb +154 -0
  219. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes_updates_items_status.rb +27 -0
  220. data/lib/datadog_api_client/v2/models/create_publish_request_request.rb +105 -0
  221. data/lib/datadog_api_client/v2/models/{incident_team_relationships.rb → create_publish_request_request_data.rb} +18 -18
  222. data/lib/datadog_api_client/v2/models/create_publish_request_request_data_attributes.rb +133 -0
  223. data/lib/datadog_api_client/v2/models/create_status_page_request_data_attributes.rb +1 -22
  224. data/lib/datadog_api_client/v2/models/events_scalar_query.rb +24 -1
  225. data/lib/datadog_api_client/v2/models/events_timeseries_query.rb +24 -1
  226. data/lib/datadog_api_client/v2/models/feature_flag_attributes.rb +11 -1
  227. data/lib/datadog_api_client/v2/models/feature_flag_environment.rb +1 -38
  228. data/lib/datadog_api_client/v2/models/feature_flag_environment_list_item.rb +246 -0
  229. data/lib/datadog_api_client/v2/models/feature_flag_list_item.rb +165 -0
  230. data/lib/datadog_api_client/v2/models/feature_flag_list_item_attributes.rb +332 -0
  231. data/lib/datadog_api_client/v2/models/gcp_scan_options_data_attributes.rb +11 -1
  232. data/lib/datadog_api_client/v2/models/gcp_scan_options_input_update_data_attributes.rb +11 -1
  233. data/lib/datadog_api_client/v2/models/incident_integration_metadata_attributes.rb +1 -0
  234. data/lib/datadog_api_client/v2/models/issue_attributes.rb +11 -1
  235. data/lib/datadog_api_client/v2/models/issue_regression.rb +154 -0
  236. data/lib/datadog_api_client/v2/models/issues_search_request_data_attributes.rb +24 -1
  237. data/lib/datadog_api_client/v2/models/list_app_versions_response.rb +117 -0
  238. data/lib/datadog_api_client/v2/models/list_feature_flags_response.rb +1 -1
  239. data/lib/datadog_api_client/v2/models/llm_obs_annotated_interaction_item.rb +1 -1
  240. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_data_attributes_request.rb +11 -1
  241. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_data_attributes_response.rb +11 -1
  242. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_interaction_item.rb +1 -1
  243. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_interaction_response_item.rb +1 -1
  244. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_attributes.rb +123 -0
  245. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_data.rb +165 -0
  246. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_response.rb +123 -0
  247. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_update_attributes.rb +123 -0
  248. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_update_data.rb +144 -0
  249. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_label_schema_update_request.rb +123 -0
  250. data/lib/datadog_api_client/v2/models/llm_obs_annotation_queue_update_data_attributes_request.rb +11 -1
  251. data/lib/datadog_api_client/v2/models/llm_obs_annotation_schema.rb +125 -0
  252. data/lib/datadog_api_client/v2/models/llm_obs_interaction_type.rb +1 -0
  253. data/lib/datadog_api_client/v2/models/llm_obs_label_schema.rb +246 -0
  254. data/lib/datadog_api_client/v2/models/llm_obs_label_schema_type.rb +29 -0
  255. data/lib/datadog_api_client/v2/models/logs_archive_attributes.rb +11 -1
  256. data/lib/datadog_api_client/v2/models/logs_archive_attributes_compression_method.rb +27 -0
  257. data/lib/datadog_api_client/v2/models/logs_archive_create_request_attributes.rb +11 -1
  258. data/lib/datadog_api_client/v2/models/managed_orgs_data.rb +165 -0
  259. data/lib/datadog_api_client/v2/models/{incident_team_update_request.rb → managed_orgs_relationship_to_org.rb} +5 -5
  260. data/lib/datadog_api_client/v2/models/managed_orgs_relationship_to_orgs.rb +125 -0
  261. data/lib/datadog_api_client/v2/models/managed_orgs_relationships.rb +144 -0
  262. data/lib/datadog_api_client/v2/models/{incident_team_response.rb → managed_orgs_response.rb} +19 -8
  263. data/lib/datadog_api_client/v2/models/managed_orgs_type.rb +26 -0
  264. data/lib/datadog_api_client/v2/models/metrics_scalar_query.rb +24 -1
  265. data/lib/datadog_api_client/v2/models/metrics_timeseries_query.rb +24 -1
  266. data/lib/datadog_api_client/v2/models/mute_data_type.rb +26 -0
  267. data/lib/datadog_api_client/v2/models/mute_findings_mute_attributes.rb +164 -0
  268. data/lib/datadog_api_client/v2/models/mute_findings_reason.rb +34 -0
  269. data/lib/datadog_api_client/v2/models/mute_findings_request.rb +123 -0
  270. data/lib/datadog_api_client/v2/models/mute_findings_request_data.rb +175 -0
  271. data/lib/datadog_api_client/v2/models/mute_findings_request_data_attributes.rb +123 -0
  272. data/lib/datadog_api_client/v2/models/mute_findings_request_data_relationships.rb +123 -0
  273. data/lib/datadog_api_client/v2/models/mute_findings_response.rb +105 -0
  274. data/lib/datadog_api_client/v2/models/mute_findings_response_data.rb +144 -0
  275. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +1 -0
  276. data/lib/datadog_api_client/v2/models/observability_pipeline_databricks_zerobus_destination.rb +263 -0
  277. data/lib/datadog_api_client/v2/models/observability_pipeline_databricks_zerobus_destination_auth.rb +133 -0
  278. data/lib/datadog_api_client/v2/models/observability_pipeline_databricks_zerobus_destination_type.rb +26 -0
  279. data/lib/datadog_api_client/v2/models/oci_config.rb +165 -0
  280. data/lib/datadog_api_client/v2/models/oci_config_attributes.rb +227 -0
  281. data/lib/datadog_api_client/v2/models/oci_config_type.rb +26 -0
  282. data/lib/datadog_api_client/v2/models/oci_configs_response.rb +125 -0
  283. data/lib/datadog_api_client/v2/models/org_attributes.rb +270 -0
  284. data/lib/datadog_api_client/v2/models/org_data.rb +165 -0
  285. data/lib/datadog_api_client/v2/models/org_group_list_response.rb +12 -2
  286. data/lib/datadog_api_client/v2/models/org_group_membership_list_response.rb +12 -2
  287. data/lib/datadog_api_client/v2/models/org_group_pagination_links.rb +154 -0
  288. data/lib/datadog_api_client/v2/models/org_group_pagination_meta.rb +3 -21
  289. data/lib/datadog_api_client/v2/models/org_group_pagination_meta_page.rb +86 -24
  290. data/lib/datadog_api_client/v2/models/org_group_policy_list_response.rb +12 -2
  291. data/lib/datadog_api_client/v2/models/org_group_policy_override_list_response.rb +12 -2
  292. data/lib/datadog_api_client/v2/models/org_relationship_data.rb +144 -0
  293. data/lib/datadog_api_client/v2/models/org_resource_type.rb +26 -0
  294. data/lib/datadog_api_client/v2/models/process_scalar_query.rb +24 -1
  295. data/lib/datadog_api_client/v2/models/process_timeseries_query.rb +24 -1
  296. data/lib/datadog_api_client/v2/models/publish_request_type.rb +26 -0
  297. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +2 -1
  298. data/lib/datadog_api_client/v2/models/rule_based_view_attributes.rb +146 -0
  299. data/lib/datadog_api_client/v2/models/rule_based_view_compliance_framework.rb +155 -0
  300. data/lib/datadog_api_client/v2/models/rule_based_view_data.rb +165 -0
  301. data/lib/datadog_api_client/v2/models/rule_based_view_response.rb +123 -0
  302. data/lib/datadog_api_client/v2/models/rule_based_view_rule.rb +339 -0
  303. data/lib/datadog_api_client/v2/models/rule_based_view_rule_category.rb +28 -0
  304. data/lib/datadog_api_client/v2/models/rule_based_view_rule_stats.rb +165 -0
  305. data/lib/datadog_api_client/v2/models/rule_based_view_type.rb +26 -0
  306. data/lib/datadog_api_client/v2/models/ruleset_status_resp_array.rb +125 -0
  307. data/lib/datadog_api_client/v2/models/ruleset_status_resp_data.rb +165 -0
  308. data/lib/datadog_api_client/v2/models/ruleset_status_resp_data_attributes.rb +123 -0
  309. data/lib/datadog_api_client/v2/models/ruleset_status_resp_data_type.rb +26 -0
  310. data/lib/datadog_api_client/v2/models/security_entity_risk_score_attributes.rb +2 -2
  311. data/lib/datadog_api_client/v2/models/security_monitoring_rule_bulk_delete_attributes.rb +129 -0
  312. data/lib/datadog_api_client/v2/models/security_monitoring_rule_bulk_delete_data.rb +144 -0
  313. data/lib/datadog_api_client/v2/models/security_monitoring_rule_bulk_delete_payload.rb +123 -0
  314. data/lib/datadog_api_client/v2/models/security_monitoring_rule_bulk_delete_request_data_type.rb +26 -0
  315. data/lib/datadog_api_client/v2/models/security_monitoring_rule_bulk_delete_response.rb +119 -0
  316. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +41 -4
  317. data/lib/datadog_api_client/v2/models/slo_query.rb +24 -1
  318. data/lib/datadog_api_client/v2/models/synthetics_downtime_data.rb +165 -0
  319. data/lib/datadog_api_client/v2/models/synthetics_downtime_data_attributes_request.rb +212 -0
  320. data/lib/datadog_api_client/v2/models/synthetics_downtime_data_attributes_response.rb +360 -0
  321. data/lib/datadog_api_client/v2/models/synthetics_downtime_data_request.rb +144 -0
  322. data/lib/datadog_api_client/v2/models/synthetics_downtime_frequency.rb +29 -0
  323. data/lib/datadog_api_client/v2/models/synthetics_downtime_request.rb +123 -0
  324. data/lib/datadog_api_client/v2/models/synthetics_downtime_resource_type.rb +26 -0
  325. data/lib/datadog_api_client/v2/models/synthetics_downtime_response.rb +123 -0
  326. data/lib/datadog_api_client/v2/models/synthetics_downtime_time_slot_date.rb +207 -0
  327. data/lib/datadog_api_client/v2/models/synthetics_downtime_time_slot_recurrence_request.rb +155 -0
  328. data/lib/datadog_api_client/v2/models/synthetics_downtime_time_slot_recurrence_response.rb +177 -0
  329. data/lib/datadog_api_client/v2/models/synthetics_downtime_time_slot_request.rb +185 -0
  330. data/lib/datadog_api_client/v2/models/synthetics_downtime_time_slot_response.rb +206 -0
  331. data/lib/datadog_api_client/v2/models/synthetics_downtime_weekday.rb +32 -0
  332. data/lib/datadog_api_client/v2/models/synthetics_downtimes_response.rb +125 -0
  333. data/lib/datadog_api_client/v2/models/trigger_workflow_automation_action.rb +144 -0
  334. data/lib/datadog_api_client/v2/models/trigger_workflow_automation_action_type.rb +26 -0
  335. data/lib/datadog_api_client/v2/models/update_app_favorite_request.rb +105 -0
  336. data/lib/datadog_api_client/v2/models/update_app_favorite_request_data.rb +115 -0
  337. data/lib/datadog_api_client/v2/models/update_app_favorite_request_data_attributes.rb +123 -0
  338. data/lib/datadog_api_client/v2/models/update_app_protection_level_request.rb +105 -0
  339. data/lib/datadog_api_client/v2/models/update_app_protection_level_request_data.rb +115 -0
  340. data/lib/datadog_api_client/v2/models/update_app_protection_level_request_data_attributes.rb +123 -0
  341. data/lib/datadog_api_client/v2/models/update_app_self_service_request.rb +105 -0
  342. data/lib/datadog_api_client/v2/models/update_app_self_service_request_data.rb +115 -0
  343. data/lib/datadog_api_client/v2/models/update_app_self_service_request_data_attributes.rb +123 -0
  344. data/lib/datadog_api_client/v2/models/update_app_tags_request.rb +105 -0
  345. data/lib/datadog_api_client/v2/models/update_app_tags_request_data.rb +115 -0
  346. data/lib/datadog_api_client/v2/models/update_app_tags_request_data_attributes.rb +125 -0
  347. data/lib/datadog_api_client/v2/models/update_app_version_name_request.rb +105 -0
  348. data/lib/datadog_api_client/v2/models/update_app_version_name_request_data.rb +115 -0
  349. data/lib/datadog_api_client/v2/models/{incident_team_create_attributes.rb → update_app_version_name_request_data_attributes.rb} +4 -4
  350. data/lib/datadog_api_client/v2/models/upsert_cloud_inventory_sync_config_request.rb +123 -0
  351. data/lib/datadog_api_client/v2/models/upsert_cloud_inventory_sync_config_request_attributes.rb +125 -0
  352. data/lib/datadog_api_client/v2/models/upsert_cloud_inventory_sync_config_request_data.rb +165 -0
  353. data/lib/datadog_api_client/v2/models/user_attributes.rb +15 -14
  354. data/lib/datadog_api_client/v2/models/user_update_attributes.rb +27 -6
  355. data/lib/datadog_api_client/v2/models/validate_api_key_response.rb +123 -0
  356. data/lib/datadog_api_client/v2/models/validate_api_key_status.rb +26 -0
  357. data/lib/datadog_api_client/v2/models/validate_v2_attributes.rb +167 -0
  358. data/lib/datadog_api_client/v2/models/validate_v2_data.rb +165 -0
  359. data/lib/datadog_api_client/v2/models/validate_v2_response.rb +123 -0
  360. data/lib/datadog_api_client/v2/models/validate_v2_type.rb +26 -0
  361. data/lib/datadog_api_client/v2/models/web_integration_account_create_request.rb +123 -0
  362. data/lib/datadog_api_client/v2/models/web_integration_account_create_request_attributes.rb +166 -0
  363. data/lib/datadog_api_client/v2/models/web_integration_account_create_request_data.rb +144 -0
  364. data/lib/datadog_api_client/v2/models/web_integration_account_response.rb +105 -0
  365. data/lib/datadog_api_client/v2/models/{incident_team_update_attributes.rb → web_integration_account_response_attributes.rb} +17 -7
  366. data/lib/datadog_api_client/v2/models/web_integration_account_response_data.rb +165 -0
  367. data/lib/datadog_api_client/v2/models/web_integration_account_type.rb +26 -0
  368. data/lib/datadog_api_client/v2/models/web_integration_account_update_request.rb +123 -0
  369. data/lib/datadog_api_client/v2/models/{incident_team_response_attributes.rb → web_integration_account_update_request_attributes.rb} +25 -24
  370. data/lib/datadog_api_client/v2/models/web_integration_account_update_request_data.rb +144 -0
  371. data/lib/datadog_api_client/v2/models/web_integration_accounts_response.rb +107 -0
  372. data/lib/datadog_api_client/v2/models/widget_attributes.rb +5 -1
  373. data/lib/datadog_api_client/version.rb +1 -1
  374. metadata +268 -22
  375. data/examples/v2/incident-teams/CreateIncidentTeam.rb +0 -17
  376. data/examples/v2/incident-teams/DeleteIncidentTeam.rb +0 -11
  377. data/examples/v2/incident-teams/GetIncidentTeam.rb +0 -11
  378. data/examples/v2/incident-teams/ListIncidentTeams.rb +0 -14
  379. data/examples/v2/incident-teams/UpdateIncidentTeam.rb +0 -21
  380. data/lib/datadog_api_client/v2/api/incident_teams_api.rb +0 -419
@@ -0,0 +1,267 @@
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
+ # AWS ElastiCache Reserved Instance commitment details.
21
+ class CommitmentsAwsElasticacheRICommitment
22
+ include BaseGenericModel
23
+
24
+ # The cache engine type of the Reserved Instance.
25
+ attr_reader :cache_engine
26
+
27
+ # The unique identifier of the Reserved Instance.
28
+ attr_reader :commitment_id
29
+
30
+ # The expiration date of the commitment.
31
+ attr_accessor :expiration_date
32
+
33
+ # The ElastiCache instance type.
34
+ attr_reader :instance_type
35
+
36
+ # The number of Normalized Capacity Units.
37
+ attr_accessor :number_of_nfus
38
+
39
+ # The number of reserved instances.
40
+ attr_accessor :number_of_reservations
41
+
42
+ # The payment option for the Reserved Instance.
43
+ attr_reader :purchase_option
44
+
45
+ # The AWS region of the Reserved Instance.
46
+ attr_reader :region
47
+
48
+ # The start date of the commitment.
49
+ attr_accessor :start_date
50
+
51
+ # The term length in years.
52
+ attr_accessor :term_length
53
+
54
+ # The utilization percentage of the commitment.
55
+ attr_accessor :utilization
56
+
57
+ attr_accessor :additional_properties
58
+
59
+ # Attribute mapping from ruby-style variable name to JSON key.
60
+ # @!visibility private
61
+ def self.attribute_map
62
+ {
63
+ :'cache_engine' => :'cache_engine',
64
+ :'commitment_id' => :'commitment_id',
65
+ :'expiration_date' => :'expiration_date',
66
+ :'instance_type' => :'instance_type',
67
+ :'number_of_nfus' => :'number_of_nfus',
68
+ :'number_of_reservations' => :'number_of_reservations',
69
+ :'purchase_option' => :'purchase_option',
70
+ :'region' => :'region',
71
+ :'start_date' => :'start_date',
72
+ :'term_length' => :'term_length',
73
+ :'utilization' => :'utilization'
74
+ }
75
+ end
76
+
77
+ # Attribute type mapping.
78
+ # @!visibility private
79
+ def self.openapi_types
80
+ {
81
+ :'cache_engine' => :'String',
82
+ :'commitment_id' => :'String',
83
+ :'expiration_date' => :'String',
84
+ :'instance_type' => :'String',
85
+ :'number_of_nfus' => :'Float',
86
+ :'number_of_reservations' => :'Float',
87
+ :'purchase_option' => :'String',
88
+ :'region' => :'String',
89
+ :'start_date' => :'String',
90
+ :'term_length' => :'Float',
91
+ :'utilization' => :'Float'
92
+ }
93
+ end
94
+
95
+ # Initializes the object
96
+ # @param attributes [Hash] Model attributes in the form of hash
97
+ # @!visibility private
98
+ def initialize(attributes = {})
99
+ if (!attributes.is_a?(Hash))
100
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CommitmentsAwsElasticacheRICommitment` initialize method"
101
+ end
102
+
103
+ self.additional_properties = {}
104
+ # check to see if the attribute exists and convert string to symbol for hash key
105
+ attributes = attributes.each_with_object({}) { |(k, v), h|
106
+ if (!self.class.attribute_map.key?(k.to_sym))
107
+ self.additional_properties[k.to_sym] = v
108
+ else
109
+ h[k.to_sym] = v
110
+ end
111
+ }
112
+
113
+ if attributes.key?(:'cache_engine')
114
+ self.cache_engine = attributes[:'cache_engine']
115
+ end
116
+
117
+ if attributes.key?(:'commitment_id')
118
+ self.commitment_id = attributes[:'commitment_id']
119
+ end
120
+
121
+ if attributes.key?(:'expiration_date')
122
+ self.expiration_date = attributes[:'expiration_date']
123
+ end
124
+
125
+ if attributes.key?(:'instance_type')
126
+ self.instance_type = attributes[:'instance_type']
127
+ end
128
+
129
+ if attributes.key?(:'number_of_nfus')
130
+ self.number_of_nfus = attributes[:'number_of_nfus']
131
+ end
132
+
133
+ if attributes.key?(:'number_of_reservations')
134
+ self.number_of_reservations = attributes[:'number_of_reservations']
135
+ end
136
+
137
+ if attributes.key?(:'purchase_option')
138
+ self.purchase_option = attributes[:'purchase_option']
139
+ end
140
+
141
+ if attributes.key?(:'region')
142
+ self.region = attributes[:'region']
143
+ end
144
+
145
+ if attributes.key?(:'start_date')
146
+ self.start_date = attributes[:'start_date']
147
+ end
148
+
149
+ if attributes.key?(:'term_length')
150
+ self.term_length = attributes[:'term_length']
151
+ end
152
+
153
+ if attributes.key?(:'utilization')
154
+ self.utilization = attributes[:'utilization']
155
+ end
156
+ end
157
+
158
+ # Check to see if the all the properties in the model are valid
159
+ # @return true if the model is valid
160
+ # @!visibility private
161
+ def valid?
162
+ return false if @cache_engine.nil?
163
+ return false if @commitment_id.nil?
164
+ return false if @instance_type.nil?
165
+ return false if @purchase_option.nil?
166
+ return false if @region.nil?
167
+ true
168
+ end
169
+
170
+ # Custom attribute writer method with validation
171
+ # @param cache_engine [Object] Object to be assigned
172
+ # @!visibility private
173
+ def cache_engine=(cache_engine)
174
+ if cache_engine.nil?
175
+ fail ArgumentError, 'invalid value for "cache_engine", cache_engine cannot be nil.'
176
+ end
177
+ @cache_engine = cache_engine
178
+ end
179
+
180
+ # Custom attribute writer method with validation
181
+ # @param commitment_id [Object] Object to be assigned
182
+ # @!visibility private
183
+ def commitment_id=(commitment_id)
184
+ if commitment_id.nil?
185
+ fail ArgumentError, 'invalid value for "commitment_id", commitment_id cannot be nil.'
186
+ end
187
+ @commitment_id = commitment_id
188
+ end
189
+
190
+ # Custom attribute writer method with validation
191
+ # @param instance_type [Object] Object to be assigned
192
+ # @!visibility private
193
+ def instance_type=(instance_type)
194
+ if instance_type.nil?
195
+ fail ArgumentError, 'invalid value for "instance_type", instance_type cannot be nil.'
196
+ end
197
+ @instance_type = instance_type
198
+ end
199
+
200
+ # Custom attribute writer method with validation
201
+ # @param purchase_option [Object] Object to be assigned
202
+ # @!visibility private
203
+ def purchase_option=(purchase_option)
204
+ if purchase_option.nil?
205
+ fail ArgumentError, 'invalid value for "purchase_option", purchase_option cannot be nil.'
206
+ end
207
+ @purchase_option = purchase_option
208
+ end
209
+
210
+ # Custom attribute writer method with validation
211
+ # @param region [Object] Object to be assigned
212
+ # @!visibility private
213
+ def region=(region)
214
+ if region.nil?
215
+ fail ArgumentError, 'invalid value for "region", region cannot be nil.'
216
+ end
217
+ @region = region
218
+ end
219
+
220
+ # Returns the object in the form of hash, with additionalProperties support.
221
+ # @return [Hash] Returns the object in the form of hash
222
+ # @!visibility private
223
+ def to_hash
224
+ hash = {}
225
+ self.class.attribute_map.each_pair do |attr, param|
226
+ value = self.send(attr)
227
+ if value.nil?
228
+ is_nullable = self.class.openapi_nullable.include?(attr)
229
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
230
+ end
231
+
232
+ hash[param] = _to_hash(value)
233
+ end
234
+ self.additional_properties.each_pair do |attr, value|
235
+ hash[attr] = value
236
+ end
237
+ hash
238
+ end
239
+
240
+ # Checks equality by comparing each attribute.
241
+ # @param o [Object] Object to be compared
242
+ # @!visibility private
243
+ def ==(o)
244
+ return true if self.equal?(o)
245
+ self.class == o.class &&
246
+ cache_engine == o.cache_engine &&
247
+ commitment_id == o.commitment_id &&
248
+ expiration_date == o.expiration_date &&
249
+ instance_type == o.instance_type &&
250
+ number_of_nfus == o.number_of_nfus &&
251
+ number_of_reservations == o.number_of_reservations &&
252
+ purchase_option == o.purchase_option &&
253
+ region == o.region &&
254
+ start_date == o.start_date &&
255
+ term_length == o.term_length &&
256
+ utilization == o.utilization &&
257
+ additional_properties == o.additional_properties
258
+ end
259
+
260
+ # Calculates hash code according to all attributes.
261
+ # @return [Integer] Hash code
262
+ # @!visibility private
263
+ def hash
264
+ [cache_engine, commitment_id, expiration_date, instance_type, number_of_nfus, number_of_reservations, purchase_option, region, start_date, term_length, utilization, additional_properties].hash
265
+ end
266
+ end
267
+ end
@@ -0,0 +1,277 @@
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
+ # AWS RDS Reserved Instance commitment details.
21
+ class CommitmentsAwsRDSRICommitment
22
+ include BaseGenericModel
23
+
24
+ # The unique identifier of the Reserved Instance.
25
+ attr_reader :commitment_id
26
+
27
+ # The database engine of the Reserved Instance.
28
+ attr_reader :database_engine
29
+
30
+ # The expiration date of the commitment.
31
+ attr_accessor :expiration_date
32
+
33
+ # The RDS instance type.
34
+ attr_reader :instance_type
35
+
36
+ # Whether the Reserved Instance is Multi-AZ.
37
+ attr_accessor :is_multi_az
38
+
39
+ # The number of Normalized Capacity Units.
40
+ attr_accessor :number_of_nfus
41
+
42
+ # The number of reserved instances.
43
+ attr_accessor :number_of_reservations
44
+
45
+ # The payment option for the Reserved Instance.
46
+ attr_reader :purchase_option
47
+
48
+ # The AWS region of the Reserved Instance.
49
+ attr_reader :region
50
+
51
+ # The start date of the commitment.
52
+ attr_accessor :start_date
53
+
54
+ # The term length in years.
55
+ attr_accessor :term_length
56
+
57
+ # The utilization percentage of the commitment.
58
+ attr_accessor :utilization
59
+
60
+ attr_accessor :additional_properties
61
+
62
+ # Attribute mapping from ruby-style variable name to JSON key.
63
+ # @!visibility private
64
+ def self.attribute_map
65
+ {
66
+ :'commitment_id' => :'commitment_id',
67
+ :'database_engine' => :'database_engine',
68
+ :'expiration_date' => :'expiration_date',
69
+ :'instance_type' => :'instance_type',
70
+ :'is_multi_az' => :'is_multi_az',
71
+ :'number_of_nfus' => :'number_of_nfus',
72
+ :'number_of_reservations' => :'number_of_reservations',
73
+ :'purchase_option' => :'purchase_option',
74
+ :'region' => :'region',
75
+ :'start_date' => :'start_date',
76
+ :'term_length' => :'term_length',
77
+ :'utilization' => :'utilization'
78
+ }
79
+ end
80
+
81
+ # Attribute type mapping.
82
+ # @!visibility private
83
+ def self.openapi_types
84
+ {
85
+ :'commitment_id' => :'String',
86
+ :'database_engine' => :'String',
87
+ :'expiration_date' => :'String',
88
+ :'instance_type' => :'String',
89
+ :'is_multi_az' => :'Boolean',
90
+ :'number_of_nfus' => :'Float',
91
+ :'number_of_reservations' => :'Float',
92
+ :'purchase_option' => :'String',
93
+ :'region' => :'String',
94
+ :'start_date' => :'String',
95
+ :'term_length' => :'Float',
96
+ :'utilization' => :'Float'
97
+ }
98
+ end
99
+
100
+ # Initializes the object
101
+ # @param attributes [Hash] Model attributes in the form of hash
102
+ # @!visibility private
103
+ def initialize(attributes = {})
104
+ if (!attributes.is_a?(Hash))
105
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CommitmentsAwsRDSRICommitment` initialize method"
106
+ end
107
+
108
+ self.additional_properties = {}
109
+ # check to see if the attribute exists and convert string to symbol for hash key
110
+ attributes = attributes.each_with_object({}) { |(k, v), h|
111
+ if (!self.class.attribute_map.key?(k.to_sym))
112
+ self.additional_properties[k.to_sym] = v
113
+ else
114
+ h[k.to_sym] = v
115
+ end
116
+ }
117
+
118
+ if attributes.key?(:'commitment_id')
119
+ self.commitment_id = attributes[:'commitment_id']
120
+ end
121
+
122
+ if attributes.key?(:'database_engine')
123
+ self.database_engine = attributes[:'database_engine']
124
+ end
125
+
126
+ if attributes.key?(:'expiration_date')
127
+ self.expiration_date = attributes[:'expiration_date']
128
+ end
129
+
130
+ if attributes.key?(:'instance_type')
131
+ self.instance_type = attributes[:'instance_type']
132
+ end
133
+
134
+ if attributes.key?(:'is_multi_az')
135
+ self.is_multi_az = attributes[:'is_multi_az']
136
+ end
137
+
138
+ if attributes.key?(:'number_of_nfus')
139
+ self.number_of_nfus = attributes[:'number_of_nfus']
140
+ end
141
+
142
+ if attributes.key?(:'number_of_reservations')
143
+ self.number_of_reservations = attributes[:'number_of_reservations']
144
+ end
145
+
146
+ if attributes.key?(:'purchase_option')
147
+ self.purchase_option = attributes[:'purchase_option']
148
+ end
149
+
150
+ if attributes.key?(:'region')
151
+ self.region = attributes[:'region']
152
+ end
153
+
154
+ if attributes.key?(:'start_date')
155
+ self.start_date = attributes[:'start_date']
156
+ end
157
+
158
+ if attributes.key?(:'term_length')
159
+ self.term_length = attributes[:'term_length']
160
+ end
161
+
162
+ if attributes.key?(:'utilization')
163
+ self.utilization = attributes[:'utilization']
164
+ end
165
+ end
166
+
167
+ # Check to see if the all the properties in the model are valid
168
+ # @return true if the model is valid
169
+ # @!visibility private
170
+ def valid?
171
+ return false if @commitment_id.nil?
172
+ return false if @database_engine.nil?
173
+ return false if @instance_type.nil?
174
+ return false if @purchase_option.nil?
175
+ return false if @region.nil?
176
+ true
177
+ end
178
+
179
+ # Custom attribute writer method with validation
180
+ # @param commitment_id [Object] Object to be assigned
181
+ # @!visibility private
182
+ def commitment_id=(commitment_id)
183
+ if commitment_id.nil?
184
+ fail ArgumentError, 'invalid value for "commitment_id", commitment_id cannot be nil.'
185
+ end
186
+ @commitment_id = commitment_id
187
+ end
188
+
189
+ # Custom attribute writer method with validation
190
+ # @param database_engine [Object] Object to be assigned
191
+ # @!visibility private
192
+ def database_engine=(database_engine)
193
+ if database_engine.nil?
194
+ fail ArgumentError, 'invalid value for "database_engine", database_engine cannot be nil.'
195
+ end
196
+ @database_engine = database_engine
197
+ end
198
+
199
+ # Custom attribute writer method with validation
200
+ # @param instance_type [Object] Object to be assigned
201
+ # @!visibility private
202
+ def instance_type=(instance_type)
203
+ if instance_type.nil?
204
+ fail ArgumentError, 'invalid value for "instance_type", instance_type cannot be nil.'
205
+ end
206
+ @instance_type = instance_type
207
+ end
208
+
209
+ # Custom attribute writer method with validation
210
+ # @param purchase_option [Object] Object to be assigned
211
+ # @!visibility private
212
+ def purchase_option=(purchase_option)
213
+ if purchase_option.nil?
214
+ fail ArgumentError, 'invalid value for "purchase_option", purchase_option cannot be nil.'
215
+ end
216
+ @purchase_option = purchase_option
217
+ end
218
+
219
+ # Custom attribute writer method with validation
220
+ # @param region [Object] Object to be assigned
221
+ # @!visibility private
222
+ def region=(region)
223
+ if region.nil?
224
+ fail ArgumentError, 'invalid value for "region", region cannot be nil.'
225
+ end
226
+ @region = region
227
+ end
228
+
229
+ # Returns the object in the form of hash, with additionalProperties support.
230
+ # @return [Hash] Returns the object in the form of hash
231
+ # @!visibility private
232
+ def to_hash
233
+ hash = {}
234
+ self.class.attribute_map.each_pair do |attr, param|
235
+ value = self.send(attr)
236
+ if value.nil?
237
+ is_nullable = self.class.openapi_nullable.include?(attr)
238
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
239
+ end
240
+
241
+ hash[param] = _to_hash(value)
242
+ end
243
+ self.additional_properties.each_pair do |attr, value|
244
+ hash[attr] = value
245
+ end
246
+ hash
247
+ end
248
+
249
+ # Checks equality by comparing each attribute.
250
+ # @param o [Object] Object to be compared
251
+ # @!visibility private
252
+ def ==(o)
253
+ return true if self.equal?(o)
254
+ self.class == o.class &&
255
+ commitment_id == o.commitment_id &&
256
+ database_engine == o.database_engine &&
257
+ expiration_date == o.expiration_date &&
258
+ instance_type == o.instance_type &&
259
+ is_multi_az == o.is_multi_az &&
260
+ number_of_nfus == o.number_of_nfus &&
261
+ number_of_reservations == o.number_of_reservations &&
262
+ purchase_option == o.purchase_option &&
263
+ region == o.region &&
264
+ start_date == o.start_date &&
265
+ term_length == o.term_length &&
266
+ utilization == o.utilization &&
267
+ additional_properties == o.additional_properties
268
+ end
269
+
270
+ # Calculates hash code according to all attributes.
271
+ # @return [Integer] Hash code
272
+ # @!visibility private
273
+ def hash
274
+ [commitment_id, database_engine, expiration_date, instance_type, is_multi_az, number_of_nfus, number_of_reservations, purchase_option, region, start_date, term_length, utilization, additional_properties].hash
275
+ end
276
+ end
277
+ end