datadog_api_client 2.33.0 → 2.35.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 (304) 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 +77 -6
  5. data/.generator/schemas/v2/openapi.yaml +3218 -855
  6. data/.generator/src/generator/formatter.py +2 -2
  7. data/.generator/src/generator/openapi.py +1 -1
  8. data/.generator/src/generator/templates/configuration.j2 +2 -2
  9. data/.github/workflows/publish.yml +16 -8
  10. data/.github/workflows/release.yml +57 -61
  11. data/CHANGELOG.md +35 -0
  12. data/Gemfile +3 -1
  13. data/examples/v1/monitors/CreateMonitor_1539578087.rb +1 -0
  14. data/examples/v1/monitors/CreateMonitor_440013737.rb +1 -0
  15. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +142 -0
  16. data/examples/v2/csm-threats/CreateCSMThreatsAgentPolicy.rb +21 -0
  17. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule.rb +7 -4
  18. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1295653933.rb +32 -0
  19. data/examples/v2/csm-threats/CreateCloudWorkloadSecurityAgentRule.rb +3 -2
  20. data/examples/v2/csm-threats/DeleteCSMThreatsAgentPolicy.rb +8 -0
  21. data/examples/v2/csm-threats/DeleteCSMThreatsAgentRule.rb +8 -2
  22. data/examples/v2/csm-threats/DeleteCloudWorkloadSecurityAgentRule.rb +1 -1
  23. data/examples/v2/csm-threats/DownloadCSMThreatsPolicy.rb +1 -1
  24. data/examples/v2/csm-threats/DownloadCloudWorkloadPolicyFile.rb +1 -1
  25. data/examples/v2/csm-threats/GetCSMThreatsAgentPolicy.rb +8 -0
  26. data/examples/v2/csm-threats/GetCSMThreatsAgentRule.rb +8 -2
  27. data/examples/v2/csm-threats/GetCloudWorkloadSecurityAgentRule.rb +1 -1
  28. data/examples/v2/csm-threats/ListCSMThreatsAgentPolicies.rb +5 -0
  29. data/examples/v2/csm-threats/ListCSMThreatsAgentRules.rb +1 -1
  30. data/examples/v2/csm-threats/ListCloudWorkloadSecurityAgentRules.rb +1 -1
  31. data/examples/v2/csm-threats/UpdateCSMThreatsAgentPolicy.rb +25 -0
  32. data/examples/v2/csm-threats/UpdateCSMThreatsAgentRule.rb +12 -4
  33. data/examples/v2/csm-threats/UpdateCloudWorkloadSecurityAgentRule.rb +3 -4
  34. data/examples/v2/dora-metrics/CreateDORADeployment.rb +0 -3
  35. data/examples/v2/dora-metrics/CreateDORAFailure.rb +30 -0
  36. data/examples/v2/dora-metrics/CreateDORAIncident.rb +11 -9
  37. data/examples/v2/dora-metrics/CreateDORAIncident_1768887482.rb +25 -0
  38. data/examples/v2/dora-metrics/GetDORADeployment.rb +5 -0
  39. data/examples/v2/dora-metrics/GetDORAFailure.rb +5 -0
  40. data/examples/v2/dora-metrics/ListDORADeployments.rb +16 -0
  41. data/examples/v2/dora-metrics/ListDORAFailures.rb +16 -0
  42. data/examples/v2/network-device-monitoring/ListDevices_2712868412.rb +5 -0
  43. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +19 -17
  44. data/examples/v2/on-call/CreateOnCallSchedule.rb +11 -15
  45. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +2 -2
  46. data/examples/v2/on-call/DeleteOnCallSchedule.rb +2 -2
  47. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +6 -3
  48. data/examples/v2/on-call/GetOnCallSchedule.rb +2 -2
  49. data/examples/v2/on-call/GetOnCallTeamRoutingRules.rb +5 -0
  50. data/examples/v2/on-call/GetScheduleOnCallUser.rb +8 -0
  51. data/examples/v2/on-call/GetTeamOnCallUsers.rb +11 -0
  52. data/examples/v2/on-call/SetOnCallTeamRoutingRules.rb +57 -0
  53. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +8 -9
  54. data/examples/v2/on-call/UpdateOnCallSchedule.rb +11 -16
  55. data/examples/v2/on-call-paging/AcknowledgeOnCallPage.rb +5 -0
  56. data/examples/v2/on-call-paging/CreateOnCallPage.rb +23 -0
  57. data/examples/v2/on-call-paging/EscalateOnCallPage.rb +5 -0
  58. data/examples/v2/on-call-paging/ResolveOnCallPage.rb +5 -0
  59. data/examples/v2/rum-metrics/CreateRumMetric.rb +1 -1
  60. data/examples/v2/security-monitoring/GetResourceEvaluationFilters.rb +9 -0
  61. data/examples/v2/security-monitoring/ListFindings_2932019633.rb +11 -0
  62. data/examples/v2/security-monitoring/UpdateResourceEvaluationFilters.rb +21 -0
  63. data/examples/v2/software-catalog/DeleteCatalogKind.rb +5 -0
  64. data/examples/v2/software-catalog/ListCatalogKind.rb +5 -0
  65. data/examples/v2/software-catalog/ListCatalogKind_3806205775.rb +5 -0
  66. data/examples/v2/software-catalog/ListCatalogRelation.rb +5 -0
  67. data/examples/v2/software-catalog/ListCatalogRelation_1311054087.rb +8 -0
  68. data/examples/v2/software-catalog/UpsertCatalogKind.rb +9 -0
  69. data/examples/v2/workflow-automation/CreateWorkflow.rb +0 -1
  70. data/examples/v2/workflow-automation/UpdateWorkflow.rb +0 -1
  71. data/lib/datadog_api_client/configuration.rb +203 -17
  72. data/lib/datadog_api_client/inflector.rb +138 -49
  73. data/lib/datadog_api_client/v1/api/snapshots_api.rb +2 -1
  74. data/lib/datadog_api_client/v1/models/monitor.rb +17 -1
  75. data/lib/datadog_api_client/{v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb → v1/models/monitor_draft_status.rb} +11 -6
  76. data/lib/datadog_api_client/v1/models/monitor_options.rb +1 -1
  77. data/lib/datadog_api_client/v1/models/monitor_update_request.rb +17 -1
  78. data/lib/datadog_api_client/v1/models/synthetics_api_test_step_subtype.rb +6 -0
  79. data/lib/datadog_api_client/v1/models/synthetics_assertion_body_hash_target.rb +2 -2
  80. data/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +2 -2
  81. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +2 -2
  82. data/lib/datadog_api_client/v1/models/synthetics_assertion_target_value.rb +63 -0
  83. data/lib/datadog_api_client/v1/models/synthetics_assertion_x_path_target_target.rb +2 -2
  84. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +32 -2
  85. data/lib/datadog_api_client/v2/api/csm_threats_api.rb +424 -52
  86. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +344 -16
  87. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -5
  88. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +25 -3
  89. data/lib/datadog_api_client/v2/api/on_call_api.rb +301 -24
  90. data/lib/datadog_api_client/v2/api/on_call_paging_api.rb +292 -0
  91. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  92. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +146 -0
  93. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +322 -0
  94. data/lib/datadog_api_client/v2/models/action_query_spec_inputs.rb +1 -1
  95. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams.rb → cloud_workload_security_agent_policies_list_response.rb} +5 -5
  96. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +300 -0
  97. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_attributes.rb +167 -0
  98. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_data.rb +144 -0
  99. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_request.rb +123 -0
  100. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_data.rb +125 -0
  101. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_response.rb +105 -0
  102. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_type.rb +26 -0
  103. 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
  104. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_data.rb +154 -0
  105. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_request.rb +123 -0
  106. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_updater_attributes.rb +123 -0
  107. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +24 -4
  108. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_metadata.rb +125 -0
  109. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_restrictions_items.rb → cloud_workload_security_agent_rule_action_set.rb} +62 -33
  110. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +67 -19
  111. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_attributes.rb +83 -5
  112. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_data.rb +2 -2
  113. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_request.rb +2 -2
  114. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_creator_attributes.rb +3 -3
  115. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_data.rb +4 -4
  116. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +1 -1
  117. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_response.rb +2 -2
  118. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_type.rb +1 -1
  119. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_attributes.rb +85 -7
  120. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +4 -4
  121. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_request.rb +2 -2
  122. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_updater_attributes.rb +3 -3
  123. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rules_list_response.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/create_page_request.rb +105 -0
  125. data/lib/datadog_api_client/v2/models/create_page_request_data.rb +133 -0
  126. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes.rb +187 -0
  127. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes_target.rb +115 -0
  128. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items_type.rb → create_page_request_data_type.rb} +3 -3
  129. data/lib/datadog_api_client/v2/models/create_page_response.rb +105 -0
  130. data/lib/datadog_api_client/v2/models/create_page_response_data.rb +133 -0
  131. data/lib/datadog_api_client/v2/models/create_page_response_data_type.rb +26 -0
  132. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +2 -24
  133. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams.rb → data_relationships_teams.rb} +3 -3
  134. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items.rb → data_relationships_teams_data_items.rb} +3 -3
  135. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items_type.rb → data_relationships_teams_data_items_type.rb} +1 -1
  136. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +21 -1
  137. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items.rb → dora_event.rb} +17 -7
  138. data/lib/datadog_api_client/v2/models/{dora_incident_request.rb → dora_failure_request.rb} +4 -4
  139. data/lib/datadog_api_client/v2/models/{dora_incident_request_attributes.rb → dora_failure_request_attributes.rb} +31 -11
  140. data/lib/datadog_api_client/v2/models/{dora_incident_request_data.rb → dora_failure_request_data.rb} +4 -4
  141. data/lib/datadog_api_client/v2/models/{dora_incident_response.rb → dora_failure_response.rb} +5 -5
  142. data/lib/datadog_api_client/v2/models/{dora_incident_response_data.rb → dora_failure_response_data.rb} +6 -6
  143. data/lib/datadog_api_client/v2/models/{dora_incident_type.rb → dora_failure_type.rb} +3 -3
  144. data/lib/datadog_api_client/v2/models/dora_fetch_response.rb +105 -0
  145. data/lib/datadog_api_client/v2/models/dora_list_deployments_request.rb +123 -0
  146. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_attributes.rb +163 -0
  147. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data.rb +133 -0
  148. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data_type.rb +26 -0
  149. data/lib/datadog_api_client/v2/models/dora_list_failures_request.rb +123 -0
  150. data/lib/datadog_api_client/v2/models/dora_list_failures_request_attributes.rb +163 -0
  151. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data.rb +133 -0
  152. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data_type.rb +26 -0
  153. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams.rb → dora_list_response.rb} +5 -5
  154. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +1 -21
  155. data/lib/datadog_api_client/v2/models/escalation.rb +143 -0
  156. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +1 -11
  157. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +2 -2
  158. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +2 -2
  159. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +1 -1
  160. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +2 -12
  161. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +2 -2
  162. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +2 -3
  163. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +2 -2
  164. 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
  165. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb → escalation_policy_step_target_type.rb} +1 -1
  166. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +1 -11
  167. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +2 -2
  168. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +2 -2
  169. data/lib/datadog_api_client/v2/models/escalation_policy_user.rb +143 -0
  170. data/lib/datadog_api_client/v2/models/escalation_policy_user_attributes.rb +125 -0
  171. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items_type.rb → escalation_policy_user_type.rb} +1 -1
  172. data/lib/datadog_api_client/v2/models/escalation_relationships.rb +105 -0
  173. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users.rb → escalation_relationships_responders.rb} +5 -5
  174. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items.rb → escalation_relationships_responders_data_items.rb} +6 -7
  175. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items_type.rb → escalation_relationships_responders_data_items_type.rb} +3 -3
  176. data/lib/datadog_api_client/v2/models/escalation_targets.rb +107 -0
  177. data/lib/datadog_api_client/v2/models/escalation_type.rb +26 -0
  178. data/lib/datadog_api_client/v2/models/finding_attributes.rb +31 -1
  179. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +2 -34
  180. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response.rb +123 -0
  181. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response_data.rb +125 -0
  182. data/lib/datadog_api_client/v2/models/historical_job_options.rb +2 -2
  183. data/lib/datadog_api_client/v2/models/historical_job_query.rb +1 -1
  184. data/lib/datadog_api_client/v2/models/http_integration.rb +0 -6
  185. data/lib/datadog_api_client/v2/models/http_integration_update.rb +1 -14
  186. data/lib/datadog_api_client/v2/models/incident_severity.rb +1 -0
  187. data/lib/datadog_api_client/v2/models/kind_attributes.rb +143 -0
  188. data/lib/datadog_api_client/v2/models/kind_data.rb +153 -0
  189. data/lib/datadog_api_client/v2/models/kind_metadata.rb +115 -0
  190. data/lib/datadog_api_client/v2/models/kind_obj.rb +143 -0
  191. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items_user.rb → kind_response_meta.rb} +11 -11
  192. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  193. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams.rb → list_kind_catalog_response.rb} +17 -7
  194. data/lib/datadog_api_client/v2/models/list_relation_catalog_response.rb +139 -0
  195. data/lib/datadog_api_client/v2/models/list_relation_catalog_response_links.rb +125 -0
  196. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -16
  197. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -16
  198. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -16
  199. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -13
  200. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +1 -1
  201. data/lib/datadog_api_client/v2/models/on_call_page_target_type.rb +28 -0
  202. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items_type.rb → page_urgency.rb} +4 -3
  203. data/lib/datadog_api_client/v2/models/relation_attributes.rb +125 -0
  204. data/lib/datadog_api_client/v2/models/relation_entity.rb +125 -0
  205. data/lib/datadog_api_client/v2/models/relation_include_type.rb +27 -0
  206. data/lib/datadog_api_client/v2/models/relation_meta.rb +135 -0
  207. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams.rb → relation_relationships.rb} +21 -13
  208. data/lib/datadog_api_client/v2/models/relation_response.rb +155 -0
  209. data/lib/datadog_api_client/v2/models/relation_response_meta.rb +115 -0
  210. data/lib/datadog_api_client/v2/models/relation_response_type.rb +26 -0
  211. data/lib/datadog_api_client/v2/models/relation_to_entity.rb +115 -0
  212. data/lib/datadog_api_client/v2/models/resource_filter_attributes.rb +133 -0
  213. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items_type.rb → resource_filter_request_type.rb} +3 -3
  214. data/lib/datadog_api_client/v2/models/routing_rule.rb +153 -0
  215. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +63 -0
  216. data/lib/datadog_api_client/v2/models/routing_rule_attributes.rb +137 -0
  217. data/lib/datadog_api_client/v2/models/routing_rule_relationships.rb +105 -0
  218. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy.rb +105 -0
  219. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items.rb → routing_rule_relationships_policy_data.rb} +6 -6
  220. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data_type.rb +26 -0
  221. data/lib/datadog_api_client/v2/models/routing_rule_type.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +1 -1
  223. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +3 -15
  224. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +4 -4
  225. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +2 -2
  226. data/lib/datadog_api_client/v2/models/schedule_data.rb +1 -1
  227. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +2 -14
  228. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +1 -1
  229. 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
  230. 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
  231. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +1 -1
  232. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +2 -2
  233. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +2 -14
  234. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +4 -4
  235. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +2 -2
  236. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +13 -3
  237. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  238. data/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +1 -1
  239. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +2 -2
  240. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +2 -1
  241. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -1
  242. data/lib/datadog_api_client/v2/models/send_slack_message_action.rb +165 -0
  243. data/lib/datadog_api_client/v2/models/send_slack_message_action_type.rb +26 -0
  244. data/lib/datadog_api_client/v2/models/send_teams_message_action.rb +186 -0
  245. 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
  246. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams.rb → shift.rb} +19 -9
  247. data/lib/datadog_api_client/v2/models/shift_data.rb +153 -0
  248. data/lib/datadog_api_client/v2/models/shift_data_attributes.rb +115 -0
  249. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items.rb → shift_data_relationships.rb} +5 -6
  250. data/lib/datadog_api_client/v2/models/shift_data_relationships_user.rb +123 -0
  251. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items.rb → shift_data_relationships_user_data.rb} +6 -6
  252. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data_type.rb +26 -0
  253. data/lib/datadog_api_client/v2/models/shift_data_type.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/shift_included.rb +62 -0
  255. data/lib/datadog_api_client/v2/models/team_on_call_responders.rb +117 -0
  256. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items.rb → team_on_call_responders_data.rb} +18 -19
  257. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships.rb +115 -0
  258. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations.rb +107 -0
  259. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations_data_items.rb +144 -0
  260. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations_data_items_type.rb +26 -0
  261. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_responders.rb +107 -0
  262. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items.rb → team_on_call_responders_data_relationships_responders_data_items.rb} +6 -6
  263. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_responders_data_items_type.rb +26 -0
  264. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_type.rb +26 -0
  265. data/lib/datadog_api_client/v2/models/team_on_call_responders_included.rb +63 -0
  266. data/lib/datadog_api_client/v2/models/team_reference.rb +1 -11
  267. data/lib/datadog_api_client/v2/models/team_routing_rules.rb +117 -0
  268. data/lib/datadog_api_client/v2/models/team_routing_rules_data.rb +143 -0
  269. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships.rb +105 -0
  270. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules.rb +107 -0
  271. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items.rb +144 -0
  272. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items_type.rb +26 -0
  273. data/lib/datadog_api_client/v2/models/team_routing_rules_data_type.rb +26 -0
  274. data/lib/datadog_api_client/v2/models/team_routing_rules_included.rb +62 -0
  275. data/lib/datadog_api_client/v2/models/team_routing_rules_request.rb +105 -0
  276. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data.rb +143 -0
  277. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_attributes.rb +107 -0
  278. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_type.rb +26 -0
  279. data/lib/datadog_api_client/v2/models/team_routing_rules_request_rule.rb +147 -0
  280. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items.rb → time_restriction.rb} +9 -10
  281. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_interval.rb → time_restrictions.rb} +32 -30
  282. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request.rb +123 -0
  283. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request_data.rb +154 -0
  284. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response.rb +123 -0
  285. 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
  286. data/lib/datadog_api_client/v2/models/upsert_catalog_kind_request.rb +63 -0
  287. data/lib/datadog_api_client/v2/models/upsert_catalog_kind_response.rb +117 -0
  288. data/lib/datadog_api_client/v2/models/urgency.rb +28 -0
  289. data/lib/datadog_api_client/v2/models/user_attributes_status.rb +28 -0
  290. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_end_day.rb → weekday.rb} +2 -2
  291. data/lib/datadog_api_client/version.rb +1 -1
  292. data/repository.datadog.yaml +8 -0
  293. metadata +171 -57
  294. data/.github/workflows/prepare_release.yml +0 -112
  295. data/RELEASING.md +0 -43
  296. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb +0 -28
  297. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +0 -27
  298. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_start_day.rb +0 -32
  299. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  300. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  301. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_interval.rb +0 -144
  302. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  303. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  304. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +0 -105
