datadog_api_client 2.26.1 → 2.28.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (284) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +0 -3
  4. data/.generator/schemas/v1/openapi.yaml +2123 -212
  5. data/.generator/schemas/v2/openapi.yaml +3082 -240
  6. data/.generator/src/generator/formatter.py +3 -44
  7. data/.generator/src/generator/keywords.json +43 -0
  8. data/.generator/src/generator/templates/api.j2 +4 -0
  9. data/.generator/src/generator/templates/api_client.j2 +1 -0
  10. data/.github/workflows/approved_status.yml +4 -0
  11. data/.github/workflows/changelog.yml +5 -0
  12. data/.github/workflows/codeql-analysis.yml +4 -0
  13. data/.github/workflows/docs.yml +3 -0
  14. data/.github/workflows/labeler.yml +5 -0
  15. data/.github/workflows/prepare_release.yml +4 -0
  16. data/.github/workflows/publish.yml +5 -0
  17. data/.github/workflows/release.yml +4 -0
  18. data/.github/workflows/stale.yml +6 -0
  19. data/.github/workflows/test.yml +3 -0
  20. data/.github/workflows/test_integration.yml +3 -0
  21. data/CHANGELOG.md +66 -0
  22. data/examples/v1/dashboards/CreateDashboard_1413226400.rb +66 -0
  23. data/examples/v1/dashboards/CreateDashboard_1433408735.rb +44 -0
  24. data/examples/v1/dashboards/CreateDashboard_3298564989.rb +65 -0
  25. data/examples/v1/dashboards/CreateDashboard_794302680.rb +152 -0
  26. data/examples/v1/gcp-integration/CreateGCPIntegration.rb +1 -0
  27. data/examples/v1/gcp-integration/UpdateGCPIntegration.rb +1 -0
  28. data/examples/v1/gcp-integration/UpdateGCPIntegration_3544259255.rb +1 -0
  29. data/examples/v1/monitors/ValidateExistingMonitor.rb +0 -1
  30. data/examples/v1/monitors/ValidateMonitor.rb +0 -1
  31. data/examples/v1/monitors/ValidateMonitor_4247196452.rb +0 -1
  32. data/examples/v1/synthetics/CreateSyntheticsAPITest.rb +3 -1
  33. data/examples/v1/synthetics/CreateSyntheticsAPITest_1072503741.rb +1 -1
  34. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +1 -1
  35. data/examples/v1/synthetics/CreateSyntheticsAPITest_1402674167.rb +1 -1
  36. data/examples/v1/synthetics/CreateSyntheticsAPITest_3829801148.rb +1 -1
  37. data/examples/v1/synthetics/CreateSyntheticsMobileTest.rb +27 -0
  38. data/examples/v1/synthetics/FetchUptimes.rb +13 -0
  39. data/examples/v1/synthetics/GetMobileTest.rb +8 -0
  40. data/examples/v1/synthetics/UpdateBrowserTest.rb +3 -1
  41. data/examples/v1/synthetics/UpdateMobileTest.rb +30 -0
  42. data/examples/v2/domain-allowlist/GetDomainAllowlist.rb +5 -0
  43. data/examples/v2/domain-allowlist/PatchDomainAllowlist.rb +17 -0
  44. data/examples/v2/gcp-integration/CreateGCPSTSAccount_2597004741.rb +1 -0
  45. data/examples/v2/incidents/CreateIncidentType.rb +19 -0
  46. data/examples/v2/incidents/DeleteIncidentType.rb +11 -0
  47. data/examples/v2/incidents/GetIncidentType.rb +8 -0
  48. data/examples/v2/incidents/ListIncidentTypes.rb +8 -0
  49. data/examples/v2/incidents/UpdateIncidentType.rb +22 -0
  50. data/examples/v2/logs/AggregateLogs_2955613758.rb +0 -1
  51. data/examples/v2/metrics/QueryScalarData.rb +0 -3
  52. data/examples/v2/metrics/QueryScalarData_3112571352.rb +0 -3
  53. data/examples/v2/metrics/QueryTimeseriesData.rb +0 -3
  54. data/examples/v2/metrics/QueryTimeseriesData_301142940.rb +0 -3
  55. data/examples/v2/microsoft-teams-integration/CreateTenantBasedHandle.rb +17 -0
  56. data/examples/v2/microsoft-teams-integration/CreateTenantBasedHandle_1540689753.rb +17 -0
  57. data/examples/v2/microsoft-teams-integration/DeleteTenantBasedHandle.rb +5 -0
  58. data/examples/v2/microsoft-teams-integration/DeleteTenantBasedHandle_377884154.rb +8 -0
  59. data/examples/v2/microsoft-teams-integration/GetChannelByName.rb +5 -0
  60. data/examples/v2/microsoft-teams-integration/GetTenantBasedHandle.rb +5 -0
  61. data/examples/v2/microsoft-teams-integration/GetTenantBasedHandle_2883785101.rb +8 -0
  62. data/examples/v2/microsoft-teams-integration/ListTenantBasedHandles.rb +5 -0
  63. data/examples/v2/microsoft-teams-integration/ListTenantBasedHandles_769592979.rb +5 -0
  64. data/examples/v2/microsoft-teams-integration/UpdateTenantBasedHandle.rb +17 -0
  65. data/examples/v2/microsoft-teams-integration/UpdateTenantBasedHandle_419892746.rb +18 -0
  66. data/examples/v2/rum-metrics/CreateRumMetric.rb +32 -0
  67. data/examples/v2/rum-metrics/DeleteRumMetric.rb +8 -0
  68. data/examples/v2/rum-metrics/GetRumMetric.rb +8 -0
  69. data/examples/v2/rum-metrics/ListRumMetrics.rb +5 -0
  70. data/examples/v2/rum-metrics/UpdateRumMetric.rb +29 -0
  71. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule.rb +9 -0
  72. data/examples/v2/security-monitoring/ListFindings_1668290866.rb +14 -0
  73. data/examples/v2/usage-metering/GetBillingDimensionMapping.rb +8 -0
  74. data/examples/v2/usage-metering/GetMonthlyCostAttribution.rb +4 -1
  75. data/lib/datadog_api_client/api_client.rb +1 -0
  76. data/lib/datadog_api_client/configuration.rb +6 -2
  77. data/lib/datadog_api_client/inflector.rb +109 -5
  78. data/lib/datadog_api_client/v1/api/monitors_api.rb +6 -3
  79. data/lib/datadog_api_client/v1/api/synthetics_api.rb +274 -0
  80. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +5 -3
  81. data/lib/datadog_api_client/v1/models/gcp_account.rb +11 -1
  82. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +2 -3
  83. data/lib/datadog_api_client/v1/models/list_stream_source.rb +1 -0
  84. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +4 -6
  85. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +21 -61
  86. data/lib/datadog_api_client/v1/models/slo_history_monitor.rb +1 -1
  87. data/lib/datadog_api_client/v1/models/synthetics_batch_details_data.rb +2 -2
  88. data/lib/datadog_api_client/v1/models/synthetics_batch_result.rb +2 -2
  89. data/lib/datadog_api_client/v1/models/{synthetics_status.rb → synthetics_batch_status.rb} +4 -4
  90. data/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb +1 -0
  91. data/lib/datadog_api_client/v1/models/synthetics_fetch_uptimes_payload.rb +167 -0
  92. data/lib/datadog_api_client/v1/models/synthetics_mobile_step.rb +229 -0
  93. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params.rb +249 -0
  94. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_direction.rb +29 -0
  95. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element.rb +175 -0
  96. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_context_type.rb +27 -0
  97. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_relative_position.rb +115 -0
  98. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_user_locator.rb +117 -0
  99. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_user_locator_values_items.rb +115 -0
  100. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_user_locator_values_items_type.rb +30 -0
  101. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_positions_items.rb +115 -0
  102. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_value.rb +63 -0
  103. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_variable.rb +144 -0
  104. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_type.rb +42 -0
  105. data/lib/datadog_api_client/v1/models/synthetics_mobile_test.rb +263 -0
  106. data/lib/datadog_api_client/v1/models/synthetics_mobile_test_config.rb +117 -0
  107. data/lib/datadog_api_client/v1/models/synthetics_mobile_test_options.rb +380 -0
  108. data/lib/datadog_api_client/v1/models/synthetics_mobile_test_type.rb +26 -0
  109. data/lib/datadog_api_client/v1/models/synthetics_mobile_tests_mobile_application.rb +173 -0
  110. data/lib/datadog_api_client/v1/models/synthetics_mobile_tests_mobile_application_reference_type.rb +27 -0
  111. data/lib/datadog_api_client/v1/models/synthetics_step.rb +22 -2
  112. data/lib/datadog_api_client/v1/models/synthetics_step_detail.rb +21 -1
  113. data/lib/datadog_api_client/v1/models/synthetics_test_ci_options.rb +19 -1
  114. data/lib/datadog_api_client/v1/models/synthetics_test_details_type.rb +1 -0
  115. data/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options.rb +34 -4
  116. data/lib/datadog_api_client/v1/models/synthetics_test_options_monitor_options_notification_preset_name.rb +29 -0
  117. data/lib/datadog_api_client/v1/models/synthetics_test_options_scheduling.rb +31 -2
  118. data/lib/datadog_api_client/v1/models/synthetics_test_options_scheduling_timeframe.rb +32 -6
  119. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +1 -1
  120. data/lib/datadog_api_client/v1/models/synthetics_test_request_port.rb +63 -0
  121. data/lib/datadog_api_client/v1/models/synthetics_test_restriction_policy_binding.rb +117 -0
  122. data/lib/datadog_api_client/v1/models/synthetics_test_restriction_policy_binding_relation.rb +27 -0
  123. data/lib/datadog_api_client/v1/models/synthetics_test_uptime.rb +135 -0
  124. data/lib/datadog_api_client/v1/models/synthetics_uptime.rb +161 -0
  125. data/lib/datadog_api_client/v1/models/table_widget_request.rb +16 -4
  126. data/lib/datadog_api_client/v1/models/table_widget_text_format_match.rb +144 -0
  127. data/lib/datadog_api_client/v1/models/table_widget_text_format_match_type.rb +31 -0
  128. data/lib/datadog_api_client/v1/models/table_widget_text_format_palette.rb +36 -0
  129. data/lib/datadog_api_client/v1/models/table_widget_text_format_replace.rb +63 -0
  130. data/lib/datadog_api_client/v1/models/table_widget_text_format_replace_all.rb +144 -0
  131. data/lib/datadog_api_client/v1/models/table_widget_text_format_replace_all_type.rb +26 -0
  132. data/lib/datadog_api_client/v1/models/table_widget_text_format_replace_substring.rb +165 -0
  133. data/lib/datadog_api_client/v1/models/table_widget_text_format_replace_substring_type.rb +26 -0
  134. data/lib/datadog_api_client/v1/models/table_widget_text_format_rule.rb +163 -0
  135. data/lib/datadog_api_client/v1/models/toplist_widget_stacked.rb +1 -12
  136. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +51 -1
  137. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +51 -1
  138. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +51 -1
  139. data/lib/datadog_api_client/v2/api/authn_mappings_api.rb +3 -3
  140. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +3 -69
  141. data/lib/datadog_api_client/v2/api/domain_allowlist_api.rb +153 -0
  142. data/lib/datadog_api_client/v2/api/incidents_api.rb +362 -1
  143. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -17
  144. data/lib/datadog_api_client/v2/api/microsoft_teams_integration_api.rb +434 -0
  145. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +3 -3
  146. data/lib/datadog_api_client/v2/api/rum_metrics_api.rb +357 -0
  147. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +3 -0
  148. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +19 -19
  149. data/lib/datadog_api_client/v2/api/teams_api.rb +1 -0
  150. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +79 -10
  151. data/lib/datadog_api_client/v2/models/billing_dimensions_mapping_body_item.rb +125 -0
  152. data/lib/datadog_api_client/v2/models/billing_dimensions_mapping_body_item_attributes.rb +127 -0
  153. data/lib/datadog_api_client/v2/models/billing_dimensions_mapping_body_item_attributes_endpoints_items.rb +127 -0
  154. data/lib/datadog_api_client/v2/models/billing_dimensions_mapping_body_item_attributes_endpoints_items_status.rb +27 -0
  155. data/lib/datadog_api_client/v2/models/billing_dimensions_mapping_response.rb +107 -0
  156. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_attributes.rb +1 -1
  157. data/lib/datadog_api_client/v2/models/cloudflare_account_response_attributes.rb +1 -1
  158. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_attributes.rb +1 -1
  159. data/lib/datadog_api_client/v2/models/domain_allowlist.rb +151 -0
  160. data/lib/datadog_api_client/v2/models/domain_allowlist_attributes.rb +117 -0
  161. data/lib/datadog_api_client/v2/models/domain_allowlist_request.rb +123 -0
  162. data/lib/datadog_api_client/v2/models/domain_allowlist_response.rb +105 -0
  163. data/lib/datadog_api_client/v2/models/domain_allowlist_response_data.rb +151 -0
  164. data/lib/datadog_api_client/v2/models/domain_allowlist_response_data_attributes.rb +117 -0
  165. data/lib/datadog_api_client/v2/models/domain_allowlist_type.rb +26 -0
  166. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +11 -1
  167. data/lib/datadog_api_client/v2/models/entity_attributes.rb +1 -1
  168. data/lib/datadog_api_client/v2/models/entity_data.rb +1 -1
  169. data/lib/datadog_api_client/v2/models/entity_response_included_incident.rb +1 -1
  170. data/lib/datadog_api_client/v2/models/entity_response_included_raw_schema.rb +1 -1
  171. data/lib/datadog_api_client/v2/models/entity_response_included_related_oncall_attributes.rb +1 -1
  172. data/lib/datadog_api_client/v2/models/entity_response_included_related_oncall_escalation_item.rb +1 -1
  173. data/lib/datadog_api_client/v2/models/entity_response_included_schema.rb +1 -1
  174. data/lib/datadog_api_client/v2/models/entity_v3_api_version.rb +1 -1
  175. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +3 -3
  176. data/lib/datadog_api_client/v2/models/entity_v3_datadog_event_item.rb +2 -2
  177. data/lib/datadog_api_client/v2/models/entity_v3_datadog_integration_opsgenie.rb +2 -2
  178. data/lib/datadog_api_client/v2/models/entity_v3_datadog_integration_pagerduty.rb +2 -2
  179. data/lib/datadog_api_client/v2/models/entity_v3_datadog_log_item.rb +3 -3
  180. data/lib/datadog_api_client/v2/models/entity_v3_datadog_performance.rb +2 -2
  181. data/lib/datadog_api_client/v2/models/entity_v3_datadog_pipelines.rb +2 -2
  182. data/lib/datadog_api_client/v2/models/entity_v3_datastore.rb +4 -4
  183. data/lib/datadog_api_client/v2/models/entity_v3_datastore_datadog.rb +4 -4
  184. data/lib/datadog_api_client/v2/models/entity_v3_datastore_spec.rb +2 -2
  185. data/lib/datadog_api_client/v2/models/entity_v3_integrations.rb +3 -3
  186. data/lib/datadog_api_client/v2/models/entity_v3_metadata.rb +9 -9
  187. data/lib/datadog_api_client/v2/models/entity_v3_metadata_additional_owners_items.rb +2 -2
  188. data/lib/datadog_api_client/v2/models/entity_v3_metadata_contacts_items.rb +2 -2
  189. data/lib/datadog_api_client/v2/models/entity_v3_metadata_links_items.rb +2 -2
  190. data/lib/datadog_api_client/v2/models/entity_v3_metadata_owner.rb +2 -2
  191. data/lib/datadog_api_client/v2/models/entity_v3_queue.rb +5 -5
  192. data/lib/datadog_api_client/v2/models/entity_v3_queue_datadog.rb +4 -4
  193. data/lib/datadog_api_client/v2/models/entity_v3_queue_spec.rb +2 -2
  194. data/lib/datadog_api_client/v2/models/entity_v3_service.rb +5 -5
  195. data/lib/datadog_api_client/v2/models/entity_v3_service_datadog.rb +6 -6
  196. data/lib/datadog_api_client/v2/models/entity_v3_service_spec.rb +3 -3
  197. data/lib/datadog_api_client/v2/models/entity_v3_system.rb +5 -5
  198. data/lib/datadog_api_client/v2/models/entity_v3_system_datadog.rb +5 -5
  199. data/lib/datadog_api_client/v2/models/fastly_services_response.rb +1 -1
  200. data/lib/datadog_api_client/v2/models/finding_attributes.rb +14 -4
  201. data/lib/datadog_api_client/v2/models/finding_vulnerability_type.rb +29 -0
  202. data/lib/datadog_api_client/v2/models/gcp_metric_namespace_config.rb +115 -0
  203. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +23 -1
  204. data/lib/datadog_api_client/v2/models/incident_create_attributes.rb +11 -1
  205. data/lib/datadog_api_client/v2/models/incident_integration_metadata_metadata.rb +2 -1
  206. data/lib/datadog_api_client/v2/models/incident_notification_handle.rb +1 -1
  207. data/lib/datadog_api_client/v2/models/incident_response_attributes.rb +11 -1
  208. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  209. data/lib/datadog_api_client/v2/models/incident_type_attributes.rb +193 -0
  210. data/lib/datadog_api_client/v2/models/incident_type_create_data.rb +144 -0
  211. data/lib/datadog_api_client/v2/models/incident_type_create_request.rb +123 -0
  212. data/lib/datadog_api_client/v2/models/incident_type_list_response.rb +125 -0
  213. data/lib/datadog_api_client/v2/models/{aws_related_account.rb → incident_type_object.rb} +8 -8
  214. data/lib/datadog_api_client/v2/models/incident_type_patch_data.rb +165 -0
  215. data/lib/datadog_api_client/v2/models/incident_type_patch_request.rb +123 -0
  216. data/lib/datadog_api_client/v2/models/incident_type_response.rb +123 -0
  217. data/lib/datadog_api_client/v2/models/{aws_related_account_type.rb → incident_type_type.rb} +3 -3
  218. data/lib/datadog_api_client/v2/models/incident_type_update_attributes.rb +175 -0
  219. data/lib/datadog_api_client/v2/models/incident_user_attributes.rb +153 -0
  220. data/lib/datadog_api_client/v2/models/incident_user_data.rb +125 -0
  221. data/lib/datadog_api_client/v2/models/include_type.rb +1 -1
  222. data/lib/datadog_api_client/v2/models/list_entity_catalog_response_links.rb +3 -3
  223. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -1
  224. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -1
  225. data/lib/datadog_api_client/v2/models/metric_tag_configuration_metric_type_category.rb +27 -0
  226. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -1
  227. data/lib/datadog_api_client/v2/models/microsoft_teams_channel_info_response_attributes.rb +165 -0
  228. data/lib/datadog_api_client/v2/models/microsoft_teams_channel_info_response_data.rb +147 -0
  229. data/lib/datadog_api_client/v2/models/microsoft_teams_channel_info_type.rb +26 -0
  230. data/lib/datadog_api_client/v2/models/microsoft_teams_create_tenant_based_handle_request.rb +123 -0
  231. data/lib/datadog_api_client/v2/models/microsoft_teams_get_channel_by_name_response.rb +105 -0
  232. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_attributes.rb +186 -0
  233. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_info_response_attributes.rb +249 -0
  234. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_info_response_data.rb +147 -0
  235. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_info_type.rb +26 -0
  236. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_request_attributes.rb +202 -0
  237. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_request_data.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_response.rb +123 -0
  239. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_response_data.rb +147 -0
  240. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handle_type.rb +26 -0
  241. data/lib/datadog_api_client/v2/models/microsoft_teams_tenant_based_handles_response.rb +125 -0
  242. data/lib/datadog_api_client/v2/models/microsoft_teams_update_tenant_based_handle_request.rb +123 -0
  243. data/lib/datadog_api_client/v2/models/microsoft_teams_update_tenant_based_handle_request_data.rb +144 -0
  244. data/lib/datadog_api_client/v2/models/ms_teams_integration_metadata.rb +125 -0
  245. data/lib/datadog_api_client/v2/models/ms_teams_integration_metadata_teams_item.rb +186 -0
  246. data/lib/datadog_api_client/v2/models/powerpack_template_variable.rb +35 -4
  247. data/lib/datadog_api_client/v2/models/relation_type.rb +1 -1
  248. data/lib/datadog_api_client/v2/models/relationship_item.rb +1 -1
  249. data/lib/datadog_api_client/v2/models/rum_metric_compute.rb +145 -0
  250. data/lib/datadog_api_client/v2/models/rum_metric_compute_aggregation_type.rb +27 -0
  251. data/lib/datadog_api_client/v2/models/rum_metric_create_attributes.rb +176 -0
  252. data/lib/datadog_api_client/v2/models/rum_metric_create_data.rb +165 -0
  253. data/lib/datadog_api_client/v2/models/rum_metric_create_request.rb +123 -0
  254. data/lib/datadog_api_client/v2/models/rum_metric_event_type.rb +32 -0
  255. data/lib/datadog_api_client/v2/models/rum_metric_filter.rb +123 -0
  256. data/lib/datadog_api_client/v2/models/rum_metric_group_by.rb +133 -0
  257. data/lib/datadog_api_client/v2/models/rum_metric_response.rb +105 -0
  258. data/lib/datadog_api_client/v2/models/rum_metric_response_attributes.rb +147 -0
  259. data/lib/datadog_api_client/v2/models/rum_metric_response_compute.rb +127 -0
  260. data/lib/datadog_api_client/v2/models/rum_metric_response_data.rb +125 -0
  261. data/lib/datadog_api_client/v2/models/rum_metric_response_filter.rb +105 -0
  262. data/lib/datadog_api_client/v2/models/rum_metric_response_group_by.rb +115 -0
  263. data/lib/datadog_api_client/v2/models/{aws_related_account_attributes.rb → rum_metric_response_uniqueness.rb} +11 -21
  264. data/lib/datadog_api_client/v2/models/rum_metric_type.rb +26 -0
  265. data/lib/datadog_api_client/v2/models/rum_metric_uniqueness.rb +123 -0
  266. data/lib/datadog_api_client/v2/models/rum_metric_uniqueness_when.rb +27 -0
  267. data/lib/datadog_api_client/v2/models/rum_metric_update_attributes.rb +127 -0
  268. data/lib/datadog_api_client/v2/models/rum_metric_update_compute.rb +106 -0
  269. data/lib/datadog_api_client/v2/models/rum_metric_update_data.rb +154 -0
  270. data/lib/datadog_api_client/v2/models/rum_metric_update_request.rb +123 -0
  271. data/lib/datadog_api_client/v2/models/{aws_related_accounts_response.rb → rum_metrics_response.rb} +5 -5
  272. data/lib/datadog_api_client/v2/models/security_monitoring_reference_table.rb +145 -0
  273. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +13 -1
  274. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +13 -1
  275. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_payload.rb +13 -1
  276. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +13 -1
  277. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_test_payload.rb +13 -1
  278. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_included_keyword_configuration.rb +15 -4
  279. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_meta.rb +2 -2
  280. data/lib/datadog_api_client/v2/models/team_update_attributes.rb +1 -26
  281. data/lib/datadog_api_client/v2/models/upsert_catalog_entity_request.rb +1 -1
  282. data/lib/datadog_api_client/version.rb +1 -1
  283. metadata +145 -8
  284. data/examples/v2/cloud-cost-management/ListAWSRelatedAccounts.rb +0 -5
