datadog_api_client 2.55.0 → 2.56.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 (298) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +186 -0
  3. data/.generator/schemas/v2/openapi.yaml +6914 -290
  4. data/CHANGELOG.md +35 -0
  5. data/examples/v1/logs-pipelines/CreateLogsPipeline_104735144.rb +32 -0
  6. data/examples/v1/logs-pipelines/CreateLogsPipeline_1185292896.rb +42 -0
  7. data/examples/v1/logs-pipelines/CreateLogsPipeline_2402034476.rb +29 -0
  8. data/examples/v1/logs-pipelines/CreateLogsPipeline_3996915493.rb +38 -0
  9. data/examples/v1/monitors/CreateMonitor_1539578087.rb +1 -0
  10. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +1 -1
  11. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_4007074677.rb +23 -0
  12. data/examples/v2/cloud-cost-management/DeleteCustomForecast.rb +8 -0
  13. data/examples/v2/cloud-cost-management/UpsertBudget.rb +14 -0
  14. data/examples/v2/cloud-cost-management/UpsertCustomForecast.rb +30 -0
  15. data/examples/v2/code-coverage/GetCodeCoverageBranchSummary.rb +1 -0
  16. data/examples/v2/code-coverage/GetCodeCoverageCommitSummary.rb +1 -0
  17. data/examples/v2/feature-flags/CreateVariantForFeatureFlag.rb +11 -0
  18. data/examples/v2/feature-flags/DeleteVariantFromFeatureFlag.rb +5 -0
  19. data/examples/v2/feature-flags/UpdateVariantForFeatureFlag.rb +10 -0
  20. data/examples/v2/governance-controls/GetGovernanceControl.rb +8 -0
  21. data/examples/v2/governance-controls/ListGovernanceControls.rb +8 -0
  22. data/examples/v2/governance-controls/UpdateGovernanceControl.rb +22 -0
  23. data/examples/v2/governance-insights/ListGovernanceInsights.rb +8 -0
  24. data/examples/v2/metrics/CreateTagIndexingRule.rb +3 -0
  25. data/examples/v2/metrics/CreateTagIndexingRuleExemption.rb +3 -0
  26. data/examples/v2/metrics/DeleteTagIndexingRule.rb +3 -0
  27. data/examples/v2/metrics/DeleteTagIndexingRuleExemption.rb +3 -0
  28. data/examples/v2/metrics/GetTagIndexingRule.rb +3 -0
  29. data/examples/v2/metrics/GetTagIndexingRuleExemption.rb +3 -0
  30. data/examples/v2/metrics/ListTagIndexingRules.rb +3 -0
  31. data/examples/v2/metrics/ListTagIndexingRulesForMetric.rb +3 -0
  32. data/examples/v2/metrics/ReorderTagIndexingRules.rb +3 -0
  33. data/examples/v2/metrics/UpdateTagIndexingRule.rb +3 -0
  34. data/examples/v2/observability-pipelines/ValidatePipeline_1238441879.rb +61 -0
  35. data/examples/v2/observability-pipelines/ValidatePipeline_253109967.rb +83 -0
  36. data/examples/v2/observability-pipelines/ValidatePipeline_337125830.rb +56 -0
  37. data/examples/v2/observability-pipelines/ValidatePipeline_620504950.rb +66 -0
  38. data/examples/v2/report-schedules/CreateReportSchedule.rb +1 -1
  39. data/examples/v2/report-schedules/DeleteReportSchedule.rb +5 -0
  40. data/examples/v2/report-schedules/GetReportSchedule.rb +5 -0
  41. data/examples/v2/report-schedules/GetReportSchedulesForResource.rb +5 -0
  42. data/examples/v2/report-schedules/ListReportSchedules.rb +5 -0
  43. data/examples/v2/report-schedules/PatchReportSchedule.rb +1 -1
  44. data/examples/v2/report-schedules/ToggleReportSchedule.rb +14 -0
  45. data/examples/v2/rum-remote-config/GetRumSdkConfig.rb +8 -0
  46. data/examples/v2/rum-remote-config/UpdateRumSdkConfig.rb +94 -0
  47. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationDueDateRule.rb +33 -0
  48. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationMuteRule.rb +27 -0
  49. data/examples/v2/security-monitoring/CreateSecurityFindingsAutomationTicketCreationRule.rb +29 -0
  50. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationDueDateRule.rb +11 -0
  51. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationMuteRule.rb +11 -0
  52. data/examples/v2/security-monitoring/DeleteSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  53. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationDueDateRule.rb +11 -0
  54. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationMuteRule.rb +11 -0
  55. data/examples/v2/security-monitoring/GetSecurityFindingsAutomationTicketCreationRule.rb +11 -0
  56. data/examples/v2/security-monitoring/ImportSecurityVulnerabilities.rb +77 -0
  57. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationDueDateRules.rb +8 -0
  58. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationMuteRules.rb +8 -0
  59. data/examples/v2/security-monitoring/ListSecurityFindingsAutomationTicketCreationRules.rb +8 -0
  60. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationDueDateRules.rb +20 -0
  61. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationMuteRules.rb +20 -0
  62. data/examples/v2/security-monitoring/ReorderSecurityFindingsAutomationTicketCreationRules.rb +20 -0
  63. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationDueDateRule.rb +36 -0
  64. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationMuteRule.rb +30 -0
  65. data/examples/v2/security-monitoring/UpdateSecurityFindingsAutomationTicketCreationRule.rb +32 -0
  66. data/examples/v2/status-pages/EditDegradationUpdate.rb +16 -0
  67. data/examples/v2/status-pages/SoftDeleteDegradationUpdate.rb +5 -0
  68. data/examples/v2/test-optimization/UpdateTestOptimizationServiceSettings.rb +7 -2
  69. data/examples/v2/workflow-automation/CreateWorkflow.rb +1 -1
  70. data/examples/v2/workflow-automation/UpdateWorkflow.rb +1 -1
  71. data/lib/datadog_api_client/configuration.rb +39 -1
  72. data/lib/datadog_api_client/inflector.rb +190 -0
  73. data/lib/datadog_api_client/v1/models/logs_array_map_arithmetic_sub_processor.rb +186 -0
  74. data/lib/datadog_api_client/v1/models/logs_array_map_attribute_remapper.rb +211 -0
  75. data/lib/datadog_api_client/v1/models/logs_array_map_category_sub_processor.rb +178 -0
  76. data/lib/datadog_api_client/v1/models/logs_array_map_processor.rb +228 -0
  77. data/lib/datadog_api_client/v1/models/logs_array_map_processor_type.rb +26 -0
  78. data/lib/datadog_api_client/v1/models/logs_array_map_string_builder_sub_processor.rb +186 -0
  79. data/lib/datadog_api_client/v1/models/logs_array_map_sub_processor.rb +67 -0
  80. data/lib/datadog_api_client/v1/models/logs_processor.rb +2 -1
  81. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +154 -1
  82. data/lib/datadog_api_client/v2/api/compliance_api.rb +5 -0
  83. data/lib/datadog_api_client/v2/api/feature_flags_api.rb +229 -0
  84. data/lib/datadog_api_client/v2/api/governance_controls_api.rb +246 -0
  85. data/lib/datadog_api_client/v2/api/governance_insights_api.rb +101 -0
  86. data/lib/datadog_api_client/v2/api/metrics_api.rb +67 -1
  87. data/lib/datadog_api_client/v2/api/report_schedules_api.rb +362 -0
  88. data/lib/datadog_api_client/v2/api/rum_remote_config_api.rb +176 -0
  89. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +1544 -119
  90. data/lib/datadog_api_client/v2/api/status_pages_api.rb +159 -0
  91. data/lib/datadog_api_client/v2/api/test_optimization_api.rb +3 -1
  92. data/lib/datadog_api_client/v2/models/automation_rule_actor_type.rb +27 -0
  93. data/lib/datadog_api_client/v2/models/automation_rule_created_by.rb +165 -0
  94. data/lib/datadog_api_client/v2/models/automation_rule_modified_by.rb +165 -0
  95. data/lib/datadog_api_client/v2/models/automation_rule_scope.rb +150 -0
  96. data/lib/datadog_api_client/v2/models/branch_coverage_summary_request_attributes.rb +27 -10
  97. data/lib/datadog_api_client/v2/models/budget_attributes.rb +41 -1
  98. data/lib/datadog_api_client/v2/models/budget_attributes_costs.rb +146 -0
  99. data/lib/datadog_api_client/v2/models/budget_attributes_costs_unit.rb +155 -0
  100. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items.rb +11 -1
  101. data/lib/datadog_api_client/v2/models/budget_with_entries_data_attributes_entries_items_costs.rb +157 -0
  102. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_finished_job.rb +427 -0
  103. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_in_progress_job.rb +406 -0
  104. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job.rb +36 -399
  105. data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_job_in_progress_status.rb +26 -0
  106. data/lib/datadog_api_client/v2/models/commit_coverage_summary_request_attributes.rb +27 -10
  107. data/lib/datadog_api_client/v2/models/create_backfilled_maintenance_request_data_attributes_updates_items.rb +1 -12
  108. data/lib/datadog_api_client/v2/models/create_maintenance_request_data_attributes.rb +1 -12
  109. data/lib/datadog_api_client/v2/models/create_status_page_request_data_attributes.rb +31 -1
  110. data/lib/datadog_api_client/v2/models/custom_forecast_entry.rb +167 -0
  111. data/lib/datadog_api_client/v2/models/custom_forecast_entry_tag_filter.rb +144 -0
  112. data/lib/datadog_api_client/v2/models/custom_forecast_response.rb +123 -0
  113. data/lib/datadog_api_client/v2/models/custom_forecast_response_data.rb +165 -0
  114. data/lib/datadog_api_client/v2/models/custom_forecast_response_data_attributes.rb +230 -0
  115. data/lib/datadog_api_client/v2/models/custom_forecast_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request.rb +123 -0
  117. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data.rb +154 -0
  118. data/lib/datadog_api_client/v2/models/custom_forecast_upsert_request_data_attributes.rb +147 -0
  119. data/lib/datadog_api_client/v2/models/cyclone_dx_bom.rb +221 -0
  120. data/lib/datadog_api_client/v2/models/cyclone_dx_component.rb +196 -0
  121. data/lib/datadog_api_client/v2/models/cyclone_dx_component_type.rb +28 -0
  122. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata.rb +144 -0
  123. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_component.rb +143 -0
  124. data/lib/datadog_api_client/v2/models/cyclone_dx_metadata_tools.rb +125 -0
  125. data/lib/datadog_api_client/v2/models/cyclone_dx_tool_component.rb +133 -0
  126. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability.rb +237 -0
  127. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_advisory.rb +105 -0
  128. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_affects.rb +123 -0
  129. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_analysis.rb +107 -0
  130. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_rating.rb +125 -0
  131. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference.rb +115 -0
  132. data/lib/datadog_api_client/v2/models/cyclone_dx_vulnerability_reference_source.rb +105 -0
  133. data/lib/datadog_api_client/v2/models/degradation_data_attributes_updates_items.rb +21 -1
  134. data/lib/datadog_api_client/v2/models/degradation_update.rb +117 -0
  135. data/lib/datadog_api_client/v2/models/degradation_update_data.rb +153 -0
  136. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes.rb +167 -0
  137. data/lib/datadog_api_client/v2/models/degradation_update_data_attributes_components_affected_items.rb +154 -0
  138. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships.rb +145 -0
  139. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation.rb +123 -0
  140. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_degradation_data.rb +144 -0
  141. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page.rb +123 -0
  142. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_status_page_data.rb +144 -0
  143. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user.rb +123 -0
  144. data/lib/datadog_api_client/v2/models/degradation_update_data_relationships_user_data.rb +144 -0
  145. data/lib/datadog_api_client/v2/models/degradation_update_included.rb +64 -0
  146. data/lib/datadog_api_client/v2/models/due_date_from.rb +27 -0
  147. data/lib/datadog_api_client/v2/models/due_date_per_severity_item.rb +152 -0
  148. data/lib/datadog_api_client/v2/models/due_date_rule_action.rb +167 -0
  149. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_create.rb +183 -0
  150. data/lib/datadog_api_client/v2/models/due_date_rule_attributes_response.rb +278 -0
  151. data/lib/datadog_api_client/v2/models/due_date_rule_create_request.rb +123 -0
  152. data/lib/datadog_api_client/v2/models/due_date_rule_data_create.rb +144 -0
  153. data/lib/datadog_api_client/v2/models/due_date_rule_data_response.rb +165 -0
  154. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_item.rb +144 -0
  155. data/lib/datadog_api_client/v2/models/due_date_rule_reorder_request.rb +125 -0
  156. data/lib/datadog_api_client/v2/models/due_date_rule_response.rb +123 -0
  157. data/lib/datadog_api_client/v2/models/due_date_rule_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/due_date_rule_update_request.rb +123 -0
  159. data/lib/datadog_api_client/v2/models/due_date_rules_response.rb +167 -0
  160. data/lib/datadog_api_client/v2/models/due_date_severity.rb +32 -0
  161. data/lib/datadog_api_client/v2/models/governance_best_practice_definition.rb +379 -0
  162. data/lib/datadog_api_client/v2/models/governance_control_attributes.rb +739 -0
  163. data/lib/datadog_api_client/v2/models/governance_control_data.rb +165 -0
  164. data/lib/datadog_api_client/v2/models/governance_control_mitigation_definition.rb +309 -0
  165. data/lib/datadog_api_client/v2/models/governance_control_parameter_definition.rb +272 -0
  166. data/lib/datadog_api_client/v2/models/governance_control_resource_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/governance_control_response.rb +123 -0
  168. data/lib/datadog_api_client/v2/models/governance_control_supported_value.rb +144 -0
  169. data/lib/datadog_api_client/v2/models/governance_control_update_attributes.rb +175 -0
  170. data/lib/datadog_api_client/v2/models/governance_control_update_data.rb +143 -0
  171. data/lib/datadog_api_client/v2/models/governance_control_update_request.rb +123 -0
  172. data/lib/datadog_api_client/v2/models/governance_controls_response.rb +125 -0
  173. data/lib/datadog_api_client/v2/models/governance_insight_attributes.rb +448 -0
  174. data/lib/datadog_api_client/v2/models/governance_insight_audit_compute.rb +175 -0
  175. data/lib/datadog_api_client/v2/models/governance_insight_audit_query.rb +188 -0
  176. data/lib/datadog_api_client/v2/models/governance_insight_data.rb +165 -0
  177. data/lib/datadog_api_client/v2/models/governance_insight_event_compute.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/governance_insight_event_query.rb +156 -0
  179. data/lib/datadog_api_client/v2/models/governance_insight_metric_query.rb +165 -0
  180. data/lib/datadog_api_client/v2/models/governance_insight_percentage_query.rb +144 -0
  181. data/lib/datadog_api_client/v2/models/governance_insight_query_config.rb +175 -0
  182. data/lib/datadog_api_client/v2/models/governance_insight_resource_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/governance_insight_usage_query.rb +144 -0
  184. data/lib/datadog_api_client/v2/models/governance_insights_response.rb +125 -0
  185. data/lib/datadog_api_client/v2/models/metric.rb +12 -2
  186. data/lib/datadog_api_client/v2/models/metric_ingested_indexed_volume_attributes.rb +2 -2
  187. data/lib/datadog_api_client/v2/models/metric_relationships.rb +105 -0
  188. data/lib/datadog_api_client/v2/models/metric_tag_configuration.rb +11 -1
  189. data/lib/datadog_api_client/v2/models/metric_volumes_relationship.rb +105 -0
  190. data/lib/datadog_api_client/v2/models/metric_volumes_relationship_data.rb +115 -0
  191. data/lib/datadog_api_client/v2/models/metrics_and_metric_tag_configurations_response.rb +13 -1
  192. data/lib/datadog_api_client/v2/models/mute_reason.rb +31 -0
  193. data/lib/datadog_api_client/v2/models/mute_rule_action.rb +154 -0
  194. data/lib/datadog_api_client/v2/models/mute_rule_attributes_create.rb +183 -0
  195. data/lib/datadog_api_client/v2/models/mute_rule_attributes_response.rb +278 -0
  196. data/lib/datadog_api_client/v2/models/mute_rule_create_request.rb +123 -0
  197. data/lib/datadog_api_client/v2/models/mute_rule_data_create.rb +144 -0
  198. data/lib/datadog_api_client/v2/models/mute_rule_data_response.rb +165 -0
  199. data/lib/datadog_api_client/v2/models/mute_rule_reorder_item.rb +144 -0
  200. data/lib/datadog_api_client/v2/models/mute_rule_reorder_request.rb +125 -0
  201. data/lib/datadog_api_client/v2/models/mute_rule_response.rb +123 -0
  202. data/lib/datadog_api_client/v2/models/mute_rule_type.rb +26 -0
  203. data/lib/datadog_api_client/v2/models/mute_rule_update_request.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/mute_rules_response.rb +167 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination.rb +318 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth.rb +144 -0
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_auth_strategy.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch.rb +148 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding.rb +135 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_batch_encoding_codec.rb +26 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression.rb +65 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_algorithm.rb +27 -0
  213. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_compression_object.rb +149 -0
  214. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_format.rb +33 -0
  215. data/lib/datadog_api_client/v2/models/observability_pipeline_clickhouse_destination_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination.rb +11 -1
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +1 -0
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +1 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source.rb +248 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_auth_strategy.rb +29 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls.rb +63 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled.rb +123 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_enabled_mode.rb +26 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert.rb +174 -0
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_tls_with_client_cert_mode.rb +26 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_websocket_source_type.rb +26 -0
  227. data/lib/datadog_api_client/v2/models/patch_degradation_update_request.rb +105 -0
  228. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data.rb +143 -0
  229. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes.rb +115 -0
  230. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_attributes_status.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/patch_degradation_update_request_data_type.rb +26 -0
  232. data/lib/datadog_api_client/v2/models/patch_status_page_request_data_attributes.rb +21 -1
  233. data/lib/datadog_api_client/v2/models/report_schedule_included_resource.rb +2 -1
  234. data/lib/datadog_api_client/v2/models/report_schedule_included_resource_type.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/report_schedule_index_template_variable.rb +150 -0
  236. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship.rb +123 -0
  237. data/lib/datadog_api_client/v2/models/report_schedule_list_resource_relationship_data.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/report_schedule_list_response.rb +157 -0
  239. data/lib/datadog_api_client/v2/models/report_schedule_list_response_attributes.rb +335 -0
  240. data/lib/datadog_api_client/v2/models/report_schedule_list_response_data.rb +186 -0
  241. data/lib/datadog_api_client/v2/models/report_schedule_list_response_links.rb +157 -0
  242. data/lib/datadog_api_client/v2/models/report_schedule_list_response_meta.rb +105 -0
  243. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination.rb +183 -0
  244. data/lib/datadog_api_client/v2/models/report_schedule_list_response_pagination_type.rb +26 -0
  245. data/lib/datadog_api_client/v2/models/report_schedule_list_response_relationships.rb +133 -0
  246. data/lib/datadog_api_client/v2/models/report_schedule_resource.rb +165 -0
  247. data/lib/datadog_api_client/v2/models/report_schedule_resource_attributes.rb +154 -0
  248. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request.rb +123 -0
  249. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_attributes.rb +123 -0
  250. data/lib/datadog_api_client/v2/models/report_schedule_toggle_request_data.rb +144 -0
  251. data/lib/datadog_api_client/v2/models/rum_application_attributes.rb +11 -1
  252. data/lib/datadog_api_client/v2/models/rum_sdk_config_attributes.rb +123 -0
  253. data/lib/datadog_api_client/v2/models/rum_sdk_config_data.rb +175 -0
  254. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option.rb +204 -0
  255. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_pair.rb +144 -0
  256. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_serialized_type.rb +26 -0
  257. data/lib/datadog_api_client/v2/models/rum_sdk_config_dynamic_option_strategy.rb +29 -0
  258. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option.rb +144 -0
  259. data/lib/datadog_api_client/v2/models/rum_sdk_config_match_option_serialized_type.rb +27 -0
  260. data/lib/datadog_api_client/v2/models/rum_sdk_config_meta.rb +144 -0
  261. data/lib/datadog_api_client/v2/models/rum_sdk_config_response.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_attributes.rb +336 -0
  263. data/lib/datadog_api_client/v2/models/rum_sdk_config_rum_update_attributes.rb +315 -0
  264. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex.rb +144 -0
  265. data/lib/datadog_api_client/v2/models/rum_sdk_config_serialized_regex_type.rb +26 -0
  266. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_config.rb +146 -0
  267. data/lib/datadog_api_client/v2/models/rum_sdk_config_tracing_url_propagator_type.rb +29 -0
  268. data/lib/datadog_api_client/v2/models/rum_sdk_config_type.rb +26 -0
  269. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_attributes.rb +123 -0
  270. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_data.rb +165 -0
  271. data/lib/datadog_api_client/v2/models/rum_sdk_config_update_request.rb +123 -0
  272. data/lib/datadog_api_client/v2/models/security_automation_rules_links.rb +164 -0
  273. data/lib/datadog_api_client/v2/models/security_automation_rules_meta.rb +123 -0
  274. data/lib/datadog_api_client/v2/models/security_automation_rules_page_info.rb +123 -0
  275. data/lib/datadog_api_client/v2/models/security_finding_type.rb +36 -0
  276. data/lib/datadog_api_client/v2/models/security_monitoring_terraform_resource_type.rb +2 -0
  277. data/lib/datadog_api_client/v2/models/status_page_as_included_attributes.rb +21 -1
  278. data/lib/datadog_api_client/v2/models/status_page_data_attributes.rb +21 -1
  279. data/lib/datadog_api_client/v2/models/test_optimization_service_settings_attributes.rb +54 -4
  280. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_attributes.rb +60 -9
  281. data/lib/datadog_api_client/v2/models/test_optimization_update_service_settings_request_data.rb +1 -0
  282. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action.rb +193 -0
  283. data/lib/datadog_api_client/v2/models/ticket_creation_rule_action_response.rb +203 -0
  284. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_create.rb +183 -0
  285. data/lib/datadog_api_client/v2/models/ticket_creation_rule_attributes_response.rb +278 -0
  286. data/lib/datadog_api_client/v2/models/ticket_creation_rule_create_request.rb +123 -0
  287. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_create.rb +144 -0
  288. data/lib/datadog_api_client/v2/models/ticket_creation_rule_data_response.rb +165 -0
  289. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_item.rb +144 -0
  290. data/lib/datadog_api_client/v2/models/ticket_creation_rule_reorder_request.rb +125 -0
  291. data/lib/datadog_api_client/v2/models/ticket_creation_rule_response.rb +123 -0
  292. data/lib/datadog_api_client/v2/models/ticket_creation_rule_type.rb +26 -0
  293. data/lib/datadog_api_client/v2/models/ticket_creation_rule_update_request.rb +123 -0
  294. data/lib/datadog_api_client/v2/models/ticket_creation_rules_response.rb +167 -0
  295. data/lib/datadog_api_client/v2/models/ticket_creation_target.rb +27 -0
  296. data/lib/datadog_api_client/v2/models/update_variant_request.rb +115 -0
  297. data/lib/datadog_api_client/version.rb +1 -1
  298. metadata +237 -1