@@ -27,9 +27,6 @@ module DatadogAPIClient::V2
27
27
  # The team's unique identifier.
28
28
  attr_accessor :id
29
29
 
30
- # Collects the key relationship fields for a team reference, specifically on-call users.
31
- attr_accessor :relationships
32
-
33
30
  # Teams resource type.
34
31
  attr_reader :type
35
32
 
@@ -41,7 +38,6 @@ module DatadogAPIClient::V2
41
38
  {
42
39
  :'attributes' => :'attributes',
43
40
  :'id' => :'id',
44
- :'relationships' => :'relationships',
45
41
  :'type' => :'type'
46
42
  }
47
43
  end
@@ -52,7 +48,6 @@ module DatadogAPIClient::V2
52
48
  {
53
49
  :'attributes' => :'TeamReferenceAttributes',
54
50
  :'id' => :'String',
55
- :'relationships' => :'TeamReferenceRelationships',
56
51
  :'type' => :'TeamReferenceType'
57
52
  }
58
53
  end
@@ -83,10 +78,6 @@ module DatadogAPIClient::V2
83
78
  self.id = attributes[:'id']
84
79
  end
85
80
 
86
- if attributes.key?(:'relationships')
87
- self.relationships = attributes[:'relationships']
88
- end
89
-
90
81
  if attributes.key?(:'type')