@@ -0,0 +1,357 @@
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 RumMetricsAPI
20
+ attr_accessor :api_client
21
+
22
+ def initialize(api_client = DatadogAPIClient::APIClient.default)
23
+ @api_client = api_client
24
+ end
25
+
26
+ # Create a rum-based metric.
27
+ #
28
+ # @see #create_rum_metric_with_http_info
29
+ def create_rum_metric(body, opts = {})
30
+ data, _status_code, _headers = create_rum_metric_with_http_info(body, opts)
31
+ data
32
+ end
33
+
34
+ # Create a rum-based metric.
35
+ #
36
+ # Create a metric based on your organization's RUM data.
37
+ # Returns the rum-based metric object from the request body when the request is successful.
38
+ #
39
+ # @param body [RumMetricCreateRequest] The definition of the new rum-based metric.
40
+ # @param opts [Hash] the optional parameters
41
+ # @return [Array<(RumMetricResponse, Integer, Hash)>] RumMetricResponse data, response status code and response headers
42
+ def create_rum_metric_with_http_info(body, opts = {})
43
+
44
+ if @api_client.config.debugging
45
+ @api_client.config.logger.debug 'Calling API: RumMetricsAPI.create_rum_metric ...'
46
+ end
47
+ # verify the required parameter 'body' is set
48
+ if @api_client.config.client_side_validation && body.nil?
49
+ fail ArgumentError, "Missing the required parameter 'body' when calling RumMetricsAPI.create_rum_metric"
50
+ end
51
+ # resource path
52
+ local_var_path = '/api/v2/rum/config/metrics'
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+ # HTTP header 'Content-Type'
62
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
63
+
64
+ # form parameters
65
+ form_params = opts[:form_params] || {}
66
+
67
+ # http body (model)
68
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
69
+
70
+ # return_type
71
+ return_type = opts[:debug_return_type] || 'RumMetricResponse'
72
+
73
+ # auth_names
74
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
75
+
76
+ new_options = opts.merge(
77
+ :operation => :create_rum_metric,
78
+ :header_params => header_params,
79
+ :query_params => query_params,
80
+ :form_params => form_params,
81
+ :body => post_body,
82
+ :auth_names => auth_names,
83
+ :return_type => return_type,
84
+ :api_version => "V2"
85
+ )
86
+
87
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
88
+ if @api_client.config.debugging
89
+ @api_client.config.logger.debug "API called: RumMetricsAPI#create_rum_metric\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
90
+ end
91
+ return data, status_code, headers
92
+ end
93
+
94
+ # Delete a rum-based metric.
95
+ #
96
+ # @see #delete_rum_metric_with_http_info
97
+ def delete_rum_metric(metric_id, opts = {})
98
+ delete_rum_metric_with_http_info(metric_id, opts)
99
+ nil
100
+ end
101
+
102
+ # Delete a rum-based metric.
103
+ #
104
+ # Delete a specific rum-based metric from your organization.
105
+ #
106
+ # @param metric_id [String] The name of the rum-based metric.
107
+ # @param opts [Hash] the optional parameters
108
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
109
+ def delete_rum_metric_with_http_info(metric_id, opts = {})
110
+
111
+ if @api_client.config.debugging
112
+ @api_client.config.logger.debug 'Calling API: RumMetricsAPI.delete_rum_metric ...'
113
+ end
114
+ # verify the required parameter 'metric_id' is set
115
+ if @api_client.config.client_side_validation && metric_id.nil?
116
+ fail ArgumentError, "Missing the required parameter 'metric_id' when calling RumMetricsAPI.delete_rum_metric"
117
+ end
118
+ # resource path
119
+ local_var_path = '/api/v2/rum/config/metrics/{metric_id}'.sub('{metric_id}', CGI.escape(metric_id.to_s).gsub('%2F', '/'))
120
+
121
+ # query parameters
122
+ query_params = opts[:query_params] || {}
123
+
124
+ # header parameters
125
+ header_params = opts[:header_params] || {}
126
+ # HTTP header 'Accept' (if needed)
127
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
128
+
129
+ # form parameters
130
+ form_params = opts[:form_params] || {}
131
+
132
+ # http body (model)
133
+ post_body = opts[:debug_body]
134
+
135
+ # return_type
136
+ return_type = opts[:debug_return_type]
137
+
138
+ # auth_names
139
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
140
+
141
+ new_options = opts.merge(
142
+ :operation => :delete_rum_metric,
143
+ :header_params => header_params,
144
+ :query_params => query_params,
145
+ :form_params => form_params,
146
+ :body => post_body,
147
+ :auth_names => auth_names,
148
+ :return_type => return_type,
149
+ :api_version => "V2"
150
+ )
151
+
152
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
153
+ if @api_client.config.debugging
154
+ @api_client.config.logger.debug "API called: RumMetricsAPI#delete_rum_metric\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
155
+ end
156
+ return data, status_code, headers
157
+ end
158
+
159
+ # Get a rum-based metric.
160
+ #
161
+ # @see #get_rum_metric_with_http_info
162
+ def get_rum_metric(metric_id, opts = {})
163
+ data, _status_code, _headers = get_rum_metric_with_http_info(metric_id, opts)
164
+ data
165
+ end
166
+
167
+ # Get a rum-based metric.
168
+ #
169
+ # Get a specific rum-based metric from your organization.
170
+ #
171
+ # @param metric_id [String] The name of the rum-based metric.
172
+ # @param opts [Hash] the optional parameters
173
+ # @return [Array<(RumMetricResponse, Integer, Hash)>] RumMetricResponse data, response status code and response headers
174
+ def get_rum_metric_with_http_info(metric_id, opts = {})
175
+
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug 'Calling API: RumMetricsAPI.get_rum_metric ...'
178
+ end
179
+ # verify the required parameter 'metric_id' is set
180
+ if @api_client.config.client_side_validation && metric_id.nil?
181
+ fail ArgumentError, "Missing the required parameter 'metric_id' when calling RumMetricsAPI.get_rum_metric"
182
+ end
183
+ # resource path
184
+ local_var_path = '/api/v2/rum/config/metrics/{metric_id}'.sub('{metric_id}', CGI.escape(metric_id.to_s).gsub('%2F', '/'))
185
+
186
+ # query parameters
187
+ query_params = opts[:query_params] || {}
188
+
189
+ # header parameters
190
+ header_params = opts[:header_params] || {}
191
+ # HTTP header 'Accept' (if needed)
192
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
193
+
194
+ # form parameters
195
+ form_params = opts[:form_params] || {}
196
+
197
+ # http body (model)
198
+ post_body = opts[:debug_body]
199
+
200
+ # return_type
201
+ return_type = opts[:debug_return_type] || 'RumMetricResponse'
202
+
203
+ # auth_names
204
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
205
+
206
+ new_options = opts.merge(
207
+ :operation => :get_rum_metric,
208
+ :header_params => header_params,
209
+ :query_params => query_params,
210
+ :form_params => form_params,
211
+ :body => post_body,
212
+ :auth_names => auth_names,
213
+ :return_type => return_type,
214
+ :api_version => "V2"
215
+ )
216
+
217
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
218
+ if @api_client.config.debugging
219
+ @api_client.config.logger.debug "API called: RumMetricsAPI#get_rum_metric\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
220
+ end
221
+ return data, status_code, headers
222
+ end
223
+
224
+ # Get all rum-based metrics.
225
+ #
226
+ # @see #list_rum_metrics_with_http_info
227
+ def list_rum_metrics(opts = {})
228
+ data, _status_code, _headers = list_rum_metrics_with_http_info(opts)
229
+ data
230
+ end
231
+
232
+ # Get all rum-based metrics.
233
+ #
234
+ # Get the list of configured rum-based metrics with their definitions.
235
+ #
236
+ # @param opts [Hash] the optional parameters
237
+ # @return [Array<(RumMetricsResponse, Integer, Hash)>] RumMetricsResponse data, response status code and response headers
238
+ def list_rum_metrics_with_http_info(opts = {})
239
+
240
+ if @api_client.config.debugging
241
+ @api_client.config.logger.debug 'Calling API: RumMetricsAPI.list_rum_metrics ...'
242
+ end
243
+ # resource path
244
+ local_var_path = '/api/v2/rum/config/metrics'
245
+
246
+ # query parameters
247
+ query_params = opts[:query_params] || {}
248
+
249
+ # header parameters
250
+ header_params = opts[:header_params] || {}
251
+ # HTTP header 'Accept' (if needed)
252
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
253
+
254
+ # form parameters
255
+ form_params = opts[:form_params] || {}
256
+
257
+ # http body (model)
258
+ post_body = opts[:debug_body]
259
+
260
+ # return_type
261
+ return_type = opts[:debug_return_type] || 'RumMetricsResponse'
262
+
263
+ # auth_names
264
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
265
+
266
+ new_options = opts.merge(
267
+ :operation => :list_rum_metrics,
268
+ :header_params => header_params,
269
+ :query_params => query_params,
270
+ :form_params => form_params,
271
+ :body => post_body,
272
+ :auth_names => auth_names,
273
+ :return_type => return_type,
274
+ :api_version => "V2"
275
+ )
276
+
277
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
278
+ if @api_client.config.debugging
279
+ @api_client.config.logger.debug "API called: RumMetricsAPI#list_rum_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
280
+ end
281
+ return data, status_code, headers
282
+ end
283
+
284
+ # Update a rum-based metric.
285
+ #
286
+ # @see #update_rum_metric_with_http_info
287
+ def update_rum_metric(metric_id, body, opts = {})
288
+ data, _status_code, _headers = update_rum_metric_with_http_info(metric_id, body, opts)
289
+ data
290
+ end
291
+
292
+ # Update a rum-based metric.
293
+ #
294
+ # Update a specific rum-based metric from your organization.
295
+ # Returns the rum-based metric object from the request body when the request is successful.
296
+ #
297
+ # @param metric_id [String] The name of the rum-based metric.
298
+ # @param body [RumMetricUpdateRequest] New definition of the rum-based metric.
299
+ # @param opts [Hash] the optional parameters
300
+ # @return [Array<(RumMetricResponse, Integer, Hash)>] RumMetricResponse data, response status code and response headers
301
+ def update_rum_metric_with_http_info(metric_id, body, opts = {})
302
+
303
+ if @api_client.config.debugging
304
+ @api_client.config.logger.debug 'Calling API: RumMetricsAPI.update_rum_metric ...'
305
+ end
306
+ # verify the required parameter 'metric_id' is set
307
+ if @api_client.config.client_side_validation && metric_id.nil?
308
+ fail ArgumentError, "Missing the required parameter 'metric_id' when calling RumMetricsAPI.update_rum_metric"
309
+ end
310
+ # verify the required parameter 'body' is set
311
+ if @api_client.config.client_side_validation && body.nil?
312
+ fail ArgumentError, "Missing the required parameter 'body' when calling RumMetricsAPI.update_rum_metric"
313
+ end
314
+ # resource path
315
+ local_var_path = '/api/v2/rum/config/metrics/{metric_id}'.sub('{metric_id}', CGI.escape(metric_id.to_s).gsub('%2F', '/'))
316
+
317
+ # query parameters
318
+ query_params = opts[:query_params] || {}
319
+
320
+ # header parameters
321
+ header_params = opts[:header_params] || {}
322
+ # HTTP header 'Accept' (if needed)
323
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
324
+ # HTTP header 'Content-Type'
325
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
326
+
327
+ # form parameters
328
+ form_params = opts[:form_params] || {}
329
+
330
+ # http body (model)
331
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
332
+
333
+ # return_type
334
+ return_type = opts[:debug_return_type] || 'RumMetricResponse'
335
+
336
+ # auth_names
337
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
338
+
339
+ new_options = opts.merge(
340
+ :operation => :update_rum_metric,
341
+ :header_params => header_params,
342
+ :query_params => query_params,
343
+ :form_params => form_params,
344
+ :body => post_body,
345
+ :auth_names => auth_names,
346
+ :return_type => return_type,
347
+ :api_version => "V2"
348
+ )
349
+
350
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
351
+ if @api_client.config.debugging
352
+ @api_client.config.logger.debug "API called: RumMetricsAPI#update_rum_metric\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
353
+ end
354
+ return data, status_code, headers
355
+ end
356
+ end
357
+ end
@@ -1166,6 +1166,7 @@ module DatadogAPIClient::V2
1166
1166
  # @option opts [String] :filter_discovery_timestamp Return findings that were found on a specified date (Unix ms) or date range (using comparison operators).
