datadog_api_client 2.45.0 → 2.47.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 (342) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +186 -7
  3. data/.generator/schemas/v2/openapi.yaml +5147 -312
  4. data/.pre-commit-config.yaml +4 -0
  5. data/CHANGELOG.md +46 -0
  6. data/examples/v1/dashboards/CreateDashboard_3685886950.rb +36 -0
  7. data/examples/v1/dashboards/CreateDashboard_865807520.rb +36 -0
  8. data/examples/v1/dashboards/CreateDashboard_9836563.rb +118 -0
  9. data/examples/v1/monitors/CreateMonitor_3541766733.rb +32 -0
  10. data/examples/v2/apm/GetServiceList.rb +5 -0
  11. data/examples/v2/aws-integration/CreateAWSAccount.rb +11 -0
  12. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +11 -0
  13. data/examples/v2/aws-integration/UpdateAWSAccount.rb +11 -0
  14. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1295653933.rb +3 -1
  15. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1363354233.rb +1 -1
  16. data/examples/v2/deployment-gates/CreateDeploymentGate.rb +20 -0
  17. data/examples/v2/deployment-gates/CreateDeploymentRule.rb +25 -0
  18. data/examples/v2/deployment-gates/DeleteDeploymentGate.rb +11 -0
  19. data/examples/v2/deployment-gates/DeleteDeploymentRule.rb +14 -0
  20. data/examples/v2/deployment-gates/GetDeploymentGate.rb +11 -0
  21. data/examples/v2/deployment-gates/GetDeploymentGateRules.rb +11 -0
  22. data/examples/v2/deployment-gates/GetDeploymentRule.rb +14 -0
  23. data/examples/v2/deployment-gates/UpdateDeploymentGate.rb +21 -0
  24. data/examples/v2/deployment-gates/UpdateDeploymentRule.rb +27 -0
  25. data/examples/v2/events/CreateEvent.rb +1 -0
  26. data/examples/v2/fleet-automation/GetFleetAgentInfo.rb +8 -0
  27. data/examples/v2/fleet-automation/ListFleetAgents.rb +8 -0
  28. data/examples/v2/logs-restriction-queries/AddRoleToRestrictionQuery.rb +21 -0
  29. data/examples/v2/logs-restriction-queries/CreateRestrictionQuery.rb +17 -0
  30. data/examples/v2/logs-restriction-queries/DeleteRestrictionQuery.rb +11 -0
  31. data/examples/v2/logs-restriction-queries/GetRestrictionQuery.rb +11 -0
  32. data/examples/v2/logs-restriction-queries/GetRoleRestrictionQuery.rb +11 -0
  33. data/examples/v2/logs-restriction-queries/ListRestrictionQueries.rb +8 -0
  34. data/examples/v2/logs-restriction-queries/ListRestrictionQueryRoles.rb +11 -0
  35. data/examples/v2/logs-restriction-queries/ListUserRestrictionQueries.rb +11 -0
  36. data/examples/v2/logs-restriction-queries/RemoveRoleFromRestrictionQuery.rb +21 -0
  37. data/examples/v2/logs-restriction-queries/ReplaceRestrictionQuery.rb +20 -0
  38. data/examples/v2/logs-restriction-queries/UpdateRestrictionQuery.rb +20 -0
  39. data/examples/v2/monitors/CreateMonitorNotificationRule_1379932371.rb +21 -0
  40. data/examples/v2/monitors/UpdateMonitorNotificationRule_1446058210.rb +24 -0
  41. data/examples/v2/observability-pipelines/CreatePipeline.rb +12 -4
  42. data/examples/v2/observability-pipelines/UpdatePipeline.rb +12 -4
  43. data/examples/v2/observability-pipelines/ValidatePipeline.rb +12 -4
  44. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +9 -0
  45. data/examples/v2/on-call/CreateUserNotificationChannel.rb +23 -0
  46. data/examples/v2/on-call/DeleteUserNotificationChannel.rb +11 -0
  47. data/examples/v2/on-call/GetScheduleOnCallUser.rb +1 -1
  48. data/examples/v2/on-call/GetUserNotificationChannel.rb +11 -0
  49. data/examples/v2/on-call/ListUserNotificationChannels.rb +8 -0
  50. data/examples/v2/reference-tables/CreateReferenceTable.rb +23 -14
  51. data/examples/v2/reference-tables/DeleteRows.rb +14 -0
  52. data/examples/v2/reference-tables/UpsertRows.rb +19 -0
  53. data/examples/v2/security-monitoring/AttachCase.rb +26 -0
  54. data/examples/v2/security-monitoring/AttachCase_897782765.rb +22 -0
  55. data/examples/v2/security-monitoring/AttachJiraIssue.rb +34 -0
  56. data/examples/v2/security-monitoring/AttachJiraIssue_3042842144.rb +30 -0
  57. data/examples/v2/security-monitoring/CreateCases.rb +56 -0
  58. data/examples/v2/security-monitoring/CreateCases_2385516013.rb +33 -0
  59. data/examples/v2/security-monitoring/CreateCases_2798851680.rb +37 -0
  60. data/examples/v2/security-monitoring/CreateJiraIssues.rb +41 -0
  61. data/examples/v2/security-monitoring/DetachCase.rb +21 -0
  62. data/examples/v2/security-monitoring/GetSecretsRules.rb +1 -1
  63. data/examples/v2/security-monitoring/GetSuppressionVersionHistory.rb +8 -0
  64. data/examples/v2/security-monitoring/ValidateSecurityMonitoringRule_2609327779.rb +54 -0
  65. data/examples/v2/teams/AddTeamHierarchyLink.rb +31 -0
  66. data/examples/v2/{team-connections → teams}/CreateTeamConnections.rb +1 -1
  67. data/examples/v2/{team-connections → teams}/DeleteTeamConnections.rb +1 -1
  68. data/examples/v2/teams/GetTeamHierarchyLink.rb +8 -0
  69. data/examples/v2/teams/GetTeamSync.rb +8 -0
  70. data/examples/v2/{team-connections → teams}/ListTeamConnections.rb +1 -1
  71. data/examples/v2/{team-connections → teams}/ListTeamConnections_1473516764.rb +1 -1
  72. data/examples/v2/{team-connections → teams}/ListTeamConnections_2418873869.rb +1 -1
  73. data/examples/v2/teams/ListTeamHierarchyLinks.rb +15 -0
  74. data/examples/v2/teams/ListTeamHierarchyLinks_3360757486.rb +5 -0
  75. data/examples/v2/teams/RemoveTeamHierarchyLink.rb +8 -0
  76. data/lib/datadog_api_client/configuration.rb +29 -6
  77. data/lib/datadog_api_client/inflector.rb +180 -5
  78. data/lib/datadog_api_client/v1/api/monitors_api.rb +2 -0
  79. data/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb +13 -3
  80. data/lib/datadog_api_client/v1/models/formula_and_function_metric_semantic_mode.rb +27 -0
  81. data/lib/datadog_api_client/v1/models/geomap_widget_definition.rb +4 -5
  82. data/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb +1 -1
  83. data/lib/datadog_api_client/v1/models/geomap_widget_request.rb +37 -3
  84. data/lib/datadog_api_client/v1/models/geomap_widget_request_style.rb +105 -0
  85. data/lib/datadog_api_client/v1/models/monitor.rb +13 -1
  86. data/lib/datadog_api_client/v1/models/monitor_asset.rb +186 -0
  87. data/lib/datadog_api_client/v1/models/monitor_asset_category.rb +26 -0
  88. data/lib/datadog_api_client/v1/models/monitor_asset_resource_type.rb +26 -0
  89. data/lib/datadog_api_client/v1/models/monitor_search_response.rb +1 -1
  90. data/lib/datadog_api_client/v1/models/monitor_update_request.rb +14 -1
  91. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +51 -1
  92. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +51 -1
  93. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +51 -1
  94. data/lib/datadog_api_client/v2/api/apm_api.rb +83 -0
  95. data/lib/datadog_api_client/v2/api/deployment_gates_api.rb +703 -0
  96. data/lib/datadog_api_client/v2/api/fleet_automation_api.rb +166 -1
  97. data/lib/datadog_api_client/v2/api/incidents_api.rb +0 -18
  98. data/lib/datadog_api_client/v2/api/logs_restriction_queries_api.rb +842 -0
  99. data/lib/datadog_api_client/v2/api/on_call_api.rb +279 -2
  100. data/lib/datadog_api_client/v2/api/reference_tables_api.rb +144 -0
  101. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +448 -10
  102. data/lib/datadog_api_client/v2/api/teams_api.rb +634 -1
  103. data/lib/datadog_api_client/v2/models/attach_case_request.rb +105 -0
  104. data/lib/datadog_api_client/v2/models/attach_case_request_data.rb +154 -0
  105. data/lib/datadog_api_client/v2/models/attach_case_request_data_relationships.rb +123 -0
  106. data/lib/datadog_api_client/v2/models/attach_jira_issue_request.rb +105 -0
  107. data/lib/datadog_api_client/v2/models/attach_jira_issue_request_data.rb +143 -0
  108. data/lib/datadog_api_client/v2/models/attach_jira_issue_request_data_attributes.rb +123 -0
  109. data/lib/datadog_api_client/v2/models/attach_jira_issue_request_data_relationships.rb +144 -0
  110. data/lib/datadog_api_client/v2/models/aws_account_create_request_attributes.rb +11 -1
  111. data/lib/datadog_api_client/v2/models/aws_account_response_attributes.rb +11 -1
  112. data/lib/datadog_api_client/v2/models/aws_account_update_request_attributes.rb +11 -1
  113. data/lib/datadog_api_client/v2/models/awsccm_config.rb +107 -0
  114. data/lib/datadog_api_client/v2/models/batch_delete_rows_request_array.rb +129 -0
  115. data/lib/datadog_api_client/v2/models/batch_delete_rows_request_data.rb +144 -0
  116. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_array.rb +129 -0
  117. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_data.rb +154 -0
  118. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_data_attributes.rb +123 -0
  119. data/lib/datadog_api_client/v2/models/case_data_type.rb +26 -0
  120. data/lib/datadog_api_client/v2/models/case_insights_items.rb +125 -0
  121. data/lib/datadog_api_client/v2/models/case_management_project.rb +123 -0
  122. data/lib/datadog_api_client/v2/models/case_management_project_data.rb +144 -0
  123. data/lib/datadog_api_client/v2/models/case_management_project_data_type.rb +26 -0
  124. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +11 -1
  125. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_version.rb +2 -2
  126. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +2 -2
  127. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_hash.rb +105 -0
  128. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_set.rb +1 -1
  129. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_set_value.rb +64 -0
  130. data/lib/datadog_api_client/v2/models/configured_schedule.rb +186 -0
  131. data/lib/datadog_api_client/v2/models/configured_schedule_target.rb +144 -0
  132. data/lib/datadog_api_client/v2/models/configured_schedule_target_attributes.rb +123 -0
  133. data/lib/datadog_api_client/v2/models/configured_schedule_target_relationships.rb +123 -0
  134. data/lib/datadog_api_client/v2/models/configured_schedule_target_relationships_schedule.rb +123 -0
  135. data/lib/datadog_api_client/v2/models/configured_schedule_target_type.rb +26 -0
  136. data/lib/datadog_api_client/v2/models/create_case_request_array.rb +125 -0
  137. data/lib/datadog_api_client/v2/models/create_case_request_data.rb +143 -0
  138. data/lib/datadog_api_client/v2/models/create_case_request_data_attributes.rb +135 -0
  139. data/lib/datadog_api_client/v2/models/create_case_request_data_relationships.rb +144 -0
  140. data/lib/datadog_api_client/v2/models/create_deployment_gate_params.rb +123 -0
  141. data/lib/datadog_api_client/v2/models/create_deployment_gate_params_data.rb +144 -0
  142. data/lib/datadog_api_client/v2/models/create_deployment_gate_params_data_attributes.rb +164 -0
  143. data/lib/datadog_api_client/v2/models/create_deployment_rule_params.rb +105 -0
  144. data/lib/datadog_api_client/v2/models/create_deployment_rule_params_data.rb +144 -0
  145. data/lib/datadog_api_client/v2/models/create_deployment_rule_params_data_attributes.rb +175 -0
  146. data/lib/datadog_api_client/v2/models/create_email_notification_channel_config.rb +167 -0
  147. data/lib/datadog_api_client/v2/models/create_jira_issue_request_array.rb +125 -0
  148. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data.rb +143 -0
  149. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data_attributes.rb +145 -0
  150. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data_relationships.rb +144 -0
  151. data/lib/datadog_api_client/v2/models/create_notification_channel_attributes.rb +105 -0
  152. data/lib/datadog_api_client/v2/models/create_notification_channel_config.rb +63 -0
  153. data/lib/datadog_api_client/v2/models/create_notification_channel_data.rb +133 -0
  154. data/lib/datadog_api_client/v2/models/create_phone_notification_channel_config.rb +144 -0
  155. data/lib/datadog_api_client/v2/models/create_user_notification_channel_request.rb +123 -0
  156. data/lib/datadog_api_client/v2/models/data_export_config.rb +145 -0
  157. data/lib/datadog_api_client/v2/models/deployment_gate_data_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/deployment_gate_response.rb +105 -0
  159. data/lib/datadog_api_client/v2/models/deployment_gate_response_data.rb +165 -0
  160. data/lib/datadog_api_client/v2/models/deployment_gate_response_data_attributes.rb +248 -0
  161. data/lib/datadog_api_client/v2/models/deployment_gate_response_data_attributes_created_by.rb +143 -0
  162. data/lib/datadog_api_client/v2/models/deployment_gate_response_data_attributes_updated_by.rb +143 -0
  163. data/lib/datadog_api_client/v2/models/deployment_gate_rules_response.rb +105 -0
  164. data/lib/datadog_api_client/v2/models/deployment_rule_data_type.rb +26 -0
  165. data/lib/datadog_api_client/v2/models/{table_result_v2_data_attributes_file_metadata_local_file.rb → deployment_rule_options_faulty_deployment_detection.rb} +21 -19
  166. data/lib/datadog_api_client/v2/models/deployment_rule_options_monitor.rb +108 -0
  167. data/lib/datadog_api_client/v2/models/deployment_rule_response.rb +105 -0
  168. data/lib/datadog_api_client/v2/models/deployment_rule_response_data.rb +165 -0
  169. data/lib/datadog_api_client/v2/models/deployment_rule_response_data_attributes.rb +269 -0
  170. data/lib/datadog_api_client/v2/models/deployment_rule_response_data_attributes_created_by.rb +143 -0
  171. data/lib/datadog_api_client/v2/models/deployment_rule_response_data_attributes_type.rb +27 -0
  172. data/lib/datadog_api_client/v2/models/deployment_rule_response_data_attributes_updated_by.rb +143 -0
  173. data/lib/datadog_api_client/v2/models/deployment_rules_options.rb +63 -0
  174. data/lib/datadog_api_client/v2/models/detach_case_request.rb +105 -0
  175. data/lib/datadog_api_client/v2/models/detach_case_request_data.rb +133 -0
  176. data/lib/datadog_api_client/v2/models/detach_case_request_data_relationships.rb +123 -0
  177. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +28 -1
  178. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +16 -1
  179. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +20 -1
  180. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +3 -2
  181. data/lib/datadog_api_client/v2/models/escalation_policy_step_target.rb +12 -2
  182. data/lib/datadog_api_client/v2/models/escalation_policy_step_target_config.rb +105 -0
  183. data/lib/datadog_api_client/v2/models/escalation_policy_step_target_config_schedule.rb +105 -0
  184. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +28 -1
  185. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +16 -1
  186. data/lib/datadog_api_client/v2/models/escalation_target.rb +3 -2
  187. data/lib/datadog_api_client/v2/models/event_payload.rb +26 -1
  188. data/lib/datadog_api_client/v2/models/finding_case_response.rb +105 -0
  189. data/lib/datadog_api_client/v2/models/finding_case_response_array.rb +125 -0
  190. data/lib/datadog_api_client/v2/models/finding_case_response_data.rb +153 -0
  191. data/lib/datadog_api_client/v2/models/finding_case_response_data_attributes.rb +277 -0
  192. data/lib/datadog_api_client/v2/models/finding_case_response_data_relationships.rb +125 -0
  193. data/lib/datadog_api_client/v2/models/finding_data.rb +144 -0
  194. data/lib/datadog_api_client/v2/models/finding_data_type.rb +26 -0
  195. data/lib/datadog_api_client/v2/models/finding_jira_issue.rb +125 -0
  196. data/lib/datadog_api_client/v2/models/finding_jira_issue_result.rb +135 -0
  197. data/lib/datadog_api_client/v2/models/findings.rb +107 -0
  198. data/lib/datadog_api_client/v2/models/fleet_agent_attributes.rb +327 -0
  199. data/lib/datadog_api_client/v2/models/fleet_agent_attributes_tags_items.rb +115 -0
  200. data/lib/datadog_api_client/v2/models/fleet_agent_info.rb +165 -0
  201. data/lib/datadog_api_client/v2/models/fleet_agent_info_attributes.rb +137 -0
  202. data/lib/datadog_api_client/v2/models/fleet_agent_info_details.rb +403 -0
  203. data/lib/datadog_api_client/v2/models/fleet_agent_info_resource_type.rb +26 -0
  204. data/lib/datadog_api_client/v2/models/fleet_agent_info_response.rb +123 -0
  205. data/lib/datadog_api_client/v2/models/fleet_agents_response.rb +133 -0
  206. data/lib/datadog_api_client/v2/models/fleet_agents_response_data.rb +165 -0
  207. data/lib/datadog_api_client/v2/models/fleet_agents_response_data_attributes.rb +107 -0
  208. data/lib/datadog_api_client/v2/models/fleet_agents_response_meta.rb +105 -0
  209. data/lib/datadog_api_client/v2/models/fleet_configuration_file.rb +125 -0
  210. data/lib/datadog_api_client/v2/models/fleet_configuration_layer.rb +155 -0
  211. data/lib/datadog_api_client/v2/models/fleet_detected_integration.rb +115 -0
  212. data/lib/datadog_api_client/v2/models/fleet_integration_details.rb +197 -0
  213. data/lib/datadog_api_client/v2/models/fleet_integrations_by_status.rb +165 -0
  214. data/lib/datadog_api_client/v2/models/get_suppression_version_history_data.rb +125 -0
  215. data/lib/datadog_api_client/v2/models/get_suppression_version_history_data_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/get_suppression_version_history_response.rb +105 -0
  217. data/lib/datadog_api_client/v2/models/httpcd_gates_bad_request_response.rb +107 -0
  218. data/lib/datadog_api_client/v2/models/httpcd_gates_not_found_response.rb +107 -0
  219. data/lib/datadog_api_client/v2/models/httpcd_rules_not_found_response.rb +107 -0
  220. data/lib/datadog_api_client/v2/models/jira_issues_data_type.rb +26 -0
  221. data/lib/datadog_api_client/v2/models/layer_attributes.rb +13 -3
  222. data/lib/datadog_api_client/v2/models/library.rb +13 -1
  223. data/lib/datadog_api_client/v2/models/list_deployment_rule_response_data.rb +165 -0
  224. data/lib/datadog_api_client/v2/models/list_deployment_rules_data_type.rb +26 -0
  225. data/lib/datadog_api_client/v2/models/list_deployment_rules_response_data_attributes.rb +107 -0
  226. data/lib/datadog_api_client/v2/models/list_notification_channels_response.rb +107 -0
  227. data/lib/datadog_api_client/v2/models/logs_restriction_queries_type.rb +26 -0
  228. data/lib/datadog_api_client/v2/models/monitor_notification_rule_attributes.rb +2 -2
  229. data/lib/datadog_api_client/v2/models/monitor_notification_rule_condition.rb +1 -1
  230. data/lib/datadog_api_client/v2/models/monitor_notification_rule_conditional_recipients.rb +2 -2
  231. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter.rb +2 -1
  232. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter_scope.rb +106 -0
  233. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter_tags.rb +2 -2
  234. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_attributes.rb +2 -2
  235. data/lib/datadog_api_client/v2/models/notification_channel.rb +105 -0
  236. data/lib/datadog_api_client/v2/models/notification_channel_attributes.rb +115 -0
  237. data/lib/datadog_api_client/v2/models/notification_channel_config.rb +64 -0
  238. data/lib/datadog_api_client/v2/models/notification_channel_data.rb +143 -0
  239. data/lib/datadog_api_client/v2/models/notification_channel_email_config.rb +167 -0
  240. data/lib/datadog_api_client/v2/models/notification_channel_email_config_type.rb +26 -0
  241. data/lib/datadog_api_client/v2/models/notification_channel_email_format_type.rb +27 -0
  242. data/lib/datadog_api_client/v2/models/notification_channel_phone_config.rb +225 -0
  243. data/lib/datadog_api_client/v2/models/notification_channel_phone_config_type.rb +26 -0
  244. data/lib/datadog_api_client/v2/models/notification_channel_push_config.rb +165 -0
  245. data/lib/datadog_api_client/v2/models/notification_channel_push_config_type.rb +26 -0
  246. data/lib/datadog_api_client/v2/models/notification_channel_type.rb +26 -0
  247. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +22 -24
  248. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +22 -24
  249. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +2 -2
  250. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_group.rb +211 -0
  251. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor.rb +22 -24
  252. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor_remap.rb +1 -12
  253. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_tags_processor.rb +22 -24
  254. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +22 -24
  255. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +22 -24
  256. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +22 -24
  257. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +24 -48
  258. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +1 -12
  259. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -24
  260. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +1 -12
  261. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +22 -24
  262. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +22 -24
  263. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +22 -24
  264. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +18 -31
  265. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +22 -24
  266. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +22 -24
  267. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +22 -24
  268. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +22 -24
  269. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +22 -24
  270. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +22 -24
  271. data/lib/datadog_api_client/v2/models/relationship_to_user_team_permission.rb +8 -0
  272. data/lib/datadog_api_client/v2/models/restriction_query_attributes.rb +165 -0
  273. data/lib/datadog_api_client/v2/models/restriction_query_create_attributes.rb +123 -0
  274. data/lib/datadog_api_client/v2/models/restriction_query_create_data.rb +115 -0
  275. data/lib/datadog_api_client/v2/models/restriction_query_create_payload.rb +105 -0
  276. data/lib/datadog_api_client/v2/models/restriction_query_list_response.rb +107 -0
  277. data/lib/datadog_api_client/v2/models/restriction_query_response_included_item.rb +62 -0
  278. data/lib/datadog_api_client/v2/models/restriction_query_role.rb +165 -0
  279. data/lib/datadog_api_client/v2/models/restriction_query_role_attribute.rb +105 -0
  280. data/lib/datadog_api_client/v2/models/restriction_query_roles_response.rb +107 -0
  281. data/lib/datadog_api_client/v2/models/restriction_query_update_attributes.rb +123 -0
  282. data/lib/datadog_api_client/v2/models/restriction_query_update_data.rb +115 -0
  283. data/lib/datadog_api_client/v2/models/restriction_query_update_payload.rb +105 -0
  284. data/lib/datadog_api_client/v2/models/restriction_query_with_relationships.rb +135 -0
  285. data/lib/datadog_api_client/v2/models/restriction_query_with_relationships_response.rb +117 -0
  286. data/lib/datadog_api_client/v2/models/restriction_query_without_relationships.rb +125 -0
  287. data/lib/datadog_api_client/v2/models/restriction_query_without_relationships_response.rb +105 -0
  288. data/lib/datadog_api_client/v2/models/rule_versions.rb +1 -1
  289. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +13 -3
  290. data/lib/datadog_api_client/v2/models/schedule_target.rb +1 -1
  291. data/lib/datadog_api_client/v2/models/schedule_target_position.rb +28 -0
  292. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +13 -3
  293. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +11 -1
  294. data/lib/datadog_api_client/v2/models/service_list.rb +105 -0
  295. data/lib/datadog_api_client/v2/models/service_list_data.rb +143 -0
  296. data/lib/datadog_api_client/v2/models/service_list_data_attributes.rb +119 -0
  297. data/lib/datadog_api_client/v2/models/service_list_data_attributes_metadata_items.rb +115 -0
  298. data/lib/datadog_api_client/v2/models/service_list_data_type.rb +26 -0
  299. data/lib/datadog_api_client/v2/models/suppression_version_history.rb +133 -0
  300. data/lib/datadog_api_client/v2/models/suppression_versions.rb +117 -0
  301. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes.rb +8 -0
  302. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata.rb +101 -36
  303. data/lib/datadog_api_client/v2/models/team_attributes.rb +13 -1
  304. data/lib/datadog_api_client/v2/models/team_hierarchy_link.rb +175 -0
  305. data/lib/datadog_api_client/v2/models/team_hierarchy_link_attributes.rb +144 -0
  306. data/lib/datadog_api_client/v2/models/team_hierarchy_link_create.rb +144 -0
  307. data/lib/datadog_api_client/v2/models/team_hierarchy_link_create_relationships.rb +144 -0
  308. data/lib/datadog_api_client/v2/models/team_hierarchy_link_create_request.rb +123 -0
  309. data/lib/datadog_api_client/v2/models/team_hierarchy_link_create_team.rb +144 -0
  310. data/lib/datadog_api_client/v2/models/team_hierarchy_link_create_team_relationship.rb +123 -0
  311. data/lib/datadog_api_client/v2/models/team_hierarchy_link_relationships.rb +144 -0
  312. data/lib/datadog_api_client/v2/models/team_hierarchy_link_response.rb +127 -0
  313. data/lib/datadog_api_client/v2/models/team_hierarchy_link_team.rb +154 -0
  314. data/lib/datadog_api_client/v2/models/team_hierarchy_link_team_attributes.rb +223 -0
  315. data/lib/datadog_api_client/v2/models/team_hierarchy_link_team_relationship.rb +123 -0
  316. data/lib/datadog_api_client/v2/models/team_hierarchy_link_type.rb +26 -0
  317. data/lib/datadog_api_client/v2/models/team_hierarchy_links_response.rb +139 -0
  318. data/lib/datadog_api_client/v2/models/team_sync_attributes.rb +22 -2
  319. data/lib/datadog_api_client/v2/models/team_sync_attributes_frequency.rb +28 -0
  320. data/lib/datadog_api_client/v2/models/team_sync_attributes_type.rb +2 -1
  321. data/lib/datadog_api_client/v2/models/team_sync_data.rb +12 -2
  322. data/lib/datadog_api_client/v2/models/team_sync_request.rb +1 -1
  323. data/lib/datadog_api_client/v2/models/team_sync_response.rb +107 -0
  324. data/lib/datadog_api_client/v2/models/teams_hierarchy_links_response_links.rb +156 -0
  325. data/lib/datadog_api_client/v2/models/teams_hierarchy_links_response_meta.rb +105 -0
  326. data/lib/datadog_api_client/v2/models/teams_hierarchy_links_response_meta_page.rb +184 -0
  327. data/lib/datadog_api_client/v2/models/threat_hunting_job_response_attributes.rb +13 -3
  328. data/lib/datadog_api_client/v2/models/update_deployment_gate_params.rb +123 -0
  329. data/lib/datadog_api_client/v2/models/update_deployment_gate_params_data.rb +165 -0
  330. data/lib/datadog_api_client/v2/models/update_deployment_gate_params_data_attributes.rb +123 -0
  331. data/lib/datadog_api_client/v2/models/update_deployment_rule_params.rb +123 -0
  332. data/lib/datadog_api_client/v2/models/update_deployment_rule_params_data.rb +144 -0
  333. data/lib/datadog_api_client/v2/models/update_deployment_rule_params_data_attributes.rb +165 -0
  334. data/lib/datadog_api_client/v2/models/{rule_version_update.rb → version_history_update.rb} +3 -3
  335. data/lib/datadog_api_client/v2/models/{rule_version_update_type.rb → version_history_update_type.rb} +1 -1
  336. data/lib/datadog_api_client/v2/models/vulnerability_attributes.rb +11 -1
  337. data/lib/datadog_api_client/v2/models/vulnerability_ecosystem.rb +6 -1
  338. data/lib/datadog_api_client/v2/models/vulnerability_tool.rb +1 -0
  339. data/lib/datadog_api_client/version.rb +1 -1
  340. metadata +238 -11
  341. data/lib/datadog_api_client/v2/api/team_connections_api.rb +0 -272
  342. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_cloud_storage.rb +0 -138
