datadog_api_client 2.33.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 (245) 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 +18 -3
  5. data/.generator/schemas/v2/openapi.yaml +2577 -883
  6. data/.generator/src/generator/templates/configuration.j2 +2 -2
  7. data/.github/workflows/publish.yml +16 -8
  8. data/.github/workflows/release.yml +57 -61
  9. data/CHANGELOG.md +16 -0
  10. data/Gemfile +2 -1
  11. data/examples/v2/csm-threats/CreateCSMThreatsAgentPolicy.rb +21 -0
  12. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule.rb +7 -4
  13. data/examples/v2/csm-threats/CreateCloudWorkloadSecurityAgentRule.rb +3 -2
  14. data/examples/v2/csm-threats/DeleteCSMThreatsAgentPolicy.rb +8 -0
  15. data/examples/v2/csm-threats/DeleteCSMThreatsAgentRule.rb +8 -2
  16. data/examples/v2/csm-threats/DeleteCloudWorkloadSecurityAgentRule.rb +1 -1
  17. data/examples/v2/csm-threats/DownloadCSMThreatsPolicy.rb +1 -1
  18. data/examples/v2/csm-threats/DownloadCloudWorkloadPolicyFile.rb +1 -1
  19. data/examples/v2/csm-threats/GetCSMThreatsAgentPolicy.rb +8 -0
  20. data/examples/v2/csm-threats/GetCSMThreatsAgentRule.rb +8 -2
  21. data/examples/v2/csm-threats/GetCloudWorkloadSecurityAgentRule.rb +1 -1
  22. data/examples/v2/csm-threats/ListCSMThreatsAgentPolicies.rb +5 -0
  23. data/examples/v2/csm-threats/ListCSMThreatsAgentRules.rb +1 -1
  24. data/examples/v2/csm-threats/ListCloudWorkloadSecurityAgentRules.rb +1 -1
  25. data/examples/v2/csm-threats/UpdateCSMThreatsAgentPolicy.rb +25 -0
  26. data/examples/v2/csm-threats/UpdateCSMThreatsAgentRule.rb +12 -4
  27. data/examples/v2/csm-threats/UpdateCloudWorkloadSecurityAgentRule.rb +3 -4
  28. data/examples/v2/dora-metrics/GetDORADeployment.rb +5 -0
  29. data/examples/v2/dora-metrics/GetDORAFailure.rb +5 -0
  30. data/examples/v2/dora-metrics/ListDORADeployments.rb +16 -0
  31. data/examples/v2/dora-metrics/ListDORAFailures.rb +16 -0
  32. data/examples/v2/network-device-monitoring/ListDevices_2712868412.rb +5 -0
  33. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +19 -17
  34. data/examples/v2/on-call/CreateOnCallSchedule.rb +11 -15
  35. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +2 -2
  36. data/examples/v2/on-call/DeleteOnCallSchedule.rb +2 -2
  37. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +6 -3
  38. data/examples/v2/on-call/GetOnCallSchedule.rb +2 -2
  39. data/examples/v2/on-call/GetOnCallTeamRoutingRules.rb +5 -0
  40. data/examples/v2/on-call/GetScheduleOnCallUser.rb +8 -0
  41. data/examples/v2/on-call/SetOnCallTeamRoutingRules.rb +57 -0
  42. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +8 -9
  43. data/examples/v2/on-call/UpdateOnCallSchedule.rb +11 -16
  44. data/examples/v2/on-call-paging/AcknowledgeOnCallPage.rb +5 -0
  45. data/examples/v2/on-call-paging/CreateOnCallPage.rb +23 -0
  46. data/examples/v2/on-call-paging/EscalateOnCallPage.rb +5 -0
  47. data/examples/v2/on-call-paging/ResolveOnCallPage.rb +5 -0
  48. data/examples/v2/rum-metrics/CreateRumMetric.rb +1 -1
  49. data/examples/v2/security-monitoring/GetResourceEvaluationFilters.rb +9 -0
  50. data/examples/v2/security-monitoring/UpdateResourceEvaluationFilters.rb +21 -0
  51. data/examples/v2/software-catalog/ListCatalogRelation.rb +5 -0
  52. data/examples/v2/software-catalog/ListCatalogRelation_1311054087.rb +8 -0
  53. data/examples/v2/workflow-automation/CreateWorkflow.rb +0 -1
  54. data/examples/v2/workflow-automation/UpdateWorkflow.rb +0 -1
  55. data/lib/datadog_api_client/configuration.rb +203 -15
  56. data/lib/datadog_api_client/inflector.rb +104 -43
  57. data/lib/datadog_api_client/v1/models/synthetics_assertion_body_hash_target.rb +2 -2
  58. data/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +2 -2
  59. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +2 -2
  60. data/lib/datadog_api_client/v1/models/synthetics_assertion_target_value.rb +63 -0
  61. data/lib/datadog_api_client/v1/models/synthetics_assertion_x_path_target_target.rb +2 -2
  62. data/lib/datadog_api_client/v2/api/csm_threats_api.rb +424 -52
  63. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +265 -1
  64. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -5
  65. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +25 -3
  66. data/lib/datadog_api_client/v2/api/on_call_api.rb +234 -24
  67. data/lib/datadog_api_client/v2/api/on_call_paging_api.rb +292 -0
  68. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +133 -0
  69. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +101 -0
  70. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams.rb → cloud_workload_security_agent_policies_list_response.rb} +5 -5
  71. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +300 -0
  72. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_attributes.rb +167 -0
  73. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items.rb → cloud_workload_security_agent_policy_create_data.rb} +19 -19
  74. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_request.rb +123 -0
  75. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_data.rb +125 -0
  76. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_response.rb +105 -0
  77. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_type.rb +26 -0
  78. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_restrictions_items.rb → cloud_workload_security_agent_policy_update_attributes.rb} +46 -33
  79. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_data.rb +154 -0
  80. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_request.rb +123 -0
  81. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_updater_attributes.rb +123 -0
  82. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +1 -1
  83. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +31 -19
  84. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_attributes.rb +27 -5
  85. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_data.rb +2 -2
  86. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_request.rb +2 -2
  87. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_creator_attributes.rb +3 -3
  88. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_data.rb +4 -4
  89. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +1 -1
  90. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_response.rb +2 -2
  91. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_type.rb +1 -1
  92. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_attributes.rb +29 -7
  93. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +4 -4
  94. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_request.rb +2 -2
  95. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_updater_attributes.rb +3 -3
  96. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rules_list_response.rb +2 -2
  97. data/lib/datadog_api_client/v2/models/create_page_request.rb +105 -0
  98. data/lib/datadog_api_client/v2/models/create_page_request_data.rb +133 -0
  99. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes.rb +187 -0
  100. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes_target.rb +115 -0
  101. data/lib/datadog_api_client/v2/models/create_page_request_data_type.rb +26 -0
  102. data/lib/datadog_api_client/v2/models/create_page_response.rb +105 -0
  103. data/lib/datadog_api_client/v2/models/create_page_response_data.rb +133 -0
  104. data/lib/datadog_api_client/v2/models/create_page_response_data_type.rb +26 -0
  105. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +2 -24
  106. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams.rb → data_relationships_teams.rb} +3 -3
  107. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items.rb → data_relationships_teams_data_items.rb} +3 -3
  108. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items_type.rb → data_relationships_teams_data_items_type.rb} +1 -1
  109. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items.rb → dora_event.rb} +17 -7
  110. data/lib/datadog_api_client/v2/models/dora_fetch_response.rb +105 -0
  111. data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +1 -1
  112. data/lib/datadog_api_client/v2/models/dora_list_deployments_request.rb +123 -0
  113. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_attributes.rb +163 -0
  114. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data.rb +133 -0
  115. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams.rb → dora_list_failures_request.rb} +25 -9
  117. data/lib/datadog_api_client/v2/models/dora_list_failures_request_attributes.rb +163 -0
  118. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items_type.rb → dora_list_failures_request_data_type.rb} +3 -3
  120. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams.rb → dora_list_response.rb} +5 -5
  121. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +1 -21
  122. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +1 -11
  123. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +2 -2
  125. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +1 -1
  126. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +2 -12
  127. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +2 -2
  128. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +2 -3
  129. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +2 -2
  130. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_attributes_steps_items_targets_items.rb → escalation_policy_step_target.rb} +3 -3
  131. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb → escalation_policy_step_target_type.rb} +1 -1
  132. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +1 -11
  133. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +2 -2
  134. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +2 -2
  135. data/lib/datadog_api_client/v2/models/escalation_policy_user.rb +143 -0
  136. data/lib/datadog_api_client/v2/models/escalation_policy_user_attributes.rb +125 -0
  137. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items_type.rb → escalation_policy_user_type.rb} +1 -1
  138. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users.rb → escalation_targets.rb} +5 -5
  139. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +2 -34
  140. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response.rb +123 -0
  141. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response_data.rb +125 -0
  142. data/lib/datadog_api_client/v2/models/historical_job_options.rb +2 -2
  143. data/lib/datadog_api_client/v2/models/historical_job_query.rb +1 -1
  144. data/lib/datadog_api_client/v2/models/http_integration.rb +0 -6
  145. data/lib/datadog_api_client/v2/models/http_integration_update.rb +1 -14
  146. data/lib/datadog_api_client/v2/models/incident_severity.rb +1 -0
  147. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  148. data/lib/datadog_api_client/v2/models/list_relation_catalog_response.rb +139 -0
  149. data/lib/datadog_api_client/v2/models/list_relation_catalog_response_links.rb +125 -0
  150. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -16
  151. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -16
  152. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -16
  153. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -13
  154. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +1 -1
  155. data/lib/datadog_api_client/v2/models/on_call_page_target_type.rb +28 -0
  156. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items_type.rb → page_urgency.rb} +4 -3
  157. data/lib/datadog_api_client/v2/models/relation_attributes.rb +125 -0
  158. data/lib/datadog_api_client/v2/models/relation_entity.rb +125 -0
  159. data/lib/datadog_api_client/v2/models/relation_include_type.rb +27 -0
  160. data/lib/datadog_api_client/v2/models/relation_meta.rb +135 -0
  161. data/lib/datadog_api_client/v2/models/relation_relationships.rb +115 -0
  162. data/lib/datadog_api_client/v2/models/relation_response.rb +155 -0
  163. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams.rb → relation_response_meta.rb} +21 -13
  164. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items_type.rb → relation_response_type.rb} +3 -3
  165. data/lib/datadog_api_client/v2/models/relation_to_entity.rb +115 -0
  166. data/lib/datadog_api_client/v2/models/resource_filter_attributes.rb +133 -0
  167. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items_type.rb → resource_filter_request_type.rb} +3 -3
  168. data/lib/datadog_api_client/v2/models/routing_rule.rb +153 -0
  169. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +63 -0
  170. data/lib/datadog_api_client/v2/models/routing_rule_attributes.rb +137 -0
  171. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items_user.rb → routing_rule_relationships.rb} +11 -11
  172. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy.rb +105 -0
  173. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items.rb → routing_rule_relationships_policy_data.rb} +6 -6
  174. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data_type.rb +26 -0
  175. data/lib/datadog_api_client/v2/models/routing_rule_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +1 -1
  177. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +3 -15
  178. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +4 -4
  179. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +2 -2
  180. data/lib/datadog_api_client/v2/models/schedule_data.rb +1 -1
  181. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +2 -14
  182. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +1 -1
  183. 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
  184. 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
  185. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +1 -1
  186. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +2 -2
  187. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +2 -14
  188. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +4 -4
  189. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +2 -2
  190. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +13 -3
  191. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  192. data/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +1 -1
  193. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +2 -2
  194. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +2 -1
  195. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -1
  196. data/lib/datadog_api_client/v2/models/send_slack_message_action.rb +165 -0
  197. data/lib/datadog_api_client/v2/models/send_slack_message_action_type.rb +26 -0
  198. data/lib/datadog_api_client/v2/models/send_teams_message_action.rb +186 -0
  199. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items_type.rb → send_teams_message_action_type.rb} +3 -3
  200. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams.rb → shift.rb} +19 -9
  201. data/lib/datadog_api_client/v2/models/shift_data.rb +153 -0
  202. data/lib/datadog_api_client/v2/models/shift_data_attributes.rb +115 -0
  203. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items.rb → shift_data_relationships.rb} +5 -6
  204. data/lib/datadog_api_client/v2/models/shift_data_relationships_user.rb +123 -0
  205. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items.rb → shift_data_relationships_user_data.rb} +6 -6
  206. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data_type.rb +26 -0
  207. data/lib/datadog_api_client/v2/models/shift_data_type.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/shift_included.rb +62 -0
  209. data/lib/datadog_api_client/v2/models/team_reference.rb +1 -11
  210. data/lib/datadog_api_client/v2/models/team_routing_rules.rb +117 -0
  211. data/lib/datadog_api_client/v2/models/team_routing_rules_data.rb +143 -0
  212. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships.rb +105 -0
  213. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules.rb +107 -0
  214. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items.rb → team_routing_rules_data_relationships_rules_data_items.rb} +6 -7
  215. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/team_routing_rules_data_type.rb +26 -0
  217. data/lib/datadog_api_client/v2/models/team_routing_rules_included.rb +62 -0
  218. data/lib/datadog_api_client/v2/models/team_routing_rules_request.rb +105 -0
  219. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items.rb → team_routing_rules_request_data.rb} +18 -19
  220. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_attributes.rb +107 -0
  221. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_type.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_restrictions_items.rb → team_routing_rules_request_rule.rb} +44 -33
  223. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items.rb → time_restriction.rb} +9 -10
  224. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_interval.rb → time_restrictions.rb} +32 -30
  225. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request.rb +123 -0
  226. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request_data.rb +154 -0
  227. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response.rb +123 -0
  228. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items.rb → update_resource_evaluation_filters_response_data.rb} +24 -14
  229. data/lib/datadog_api_client/v2/models/urgency.rb +28 -0
  230. data/lib/datadog_api_client/v2/models/user_attributes_status.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_end_day.rb → weekday.rb} +2 -2
  232. data/lib/datadog_api_client/version.rb +1 -1
  233. metadata +128 -51
  234. data/.github/workflows/prepare_release.yml +0 -112
  235. data/RELEASING.md +0 -43
  236. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb +0 -27
  237. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +0 -27
  238. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb +0 -28
  239. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_start_day.rb +0 -32
  240. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  241. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  242. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_interval.rb +0 -144
  243. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  244. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  245. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +0 -105