1167
1167
  # @option opts [FindingEvaluation] :filter_evaluation Return only `pass` or `fail` findings.
1168
1168
  # @option opts [FindingStatus] :filter_status Return only findings with the specified status.
1169
+ # @option opts [Array<FindingVulnerabilityType>] :filter_vulnerability_type Return findings that match the selected vulnerability types (repeatable).
1169
1170
  # @return [Array<(ListFindingsResponse, Integer, Hash)>] ListFindingsResponse data, response status code and response headers
1170
1171
  def list_findings_with_http_info(opts = {})
1171
1172
  unstable_enabled = @api_client.config.unstable_operations["v2.list_findings".to_sym]
@@ -1212,6 +1213,7 @@ module DatadogAPIClient::V2
1212
1213
  query_params[:'filter[discovery_timestamp]'] = opts[:'filter_discovery_timestamp'] if !opts[:'filter_discovery_timestamp'].nil?
1213
1214
  query_params[:'filter[evaluation]'] = opts[:'filter_evaluation'] if !opts[:'filter_evaluation'].nil?
1214
1215
  query_params[:'filter[status]'] = opts[:'filter_status'] if !opts[:'filter_status'].nil?
1216
+ query_params[:'filter[vulnerability_type]'] = @api_client.build_collection_param(opts[:'filter_vulnerability_type'], :multi) if !opts[:'filter_vulnerability_type'].nil?
1215
1217
 