@@ -300,6 +300,84 @@ module DatadogAPIClient::V2
300
300
  return data, status_code, headers
301
301
  end
302
302
 
303
+ # Add a variant to a feature flag.
304
+ #
305
+ # @see #create_variant_for_feature_flag_with_http_info
306
+ def create_variant_for_feature_flag(feature_flag_id, body, opts = {})
307
+ data, _status_code, _headers = create_variant_for_feature_flag_with_http_info(feature_flag_id, body, opts)
308
+ data
309
+ end
310
+
311
+ # Add a variant to a feature flag.
312
+ #
313
+ # Adds a single new variant to an existing feature flag. This endpoint is
314
+ # additive-only: it never modifies existing variants. A request whose `key`
315
+ # already exists on the flag is rejected with `409 Conflict`; a `value`
316
+ # whose type does not match the flag's `value_type` is rejected with `400`.
317
+ # The server generates the variant UUID and returns it in the response body;
318
+ # callers (for example, the flag-migration tool) need this UUID to reference
319
+ # the new variant in subsequent allocation syncs.
320
+ #
321
+ # @param feature_flag_id [UUID] The ID of the feature flag.
322
+ # @param body [CreateVariant]
323
+ # @param opts [Hash] the optional parameters
324
+ # @return [Array<(Variant, Integer, Hash)>] Variant data, response status code and response headers
325
+ def create_variant_for_feature_flag_with_http_info(feature_flag_id, body, opts = {})
326
+
327
+ if @api_client.config.debugging
328
+ @api_client.config.logger.debug 'Calling API: FeatureFlagsAPI.create_variant_for_feature_flag ...'
329
+ end
330
+ # verify the required parameter 'feature_flag_id' is set
331
+ if @api_client.config.client_side_validation && feature_flag_id.nil?
332
+ fail ArgumentError, "Missing the required parameter 'feature_flag_id' when calling FeatureFlagsAPI.create_variant_for_feature_flag"
333
+ end
334
+ # verify the required parameter 'body' is set
335
+ if @api_client.config.client_side_validation && body.nil?
336
+ fail ArgumentError, "Missing the required parameter 'body' when calling FeatureFlagsAPI.create_variant_for_feature_flag"
337
+ end
338
+ # resource path
339
+ local_var_path = '/api/v2/feature-flags/{feature_flag_id}/variants'.sub('{feature_flag_id}', CGI.escape(feature_flag_id.to_s).gsub('%2F', '/'))
340
+
341
+ # query parameters
342
+ query_params = opts[:query_params] || {}
343
+
344
+ # header parameters
345
+ header_params = opts[:header_params] || {}
346
+ # HTTP header 'Accept' (if needed)
347
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
348
+ # HTTP header 'Content-Type'
349
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
350
+
351
+ # form parameters
352
+ form_params = opts[:form_params] || {}
353
+
354
+ # http body (model)
355
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
356
+
357
+ # return_type
358
+ return_type = opts[:debug_return_type] || 'Variant'
359
+
360
+ # auth_names
361
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
362
+
363
+ new_options = opts.merge(
364
+ :operation => :create_variant_for_feature_flag,
365
+ :header_params => header_params,
366
+ :query_params => query_params,
367
+ :form_params => form_params,
368
+ :body => post_body,
369
+ :auth_names => auth_names,
370
+ :return_type => return_type,
371
+ :api_version => "V2"
372
+ )
373
+
374
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
375
+ if @api_client.config.debugging
376
+ @api_client.config.logger.debug "API called: FeatureFlagsAPI#create_variant_for_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
377
+ end
378
+ return data, status_code, headers
379
+ end
380
+
303
381
  # Delete an environment.