91
82
  self.type = attributes[:'type']
92
83
  end
@@ -138,7 +129,6 @@ module DatadogAPIClient::V2
138
129
  self.class == o.class &&
139
130
  attributes == o.attributes &&
140
131
  id == o.id &&
141
- relationships == o.relationships &&
142
132
  type == o.type &&
143
133
  additional_properties == o.additional_properties
144
134
  end
@@ -147,7 +137,7 @@ module DatadogAPIClient::V2
147
137
  # @return [Integer] Hash code
148
138
  # @!visibility private
149
139
  def hash
150
- [attributes, id, relationships, type, additional_properties].hash
140
+ [attributes, id, type, additional_properties].hash
151
141
  end
152
142
  end
153
143
  end
@@ -0,0 +1,117 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Represents a complete set of team routing rules, including data and optionally included related resources.
21
+ class TeamRoutingRules
22
+ include BaseGenericModel
23
+
24
+ # Represents the top-level data object for team routing rules, containing the ID, relationships, and resource type.
25
+ attr_accessor :data
26
+
27
+ # Provides related routing rules or other included resources.
28
+ attr_accessor :included
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'data' => :'data',
37
+ :'included' => :'included'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'data' => :'TeamRoutingRulesData',
46
+ :'included' => :'Array<TeamRoutingRulesIncluded>'
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::TeamRoutingRules` initialize method"
56
+ end
57
+
58
+ self.additional_properties = {}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ self.additional_properties[k.to_sym] = v
63
+ else
64
+ h[k.to_sym] = v
65
+ end
66
+ }
67
+
68
+ if attributes.key?(:'data')
69
+ self.data = attributes[:'data']
70
+ end
71
+
72
+ if attributes.key?(:'included')
73
+ if (value = attributes[:'included']).is_a?(Array)
74
+ self.included = value
75
+ end
76
+ end
77
+ end
78
+
79
+ # Returns the object in the form of hash, with additionalProperties support.
80
+ # @return [Hash] Returns the object in the form of hash
81
+ # @!visibility private
82
+ def to_hash
83
+ hash = {}
84
+ self.class.attribute_map.each_pair do |attr, param|
85
+ value = self.send(attr)
86
+ if value.nil?
87
+ is_nullable = self.class.openapi_nullable.include?(attr)
88
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
89
+ end
90
+
91
+ hash[param] = _to_hash(value)
92
+ end
93
+ self.additional_properties.each_pair do |attr, value|
94
+ hash[attr] = value
95
+ end
96
+ hash
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param o [Object] Object to be compared
101
+ # @!visibility private
102
+ def ==(o)
103
+ return true if self.equal?(o)
104
+ self.class == o.class &&
105
+ data == o.data &&
106
+ included == o.included &&
107
+ additional_properties == o.additional_properties
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Integer] Hash code
112
+ # @!visibility private
113
+ def hash
114
+ [data, included, additional_properties].hash
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,143 @@
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 top-level data object for team routing rules, containing the ID, relationships, and resource type.
21
+ class TeamRoutingRulesData
22
+ include BaseGenericModel
23
+
24
+ # Specifies the unique identifier of this team routing rules record.
25
+ attr_accessor :id
26
+
27
+ # Specifies relationships for team routing rules, including rule references.
28
+ attr_accessor :relationships
29
+
30
+ # Team routing rules resource type.
31
+ attr_reader :type
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'id' => :'id',
40
+ :'relationships' => :'relationships',
41
+ :'type' => :'type'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'id' => :'String',
50
+ :'relationships' => :'TeamRoutingRulesDataRelationships',
51
+ :'type' => :'TeamRoutingRulesDataType'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::TeamRoutingRulesData` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'id')
74
+ self.id = attributes[:'id']
75
+ end
76
+
77
+ if attributes.key?(:'relationships')
78
+ self.relationships = attributes[:'relationships']
79
+ end
80
+
81
+ if attributes.key?(:'type')
82
+ self.type = attributes[:'type']
83
+ end
84
+ end
85
+
86
+ # Check to see if the all the properties in the model are valid
87
+ # @return true if the model is valid
88
+ # @!visibility private
89
+ def valid?
90
+ return false if @type.nil?
91
+ true
92
+ end
93
+
94
+ # Custom attribute writer method with validation
95
+ # @param type [Object] Object to be assigned
96
+ # @!visibility private
97
+ def type=(type)
98
+ if type.nil?
99
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
100
+ end
101
+ @type = type
102
+ end
103
+
104
+ # Returns the object in the form of hash, with additionalProperties support.
105
+ # @return [Hash] Returns the object in the form of hash
106
+ # @!visibility private
107
+ def to_hash
108
+ hash = {}
109
+ self.class.attribute_map.each_pair do |attr, param|
110
+ value = self.send(attr)
111
+ if value.nil?
112
+ is_nullable = self.class.openapi_nullable.include?(attr)
113
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
114
+ end
115
+
116
+ hash[param] = _to_hash(value)
117
+ end
118
+ self.additional_properties.each_pair do |attr, value|
119
+ hash[attr] = value
120
+ end
121
+ hash
122
+ end
123
+
124
+ # Checks equality by comparing each attribute.
125
+ # @param o [Object] Object to be compared
126
+ # @!visibility private
127
+ def ==(o)
128
+ return true if self.equal?(o)
129
+ self.class == o.class &&
130
+ id == o.id &&
131
+ relationships == o.relationships &&
132
+ type == o.type &&
133
+ additional_properties == o.additional_properties
134
+ end
135
+
136
+ # Calculates hash code according to all attributes.
137
+ # @return [Integer] Hash code
138
+ # @!visibility private
139
+ def hash
140
+ [id, relationships, type, additional_properties].hash
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,105 @@
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 relationships for team routing rules, including rule references.
21
+ class TeamRoutingRulesDataRelationships
22
+ include BaseGenericModel
23
+
24
+ # Holds references to a set of routing rules in a relationship.
25
+ attr_accessor :rules
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
+ :'rules' => :'rules'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'rules' => :'TeamRoutingRulesDataRelationshipsRules'
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::TeamRoutingRulesDataRelationships` 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?(:'rules')
64
+ self.rules = attributes[:'rules']
65
+ end
66
+ end
67
+
68
+ # Returns the object in the form of hash, with additionalProperties support.
69
+ # @return [Hash] Returns the object in the form of hash
70
+ # @!visibility private
71
+ def to_hash
72
+ hash = {}
73
+ self.class.attribute_map.each_pair do |attr, param|
74
+ value = self.send(attr)
75
+ if value.nil?
76
+ is_nullable = self.class.openapi_nullable.include?(attr)
77
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
78
+ end
79
+
80
+ hash[param] = _to_hash(value)
81
+ end
82
+ self.additional_properties.each_pair do |attr, value|
83
+ hash[attr] = value
84
+ end
85
+ hash
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param o [Object] Object to be compared
90
+ # @!visibility private
91
+ def ==(o)
92
+ return true if self.equal?(o)
93
+ self.class == o.class &&
94
+ rules == o.rules &&
95
+ additional_properties == o.additional_properties
96
+ end
97
+
98
+ # Calculates hash code according to all attributes.
99
+ # @return [Integer] Hash code
100
+ # @!visibility private
101
+ def hash
102
+ [rules, additional_properties].hash
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,107 @@
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
+ # Holds references to a set of routing rules in a relationship.
21
+ class TeamRoutingRulesDataRelationshipsRules
22
+ include BaseGenericModel
23
+
24
+ # An array of references to the routing rules associated with this team.
25
+ attr_accessor :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' => :'Array<TeamRoutingRulesDataRelationshipsRulesDataItems>'
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::TeamRoutingRulesDataRelationshipsRules` 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
+ if (value = attributes[:'data']).is_a?(Array)
65
+ self.data = value
66
+ end
67
+ end
68
+ end
69
+
70
+ # Returns the object in the form of hash, with additionalProperties support.
71
+ # @return [Hash] Returns the object in the form of hash
72
+ # @!visibility private
73
+ def to_hash
74
+ hash = {}
75
+ self.class.attribute_map.each_pair do |attr, param|
76
+ value = self.send(attr)
77
+ if value.nil?
78
+ is_nullable = self.class.openapi_nullable.include?(attr)
79
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
80
+ end
81
+
82
+ hash[param] = _to_hash(value)
83
+ end
84
+ self.additional_properties.each_pair do |attr, value|
85
+ hash[attr] = value
86
+ end
87
+ hash
88
+ end
89
+
90
+ # Checks equality by comparing each attribute.
91
+ # @param o [Object] Object to be compared
92
+ # @!visibility private
93
+ def ==(o)
94
+ return true if self.equal?(o)
95
+ self.class == o.class &&
96
+ data == o.data &&
97
+ additional_properties == o.additional_properties
98
+ end
99
+
100
+ # Calculates hash code according to all attributes.
101
+ # @return [Integer] Hash code
102
+ # @!visibility private
103
+ def hash
104
+ [data, additional_properties].hash
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,144 @@
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 relationship item to link a routing rule by its ID and type.
21
+ class TeamRoutingRulesDataRelationshipsRulesDataItems
22
+ include BaseGenericModel
23
+
24
+ # Specifies the unique identifier for the related routing rule.
25
+ attr_reader :id
26
+
27
+ # Indicates that the resource is of type 'team_routing_rules'.
28
+ attr_reader :type
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
+ :'id' => :'id',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'id' => :'String',
46
+ :'type' => :'TeamRoutingRulesDataRelationshipsRulesDataItemsType'
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::TeamRoutingRulesDataRelationshipsRulesDataItems` 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?(:'id')
69
+ self.id = attributes[:'id']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
+ end
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ # @!visibility private
80
+ def valid?
81
+ return false if @id.nil?
82
+ return false if @type.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param id [Object] Object to be assigned
88
+ # @!visibility private
89
+ def id=(id)
90
+ if id.nil?
91
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
92
+ end
93
+ @id = id
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param type [Object] Object to be assigned
98
+ # @!visibility private
99
+ def type=(type)
100
+ if type.nil?
101
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
102
+ end
103
+ @type = type
104
+ end
105
+
106
+ # Returns the object in the form of hash, with additionalProperties support.
107
+ # @return [Hash] Returns the object in the form of hash
108
+ # @!visibility private
109
+ def to_hash
110
+ hash = {}
111
+ self.class.attribute_map.each_pair do |attr, param|
112
+ value = self.send(attr)
113
+ if value.nil?
114
+ is_nullable = self.class.openapi_nullable.include?(attr)
115
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
116
+ end
117
+
118
+ hash[param] = _to_hash(value)
119
+ end
120
+ self.additional_properties.each_pair do |attr, value|
121
+ hash[attr] = value
122
+ end
123
+ hash
124
+ end
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param o [Object] Object to be compared
128
+ # @!visibility private
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ id == o.id &&
133
+ type == o.type &&
134
+ additional_properties == o.additional_properties
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Integer] Hash code
139
+ # @!visibility private
140
+ def hash
141
+ [id, type, additional_properties].hash
142
+ end
143
+ end
144
+ 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 'team_routing_rules'.
21
+ class TeamRoutingRulesDataRelationshipsRulesDataItemsType
22
+ include BaseEnumModel
23
+
24
+ TEAM_ROUTING_RULES = "team_routing_rules".freeze
25
+ end
26
+ end