1216
1218
  # header parameters
1217
1219
  header_params = opts[:header_params] || {}
@@ -1240,6 +1242,7 @@ module DatadogAPIClient::V2
1240
1242
  :return_type => return_type,
1241
1243
  :api_version => "V2"
1242
1244
  )
1245
+ new_options[:query_string_normalizer] = HTTParty::Request::NON_RAILS_QUERY_STRING_NORMALIZER
1243
1246
 
1244
1247
  data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1245
1248
  if @api_client.config.debugging
@@ -35,7 +35,7 @@ module DatadogAPIClient::V2
35
35
  #
36
36
  # Delete a single entity in Software Catalog.
37
37
  #
38
- # @param entity_id [String] UUID or Entity Ref
38
+ # @param entity_id [String] UUID or Entity Ref.
39
39
  # @param opts [Hash] the optional parameters
40
40
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
41
41
  def delete_catalog_entity_with_http_info(entity_id, opts = {})
@@ -103,14 +103,14 @@ module DatadogAPIClient::V2
103
103
  # @param opts [Hash] the optional parameters
104
104
  # @option opts [Integer] :page_offset Specific offset to use as the beginning of the returned page.
105
105
  # @option opts [Integer] :page_limit Maximum number of entities in the response.
106
- # @option opts [String] :fitler_id Filter entities by UUID
107
- # @option opts [String] :fitler_ref Filter entities by reference
108
- # @option opts [String] :fitler_name Filter entities by name
109
- # @option opts [String] :fitler_kind Filter entities by kind
110
- # @option opts [String] :fitler_owner Filter entities by owner
111
- # @option opts [RelationType] :fitler_relation_type Filter entities by relation type
112
- # @option opts [String] :fitler_exclude_snapshot Filter entities by excluding snapshotted entities
113
- # @option opts [IncludeType] :include include relationship data
106
+ # @option opts [String] :filter_id Filter entities by UUID.
107
+ # @option opts [String] :filter_ref Filter entities by reference
108
+ # @option opts [String] :filter_name Filter entities by name.
109
+ # @option opts [String] :filter_kind Filter entities by kind.
110
+ # @option opts [String] :filter_owner Filter entities by owner.
111
+ # @option opts [RelationType] :filter_relation_type Filter entities by relation type.
112
+ # @option opts [String] :filter_exclude_snapshot Filter entities by excluding snapshotted entities.
113
+ # @option opts [IncludeType] :include Include relationship data.
114
114
  # @return [Array<(ListEntityCatalogResponse, Integer, Hash)>] ListEntityCatalogResponse data, response status code and response headers