304
382
  #
305
383
  # @see #delete_feature_flags_environment_with_http_info
@@ -365,6 +443,78 @@ module DatadogAPIClient::V2
365
443
  return data, status_code, headers
366
444
  end
367
445
 
446
+ # Delete a variant.
447
+ #
448
+ # @see #delete_variant_from_feature_flag_with_http_info
449
+ def delete_variant_from_feature_flag(feature_flag_id, variant_id, opts = {})
450
+ delete_variant_from_feature_flag_with_http_info(feature_flag_id, variant_id, opts)
451
+ nil
452
+ end
453
+
454
+ # Delete a variant.
455
+ #
456
+ # Deletes a variant from a feature flag.
457
+ #
458
+ # When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of deleting the variant immediately. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`.
459
+ #
460
+ # @param feature_flag_id [UUID] The ID of the feature flag.
461
+ # @param variant_id [UUID] The ID of the variant.
462
+ # @param opts [Hash] the optional parameters
463
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
464
+ def delete_variant_from_feature_flag_with_http_info(feature_flag_id, variant_id, opts = {})
465
+
466
+ if @api_client.config.debugging
467
+ @api_client.config.logger.debug 'Calling API: FeatureFlagsAPI.delete_variant_from_feature_flag ...'
468
+ end
469
+ # verify the required parameter 'feature_flag_id' is set
470
+ if @api_client.config.client_side_validation && feature_flag_id.nil?
471
+ fail ArgumentError, "Missing the required parameter 'feature_flag_id' when calling FeatureFlagsAPI.delete_variant_from_feature_flag"
472
+ end
473
+ # verify the required parameter 'variant_id' is set
474
+ if @api_client.config.client_side_validation && variant_id.nil?
475
+ fail ArgumentError, "Missing the required parameter 'variant_id' when calling FeatureFlagsAPI.delete_variant_from_feature_flag"
476
+ end
477
+ # resource path
478
+ local_var_path = '/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id}'.sub('{feature_flag_id}', CGI.escape(feature_flag_id.to_s).gsub('%2F', '/')).sub('{variant_id}', CGI.escape(variant_id.to_s).gsub('%2F', '/'))
479
+
480
+ # query parameters
481
+ query_params = opts[:query_params] || {}
482
+
483
+ # header parameters
484
+ header_params = opts[:header_params] || {}
485
+ # HTTP header 'Accept' (if needed)
486
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
487
+
488
+ # form parameters
489
+ form_params = opts[:form_params] || {}
490
+
491
+ # http body (model)
492
+ post_body = opts[:debug_body]
493
+
494
+ # return_type
495
+ return_type = opts[:debug_return_type]
496
+
497
+ # auth_names
498
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
499
+
500
+ new_options = opts.merge(
501
+ :operation => :delete_variant_from_feature_flag,
502
+ :header_params => header_params,
503
+ :query_params => query_params,
504
+ :form_params => form_params,
505
+ :body => post_body,
506
+ :auth_names => auth_names,
507
+ :return_type => return_type,
508
+ :api_version => "V2"
509
+ )
510
+
511
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
512
+ if @api_client.config.debugging
513
+ @api_client.config.logger.debug "API called: FeatureFlagsAPI#delete_variant_from_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
514
+ end
515
+ return data, status_code, headers
516
+ end
517
+
368
518
  # Disable a feature flag in an environment.