@@ -17,20 +17,24 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Defines the relationship to teams within an escalation policy creation request, referencing the teams to be associated with the policy.
21
- class EscalationPolicyCreateRequestDataRelationshipsTeams
20
+ # The definition of `Shift` object.
21
+ class Shift
22
22
  include BaseGenericModel
23
23
 
24
- # An array of team references for the new escalation policy.
24
+ # The definition of `ShiftData` object.
25
25
  attr_accessor :data
26
26
 
27
+ # The `Shift` `included`.
28
+ attr_accessor :included
29
+
27
30
  attr_accessor :additional_properties
28
31
 
29
32
  # Attribute mapping from ruby-style variable name to JSON key.
30
33
  # @!visibility private
31
34
  def self.attribute_map
32
35
  {
33
- :'data' => :'data'
36
+ :'data' => :'data',
37
+ :'included' => :'included'
34
38
  }
35
39
  end
36
40
 
@@ -38,7 +42,8 @@ module DatadogAPIClient::V2
38
42
  # @!visibility private
39
43
  def self.openapi_types
40
44
  {
41
- :'data' => :'Array<EscalationPolicyCreateRequestDataRelationshipsTeamsDataItems>'
45
+ :'data' => :'ShiftData',
46
+ :'included' => :'Array<ShiftIncluded>'
42
47
  }