115
115
  def list_catalog_entity_with_http_info(opts = {})
116
116
 
@@ -118,8 +118,8 @@ module DatadogAPIClient::V2
118
118
  @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.list_catalog_entity ...'
119
119
  end
120
120
  allowable_values = ['RelationTypeOwns', 'RelationTypeOwnedBy', 'RelationTypeDependsOn', 'RelationTypeDependencyOf', 'RelationTypePartsOf', 'RelationTypeHasPart', 'RelationTypeOtherOwns', 'RelationTypeOtherOwnedBy', 'RelationTypeImplementedBy', 'RelationTypeImplements']
121
- if @api_client.config.client_side_validation && opts[:'fitler_relation_type'] && !allowable_values.include?(opts[:'fitler_relation_type'])
122
- fail ArgumentError, "invalid value for \"fitler_relation_type\", must be one of #{allowable_values}"
121
+ if @api_client.config.client_side_validation && opts[:'filter_relation_type'] && !allowable_values.include?(opts[:'filter_relation_type'])
122
+ fail ArgumentError, "invalid value for \"filter_relation_type\", must be one of #{allowable_values}"
123
123
  end
124
124
  allowable_values = ['schema', 'raw_schema', 'oncall', 'incident', 'relation']
125
125
  if @api_client.config.client_side_validation && opts[:'include'] && !allowable_values.include?(opts[:'include'])