@@ -36,11 +36,16 @@ module DatadogAPIClient::V2
36
36
  # Add a member team.
37
37
  # Adds the team given by the `id` in the body as a member team of the super team.
38
38
  #
39
+ # **Note**: This API is deprecated. For creating team hierarchy links, use the team hierarchy links API: `POST /api/v2/team-hierarchy-links`.
40
+ #
41
+ # @deprecated This API is deprecated.
42
+ #
39
43
  # @param super_team_id [String] None
40
44
  # @param body [AddMemberTeamRequest]
41
45
  # @param opts [Hash] the optional parameters
42
46
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
43
47
  def add_member_team_with_http_info(super_team_id, body, opts = {})
48
+ warn "[DEPRECATION] `AddMemberTeam` is deprecated."
44
49
  unstable_enabled = @api_client.config.unstable_operations["v2.add_member_team".to_sym]
45
50
  if unstable_enabled
46
51
  @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.add_member_team")
@@ -102,6 +107,73 @@ module DatadogAPIClient::V2
102
107
  return data, status_code, headers
103
108
  end
104
109
 
110
+ # Create a team hierarchy link.
111
+ #
112
+ # @see #add_team_hierarchy_link_with_http_info
113
+ def add_team_hierarchy_link(body, opts = {})
114
+ data, _status_code, _headers = add_team_hierarchy_link_with_http_info(body, opts)
115
+ data
116
+ end
117
+
118
+ # Create a team hierarchy link.
119
+ #
120
+ # Create a new team hierarchy link between a parent team and a sub team.
121
+ #
122
+ # @param body [TeamHierarchyLinkCreateRequest]
123
+ # @param opts [Hash] the optional parameters
124
+ # @return [Array<(TeamHierarchyLinkResponse, Integer, Hash)>] TeamHierarchyLinkResponse data, response status code and response headers
125
+ def add_team_hierarchy_link_with_http_info(body, opts = {})
126
+
127
+ if @api_client.config.debugging
128
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.add_team_hierarchy_link ...'
129
+ end
130
+ # verify the required parameter 'body' is set
131
+ if @api_client.config.client_side_validation && body.nil?
132
+ fail ArgumentError, "Missing the required parameter 'body' when calling TeamsAPI.add_team_hierarchy_link"
133
+ end
134
+ # resource path
135
+ local_var_path = '/api/v2/team-hierarchy-links'
136
+
137
+ # query parameters
138
+ query_params = opts[:query_params] || {}
139
+
140
+ # header parameters
141
+ header_params = opts[:header_params] || {}
142
+ # HTTP header 'Accept' (if needed)
143
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
144
+ # HTTP header 'Content-Type'
145
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
146
+
147
+ # form parameters
148
+ form_params = opts[:form_params] || {}
149
+
150
+ # http body (model)
151
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
152
+
153
+ # return_type
154
+ return_type = opts[:debug_return_type] || 'TeamHierarchyLinkResponse'
155
+
156
+ # auth_names
157
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
158
+
159
+ new_options = opts.merge(
160
+ :operation => :add_team_hierarchy_link,
161
+ :header_params => header_params,
162
+ :query_params => query_params,
163
+ :form_params => form_params,
164
+ :body => post_body,
165
+ :auth_names => auth_names,
166
+ :return_type => return_type,
167
+ :api_version => "V2"
168
+ )
169
+
170
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
171
+ if @api_client.config.debugging
172
+ @api_client.config.logger.debug "API called: TeamsAPI#add_team_hierarchy_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
173
+ end
174
+ return data, status_code, headers
175
+ end
176
+
105
177
  # Create a team.
