datadog_api_client 2.44.0 → 2.45.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 (318) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +564 -36
  3. data/.generator/schemas/v2/openapi.yaml +3946 -412
  4. data/CHANGELOG.md +25 -0
  5. data/examples/v2/aws-integration/CreateAWSEventBridgeSource.rb +17 -0
  6. data/examples/v2/aws-integration/DeleteAWSEventBridgeSource.rb +16 -0
  7. data/examples/v2/aws-integration/ListAWSEventBridgeSources.rb +5 -0
  8. data/examples/v2/fleet-automation/CreateFleetDeploymentConfigure.rb +1 -1
  9. data/examples/v2/fleet-automation/CreateFleetDeploymentUpgrade.rb +23 -0
  10. data/examples/v2/fleet-automation/CreateFleetSchedule.rb +30 -0
  11. data/examples/v2/fleet-automation/DeleteFleetSchedule.rb +8 -0
  12. data/examples/v2/fleet-automation/GetFleetDeployment.rb +2 -5
  13. data/examples/v2/fleet-automation/GetFleetDeployment_1482493803.rb +11 -0
  14. data/examples/v2/fleet-automation/GetFleetSchedule.rb +8 -0
  15. data/examples/v2/fleet-automation/ListFleetAgentVersions.rb +8 -0
  16. data/examples/v2/fleet-automation/ListFleetSchedules.rb +8 -0
  17. data/examples/v2/fleet-automation/TriggerFleetSchedule.rb +8 -0
  18. data/examples/v2/fleet-automation/UpdateFleetSchedule.rb +30 -0
  19. data/examples/v2/reference-tables/UpdateReferenceTable.rb +0 -1
  20. data/examples/v2/rum-audience-management/CreateConnection.rb +36 -0
  21. data/examples/v2/rum-audience-management/DeleteConnection.rb +8 -0
  22. data/examples/v2/rum-audience-management/GetAccountFacetInfo.rb +25 -0
  23. data/examples/v2/rum-audience-management/GetMapping.rb +8 -0
  24. data/examples/v2/rum-audience-management/GetUserFacetInfo.rb +25 -0
  25. data/examples/v2/rum-audience-management/ListConnections.rb +8 -0
  26. data/examples/v2/rum-audience-management/QueryAccounts.rb +34 -0
  27. data/examples/v2/rum-audience-management/QueryEventFilteredUsers.rb +37 -0
  28. data/examples/v2/rum-audience-management/QueryUsers.rb +34 -0
  29. data/examples/v2/rum-audience-management/UpdateConnection.rb +43 -0
  30. data/examples/v2/security-monitoring/CancelThreatHuntingJob.rb +8 -0
  31. data/examples/v2/security-monitoring/CancelThreatHuntingJob_1945505845.rb +12 -0
  32. data/examples/v2/security-monitoring/CreateSecurityMonitoringSuppression.rb +4 -0
  33. data/examples/v2/security-monitoring/{DeleteHistoricalJob.rb → DeleteThreatHuntingJob.rb} +2 -2
  34. data/examples/v2/security-monitoring/GetSecretsRules.rb +8 -0
  35. data/examples/v2/security-monitoring/GetThreatHuntingJob.rb +12 -0
  36. data/examples/v2/security-monitoring/ListMultipleRulesets.rb +17 -0
  37. data/examples/v2/security-monitoring/ListThreatHuntingJobs.rb +8 -0
  38. data/examples/v2/security-monitoring/ListThreatHuntingJobs_1365512061.rb +15 -0
  39. data/examples/v2/security-monitoring/{RunHistoricalJob.rb → RunThreatHuntingJob.rb} +9 -9
  40. data/examples/v2/software-catalog/PreviewCatalogEntities.rb +5 -0
  41. data/examples/v2/team-connections/CreateTeamConnections.rb +37 -0
  42. data/examples/v2/team-connections/DeleteTeamConnections.rb +17 -0
  43. data/examples/v2/team-connections/ListTeamConnections.rb +8 -0
  44. data/examples/v2/team-connections/ListTeamConnections_1473516764.rb +14 -0
  45. data/examples/v2/team-connections/ListTeamConnections_2418873869.rb +8 -0
  46. data/lib/datadog_api_client/configuration.rb +28 -5
  47. data/lib/datadog_api_client/inflector.rb +172 -12
  48. data/lib/datadog_api_client/v1/api/aws_integration_api.rb +18 -9
  49. data/lib/datadog_api_client/v1/api/aws_logs_integration_api.rb +1 -1
  50. data/lib/datadog_api_client/v1/api/key_management_api.rb +5 -0
  51. data/lib/datadog_api_client/v1/api/metrics_api.rb +5 -0
  52. data/lib/datadog_api_client/v1/models/aws_account.rb +5 -3
  53. data/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb +1 -0
  54. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +304 -4
  55. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +304 -4
  56. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +301 -1
  57. data/lib/datadog_api_client/v2/api/aws_integration_api.rb +194 -0
  58. data/lib/datadog_api_client/v2/api/error_tracking_api.rb +2 -2
  59. data/lib/datadog_api_client/v2/api/events_api.rb +2 -0
  60. data/lib/datadog_api_client/v2/api/fleet_automation_api.rb +683 -8
  61. data/lib/datadog_api_client/v2/api/incidents_api.rb +3 -0
  62. data/lib/datadog_api_client/v2/api/key_management_api.rb +4 -2
  63. data/lib/datadog_api_client/v2/api/reference_tables_api.rb +20 -16
  64. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  65. data/lib/datadog_api_client/v2/api/rum_audience_management_api.rb +765 -0
  66. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +344 -205
  67. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +57 -0
  68. data/lib/datadog_api_client/v2/api/team_connections_api.rb +272 -0
  69. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +1 -1
  70. data/lib/datadog_api_client/v2/models/aws_account_create_request_attributes.rb +2 -1
  71. data/lib/datadog_api_client/v2/models/aws_account_partition.rb +2 -1
  72. data/lib/datadog_api_client/v2/models/aws_account_response_attributes.rb +2 -1
  73. data/lib/datadog_api_client/v2/models/aws_account_response_data.rb +2 -1
  74. data/lib/datadog_api_client/v2/models/aws_account_update_request_attributes.rb +2 -1
  75. data/lib/datadog_api_client/v2/models/aws_account_update_request_data.rb +2 -1
  76. data/lib/datadog_api_client/v2/models/aws_event_bridge_account_configuration.rb +130 -0
  77. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_request.rb +123 -0
  78. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_request_attributes.rb +178 -0
  79. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_request_data.rb +144 -0
  80. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_response.rb +123 -0
  81. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_response_attributes.rb +136 -0
  82. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_response_data.rb +154 -0
  83. data/lib/datadog_api_client/v2/models/aws_event_bridge_create_status.rb +26 -0
  84. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_request.rb +123 -0
  85. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_request_attributes.rb +166 -0
  86. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_request_data.rb +144 -0
  87. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_response.rb +123 -0
  88. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_response_attributes.rb +105 -0
  89. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_response_data.rb +154 -0
  90. data/lib/datadog_api_client/v2/models/aws_event_bridge_delete_status.rb +26 -0
  91. data/lib/datadog_api_client/v2/models/aws_event_bridge_list_response.rb +123 -0
  92. data/lib/datadog_api_client/v2/models/aws_event_bridge_list_response_attributes.rb +117 -0
  93. data/lib/datadog_api_client/v2/models/aws_event_bridge_list_response_data.rb +165 -0
  94. data/lib/datadog_api_client/v2/models/aws_event_bridge_source.rb +116 -0
  95. data/lib/datadog_api_client/v2/models/aws_event_bridge_type.rb +26 -0
  96. data/lib/datadog_api_client/v2/models/aws_lambda_forwarder_config.rb +7 -4
  97. data/lib/datadog_api_client/v2/models/aws_log_source_tag_filter.rb +7 -3
  98. data/lib/datadog_api_client/v2/models/aws_logs_config.rb +3 -2
  99. data/lib/datadog_api_client/v2/models/aws_namespace_filters_exclude_only.rb +8 -4
  100. data/lib/datadog_api_client/v2/models/aws_namespace_tag_filter.rb +6 -4
  101. data/lib/datadog_api_client/v2/models/aws_resources_config.rb +5 -2
  102. data/lib/datadog_api_client/v2/models/connected_team_ref.rb +105 -0
  103. data/lib/datadog_api_client/v2/models/connected_team_ref_data.rb +144 -0
  104. data/lib/datadog_api_client/v2/models/connected_team_ref_data_type.rb +26 -0
  105. data/lib/datadog_api_client/v2/models/connections_page_pagination.rb +184 -0
  106. data/lib/datadog_api_client/v2/models/connections_response_meta.rb +105 -0
  107. data/lib/datadog_api_client/v2/models/convert_job_results_to_signals_attributes.rb +1 -1
  108. data/lib/datadog_api_client/v2/models/convert_job_results_to_signals_data.rb +2 -2
  109. data/lib/datadog_api_client/v2/models/convert_job_results_to_signals_request.rb +2 -2
  110. data/lib/datadog_api_client/v2/models/{historical_job_response.rb → create_connection_request.rb} +5 -5
  111. data/lib/datadog_api_client/v2/models/create_connection_request_data.rb +143 -0
  112. data/lib/datadog_api_client/v2/models/create_connection_request_data_attributes.rb +187 -0
  113. data/lib/datadog_api_client/v2/models/create_connection_request_data_attributes_fields_items.rb +197 -0
  114. data/lib/datadog_api_client/v2/models/create_table_request.rb +2 -2
  115. data/lib/datadog_api_client/v2/models/create_table_request_data.rb +6 -41
  116. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes.rb +6 -6
  117. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata.rb +1 -1
  118. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata_cloud_storage.rb +1 -1
  119. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata_one_of_access_details.rb +4 -4
  120. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata_one_of_access_details_aws_detail.rb +3 -3
  121. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata_one_of_access_details_azure_detail.rb +5 -5
  122. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_file_metadata_one_of_access_details_gcp_detail.rb +4 -4
  123. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_schema.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/create_table_request_data_attributes_schema_fields_items.rb +1 -1
  125. data/lib/datadog_api_client/v2/models/create_upload_request.rb +2 -2
  126. data/lib/datadog_api_client/v2/models/create_upload_request_data.rb +6 -41
  127. data/lib/datadog_api_client/v2/models/create_upload_request_data_attributes.rb +5 -5
  128. data/lib/datadog_api_client/v2/models/create_upload_response.rb +2 -2
  129. data/lib/datadog_api_client/v2/models/create_upload_response_data.rb +7 -32
  130. data/lib/datadog_api_client/v2/models/create_upload_response_data_attributes.rb +2 -2
  131. data/lib/datadog_api_client/v2/models/entity_response_array.rb +125 -0
  132. data/lib/datadog_api_client/v2/models/entity_response_data_attributes.rb +187 -0
  133. data/lib/datadog_api_client/v2/models/entity_response_data_relationships.rb +145 -0
  134. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_incidents.rb +107 -0
  135. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_incidents_data_items.rb +144 -0
  136. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_incidents_data_items_type.rb +26 -0
  137. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_oncalls.rb +107 -0
  138. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_oncalls_data_items.rb +144 -0
  139. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_oncalls_data_items_type.rb +26 -0
  140. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_raw_schema.rb +123 -0
  141. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_raw_schema_data.rb +144 -0
  142. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_raw_schema_data_type.rb +26 -0
  143. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_related_entities.rb +107 -0
  144. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_related_entities_data_items.rb +144 -0
  145. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_related_entities_data_items_type.rb +26 -0
  146. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_schema.rb +123 -0
  147. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_schema_data.rb +144 -0
  148. data/lib/datadog_api_client/v2/models/entity_response_data_relationships_schema_data_type.rb +26 -0
  149. data/lib/datadog_api_client/v2/models/entity_response_data_type.rb +26 -0
  150. data/lib/datadog_api_client/v2/models/facet_info_request.rb +105 -0
  151. data/lib/datadog_api_client/v2/models/facet_info_request_data.rb +143 -0
  152. data/lib/datadog_api_client/v2/models/facet_info_request_data_attributes.rb +164 -0
  153. data/lib/datadog_api_client/v2/models/facet_info_request_data_attributes_search.rb +105 -0
  154. data/lib/datadog_api_client/v2/models/facet_info_request_data_attributes_term_search.rb +105 -0
  155. data/lib/datadog_api_client/v2/models/facet_info_request_data_type.rb +26 -0
  156. data/lib/datadog_api_client/v2/models/facet_info_response.rb +105 -0
  157. data/lib/datadog_api_client/v2/models/facet_info_response_data.rb +143 -0
  158. data/lib/datadog_api_client/v2/models/facet_info_response_data_attributes.rb +105 -0
  159. data/lib/datadog_api_client/v2/models/facet_info_response_data_attributes_result.rb +117 -0
  160. data/lib/datadog_api_client/v2/models/facet_info_response_data_attributes_result_range.rb +115 -0
  161. data/lib/datadog_api_client/v2/models/facet_info_response_data_attributes_result_values_items.rb +115 -0
  162. data/lib/datadog_api_client/v2/models/facet_info_response_data_type.rb +26 -0
  163. data/lib/datadog_api_client/v2/models/fleet_agent_version.rb +154 -0
  164. data/lib/datadog_api_client/v2/models/fleet_agent_version_attributes.rb +105 -0
  165. data/lib/datadog_api_client/v2/models/fleet_agent_version_resource_type.rb +26 -0
  166. data/lib/datadog_api_client/v2/models/fleet_agent_versions_response.rb +125 -0
  167. data/lib/datadog_api_client/v2/models/fleet_deployment_attributes.rb +29 -2
  168. data/lib/datadog_api_client/v2/models/fleet_deployment_configure_create.rb +1 -1
  169. data/lib/datadog_api_client/v2/models/fleet_deployment_configure_create_request.rb +2 -2
  170. data/lib/datadog_api_client/v2/models/fleet_deployment_host.rb +137 -0
  171. data/lib/datadog_api_client/v2/models/fleet_deployment_host_package.rb +136 -0
  172. data/lib/datadog_api_client/v2/models/fleet_deployment_hosts_page.rb +135 -0
  173. data/lib/datadog_api_client/v2/models/fleet_deployment_operation.rb +2 -2
  174. data/lib/datadog_api_client/v2/models/fleet_deployment_package.rb +144 -0
  175. data/lib/datadog_api_client/v2/models/fleet_deployment_package_upgrade_attributes.rb +135 -0
  176. data/lib/datadog_api_client/v2/models/fleet_deployment_package_upgrade_create.rb +144 -0
  177. data/lib/datadog_api_client/v2/models/fleet_deployment_package_upgrade_create_request.rb +123 -0
  178. data/lib/datadog_api_client/v2/models/fleet_deployment_response.rb +13 -3
  179. data/lib/datadog_api_client/v2/models/fleet_deployment_response_meta.rb +105 -0
  180. data/lib/datadog_api_client/v2/models/fleet_schedule.rb +165 -0
  181. data/lib/datadog_api_client/v2/models/fleet_schedule_attributes.rb +214 -0
  182. data/lib/datadog_api_client/v2/models/fleet_schedule_create.rb +144 -0
  183. data/lib/datadog_api_client/v2/models/fleet_schedule_create_attributes.rb +207 -0
  184. data/lib/datadog_api_client/v2/models/fleet_schedule_create_request.rb +123 -0
  185. data/lib/datadog_api_client/v2/models/fleet_schedule_patch.rb +133 -0
  186. data/lib/datadog_api_client/v2/models/fleet_schedule_patch_attributes.rb +174 -0
  187. data/lib/datadog_api_client/v2/models/fleet_schedule_patch_request.rb +123 -0
  188. data/lib/datadog_api_client/v2/models/fleet_schedule_recurrence_rule.rb +191 -0
  189. data/lib/datadog_api_client/v2/models/fleet_schedule_resource_type.rb +26 -0
  190. data/lib/datadog_api_client/v2/models/fleet_schedule_response.rb +105 -0
  191. data/lib/datadog_api_client/v2/models/fleet_schedule_status.rb +29 -0
  192. data/lib/datadog_api_client/v2/models/fleet_schedules_response.rb +125 -0
  193. data/lib/datadog_api_client/v2/models/gcp_metric_namespace_config.rb +13 -1
  194. data/lib/datadog_api_client/v2/models/get_mapping_response.rb +105 -0
  195. data/lib/datadog_api_client/v2/models/get_mapping_response_data.rb +143 -0
  196. data/lib/datadog_api_client/v2/models/get_mapping_response_data_attributes.rb +107 -0
  197. data/lib/datadog_api_client/v2/models/get_mapping_response_data_attributes_attributes_items.rb +157 -0
  198. data/lib/datadog_api_client/v2/models/get_mapping_response_data_type.rb +26 -0
  199. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_request.rb +105 -0
  200. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_request_data.rb +143 -0
  201. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_request_data_attributes.rb +127 -0
  202. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_request_data_type.rb +26 -0
  203. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response.rb +105 -0
  204. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data.rb +143 -0
  205. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes.rb +107 -0
  206. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items.rb +165 -0
  207. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_data.rb +133 -0
  208. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_data_type.rb +26 -0
  209. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_rules_items.rb +367 -0
  210. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_rules_items_arguments_items.rb +115 -0
  211. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_rules_items_data.rb +133 -0
  212. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_rules_items_data_type.rb +26 -0
  213. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_attributes_rulesets_items_rules_items_tests_items.rb +147 -0
  214. data/lib/datadog_api_client/v2/models/get_multiple_rulesets_response_data_type.rb +26 -0
  215. data/lib/datadog_api_client/v2/models/job_create_response.rb +1 -1
  216. data/lib/datadog_api_client/v2/models/job_create_response_data.rb +1 -1
  217. data/lib/datadog_api_client/v2/models/job_definition.rb +3 -3
  218. data/lib/datadog_api_client/v2/models/job_definition_from_rule.rb +1 -1
  219. data/lib/datadog_api_client/v2/models/{run_historical_job_request.rb → list_connections_response.rb} +5 -5
  220. data/lib/datadog_api_client/v2/models/list_connections_response_data.rb +143 -0
  221. data/lib/datadog_api_client/v2/models/list_connections_response_data_attributes.rb +107 -0
  222. data/lib/datadog_api_client/v2/models/list_connections_response_data_attributes_connections_items.rb +187 -0
  223. data/lib/datadog_api_client/v2/models/list_connections_response_data_attributes_connections_items_join.rb +115 -0
  224. data/lib/datadog_api_client/v2/models/list_connections_response_data_type.rb +26 -0
  225. data/lib/datadog_api_client/v2/models/{list_historical_jobs_response.rb → list_threat_hunting_jobs_response.rb} +6 -6
  226. data/lib/datadog_api_client/v2/models/patch_table_request.rb +2 -2
  227. data/lib/datadog_api_client/v2/models/patch_table_request_data.rb +6 -41
  228. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes.rb +5 -5
  229. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata.rb +1 -1
  230. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata_cloud_storage.rb +1 -1
  231. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata_one_of_access_details.rb +4 -4
  232. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata_one_of_access_details_aws_detail.rb +3 -3
  233. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata_one_of_access_details_azure_detail.rb +5 -5
  234. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_file_metadata_one_of_access_details_gcp_detail.rb +4 -4
  235. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_schema.rb +3 -3
  236. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes_schema_fields_items.rb +1 -1
  237. data/lib/datadog_api_client/v2/models/preview_entity_response_data.rb +153 -0
  238. data/lib/datadog_api_client/v2/models/query_account_request.rb +105 -0
  239. data/lib/datadog_api_client/v2/models/query_account_request_data.rb +143 -0
  240. data/lib/datadog_api_client/v2/models/query_account_request_data_attributes.rb +147 -0
  241. data/lib/datadog_api_client/v2/models/query_account_request_data_attributes_sort.rb +115 -0
  242. data/lib/datadog_api_client/v2/models/query_account_request_data_type.rb +26 -0
  243. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request.rb +105 -0
  244. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request_data.rb +143 -0
  245. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request_data_attributes.rb +147 -0
  246. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request_data_attributes_event_query.rb +115 -0
  247. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request_data_attributes_event_query_time_frame.rb +115 -0
  248. data/lib/datadog_api_client/v2/models/query_event_filtered_users_request_data_type.rb +26 -0
  249. data/lib/datadog_api_client/v2/models/query_response.rb +105 -0
  250. data/lib/datadog_api_client/v2/models/query_response_data.rb +143 -0
  251. data/lib/datadog_api_client/v2/models/query_response_data_attributes.rb +117 -0
  252. data/lib/datadog_api_client/v2/models/query_response_data_type.rb +26 -0
  253. data/lib/datadog_api_client/v2/models/query_users_request.rb +105 -0
  254. data/lib/datadog_api_client/v2/models/query_users_request_data.rb +143 -0
  255. data/lib/datadog_api_client/v2/models/query_users_request_data_attributes.rb +147 -0
  256. data/lib/datadog_api_client/v2/models/query_users_request_data_attributes_sort.rb +115 -0
  257. data/lib/datadog_api_client/v2/models/query_users_request_data_type.rb +26 -0
  258. data/lib/datadog_api_client/v2/models/run_threat_hunting_job_request.rb +105 -0
  259. data/lib/datadog_api_client/v2/models/{run_historical_job_request_attributes.rb → run_threat_hunting_job_request_attributes.rb} +5 -5
  260. data/lib/datadog_api_client/v2/models/{run_historical_job_request_data.rb → run_threat_hunting_job_request_data.rb} +6 -6
  261. data/lib/datadog_api_client/v2/models/{run_historical_job_request_data_type.rb → run_threat_hunting_job_request_data_type.rb} +1 -1
  262. data/lib/datadog_api_client/v2/models/secret_rule_array.rb +125 -0
  263. data/lib/datadog_api_client/v2/models/secret_rule_data.rb +143 -0
  264. data/lib/datadog_api_client/v2/models/secret_rule_data_attributes.rb +189 -0
  265. data/lib/datadog_api_client/v2/models/secret_rule_data_attributes_match_validation.rb +203 -0
  266. data/lib/datadog_api_client/v2/models/secret_rule_data_attributes_match_validation_invalid_http_status_code_items.rb +152 -0
  267. data/lib/datadog_api_client/v2/models/secret_rule_data_attributes_match_validation_valid_http_status_code_items.rb +152 -0
  268. data/lib/datadog_api_client/v2/models/secret_rule_data_type.rb +26 -0
  269. data/lib/datadog_api_client/v2/models/security_monitoring_signal_archive_reason.rb +2 -0
  270. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_attributes.rb +13 -1
  271. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_attributes.rb +15 -3
  272. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_attributes.rb +13 -1
  273. data/lib/datadog_api_client/v2/models/table_result_v2.rb +2 -2
  274. data/lib/datadog_api_client/v2/models/table_result_v2_array.rb +1 -1
  275. data/lib/datadog_api_client/v2/models/table_result_v2_data.rb +7 -32
  276. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes.rb +8 -8
  277. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata.rb +1 -1
  278. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_cloud_storage.rb +19 -26
  279. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_local_file.rb +7 -42
  280. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_one_of_access_details.rb +4 -4
  281. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_one_of_access_details_aws_detail.rb +3 -3
  282. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_one_of_access_details_azure_detail.rb +5 -5
  283. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_file_metadata_one_of_access_details_gcp_detail.rb +4 -4
  284. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_schema.rb +2 -2
  285. data/lib/datadog_api_client/v2/models/table_result_v2_data_attributes_schema_fields_items.rb +1 -1
  286. data/lib/datadog_api_client/v2/models/table_row_resource_array.rb +1 -1
  287. data/lib/datadog_api_client/v2/models/table_row_resource_data.rb +7 -32
  288. data/lib/datadog_api_client/v2/models/table_row_resource_data_attributes.rb +7 -32
  289. data/lib/datadog_api_client/v2/models/team_connection.rb +164 -0
  290. data/lib/datadog_api_client/v2/models/team_connection_attributes.rb +115 -0
  291. data/lib/datadog_api_client/v2/models/team_connection_create_data.rb +143 -0
  292. data/lib/datadog_api_client/v2/models/team_connection_create_request.rb +125 -0
  293. data/lib/datadog_api_client/v2/models/team_connection_delete_request.rb +125 -0
  294. data/lib/datadog_api_client/v2/models/team_connection_delete_request_data_item.rb +144 -0
  295. data/lib/datadog_api_client/v2/models/team_connection_relationships.rb +115 -0
  296. data/lib/datadog_api_client/v2/models/team_connection_type.rb +26 -0
  297. data/lib/datadog_api_client/v2/models/team_connections_response.rb +117 -0
  298. data/lib/datadog_api_client/v2/models/team_ref.rb +105 -0
  299. data/lib/datadog_api_client/v2/models/team_ref_data.rb +144 -0
  300. data/lib/datadog_api_client/v2/models/team_ref_data_type.rb +26 -0
  301. data/lib/datadog_api_client/v2/models/{historical_job_data_type.rb → threat_hunting_job_data_type.rb} +1 -1
  302. data/lib/datadog_api_client/v2/models/{historical_job_list_meta.rb → threat_hunting_job_list_meta.rb} +2 -2
  303. data/lib/datadog_api_client/v2/models/{historical_job_options.rb → threat_hunting_job_options.rb} +2 -2
  304. data/lib/datadog_api_client/v2/models/{historical_job_query.rb → threat_hunting_job_query.rb} +3 -3
  305. data/lib/datadog_api_client/v2/models/threat_hunting_job_response.rb +105 -0
  306. data/lib/datadog_api_client/v2/models/{historical_job_response_attributes.rb → threat_hunting_job_response_attributes.rb} +4 -4
  307. data/lib/datadog_api_client/v2/models/{historical_job_response_data.rb → threat_hunting_job_response_data.rb} +6 -6
  308. data/lib/datadog_api_client/v2/models/update_connection_request.rb +105 -0
  309. data/lib/datadog_api_client/v2/models/update_connection_request_data.rb +154 -0
  310. data/lib/datadog_api_client/v2/models/update_connection_request_data_attributes.rb +131 -0
  311. data/lib/datadog_api_client/v2/models/update_connection_request_data_attributes_fields_to_update_items.rb +165 -0
  312. data/lib/datadog_api_client/v2/models/update_connection_request_data_type.rb +26 -0
  313. data/lib/datadog_api_client/v2/models/user_attributes.rb +12 -1
  314. data/lib/datadog_api_client/version.rb +1 -1
  315. metadata +210 -18
  316. data/examples/v2/security-monitoring/CancelHistoricalJob.rb +0 -12
  317. data/examples/v2/security-monitoring/GetHistoricalJob.rb +0 -12
  318. data/examples/v2/security-monitoring/ListHistoricalJobs.rb +0 -15