@@ -132,13 +132,13 @@ module DatadogAPIClient::V2
132
132
  query_params = opts[:query_params] || {}
133
133
  query_params[:'page[offset]'] = opts[:'page_offset'] if !opts[:'page_offset'].nil?
134
134
  query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
135
- query_params[:'fitler[id]'] = opts[:'fitler_id'] if !opts[:'fitler_id'].nil?
136
- query_params[:'fitler[ref]'] = opts[:'fitler_ref'] if !opts[:'fitler_ref'].nil?
137
- query_params[:'fitler[name]'] = opts[:'fitler_name'] if !opts[:'fitler_name'].nil?
138
- query_params[:'fitler[kind]'] = opts[:'fitler_kind'] if !opts[:'fitler_kind'].nil?
139
- query_params[:'fitler[owner]'] = opts[:'fitler_owner'] if !opts[:'fitler_owner'].nil?
140
- query_params[:'fitler[relation][type]'] = opts[:'fitler_relation_type'] if !opts[:'fitler_relation_type'].nil?
141
- query_params[:'fitler[exclude_snapshot]'] = opts[:'fitler_exclude_snapshot'] if !opts[:'fitler_exclude_snapshot'].nil?
135
+ query_params[:'filter[id]'] = opts[:'filter_id'] if !opts[:'filter_id'].nil?
136
+ query_params[:'filter[ref]'] = opts[:'filter_ref'] if !opts[:'filter_ref'].nil?
137
+ query_params[:'filter[name]'] = opts[:'filter_name'] if !opts[:'filter_name'].nil?
138
+ query_params[:'filter[kind]'] = opts[:'filter_kind'] if !opts[:'filter_kind'].nil?
139
+ query_params[:'filter[owner]'] = opts[:'filter_owner'] if !opts[:'filter_owner'].nil?
140
+ query_params[:'filter[relation][type]'] = opts[:'filter_relation_type'] if !opts[:'filter_relation_type'].nil?
141
+ query_params[:'filter[exclude_snapshot]'] = opts[:'filter_exclude_snapshot'] if !opts[:'filter_exclude_snapshot'].nil?
142
142
  query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