106
178
  #
107
179
  # @see #create_team_with_http_info
@@ -170,6 +242,79 @@ module DatadogAPIClient::V2
170
242
  return data, status_code, headers
171
243
  end
172
244
 
245
+ # Create team connections.
246
+ #
247
+ # @see #create_team_connections_with_http_info
248
+ def create_team_connections(body, opts = {})
249
+ data, _status_code, _headers = create_team_connections_with_http_info(body, opts)
250
+ data
251
+ end
252
+
253
+ # Create team connections.
254
+ #
255
+ # Create multiple team connections.
256
+ #
257
+ # @param body [TeamConnectionCreateRequest]
258
+ # @param opts [Hash] the optional parameters
259
+ # @return [Array<(TeamConnectionsResponse, Integer, Hash)>] TeamConnectionsResponse data, response status code and response headers
260
+ def create_team_connections_with_http_info(body, opts = {})
261
+ unstable_enabled = @api_client.config.unstable_operations["v2.create_team_connections".to_sym]
262
+ if unstable_enabled
263
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.create_team_connections")
264
+ else
265
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.create_team_connections"))
266
+ end
267
+
268
+ if @api_client.config.debugging
269
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.create_team_connections ...'
270
+ end
271
+ # verify the required parameter 'body' is set
272
+ if @api_client.config.client_side_validation && body.nil?
273
+ fail ArgumentError, "Missing the required parameter 'body' when calling TeamsAPI.create_team_connections"
274
+ end
275
+ # resource path
276
+ local_var_path = '/api/v2/team/connections'
277
+
278
+ # query parameters
279
+ query_params = opts[:query_params] || {}
280
+
281
+ # header parameters
282
+ header_params = opts[:header_params] || {}
283
+ # HTTP header 'Accept' (if needed)
284
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
285
+ # HTTP header 'Content-Type'
286
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
287
+
288
+ # form parameters
289
+ form_params = opts[:form_params] || {}
290
+
291
+ # http body (model)
292
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
293
+
294
+ # return_type
295
+ return_type = opts[:debug_return_type] || 'TeamConnectionsResponse'
296
+
297
+ # auth_names
298
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
299
+
300
+ new_options = opts.merge(
301
+ :operation => :create_team_connections,
302
+ :header_params => header_params,
303
+ :query_params => query_params,
304
+ :form_params => form_params,
305
+ :body => post_body,
306
+ :auth_names => auth_names,
307
+ :return_type => return_type,
308
+ :api_version => "V2"
309
+ )
310
+
311
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
312
+ if @api_client.config.debugging
313
+ @api_client.config.logger.debug "API called: TeamsAPI#create_team_connections\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
314
+ end
315
+ return data, status_code, headers
316
+ end
317
+
173
318
  # Create a team link.