43
48
  end
44
49
 
@@ -47,7 +52,7 @@ module DatadogAPIClient::V2
47
52
  # @!visibility private
48
53
  def initialize(attributes = {})
49
54
  if (!attributes.is_a?(Hash))
50
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::EscalationPolicyCreateRequestDataRelationshipsTeams` initialize method"
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::Shift` initialize method"
51
56
  end
52
57
 
53
58
  self.additional_properties = {}
@@ -61,8 +66,12 @@ module DatadogAPIClient::V2
61
66
  }
62
67
 
63
68
  if attributes.key?(:'data')
64
- if (value = attributes[:'data']).is_a?(Array)
65
- self.data = value
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
66
75
  end
67
76
  end
68
77
  end
@@ -94,6 +103,7 @@ module DatadogAPIClient::V2
94
103
  return true if self.equal?(o)
95
104
  self.class == o.class &&
96
105
  data == o.data &&
106
+ included == o.included &&
97
107
  additional_properties == o.additional_properties
98
108
  end
99
109
 
@@ -101,7 +111,7 @@ module DatadogAPIClient::V2
101
111
  # @return [Integer] Hash code
102
112
  # @!visibility private
103
113
  def hash
104
- [data, additional_properties].hash
114
+ [data, included, additional_properties].hash
105
115
  end