@@ -33,9 +33,14 @@ module DatadogAPIClient::V2
33
33
 
34
34
  # Cancel a deployment.
35
35
  #
36
- # Cancel this deployment and stop all associated operations.
37
- # If a workflow is currently running for this deployment, it is canceled immediately.
38
- # Changes already applied to hosts are not rolled back.
36
+ # Cancel an active deployment and stop all pending operations.
37
+ # When you cancel a deployment:
38
+ # - All pending operations on hosts that haven't started yet are stopped
39
+ # - Operations currently in progress on hosts may complete or be interrupted, depending on their current state
40
+ # - Configuration changes or package upgrades already applied to hosts are not rolled back
41
+ #
42
+ # After cancellation, you can view the final state of the deployment using the GET endpoint to see which hosts
43
+ # were successfully updated before the cancellation.
39
44
  #
40
45
  # @param deployment_id [String] The unique identifier of the deployment to cancel.
41
46
  # @param opts [Hash] the optional parameters
@@ -96,7 +101,7 @@ module DatadogAPIClient::V2
96
101
  return data, status_code, headers
97
102
  end
98
103
 
99
- # Create a deployment.
104
+ # Create a configuration deployment.
100
105
  #
101
106
  # @see #create_fleet_deployment_configure_with_http_info
102
107
  def create_fleet_deployment_configure(body, opts = {})