174
319
  #
175
320
  # @see #create_team_link_with_http_info
@@ -254,6 +399,8 @@ module DatadogAPIClient::V2
254
399
  #
255
400
  # Add a user to a team.
256
401
  #
402
+ # **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership).
403
+ #
257
404
  # @param team_id [String] None
258
405
  # @param body [UserTeamRequest]
259
406
  # @param opts [Hash] the optional parameters
@@ -379,6 +526,79 @@ module DatadogAPIClient::V2
379
526
  return data, status_code, headers
380
527
  end
381
528
 
529
+ # Delete team connections.
530
+ #
531
+ # @see #delete_team_connections_with_http_info
532
+ def delete_team_connections(body, opts = {})
533
+ delete_team_connections_with_http_info(body, opts)
534
+ nil
535
+ end
536
+
537
+ # Delete team connections.
538
+ #
539
+ # Delete multiple team connections.
540
+ #
541
+ # @param body [TeamConnectionDeleteRequest]
542
+ # @param opts [Hash] the optional parameters
543
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
544
+ def delete_team_connections_with_http_info(body, opts = {})
545
+ unstable_enabled = @api_client.config.unstable_operations["v2.delete_team_connections".to_sym]
546
+ if unstable_enabled
547
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.delete_team_connections")
548
+ else
549
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.delete_team_connections"))
550
+ end
551
+
552
+ if @api_client.config.debugging
553
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.delete_team_connections ...'
554
+ end
555
+ # verify the required parameter 'body' is set
556
+ if @api_client.config.client_side_validation && body.nil?
557
+ fail ArgumentError, "Missing the required parameter 'body' when calling TeamsAPI.delete_team_connections"
558
+ end
559
+ # resource path
560
+ local_var_path = '/api/v2/team/connections'
561
+
562
+ # query parameters
563
+ query_params = opts[:query_params] || {}
564
+
565
+ # header parameters
566
+ header_params = opts[:header_params] || {}
567
+ # HTTP header 'Accept' (if needed)
568
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
569
+ # HTTP header 'Content-Type'
570
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
571
+
572
+ # form parameters
573
+ form_params = opts[:form_params] || {}
574
+
575
+ # http body (model)
576
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
577
+
578
+ # return_type
579
+ return_type = opts[:debug_return_type]
580
+
581
+ # auth_names
582
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
583
+
584
+ new_options = opts.merge(
585
+ :operation => :delete_team_connections,
586
+ :header_params => header_params,
587
+ :query_params => query_params,
588
+ :form_params => form_params,
589
+ :body => post_body,
590
+ :auth_names => auth_names,
591
+ :return_type => return_type,
592
+ :api_version => "V2"
593
+ )
594
+
595
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
596
+ if @api_client.config.debugging
597
+ @api_client.config.logger.debug "API called: TeamsAPI#delete_team_connections\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
598
+ end
599
+ return data, status_code, headers
600
+ end
601
+
382
602
  # Remove a team link.