369
519
  #
370
520
  # @see #disable_feature_flag_environment_with_http_info
@@ -1341,5 +1491,84 @@ module DatadogAPIClient::V2
1341
1491
  end
1342
1492
  return data, status_code, headers
1343
1493
  end
1494
+
1495
+ # Update a variant.
1496
+ #
1497
+ # @see #update_variant_for_feature_flag_with_http_info
1498
+ def update_variant_for_feature_flag(feature_flag_id, variant_id, body, opts = {})
1499
+ data, _status_code, _headers = update_variant_for_feature_flag_with_http_info(feature_flag_id, variant_id, body, opts)
1500
+ data
1501
+ end
1502
+
1503
+ # Update a variant.
1504
+ #
1505
+ # Updates the name and value of an existing variant on a feature flag.
1506
+ #
1507
+ # When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of applying the change immediately. Use the returned suggestion `id` to approve or reject the change. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`.
1508
+ #
1509
+ # @param feature_flag_id [UUID] The ID of the feature flag.
1510
+ # @param variant_id [UUID] The ID of the variant.
1511
+ # @param body [UpdateVariantRequest]
1512
+ # @param opts [Hash] the optional parameters
1513
+ # @return [Array<(Variant, Integer, Hash)>] Variant data, response status code and response headers
1514
+ def update_variant_for_feature_flag_with_http_info(feature_flag_id, variant_id, body, opts = {})
1515
+
1516
+ if @api_client.config.debugging
1517
+ @api_client.config.logger.debug 'Calling API: FeatureFlagsAPI.update_variant_for_feature_flag ...'
1518
+ end
1519
+ # verify the required parameter 'feature_flag_id' is set
1520
+ if @api_client.config.client_side_validation && feature_flag_id.nil?
1521
+ fail ArgumentError, "Missing the required parameter 'feature_flag_id' when calling FeatureFlagsAPI.update_variant_for_feature_flag"
1522
+ end
1523
+ # verify the required parameter 'variant_id' is set
1524
+ if @api_client.config.client_side_validation && variant_id.nil?
1525
+ fail ArgumentError, "Missing the required parameter 'variant_id' when calling FeatureFlagsAPI.update_variant_for_feature_flag"
1526
+ end
1527
+ # verify the required parameter 'body' is set
1528
+ if @api_client.config.client_side_validation && body.nil?
1529
+ fail ArgumentError, "Missing the required parameter 'body' when calling FeatureFlagsAPI.update_variant_for_feature_flag"
1530
+ end
1531
+ # resource path
1532
+ local_var_path = '/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id}'.sub('{feature_flag_id}', CGI.escape(feature_flag_id.to_s).gsub('%2F', '/')).sub('{variant_id}', CGI.escape(variant_id.to_s).gsub('%2F', '/'))
1533
+
1534
+ # query parameters
1535
+ query_params = opts[:query_params] || {}
1536
+
1537
+ # header parameters
1538
+ header_params = opts[:header_params] || {}
1539
+ # HTTP header 'Accept' (if needed)
1540
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1541
+ # HTTP header 'Content-Type'
1542
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1543
+
1544
+ # form parameters
1545
+ form_params = opts[:form_params] || {}
1546
+
1547
+ # http body (model)
1548
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
1549
+
1550
+ # return_type
1551
+ return_type = opts[:debug_return_type] || 'Variant'
1552
+
1553
+ # auth_names
1554
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
1555
+
1556
+ new_options = opts.merge(
1557
+ :operation => :update_variant_for_feature_flag,
1558
+ :header_params => header_params,
1559
+ :query_params => query_params,
1560
+ :form_params => form_params,
1561
+ :body => post_body,
1562
+ :auth_names => auth_names,
1563
+ :return_type => return_type,
1564
+ :api_version => "V2"
1565
+ )
1566
+
1567
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
1568
+ if @api_client.config.debugging
1569
+ @api_client.config.logger.debug "API called: FeatureFlagsAPI#update_variant_for_feature_flag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1570
+ end
1571
+ return data, status_code, headers
1572
+ end
1344
1573
  end