106
116
  end
107
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 definition of `ShiftData` object.
21
+ class ShiftData
22
+ include BaseGenericModel
23
+
24
+ # The definition of `ShiftDataAttributes` object.
25
+ attr_accessor :attributes
26
+
27
+ # The `ShiftData` `id`.
28
+ attr_accessor :id
29
+
30
+ # The definition of `ShiftDataRelationships` object.
31
+ attr_accessor :relationships
32
+
33
+ # Indicates that the resource is of type 'shifts'.
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' => :'ShiftDataAttributes',
54
+ :'id' => :'String',
55
+ :'relationships' => :'ShiftDataRelationships',
56
+ :'type' => :'ShiftDataType'
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::ShiftData` 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,115 @@
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 definition of `ShiftDataAttributes` object.
21
+ class ShiftDataAttributes
22
+ include BaseGenericModel
23
+
24
+ # The end time of the shift.
25
+ attr_accessor :_end
26
+
27
+ # The start time of the shift.
28
+ attr_accessor :start
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
+ :'_end' => :'end',
37
+ :'start' => :'start'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'_end' => :'Time',
46
+ :'start' => :'Time'
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::ShiftDataAttributes` 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?(:'_end')
69
+ self._end = attributes[:'_end']
70
+ end
71
+
72
+ if attributes.key?(:'start')
73
+ self.start = attributes[:'start']
74
+ end
75
+ end
76
+
77
+ # Returns the object in the form of hash, with additionalProperties support.
78
+ # @return [Hash] Returns the object in the form of hash
79
+ # @!visibility private
80
+ def to_hash
81
+ hash = {}
82
+ self.class.attribute_map.each_pair do |attr, param|
83
+ value = self.send(attr)
84
+ if value.nil?
85
+ is_nullable = self.class.openapi_nullable.include?(attr)
86
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
87
+ end
88
+
89
+ hash[param] = _to_hash(value)
90
+ end
91
+ self.additional_properties.each_pair do |attr, value|
92
+ hash[attr] = value
93
+ end
94
+ hash
95
+ end
96
+
97
+ # Checks equality by comparing each attribute.
98
+ # @param o [Object] Object to be compared
99
+ # @!visibility private
100
+ def ==(o)
101
+ return true if self.equal?(o)
102
+ self.class == o.class &&
103
+ _end == o._end &&
104
+ start == o.start &&
105
+ additional_properties == o.additional_properties
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Integer] Hash code
110
+ # @!visibility private
111
+ def hash
112
+ [_end, start, additional_properties].hash
113
+ end
114
+ end
115
+ end
@@ -17,12 +17,11 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Defines a single member within a layer during an update request, referring
21
- # to a specific user.
22
- class ScheduleUpdateRequestDataAttributesLayersItemsMembersItems
20
+ # The definition of `ShiftDataRelationships` object.
21
+ class ShiftDataRelationships
23
22
  include BaseGenericModel
