datadog_api_client 2.55.0 → 2.56.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 (298) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +186 -0
  3. data/.generator/schemas/v2/openapi.yaml +6914 -290
  4. data/CHANGELOG.md +35 -0
  5. data/examples/v1/logs-pipelines/CreateLogsPipeline_104735144.rb +32 -0
  6. data/examples/v1/logs-pipelines/CreateLogsPipeline_1185292896.rb +42 -0
  7. data/examples/v1/logs-pipelines/CreateLogsPipeline_2402034476.rb +29 -0
  8. data/examples/v1/logs-pipelines/CreateLogsPipeline_3996915493.rb +38 -0
  9. data/examples/v1/monitors/CreateMonitor_1539578087.rb +1 -0
  10. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +1 -1
  11. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_4007074677.rb +23 -0
  12. data/examples/v2/cloud-cost-management/DeleteCustomForecast.rb +8 -0
  13. data/examples/v2/cloud-cost-management/UpsertBudget.rb +14 -0
  14. data/examples/v2/cloud-cost-management/UpsertCustomForecast.rb +30 -0
  15. data/examples/v2/code-coverage/GetCodeCoverageBranchSummary.rb +1 -0
  16. data/examples/v2/code-coverage/GetCodeCoverageCommitSummary.rb +1 -0
  17. data/examples/v2/feature-flags/CreateVariantForFeatureFlag.rb +11 -0
  18. data/examples/v2/feature-flags/DeleteVariantFromFeatureFlag.rb +5 -0
  19. data/examples/v2/feature-flags/UpdateVariantForFeatureFlag.rb +10 -0
  20. data/examples/v2/governance-controls/GetGovernanceControl.rb +8 -0
  21. data/examples/v2/governance-controls/ListGovernanceControls.rb +8 -0
  22. data/examples/v2/governance-controls/UpdateGovernanceControl.rb +22 -0
  23. data/examples/v2/governance-insights/ListGovernanceInsights.rb +8 -0
  24. data/examples/v2/metrics/CreateTagIndexingRule.rb +3 -0
  25. data/examples/v2/metrics/CreateTagIndexingRuleExemption.rb +3 -0
  26. data/examples/v2/metrics/DeleteTagIndexingRule.rb +3 -0
  27. data/examples/v2/metrics/DeleteTagIndexingRuleExemption.rb +3 -0
  28. data/examples/v2/metrics/GetTagIndexingRule.rb +3 -0
  29. data/examples/v2/metrics/GetTagIndexingRuleExemption.rb +3 -0
  30. data/examples/v2/metrics/ListTagIndexingRules.rb +3 -0
  31. data/examples/v2/metrics/ListTagIndexingRulesForMetric.rb +3 -0
  32. data/examples/v2/metrics/ReorderTagIndexingRules.rb +3 -0
  33. data/examples/v2/metrics/UpdateTagIndexingRule.rb +3 -0
  34. data/examples/v2/observability-pipelines/ValidatePipeline_1238441879.rb +61 -0
  35. data/examples/v2/observability-pipelines/ValidatePipeline_253109967.rb +83 -0
  36. data/examples/v2/observability-pipelines/ValidatePipeline_337125830.rb +56 -0
  37. data/examples/v2/observability-pipelines/ValidatePipeline_620504950.rb +66 -0
  38. data/examples/v2/report-schedules/CreateReportSchedule.rb +1 -1
  39. data/examples/v2/report-schedules/DeleteReportSchedule.rb +5 -0
  40. data/examples/v2/report-schedules/GetReportSchedule.rb +5 -0
  41. data/examples/v2/report-schedules/GetReportSchedulesForResource.rb +5 -0
  42. data/examples/v2/report-schedules/ListReportSchedules.rb +5 -0
  43. data/examples/v2/report-schedules/PatchReportSchedule.rb +1 -1
  44. data/examples/v2/report-schedules/ToggleReportSchedule.rb +14 -0
  45. data/examples/v2/rum-remote-config/GetRumSdkConfig.rb +8 -0
  46. data/examples/v2/rum-remote-config/UpdateRumSdkConfig.rb +94 -0
  47. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationDueDateRule.rb +33 -0
  48. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationMuteRule.rb +27 -0
  49. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationTicketCreationRule.rb +29 -0
  50. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationDueDateRule.rb +11 -0
  51. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationMuteRule.rb +11 -0
  52. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  53. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationDueDateRule.rb +11 -0
  54. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationMuteRule.rb +11 -0
  55. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  56. data/examples/v2/security-monitoring/ImportSecurityVulnerabilities.rb +77 -0
  57. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationDueDateRules.rb +8 -0
  58. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationMuteRules.rb +8 -0
  59. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationTicketCreationRules.rb +8 -0
  60. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationDueDateRules.rb +20 -0
  61. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationMuteRules.rb +20 -0
  62. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationTicketCreationRules.rb +20 -0
  63. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationDueDateRule.rb +36 -0
  64. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationMuteRule.rb +30 -0
  65. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationTicketCreationRule.rb +32 -0
  66. data/examples/v2/status-pages/EditDegradationUpdate.rb +16 -0
  67. data/examples/v2/status-pages/SoftDeleteDegradationUpdate.rb +5 -0
  68. data/examples/v2/test-optimization/UpdateTestOptimizationServiceSettings.rb +7 -2
  69. data/examples/v2/workflow-automation/CreateWorkflow.rb +1 -1
  70. data/examples/v2/workflow-automation/UpdateWorkflow.rb +1 -1
  71. data/lib/datadog_api_client/configuration.rb +39 -1
  72. data/lib/datadog_api_client/inflector.rb +190 -0
  73. data/lib/datadog_api_client/v1/models/logs_array_map_arithmetic_sub_processor.rb +186 -0
  74. data/lib/datadog_api_client/v1/models/logs_array_map_attribute_remapper.rb +211 -0
  75. data/lib/datadog_api_client/v1/models/logs_array_map_category_sub_processor.rb +178 -0
  76. data/lib/datadog_api_client/v1/models/logs_array_map_processor.rb +228 -0
  77. data/lib/datadog_api_client/v1/models/logs_array_map_processor_type.rb +26 -0
  78. data/lib/datadog_api_client/v1/models/logs_array_map_string_builder_sub_processor.rb +186 -0
  79. data/lib/datadog_api_client/v1/models/logs_array_map_sub_processor.rb +67 -0
  80. data/lib/datadog_api_client/v1/models/logs_processor.rb +2 -1
  81. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +154 -1
  82. data/lib/datadog_api_client/v2/api/compliance_api.rb +5 -0
  83. data/lib/datadog_api_client/v2/api/feature_flags_api.rb +229 -0
  84. data/lib/datadog_api_client/v2/api/governance_controls_api.rb +246 -0
  85. data/lib/datadog_api_client/v2/api/governance_insights_api.rb +101 -0
  86. data/lib/datadog_api_client/v2/api/metrics_api.rb +67 -1
  87. data/lib/datadog_api_client/v2/api/report_schedules_api.rb +362 -0
  88. data/lib/datadog_api_client/v2/api/rum_remote_config_api.rb +176 -0
  89. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +1544 -119
  90. data/lib/datadog_api_client/v2/api/status_pages_api.rb +159 -0
  91. data/lib/datadog_api_client/v2/api/test_optimization_api.rb +3 -1
  92. data/lib/datadog_api_client/v2/models/automation_rule_actor_type.rb +27 -0
  93. data/lib/datadog_api_client/v2/models/automation_rule_created_by.rb +165 -0
  94. data/lib/datadog_api_client/v2/models/automation_rule_modified_by.rb +165 -0
  95. data/lib/datadog_api_client/v2/models/automation_rule_scope.rb +150 -0
  96. data/lib/datadog_api_client/v2/models/branch_coverage_summary_request_attributes.rb +27 -10
  97. data/lib/datadog_api_client/v2/models/budget_attributes.rb +41 -1
  98. data/lib/datadog_api_client/v2/models/budget_attributes_costs.rb +146 -0
  99. data/lib/datadog_api_client/v2/models/budget_attributes_costs_unit.rb +155 -0
  100. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items.rb +11 -1
  101. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items_costs.rb +157 -0
  102. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_finished_job.rb +427 -0
  103. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_in_progress_job.rb +406 -0
  104. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job.rb +36 -399
  105. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job_in_progress_status.rb +26 -0
  106. data/lib/datadog_api_client/v2/models/commit_coverage_summary_request_attributes.rb +27 -10
  107. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request_data_attributes_updates_items.rb +1 -12
  108. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes.rb +1 -12
  109. data/lib/datadog_api_client/v2/models/create_status_page_request_data_attributes.rb +31 -1
  110. data/lib/datadog_api_client/v2/models/custom_forecast_entry.rb +167 -0
  111. data/lib/datadog_api_client/v2/models/custom_forecast_entry_tag_filter.rb +144 -0
  112. data/lib/datadog_api_client/v2/models/custom_forecast_response.rb +123 -0
  113. data/lib/datadog_api_client/v2/models/custom_forecast_response_data.rb +165 -0
  114. data/lib/datadog_api_client/v2/models/custom_forecast_response_data_attributes.rb +230 -0
  115. data/lib/datadog_api_client/v2/models/custom_forecast_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request.rb +123 -0
  117. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data.rb +154 -0
  118. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data_attributes.rb +147 -0
  119. data/lib/datadog_api_client/v2/models/cyclone_dx_bom.rb +221 -0
  120. data/lib/datadog_api_client/v2/models/cyclone_dx_component.rb +196 -0
  121. data/lib/datadog_api_client/v2/models/cyclone_dx_component_type.rb +28 -0
  122. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata.rb +144 -0
  123. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_component.rb +143 -0
  124. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_tools.rb +125 -0
  125. data/lib/datadog_api_client/v2/models/cyclone_dx_tool_component.rb +133 -0
  126. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability.rb +237 -0
  127. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_advisory.rb +105 -0
  128. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_affects.rb +123 -0
  129. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_analysis.rb +107 -0
  130. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_rating.rb +125 -0
  131. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference.rb +115 -0
  132. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference_source.rb +105 -0
  133. data/lib/datadog_api_client/v2/models/degradation_data_attributes_updates_items.rb +21 -1
  134. data/lib/datadog_api_client/v2/models/degradation_update.rb +117 -0
  135. data/lib/datadog_api_client/v2/models/degradation_update_data.rb +153 -0
  136. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes.rb +167 -0
  137. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes_components_affected_items.rb +154 -0
  138. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships.rb +145 -0
  139. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation.rb +123 -0
  140. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation_data.rb +144 -0
  141. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page.rb +123 -0
  142. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page_data.rb +144 -0
  143. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user.rb +123 -0
  144. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user_data.rb +144 -0
  145. data/lib/datadog_api_client/v2/models/degradation_update_included.rb +64 -0
  146. data/lib/datadog_api_client/v2/models/due_date_from.rb +27 -0
  147. data/lib/datadog_api_client/v2/models/due_date_per_severity_item.rb +152 -0
  148. data/lib/datadog_api_client/v2/models/due_date_rule_action.rb +167 -0
  149. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_create.rb +183 -0
  150. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_response.rb +278 -0
  151. data/lib/datadog_api_client/v2/models/due_date_rule_create_request.rb +123 -0
  152. data/lib/datadog_api_client/v2/models/due_date_rule_data_create.rb +144 -0
  153. data/lib/datadog_api_client/v2/models/due_date_rule_data_response.rb +165 -0
  154. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_item.rb +144 -0
  155. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_request.rb +125 -0
  156. data/lib/datadog_api_client/v2/models/due_date_rule_response.rb +123 -0
  157. data/lib/datadog_api_client/v2/models/due_date_rule_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/due_date_rule_update_request.rb +123 -0
  159. data/lib/datadog_api_client/v2/models/due_date_rules_response.rb +167 -0
  160. data/lib/datadog_api_client/v2/models/due_date_severity.rb +32 -0
  161. data/lib/datadog_api_client/v2/models/governance_best_practice_definition.rb +379 -0
  162. data/lib/datadog_api_client/v2/models/governance_control_attributes.rb +739 -0
  163. data/lib/datadog_api_client/v2/models/governance_control_data.rb +165 -0
  164. data/lib/datadog_api_client/v2/models/governance_control_mitigation_definition.rb +309 -0
  165. data/lib/datadog_api_client/v2/models/governance_control_parameter_definition.rb +272 -0
  166. data/lib/datadog_api_client/v2/models/governance_control_resource_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/governance_control_response.rb +123 -0
  168. data/lib/datadog_api_client/v2/models/governance_control_supported_value.rb +144 -0
  169. data/lib/datadog_api_client/v2/models/governance_control_update_attributes.rb +175 -0
  170. data/lib/datadog_api_client/v2/models/governance_control_update_data.rb +143 -0
  171. data/lib/datadog_api_client/v2/models/governance_control_update_request.rb +123 -0
  172. data/lib/datadog_api_client/v2/models/governance_controls_response.rb +125 -0
  173. data/lib/datadog_api_client/v2/models/governance_insight_attributes.rb +448 -0
  174. data/lib/datadog_api_client/v2/models/governance_insight_audit_compute.rb +175 -0
  175. data/lib/datadog_api_client/v2/models/governance_insight_audit_query.rb +188 -0
  176. data/lib/datadog_api_client/v2/models/governance_insight_data.rb +165 -0
  177. data/lib/datadog_api_client/v2/models/governance_insight_event_compute.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/governance_insight_event_query.rb +156 -0
  179. data/lib/datadog_api_client/v2/models/governance_insight_metric_query.rb +165 -0
  180. data/lib/datadog_api_client/v2/models/governance_insight_percentage_query.rb +144 -0
  181. data/lib/datadog_api_client/v2/models/governance_insight_query_config.rb +175 -0
  182. data/lib/datadog_api_client/v2/models/governance_insight_resource_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/governance_insight_usage_query.rb +144 -0
  184. data/lib/datadog_api_client/v2/models/governance_insights_response.rb +125 -0
  185. data/lib/datadog_api_client/v2/models/metric.rb +12 -2
  186. data/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb +2 -2
  187. data/lib/datadog_api_client/v2/models/metric_relationships.rb +105 -0
  188. data/lib/datadog_api_client/v2/models/metric_tag_configuration.rb +11 -1
  189. data/lib/datadog_api_client/v2/models/metric_volumes_relationship.rb +105 -0
  190. data/lib/datadog_api_client/v2/models/metric_volumes_relationship_data.rb +115 -0
  191. data/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb +13 -1
  192. data/lib/datadog_api_client/v2/models/mute_reason.rb +31 -0
  193. data/lib/datadog_api_client/v2/models/mute_rule_action.rb +154 -0
  194. data/lib/datadog_api_client/v2/models/mute_rule_attributes_create.rb +183 -0
  195. data/lib/datadog_api_client/v2/models/mute_rule_attributes_response.rb +278 -0
  196. data/lib/datadog_api_client/v2/models/mute_rule_create_request.rb +123 -0
  197. data/lib/datadog_api_client/v2/models/mute_rule_data_create.rb +144 -0
  198. data/lib/datadog_api_client/v2/models/mute_rule_data_response.rb +165 -0
  199. data/lib/datadog_api_client/v2/models/mute_rule_reorder_item.rb +144 -0
  200. data/lib/datadog_api_client/v2/models/mute_rule_reorder_request.rb +125 -0
  201. data/lib/datadog_api_client/v2/models/mute_rule_response.rb +123 -0
  202. data/lib/datadog_api_client/v2/models/mute_rule_type.rb +26 -0
  203. data/lib/datadog_api_client/v2/models/mute_rule_update_request.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/mute_rules_response.rb +167 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination.rb +318 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth.rb +144 -0
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth_strategy.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch.rb +148 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding.rb +135 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding_codec.rb +26 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression.rb +65 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_algorithm.rb +27 -0
  213. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_object.rb +149 -0
  214. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_format.rb +33 -0
  215. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination.rb +11 -1
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +1 -0
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +1 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source.rb +248 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_auth_strategy.rb +29 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls.rb +63 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled.rb +123 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled_mode.rb +26 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert.rb +174 -0
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert_mode.rb +26 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_type.rb +26 -0
  227. data/lib/datadog_api_client/v2/models/patch_degradation_update_request.rb +105 -0
  228. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data.rb +143 -0
  229. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes.rb +115 -0
  230. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes_status.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_type.rb +26 -0
  232. data/lib/datadog_api_client/v2/models/patch_status_page_request_data_attributes.rb +21 -1
  233. data/lib/datadog_api_client/v2/models/report_schedule_included_resource.rb +2 -1
  234. data/lib/datadog_api_client/v2/models/report_schedule_included_resource_type.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/report_schedule_index_template_variable.rb +150 -0
  236. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship.rb +123 -0
  237. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship_data.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/report_schedule_list_response.rb +157 -0
  239. data/lib/datadog_api_client/v2/models/report_schedule_list_response_attributes.rb +335 -0
  240. data/lib/datadog_api_client/v2/models/report_schedule_list_response_data.rb +186 -0
  241. data/lib/datadog_api_client/v2/models/report_schedule_list_response_links.rb +157 -0
  242. data/lib/datadog_api_client/v2/models/report_schedule_list_response_meta.rb +105 -0
  243. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination.rb +183 -0
  244. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination_type.rb +26 -0
  245. data/lib/datadog_api_client/v2/models/report_schedule_list_response_relationships.rb +133 -0
  246. data/lib/datadog_api_client/v2/models/report_schedule_resource.rb +165 -0
  247. data/lib/datadog_api_client/v2/models/report_schedule_resource_attributes.rb +154 -0
  248. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request.rb +123 -0
  249. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_attributes.rb +123 -0
  250. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_data.rb +144 -0
  251. data/lib/datadog_api_client/v2/models/rum_application_attributes.rb +11 -1
  252. data/lib/datadog_api_client/v2/models/rum_sdk_config_attributes.rb +123 -0
  253. data/lib/datadog_api_client/v2/models/rum_sdk_config_data.rb +175 -0
  254. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option.rb +204 -0
  255. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_pair.rb +144 -0
  256. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_serialized_type.rb +26 -0
  257. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_strategy.rb +29 -0
  258. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option.rb +144 -0
  259. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option_serialized_type.rb +27 -0
  260. data/lib/datadog_api_client/v2/models/rum_sdk_config_meta.rb +144 -0
  261. data/lib/datadog_api_client/v2/models/rum_sdk_config_response.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_attributes.rb +336 -0
  263. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_update_attributes.rb +315 -0
  264. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex.rb +144 -0
  265. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex_type.rb +26 -0
  266. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_config.rb +146 -0
  267. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_propagator_type.rb +29 -0
  268. data/lib/datadog_api_client/v2/models/rum_sdk_config_type.rb +26 -0
  269. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_attributes.rb +123 -0
  270. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_data.rb +165 -0
  271. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_request.rb +123 -0
  272. data/lib/datadog_api_client/v2/models/security_automation_rules_links.rb +164 -0
  273. data/lib/datadog_api_client/v2/models/security_automation_rules_meta.rb +123 -0
  274. data/lib/datadog_api_client/v2/models/security_automation_rules_page_info.rb +123 -0
  275. data/lib/datadog_api_client/v2/models/security_finding_type.rb +36 -0
  276. data/lib/datadog_api_client/v2/models/security_monitoring_terraform_resource_type.rb +2 -0
  277. data/lib/datadog_api_client/v2/models/status_page_as_included_attributes.rb +21 -1
  278. data/lib/datadog_api_client/v2/models/status_page_data_attributes.rb +21 -1
  279. data/lib/datadog_api_client/v2/models/test_optimization_service_settings_attributes.rb +54 -4
  280. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_attributes.rb +60 -9
  281. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_data.rb +1 -0
  282. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action.rb +193 -0
  283. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action_response.rb +203 -0
  284. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_create.rb +183 -0
  285. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_response.rb +278 -0
  286. data/lib/datadog_api_client/v2/models/ticket_creation_rule_create_request.rb +123 -0
  287. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_create.rb +144 -0
  288. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_response.rb +165 -0
  289. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_item.rb +144 -0
  290. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_request.rb +125 -0
  291. data/lib/datadog_api_client/v2/models/ticket_creation_rule_response.rb +123 -0
  292. data/lib/datadog_api_client/v2/models/ticket_creation_rule_type.rb +26 -0
  293. data/lib/datadog_api_client/v2/models/ticket_creation_rule_update_request.rb +123 -0
  294. data/lib/datadog_api_client/v2/models/ticket_creation_rules_response.rb +167 -0
  295. data/lib/datadog_api_client/v2/models/ticket_creation_target.rb +27 -0
  296. data/lib/datadog_api_client/v2/models/update_variant_request.rb +115 -0
  297. data/lib/datadog_api_client/version.rb +1 -1
  298. metadata +237 -1
