datadog_api_client 2.32.0 → 2.34.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 (490) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +2 -1
  4. data/.generator/schemas/v1/openapi.yaml +23 -7
  5. data/.generator/schemas/v2/openapi.yaml +7442 -1005
  6. data/.generator/src/generator/templates/configuration.j2 +2 -2
  7. data/.github/workflows/publish.yml +22 -17
  8. data/.github/workflows/release.yml +57 -61
  9. data/.github/workflows/test.yml +1 -1
  10. data/CHANGELOG.md +36 -0
  11. data/Gemfile +2 -2
  12. data/LICENSE-3rdparty.csv +0 -1
  13. data/Rakefile +3 -0
  14. data/datadog_api_client.gemspec +0 -2
  15. data/examples/v2/cloud-cost-management/DeleteBudget.rb +5 -0
  16. data/examples/v2/cloud-cost-management/GetBudget.rb +5 -0
  17. data/examples/v2/cloud-cost-management/ListBudgets.rb +5 -0
  18. data/examples/v2/cloud-cost-management/UpsertBudget.rb +35 -0
  19. data/examples/v2/csm-threats/CreateCSMThreatsAgentPolicy.rb +21 -0
  20. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule.rb +7 -4
  21. data/examples/v2/csm-threats/CreateCloudWorkloadSecurityAgentRule.rb +3 -2
  22. data/examples/v2/csm-threats/DeleteCSMThreatsAgentPolicy.rb +8 -0
  23. data/examples/v2/csm-threats/DeleteCSMThreatsAgentRule.rb +8 -2
  24. data/examples/v2/csm-threats/DeleteCloudWorkloadSecurityAgentRule.rb +1 -1
  25. data/examples/v2/csm-threats/DownloadCSMThreatsPolicy.rb +1 -1
  26. data/examples/v2/csm-threats/DownloadCloudWorkloadPolicyFile.rb +1 -1
  27. data/examples/v2/csm-threats/GetCSMThreatsAgentPolicy.rb +8 -0
  28. data/examples/v2/csm-threats/GetCSMThreatsAgentRule.rb +8 -2
  29. data/examples/v2/csm-threats/GetCloudWorkloadSecurityAgentRule.rb +1 -1
  30. data/examples/v2/csm-threats/ListCSMThreatsAgentPolicies.rb +5 -0
  31. data/examples/v2/csm-threats/ListCSMThreatsAgentRules.rb +1 -1
  32. data/examples/v2/csm-threats/ListCloudWorkloadSecurityAgentRules.rb +1 -1
  33. data/examples/v2/csm-threats/UpdateCSMThreatsAgentPolicy.rb +25 -0
  34. data/examples/v2/csm-threats/UpdateCSMThreatsAgentRule.rb +12 -4
  35. data/examples/v2/csm-threats/UpdateCloudWorkloadSecurityAgentRule.rb +3 -4
  36. data/examples/v2/dora-metrics/GetDORADeployment.rb +5 -0
  37. data/examples/v2/dora-metrics/GetDORAFailure.rb +5 -0
  38. data/examples/v2/dora-metrics/ListDORADeployments.rb +16 -0
  39. data/examples/v2/dora-metrics/ListDORAFailures.rb +16 -0
  40. data/examples/v2/monitors/CreateMonitorNotificationRule.rb +26 -0
  41. data/examples/v2/monitors/DeleteMonitorNotificationRule.rb +11 -0
  42. data/examples/v2/monitors/GetMonitorNotificationRule.rb +11 -0
  43. data/examples/v2/monitors/GetMonitorNotificationRules.rb +8 -0
  44. data/examples/v2/monitors/UpdateMonitorNotificationRule.rb +30 -0
  45. data/examples/v2/network-device-monitoring/GetInterfaces.rb +4 -1
  46. data/examples/v2/network-device-monitoring/ListDevices_2712868412.rb +5 -0
  47. data/examples/v2/observability-pipelines/CreatePipeline.rb +2 -2
  48. data/examples/v2/observability-pipelines/ListPipelines.rb +8 -0
  49. data/examples/v2/observability-pipelines/ValidatePipeline.rb +44 -0
  50. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +68 -0
  51. data/examples/v2/on-call/CreateOnCallSchedule.rb +14 -18
  52. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +8 -0
  53. data/examples/v2/on-call/DeleteOnCallSchedule.rb +2 -2
  54. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +11 -0
  55. data/examples/v2/on-call/GetOnCallSchedule.rb +2 -2
  56. data/examples/v2/on-call/GetOnCallTeamRoutingRules.rb +5 -0
  57. data/examples/v2/on-call/GetScheduleOnCallUser.rb +8 -0
  58. data/examples/v2/on-call/SetOnCallTeamRoutingRules.rb +57 -0
  59. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +50 -0
  60. data/examples/v2/on-call/UpdateOnCallSchedule.rb +14 -19
  61. data/examples/v2/on-call-paging/AcknowledgeOnCallPage.rb +5 -0
  62. data/examples/v2/on-call-paging/CreateOnCallPage.rb +23 -0
  63. data/examples/v2/on-call-paging/EscalateOnCallPage.rb +5 -0
  64. data/examples/v2/on-call-paging/ResolveOnCallPage.rb +5 -0
  65. data/examples/v2/rum-metrics/CreateRumMetric.rb +1 -1
  66. data/examples/v2/security-monitoring/CreateCustomFramework.rb +30 -0
  67. data/examples/v2/security-monitoring/DeleteCustomFramework.rb +5 -0
  68. data/examples/v2/security-monitoring/GetCustomFramework.rb +5 -0
  69. data/examples/v2/security-monitoring/GetResourceEvaluationFilters.rb +9 -0
  70. data/examples/v2/security-monitoring/UpdateCustomFramework.rb +30 -0
  71. data/examples/v2/security-monitoring/UpdateResourceEvaluationFilters.rb +21 -0
  72. data/examples/v2/software-catalog/ListCatalogRelation.rb +5 -0
  73. data/examples/v2/software-catalog/ListCatalogRelation_1311054087.rb +8 -0
  74. data/examples/v2/workflow-automation/CreateWorkflow.rb +0 -1
  75. data/examples/v2/workflow-automation/UpdateWorkflow.rb +0 -1
  76. data/lib/datadog_api_client/configuration.rb +223 -28
  77. data/lib/datadog_api_client/inflector.rb +330 -30
  78. data/lib/datadog_api_client/v1/models/synthetics_assertion_body_hash_target.rb +2 -2
  79. data/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +2 -2
  80. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +2 -2
  81. data/lib/datadog_api_client/v1/models/synthetics_assertion_target_value.rb +63 -0
  82. data/lib/datadog_api_client/v1/models/synthetics_assertion_x_path_target_target.rb +2 -2
  83. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +257 -0
  84. data/lib/datadog_api_client/v2/api/csm_threats_api.rb +424 -52
  85. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +265 -1
  86. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -5
  87. data/lib/datadog_api_client/v2/api/monitors_api.rb +363 -0
  88. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +27 -3
  89. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +146 -1
  90. data/lib/datadog_api_client/v2/api/on_call_api.rb +497 -12
  91. data/lib/datadog_api_client/v2/api/on_call_paging_api.rb +292 -0
  92. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  93. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +418 -1
  94. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +101 -0
  95. data/lib/datadog_api_client/v2/models/azure_storage_destination.rb +198 -0
  96. data/lib/datadog_api_client/v2/models/azure_storage_destination_type.rb +26 -0
  97. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items.rb → budget.rb} +17 -8
  98. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams.rb → budget_array.rb} +5 -5
  99. data/lib/datadog_api_client/v2/models/budget_attributes.rb +207 -0
  100. data/lib/datadog_api_client/v2/models/budget_entry.rb +127 -0
  101. data/lib/datadog_api_client/v2/models/budget_with_entries.rb +105 -0
  102. data/lib/datadog_api_client/v2/models/budget_with_entries_data.rb +125 -0
  103. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams.rb → cloud_workload_security_agent_policies_list_response.rb} +5 -5
  104. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +300 -0
  105. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_attributes.rb +167 -0
  106. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_interval.rb → cloud_workload_security_agent_policy_create_data.rb} +30 -30
  107. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_request.rb +123 -0
  108. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_data.rb +125 -0
  109. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_response.rb +105 -0
  110. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_type.rb +26 -0
  111. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_restrictions_items.rb → cloud_workload_security_agent_policy_update_attributes.rb} +46 -33
  112. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_data.rb +154 -0
  113. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_request.rb +123 -0
  114. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_updater_attributes.rb +123 -0
  115. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +1 -1
  116. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +31 -19
  117. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_attributes.rb +27 -5
  118. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_data.rb +2 -2
  119. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_request.rb +2 -2
  120. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_creator_attributes.rb +3 -3
  121. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_data.rb +4 -4
  122. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +1 -1
  123. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_response.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_type.rb +1 -1
  125. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_attributes.rb +29 -7
  126. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +4 -4
  127. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_request.rb +2 -2
  128. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_updater_attributes.rb +3 -3
  129. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rules_list_response.rb +2 -2
  130. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request.rb → create_custom_framework_request.rb} +5 -5
  131. data/lib/datadog_api_client/v2/models/create_custom_framework_response.rb +123 -0
  132. data/lib/datadog_api_client/v2/models/create_page_request.rb +105 -0
  133. data/lib/datadog_api_client/v2/models/create_page_request_data.rb +133 -0
  134. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes.rb +187 -0
  135. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes_target.rb +115 -0
  136. data/lib/datadog_api_client/v2/models/create_page_request_data_type.rb +26 -0
  137. data/lib/datadog_api_client/v2/models/create_page_response.rb +105 -0
  138. data/lib/datadog_api_client/v2/models/create_page_response_data.rb +133 -0
  139. data/lib/datadog_api_client/v2/models/create_page_response_data_type.rb +26 -0
  140. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_interval.rb → custom_framework_control.rb} +32 -30
  141. data/lib/datadog_api_client/v2/models/custom_framework_data.rb +144 -0
  142. data/lib/datadog_api_client/v2/models/custom_framework_data_attributes.rb +208 -0
  143. data/lib/datadog_api_client/v2/models/custom_framework_data_handle_and_version.rb +115 -0
  144. data/lib/datadog_api_client/v2/models/custom_framework_metadata.rb +125 -0
  145. data/lib/datadog_api_client/v2/models/custom_framework_requirement.rb +146 -0
  146. data/lib/datadog_api_client/v2/models/custom_framework_type.rb +26 -0
  147. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +185 -0
  148. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams.rb → data_relationships_teams.rb} +3 -3
  149. data/lib/datadog_api_client/v2/models/data_relationships_teams_data_items.rb +144 -0
  150. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items_type.rb → data_relationships_teams_data_items_type.rb} +1 -1
  151. data/lib/datadog_api_client/v2/models/delete_custom_framework_response.rb +123 -0
  152. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items.rb → dora_event.rb} +17 -7
  153. data/lib/datadog_api_client/v2/models/dora_fetch_response.rb +105 -0
  154. data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +1 -1
  155. data/lib/datadog_api_client/v2/models/dora_list_deployments_request.rb +123 -0
  156. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_attributes.rb +163 -0
  157. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data.rb +133 -0
  158. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data_type.rb +26 -0
  159. data/lib/datadog_api_client/v2/models/dora_list_failures_request.rb +123 -0
  160. data/lib/datadog_api_client/v2/models/dora_list_failures_request_attributes.rb +163 -0
  161. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data.rb +133 -0
  162. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data_type.rb +26 -0
  163. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users.rb → dora_list_response.rb} +5 -5
  164. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +1 -21
  165. data/lib/datadog_api_client/v2/models/escalation_policy.rb +117 -0
  166. data/lib/datadog_api_client/v2/models/escalation_policy_create_request.rb +123 -0
  167. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data.rb +154 -0
  168. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +166 -0
  169. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +145 -0
  170. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +105 -0
  171. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_type.rb +26 -0
  172. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +153 -0
  173. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +143 -0
  174. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +133 -0
  175. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps.rb +107 -0
  176. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items.rb +144 -0
  177. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items_type.rb +26 -0
  178. data/lib/datadog_api_client/v2/models/escalation_policy_data_type.rb +26 -0
  179. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +65 -0
  180. data/lib/datadog_api_client/v2/models/escalation_policy_step.rb +153 -0
  181. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes.rb +115 -0
  182. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes_assignment.rb +27 -0
  183. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +105 -0
  184. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items.rb → escalation_policy_step_target.rb} +6 -6
  185. data/lib/datadog_api_client/v2/models/escalation_policy_step_target_type.rb +28 -0
  186. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items_type.rb → escalation_policy_step_type.rb} +3 -3
  187. data/lib/datadog_api_client/v2/models/escalation_policy_update_request.rb +123 -0
  188. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data.rb +175 -0
  189. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +166 -0
  190. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +155 -0
  191. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +105 -0
  192. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_type.rb +26 -0
  193. data/lib/datadog_api_client/v2/models/escalation_policy_user.rb +143 -0
  194. data/lib/datadog_api_client/v2/models/escalation_policy_user_attributes.rb +125 -0
  195. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items_type.rb → escalation_policy_user_type.rb} +1 -1
  196. data/lib/datadog_api_client/v2/models/escalation_target.rb +64 -0
  197. data/lib/datadog_api_client/v2/models/escalation_targets.rb +107 -0
  198. data/lib/datadog_api_client/v2/models/framework_handle_and_version_response_data.rb +165 -0
  199. data/lib/datadog_api_client/v2/models/full_custom_framework_data.rb +165 -0
  200. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +198 -0
  201. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +11 -1
  202. data/lib/datadog_api_client/v2/models/get_custom_framework_response.rb +123 -0
  203. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response_data.rb +125 -0
  205. data/lib/datadog_api_client/v2/models/historical_job_options.rb +2 -2
  206. data/lib/datadog_api_client/v2/models/historical_job_query.rb +1 -1
  207. data/lib/datadog_api_client/v2/models/http_integration.rb +0 -6
  208. data/lib/datadog_api_client/v2/models/http_integration_update.rb +1 -14
  209. data/lib/datadog_api_client/v2/models/incident_severity.rb +1 -0
  210. data/lib/datadog_api_client/v2/models/layer.rb +19 -1
  211. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  212. data/lib/datadog_api_client/v2/models/layer_relationships_members_data_items.rb +31 -2
  213. data/lib/datadog_api_client/v2/models/list_pipelines_response.rb +135 -0
  214. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items_user.rb → list_pipelines_response_meta.rb} +11 -11
  215. data/lib/datadog_api_client/v2/models/list_relation_catalog_response.rb +139 -0
  216. data/lib/datadog_api_client/v2/models/list_relation_catalog_response_links.rb +125 -0
  217. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -16
  218. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -16
  219. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -16
  220. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination.rb +251 -0
  221. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination_type.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/monitor_notification_rule_attributes.rb +147 -0
  223. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request.rb +123 -0
  224. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request_data.rb +133 -0
  225. data/lib/datadog_api_client/v2/models/monitor_notification_rule_data.rb +135 -0
  226. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter.rb +62 -0
  227. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter_tags.rb +108 -0
  228. data/lib/datadog_api_client/v2/models/monitor_notification_rule_list_response.rb +119 -0
  229. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships.rb +105 -0
  230. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships_created_by.rb +113 -0
  231. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items.rb → monitor_notification_rule_relationships_created_by_data.rb} +5 -5
  232. data/lib/datadog_api_client/v2/models/monitor_notification_rule_resource_type.rb +26 -0
  233. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response.rb +117 -0
  234. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_attributes.rb +184 -0
  235. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_included_item.rb +62 -0
  236. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request.rb +123 -0
  237. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request_data.rb +154 -0
  238. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +211 -0
  239. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_type.rb +26 -0
  240. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_variable.rb +144 -0
  241. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source.rb +166 -0
  242. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source_type.rb +26 -0
  243. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination.rb +200 -0
  244. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth.rb +164 -0
  245. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth_strategy.rb +27 -0
  246. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_type.rb +26 -0
  247. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination.rb +262 -0
  248. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb → observability_pipeline_amazon_s3_destination_storage_class.rb} +11 -9
  249. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination_type.rb +26 -0
  250. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source.rb +188 -0
  251. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source_type.rb +26 -0
  252. data/lib/datadog_api_client/v2/models/observability_pipeline_aws_auth.rb +126 -0
  253. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +1 -12
  254. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +15 -1
  255. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +11 -1
  256. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +14 -1
  257. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +1 -1
  258. data/lib/datadog_api_client/v2/models/observability_pipeline_decoding.rb +29 -0
  259. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +232 -0
  260. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_mode.rb +27 -0
  261. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_type.rb +26 -0
  262. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination.rb +187 -0
  263. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_api_version.rb +29 -0
  264. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_type.rb +26 -0
  265. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file.rb +190 -0
  266. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding.rb +165 -0
  267. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding_type.rb +26 -0
  268. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items.rb +165 -0
  269. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items_comparison.rb +26 -0
  270. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items.rb +144 -0
  271. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items_type.rb +31 -0
  272. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_geo_ip.rb +165 -0
  273. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +229 -0
  274. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor_type.rb +26 -0
  275. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source.rb +154 -0
  276. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source_type.rb +26 -0
  277. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source.rb +154 -0
  278. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source_type.rb +26 -0
  279. data/lib/datadog_api_client/v2/models/observability_pipeline_gcp_auth.rb +123 -0
  280. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +212 -0
  281. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor_type.rb +26 -0
  282. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric.rb +199 -0
  283. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field.rb +144 -0
  284. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field_strategy.rb +26 -0
  285. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one.rb +123 -0
  286. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one_strategy.rb +26 -0
  287. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_metric_type.rb +28 -0
  288. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +230 -0
  289. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_encoding.rb +27 -0
  290. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_type.rb +26 -0
  291. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +275 -0
  292. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb → observability_pipeline_google_cloud_storage_destination_acl.rb} +8 -9
  293. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_storage_class.rb +29 -0
  294. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_type.rb +26 -0
  295. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +239 -0
  296. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source_type.rb +26 -0
  297. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source.rb +205 -0
  298. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_auth_strategy.rb +27 -0
  299. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_type.rb +26 -0
  300. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source.rb +196 -0
  301. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_auth_strategy.rb +27 -0
  302. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_type.rb +26 -0
  303. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +1 -1
  304. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source.rb +154 -0
  305. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source_type.rb +26 -0
  306. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +144 -0
  307. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_value.rb +63 -0
  308. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination.rb +188 -0
  309. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_region.rb +27 -0
  310. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_type.rb +26 -0
  311. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +211 -0
  312. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping.rb +144 -0
  313. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping_mapping.rb +62 -0
  314. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_type.rb +26 -0
  315. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapping_library.rb +36 -0
  316. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination.rb +177 -0
  317. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination_type.rb +26 -0
  318. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +221 -0
  319. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule.rb +173 -0
  320. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_match_rule.rb +145 -0
  321. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_support_rule.rb +144 -0
  322. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_type.rb +26 -0
  323. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +16 -2
  324. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_start_day.rb → observability_pipeline_quota_processor_overflow_action.rb} +8 -9
  325. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +234 -0
  326. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy.rb +144 -0
  327. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy_strategy.rb +37 -0
  328. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_type.rb +26 -0
  329. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination.rb +198 -0
  330. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination_type.rb +26 -0
  331. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source.rb +175 -0
  332. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source_type.rb +26 -0
  333. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +219 -0
  334. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor_type.rb +26 -0
  335. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +211 -0
  336. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action.rb +64 -0
  337. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash.rb +133 -0
  338. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash_action.rb +26 -0
  339. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact.rb +144 -0
  340. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_action.rb +26 -0
  341. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options.rb +144 -0
  342. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options_direction.rb +27 -0
  343. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact.rb +144 -0
  344. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_action.rb +26 -0
  345. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_options.rb +123 -0
  346. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern.rb +144 -0
  347. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_options.rb +123 -0
  348. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_type.rb +26 -0
  349. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_keyword_options.rb +146 -0
  350. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern.rb +144 -0
  351. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_options.rb +133 -0
  352. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_type.rb +26 -0
  353. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_pattern.rb +63 -0
  354. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_rule.rb +219 -0
  355. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope.rb +64 -0
  356. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all.rb +123 -0
  357. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all_target.rb +26 -0
  358. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude.rb +144 -0
  359. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude_target.rb +26 -0
  360. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include.rb +144 -0
  361. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include_target.rb +26 -0
  362. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_options.rb +125 -0
  363. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_type.rb +26 -0
  364. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination.rb +188 -0
  365. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_region.rb +29 -0
  366. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_type.rb +26 -0
  367. data/lib/datadog_api_client/v2/models/observability_pipeline_spec.rb +123 -0
  368. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request_data.rb → observability_pipeline_spec_data.rb} +3 -3
  369. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination.rb +209 -0
  370. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_encoding.rb +27 -0
  371. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_type.rb +26 -0
  372. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source.rb +154 -0
  373. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source_type.rb +26 -0
  374. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source.rb +155 -0
  375. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source_type.rb +26 -0
  376. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination.rb +219 -0
  377. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_encoding.rb +28 -0
  378. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_header_custom_fields_item.rb +144 -0
  379. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_type.rb +26 -0
  380. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source.rb +144 -0
  381. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source_type.rb +26 -0
  382. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination.rb +198 -0
  383. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination_type.rb +26 -0
  384. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source.rb +175 -0
  385. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source_type.rb +26 -0
  386. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_source_mode.rb +27 -0
  387. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +242 -0
  388. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor_type.rb +26 -0
  389. data/lib/datadog_api_client/v2/models/observability_pipeline_tls.rb +1 -1
  390. data/lib/datadog_api_client/v2/models/on_call_page_target_type.rb +28 -0
  391. data/lib/datadog_api_client/v2/models/page_urgency.rb +27 -0
  392. data/lib/datadog_api_client/v2/models/relation_attributes.rb +125 -0
  393. data/lib/datadog_api_client/v2/models/relation_entity.rb +125 -0
  394. data/lib/datadog_api_client/v2/models/relation_include_type.rb +27 -0
  395. data/lib/datadog_api_client/v2/models/relation_meta.rb +135 -0
  396. data/lib/datadog_api_client/v2/models/relation_relationships.rb +115 -0
  397. data/lib/datadog_api_client/v2/models/relation_response.rb +155 -0
  398. data/lib/datadog_api_client/v2/models/relation_response_meta.rb +115 -0
  399. data/lib/datadog_api_client/v2/models/relation_response_type.rb +26 -0
  400. data/lib/datadog_api_client/v2/models/relation_to_entity.rb +115 -0
  401. data/lib/datadog_api_client/v2/models/resource_filter_attributes.rb +133 -0
  402. data/lib/datadog_api_client/v2/models/resource_filter_request_type.rb +26 -0
  403. data/lib/datadog_api_client/v2/models/routing_rule.rb +153 -0
  404. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +63 -0
  405. data/lib/datadog_api_client/v2/models/routing_rule_attributes.rb +137 -0
  406. data/lib/datadog_api_client/v2/models/routing_rule_relationships.rb +105 -0
  407. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy.rb +105 -0
  408. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data.rb +144 -0
  409. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data_type.rb +26 -0
  410. data/lib/datadog_api_client/v2/models/routing_rule_type.rb +26 -0
  411. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +1 -1
  412. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +3 -15
  413. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +4 -4
  414. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +2 -2
  415. data/lib/datadog_api_client/v2/models/schedule_data.rb +20 -2
  416. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +2 -14
  417. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +1 -1
  418. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers_data_items.rb +31 -2
  419. data/lib/datadog_api_client/v2/models/schedule_member.rb +19 -1
  420. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user.rb +19 -1
  421. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user_data.rb +31 -2
  422. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_members_items.rb → schedule_request_data_attributes_layers_items_members_items.rb} +3 -3
  423. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_members_items_user.rb → schedule_request_data_attributes_layers_items_members_items_user.rb} +2 -2
  424. data/lib/datadog_api_client/v2/models/schedule_target.rb +144 -0
  425. data/lib/datadog_api_client/v2/models/schedule_target_type.rb +26 -0
  426. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +1 -1
  427. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +2 -2
  428. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +2 -14
  429. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +72 -10
  430. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +2 -2
  431. data/lib/datadog_api_client/v2/models/schedule_user.rb +19 -1
  432. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +13 -3
  433. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  434. data/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +1 -1
  435. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +2 -2
  436. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +2 -1
  437. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -1
  438. data/lib/datadog_api_client/v2/models/send_slack_message_action.rb +165 -0
  439. data/lib/datadog_api_client/v2/models/send_slack_message_action_type.rb +26 -0
  440. data/lib/datadog_api_client/v2/models/send_teams_message_action.rb +186 -0
  441. data/lib/datadog_api_client/v2/models/send_teams_message_action_type.rb +26 -0
  442. data/lib/datadog_api_client/v2/models/shift.rb +117 -0
  443. data/lib/datadog_api_client/v2/models/shift_data.rb +153 -0
  444. data/lib/datadog_api_client/v2/models/shift_data_attributes.rb +115 -0
  445. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items.rb → shift_data_relationships.rb} +5 -6
  446. data/lib/datadog_api_client/v2/models/shift_data_relationships_user.rb +123 -0
  447. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data.rb +144 -0
  448. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data_type.rb +26 -0
  449. data/lib/datadog_api_client/v2/models/shift_data_type.rb +26 -0
  450. data/lib/datadog_api_client/v2/models/shift_included.rb +62 -0
  451. data/lib/datadog_api_client/v2/models/tag_filter.rb +115 -0
  452. data/lib/datadog_api_client/v2/models/team_reference.rb +20 -12
  453. data/lib/datadog_api_client/v2/models/team_routing_rules.rb +117 -0
  454. data/lib/datadog_api_client/v2/models/team_routing_rules_data.rb +143 -0
  455. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships.rb +105 -0
  456. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules.rb +107 -0
  457. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items.rb +144 -0
  458. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items_type.rb +26 -0
  459. data/lib/datadog_api_client/v2/models/team_routing_rules_data_type.rb +26 -0
  460. data/lib/datadog_api_client/v2/models/team_routing_rules_included.rb +62 -0
  461. data/lib/datadog_api_client/v2/models/team_routing_rules_request.rb +105 -0
  462. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data.rb +143 -0
  463. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_attributes.rb +107 -0
  464. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_type.rb +26 -0
  465. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_restrictions_items.rb → team_routing_rules_request_rule.rb} +44 -33
  466. data/lib/datadog_api_client/v2/models/team_target.rb +144 -0
  467. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items_type.rb → team_target_type.rb} +2 -2
  468. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items.rb → time_restriction.rb} +9 -10
  469. data/lib/datadog_api_client/v2/models/time_restrictions.rb +146 -0
  470. data/lib/datadog_api_client/v2/models/update_custom_framework_request.rb +123 -0
  471. data/lib/datadog_api_client/v2/models/update_custom_framework_response.rb +123 -0
  472. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request.rb +123 -0
  473. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request_data.rb +154 -0
  474. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response.rb +123 -0
  475. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response_data.rb +154 -0
  476. data/lib/datadog_api_client/v2/models/urgency.rb +28 -0
  477. data/lib/datadog_api_client/v2/models/user_attributes_status.rb +28 -0
  478. data/lib/datadog_api_client/v2/models/user_target.rb +144 -0
  479. data/lib/datadog_api_client/v2/models/user_target_type.rb +26 -0
  480. data/lib/datadog_api_client/v2/models/validation_error.rb +144 -0
  481. data/lib/datadog_api_client/v2/models/validation_error_meta.rb +143 -0
  482. data/lib/datadog_api_client/v2/models/validation_response.rb +107 -0
  483. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_end_day.rb → weekday.rb} +2 -2
  484. data/lib/datadog_api_client/version.rb +1 -1
  485. metadata +373 -58
  486. data/.github/workflows/prepare_release.yml +0 -112
  487. data/RELEASING.md +0 -43
  488. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  489. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  490. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +0 -105