24
23
 
25
- # Identifies the user who is assigned to this member object. Only `id` is required.
24
+ # Defines the relationship between a shift and the user who is working that shift.
26
25
  attr_accessor :user
27
26
 
28
27
  attr_accessor :additional_properties
@@ -39,7 +38,7 @@ module DatadogAPIClient::V2
39
38
  # @!visibility private
40
39
  def self.openapi_types
41
40
  {
42
- :'user' => :'ScheduleUpdateRequestDataAttributesLayersItemsMembersItemsUser'
41
+ :'user' => :'ShiftDataRelationshipsUser'
43
42
  }
44
43
  end
45
44
 
@@ -48,7 +47,7 @@ module DatadogAPIClient::V2
48
47
  # @!visibility private
49
48
  def initialize(attributes = {})
50
49
  if (!attributes.is_a?(Hash))
51
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ScheduleUpdateRequestDataAttributesLayersItemsMembersItems` initialize method"
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ShiftDataRelationships` initialize method"
52
51
  end
53
52
 
54
53
  self.additional_properties = {}
@@ -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
+ # Defines the relationship between a shift and the user who is working that shift.
21
+ class ShiftDataRelationshipsUser
22
+ include BaseGenericModel
23
+
24
+ # Represents a reference to the user assigned to this shift, containing the user's ID 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' => :'ShiftDataRelationshipsUserData'
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::ShiftDataRelationshipsUser` 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
@@ -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
+ # Represents a reference to the user assigned to this shift, containing the user's ID and resource type.
21
+ class ShiftDataRelationshipsUserData
22
22
  include BaseGenericModel
23
23
 
24
- # The unique team identifier.
24
+ # Specifies the unique identifier of the user.
25
25
  attr_reader :id
26
26
 
27
- # Teams resource type.
27
+ # Indicates that the related resource is of type 'users'.
28
28
  attr_reader :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' => :'ShiftDataRelationshipsUserDataType'
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::ShiftDataRelationshipsUserData` initialize method"
56
56
  end