383
603
  #
384
604
  # @see #delete_team_link_with_http_info
@@ -461,6 +681,8 @@ module DatadogAPIClient::V2
461
681
  #
462
682
  # Remove a user from a team.
463
683
  #
684
+ # **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership).
685
+ #
464
686
  # @param team_id [String] None
465
687
  # @param user_id [String] None
466
688
  # @param opts [Hash] the optional parameters
@@ -584,6 +806,71 @@ module DatadogAPIClient::V2
584
806
  return data, status_code, headers
585
807
  end
586
808
 
809
+ # Get a team hierarchy link.
810
+ #
811
+ # @see #get_team_hierarchy_link_with_http_info
812
+ def get_team_hierarchy_link(link_id, opts = {})
813
+ data, _status_code, _headers = get_team_hierarchy_link_with_http_info(link_id, opts)
814
+ data
815
+ end
816
+
817
+ # Get a team hierarchy link.
818
+ #
819
+ # Get a single team hierarchy link for the given link_id.
820
+ #
821
+ # @param link_id [String] The team hierarchy link's identifier
822
+ # @param opts [Hash] the optional parameters
823
+ # @return [Array<(TeamHierarchyLinkResponse, Integer, Hash)>] TeamHierarchyLinkResponse data, response status code and response headers
824
+ def get_team_hierarchy_link_with_http_info(link_id, opts = {})
825
+
826
+ if @api_client.config.debugging
827
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.get_team_hierarchy_link ...'
828
+ end
829
+ # verify the required parameter 'link_id' is set
830
+ if @api_client.config.client_side_validation && link_id.nil?
831
+ fail ArgumentError, "Missing the required parameter 'link_id' when calling TeamsAPI.get_team_hierarchy_link"
832
+ end
833
+ # resource path
834
+ local_var_path = '/api/v2/team-hierarchy-links/{link_id}'.sub('{link_id}', CGI.escape(link_id.to_s).gsub('%2F', '/'))
835
+
836
+ # query parameters
837
+ query_params = opts[:query_params] || {}
838
+
839
+ # header parameters
840
+ header_params = opts[:header_params] || {}
841
+ # HTTP header 'Accept' (if needed)
842
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
843
+
844
+ # form parameters
845
+ form_params = opts[:form_params] || {}
846
+
847
+ # http body (model)
848
+ post_body = opts[:debug_body]
849
+
850
+ # return_type
851
+ return_type = opts[:debug_return_type] || 'TeamHierarchyLinkResponse'
852
+
853
+ # auth_names
854
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
855
+
856
+ new_options = opts.merge(
857
+ :operation => :get_team_hierarchy_link,
858
+ :header_params => header_params,
859
+ :query_params => query_params,
860
+ :form_params => form_params,
861
+ :body => post_body,
862
+ :auth_names => auth_names,
863
+ :return_type => return_type,
864
+ :api_version => "V2"
865
+ )
866
+
867
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
868
+ if @api_client.config.debugging
869
+ @api_client.config.logger.debug "API called: TeamsAPI#get_team_hierarchy_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
870
+ end
871
+ return data, status_code, headers
872
+ end
873
+
587
874
  # Get a team link.
