datadog_api_client 2.38.0 → 2.40.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 (389) hide show
  1. checksums.yaml +4 -4
  2. data/.generated-info +4 -0
  3. data/.generator/schemas/v1/openapi.yaml +700 -42
  4. data/.generator/schemas/v2/openapi.yaml +3845 -182
  5. data/.generator/src/generator/cli.py +1 -0
  6. data/.generator/src/generator/openapi.py +12 -0
  7. data/.generator/src/generator/templates/api.j2 +1 -1
  8. data/.github/workflows/approved_status.yml +1 -0
  9. data/.github/workflows/test.yml +1 -1
  10. data/CHANGELOG.md +42 -0
  11. data/Gemfile +1 -0
  12. data/examples/v1/dashboards/CreateDashboard_1751391372.rb +41 -0
  13. data/examples/v1/dashboards/CreatePublicDashboard_1668947073.rb +28 -0
  14. data/examples/v1/dashboards/UpdatePublicDashboard_1708268778.rb +27 -0
  15. data/examples/v1/logs-pipelines/CreateLogsPipeline_1248402480.rb +25 -0
  16. data/examples/v1/logs-pipelines/CreateLogsPipeline_1267211320.rb +27 -0
  17. data/examples/v1/logs-pipelines/CreateLogsPipeline_1271012410.rb +25 -0
  18. data/examples/v1/logs-pipelines/CreateLogsPipeline_3314493032.rb +26 -0
  19. data/examples/v1/logs-pipelines/CreateLogsPipeline_3336967838.rb +24 -0
  20. data/examples/v1/logs-pipelines/CreateLogsPipeline_3934594739.rb +26 -0
  21. data/examples/v1/synthetics/CreateSyntheticsAPITest_1072503741.rb +1 -0
  22. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +1 -0
  23. data/examples/v1/synthetics/SearchTests.rb +5 -0
  24. data/examples/v1/synthetics/SearchTests_195957771.rb +14 -0
  25. data/examples/v2/aws-integration/CreateAWSAccount.rb +10 -0
  26. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +10 -0
  27. data/examples/v2/aws-integration/GetAWSIntegrationIAMPermissions.rb +5 -0
  28. data/examples/v2/aws-integration/UpdateAWSAccount.rb +10 -0
  29. data/examples/v2/case-management/UpdateAttributes.rb +26 -0
  30. data/examples/v2/cloud-cost-management/CreateCostGCPUsageCostConfig.rb +19 -0
  31. data/examples/v2/cloud-cost-management/DeleteCostGCPUsageCostConfig.rb +5 -0
  32. data/examples/v2/cloud-cost-management/ListCostGCPUsageCostConfigs.rb +5 -0
  33. data/examples/v2/cloud-cost-management/UpdateCostGCPUsageCostConfig.rb +14 -0
  34. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections.rb +0 -3
  35. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections_3059356111.rb +0 -3
  36. data/examples/v2/cloud-network-monitoring/GetAggregatedDns.rb +5 -0
  37. data/examples/v2/datasets/CreateDataset.rb +28 -0
  38. data/examples/v2/datasets/DeleteDataset.rb +11 -0
  39. data/examples/v2/datasets/GetAllDatasets.rb +8 -0
  40. data/examples/v2/datasets/GetDataset.rb +11 -0
  41. data/examples/v2/datasets/UpdateDataset.rb +31 -0
  42. data/examples/v2/events/GetEvent.rb +5 -0
  43. data/examples/v2/metrics/GetMetricTagCardinalityDetails.rb +5 -0
  44. data/examples/v2/monitors/CreateMonitorNotificationRule.rb +0 -3
  45. data/examples/v2/monitors/DeleteMonitorNotificationRule.rb +0 -3
  46. data/examples/v2/monitors/GetMonitorNotificationRule.rb +0 -3
  47. data/examples/v2/monitors/GetMonitorNotificationRules.rb +0 -3
  48. data/examples/v2/monitors/UpdateMonitorNotificationRule.rb +0 -3
  49. data/examples/v2/on-call/UpdateOnCallSchedule.rb +1 -1
  50. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1965169892.rb +6 -0
  51. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_868881438.rb +41 -0
  52. data/examples/v2/security-monitoring/ListAssetsSBOMs.rb +12 -0
  53. data/lib/datadog_api_client/configuration.rb +10 -6
  54. data/lib/datadog_api_client/inflector.rb +264 -0
  55. data/lib/datadog_api_client/v1/api/hosts_api.rb +1 -0
  56. data/lib/datadog_api_client/v1/api/logs_api.rb +1 -1
  57. data/lib/datadog_api_client/v1/api/logs_indexes_api.rb +1 -1
  58. data/lib/datadog_api_client/v1/api/security_monitoring_api.rb +8 -2
  59. data/lib/datadog_api_client/v1/api/synthetics_api.rb +74 -0
  60. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -6
  61. data/lib/datadog_api_client/v1/models/dashboard_template_variable.rb +14 -3
  62. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_body.rb +1 -0
  63. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +9 -1
  64. data/lib/datadog_api_client/v1/models/logs_array_processor.rb +168 -0
  65. data/lib/datadog_api_client/v1/models/logs_array_processor_operation.rb +64 -0
  66. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_append.rb +175 -0
  67. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_append_type.rb +26 -0
  68. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_length.rb +165 -0
  69. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_length_type.rb +26 -0
  70. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_select.rb +207 -0
  71. data/lib/datadog_api_client/v1/models/logs_array_processor_operation_select_type.rb +26 -0
  72. data/lib/datadog_api_client/v1/models/logs_array_processor_type.rb +26 -0
  73. data/lib/datadog_api_client/v1/models/logs_decoder_processor.rb +229 -0
  74. data/lib/datadog_api_client/v1/models/logs_decoder_processor_binary_to_text_encoding.rb +27 -0
  75. data/lib/datadog_api_client/v1/models/logs_decoder_processor_input_representation.rb +27 -0
  76. data/lib/datadog_api_client/v1/models/logs_decoder_processor_type.rb +26 -0
  77. data/lib/datadog_api_client/v1/models/logs_processor.rb +3 -1
  78. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_body.rb +1 -0
  79. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +14 -0
  80. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +142 -1
  81. data/lib/datadog_api_client/v1/models/selectable_template_variable_items.rb +12 -1
  82. data/lib/datadog_api_client/v1/models/synthetics_step_type.rb +1 -0
  83. data/lib/datadog_api_client/v1/models/synthetics_test_options.rb +13 -3
  84. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +11 -1
  85. data/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb +21 -1
  86. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +121 -1
  87. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +121 -1
  88. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +121 -1
  89. data/lib/datadog_api_client/v2/api/aws_integration_api.rb +60 -0
  90. data/lib/datadog_api_client/v2/api/case_management_api.rb +72 -0
  91. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +264 -0
  92. data/lib/datadog_api_client/v2/api/cloud_network_monitoring_api.rb +80 -10
  93. data/lib/datadog_api_client/v2/api/datasets_api.rb +385 -0
  94. data/lib/datadog_api_client/v2/api/events_api.rb +67 -2
  95. data/lib/datadog_api_client/v2/api/metrics_api.rb +65 -0
  96. data/lib/datadog_api_client/v2/api/monitors_api.rb +8 -38
  97. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +13 -5
  98. data/lib/datadog_api_client/v2/api/rum_api.rb +3 -3
  99. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +127 -13
  100. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +1 -1
  101. data/lib/datadog_api_client/v2/models/action_connection_integration.rb +23 -1
  102. data/lib/datadog_api_client/v2/models/action_connection_integration_update.rb +23 -1
  103. data/lib/datadog_api_client/v2/models/alert_event_attributes.rb +187 -0
  104. data/lib/datadog_api_client/v2/models/alert_event_attributes_links_item.rb +125 -0
  105. data/lib/datadog_api_client/v2/models/alert_event_attributes_links_item_category.rb +28 -0
  106. data/lib/datadog_api_client/v2/models/alert_event_attributes_priority.rb +30 -0
  107. data/lib/datadog_api_client/v2/models/alert_event_attributes_status.rb +28 -0
  108. data/lib/datadog_api_client/v2/models/anthropic_api_key.rb +144 -0
  109. data/lib/datadog_api_client/v2/models/anthropic_api_key_type.rb +26 -0
  110. data/lib/datadog_api_client/v2/models/anthropic_api_key_update.rb +133 -0
  111. data/lib/datadog_api_client/v2/models/anthropic_credentials.rb +62 -0
  112. data/lib/datadog_api_client/v2/models/anthropic_credentials_update.rb +62 -0
  113. data/lib/datadog_api_client/v2/models/anthropic_integration.rb +144 -0
  114. data/lib/datadog_api_client/v2/models/anthropic_integration_type.rb +26 -0
  115. data/lib/datadog_api_client/v2/models/anthropic_integration_update.rb +133 -0
  116. data/lib/datadog_api_client/v2/models/asana_access_token.rb +144 -0
  117. data/lib/datadog_api_client/v2/models/asana_access_token_type.rb +26 -0
  118. data/lib/datadog_api_client/v2/models/asana_access_token_update.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/asana_credentials.rb +62 -0
  120. data/lib/datadog_api_client/v2/models/asana_credentials_update.rb +62 -0
  121. data/lib/datadog_api_client/v2/models/asana_integration.rb +144 -0
  122. data/lib/datadog_api_client/v2/models/asana_integration_type.rb +26 -0
  123. data/lib/datadog_api_client/v2/models/asana_integration_update.rb +133 -0
  124. data/lib/datadog_api_client/v2/models/asset_attributes.rb +13 -1
  125. data/lib/datadog_api_client/v2/models/aws_integration_iam_permissions_response.rb +123 -0
  126. data/lib/datadog_api_client/v2/models/aws_integration_iam_permissions_response_attributes.rb +125 -0
  127. data/lib/datadog_api_client/v2/models/aws_integration_iam_permissions_response_data.rb +125 -0
  128. data/lib/datadog_api_client/v2/models/aws_integration_iam_permissions_response_data_type.rb +26 -0
  129. data/lib/datadog_api_client/v2/models/aws_lambda_forwarder_config.rb +11 -1
  130. data/lib/datadog_api_client/v2/models/aws_lambda_forwarder_config_log_source_config.rb +107 -0
  131. data/lib/datadog_api_client/v2/models/aws_log_source_tag_filter.rb +128 -0
  132. data/lib/datadog_api_client/v2/models/azure_credentials.rb +62 -0
  133. data/lib/datadog_api_client/v2/models/azure_credentials_update.rb +62 -0
  134. data/lib/datadog_api_client/v2/models/azure_integration.rb +144 -0
  135. data/lib/datadog_api_client/v2/models/azure_integration_type.rb +26 -0
  136. data/lib/datadog_api_client/v2/models/azure_integration_update.rb +133 -0
  137. data/lib/datadog_api_client/v2/models/azure_tenant.rb +196 -0
  138. data/lib/datadog_api_client/v2/models/azure_tenant_type.rb +26 -0
  139. data/lib/datadog_api_client/v2/models/azure_tenant_update.rb +163 -0
  140. data/lib/datadog_api_client/v2/models/case.rb +1 -1
  141. data/lib/datadog_api_client/v2/models/case_attributes.rb +12 -2
  142. data/lib/datadog_api_client/v2/models/case_update_attributes.rb +144 -0
  143. data/lib/datadog_api_client/v2/models/case_update_attributes_attributes.rb +123 -0
  144. data/lib/datadog_api_client/v2/models/case_update_attributes_request.rb +123 -0
  145. data/lib/datadog_api_client/v2/models/change_event_attributes.rb +207 -0
  146. data/lib/datadog_api_client/v2/models/change_event_attributes_author.rb +115 -0
  147. data/lib/datadog_api_client/v2/models/change_event_attributes_author_type.rb +29 -0
  148. data/lib/datadog_api_client/v2/models/change_event_attributes_changed_resource.rb +115 -0
  149. data/lib/datadog_api_client/v2/models/change_event_attributes_changed_resource_type.rb +27 -0
  150. data/lib/datadog_api_client/v2/models/change_event_attributes_impacted_resources_item.rb +115 -0
  151. data/lib/datadog_api_client/v2/models/change_event_attributes_impacted_resources_item_type.rb +26 -0
  152. data/lib/datadog_api_client/v2/models/circle_ci_credentials.rb +62 -0
  153. data/lib/datadog_api_client/v2/models/circle_ci_credentials_update.rb +62 -0
  154. data/lib/datadog_api_client/v2/models/circle_ci_integration.rb +144 -0
  155. data/lib/datadog_api_client/v2/models/circle_ci_integration_type.rb +26 -0
  156. data/lib/datadog_api_client/v2/models/circle_ci_integration_update.rb +133 -0
  157. data/lib/datadog_api_client/v2/models/circle_ciapi_key.rb +144 -0
  158. data/lib/datadog_api_client/v2/models/circle_ciapi_key_type.rb +26 -0
  159. data/lib/datadog_api_client/v2/models/circle_ciapi_key_update.rb +133 -0
  160. data/lib/datadog_api_client/v2/models/clickup_api_key.rb +144 -0
  161. data/lib/datadog_api_client/v2/models/clickup_api_key_type.rb +26 -0
  162. data/lib/datadog_api_client/v2/models/clickup_api_key_update.rb +133 -0
  163. data/lib/datadog_api_client/v2/models/clickup_credentials.rb +62 -0
  164. data/lib/datadog_api_client/v2/models/clickup_credentials_update.rb +62 -0
  165. data/lib/datadog_api_client/v2/models/clickup_integration.rb +144 -0
  166. data/lib/datadog_api_client/v2/models/clickup_integration_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/clickup_integration_update.rb +133 -0
  168. data/lib/datadog_api_client/v2/models/cloudflare_api_token.rb +144 -0
  169. data/lib/datadog_api_client/v2/models/cloudflare_api_token_type.rb +26 -0
  170. data/lib/datadog_api_client/v2/models/cloudflare_api_token_update.rb +133 -0
  171. data/lib/datadog_api_client/v2/models/cloudflare_credentials.rb +63 -0
  172. data/lib/datadog_api_client/v2/models/cloudflare_credentials_update.rb +63 -0
  173. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token.rb +165 -0
  174. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token_type.rb +26 -0
  175. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token_update.rb +143 -0
  176. data/lib/datadog_api_client/v2/models/cloudflare_integration.rb +144 -0
  177. data/lib/datadog_api_client/v2/models/cloudflare_integration_type.rb +26 -0
  178. data/lib/datadog_api_client/v2/models/cloudflare_integration_update.rb +133 -0
  179. data/lib/datadog_api_client/v2/models/config_cat_credentials.rb +62 -0
  180. data/lib/datadog_api_client/v2/models/config_cat_credentials_update.rb +62 -0
  181. data/lib/datadog_api_client/v2/models/config_cat_integration.rb +144 -0
  182. data/lib/datadog_api_client/v2/models/config_cat_integration_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/config_cat_integration_update.rb +133 -0
  184. data/lib/datadog_api_client/v2/models/config_cat_sdk_key.rb +186 -0
  185. data/lib/datadog_api_client/v2/models/config_cat_sdk_key_type.rb +26 -0
  186. data/lib/datadog_api_client/v2/models/config_cat_sdk_key_update.rb +153 -0
  187. data/lib/datadog_api_client/v2/models/datadog_api_key.rb +196 -0
  188. data/lib/datadog_api_client/v2/models/datadog_api_key_type.rb +26 -0
  189. data/lib/datadog_api_client/v2/models/datadog_api_key_update.rb +163 -0
  190. data/lib/datadog_api_client/v2/models/datadog_credentials.rb +62 -0
  191. data/lib/datadog_api_client/v2/models/datadog_credentials_update.rb +62 -0
  192. data/lib/datadog_api_client/v2/models/datadog_integration.rb +144 -0
  193. data/lib/datadog_api_client/v2/models/datadog_integration_type.rb +26 -0
  194. data/lib/datadog_api_client/v2/models/datadog_integration_update.rb +133 -0
  195. data/lib/datadog_api_client/v2/models/dataset_attributes_request.rb +169 -0
  196. data/lib/datadog_api_client/v2/models/dataset_attributes_response.rb +157 -0
  197. data/lib/datadog_api_client/v2/models/dataset_create_request.rb +133 -0
  198. data/lib/datadog_api_client/v2/models/dataset_request.rb +154 -0
  199. data/lib/datadog_api_client/v2/models/dataset_response.rb +135 -0
  200. data/lib/datadog_api_client/v2/models/dataset_response_multi.rb +107 -0
  201. data/lib/datadog_api_client/v2/models/dataset_response_single.rb +115 -0
  202. data/lib/datadog_api_client/v2/models/dataset_update_request.rb +133 -0
  203. data/lib/datadog_api_client/v2/models/dns_metric_key.rb +35 -0
  204. data/lib/datadog_api_client/v2/models/entity_v3_api.rb +1 -1
  205. data/lib/datadog_api_client/v2/models/entity_v3_api_version.rb +4 -1
  206. data/lib/datadog_api_client/v2/models/entity_v3_datastore.rb +1 -1
  207. data/lib/datadog_api_client/v2/models/entity_v3_queue.rb +1 -1
  208. data/lib/datadog_api_client/v2/models/entity_v3_service.rb +1 -1
  209. data/lib/datadog_api_client/v2/models/entity_v3_system.rb +1 -1
  210. data/lib/datadog_api_client/v2/models/event_system_attributes.rb +145 -0
  211. data/lib/datadog_api_client/v2/models/event_system_attributes_category.rb +27 -0
  212. data/lib/datadog_api_client/v2/models/event_system_attributes_integration_id.rb +26 -0
  213. data/lib/datadog_api_client/v2/models/events_data_source.rb +1 -0
  214. data/lib/datadog_api_client/v2/models/fastly_api_key.rb +144 -0
  215. data/lib/datadog_api_client/v2/models/fastly_api_key_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/fastly_api_key_update.rb +133 -0
  217. data/lib/datadog_api_client/v2/models/fastly_credentials.rb +62 -0
  218. data/lib/datadog_api_client/v2/models/fastly_credentials_update.rb +62 -0
  219. data/lib/datadog_api_client/v2/models/fastly_integration.rb +144 -0
  220. data/lib/datadog_api_client/v2/models/fastly_integration_type.rb +26 -0
  221. data/lib/datadog_api_client/v2/models/fastly_integration_update.rb +133 -0
  222. data/lib/datadog_api_client/v2/models/filters_per_product.rb +150 -0
  223. data/lib/datadog_api_client/v2/models/freshservice_api_key.rb +165 -0
  224. data/lib/datadog_api_client/v2/models/freshservice_api_key_type.rb +26 -0
  225. data/lib/datadog_api_client/v2/models/freshservice_api_key_update.rb +143 -0
  226. data/lib/datadog_api_client/v2/models/freshservice_credentials.rb +62 -0
  227. data/lib/datadog_api_client/v2/models/freshservice_credentials_update.rb +62 -0
  228. data/lib/datadog_api_client/v2/models/freshservice_integration.rb +144 -0
  229. data/lib/datadog_api_client/v2/models/freshservice_integration_type.rb +26 -0
  230. data/lib/datadog_api_client/v2/models/freshservice_integration_update.rb +133 -0
  231. data/lib/datadog_api_client/v2/models/gcp_credentials.rb +62 -0
  232. data/lib/datadog_api_client/v2/models/gcp_credentials_update.rb +62 -0
  233. data/lib/datadog_api_client/v2/models/gcp_integration.rb +144 -0
  234. data/lib/datadog_api_client/v2/models/gcp_integration_type.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/gcp_integration_update.rb +133 -0
  236. data/lib/datadog_api_client/v2/models/gcp_service_account.rb +165 -0
  237. data/lib/datadog_api_client/v2/models/gcp_service_account_credential_type.rb +26 -0
  238. data/lib/datadog_api_client/v2/models/gcp_service_account_update.rb +143 -0
  239. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config.rb +154 -0
  240. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_attributes.rb +369 -0
  241. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_data.rb +144 -0
  242. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request.rb +123 -0
  243. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request_attributes.rb +123 -0
  244. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request_type.rb +26 -0
  245. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_data.rb +144 -0
  246. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request.rb +123 -0
  247. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request_attributes.rb +217 -0
  248. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request_type.rb +26 -0
  249. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_response.rb +105 -0
  250. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_type.rb +26 -0
  251. data/lib/datadog_api_client/v2/models/gcp_usage_cost_configs_response.rb +107 -0
  252. data/lib/datadog_api_client/v2/models/gemini_api_key.rb +144 -0
  253. data/lib/datadog_api_client/v2/models/gemini_api_key_type.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/gemini_api_key_update.rb +133 -0
  255. data/lib/datadog_api_client/v2/models/gemini_credentials.rb +62 -0
  256. data/lib/datadog_api_client/v2/models/gemini_credentials_update.rb +62 -0
  257. data/lib/datadog_api_client/v2/models/gemini_integration.rb +144 -0
  258. data/lib/datadog_api_client/v2/models/gemini_integration_type.rb +26 -0
  259. data/lib/datadog_api_client/v2/models/gemini_integration_update.rb +133 -0
  260. data/lib/datadog_api_client/v2/models/gitlab_api_key.rb +144 -0
  261. data/lib/datadog_api_client/v2/models/gitlab_api_key_type.rb +26 -0
  262. data/lib/datadog_api_client/v2/models/gitlab_api_key_update.rb +133 -0
  263. data/lib/datadog_api_client/v2/models/gitlab_credentials.rb +62 -0
  264. data/lib/datadog_api_client/v2/models/gitlab_credentials_update.rb +62 -0
  265. data/lib/datadog_api_client/v2/models/gitlab_integration.rb +144 -0
  266. data/lib/datadog_api_client/v2/models/gitlab_integration_type.rb +26 -0
  267. data/lib/datadog_api_client/v2/models/gitlab_integration_update.rb +133 -0
  268. data/lib/datadog_api_client/v2/models/grey_noise_api_key.rb +144 -0
  269. data/lib/datadog_api_client/v2/models/grey_noise_api_key_type.rb +26 -0
  270. data/lib/datadog_api_client/v2/models/grey_noise_api_key_update.rb +133 -0
  271. data/lib/datadog_api_client/v2/models/grey_noise_credentials.rb +62 -0
  272. data/lib/datadog_api_client/v2/models/grey_noise_credentials_update.rb +62 -0
  273. data/lib/datadog_api_client/v2/models/grey_noise_integration.rb +144 -0
  274. data/lib/datadog_api_client/v2/models/grey_noise_integration_type.rb +26 -0
  275. data/lib/datadog_api_client/v2/models/grey_noise_integration_update.rb +133 -0
  276. data/lib/datadog_api_client/v2/models/launch_darkly_api_key.rb +144 -0
  277. data/lib/datadog_api_client/v2/models/launch_darkly_api_key_type.rb +26 -0
  278. data/lib/datadog_api_client/v2/models/launch_darkly_api_key_update.rb +133 -0
  279. data/lib/datadog_api_client/v2/models/launch_darkly_credentials.rb +62 -0
  280. data/lib/datadog_api_client/v2/models/launch_darkly_credentials_update.rb +62 -0
  281. data/lib/datadog_api_client/v2/models/launch_darkly_integration.rb +144 -0
  282. data/lib/datadog_api_client/v2/models/launch_darkly_integration_type.rb +26 -0
  283. data/lib/datadog_api_client/v2/models/launch_darkly_integration_update.rb +133 -0
  284. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  285. data/lib/datadog_api_client/v2/models/layer_attributes_interval.rb +1 -1
  286. data/lib/datadog_api_client/v2/models/list_assets_sbo_ms_response.rb +145 -0
  287. data/lib/datadog_api_client/v2/models/metric_asset_attributes.rb +14 -2
  288. data/lib/datadog_api_client/v2/models/metric_dashboard_attributes.rb +13 -1
  289. data/lib/datadog_api_client/v2/models/metric_monitor_asset.rb +1 -1
  290. data/lib/datadog_api_client/v2/models/metric_notebook_asset.rb +1 -1
  291. data/lib/datadog_api_client/v2/models/metric_slo_asset.rb +1 -1
  292. data/lib/datadog_api_client/v2/models/metric_tag_cardinalities_meta.rb +107 -0
  293. data/lib/datadog_api_client/v2/models/metric_tag_cardinalities_response.rb +117 -0
  294. data/lib/datadog_api_client/v2/models/metric_tag_cardinality.rb +125 -0
  295. data/lib/datadog_api_client/v2/models/metric_tag_cardinality_attributes.rb +105 -0
  296. data/lib/datadog_api_client/v2/models/notion_api_key.rb +144 -0
  297. data/lib/datadog_api_client/v2/models/notion_api_key_type.rb +26 -0
  298. data/lib/datadog_api_client/v2/models/notion_api_key_update.rb +133 -0
  299. data/lib/datadog_api_client/v2/models/notion_credentials.rb +62 -0
  300. data/lib/datadog_api_client/v2/models/notion_credentials_update.rb +62 -0
  301. data/lib/datadog_api_client/v2/models/notion_integration.rb +144 -0
  302. data/lib/datadog_api_client/v2/models/notion_integration_type.rb +26 -0
  303. data/lib/datadog_api_client/v2/models/notion_integration_update.rb +133 -0
  304. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule.rb +1 -12
  305. data/lib/datadog_api_client/v2/models/okta_api_token.rb +165 -0
  306. data/lib/datadog_api_client/v2/models/okta_api_token_type.rb +26 -0
  307. data/lib/datadog_api_client/v2/models/okta_api_token_update.rb +143 -0
  308. data/lib/datadog_api_client/v2/models/okta_credentials.rb +62 -0
  309. data/lib/datadog_api_client/v2/models/okta_credentials_update.rb +62 -0
  310. data/lib/datadog_api_client/v2/models/okta_integration.rb +144 -0
  311. data/lib/datadog_api_client/v2/models/okta_integration_type.rb +26 -0
  312. data/lib/datadog_api_client/v2/models/okta_integration_update.rb +133 -0
  313. data/lib/datadog_api_client/v2/models/open_ai_credentials.rb +62 -0
  314. data/lib/datadog_api_client/v2/models/open_ai_credentials_update.rb +62 -0
  315. data/lib/datadog_api_client/v2/models/open_ai_integration.rb +144 -0
  316. data/lib/datadog_api_client/v2/models/open_ai_integration_type.rb +26 -0
  317. data/lib/datadog_api_client/v2/models/open_ai_integration_update.rb +133 -0
  318. data/lib/datadog_api_client/v2/models/open_aiapi_key.rb +144 -0
  319. data/lib/datadog_api_client/v2/models/open_aiapi_key_type.rb +26 -0
  320. data/lib/datadog_api_client/v2/models/open_aiapi_key_update.rb +133 -0
  321. data/lib/datadog_api_client/v2/models/rule_types_items.rb +3 -1
  322. data/lib/datadog_api_client/v2/models/sbom_attributes.rb +24 -1
  323. data/lib/datadog_api_client/v2/models/sbom_component.rb +46 -1
  324. data/lib/datadog_api_client/v2/models/sbom_component_dependency.rb +117 -0
  325. data/lib/datadog_api_client/v2/models/sbom_component_license.rb +123 -0
  326. data/lib/datadog_api_client/v2/models/sbom_component_license_license.rb +123 -0
  327. data/lib/datadog_api_client/v2/models/sbom_component_license_type.rb +33 -0
  328. data/lib/datadog_api_client/v2/models/sbom_component_property.rb +144 -0
  329. data/lib/datadog_api_client/v2/models/sbom_component_supplier.rb +123 -0
  330. data/lib/datadog_api_client/v2/models/sbom_metadata.rb +25 -3
  331. data/lib/datadog_api_client/v2/models/sbom_metadata_author.rb +105 -0
  332. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +1 -1
  333. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +1 -1
  334. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options.rb +11 -1
  335. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options_flagged_ip_type.rb +27 -0
  336. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_type.rb +1 -0
  337. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +31 -1
  338. data/lib/datadog_api_client/v2/models/security_monitoring_scheduling_options.rb +125 -0
  339. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +31 -1
  340. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_payload.rb +31 -1
  341. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +12 -1
  342. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +31 -1
  343. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_test_payload.rb +31 -1
  344. data/lib/datadog_api_client/v2/models/service_now_basic_auth.rb +186 -0
  345. data/lib/datadog_api_client/v2/models/service_now_basic_auth_type.rb +26 -0
  346. data/lib/datadog_api_client/v2/models/service_now_basic_auth_update.rb +153 -0
  347. data/lib/datadog_api_client/v2/models/service_now_credentials.rb +62 -0
  348. data/lib/datadog_api_client/v2/models/service_now_credentials_update.rb +62 -0
  349. data/lib/datadog_api_client/v2/models/service_now_integration.rb +144 -0
  350. data/lib/datadog_api_client/v2/models/service_now_integration_type.rb +26 -0
  351. data/lib/datadog_api_client/v2/models/service_now_integration_update.rb +133 -0
  352. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_array.rb +107 -0
  353. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data.rb +125 -0
  354. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes.rb +119 -0
  355. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes_group_by_items.rb +115 -0
  356. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes_metrics_items.rb +115 -0
  357. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_type.rb +26 -0
  358. data/lib/datadog_api_client/v2/models/split_api_key.rb +144 -0
  359. data/lib/datadog_api_client/v2/models/split_api_key_type.rb +26 -0
  360. data/lib/datadog_api_client/v2/models/split_api_key_update.rb +133 -0
  361. data/lib/datadog_api_client/v2/models/split_credentials.rb +62 -0
  362. data/lib/datadog_api_client/v2/models/split_credentials_update.rb +62 -0
  363. data/lib/datadog_api_client/v2/models/split_integration.rb +144 -0
  364. data/lib/datadog_api_client/v2/models/split_integration_type.rb +26 -0
  365. data/lib/datadog_api_client/v2/models/split_integration_update.rb +133 -0
  366. data/lib/datadog_api_client/v2/models/statsig_api_key.rb +144 -0
  367. data/lib/datadog_api_client/v2/models/statsig_api_key_type.rb +26 -0
  368. data/lib/datadog_api_client/v2/models/statsig_api_key_update.rb +133 -0
  369. data/lib/datadog_api_client/v2/models/statsig_credentials.rb +62 -0
  370. data/lib/datadog_api_client/v2/models/statsig_credentials_update.rb +62 -0
  371. data/lib/datadog_api_client/v2/models/statsig_integration.rb +144 -0
  372. data/lib/datadog_api_client/v2/models/statsig_integration_type.rb +26 -0
  373. data/lib/datadog_api_client/v2/models/statsig_integration_update.rb +133 -0
  374. data/lib/datadog_api_client/v2/models/v2_event.rb +125 -0
  375. data/lib/datadog_api_client/v2/models/v2_event_attributes.rb +137 -0
  376. data/lib/datadog_api_client/v2/models/v2_event_attributes_attributes.rb +63 -0
  377. data/lib/datadog_api_client/v2/models/v2_event_response.rb +105 -0
  378. data/lib/datadog_api_client/v2/models/virus_total_api_key.rb +144 -0
  379. data/lib/datadog_api_client/v2/models/virus_total_api_key_type.rb +26 -0
  380. data/lib/datadog_api_client/v2/models/virus_total_api_key_update.rb +133 -0
  381. data/lib/datadog_api_client/v2/models/virus_total_credentials.rb +62 -0
  382. data/lib/datadog_api_client/v2/models/virus_total_credentials_update.rb +62 -0
  383. data/lib/datadog_api_client/v2/models/virus_total_integration.rb +144 -0
  384. data/lib/datadog_api_client/v2/models/virus_total_integration_type.rb +26 -0
  385. data/lib/datadog_api_client/v2/models/virus_total_integration_update.rb +133 -0
  386. data/lib/datadog_api_client/v2/models/vulnerability_attributes.rb +24 -1
  387. data/lib/datadog_api_client/version.rb +1 -1
  388. metadata +293 -2
  389. data/.apigentools-info +0 -16