143
143
 
144
144
  # header parameters
@@ -210,7 +210,7 @@ module DatadogAPIClient::V2
210
210
  #
211
211
  # Create or update entities in Software Catalog.
212
212
  #
213
- # @param body [UpsertCatalogEntityRequest] Entity YAML/JSON.
213
+ # @param body [UpsertCatalogEntityRequest] Entity YAML or JSON.
214
214
  # @param opts [Hash] the optional parameters
215
215
  # @return [Array<(UpsertCatalogEntityResponse, Integer, Hash)>] UpsertCatalogEntityResponse data, response status code and response headers
216
216
  def upsert_catalog_entity_with_http_info(body, opts = {})
@@ -940,6 +940,7 @@ module DatadogAPIClient::V2
940
940
  :return_type => return_type,
941
941
  :api_version => "V2"
942
942
  )
943
+ new_options[:query_string_normalizer] = HTTParty::Request::NON_RAILS_QUERY_STRING_NORMALIZER
943
944
 
944
945
  data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
945
946
  if @api_client.config.debugging
@@ -89,6 +89,79 @@ module DatadogAPIClient::V2
89
89
  return data, status_code, headers
90
90
  end
91
91
 
92
+ # Get billing dimension mapping for usage endpoints.
93
+ #
94
+ # @see #get_billing_dimension_mapping_with_http_info
95
+ def get_billing_dimension_mapping(opts = {})
96
+ data, _status_code, _headers = get_billing_dimension_mapping_with_http_info(opts)
97
+ data
98
+ end
99
+
100
+ # Get billing dimension mapping for usage endpoints.
101
+ #
102
+ # Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints.
103
+ # Mapping data is updated on a monthly cadence.
104
+ #
105
+ # This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).
106
+ #
107
+ # @param opts [Hash] the optional parameters
108
+ # @option opts [Time] :filter_month Datetime in ISO-8601 format, UTC, and for mappings beginning this month. Defaults to the current month.
109
+ # @option opts [String] :filter_view String to specify whether to retrieve active billing dimension mappings for the contract or for all available mappings. Allowed views have the string `active` or `all`. Defaults to `active`.
110
+ # @return [Array<(BillingDimensionsMappingResponse, Integer, Hash)>] BillingDimensionsMappingResponse data, response status code and response headers
111
+ def get_billing_dimension_mapping_with_http_info(opts = {})
112
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_billing_dimension_mapping".to_sym]
113
+ if unstable_enabled
114
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_billing_dimension_mapping")
115
+ else
116
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_billing_dimension_mapping"))
117
+ end
118
+
119
+ if @api_client.config.debugging
120
+ @api_client.config.logger.debug 'Calling API: UsageMeteringAPI.get_billing_dimension_mapping ...'
121
+ end
122
+ # resource path
123
+ local_var_path = '/api/v2/usage/billing_dimension_mapping'
124
+
125
+ # query parameters
126
+ query_params = opts[:query_params] || {}
127
+ query_params[:'filter[month]'] = opts[:'filter_month'] if !opts[:'filter_month'].nil?
128
+ query_params[:'filter[view]'] = opts[:'filter_view'] if !opts[:'filter_view'].nil?
129
+
130
+ # header parameters
131
+ header_params = opts[:header_params] || {}
132
+ # HTTP header 'Accept' (if needed)
133
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;datetime-format=rfc3339'])
134
+
135
+ # form parameters
136
+ form_params = opts[:form_params] || {}
137
+
138
+ # http body (model)
139
+ post_body = opts[:debug_body]
140
+
141
+ # return_type
142
+ return_type = opts[:debug_return_type] || 'BillingDimensionsMappingResponse'
143
+
144
+ # auth_names
145
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
146
+
147
+ new_options = opts.merge(
148
+ :operation => :get_billing_dimension_mapping,
149
+ :header_params => header_params,
150
+ :query_params => query_params,
151
+ :form_params => form_params,
152
+ :body => post_body,
153
+ :auth_names => auth_names,
154
+ :return_type => return_type,
155
+ :api_version => "V2"
156
+ )
157
+
158
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
159
+ if @api_client.config.debugging
160
+ @api_client.config.logger.debug "API called: UsageMeteringAPI#get_billing_dimension_mapping\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
161
+ end
162
+ return data, status_code, headers
163
+ end
164
+
92
165
  # Get cost across multi-org account.