57
57
 
58
58
  self.additional_properties = {}
@@ -0,0 +1,26 @@
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
+ # Indicates that the related resource is of type 'users'.
21
+ class ShiftDataRelationshipsUserDataType
22
+ include BaseEnumModel
23
+
24
+ USERS = "users".freeze
25
+ end
26
+ end
@@ -0,0 +1,26 @@
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
+ # Indicates that the resource is of type 'shifts'.
21
+ class ShiftDataType
22
+ include BaseEnumModel
23
+
24
+ SHIFTS = "shifts".freeze
25
+ end
26
+ end
@@ -0,0 +1,62 @@
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 definition of `ShiftIncluded` object.
21
+ module ShiftIncluded
22
+ class << self
23
+ include BaseOneOfModel
24
+ include BaseOneOfModelNoDiscriminator
25
+
26
+ # List of class defined in oneOf (OpenAPI v3)
27
+ def openapi_one_of
28
+ [
29
+ :'ScheduleUser'
30
+ ]
31
+ end
32
+ # Builds the object
33
+ # @param data [Mixed] Data to be matched against the list of oneOf items
34
+ # @return [Object] Returns the model or the data itself
35
+ def build(data)
36
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
37
+ # Note:
38
+ # - We do not attempt to check whether exactly one item matches.
39
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
40
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
41
+ # - TODO: scalar values are de facto behaving as if they were nullable.
42
+ # - TODO: logging when debugging is set.
43
+ openapi_one_of.each do |klass|
44
+ begin
45
+ next if klass == :AnyType # "nullable: true"
46
+ typed_data = find_and_cast_into_type(klass, data)
47
+ next if typed_data.respond_to?(:_unparsed) && typed_data._unparsed
48
+ return typed_data if typed_data
49
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
50
+ end
51
+ end
52
+
53
+ if openapi_one_of.include?(:AnyType)
54
+ data
55
+ else
56
+ self._unparsed = true
57
+ DatadogAPIClient::UnparsedObject.new(data)
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end