@@ -17,14 +17,14 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Links the schedule to a team within an update request, identified by `id` and `type`.
21
- class ScheduleUpdateRequestDataRelationshipsTeamsDataItems
20
+ # Defines a single escalation target within a step for an escalation policy creation request. Contains `id` and `type`.
21
+ class EscalationPolicyStepTarget
22
22
  include BaseGenericModel
23
23
 
24
- # The unique team identifier.
24
+ # Specifies the unique identifier for this target.
25
25
  attr_accessor :id
26
26
 
27
- # Teams resource type.
27
+ # Specifies the type of escalation target (example `users`, `schedules`, or `teams`).
28
28
  attr_accessor :type
29
29
 
30
30
  attr_accessor :additional_properties
@@ -43,7 +43,7 @@ module DatadogAPIClient::V2
43
43
  def self.openapi_types
44
44
  {
45
45
  :'id' => :'String',
46
- :'type' => :'ScheduleUpdateRequestDataRelationshipsTeamsDataItemsType'
46
+ :'type' => :'EscalationPolicyStepTargetType'
47
47
  }
48
48
  end
49
49
 
@@ -52,7 +52,7 @@ module DatadogAPIClient::V2
52
52
  # @!visibility private
53
53
  def initialize(attributes = {})
54
54
  if (!attributes.is_a?(Hash))