@@ -27,6 +27,12 @@ module DatadogAPIClient::V2
27
27
  # Timestamp of when the update was created.
28
28
  attr_accessor :created_at
29
29
 
30
+ # The date and time the resource was deleted.
31
+ attr_accessor :deleted_at
32
+
33
+ # UUID of the user who deleted the resource.
34
+ attr_accessor :deleted_by_user_uuid
35
+
30
36
  # Description of the update.
31
37
  attr_accessor :description
32
38
 
@@ -53,6 +59,8 @@ module DatadogAPIClient::V2
53
59
  {
54
60
  :'components_affected' => :'components_affected',
55
61
  :'created_at' => :'created_at',
62
+ :'deleted_at' => :'deleted_at',
63
+ :'deleted_by_user_uuid' => :'deleted_by_user_uuid',
56
64
  :'description' => :'description',
57
65
  :'id' => :'id',
58
66
  :'last_modified_by_user_uuid' => :'last_modified_by_user_uuid',
@@ -68,6 +76,8 @@ module DatadogAPIClient::V2
68
76
  {
69
77
  :'components_affected' => :'Array<DegradationDataAttributesUpdatesItemsComponentsAffectedItems>',
70
78
  :'created_at' => :'Time',
79
+ :'deleted_at' => :'String',
80
+ :'deleted_by_user_uuid' => :'String',
71
81
  :'description' => :'String',
72
82
  :'id' => :'UUID',
73
83
  :'last_modified_by_user_uuid' => :'String',
@@ -105,6 +115,14 @@ module DatadogAPIClient::V2
105
115
  self.created_at = attributes[:'created_at']
106
116
  end
107
117
 
118
+ if attributes.key?(:'deleted_at')
119
+ self.deleted_at = attributes[:'deleted_at']
120
+ end
121
+
122
+ if attributes.key?(:'deleted_by_user_uuid')
123
+ self.deleted_by_user_uuid = attributes[:'deleted_by_user_uuid']
124
+ end
125
+
108
126
  if attributes.key?(:'description')
109
127
  self.description = attributes[:'description']
110
128
  end
@@ -158,6 +176,8 @@ module DatadogAPIClient::V2
158
176
  self.class == o.class &&
159
177
  components_affected == o.components_affected &&
160
178
  created_at == o.created_at &&
179
+ deleted_at == o.deleted_at &&
180
+ deleted_by_user_uuid == o.deleted_by_user_uuid &&
161
181
  description == o.description &&
162
182
  id == o.id &&
163
183
  last_modified_by_user_uuid == o.last_modified_by_user_uuid &&
@@ -171,7 +191,7 @@ module DatadogAPIClient::V2
171
191
  # @return [Integer] Hash code
172
192
  # @!visibility private
173
193
  def hash
174
- [components_affected, created_at, description, id, last_modified_by_user_uuid, modified_at, started_at, status, additional_properties].hash
194
+ [components_affected, created_at, deleted_at, deleted_by_user_uuid, description, id, last_modified_by_user_uuid, modified_at, started_at, status, additional_properties].hash
175
195
  end
176
196
  end
177
197
  end
@@ -0,0 +1,117 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Response object for a degradation update.
21
+ class DegradationUpdate
22
+ include BaseGenericModel
23
+
24
+ # The data object for a degradation update.
25
+ attr_accessor :data
26
+
27
+ # Resources related to the degradation update.
28
+ attr_accessor :included
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'data' => :'data',
37
+ :'included' => :'included'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'data' => :'DegradationUpdateData',
46
+ :'included' => :'Array<DegradationUpdateIncluded>'
47
+ }
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param attributes [Hash] Model attributes in the form of hash
52
+ # @!visibility private
53
+ def initialize(attributes = {})
54
+ if (!attributes.is_a?(Hash))
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::DegradationUpdate` initialize method"
56
+ end
57
+
58
+ self.additional_properties = {}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ self.additional_properties[k.to_sym] = v
63
+ else
64
+ h[k.to_sym] = v
65
+ end
66
+ }
67
+
68
+ if attributes.key?(:'data')
69
+ self.data = attributes[:'data']
70
+ end
71
+
72
+ if attributes.key?(:'included')
73
+ if (value = attributes[:'included']).is_a?(Array)
74
+ self.included = value
75
+ end
76
+ end
77
+ end
78
+
79
+ # Returns the object in the form of hash, with additionalProperties support.
80
+ # @return [Hash] Returns the object in the form of hash
81
+ # @!visibility private
82
+ def to_hash
83
+ hash = {}
84
+ self.class.attribute_map.each_pair do |attr, param|
85
+ value = self.send(attr)
86
+ if value.nil?
87
+ is_nullable = self.class.openapi_nullable.include?(attr)
88
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
89
+ end
90
+
91
+ hash[param] = _to_hash(value)
92
+ end
93
+ self.additional_properties.each_pair do |attr, value|
94
+ hash[attr] = value
95
+ end
96
+ hash
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param o [Object] Object to be compared
101
+ # @!visibility private
102
+ def ==(o)
103
+ return true if self.equal?(o)
104
+ self.class == o.class &&
105
+ data == o.data &&
106
+ included == o.included &&
107
+ additional_properties == o.additional_properties
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Integer] Hash code
112
+ # @!visibility private
113
+ def hash
114
+ [data, included, additional_properties].hash
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,153 @@
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 data object for a degradation update.
21
+ class DegradationUpdateData
22
+ include BaseGenericModel
23
+
24
+ # Attributes of a degradation update resource.
25
+ attr_accessor :attributes
26
+
27
+ # The ID of the degradation update.
28
+ attr_accessor :id
29
+
30
+ # Relationships of a degradation update resource.
31
+ attr_accessor :relationships
32
+
33
+ # Degradation updates resource type.
34
+ attr_reader :type
35
+
36
+ attr_accessor :additional_properties
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ # @!visibility private
40
+ def self.attribute_map
41
+ {
42
+ :'attributes' => :'attributes',
43
+ :'id' => :'id',
44
+ :'relationships' => :'relationships',
45
+ :'type' => :'type'
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'attributes' => :'DegradationUpdateDataAttributes',
54
+ :'id' => :'String',
55
+ :'relationships' => :'DegradationUpdateDataRelationships',
56
+ :'type' => :'PatchDegradationUpdateRequestDataType'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param attributes [Hash] Model attributes in the form of hash
62
+ # @!visibility private
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::DegradationUpdateData` initialize method"
66
+ end
67
+
68
+ self.additional_properties = {}
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ self.additional_properties[k.to_sym] = v
73
+ else
74
+ h[k.to_sym] = v
75
+ end
76
+ }
77
+
78
+ if attributes.key?(:'attributes')
79
+ self.attributes = attributes[:'attributes']
80
+ end
81
+
82
+ if attributes.key?(:'id')
83
+ self.id = attributes[:'id']
84
+ end
85
+
86
+ if attributes.key?(:'relationships')
87
+ self.relationships = attributes[:'relationships']
88
+ end
89
+
90
+ if attributes.key?(:'type')
91
+ self.type = attributes[:'type']
92
+ end
93
+ end
94
+
95
+ # Check to see if the all the properties in the model are valid
96
+ # @return true if the model is valid
97
+ # @!visibility private
98
+ def valid?
99
+ return false if @type.nil?
100
+ true
101
+ end
102
+
103
+ # Custom attribute writer method with validation
104
+ # @param type [Object] Object to be assigned
105
+ # @!visibility private
106
+ def type=(type)
107
+ if type.nil?
108
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
109
+ end
110
+ @type = type
111
+ end
112
+
113
+ # Returns the object in the form of hash, with additionalProperties support.
114
+ # @return [Hash] Returns the object in the form of hash
115
+ # @!visibility private
116
+ def to_hash
117
+ hash = {}
118
+ self.class.attribute_map.each_pair do |attr, param|
119
+ value = self.send(attr)
120
+ if value.nil?
121
+ is_nullable = self.class.openapi_nullable.include?(attr)
122
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
123
+ end
124
+
125
+ hash[param] = _to_hash(value)
126
+ end
127
+ self.additional_properties.each_pair do |attr, value|
128
+ hash[attr] = value
129
+ end
130
+ hash
131
+ end
132
+
133
+ # Checks equality by comparing each attribute.
134
+ # @param o [Object] Object to be compared
135
+ # @!visibility private
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ attributes == o.attributes &&
140
+ id == o.id &&
141
+ relationships == o.relationships &&
142
+ type == o.type &&
143
+ additional_properties == o.additional_properties
144
+ end
145
+
146
+ # Calculates hash code according to all attributes.
147
+ # @return [Integer] Hash code
148
+ # @!visibility private
149
+ def hash
150
+ [attributes, id, relationships, type, additional_properties].hash
151
+ end
152
+ end
153
+ end
@@ -0,0 +1,167 @@
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 of a degradation update resource.
21
+ class DegradationUpdateDataAttributes
22
+ include BaseGenericModel
23
+
24
+ # Components affected by this update.
25
+ attr_accessor :components_affected
26
+
27
+ # The date and time the update was created.
28
+ attr_accessor :created_at
29
+
30
+ # The date and time the update was soft-deleted.
31
+ attr_accessor :deleted_at
32
+
33
+ # The message body of the update.
34
+ attr_accessor :description
35
+
36
+ # The date and time the update was last modified.
37
+ attr_accessor :modified_at
38
+
39
+ # The date and time the update started.
40
+ attr_accessor :started_at
41
+
42
+ # The status of the degradation.
43
+ attr_accessor :status
44
+
45
+ attr_accessor :additional_properties
46
+
47
+ # Attribute mapping from ruby-style variable name to JSON key.
48
+ # @!visibility private
49
+ def self.attribute_map
50
+ {
51
+ :'components_affected' => :'components_affected',
52
+ :'created_at' => :'created_at',
53
+ :'deleted_at' => :'deleted_at',
54
+ :'description' => :'description',
55
+ :'modified_at' => :'modified_at',
56
+ :'started_at' => :'started_at',
57
+ :'status' => :'status'
58
+ }
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ # @!visibility private
63
+ def self.openapi_types
64
+ {
65
+ :'components_affected' => :'Array<DegradationUpdateDataAttributesComponentsAffectedItems>',
66
+ :'created_at' => :'Time',
67
+ :'deleted_at' => :'Time',
68
+ :'description' => :'String',
69
+ :'modified_at' => :'Time',
70
+ :'started_at' => :'Time',
71
+ :'status' => :'CreateDegradationRequestDataAttributesStatus'
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::DegradationUpdateDataAttributes` initialize method"
81
+ end
82
+
83
+ self.additional_properties = {}
84
+ # check to see if the attribute exists and convert string to symbol for hash key
85
+ attributes = attributes.each_with_object({}) { |(k, v), h|
86
+ if (!self.class.attribute_map.key?(k.to_sym))
87
+ self.additional_properties[k.to_sym] = v
88
+ else
89
+ h[k.to_sym] = v
90
+ end
91
+ }
92
+
93
+ if attributes.key?(:'components_affected')
94
+ if (value = attributes[:'components_affected']).is_a?(Array)
95
+ self.components_affected = value
96
+ end
97
+ end
98
+
99
+ if attributes.key?(:'created_at')
100
+ self.created_at = attributes[:'created_at']
101
+ end
102
+
103
+ if attributes.key?(:'deleted_at')
104
+ self.deleted_at = attributes[:'deleted_at']
105
+ end
106
+
107
+ if attributes.key?(:'description')
108
+ self.description = attributes[:'description']
109
+ end
110
+
111
+ if attributes.key?(:'modified_at')
112
+ self.modified_at = attributes[:'modified_at']
113
+ end
114
+
115
+ if attributes.key?(:'started_at')
116
+ self.started_at = attributes[:'started_at']
117
+ end
118
+
119
+ if attributes.key?(:'status')
120
+ self.status = attributes[:'status']
121
+ end
122
+ end
123
+
124
+ # Returns the object in the form of hash, with additionalProperties support.
125
+ # @return [Hash] Returns the object in the form of hash
126
+ # @!visibility private
127
+ def to_hash
128
+ hash = {}
129
+ self.class.attribute_map.each_pair do |attr, param|
130
+ value = self.send(attr)
131
+ if value.nil?
132
+ is_nullable = self.class.openapi_nullable.include?(attr)
133
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
134
+ end
135
+
136
+ hash[param] = _to_hash(value)
137
+ end
138
+ self.additional_properties.each_pair do |attr, value|
139
+ hash[attr] = value
140
+ end
141
+ hash
142
+ end
143
+
144
+ # Checks equality by comparing each attribute.
145
+ # @param o [Object] Object to be compared
146
+ # @!visibility private
147
+ def ==(o)
148
+ return true if self.equal?(o)
149
+ self.class == o.class &&
150
+ components_affected == o.components_affected &&
151
+ created_at == o.created_at &&
152
+ deleted_at == o.deleted_at &&
153
+ description == o.description &&
154
+ modified_at == o.modified_at &&
155
+ started_at == o.started_at &&
156
+ status == o.status &&
157
+ additional_properties == o.additional_properties
158
+ end
159
+
160
+ # Calculates hash code according to all attributes.
161
+ # @return [Integer] Hash code
162
+ # @!visibility private
163
+ def hash
164
+ [components_affected, created_at, deleted_at, description, modified_at, started_at, status, additional_properties].hash
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,154 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # A component affected by a degradation update.
21
+ class DegradationUpdateDataAttributesComponentsAffectedItems
22
+ include BaseGenericModel
23
+
24
+ # The ID of the affected component.
25
+ attr_reader :id
26
+
27
+ # The name of the affected component.
28
+ attr_accessor :name
29
+
30
+ # The status of the component.
31
+ attr_reader :status
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'id' => :'id',
40
+ :'name' => :'name',
41
+ :'status' => :'status'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'id' => :'String',
50
+ :'name' => :'String',
51
+ :'status' => :'StatusPagesComponentDataAttributesStatus'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::DegradationUpdateDataAttributesComponentsAffectedItems` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'id')
74
+ self.id = attributes[:'id']
75
+ end
76
+
77
+ if attributes.key?(:'name')
78
+ self.name = attributes[:'name']
79
+ end
80
+
81
+ if attributes.key?(:'status')
82
+ self.status = attributes[:'status']
83
+ end
84
+ end
85
+
86
+ # Check to see if the all the properties in the model are valid
87
+ # @return true if the model is valid
88
+ # @!visibility private
89
+ def valid?
90
+ return false if @id.nil?
91
+ return false if @status.nil?
92
+ true
93
+ end
94
+
95
+ # Custom attribute writer method with validation
96
+ # @param id [Object] Object to be assigned
97
+ # @!visibility private
98
+ def id=(id)
99
+ if id.nil?
100
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
101
+ end
102
+ @id = id
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param status [Object] Object to be assigned
107
+ # @!visibility private
108
+ def status=(status)
109
+ if status.nil?
110
+ fail ArgumentError, 'invalid value for "status", status cannot be nil.'
111
+ end
112
+ @status = status
113
+ end
114
+
115
+ # Returns the object in the form of hash, with additionalProperties support.
116
+ # @return [Hash] Returns the object in the form of hash
117
+ # @!visibility private
118
+ def to_hash
119
+ hash = {}
120
+ self.class.attribute_map.each_pair do |attr, param|
121
+ value = self.send(attr)
122
+ if value.nil?
123
+ is_nullable = self.class.openapi_nullable.include?(attr)
124
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
125
+ end
126
+
127
+ hash[param] = _to_hash(value)
128
+ end
129
+ self.additional_properties.each_pair do |attr, value|
130
+ hash[attr] = value
131
+ end
132
+ hash
133
+ end
134
+
135
+ # Checks equality by comparing each attribute.
136
+ # @param o [Object] Object to be compared
137
+ # @!visibility private
138
+ def ==(o)
139
+ return true if self.equal?(o)
140
+ self.class == o.class &&
141
+ id == o.id &&
142
+ name == o.name &&
143
+ status == o.status &&
144
+ additional_properties == o.additional_properties
145
+ end
146
+
147
+ # Calculates hash code according to all attributes.
148
+ # @return [Integer] Hash code
149
+ # @!visibility private
150
+ def hash
151
+ [id, name, status, additional_properties].hash
152
+ end
153
+ end
154
+ end