588
875
  #
589
876
  # @see #get_team_link_with_http_info
@@ -883,6 +1170,84 @@ module DatadogAPIClient::V2
883
1170
  return data, status_code, headers
884
1171
  end
885
1172
 
1173
+ # Get team sync configurations.
1174
+ #
1175
+ # @see #get_team_sync_with_http_info
1176
+ def get_team_sync(filter_source, opts = {})
1177
+ data, _status_code, _headers = get_team_sync_with_http_info(filter_source, opts)
1178
+ data
1179
+ end
1180
+
1181
+ # Get team sync configurations.
1182
+ #
1183
+ # Get all team synchronization configurations.
1184
+ # Returns a list of configurations used for linking or provisioning teams with external sources like GitHub.
1185
+ #
1186
+ # @param filter_source [TeamSyncAttributesSource] Filter by the external source platform for team synchronization
1187
+ # @param opts [Hash] the optional parameters
1188
+ # @return [Array<(TeamSyncResponse, Integer, Hash)>] TeamSyncResponse data, response status code and response headers
1189
+ def get_team_sync_with_http_info(filter_source, opts = {})
1190
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_team_sync".to_sym]
1191
+ if unstable_enabled
1192
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_team_sync")
1193
+ else
1194
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_team_sync"))
1195
+ end
1196
+
1197
+ if @api_client.config.debugging
1198
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.get_team_sync ...'
1199
+ end
1200
+ # verify the required parameter 'filter_source' is set
1201
+ if @api_client.config.client_side_validation && filter_source.nil?
1202
+ fail ArgumentError, "Missing the required parameter 'filter_source' when calling TeamsAPI.get_team_sync"
1203
+ end
1204
+ # verify enum value
1205
+ allowable_values = ['github']
1206
+ if @api_client.config.client_side_validation && !allowable_values.include?(filter_source)
1207
+ fail ArgumentError, "invalid value for \"filter_source\", must be one of #{allowable_values}"
1208
+ end
1209
+ # resource path
1210
+ local_var_path = '/api/v2/team/sync'
1211
+
1212
+ # query parameters
1213
+ query_params = opts[:query_params] || {}
1214
+ query_params[:'filter[source]'] = filter_source
1215
+
1216
+ # header parameters
1217
+ header_params = opts[:header_params] || {}
1218
+ # HTTP header 'Accept' (if needed)
1219
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1220
+
1221
+ # form parameters
1222
+ form_params = opts[:form_params] || {}
1223
+
1224
+ # http body (model)
1225
+ post_body = opts[:debug_body]
1226
+
1227
+ # return_type
1228
+ return_type = opts[:debug_return_type] || 'TeamSyncResponse'
1229
+
1230
+ # auth_names
1231
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1232
+
1233
+ new_options = opts.merge(
1234
+ :operation => :get_team_sync,
1235
+ :header_params => header_params,
1236
+ :query_params => query_params,
1237
+ :form_params => form_params,
1238
+ :body => post_body,
1239
+ :auth_names => auth_names,
1240
+ :return_type => return_type,
1241
+ :api_version => "V2"
1242
+ )
1243
+
1244
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1245
+ if @api_client.config.debugging
1246
+ @api_client.config.logger.debug "API called: TeamsAPI#get_team_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1247
+ end
1248
+ return data, status_code, headers
1249
+ end
1250
+
886
1251
  # Get user memberships.
887
1252
  #
888
1253
  # @see #get_user_memberships_with_http_info
@@ -960,6 +1325,11 @@ module DatadogAPIClient::V2
960
1325
  #