55
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ScheduleUpdateRequestDataRelationshipsTeamsDataItems` initialize method"
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::EscalationPolicyStepTarget` initialize method"
56
56
  end
57
57
 
58
58
  self.additional_properties = {}
@@ -0,0 +1,28 @@
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
+ # Specifies the type of escalation target (example `users`, `schedules`, or `teams`).
21
+ class EscalationPolicyStepTargetType
22
+ include BaseEnumModel
23
+
24
+ USERS = "users".freeze
25
+ SCHEDULES = "schedules".freeze
26
+ TEAMS = "teams".freeze
27
+ end
28
+ end
@@ -17,10 +17,10 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Teams resource type.
21
- class ScheduleCreateRequestDataRelationshipsTeamsDataItemsType
20
+ # Indicates that the resource is of type `steps`.
21
+ class EscalationPolicyStepType
22
22
  include BaseEnumModel
23
23
 
24
- TEAMS = "teams".freeze
24
+ STEPS = "steps".freeze
25
25
  end
26
26
  end
@@ -0,0 +1,123 @@
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
+ # Represents a request to update an existing escalation policy, including the updated policy data.
21
+ class EscalationPolicyUpdateRequest
22
+ include BaseGenericModel
23
+
24
+ # Represents the data for updating an existing escalation policy, including its ID, attributes, relationships, and resource type.
25
+ attr_reader :data
26
+
27
+ attr_accessor :additional_properties
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ # @!visibility private
31
+ def self.attribute_map
32
+ {
33
+ :'data' => :'data'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'data' => :'EscalationPolicyUpdateRequestData'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param attributes [Hash] Model attributes in the form of hash
47
+ # @!visibility private
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::EscalationPolicyUpdateRequest` initialize method"
51
+ end
52
+
53
+ self.additional_properties = {}
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ self.additional_properties[k.to_sym] = v
58
+ else
59
+ h[k.to_sym] = v
60
+ end
61
+ }
62
+
63
+ if attributes.key?(:'data')
64
+ self.data = attributes[:'data']
65
+ end
66
+ end
67
+
68
+ # Check to see if the all the properties in the model are valid
69
+ # @return true if the model is valid
70
+ # @!visibility private
71
+ def valid?
72
+ return false if @data.nil?
73
+ true
74
+ end
75
+
76
+ # Custom attribute writer method with validation
77
+ # @param data [Object] Object to be assigned
78
+ # @!visibility private
79
+ def data=(data)
80
+ if data.nil?
81
+ fail ArgumentError, 'invalid value for "data", data cannot be nil.'
82
+ end
83
+ @data = data
84
+ end
85
+
86
+ # Returns the object in the form of hash, with additionalProperties support.
87
+ # @return [Hash] Returns the object in the form of hash
88
+ # @!visibility private
89
+ def to_hash
90
+ hash = {}
91
+ self.class.attribute_map.each_pair do |attr, param|
92
+ value = self.send(attr)
93
+ if value.nil?
94
+ is_nullable = self.class.openapi_nullable.include?(attr)
95
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
96
+ end
97
+
98
+ hash[param] = _to_hash(value)
99
+ end
100
+ self.additional_properties.each_pair do |attr, value|
101
+ hash[attr] = value
102
+ end
103
+ hash
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param o [Object] Object to be compared
108
+ # @!visibility private
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ data == o.data &&
113
+ additional_properties == o.additional_properties
114
+ end
115
+
116
+ # Calculates hash code according to all attributes.
117
+ # @return [Integer] Hash code
118
+ # @!visibility private
119
+ def hash
120
+ [data, additional_properties].hash
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,175 @@
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
+ # Represents the data for updating an existing escalation policy, including its ID, attributes, relationships, and resource type.
21
+ class EscalationPolicyUpdateRequestData
22
+ include BaseGenericModel
23
+
24
+ # Defines the attributes that can be updated for an escalation policy, such as description, name, resolution behavior, retries, and steps.
25
+ attr_reader :attributes
26
+
27
+ # Specifies the unique identifier of the escalation policy being updated.
28
+ attr_reader :id
29
+
30
+ # Represents relationships in an escalation policy update request, including references to teams.
31
+ attr_accessor :relationships
32
+
33
+ # Indicates that the resource is of type `policies`.
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' => :'EscalationPolicyUpdateRequestDataAttributes',
54
+ :'id' => :'String',
55
+ :'relationships' => :'EscalationPolicyUpdateRequestDataRelationships',
56
+ :'type' => :'EscalationPolicyUpdateRequestDataType'
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::EscalationPolicyUpdateRequestData` 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 @attributes.nil?
100
+ return false if @id.nil?
101
+ return false if @type.nil?
102
+ true
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param attributes [Object] Object to be assigned
107
+ # @!visibility private
108
+ def attributes=(attributes)
109
+ if attributes.nil?
110
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
111
+ end
112
+ @attributes = attributes
113
+ end
114
+
115
+ # Custom attribute writer method with validation
116
+ # @param id [Object] Object to be assigned
117
+ # @!visibility private
118
+ def id=(id)
119
+ if id.nil?
120
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
121
+ end
122
+ @id = id
123
+ end
124
+
125
+ # Custom attribute writer method with validation
126
+ # @param type [Object] Object to be assigned
127
+ # @!visibility private
128
+ def type=(type)
129
+ if type.nil?
130
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
131
+ end
132
+ @type = type
133
+ end
134
+
135
+ # Returns the object in the form of hash, with additionalProperties support.
136
+ # @return [Hash] Returns the object in the form of hash
137
+ # @!visibility private
138
+ def to_hash
139
+ hash = {}
140
+ self.class.attribute_map.each_pair do |attr, param|
141
+ value = self.send(attr)
142
+ if value.nil?
143
+ is_nullable = self.class.openapi_nullable.include?(attr)
144
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
145
+ end
146
+
147
+ hash[param] = _to_hash(value)
148
+ end
149
+ self.additional_properties.each_pair do |attr, value|
150
+ hash[attr] = value
151
+ end
152
+ hash
153
+ end
154
+
155
+ # Checks equality by comparing each attribute.
156
+ # @param o [Object] Object to be compared
157
+ # @!visibility private
158
+ def ==(o)
159
+ return true if self.equal?(o)
160
+ self.class == o.class &&
161
+ attributes == o.attributes &&
162
+ id == o.id &&
163
+ relationships == o.relationships &&
164
+ type == o.type &&
165
+ additional_properties == o.additional_properties
166
+ end
167
+
168
+ # Calculates hash code according to all attributes.
169
+ # @return [Integer] Hash code
170
+ # @!visibility private
171
+ def hash
172
+ [attributes, id, relationships, type, additional_properties].hash
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,166 @@
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
+ # Defines the attributes that can be updated for an escalation policy, such as description, name, resolution behavior, retries, and steps.
21
+ class EscalationPolicyUpdateRequestDataAttributes
22
+ include BaseGenericModel
23
+
24
+ # Specifies the name of the escalation policy.
25
+ attr_reader :name
26
+
27
+ # Indicates whether the page is automatically resolved when the policy ends.
28
+ attr_accessor :resolve_page_on_policy_end
29
+
30
+ # Specifies how many times the escalation sequence is retried if there is no response.
31
+ attr_accessor :retries
32
+
33
+ # A list of escalation steps, each defining assignment, escalation timeout, and targets.
34
+ attr_reader :steps
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
+ :'name' => :'name',
43
+ :'resolve_page_on_policy_end' => :'resolve_page_on_policy_end',
44
+ :'retries' => :'retries',
45
+ :'steps' => :'steps'
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'name' => :'String',
54
+ :'resolve_page_on_policy_end' => :'Boolean',
55
+ :'retries' => :'Integer',
56
+ :'steps' => :'Array<EscalationPolicyUpdateRequestDataAttributesStepsItems>'
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::EscalationPolicyUpdateRequestDataAttributes` 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?(:'name')
79
+ self.name = attributes[:'name']
80
+ end
81
+
82
+ if attributes.key?(:'resolve_page_on_policy_end')
83
+ self.resolve_page_on_policy_end = attributes[:'resolve_page_on_policy_end']
84
+ end
85
+
86
+ if attributes.key?(:'retries')
87
+ self.retries = attributes[:'retries']
88
+ end
89
+
90
+ if attributes.key?(:'steps')
91
+ if (value = attributes[:'steps']).is_a?(Array)
92
+ self.steps = value
93
+ end
94
+ end
95
+ end
96
+
97
+ # Check to see if the all the properties in the model are valid
98
+ # @return true if the model is valid
99
+ # @!visibility private
100
+ def valid?
101
+ return false if @name.nil?
102
+ return false if @steps.nil?
103
+ true
104
+ end
105
+
106
+ # Custom attribute writer method with validation
107
+ # @param name [Object] Object to be assigned
108
+ # @!visibility private
109
+ def name=(name)
110
+ if name.nil?
111
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
112
+ end
113
+ @name = name
114
+ end
115
+
116
+ # Custom attribute writer method with validation
117
+ # @param steps [Object] Object to be assigned
118
+ # @!visibility private
119
+ def steps=(steps)
120
+ if steps.nil?
121
+ fail ArgumentError, 'invalid value for "steps", steps cannot be nil.'
122
+ end
123
+ @steps = steps
124
+ end
125
+
126
+ # Returns the object in the form of hash, with additionalProperties support.
127
+ # @return [Hash] Returns the object in the form of hash
128
+ # @!visibility private
129
+ def to_hash
130
+ hash = {}
131
+ self.class.attribute_map.each_pair do |attr, param|
132
+ value = self.send(attr)
133
+ if value.nil?
134
+ is_nullable = self.class.openapi_nullable.include?(attr)
135
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
136
+ end
137
+
138
+ hash[param] = _to_hash(value)
139
+ end
140
+ self.additional_properties.each_pair do |attr, value|
141
+ hash[attr] = value
142
+ end
143
+ hash
144
+ end
145
+
146
+ # Checks equality by comparing each attribute.
147
+ # @param o [Object] Object to be compared
148
+ # @!visibility private
149
+ def ==(o)
150
+ return true if self.equal?(o)
151
+ self.class == o.class &&
152
+ name == o.name &&
153
+ resolve_page_on_policy_end == o.resolve_page_on_policy_end &&
154
+ retries == o.retries &&
155
+ steps == o.steps &&
156
+ additional_properties == o.additional_properties
157
+ end
158
+
159
+ # Calculates hash code according to all attributes.
160
+ # @return [Integer] Hash code
161
+ # @!visibility private
162
+ def hash
163
+ [name, resolve_page_on_policy_end, retries, steps, additional_properties].hash
164
+ end
165
+ end
166
+ end
@@ -0,0 +1,155 @@
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
+ # Defines a single escalation step within an escalation policy update request. Contains assignment strategy, escalation timeout, an optional step ID, and a list of targets.
21
+ class EscalationPolicyUpdateRequestDataAttributesStepsItems
22
+ include BaseGenericModel
23
+
24
+ # Specifies how this escalation step will assign targets (example `default` or `round-robin`).
25
+ attr_accessor :assignment
26
+
27
+ # Defines how many seconds to wait before escalating to the next step.
28
+ attr_accessor :escalate_after_seconds
29
+
30
+ # Specifies the unique identifier of this step.
31
+ attr_accessor :id
32
+
33
+ # Specifies the collection of escalation targets for this step.
34
+ attr_reader :targets
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
+ :'assignment' => :'assignment',
43
+ :'escalate_after_seconds' => :'escalate_after_seconds',
44
+ :'id' => :'id',
45
+ :'targets' => :'targets'
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'assignment' => :'EscalationPolicyStepAttributesAssignment',
54
+ :'escalate_after_seconds' => :'Integer',
55
+ :'id' => :'String',
56
+ :'targets' => :'Array<EscalationPolicyStepTarget>'
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::EscalationPolicyUpdateRequestDataAttributesStepsItems` 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?(:'assignment')
79
+ self.assignment = attributes[:'assignment']
80
+ end
81
+
82
+ if attributes.key?(:'escalate_after_seconds')
83
+ self.escalate_after_seconds = attributes[:'escalate_after_seconds']
84
+ end
85
+
86
+ if attributes.key?(:'id')
87
+ self.id = attributes[:'id']
88
+ end
89
+
90
+ if attributes.key?(:'targets')
91
+ if (value = attributes[:'targets']).is_a?(Array)
92
+ self.targets = value
93
+ end
94
+ end
95
+ end
96
+
97
+ # Check to see if the all the properties in the model are valid
98
+ # @return true if the model is valid
99
+ # @!visibility private
100
+ def valid?
101
+ return false if @targets.nil?
102
+ true
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param targets [Object] Object to be assigned
107
+ # @!visibility private
108
+ def targets=(targets)
109
+ if targets.nil?
110
+ fail ArgumentError, 'invalid value for "targets", targets cannot be nil.'
111
+ end
112
+ @targets = targets
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
+ assignment == o.assignment &&
142
+ escalate_after_seconds == o.escalate_after_seconds &&
143
+ id == o.id &&
144
+ targets == o.targets &&
145
+ additional_properties == o.additional_properties
146
+ end
147
+
148
+ # Calculates hash code according to all attributes.
149
+ # @return [Integer] Hash code
150
+ # @!visibility private
151
+ def hash
152
+ [assignment, escalate_after_seconds, id, targets, additional_properties].hash
153
+ end
154
+ end
155
+ end