1345
1574
  end
@@ -0,0 +1,246 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'cgi'
17
+
18
+ module DatadogAPIClient::V2
19
+ class GovernanceControlsAPI
20
+ attr_accessor :api_client
21
+
22
+ def initialize(api_client = DatadogAPIClient::APIClient.default)
23
+ @api_client = api_client
24
+ end
25
+
26
+ # Get a governance control.
27
+ #
28
+ # @see #get_governance_control_with_http_info
29
+ def get_governance_control(detection_type, opts = {})
30
+ data, _status_code, _headers = get_governance_control_with_http_info(detection_type, opts)
31
+ data
32
+ end
33
+
34
+ # Get a governance control.
35
+ #
36
+ # Retrieve a single governance control by its detection type, including the organization's current
37
+ # detection, notification, and mitigation configuration and detection counts.
38
+ #
39
+ # @param detection_type [String] The detection type that identifies the control, for example `unused_api_keys`.
40
+ # @param opts [Hash] the optional parameters
41
+ # @return [Array<(GovernanceControlResponse, Integer, Hash)>] GovernanceControlResponse data, response status code and response headers
42
+ def get_governance_control_with_http_info(detection_type, opts = {})
43
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_governance_control".to_sym]
44
+ if unstable_enabled
45
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_governance_control")
46
+ else
47
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_governance_control"))
48
+ end
49
+
50
+ if @api_client.config.debugging
51
+ @api_client.config.logger.debug 'Calling API: GovernanceControlsAPI.get_governance_control ...'
52
+ end
53
+ # verify the required parameter 'detection_type' is set
54
+ if @api_client.config.client_side_validation && detection_type.nil?
55
+ fail ArgumentError, "Missing the required parameter 'detection_type' when calling GovernanceControlsAPI.get_governance_control"
56
+ end
57
+ # resource path
58
+ local_var_path = '/api/v2/governance/control/{detection_type}'.sub('{detection_type}', CGI.escape(detection_type.to_s).gsub('%2F', '/'))
59
+
60
+ # query parameters
61
+ query_params = opts[:query_params] || {}
62
+
63
+ # header parameters
64
+ header_params = opts[:header_params] || {}
65
+ # HTTP header 'Accept' (if needed)
66
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
67
+
68
+ # form parameters
69
+ form_params = opts[:form_params] || {}
70
+
71
+ # http body (model)
72
+ post_body = opts[:debug_body]
73
+
74
+ # return_type
75
+ return_type = opts[:debug_return_type] || 'GovernanceControlResponse'
76
+
77
+ # auth_names
78
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
79
+
80
+ new_options = opts.merge(
81
+ :operation => :get_governance_control,
82
+ :header_params => header_params,
83
+ :query_params => query_params,
84
+ :form_params => form_params,
85
+ :body => post_body,
86
+ :auth_names => auth_names,
87
+ :return_type => return_type,
88
+ :api_version => "V2"
89
+ )
90
+
91
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
92
+ if @api_client.config.debugging
93
+ @api_client.config.logger.debug "API called: GovernanceControlsAPI#get_governance_control\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
94
+ end
95
+ return data, status_code, headers
96
+ end
97
+
98
+ # List governance controls.
99
+ #
100
+ # @see #list_governance_controls_with_http_info
101
+ def list_governance_controls(opts = {})
102
+ data, _status_code, _headers = list_governance_controls_with_http_info(opts)
103
+ data
104
+ end
105
+
106
+ # List governance controls.
107
+ #
108
+ # Retrieve the list of governance controls configured for the organization. Each control pairs a
109
+ # detection definition with the organization's current detection, notification, and mitigation
110
+ # configuration, along with counts of active and mitigated detections.
111
+ #
112
+ # @param opts [Hash] the optional parameters
113
+ # @return [Array<(GovernanceControlsResponse, Integer, Hash)>] GovernanceControlsResponse data, response status code and response headers
114
+ def list_governance_controls_with_http_info(opts = {})
115
+ unstable_enabled = @api_client.config.unstable_operations["v2.list_governance_controls".to_sym]
116
+ if unstable_enabled
117
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_governance_controls")
118
+ else
119
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.list_governance_controls"))
120
+ end
121
+
122
+ if @api_client.config.debugging
123
+ @api_client.config.logger.debug 'Calling API: GovernanceControlsAPI.list_governance_controls ...'
124
+ end
125
+ # resource path
126
+ local_var_path = '/api/v2/governance/control'
127
+
128
+ # query parameters
129
+ query_params = opts[:query_params] || {}
130
+
131
+ # header parameters
132
+ header_params = opts[:header_params] || {}
133
+ # HTTP header 'Accept' (if needed)
134
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
135
+
136
+ # form parameters
137
+ form_params = opts[:form_params] || {}
138
+
139
+ # http body (model)
140
+ post_body = opts[:debug_body]
141
+
142
+ # return_type
143
+ return_type = opts[:debug_return_type] || 'GovernanceControlsResponse'
144
+
145
+ # auth_names
146
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
147
+
148
+ new_options = opts.merge(
149
+ :operation => :list_governance_controls,
150
+ :header_params => header_params,
151
+ :query_params => query_params,
152
+ :form_params => form_params,
153
+ :body => post_body,
154
+ :auth_names => auth_names,
155
+ :return_type => return_type,
156
+ :api_version => "V2"
157
+ )
158
+
159
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
160
+ if @api_client.config.debugging
161
+ @api_client.config.logger.debug "API called: GovernanceControlsAPI#list_governance_controls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
162
+ end
163
+ return data, status_code, headers
164
+ end
165
+
166
+ # Update a governance control.
167
+ #
168
+ # @see #update_governance_control_with_http_info
169
+ def update_governance_control(detection_type, body, opts = {})
170
+ data, _status_code, _headers = update_governance_control_with_http_info(detection_type, body, opts)
171
+ data
172
+ end
173
+
174
+ # Update a governance control.
175
+ #
176
+ # Update the detection, notification, and mitigation configuration of a governance control. Only
177
+ # the attributes present in the request are modified. Changing the mitigation type or its
178
+ # parameters may require additional permissions.
179
+ #
180
+ # @param detection_type [String] The detection type that identifies the control, for example `unused_api_keys`.
181
+ # @param body [GovernanceControlUpdateRequest]
182
+ # @param opts [Hash] the optional parameters
183
+ # @return [Array<(GovernanceControlResponse, Integer, Hash)>] GovernanceControlResponse data, response status code and response headers
184
+ def update_governance_control_with_http_info(detection_type, body, opts = {})
185
+ unstable_enabled = @api_client.config.unstable_operations["v2.update_governance_control".to_sym]
186
+ if unstable_enabled
187
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.update_governance_control")
188
+ else
189
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.update_governance_control"))
190
+ end
191
+
192
+ if @api_client.config.debugging
193
+ @api_client.config.logger.debug 'Calling API: GovernanceControlsAPI.update_governance_control ...'
194
+ end
195
+ # verify the required parameter 'detection_type' is set
196
+ if @api_client.config.client_side_validation && detection_type.nil?
197
+ fail ArgumentError, "Missing the required parameter 'detection_type' when calling GovernanceControlsAPI.update_governance_control"
198
+ end
199
+ # verify the required parameter 'body' is set
200
+ if @api_client.config.client_side_validation && body.nil?
201
+ fail ArgumentError, "Missing the required parameter 'body' when calling GovernanceControlsAPI.update_governance_control"
202
+ end
203
+ # resource path
204
+ local_var_path = '/api/v2/governance/control/{detection_type}'.sub('{detection_type}', CGI.escape(detection_type.to_s).gsub('%2F', '/'))
205
+
206
+ # query parameters
207
+ query_params = opts[:query_params] || {}
208
+
209
+ # header parameters
210
+ header_params = opts[:header_params] || {}
211
+ # HTTP header 'Accept' (if needed)
212
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
213
+ # HTTP header 'Content-Type'
214
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
215
+
216
+ # form parameters
217
+ form_params = opts[:form_params] || {}
218
+
219
+ # http body (model)
220
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
221
+
222
+ # return_type
223
+ return_type = opts[:debug_return_type] || 'GovernanceControlResponse'
224
+
225
+ # auth_names
226
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
227
+
228
+ new_options = opts.merge(
229
+ :operation => :update_governance_control,
230
+ :header_params => header_params,
231
+ :query_params => query_params,
232
+ :form_params => form_params,
233
+ :body => post_body,
234
+ :auth_names => auth_names,
235
+ :return_type => return_type,
236
+ :api_version => "V2"
237
+ )
238
+
239
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
240
+ if @api_client.config.debugging
241
+ @api_client.config.logger.debug "API called: GovernanceControlsAPI#update_governance_control\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
242
+ end
243
+ return data, status_code, headers
244
+ end
245
+ end
246
+ end
@@ -0,0 +1,101 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'cgi'
17
+
18
+ module DatadogAPIClient::V2
19
+ class GovernanceInsightsAPI
20
+ attr_accessor :api_client
21
+
22
+ def initialize(api_client = DatadogAPIClient::APIClient.default)
23
+ @api_client = api_client
24
+ end
25
+
26
+ # List governance insights.
27
+ #
28
+ # @see #list_governance_insights_with_http_info
29
+ def list_governance_insights(opts = {})
30
+ data, _status_code, _headers = list_governance_insights_with_http_info(opts)
31
+ data
32
+ end
33
+
34
+ # List governance insights.
35
+ #
36
+ # Retrieve the list of governance insights available to the organization. By default, only
37
+ # insight metadata is returned; pass `withValues=true` to also compute and include each
38
+ # insight's current and previous values. Insights can be filtered by product.
39
+ #
40
+ # @param opts [Hash] the optional parameters
41
+ # @option opts [Boolean] :with_values Whether to compute and include the current and previous value of each insight. Defaults to `false`, in which case only insight metadata is returned.
42
+ # @option opts [String] :org_uuid The UUID of the organization to compute insights for. Defaults to the organization of the authenticated user. Used to retrieve insights for a child organization from a parent organization.
43
+ # @option opts [Array<String>] :filter_product Restrict the results to insights belonging to the given products. May be repeated to filter by multiple products. Matching is case-insensitive.
44
+ # @return [Array<(GovernanceInsightsResponse, Integer, Hash)>] GovernanceInsightsResponse data, response status code and response headers
45
+ def list_governance_insights_with_http_info(opts = {})
46
+ unstable_enabled = @api_client.config.unstable_operations["v2.list_governance_insights".to_sym]
47
+ if unstable_enabled
48
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.list_governance_insights")
49
+ else
50
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.list_governance_insights"))
51
+ end
52
+
53
+ if @api_client.config.debugging
54
+ @api_client.config.logger.debug 'Calling API: GovernanceInsightsAPI.list_governance_insights ...'
55
+ end
56
+ # resource path
57
+ local_var_path = '/api/v2/governance/insights'
58
+
59
+ # query parameters
60
+ query_params = opts[:query_params] || {}
61
+ query_params[:'withValues'] = opts[:'with_values'] if !opts[:'with_values'].nil?
62
+ query_params[:'orgUuid'] = opts[:'org_uuid'] if !opts[:'org_uuid'].nil?
63
+ query_params[:'filter[product]'] = @api_client.build_collection_param(opts[:'filter_product'], :multi) if !opts[:'filter_product'].nil?
64
+
65
+ # header parameters
66
+ header_params = opts[:header_params] || {}
67
+ # HTTP header 'Accept' (if needed)
68
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
69
+
70
+ # form parameters
71
+ form_params = opts[:form_params] || {}
72
+
73
+ # http body (model)
74
+ post_body = opts[:debug_body]
75
+
76
+ # return_type
77
+ return_type = opts[:debug_return_type] || 'GovernanceInsightsResponse'
78
+
79
+ # auth_names
80
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
81
+
82
+ new_options = opts.merge(
83
+ :operation => :list_governance_insights,
84
+ :header_params => header_params,
85
+ :query_params => query_params,
86
+ :form_params => form_params,
87
+ :body => post_body,
88
+ :auth_names => auth_names,
89
+ :return_type => return_type,
90
+ :api_version => "V2"
91
+ )
92
+ new_options[:query_string_normalizer] = HTTParty::Request::NON_RAILS_QUERY_STRING_NORMALIZER
93
+
94
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
95
+ if @api_client.config.debugging
96
+ @api_client.config.logger.debug "API called: GovernanceInsightsAPI#list_governance_insights\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
97
+ end
98
+ return data, status_code, headers
99
+ end
100
+ end
101
+ end