@@ -51,6 +51,7 @@ def cli(specs, output):
51
51
  env.globals["get_default"] = openapi.get_default
52
52
  env.globals["get_container"] = openapi.get_container
53
53
  env.globals["get_type_at_path"] = openapi.get_type_at_path
54
+ env.globals["get_security_names"] = openapi.get_security_names
54
55
 
55
56
  api_j2 = env.get_template("api.j2")
56
57
  model_j2 = env.get_template("model.j2")
@@ -502,3 +502,15 @@ def get_type_at_path(operation, attribute_path):
502
502
  for attr in attribute_path.split("."):
503
503
  content = content["properties"][attr]
504
504
  return get_name(content.get("items"))
505
+
506
+
507
+ def get_security_names(security):
508
+ if security is None:
509
+ return []
510
+
511
+ auth_names = set()
512
+ for auth in security:
513
+ for key in auth.keys() if isinstance(auth, dict) else [auth]:
514
+ auth_names.add(key)
515
+
516
+ return list(auth_names)
@@ -195,7 +195,7 @@ module {{ module_name }}::{{ version|upper }}
195
195
 
196
196
  # auth_names
197
197
  {%- set authMethods = operation.security if "security" in operation else openapi.security %}
198
- auth_names = opts[:debug_auth_names] || [{% for auth in (authMethods or []) %}:{{ ", :".join(auth.keys()) }}{%- if not loop.last %}, {% endif %}{% endfor %}]
198
+ auth_names = opts[:debug_auth_names] || [{% for auth in get_security_names(authMethods)|sort %}:{{ auth }}{%- if not loop.last %}, {% endif %}{% endfor %}]
199
199
 