@@ -104,11 +109,20 @@ module DatadogAPIClient::V2
104
109
  data
105
110
  end
106
111
 
107
- # Create a deployment.
112
+ # Create a configuration deployment.
108
113
  #
109
114
  # Create a new deployment to apply configuration changes
110
115
  # to a fleet of hosts matching the specified filter query.
111
116
  #
117
+ # This endpoint supports two types of configuration operations:
118
+ # - `merge-patch`: Merges the provided patch data with the existing configuration file,
119
+ # creating the file if it doesn't exist
120
+ # - `delete`: Removes the specified configuration file from the target hosts
121
+ #
122
+ # The deployment is created and started automatically. You can specify multiple configuration
123
+ # operations that will be executed in order on each target host. Use the filter query to target
124
+ # specific hosts using the Datadog query syntax.
125
+ #
112
126
  # @param body [FleetDeploymentConfigureCreateRequest] Request payload containing the deployment details.
113
127
  # @param opts [Hash] the optional parameters
114
128
  # @return [Array<(FleetDeploymentResponse, Integer, Hash)>] FleetDeploymentResponse data, response status code and response headers
@@ -170,7 +184,250 @@ module DatadogAPIClient::V2
170
184
  return data, status_code, headers
171
185
  end
172
186
 
173
- # Get a deployment by ID.
187
+ # Upgrade hosts.
188
+ #
189
+ # @see #create_fleet_deployment_upgrade_with_http_info
190
+ def create_fleet_deployment_upgrade(body, opts = {})
191
+ data, _status_code, _headers = create_fleet_deployment_upgrade_with_http_info(body, opts)
192
+ data
193
+ end
194
+
195
+ # Upgrade hosts.
196
+ #
197
+ # Create and immediately start a new package upgrade
198
+ # on hosts matching the specified filter query.
199
+ #
200
+ # This endpoint allows you to upgrade the Datadog Agent to a specific version
201
+ # on hosts matching the specified filter query.
202
+ #
203
+ # The deployment is created and started automatically. The system will:
204
+ # 1. Identify all hosts matching the filter query
205
+ # 2. Validate that the specified version is available
206
+ # 3. Begin rolling out the package upgrade to the target hosts
207
+ #
208
+ # @param body [FleetDeploymentPackageUpgradeCreateRequest] Request payload containing the package upgrade details.
209
+ # @param opts [Hash] the optional parameters
210
+ # @return [Array<(FleetDeploymentResponse, Integer, Hash)>] FleetDeploymentResponse data, response status code and response headers
211
+ def create_fleet_deployment_upgrade_with_http_info(body, opts = {})
212
+ unstable_enabled = @api_client.config.unstable_operations["v2.create_fleet_deployment_upgrade".to_sym]
213
+ if unstable_enabled
214
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.create_fleet_deployment_upgrade")
215
+ else
216
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.create_fleet_deployment_upgrade"))
217
+ end
218
+
219
+ if @api_client.config.debugging
220
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.create_fleet_deployment_upgrade ...'
221
+ end
222
+ # verify the required parameter 'body' is set
223
+ if @api_client.config.client_side_validation && body.nil?
224
+ fail ArgumentError, "Missing the required parameter 'body' when calling FleetAutomationAPI.create_fleet_deployment_upgrade"
225
+ end
226
+ # resource path
227
+ local_var_path = '/api/unstable/fleet/deployments/upgrade'
228
+
229
+ # query parameters
230
+ query_params = opts[:query_params] || {}
231
+
232
+ # header parameters
233
+ header_params = opts[:header_params] || {}
234
+ # HTTP header 'Accept' (if needed)
235
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
236
+ # HTTP header 'Content-Type'
237
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
238
+
239
+ # form parameters
240
+ form_params = opts[:form_params] || {}
241
+
242
+ # http body (model)
243
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
244
+
245
+ # return_type
246
+ return_type = opts[:debug_return_type] || 'FleetDeploymentResponse'
247
+
248
+ # auth_names
249
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
250
+
251
+ new_options = opts.merge(
252
+ :operation => :create_fleet_deployment_upgrade,
253
+ :header_params => header_params,
254
+ :query_params => query_params,
255
+ :form_params => form_params,
256
+ :body => post_body,
257
+ :auth_names => auth_names,
258
+ :return_type => return_type,
259
+ :api_version => "V2"
260
+ )
261
+
262
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
263
+ if @api_client.config.debugging
264
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#create_fleet_deployment_upgrade\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
265
+ end
266
+ return data, status_code, headers
267
+ end
268
+
269
+ # Create a schedule.
270
+ #
271
+ # @see #create_fleet_schedule_with_http_info
272
+ def create_fleet_schedule(body, opts = {})
273
+ data, _status_code, _headers = create_fleet_schedule_with_http_info(body, opts)
274
+ data
275
+ end
276
+
277
+ # Create a schedule.
278
+ #
279
+ # Create a new schedule for automated package upgrades.
280
+ #
281
+ # Schedules define when and how often to automatically deploy package upgrades to a fleet
282
+ # of hosts. Each schedule includes:
283
+ # - A filter query to select target hosts
284
+ # - A recurrence rule defining maintenance windows
285
+ # - A version strategy (e.g., always latest, or N versions behind latest)
286
+ #
287
+ # When the schedule triggers during a maintenance window, it automatically creates a
288
+ # deployment that upgrades the Datadog Agent to the specified version on all matching hosts.
289
+ #
290
+ # @param body [FleetScheduleCreateRequest] Request payload containing the schedule details.
291
+ # @param opts [Hash] the optional parameters
292
+ # @return [Array<(FleetScheduleResponse, Integer, Hash)>] FleetScheduleResponse data, response status code and response headers
293
+ def create_fleet_schedule_with_http_info(body, opts = {})
294
+ unstable_enabled = @api_client.config.unstable_operations["v2.create_fleet_schedule".to_sym]
295
+ if unstable_enabled
296
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.create_fleet_schedule")
297
+ else
298
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.create_fleet_schedule"))
299
+ end
300
+
301
+ if @api_client.config.debugging
302
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.create_fleet_schedule ...'
303
+ end
304
+ # verify the required parameter 'body' is set
305
+ if @api_client.config.client_side_validation && body.nil?
306
+ fail ArgumentError, "Missing the required parameter 'body' when calling FleetAutomationAPI.create_fleet_schedule"
307
+ end
308
+ # resource path
309
+ local_var_path = '/api/unstable/fleet/schedules'
310
+
311
+ # query parameters
312
+ query_params = opts[:query_params] || {}
313
+
314
+ # header parameters
315
+ header_params = opts[:header_params] || {}
316
+ # HTTP header 'Accept' (if needed)
317
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
318
+ # HTTP header 'Content-Type'
319
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
320
+
321
+ # form parameters
322
+ form_params = opts[:form_params] || {}
323
+
324
+ # http body (model)
325
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
326
+
327
+ # return_type
328
+ return_type = opts[:debug_return_type] || 'FleetScheduleResponse'
329
+
330
+ # auth_names
331
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
332
+
333
+ new_options = opts.merge(
334
+ :operation => :create_fleet_schedule,
335
+ :header_params => header_params,
336
+ :query_params => query_params,
337
+ :form_params => form_params,
338
+ :body => post_body,
339
+ :auth_names => auth_names,
340
+ :return_type => return_type,
341
+ :api_version => "V2"
342
+ )
343
+
344
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
345
+ if @api_client.config.debugging
346
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#create_fleet_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
347
+ end
348
+ return data, status_code, headers
349
+ end
350
+
351
+ # Delete a schedule.
352
+ #
353
+ # @see #delete_fleet_schedule_with_http_info
354
+ def delete_fleet_schedule(id, opts = {})
355
+ delete_fleet_schedule_with_http_info(id, opts)
356
+ nil
357
+ end
358
+
359
+ # Delete a schedule.
360
+ #
361
+ # Delete a schedule permanently.
362
+ #
363
+ # When you delete a schedule:
364
+ # - The schedule is permanently removed and will no longer create deployments
365
+ # - Any deployments already created by this schedule are not affected
366
+ # - This action cannot be undone
367
+ #
368
+ # If you want to temporarily stop a schedule from creating deployments, consider
369
+ # updating its status to "inactive" instead of deleting it.
370
+ #
371
+ # @param id [String] The unique identifier of the schedule to delete.
372
+ # @param opts [Hash] the optional parameters
373
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
374
+ def delete_fleet_schedule_with_http_info(id, opts = {})
375
+ unstable_enabled = @api_client.config.unstable_operations["v2.delete_fleet_schedule".to_sym]
376
+ if unstable_enabled
377
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.delete_fleet_schedule")
378
+ else
379
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.delete_fleet_schedule"))
380
+ end
381
+
382
+ if @api_client.config.debugging
383
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.delete_fleet_schedule ...'
384
+ end
385
+ # verify the required parameter 'id' is set
386
+ if @api_client.config.client_side_validation && id.nil?
387
+ fail ArgumentError, "Missing the required parameter 'id' when calling FleetAutomationAPI.delete_fleet_schedule"
388
+ end
389
+ # resource path
390
+ local_var_path = '/api/unstable/fleet/schedules/{id}'.sub('{id}', CGI.escape(id.to_s).gsub('%2F', '/'))
391
+
392
+ # query parameters
393
+ query_params = opts[:query_params] || {}
394
+
395
+ # header parameters
396
+ header_params = opts[:header_params] || {}
397
+ # HTTP header 'Accept' (if needed)
398
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
399
+
400
+ # form parameters
401
+ form_params = opts[:form_params] || {}
402
+
403
+ # http body (model)
404
+ post_body = opts[:debug_body]
405
+
406
+ # return_type
407
+ return_type = opts[:debug_return_type]
408
+
409
+ # auth_names
410
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
411
+
412
+ new_options = opts.merge(
413
+ :operation => :delete_fleet_schedule,
414
+ :header_params => header_params,
415
+ :query_params => query_params,
416
+ :form_params => form_params,
417
+ :body => post_body,
418
+ :auth_names => auth_names,
419
+ :return_type => return_type,
420
+ :api_version => "V2"
421
+ )
422
+
423
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
424
+ if @api_client.config.debugging
425
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#delete_fleet_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
426
+ end
427
+ return data, status_code, headers
428
+ end
429
+
430
+ # Get a configuration deployment by ID.
174
431
  #