93
166
  #
94
167
  # @see #get_cost_by_org_with_http_info
@@ -331,7 +404,7 @@ module DatadogAPIClient::V2
331
404
  # Get hourly usage by product family.
332
405
  #
333
406
  # @param filter_timestamp_start [Time] Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.
334
- # @param filter_product_families [String] Comma separated list of product families to retrieve. Available families are `all`, `analyzed_logs`, `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, `cws`, `dbm`, `error_tracking`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `netflow_monitoring`, `observability_pipelines`, `online_archive`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, and `timeseries`. The following product family has been **deprecated**: `audit_logs`.
407
+ # @param filter_product_families [String] Comma separated list of product families to retrieve. Available families are `all`, `analyzed_logs`, `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, `cloud_siem`, `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, `cws`, `dbm`, `error_tracking`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `network_monitoring`, `observability_pipelines`, `online_archive`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, `software_delivery`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management`, and `workflow_executions`. The following product family has been **deprecated**: `audit_logs`.
335
408
  # @param opts [Hash] the optional parameters
336
409
  # @option opts [Time] :filter_timestamp_end Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.
337
410
  # @option opts [Boolean] :filter_include_descendants Include child org usage in the response. Defaults to false.
@@ -413,8 +486,8 @@ module DatadogAPIClient::V2
413
486
  # Get Monthly Cost Attribution.
414
487
  #
415
488
  # @see #get_monthly_cost_attribution_with_http_info
416
- def get_monthly_cost_attribution(start_month, end_month, fields, opts = {})
417
- data, _status_code, _headers = get_monthly_cost_attribution_with_http_info(start_month, end_month, fields, opts)
489
+ def get_monthly_cost_attribution(start_month, fields, opts = {})
490
+ data, _status_code, _headers = get_monthly_cost_attribution_with_http_info(start_month, fields, opts)
418
491
  data
419
492
  end
420
493
 
@@ -438,16 +511,16 @@ module DatadogAPIClient::V2
438
511
  # This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).
439
512
  #
440
513
  # @param start_month [Time] Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning in this month.
441
- # @param end_month [Time] Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.
442
514
  # @param fields [String] Comma-separated list specifying cost types (e.g., `<billing_dimension>_on_demand_cost`, `<billing_dimension>_committed_cost`, `<billing_dimension>_total_cost`) and the proportions (`<billing_dimension>_percentage_in_org`, `<billing_dimension>_percentage_in_account`). Use `*` to retrieve all fields. Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` To obtain the complete list of active billing dimensions that can be used to replace `<billing_dimension>` in the field names, make a request to the [Get active billing dimensions API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution).
443
515
  # @param opts [Hash] the optional parameters
516
+ # @option opts [Time] :end_month Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.
444
517
  # @option opts [SortDirection] :sort_direction The direction to sort by: `[desc, asc]`.
445
518
  # @option opts [String] :sort_name The billing dimension to sort by. Always sorted by total cost. Example: `infra_host`.
446
519
  # @option opts [String] :tag_breakdown_keys Comma separated list of tag keys used to group cost. If no value is provided the cost will not be broken down by tags. To see which tags are available, look for the value of `tag_config_source` in the API response.
447
520
  # @option opts [String] :next_record_id List following results with a next_record_id provided in the previous query.
448
521
  # @option opts [Boolean] :include_descendants Include child org cost in the response. Defaults to `true`.
449
522
  # @return [Array<(MonthlyCostAttributionResponse, Integer, Hash)>] MonthlyCostAttributionResponse data, response status code and response headers
450
- def get_monthly_cost_attribution_with_http_info(start_month, end_month, fields, opts = {})
523
+ def get_monthly_cost_attribution_with_http_info(start_month, fields, opts = {})
451
524
  unstable_enabled = @api_client.config.unstable_operations["v2.get_monthly_cost_attribution".to_sym]
452
525
  if unstable_enabled
453
526
  @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_monthly_cost_attribution")
@@ -462,10 +535,6 @@ module DatadogAPIClient::V2
462
535
  if @api_client.config.client_side_validation && start_month.nil?
463
536
  fail ArgumentError, "Missing the required parameter 'start_month' when calling UsageMeteringAPI.get_monthly_cost_attribution"
464
537
  end
465
- # verify the required parameter 'end_month' is set
466
- if @api_client.config.client_side_validation && end_month.nil?
467
- fail ArgumentError, "Missing the required parameter 'end_month' when calling UsageMeteringAPI.get_monthly_cost_attribution"
468
- end
469
538
  # verify the required parameter 'fields' is set
470
539
  if @api_client.config.client_side_validation && fields.nil?
471
540
  fail ArgumentError, "Missing the required parameter 'fields' when calling UsageMeteringAPI.get_monthly_cost_attribution"
@@ -480,8 +549,8 @@ module DatadogAPIClient::V2
480
549
  # query parameters
481
550
  query_params = opts[:query_params] || {}
482
551
  query_params[:'start_month'] = start_month
483
- query_params[:'end_month'] = end_month
484
552
  query_params[:'fields'] = fields
553
+ query_params[:'end_month'] = opts[:'end_month'] if !opts[:'end_month'].nil?
485
554
  query_params[:'sort_direction'] = opts[:'sort_direction'] if !opts[:'sort_direction'].nil?
486
555
  query_params[:'sort_name'] = opts[:'sort_name'] if !opts[:'sort_name'].nil?
487
556
  query_params[:'tag_breakdown_keys'] = opts[:'tag_breakdown_keys'] if !opts[:'tag_breakdown_keys'].nil?