961
1326
  # Get all member teams.
962
1327
  #
1328
+ # **Note**: This API is deprecated. For team hierarchy relationships (parent-child
1329
+ # teams), use the team hierarchy links API: `GET /api/v2/team-hierarchy-links`.
1330
+ #
1331
+ # @deprecated This API is deprecated.
1332
+ #
963
1333
  # @param super_team_id [String] None
964
1334
  # @param opts [Hash] the optional parameters
965
1335
  # @option opts [Integer] :page_size Size for a given page. The maximum allowed value is 100.
@@ -967,6 +1337,7 @@ module DatadogAPIClient::V2
967
1337
  # @option opts [Array<TeamsField>] :fields_team List of fields that need to be fetched.
968
1338
  # @return [Array<(TeamsResponse, Integer, Hash)>] TeamsResponse data, response status code and response headers
969
1339
  def list_member_teams_with_http_info(super_team_id, opts = {})
1340
+ warn "[DEPRECATION] `ListMemberTeams` is deprecated."
970
1341
  unstable_enabled = @api_client.config.unstable_operations["v2.list_member_teams".to_sym]
971
1342
  if unstable_enabled
972
1343
  @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_member_teams")
@@ -1047,6 +1418,196 @@ module DatadogAPIClient::V2
1047
1418
  end
1048
1419
  end
1049
1420
 
1421
+ # List team connections.
1422
+ #
1423
+ # @see #list_team_connections_with_http_info
1424
+ def list_team_connections(opts = {})
1425
+ data, _status_code, _headers = list_team_connections_with_http_info(opts)
1426
+ data
1427
+ end
1428
+
1429
+ # List team connections.
1430
+ #
1431
+ # Returns all team connections.
1432
+ #
1433
+ # @param opts [Hash] the optional parameters
1434
+ # @option opts [Integer] :page_size Size for a given page. The maximum allowed value is 100.
1435
+ # @option opts [Integer] :page_number Specific page number to return.
1436
+ # @option opts [Array<String>] :filter_sources Filter team connections by external source systems.
1437
+ # @option opts [Array<String>] :filter_team_ids Filter team connections by Datadog team IDs.
1438
+ # @option opts [Array<String>] :filter_connected_team_ids Filter team connections by connected team IDs from external systems.
1439
+ # @option opts [Array<String>] :filter_connection_ids Filter team connections by connection IDs.
1440
+ # @return [Array<(TeamConnectionsResponse, Integer, Hash)>] TeamConnectionsResponse data, response status code and response headers
1441
+ def list_team_connections_with_http_info(opts = {})
1442
+ unstable_enabled = @api_client.config.unstable_operations["v2.list_team_connections".to_sym]
1443
+ if unstable_enabled
1444
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_team_connections")
1445
+ else
1446
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.list_team_connections"))
1447
+ end
1448
+
1449
+ if @api_client.config.debugging
1450
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.list_team_connections ...'
1451
+ end
1452
+ # resource path
1453
+ local_var_path = '/api/v2/team/connections'
1454
+
1455
+ # query parameters
1456
+ query_params = opts[:query_params] || {}
1457
+ query_params[:'page[size]'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1458
+ query_params[:'page[number]'] = opts[:'page_number'] if !opts[:'page_number'].nil?
1459
+ query_params[:'filter[sources]'] = @api_client.build_collection_param(opts[:'filter_sources'], :csv) if !opts[:'filter_sources'].nil?
1460
+ query_params[:'filter[team_ids]'] = @api_client.build_collection_param(opts[:'filter_team_ids'], :csv) if !opts[:'filter_team_ids'].nil?
1461
+ query_params[:'filter[connected_team_ids]'] = @api_client.build_collection_param(opts[:'filter_connected_team_ids'], :csv) if !opts[:'filter_connected_team_ids'].nil?
1462
+ query_params[:'filter[connection_ids]'] = @api_client.build_collection_param(opts[:'filter_connection_ids'], :csv) if !opts[:'filter_connection_ids'].nil?
1463
+
1464
+ # header parameters
1465
+ header_params = opts[:header_params] || {}
1466
+ # HTTP header 'Accept' (if needed)
1467
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1468
+
1469
+ # form parameters
1470
+ form_params = opts[:form_params] || {}
1471
+
1472
+ # http body (model)
1473
+ post_body = opts[:debug_body]
1474
+
1475
+ # return_type
1476
+ return_type = opts[:debug_return_type] || 'TeamConnectionsResponse'
1477
+
1478
+ # auth_names
1479
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1480
+
1481
+ new_options = opts.merge(
1482
+ :operation => :list_team_connections,
1483
+ :header_params => header_params,
1484
+ :query_params => query_params,
1485
+ :form_params => form_params,
1486
+ :body => post_body,
1487
+ :auth_names => auth_names,
1488
+ :return_type => return_type,
1489
+ :api_version => "V2"
1490
+ )
1491
+
1492
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1493
+ if @api_client.config.debugging
1494
+ @api_client.config.logger.debug "API called: TeamsAPI#list_team_connections\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1495
+ end
1496
+ return data, status_code, headers
1497
+ end
1498
+
1499
+ # List team connections.
1500
+ #
1501
+ # Provide a paginated version of {#list_team_connections}, returning all items.
1502
+ #
1503
+ # To use it you need to use a block: list_team_connections_with_pagination { |item| p item }
1504
+ #
1505
+ # @yield [TeamConnection] Paginated items
1506
+ def list_team_connections_with_pagination(opts = {})
1507
+ api_version = "V2"
1508
+ page_size = @api_client.get_attribute_from_path(opts, "page_size", 10)
1509
+ @api_client.set_attribute_from_path(api_version, opts, "page_size", Integer, page_size)
1510
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, 0)
1511
+ while true do
1512
+ response = list_team_connections(opts)
1513
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
1514
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
1515
+ break
1516
+ end
1517
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, @api_client.get_attribute_from_path(opts, "page_number", 0) + 1)
1518
+ end
1519
+ end
1520
+
1521
+ # Get team hierarchy links.
1522
+ #
1523
+ # @see #list_team_hierarchy_links_with_http_info
1524
+ def list_team_hierarchy_links(opts = {})
1525
+ data, _status_code, _headers = list_team_hierarchy_links_with_http_info(opts)
1526
+ data
1527
+ end
1528
+
1529
+ # Get team hierarchy links.
1530
+ #
1531
+ # List all team hierarchy links that match the provided filters.
1532
+ #
1533
+ # @param opts [Hash] the optional parameters
1534
+ # @option opts [Integer] :page_number Specific page number to return.
1535
+ # @option opts [Integer] :page_size Size for a given page. The maximum allowed value is 100.
1536
+ # @option opts [String] :filter_parent_team Filter by parent team ID
1537
+ # @option opts [String] :filter_sub_team Filter by sub team ID
1538
+ # @return [Array<(TeamHierarchyLinksResponse, Integer, Hash)>] TeamHierarchyLinksResponse data, response status code and response headers
1539
+ def list_team_hierarchy_links_with_http_info(opts = {})
1540
+
1541
+ if @api_client.config.debugging
1542
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.list_team_hierarchy_links ...'
1543
+ end
1544
+ # resource path
1545
+ local_var_path = '/api/v2/team-hierarchy-links'
1546
+
1547
+ # query parameters
1548
+ query_params = opts[:query_params] || {}
1549
+ query_params[:'page[number]'] = opts[:'page_number'] if !opts[:'page_number'].nil?
1550
+ query_params[:'page[size]'] = opts[:'page_size'] if !opts[:'page_size'].nil?
1551
+ query_params[:'filter[parent_team]'] = opts[:'filter_parent_team'] if !opts[:'filter_parent_team'].nil?
1552
+ query_params[:'filter[sub_team]'] = opts[:'filter_sub_team'] if !opts[:'filter_sub_team'].nil?
1553
+
1554
+ # header parameters
1555
+ header_params = opts[:header_params] || {}
1556
+ # HTTP header 'Accept' (if needed)
1557
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1558
+
1559
+ # form parameters
1560
+ form_params = opts[:form_params] || {}
1561
+
1562
+ # http body (model)
1563
+ post_body = opts[:debug_body]
1564
+
1565
+ # return_type
1566
+ return_type = opts[:debug_return_type] || 'TeamHierarchyLinksResponse'
1567
+
1568
+ # auth_names
1569
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1570
+
1571
+ new_options = opts.merge(
1572
+ :operation => :list_team_hierarchy_links,
1573
+ :header_params => header_params,
1574
+ :query_params => query_params,
1575
+ :form_params => form_params,
1576
+ :body => post_body,
1577
+ :auth_names => auth_names,
1578
+ :return_type => return_type,
1579
+ :api_version => "V2"
1580
+ )
1581
+
1582
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1583
+ if @api_client.config.debugging
1584
+ @api_client.config.logger.debug "API called: TeamsAPI#list_team_hierarchy_links\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1585
+ end
1586
+ return data, status_code, headers
1587
+ end
1588
+
1589
+ # Get team hierarchy links.
1590
+ #
1591
+ # Provide a paginated version of {#list_team_hierarchy_links}, returning all items.
1592
+ #
1593
+ # To use it you need to use a block: list_team_hierarchy_links_with_pagination { |item| p item }
1594
+ #
1595
+ # @yield [TeamHierarchyLink] Paginated items
1596
+ def list_team_hierarchy_links_with_pagination(opts = {})
1597
+ api_version = "V2"
1598
+ page_size = @api_client.get_attribute_from_path(opts, "page_size", 10)
1599
+ @api_client.set_attribute_from_path(api_version, opts, "page_size", Integer, page_size)
1600
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, 0)
1601
+ while true do
1602
+ response = list_team_hierarchy_links(opts)
1603
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
1604
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
1605
+ break
1606
+ end
1607
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, @api_client.get_attribute_from_path(opts, "page_number", 0) + 1)
1608
+ end
1609
+ end
1610
+
1050
1611
  # Get all teams.