175
432
  # @see #get_fleet_deployment_with_http_info
176
433
  def get_fleet_deployment(deployment_id, opts = {})
@@ -178,12 +435,33 @@ module DatadogAPIClient::V2
178
435
  data
179
436
  end
180
437
 
181
- # Get a deployment by ID.
438
+ # Get a configuration deployment by ID.
439
+ #
440
+ # Retrieve detailed information about a specific deployment using its unique identifier.
441
+ # This endpoint returns comprehensive information about a deployment, including:
442
+ # - Deployment metadata (ID, type, filter query)
443
+ # - Total number of target hosts
444
+ # - Current high-level status (pending, running, succeeded, failed)
445
+ # - Estimated completion time
446
+ # - Configuration operations that were or are being applied
447
+ # - Detailed host list: A paginated array of hosts included in this deployment with individual
448
+ # host status, current package versions, and any errors
182
449
  #
183
- # Retrieve the details of a specific deployment using its unique identifier.
450
+ # The host list provides visibility into the per-host execution status, allowing you to:
451
+ # - Monitor which hosts have completed successfully
452
+ # - Identify hosts that are still in progress
453
+ # - Investigate failures on specific hosts
454
+ # - View current package versions installed on each host (including initial, target, and current
455
+ # versions for each package)
456
+ #
457
+ # Pagination: Use the `limit` and `page` query parameters to paginate through hosts. The response
458
+ # includes pagination metadata in the `meta.hosts` field with information about the current page,
459
+ # total pages, and total host count. The default page size is 50 hosts, with a maximum of 100.
184
460
  #