200
200
  new_options = opts.merge(
201
201
  :operation => :{{ operation.operationId|snake_case }},
@@ -35,3 +35,4 @@ jobs:
35
35
  with:
36
36
  github-token: ${{ steps.get_token.outputs.token }}
37
37
  repo: datadog-api-spec
38
+ context: datadog-api-client-ruby/master
@@ -139,4 +139,4 @@ jobs:
139
139
  github-token: ${{ steps.get_token.outputs.token }}
140
140
  repo: datadog-api-spec
141
141
  status: ${{ (needs.test.result == 'cancelled' || needs.examples.result == 'cancelled') && 'pending' || needs.test.result == 'success' && needs.examples.result == 'success' && 'success' || 'failure' }}
142
- context: unit
142
+ context: master/unit
data/CHANGELOG.md CHANGED
@@ -1,5 +1,47 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2.40.0/2025-08-12
4
+
5
+ ### Added
6
+ * Add Flex_Logs_Compute_XL to API Spec [#2585](https://github.com/DataDog/datadog-api-client-ruby/pull/2585)
7
+ * Support Host and IaC finding types in security notifications [#2584](https://github.com/DataDog/datadog-api-client-ruby/pull/2584)
8
+ * New keys for summary public endpoint for Event Management Correlation product [#2580](https://github.com/DataDog/datadog-api-client-ruby/pull/2580)
9
+ * Add log autosubscription tag filters config to aws v2 API [#2576](https://github.com/DataDog/datadog-api-client-ruby/pull/2576)
10
+ * Extended List Findings API to expose resource related Private IP Addresses to details [#2569](https://github.com/DataDog/datadog-api-client-ruby/pull/2569)
11
+ * update metrics.yaml for ListMetricAssets and include Dashboard info [#2564](https://github.com/DataDog/datadog-api-client-ruby/pull/2564)
12
+ * Support Cloud SIEM scheduled rules in API client [#2561](https://github.com/DataDog/datadog-api-client-ruby/pull/2561)
13
+ * Uncomment edit dataset block, add dataset limitations into endpoint descriptions [#2559](https://github.com/DataDog/datadog-api-client-ruby/pull/2559)
14
+ * Add `text` field in synthetics search endpoint [#2558](https://github.com/DataDog/datadog-api-client-ruby/pull/2558)
15
+ * Adding all action connection types to public API [#2557](https://github.com/DataDog/datadog-api-client-ruby/pull/2557)
16
+ * Document case management attributes endpoints [#2554](https://github.com/DataDog/datadog-api-client-ruby/pull/2554)
17
+ * add AP2 endpoint for On-Call Paging [#2551](https://github.com/DataDog/datadog-api-client-ruby/pull/2551)
18
+ * Flag IP case action [#2549](https://github.com/DataDog/datadog-api-client-ruby/pull/2549)
19
+ * Add DNS specs for Cloud Network Monitoring API [#2547](https://github.com/DataDog/datadog-api-client-ruby/pull/2547)
20
+
21
+ ### Fixed
22
+ * Split Dataset into separate request and response objects, mark unstable [#2568](https://github.com/DataDog/datadog-api-client-ruby/pull/2568)
23
+ * Disables some tests to avoid fails as the service is disabled [#2563](https://github.com/DataDog/datadog-api-client-ruby/pull/2563)
24
+ * OP make 'support_rules' field in parse_grok processor optional [#2552](https://github.com/DataDog/datadog-api-client-ruby/pull/2552)
25
+
26
+ ### Deprecated
27
+ * Deprecate signals triage v1 endpoints [#2565](https://github.com/DataDog/datadog-api-client-ruby/pull/2565)
28
+
29
+ ## 2.39.0/2025-07-14
30
+
31
+ ### Added
32
+ * Add Datasets API to Open API Spec [#2528](https://github.com/DataDog/datadog-api-client-ruby/pull/2528)
33
+ * Add support for vulnerability management - GetSBOMsList new endpoint and update existing ones [#2527](https://github.com/DataDog/datadog-api-client-ruby/pull/2527)
34
+ * Add spreadsheet to restriction_policy specs [#2521](https://github.com/DataDog/datadog-api-client-ruby/pull/2521)
35
+ * Adds missing /api/v1/synthetics/tests/search spec [#2514](https://github.com/DataDog/datadog-api-client-ruby/pull/2514)
36
+ * Add API spec for AWS Integrations IAM permissions [#2508](https://github.com/DataDog/datadog-api-client-ruby/pull/2508)
37
+ * New keys added for multiple products [#2506](https://github.com/DataDog/datadog-api-client-ruby/pull/2506)
38
+ * Add extractFromEmailBody step for synthetics browser test [#2503](https://github.com/DataDog/datadog-api-client-ruby/pull/2503)
39
+ * Add support for `Array Processor` in `Logs Pipelines` [#2501](https://github.com/DataDog/datadog-api-client-ruby/pull/2501)
40
+ * Document Cloud Cost Management GCP endpoints publicly [#2450](https://github.com/DataDog/datadog-api-client-ruby/pull/2450)
41
+
42
+ ### Changed
43
+ * Update template variable schemas with type field in dashboards and shared dashboards endpoints for group by template variables [#2502](https://github.com/DataDog/datadog-api-client-ruby/pull/2502)
44
+
3
45
  ## 2.38.0/2025-06-30
4
46
 
5
47
  ### Fixed
data/Gemfile CHANGED
@@ -9,6 +9,7 @@ group :development, :test do
9
9
  gem 'bigdecimal', '= 3.1.9'
10
10
  gem 'cucumber', '~> 9.2.1'
11
11
  gem 'datadog-ci', '~> 1.11'
12
+ gem 'libddwaf', '= 1.18.0.0.1'
12
13
  gem 'gem-release'
13
14
  gem 'rake', '~> 13.0.1'
14
15
  gem 'ostruct'
@@ -0,0 +1,41 @@
1
+ # Create a new dashboard with template variable type field returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ description: nil,
8
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
9
+ notify_list: [],
10
+ reflow_type: DatadogAPIClient::V1::DashboardReflowType::AUTO,
11
+ restricted_roles: [],
12
+ template_variables: [
13
+ DatadogAPIClient::V1::DashboardTemplateVariable.new({
14
+ available_values: [
15
+ "service",
16
+ "datacenter",
17
+ "env",
18
+ ],
19
+ defaults: [
20
+ "service",
21
+ "datacenter",
22
+ ],
23
+ name: "group_by_var",
24
+ type: "group",
25
+ }),
26
+ ],
27
+ title: "",
28
+ widgets: [
29
+ DatadogAPIClient::V1::Widget.new({
30
+ definition: DatadogAPIClient::V1::HostMapWidgetDefinition.new({
31
+ requests: DatadogAPIClient::V1::HostMapWidgetDefinitionRequests.new({
32
+ fill: DatadogAPIClient::V1::HostMapRequest.new({
33
+ q: "avg:system.cpu.user{*}",
34
+ }),
35
+ }),
36
+ type: DatadogAPIClient::V1::HostMapWidgetDefinitionType::HOSTMAP,
37
+ }),
38
+ }),
39
+ ],
40
+ })
41
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,28 @@
1
+ # Create a shared dashboard with a group template variable returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ # there is a valid "dashboard" in the system
7
+ DASHBOARD_ID = ENV["DASHBOARD_ID"]
8
+
9
+ body = DatadogAPIClient::V1::SharedDashboard.new({
10
+ dashboard_id: DASHBOARD_ID,
11
+ dashboard_type: DatadogAPIClient::V1::DashboardType::CUSTOM_TIMEBOARD,
12
+ share_type: DatadogAPIClient::V1::DashboardShareType::OPEN,
13
+ global_time: DatadogAPIClient::V1::DashboardGlobalTime.new({
14
+ live_span: DatadogAPIClient::V1::DashboardGlobalTimeLiveSpan::PAST_ONE_HOUR,
15
+ }),
16
+ selectable_template_vars: [
17
+ DatadogAPIClient::V1::SelectableTemplateVariableItems.new({
18
+ default_value: "*",
19
+ name: "group_by_var",
20
+ type: "group",
21
+ visible_tags: [
22
+ "selectableValue1",
23
+ "selectableValue2",
24
+ ],
25
+ }),
26
+ ],
27
+ })
28
+ p api_instance.create_public_dashboard(body)
@@ -0,0 +1,27 @@
1
+ # Update a shared dashboard with selectable_template_vars returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ # there is a valid "shared_dashboard" in the system
7
+ SHARED_DASHBOARD_TOKEN = ENV["SHARED_DASHBOARD_TOKEN"]
8
+
9
+ body = DatadogAPIClient::V1::SharedDashboardUpdateRequest.new({
10
+ global_time: DatadogAPIClient::V1::SharedDashboardUpdateRequestGlobalTime.new({
11
+ live_span: DatadogAPIClient::V1::DashboardGlobalTimeLiveSpan::PAST_FIFTEEN_MINUTES,
12
+ }),
13
+ share_list: [],
14
+ share_type: DatadogAPIClient::V1::DashboardShareType::OPEN,
15
+ selectable_template_vars: [
16
+ DatadogAPIClient::V1::SelectableTemplateVariableItems.new({
17
+ default_value: "*",
18
+ name: "group_by_var",
19
+ type: "group",
20
+ visible_tags: [
21
+ "selectableValue1",
22
+ "selectableValue2",
23
+ ],
24
+ }),
25
+ ],
26
+ })
27
+ p api_instance.update_public_dashboard(SHARED_DASHBOARD_TOKEN, body)
@@ -0,0 +1,25 @@
1
+ # Create a pipeline with Array Processor Append Operation returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipelineArrayAppend",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsArrayProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsArrayProcessorType::ARRAY_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "append_ip_to_array",
16
+ operation: DatadogAPIClient::V1::LogsArrayProcessorOperationAppend.new({
17
+ type: DatadogAPIClient::V1::LogsArrayProcessorOperationAppendType::APPEND,
18
+ source: "network.client.ip",
19
+ target: "sourceIps",
20
+ }),
21
+ }),
22
+ ],
23
+ tags: [],
24
+ })
25
+ p api_instance.create_logs_pipeline(body)
@@ -0,0 +1,27 @@
1
+ # Create a pipeline with Array Processor Select Operation returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipelineArraySelect",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsArrayProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsArrayProcessorType::ARRAY_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "extract_referrer",
16
+ operation: DatadogAPIClient::V1::LogsArrayProcessorOperationSelect.new({
17
+ type: DatadogAPIClient::V1::LogsArrayProcessorOperationSelectType::SELECT,
18
+ source: "httpRequest.headers",
19
+ target: "referrer",
20
+ filter: "name:Referrer",
21
+ value_to_extract: "value",
22
+ }),
23
+ }),
24
+ ],
25
+ tags: [],
26
+ })
27
+ p api_instance.create_logs_pipeline(body)
@@ -0,0 +1,25 @@
1
+ # Create a pipeline with Array Processor Length Operation returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipelineArrayLength",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsArrayProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsArrayProcessorType::ARRAY_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "count_tags",
16
+ operation: DatadogAPIClient::V1::LogsArrayProcessorOperationLength.new({
17
+ type: DatadogAPIClient::V1::LogsArrayProcessorOperationLengthType::LENGTH,
18
+ source: "tags",
19
+ target: "tagCount",
20
+ }),
21
+ }),
22
+ ],
23
+ tags: [],
24
+ })
25
+ p api_instance.create_logs_pipeline(body)
@@ -0,0 +1,26 @@
1
+ # Create a pipeline with Array Processor Append Operation with preserve_source true returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipelineArrayAppendPreserve",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsArrayProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsArrayProcessorType::ARRAY_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "append_ip_and_keep_source",
16
+ operation: DatadogAPIClient::V1::LogsArrayProcessorOperationAppend.new({
17
+ type: DatadogAPIClient::V1::LogsArrayProcessorOperationAppendType::APPEND,
18
+ source: "network.client.ip",
19
+ target: "sourceIps",
20
+ preserve_source: true,
21
+ }),
22
+ }),
23
+ ],
24
+ tags: [],
25
+ })
26
+ p api_instance.create_logs_pipeline(body)
@@ -0,0 +1,24 @@
1
+ # Create a pipeline with Decoder Processor returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testDecoderProcessor",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsDecoderProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsDecoderProcessorType::DECODER_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "test_decoder",
16
+ source: "encoded.field",
17
+ target: "decoded.field",
18
+ binary_to_text_encoding: DatadogAPIClient::V1::LogsDecoderProcessorBinaryToTextEncoding::BASE16,
19
+ input_representation: DatadogAPIClient::V1::LogsDecoderProcessorInputRepresentation::UTF_8,
20
+ }),
21
+ ],
22
+ tags: [],
23
+ })
24
+ p api_instance.create_logs_pipeline(body)
@@ -0,0 +1,26 @@
1
+ # Create a pipeline with Array Processor Append Operation with preserve_source false returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipelineArrayAppendNoPreserve",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsArrayProcessor.new({
13
+ type: DatadogAPIClient::V1::LogsArrayProcessorType::ARRAY_PROCESSOR,
14
+ is_enabled: true,
15
+ name: "append_ip_and_remove_source",
16
+ operation: DatadogAPIClient::V1::LogsArrayProcessorOperationAppend.new({
17
+ type: DatadogAPIClient::V1::LogsArrayProcessorOperationAppendType::APPEND,
18
+ source: "network.client.ip",
19
+ target: "sourceIps",
20
+ preserve_source: false,
21
+ }),
22
+ }),
23
+ ],
24
+ tags: [],
25
+ })
26
+ p api_instance.create_logs_pipeline(body)
@@ -25,6 +25,7 @@ body = DatadogAPIClient::V1::SyntheticsAPITest.new({
25
25
  options: DatadogAPIClient::V1::SyntheticsTestOptions.new({
26
26
  accept_self_signed: true,
27
27
  check_certificate_revocation: true,
28
+ disable_aia_intermediate_fetching: true,
28
29
  tick_every: 60,
29
30
  }),
30
31
  subtype: DatadogAPIClient::V1::SyntheticsTestDetailsSubType::SSL,
@@ -101,6 +101,7 @@ body = DatadogAPIClient::V1::SyntheticsAPITest.new({
101
101
  ],
102
102
  request: DatadogAPIClient::V1::SyntheticsTestRequest.new({
103
103
  check_certificate_revocation: true,
104
+ disable_aia_intermediate_fetching: true,
104
105
  host: "example.org",
105
106
  port: 443,
106
107
  }),
@@ -0,0 +1,5 @@
1
+ # Search Synthetic tests returns "OK - Returns the list of Synthetic tests matching the search." response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::SyntheticsAPI.new
5
+ p api_instance.search_tests()
@@ -0,0 +1,14 @@
1
+ # Search Synthetic tests with boolean query parameters
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::SyntheticsAPI.new
5
+ opts = {
6
+ text: "tag:value",
7
+ include_full_config: true,
8
+ search_suites: true,
9
+ facets_only: true,
10
+ start: 10,
11
+ count: 5,
12
+ sort: "name,desc",
13
+ }
14
+ p api_instance.search_tests(opts)
@@ -23,6 +23,16 @@ body = DatadogAPIClient::V2::AWSAccountCreateRequest.new({
23
23
  lambdas: [
24
24
  "arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder",
25
25
  ],
26
+ log_source_config: DatadogAPIClient::V2::AWSLambdaForwarderConfigLogSourceConfig.new({
27
+ tag_filters: [
28
+ DatadogAPIClient::V2::AWSLogSourceTagFilter.new({
29
+ source: "s3",
30
+ tags: [
31
+ "test:test",
32
+ ],
33
+ }),
34
+ ],
35
+ }),
26
36
  sources: [
27
37
  "s3",
28
38
  ],
@@ -22,6 +22,16 @@ body = DatadogAPIClient::V2::AWSAccountCreateRequest.new({
22
22
  lambdas: [
23
23
  "arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder",
24
24
  ],
25
+ log_source_config: DatadogAPIClient::V2::AWSLambdaForwarderConfigLogSourceConfig.new({
26
+ tag_filters: [
27
+ DatadogAPIClient::V2::AWSLogSourceTagFilter.new({
28
+ source: "s3",
29
+ tags: [
30
+ "test:test",
31
+ ],
32
+ }),
33
+ ],
34
+ }),
25
35
  sources: [
26
36
  "s3",
27
37
  ],
@@ -0,0 +1,5 @@
1
+ # Get AWS integration IAM permissions returns "AWS IAM Permissions object" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AWSIntegrationAPI.new
5
+ p api_instance.get_aws_integration_iam_permissions()
@@ -25,6 +25,16 @@ body = DatadogAPIClient::V2::AWSAccountUpdateRequest.new({
25
25
  lambdas: [
26
26
  "arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder",
27
27
  ],
28
+ log_source_config: DatadogAPIClient::V2::AWSLambdaForwarderConfigLogSourceConfig.new({
29
+ tag_filters: [
30
+ DatadogAPIClient::V2::AWSLogSourceTagFilter.new({
31
+ source: "s3",
32
+ tags: [
33
+ "test:test",
34
+ ],
35
+ }),
36
+ ],
37
+ }),
28
38
  sources: [
29
39
  "s3",
30
40
  ],
@@ -0,0 +1,26 @@
1
+ # Update case attributes returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CaseManagementAPI.new
5
+
6
+ # there is a valid "case" in the system
7
+ CASE_ID = ENV["CASE_ID"]
8
+
9
+ body = DatadogAPIClient::V2::CaseUpdateAttributesRequest.new({
10
+ data: DatadogAPIClient::V2::CaseUpdateAttributes.new({
11
+ attributes: DatadogAPIClient::V2::CaseUpdateAttributesAttributes.new({
12
+ attributes: {
13
+ env: [
14
+ "test",
15
+ ], service: [
16
+ "web-store",
17
+ "web-api",
18
+ ], team: [
19
+ "engineer",
20
+ ],
21
+ },
22
+ }),
23
+ type: DatadogAPIClient::V2::CaseResourceType::CASE,
24
+ }),
25
+ })
26
+ p api_instance.update_attributes(CASE_ID, body)
@@ -0,0 +1,19 @@
1
+ # Create Cloud Cost Management GCP Usage Cost config returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+
6
+ body = DatadogAPIClient::V2::GCPUsageCostConfigPostRequest.new({
7
+ data: DatadogAPIClient::V2::GCPUsageCostConfigPostData.new({
8
+ attributes: DatadogAPIClient::V2::GCPUsageCostConfigPostRequestAttributes.new({
9
+ billing_account_id: "123456_A123BC_12AB34",
10
+ bucket_name: "dd-cost-bucket",
11
+ export_dataset_name: "billing",
12
+ export_prefix: "datadog_cloud_cost_usage_export",
13
+ export_project_name: "dd-cloud-cost-report",
14
+ service_account: "dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com",
15
+ }),
16
+ type: DatadogAPIClient::V2::GCPUsageCostConfigPostRequestType::GCP_USAGE_COST_CONFIG_POST_REQUEST,
17
+ }),
18
+ })
19
+ p api_instance.create_cost_gcp_usage_cost_config(body)
@@ -0,0 +1,5 @@
1
+ # Delete Cloud Cost Management GCP Usage Cost config returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+ api_instance.delete_cost_gcp_usage_cost_config("100")
@@ -0,0 +1,5 @@
1
+ # List Cloud Cost Management GCP Usage Cost configs returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+ p api_instance.list_cost_gcp_usage_cost_configs()
@@ -0,0 +1,14 @@
1
+ # Update Cloud Cost Management GCP Usage Cost config returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+
6
+ body = DatadogAPIClient::V2::GCPUsageCostConfigPatchRequest.new({
7
+ data: DatadogAPIClient::V2::GCPUsageCostConfigPatchData.new({
8
+ attributes: DatadogAPIClient::V2::GCPUsageCostConfigPatchRequestAttributes.new({
9
+ is_enabled: true,
10
+ }),
11
+ type: DatadogAPIClient::V2::GCPUsageCostConfigPatchRequestType::GCP_USAGE_COST_CONFIG_PATCH_REQUEST,
12
+ }),
13
+ })
14
+ p api_instance.update_cost_gcp_usage_cost_config("100", body)
@@ -1,8 +1,5 @@
1
1
  # Get all aggregated connections returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.get_aggregated_connections".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::CloudNetworkMonitoringAPI.new
8
5
  p api_instance.get_aggregated_connections()
@@ -1,8 +1,5 @@
1
1
  # Get aggregated connections returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.get_aggregated_connections".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::CloudNetworkMonitoringAPI.new
8
5
  p api_instance.get_aggregated_connections()
@@ -0,0 +1,5 @@
1
+ # Get all aggregated DNS traffic returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudNetworkMonitoringAPI.new
5
+ p api_instance.get_aggregated_dns()
@@ -0,0 +1,28 @@
1
+ # Create a dataset returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.create_dataset".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::DatasetsAPI.new
8
+
9
+ body = DatadogAPIClient::V2::DatasetCreateRequest.new({
10
+ data: DatadogAPIClient::V2::DatasetRequest.new({
11
+ attributes: DatadogAPIClient::V2::DatasetAttributesRequest.new({
12
+ name: "Security Audit Dataset",
13
+ principals: [
14
+ "role:94172442-be03-11e9-a77a-3b7612558ac1",
15
+ ],
16
+ product_filters: [
17
+ DatadogAPIClient::V2::FiltersPerProduct.new({
18
+ filters: [
19
+ "@application.id:ABCD",
20
+ ],
21
+ product: "metrics",
22
+ }),
23
+ ],
24
+ }),
25
+ type: "dataset",
26
+ }),
27
+ })
28
+ p api_instance.create_dataset(body)
@@ -0,0 +1,11 @@
1
+ # Delete a dataset returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.delete_dataset".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::DatasetsAPI.new
8
+
9
+ # there is a valid "dataset" in the system
10
+ DATASET_DATA_ID = ENV["DATASET_DATA_ID"]
11
+ api_instance.delete_dataset(DATASET_DATA_ID)
@@ -0,0 +1,8 @@
1
+ # Get all datasets returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.get_all_datasets".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::DatasetsAPI.new
8
+ p api_instance.get_all_datasets()
@@ -0,0 +1,11 @@
1
+ # Get a single dataset by ID returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.get_dataset".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::DatasetsAPI.new
8
+
9
+ # there is a valid "dataset" in the system
10
+ DATASET_DATA_ID = ENV["DATASET_DATA_ID"]
11
+ p api_instance.get_dataset(DATASET_DATA_ID)