1051
1612
  #
1052
1613
  # @see #list_teams_with_http_info
@@ -1161,11 +1722,16 @@ module DatadogAPIClient::V2
1161
1722
  #
1162
1723
  # Remove a super team's member team identified by `member_team_id`.
1163
1724
  #
1725
+ # **Note**: This API is deprecated. For deleting team hierarchy links, use the team hierarchy links API: `DELETE /api/v2/team-hierarchy-links/{link_id}`.
1726
+ #
1727
+ # @deprecated This API is deprecated.
1728
+ #
1164
1729
  # @param super_team_id [String] None
1165
1730
  # @param member_team_id [String] None
1166
1731
  # @param opts [Hash] the optional parameters
1167
1732
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1168
1733
  def remove_member_team_with_http_info(super_team_id, member_team_id, opts = {})
1734
+ warn "[DEPRECATION] `RemoveMemberTeam` is deprecated."
1169
1735
  unstable_enabled = @api_client.config.unstable_operations["v2.remove_member_team".to_sym]
1170
1736
  if unstable_enabled
1171
1737
  @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.remove_member_team")
@@ -1225,6 +1791,71 @@ module DatadogAPIClient::V2
1225
1791
  return data, status_code, headers
1226
1792
  end
1227
1793
 
1794
+ # Remove a team hierarchy link.
1795
+ #
1796
+ # @see #remove_team_hierarchy_link_with_http_info
1797
+ def remove_team_hierarchy_link(link_id, opts = {})
1798
+ remove_team_hierarchy_link_with_http_info(link_id, opts)
1799
+ nil
1800
+ end
1801
+
1802
+ # Remove a team hierarchy link.
1803
+ #
1804
+ # Remove a team hierarchy link by the given link_id.
1805
+ #
1806
+ # @param link_id [String] The team hierarchy link's identifier
1807
+ # @param opts [Hash] the optional parameters
1808
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1809
+ def remove_team_hierarchy_link_with_http_info(link_id, opts = {})
1810
+
1811
+ if @api_client.config.debugging
1812
+ @api_client.config.logger.debug 'Calling API: TeamsAPI.remove_team_hierarchy_link ...'
1813
+ end
1814
+ # verify the required parameter 'link_id' is set
1815
+ if @api_client.config.client_side_validation && link_id.nil?
1816
+ fail ArgumentError, "Missing the required parameter 'link_id' when calling TeamsAPI.remove_team_hierarchy_link"
1817
+ end
1818
+ # resource path
1819
+ local_var_path = '/api/v2/team-hierarchy-links/{link_id}'.sub('{link_id}', CGI.escape(link_id.to_s).gsub('%2F', '/'))
1820
+
1821
+ # query parameters
1822
+ query_params = opts[:query_params] || {}
1823
+
1824
+ # header parameters
1825
+ header_params = opts[:header_params] || {}
1826
+ # HTTP header 'Accept' (if needed)
1827
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
1828
+
1829
+ # form parameters
1830
+ form_params = opts[:form_params] || {}
1831
+
1832
+ # http body (model)
1833
+ post_body = opts[:debug_body]
1834
+
1835
+ # return_type
1836
+ return_type = opts[:debug_return_type]
1837
+
1838
+ # auth_names
1839
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1840
+
1841
+ new_options = opts.merge(
1842
+ :operation => :remove_team_hierarchy_link,
1843
+ :header_params => header_params,
1844
+ :query_params => query_params,
1845
+ :form_params => form_params,
1846
+ :body => post_body,
1847
+ :auth_names => auth_names,
1848
+ :return_type => return_type,
1849
+ :api_version => "V2"
1850
+ )
1851
+
1852
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
1853
+ if @api_client.config.debugging
1854
+ @api_client.config.logger.debug "API called: TeamsAPI#remove_team_hierarchy_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1855
+ end
1856
+ return data, status_code, headers
1857
+ end
1858
+
1228
1859
  # Link Teams with GitHub Teams.
1229
1860
  #
1230
1861
  # @see #sync_teams_with_http_info
@@ -1245,7 +1876,7 @@ module DatadogAPIClient::V2
1245
1876
  # [A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/),
1246
1877
  # and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug
1247
1878
  # using a normalized exact match; case is ignored and spaces are removed. No modifications are made
1248
- # to teams in GitHub. This will not create new Teams in Datadog.
1879
+ # to teams in GitHub. This only creates new teams in Datadog when type is set to `provision`.
1249
1880
  #
1250
1881
  # @param body [TeamSyncRequest]
1251
1882
  # @param opts [Hash] the optional parameters
@@ -1470,6 +2101,8 @@ module DatadogAPIClient::V2
1470
2101
  #
1471
2102
  # Update a user's membership attributes on a team.
1472
2103
  #
2104
+ # **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership).
2105
+ #
1473
2106
  # @param team_id [String] None
1474
2107
  # @param user_id [String] None
1475
2108
  # @param body [UserTeamUpdateRequest]