185
461
  # @param deployment_id [String] The unique identifier of the deployment to retrieve.
186
462
  # @param opts [Hash] the optional parameters
463
+ # @option opts [Integer] :limit Maximum number of hosts to return per page. Default is 50, maximum is 100.
464
+ # @option opts [Integer] :page Page index for pagination (zero-based). Use this to retrieve subsequent pages of hosts.
187
465
  # @return [Array<(FleetDeploymentResponse, Integer, Hash)>] FleetDeploymentResponse data, response status code and response headers
188
466
  def get_fleet_deployment_with_http_info(deployment_id, opts = {})
189
467
  unstable_enabled = @api_client.config.unstable_operations["v2.get_fleet_deployment".to_sym]
@@ -200,11 +478,16 @@ module DatadogAPIClient::V2
200
478
  if @api_client.config.client_side_validation && deployment_id.nil?
201
479
  fail ArgumentError, "Missing the required parameter 'deployment_id' when calling FleetAutomationAPI.get_fleet_deployment"
202
480
  end
481
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
482
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling FleetAutomationAPI.get_fleet_deployment, must be smaller than or equal to 100.'
483
+ end
203
484
  # resource path
204
485
  local_var_path = '/api/unstable/fleet/deployments/{deployment_id}'.sub('{deployment_id}', CGI.escape(deployment_id.to_s).gsub('%2F', '/'))
205
486
 
206
487
  # query parameters
207
488
  query_params = opts[:query_params] || {}
489
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
490
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
208
491
 
209
492
  # header parameters
210
493
  header_params = opts[:header_params] || {}
@@ -241,6 +524,154 @@ module DatadogAPIClient::V2
241
524
  return data, status_code, headers
242
525
  end
243
526
 
527
+ # Get a schedule by ID.
528
+ #
529
+ # @see #get_fleet_schedule_with_http_info
530
+ def get_fleet_schedule(id, opts = {})
531
+ data, _status_code, _headers = get_fleet_schedule_with_http_info(id, opts)
532
+ data
533
+ end
534
+
535
+ # Get a schedule by ID.
536
+ #
537
+ # Retrieve detailed information about a specific schedule using its unique identifier.
538
+ #
539
+ # This endpoint returns comprehensive information about a schedule, including:
540
+ # - Schedule metadata (ID, name, creation/update timestamps)
541
+ # - Filter query for selecting target hosts
542
+ # - Recurrence rule defining when deployments are triggered
543
+ # - Version strategy for package upgrades
544
+ # - Current status (active or inactive)
545
+ #
546
+ # @param id [String] The unique identifier of the schedule to retrieve.
547
+ # @param opts [Hash] the optional parameters
548
+ # @return [Array<(FleetScheduleResponse, Integer, Hash)>] FleetScheduleResponse data, response status code and response headers
549
+ def get_fleet_schedule_with_http_info(id, opts = {})
550
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_fleet_schedule".to_sym]
551
+ if unstable_enabled
552
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_fleet_schedule")
553
+ else
554
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_fleet_schedule"))
555
+ end
556
+
557
+ if @api_client.config.debugging
558
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.get_fleet_schedule ...'
559
+ end
560
+ # verify the required parameter 'id' is set
561
+ if @api_client.config.client_side_validation && id.nil?
562
+ fail ArgumentError, "Missing the required parameter 'id' when calling FleetAutomationAPI.get_fleet_schedule"
563
+ end
564
+ # resource path
565
+ local_var_path = '/api/unstable/fleet/schedules/{id}'.sub('{id}', CGI.escape(id.to_s).gsub('%2F', '/'))
566
+
567
+ # query parameters
568
+ query_params = opts[:query_params] || {}
569
+
570
+ # header parameters
571
+ header_params = opts[:header_params] || {}
572
+ # HTTP header 'Accept' (if needed)
573
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
574
+
575
+ # form parameters
576
+ form_params = opts[:form_params] || {}
577
+
578
+ # http body (model)
579
+ post_body = opts[:debug_body]
580
+
581
+ # return_type
582
+ return_type = opts[:debug_return_type] || 'FleetScheduleResponse'
583
+
584
+ # auth_names
585
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
586
+
587
+ new_options = opts.merge(
588
+ :operation => :get_fleet_schedule,
589
+ :header_params => header_params,
590
+ :query_params => query_params,
591
+ :form_params => form_params,
592
+ :body => post_body,
593
+ :auth_names => auth_names,
594
+ :return_type => return_type,
595
+ :api_version => "V2"
596
+ )
597
+
598
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
599
+ if @api_client.config.debugging
600
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#get_fleet_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
601
+ end
602
+ return data, status_code, headers
603
+ end
604
+
605
+ # List all available Agent versions.
606
+ #
607
+ # @see #list_fleet_agent_versions_with_http_info
608
+ def list_fleet_agent_versions(opts = {})
609
+ data, _status_code, _headers = list_fleet_agent_versions_with_http_info(opts)
610
+ data
611
+ end
612
+
613
+ # List all available Agent versions.
614
+ #
615
+ # Retrieve a list of all available Datadog Agent versions.
616
+ #
617
+ # This endpoint returns the available Agent versions that can be deployed to your fleet.
618
+ # These versions are used when creating deployments or configuring schedules for
619
+ # automated Agent upgrades.
620
+ #
621
+ # @param opts [Hash] the optional parameters
622
+ # @return [Array<(FleetAgentVersionsResponse, Integer, Hash)>] FleetAgentVersionsResponse data, response status code and response headers
623
+ def list_fleet_agent_versions_with_http_info(opts = {})
624
+ unstable_enabled = @api_client.config.unstable_operations["v2.list_fleet_agent_versions".to_sym]
625
+ if unstable_enabled
626
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_fleet_agent_versions")
627
+ else
628
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.list_fleet_agent_versions"))
629
+ end
630
+
631
+ if @api_client.config.debugging
632
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.list_fleet_agent_versions ...'
633
+ end
634
+ # resource path
635
+ local_var_path = '/api/unstable/fleet/agents'
636
+
637
+ # query parameters
638
+ query_params = opts[:query_params] || {}
639
+
640
+ # header parameters
641
+ header_params = opts[:header_params] || {}
642
+ # HTTP header 'Accept' (if needed)
643
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
644
+
645
+ # form parameters
646
+ form_params = opts[:form_params] || {}
647
+
648
+ # http body (model)
649
+ post_body = opts[:debug_body]
650
+
651
+ # return_type
652
+ return_type = opts[:debug_return_type] || 'FleetAgentVersionsResponse'
653
+
654
+ # auth_names
655
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
656
+
657
+ new_options = opts.merge(
658
+ :operation => :list_fleet_agent_versions,
659
+ :header_params => header_params,
660
+ :query_params => query_params,
661
+ :form_params => form_params,
662
+ :body => post_body,
663
+ :auth_names => auth_names,
664
+ :return_type => return_type,
665
+ :api_version => "V2"
666
+ )
667
+
668
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
669
+ if @api_client.config.debugging
670
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#list_fleet_agent_versions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
671
+ end
672
+ return data, status_code, headers
673
+ end
674
+
244
675
  # List all deployments.
245
676
  #
246
677
  # @see #list_fleet_deployments_with_http_info
@@ -314,5 +745,249 @@ module DatadogAPIClient::V2
314
745
  end
315
746
  return data, status_code, headers
316
747
  end
748
+
749
+ # List all schedules.
750
+ #
751
+ # @see #list_fleet_schedules_with_http_info
752
+ def list_fleet_schedules(opts = {})
753
+ data, _status_code, _headers = list_fleet_schedules_with_http_info(opts)
754
+ data
755
+ end
756
+
757
+ # List all schedules.
758
+ #
759
+ # Retrieve a list of all schedules for automated fleet deployments.
760
+ #
761
+ # Schedules allow you to automate package upgrades by defining maintenance windows
762
+ # and recurrence rules. Each schedule automatically creates deployments based on its
763
+ # configuration.
764
+ #
765
+ # @param opts [Hash] the optional parameters
766
+ # @return [Array<(FleetSchedulesResponse, Integer, Hash)>] FleetSchedulesResponse data, response status code and response headers
767
+ def list_fleet_schedules_with_http_info(opts = {})
768
+ unstable_enabled = @api_client.config.unstable_operations["v2.list_fleet_schedules".to_sym]
769
+ if unstable_enabled
770
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_fleet_schedules")
771
+ else
772
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.list_fleet_schedules"))
773
+ end
774
+
775
+ if @api_client.config.debugging
776
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.list_fleet_schedules ...'
777
+ end
778
+ # resource path
779
+ local_var_path = '/api/unstable/fleet/schedules'
780
+
781
+ # query parameters
782
+ query_params = opts[:query_params] || {}
783
+
784
+ # header parameters
785
+ header_params = opts[:header_params] || {}
786
+ # HTTP header 'Accept' (if needed)
787
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
788
+
789
+ # form parameters
790
+ form_params = opts[:form_params] || {}
791
+
792
+ # http body (model)
793
+ post_body = opts[:debug_body]
794
+
795
+ # return_type
796
+ return_type = opts[:debug_return_type] || 'FleetSchedulesResponse'
797
+
798
+ # auth_names
799
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
800
+
801
+ new_options = opts.merge(
802
+ :operation => :list_fleet_schedules,
803
+ :header_params => header_params,
804
+ :query_params => query_params,
805
+ :form_params => form_params,
806
+ :body => post_body,
807
+ :auth_names => auth_names,
808
+ :return_type => return_type,
809
+ :api_version => "V2"
810
+ )
811
+
812
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
813
+ if @api_client.config.debugging
814
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#list_fleet_schedules\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
815
+ end
816
+ return data, status_code, headers
817
+ end
818
+
819
+ # Trigger a schedule deployment.
820
+ #
821
+ # @see #trigger_fleet_schedule_with_http_info
822
+ def trigger_fleet_schedule(id, opts = {})
823
+ data, _status_code, _headers = trigger_fleet_schedule_with_http_info(id, opts)
824
+ data
825
+ end
826
+
827
+ # Trigger a schedule deployment.
828
+ #
829
+ # Manually trigger a schedule to immediately create and start a deployment.
830
+ #
831
+ # This endpoint allows you to manually initiate a deployment using the schedule's
832
+ # configuration, without waiting for the next scheduled maintenance window. This is
833
+ # useful for:
834
+ # - Testing a schedule before it runs automatically
835
+ # - Performing an emergency update outside the regular maintenance window
836
+ # - Creating an ad-hoc deployment with the same settings as a schedule
837
+ #
838
+ # The deployment is created immediately with:
839
+ # - The same filter query as the schedule
840
+ # - The package version determined by the schedule's version strategy
841
+ # - All matching hosts as targets
842
+ #
843
+ # The manually triggered deployment is independent of the schedule and does not
844
+ # affect the schedule's normal recurrence pattern.
845
+ #
846
+ # @param id [String] The unique identifier of the schedule to trigger.
847
+ # @param opts [Hash] the optional parameters
848
+ # @return [Array<(FleetDeploymentResponse, Integer, Hash)>] FleetDeploymentResponse data, response status code and response headers
849
+ def trigger_fleet_schedule_with_http_info(id, opts = {})
850
+ unstable_enabled = @api_client.config.unstable_operations["v2.trigger_fleet_schedule".to_sym]
851
+ if unstable_enabled
852
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.trigger_fleet_schedule")
853
+ else
854
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.trigger_fleet_schedule"))
855
+ end
856
+
857
+ if @api_client.config.debugging
858
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.trigger_fleet_schedule ...'
859
+ end
860
+ # verify the required parameter 'id' is set
861
+ if @api_client.config.client_side_validation && id.nil?
862
+ fail ArgumentError, "Missing the required parameter 'id' when calling FleetAutomationAPI.trigger_fleet_schedule"
863
+ end
864
+ # resource path
865
+ local_var_path = '/api/unstable/fleet/schedules/{id}/trigger'.sub('{id}', CGI.escape(id.to_s).gsub('%2F', '/'))
866
+
867
+ # query parameters
868
+ query_params = opts[:query_params] || {}
869
+
870
+ # header parameters
871
+ header_params = opts[:header_params] || {}
872
+ # HTTP header 'Accept' (if needed)
873
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
874
+
875
+ # form parameters
876
+ form_params = opts[:form_params] || {}
877
+
878
+ # http body (model)
879
+ post_body = opts[:debug_body]
880
+
881
+ # return_type
882
+ return_type = opts[:debug_return_type] || 'FleetDeploymentResponse'
883
+
884
+ # auth_names
885
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
886
+
887
+ new_options = opts.merge(
888
+ :operation => :trigger_fleet_schedule,
889
+ :header_params => header_params,
890
+ :query_params => query_params,
891
+ :form_params => form_params,
892
+ :body => post_body,
893
+ :auth_names => auth_names,
894
+ :return_type => return_type,
895
+ :api_version => "V2"
896
+ )
897
+
898
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
899
+ if @api_client.config.debugging
900
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#trigger_fleet_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
901
+ end
902
+ return data, status_code, headers
903
+ end
904
+
905
+ # Update a schedule.
906
+ #
907
+ # @see #update_fleet_schedule_with_http_info
908
+ def update_fleet_schedule(id, body, opts = {})
909
+ data, _status_code, _headers = update_fleet_schedule_with_http_info(id, body, opts)
910
+ data
911
+ end
912
+
913
+ # Update a schedule.
914
+ #
915
+ # Partially update a schedule by providing only the fields you want to change.
916
+ #
917
+ # This endpoint allows you to modify specific attributes of a schedule without
918
+ # affecting other fields. Common use cases include:
919
+ # - Changing the schedule status between active and inactive
920
+ # - Updating the maintenance window times
921
+ # - Modifying the filter query to target different hosts
922
+ # - Adjusting the version strategy
923
+ #
924
+ # Only include the fields you want to update in the request body. All fields
925
+ # are optional in a PATCH request.
926
+ #
927
+ # @param id [String] The unique identifier of the schedule to update.
928
+ # @param body [FleetSchedulePatchRequest] Request payload containing the fields to update.
929
+ # @param opts [Hash] the optional parameters
930
+ # @return [Array<(FleetScheduleResponse, Integer, Hash)>] FleetScheduleResponse data, response status code and response headers
931
+ def update_fleet_schedule_with_http_info(id, body, opts = {})
932
+ unstable_enabled = @api_client.config.unstable_operations["v2.update_fleet_schedule".to_sym]
933
+ if unstable_enabled
934
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.update_fleet_schedule")
935
+ else
936
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.update_fleet_schedule"))
937
+ end
938
+
939
+ if @api_client.config.debugging
940
+ @api_client.config.logger.debug 'Calling API: FleetAutomationAPI.update_fleet_schedule ...'
941
+ end
942
+ # verify the required parameter 'id' is set
943
+ if @api_client.config.client_side_validation && id.nil?
944
+ fail ArgumentError, "Missing the required parameter 'id' when calling FleetAutomationAPI.update_fleet_schedule"
945
+ end
946
+ # verify the required parameter 'body' is set
947
+ if @api_client.config.client_side_validation && body.nil?
948
+ fail ArgumentError, "Missing the required parameter 'body' when calling FleetAutomationAPI.update_fleet_schedule"
949
+ end
950
+ # resource path
951
+ local_var_path = '/api/unstable/fleet/schedules/{id}'.sub('{id}', CGI.escape(id.to_s).gsub('%2F', '/'))
952
+
953
+ # query parameters
954
+ query_params = opts[:query_params] || {}
955
+
956
+ # header parameters
957
+ header_params = opts[:header_params] || {}
958
+ # HTTP header 'Accept' (if needed)
959
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
960
+ # HTTP header 'Content-Type'
961
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
962
+
963
+ # form parameters
964
+ form_params = opts[:form_params] || {}
965
+
966
+ # http body (model)
967
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
968
+
969
+ # return_type
970
+ return_type = opts[:debug_return_type] || 'FleetScheduleResponse'
971
+
972
+ # auth_names
973
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
974
+
975
+ new_options = opts.merge(
976
+ :operation => :update_fleet_schedule,
977
+ :header_params => header_params,
978
+ :query_params => query_params,
979
+ :form_params => form_params,
980
+ :body => post_body,
981
+ :auth_names => auth_names,
982
+ :return_type => return_type,
983
+ :api_version => "V2"
984
+ )
985
+
986
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
987
+ if @api_client.config.debugging
988
+ @api_client.config.logger.debug "API called: FleetAutomationAPI#update_fleet_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
989
+ end
990
+ return data, status_code, headers
991
+ end
317
992
  end
318
993
  end