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
@@ -21,16 +21,24 @@ module DatadogAPIClient::V2
21
21
  class SBOMMetadata
22
22
  include BaseGenericModel
23
23
 
24
+ # List of authors of the SBOM.
25
+ attr_accessor :authors
26
+
24
27
  # The component that the BOM describes.
25
28
  attr_accessor :component
26
29
 
30
+ # The timestamp of the SBOM creation.
31
+ attr_accessor :timestamp
32
+
27
33
  attr_accessor :additional_properties
28
34
 
29
35
  # Attribute mapping from ruby-style variable name to JSON key.
30
36
  # @!visibility private
31
37
  def self.attribute_map
32
38
  {
33
- :'component' => :'component'
39
+ :'authors' => :'authors',
40
+ :'component' => :'component',
41
+ :'timestamp' => :'timestamp'
34
42
  }
35
43
  end
36
44
 
@@ -38,7 +46,9 @@ module DatadogAPIClient::V2
38
46
  # @!visibility private
39
47
  def self.openapi_types
40
48
  {
41
- :'component' => :'SBOMMetadataComponent'
49
+ :'authors' => :'Array<SBOMMetadataAuthor>',
50
+ :'component' => :'SBOMMetadataComponent',
51
+ :'timestamp' => :'String'
42
52
  }
43
53
  end
44
54
 
@@ -60,9 +70,19 @@ module DatadogAPIClient::V2
60
70
  end
61
71
  }
62
72
 
73
+ if attributes.key?(:'authors')
74
+ if (value = attributes[:'authors']).is_a?(Array)
75
+ self.authors = value
76
+ end
77
+ end
78
+
63
79
  if attributes.key?(:'component')
64
80
  self.component = attributes[:'component']
65
81
  end
82
+
83
+ if attributes.key?(:'timestamp')
84
+ self.timestamp = attributes[:'timestamp']
85
+ end
66
86
  end
67
87
 
68
88
  # Returns the object in the form of hash, with additionalProperties support.
@@ -91,7 +111,9 @@ module DatadogAPIClient::V2
91
111
  def ==(o)
92
112
  return true if self.equal?(o)
93
113
  self.class == o.class &&
114
+ authors == o.authors &&
94
115
  component == o.component &&
116
+ timestamp == o.timestamp &&
95
117
  additional_properties == o.additional_properties
96
118
  end
97
119
 
@@ -99,7 +121,7 @@ module DatadogAPIClient::V2
99
121
  # @return [Integer] Hash code
100
122
  # @!visibility private
101
123
  def hash
102
- [component, additional_properties].hash
124
+ [authors, component, timestamp, additional_properties].hash
103
125
  end
104
126
  end
105
127
  end
@@ -0,0 +1,105 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Author of the SBOM.
21
+ class SBOMMetadataAuthor
22
+ include BaseGenericModel
23
+
24
+ # The identifier of the Author of the SBOM.
25
+ attr_accessor :name
26
+
27
+ attr_accessor :additional_properties
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ # @!visibility private
31
+ def self.attribute_map
32
+ {
33
+ :'name' => :'name'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'name' => :'String'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param attributes [Hash] Model attributes in the form of hash
47
+ # @!visibility private
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SBOMMetadataAuthor` initialize method"
51
+ end
52
+
53
+ self.additional_properties = {}
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ self.additional_properties[k.to_sym] = v
58
+ else
59
+ h[k.to_sym] = v
60
+ end
61
+ }
62
+
63
+ if attributes.key?(:'name')
64
+ self.name = attributes[:'name']
65
+ end
66
+ end
67
+
68
+ # Returns the object in the form of hash, with additionalProperties support.
69
+ # @return [Hash] Returns the object in the form of hash
70
+ # @!visibility private
71
+ def to_hash
72
+ hash = {}
73
+ self.class.attribute_map.each_pair do |attr, param|
74
+ value = self.send(attr)
75
+ if value.nil?
76
+ is_nullable = self.class.openapi_nullable.include?(attr)
77
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
78
+ end
79
+
80
+ hash[param] = _to_hash(value)
81
+ end
82
+ self.additional_properties.each_pair do |attr, value|
83
+ hash[attr] = value
84
+ end
85
+ hash
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param o [Object] Object to be compared
90
+ # @!visibility private
91
+ def ==(o)
92
+ return true if self.equal?(o)
93
+ self.class == o.class &&
94
+ name == o.name &&
95
+ additional_properties == o.additional_properties
96
+ end
97
+
98
+ # Calculates hash code according to all attributes.
99
+ # @return [Integer] Hash code
100
+ # @!visibility private
101
+ def hash
102
+ [name, additional_properties].hash
103
+ end
104
+ end
105
+ end
@@ -27,7 +27,7 @@ module DatadogAPIClient::V2
27
27
  # The date/time after which this layer no longer applies (in ISO 8601).
28
28
  attr_accessor :end_date
29
29
 
30
- # Defines how often the rotation repeats, using a combination of days and optional seconds.
30
+ # Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour.
31
31
  attr_reader :interval
32
32
 
33
33
  # A list of members who participate in this layer's rotation.
@@ -31,7 +31,7 @@ module DatadogAPIClient::V2
31
31
  # A unique identifier for the layer being updated.
32
32
  attr_accessor :id
33
33
 
34
- # Defines how often the rotation repeats, using a combination of days and optional seconds.
34
+ # Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour.
35
35
  attr_reader :interval
36
36
 
37
37
  # The members assigned to this layer.
@@ -24,6 +24,9 @@ module DatadogAPIClient::V2
24
24
  # Duration of the action in seconds. 0 indicates no expiration.
25
25
  attr_reader :duration
26
26
 
27
+ # Used with the case action of type 'flag_ip'. The value specified in this field is applied as a flag to the IP addresses.
28
+ attr_accessor :flagged_ip_type
29
+
27
30
  # Used with the case action of type 'user_behavior'. The value specified in this field is applied as a risk tag to all users affected by the rule.
28
31
  attr_accessor :user_behavior_name
29
32
 
@@ -34,6 +37,7 @@ module DatadogAPIClient::V2
34
37
  def self.attribute_map
35
38
  {
36
39
  :'duration' => :'duration',
40
+ :'flagged_ip_type' => :'flaggedIPType',
37
41
  :'user_behavior_name' => :'userBehaviorName'
38
42
  }
39
43
  end
@@ -43,6 +47,7 @@ module DatadogAPIClient::V2
43
47
  def self.openapi_types
44
48
  {
45
49
  :'duration' => :'Integer',
50
+ :'flagged_ip_type' => :'SecurityMonitoringRuleCaseActionOptionsFlaggedIPType',
46
51
  :'user_behavior_name' => :'String'
47
52
  }
48
53
  end
@@ -69,6 +74,10 @@ module DatadogAPIClient::V2
69
74
  self.duration = attributes[:'duration']
70
75
  end
71
76
 
77
+ if attributes.key?(:'flagged_ip_type')
78
+ self.flagged_ip_type = attributes[:'flagged_ip_type']
79
+ end
80
+
72
81
  if attributes.key?(:'user_behavior_name')
73
82
  self.user_behavior_name = attributes[:'user_behavior_name']
74
83
  end
@@ -119,6 +128,7 @@ module DatadogAPIClient::V2
119
128
  return true if self.equal?(o)
120
129
  self.class == o.class &&
121
130
  duration == o.duration &&
131
+ flagged_ip_type == o.flagged_ip_type &&
122
132
  user_behavior_name == o.user_behavior_name &&
123
133
  additional_properties == o.additional_properties
124
134
  end
@@ -127,7 +137,7 @@ module DatadogAPIClient::V2
127
137
  # @return [Integer] Hash code
128
138
  # @!visibility private
129
139
  def hash
130
- [duration, user_behavior_name, additional_properties].hash
140
+ [duration, flagged_ip_type, user_behavior_name, additional_properties].hash
131
141
  end
132
142
  end
133
143
  end
@@ -0,0 +1,27 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Used with the case action of type 'flag_ip'. The value specified in this field is applied as a flag to the IP addresses.
21
+ class SecurityMonitoringRuleCaseActionOptionsFlaggedIPType
22
+ include BaseEnumModel
23
+
24
+ SUSPICIOUS = "SUSPICIOUS".freeze
25
+ FLAGGED = "FLAGGED".freeze
26
+ end
27
+ end
@@ -24,5 +24,6 @@ module DatadogAPIClient::V2
24
24
  BLOCK_IP = "block_ip".freeze
25
25
  BLOCK_USER = "block_user".freeze
26
26
  USER_BEHAVIOR = "user_behavior".freeze
27
+ FLAG_IP = "flag_ip".freeze
27
28
  end
28
29
  end
@@ -21,6 +21,9 @@ module DatadogAPIClient::V2
21
21
  class SecurityMonitoringRuleUpdatePayload
22
22
  include BaseGenericModel
23
23
 
24
+ # Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined.
25
+ attr_accessor :calculated_fields
26
+
24
27
  # Cases for generating signals.
25
28
  attr_accessor :cases
26
29
 
@@ -60,6 +63,9 @@ module DatadogAPIClient::V2
60
63
  # Reference tables for the rule.
61
64
  attr_accessor :reference_tables
62
65
 
66
+ # Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs.
67
+ attr_accessor :scheduling_options
68
+
63
69
  # Tags for generated signals.
64
70
  attr_accessor :tags
65
71
 
@@ -75,6 +81,7 @@ module DatadogAPIClient::V2
75
81
  # @!visibility private
76
82
  def self.attribute_map
77
83
  {
84
+ :'calculated_fields' => :'calculatedFields',
78
85
  :'cases' => :'cases',
79
86
  :'compliance_signal_options' => :'complianceSignalOptions',
80
87
  :'custom_message' => :'customMessage',
@@ -88,6 +95,7 @@ module DatadogAPIClient::V2
88
95
  :'options' => :'options',
89
96
  :'queries' => :'queries',
90
97
  :'reference_tables' => :'referenceTables',
98
+ :'scheduling_options' => :'schedulingOptions',
91
99
  :'tags' => :'tags',
92
100
  :'third_party_cases' => :'thirdPartyCases',
93
101
  :'version' => :'version'
@@ -98,6 +106,7 @@ module DatadogAPIClient::V2
98
106
  # @!visibility private
99
107
  def self.openapi_types
100
108
  {
109
+ :'calculated_fields' => :'Array<CalculatedField>',
101
110
  :'cases' => :'Array<SecurityMonitoringRuleCase>',
102
111
  :'compliance_signal_options' => :'CloudConfigurationRuleComplianceSignalOptions',
103
112
  :'custom_message' => :'String',
@@ -111,12 +120,21 @@ module DatadogAPIClient::V2
111
120
  :'options' => :'SecurityMonitoringRuleOptions',
112
121
  :'queries' => :'Array<SecurityMonitoringRuleQuery>',
113
122
  :'reference_tables' => :'Array<SecurityMonitoringReferenceTable>',
123
+ :'scheduling_options' => :'SecurityMonitoringSchedulingOptions',
114
124
  :'tags' => :'Array<String>',
115
125
  :'third_party_cases' => :'Array<SecurityMonitoringThirdPartyRuleCase>',
116
126
  :'version' => :'Integer'
117
127
  }
118
128
  end
119
129
 
130
+ # List of attributes with nullable: true
131
+ # @!visibility private
132
+ def self.openapi_nullable
133
+ Set.new([
134
+ :'scheduling_options',
135
+ ])
136
+ end
137
+
120
138
  # Initializes the object
121
139
  # @param attributes [Hash] Model attributes in the form of hash
122
140
  # @!visibility private
@@ -135,6 +153,12 @@ module DatadogAPIClient::V2
135
153
  end
136
154
  }
137
155
 
156
+ if attributes.key?(:'calculated_fields')
157
+ if (value = attributes[:'calculated_fields']).is_a?(Array)
158
+ self.calculated_fields = value
159
+ end
160
+ end
161
+
138
162
  if attributes.key?(:'cases')
139
163
  if (value = attributes[:'cases']).is_a?(Array)
140
164
  self.cases = value
@@ -197,6 +221,10 @@ module DatadogAPIClient::V2
197
221
  end
198
222
  end
199
223
 
224
+ if attributes.key?(:'scheduling_options')
225
+ self.scheduling_options = attributes[:'scheduling_options']
226
+ end
227
+
200
228
  if attributes.key?(:'tags')
201
229
  if (value = attributes[:'tags']).is_a?(Array)
202
230
  self.tags = value
@@ -258,6 +286,7 @@ module DatadogAPIClient::V2
258
286
  def ==(o)
259
287
  return true if self.equal?(o)
260
288
  self.class == o.class &&
289
+ calculated_fields == o.calculated_fields &&
261
290
  cases == o.cases &&
262
291
  compliance_signal_options == o.compliance_signal_options &&
263
292
  custom_message == o.custom_message &&
@@ -271,6 +300,7 @@ module DatadogAPIClient::V2
271
300
  options == o.options &&
272
301
  queries == o.queries &&
273
302
  reference_tables == o.reference_tables &&
303
+ scheduling_options == o.scheduling_options &&
274
304
  tags == o.tags &&
275
305
  third_party_cases == o.third_party_cases &&
276
306
  version == o.version &&
@@ -281,7 +311,7 @@ module DatadogAPIClient::V2
281
311
  # @return [Integer] Hash code
282
312
  # @!visibility private
283
313
  def hash
284
- [cases, compliance_signal_options, custom_message, custom_name, filters, group_signals_by, has_extended_title, is_enabled, message, name, options, queries, reference_tables, tags, third_party_cases, version, additional_properties].hash
314
+ [calculated_fields, cases, compliance_signal_options, custom_message, custom_name, filters, group_signals_by, has_extended_title, is_enabled, message, name, options, queries, reference_tables, scheduling_options, tags, third_party_cases, version, additional_properties].hash
285
315
  end
286
316
  end
287
317
  end
@@ -0,0 +1,125 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs.
21
+ class SecurityMonitoringSchedulingOptions
22
+ include BaseGenericModel
23
+
24
+ # Schedule for the rule queries, written in RRULE syntax. See [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) for syntax reference.
25
+ attr_accessor :rrule
26
+
27
+ # Start date for the schedule, in ISO 8601 format without timezone.
28
+ attr_accessor :start
29
+
30
+ # Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) format.
31
+ attr_accessor :timezone
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'rrule' => :'rrule',
40
+ :'start' => :'start',
41
+ :'timezone' => :'timezone'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'rrule' => :'String',
50
+ :'start' => :'String',
51
+ :'timezone' => :'String'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSchedulingOptions` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'rrule')
74
+ self.rrule = attributes[:'rrule']
75
+ end
76
+
77
+ if attributes.key?(:'start')
78
+ self.start = attributes[:'start']
79
+ end
80
+
81
+ if attributes.key?(:'timezone')
82
+ self.timezone = attributes[:'timezone']
83
+ end
84
+ end
85
+
86
+ # Returns the object in the form of hash, with additionalProperties support.
87
+ # @return [Hash] Returns the object in the form of hash
88
+ # @!visibility private
89
+ def to_hash
90
+ hash = {}
91
+ self.class.attribute_map.each_pair do |attr, param|
92
+ value = self.send(attr)
93
+ if value.nil?
94
+ is_nullable = self.class.openapi_nullable.include?(attr)
95
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
96
+ end
97
+
98
+ hash[param] = _to_hash(value)
99
+ end
100
+ self.additional_properties.each_pair do |attr, value|
101
+ hash[attr] = value
102
+ end
103
+ hash
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param o [Object] Object to be compared
108
+ # @!visibility private
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ rrule == o.rrule &&
113
+ start == o.start &&
114
+ timezone == o.timezone &&
115
+ additional_properties == o.additional_properties
116
+ end
117
+
118
+ # Calculates hash code according to all attributes.
119
+ # @return [Integer] Hash code
120
+ # @!visibility private
121
+ def hash
122
+ [rrule, start, timezone, additional_properties].hash
123
+ end
124
+ end
125
+ end
@@ -21,6 +21,9 @@ module DatadogAPIClient::V2
21
21
  class SecurityMonitoringStandardRuleCreatePayload
22
22
  include BaseGenericModel
23
23
 
24
+ # Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined.
25
+ attr_accessor :calculated_fields
26
+
24
27
  # Cases for generating signals.
25
28
  attr_reader :cases
26
29
 
@@ -51,6 +54,9 @@ module DatadogAPIClient::V2
51
54
  # Reference tables for the rule.
52
55
  attr_accessor :reference_tables
53
56
 
57
+ # Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs.
58
+ attr_accessor :scheduling_options
59
+
54
60
  # Tags for generated signals.
55
61
  attr_accessor :tags
56
62
 
@@ -66,6 +72,7 @@ module DatadogAPIClient::V2
66
72
  # @!visibility private
67
73
  def self.attribute_map
68
74
  {
75
+ :'calculated_fields' => :'calculatedFields',
69
76
  :'cases' => :'cases',
70
77
  :'filters' => :'filters',
71
78
  :'group_signals_by' => :'groupSignalsBy',
@@ -76,6 +83,7 @@ module DatadogAPIClient::V2
76
83
  :'options' => :'options',
77
84
  :'queries' => :'queries',
78
85
  :'reference_tables' => :'referenceTables',
86
+ :'scheduling_options' => :'schedulingOptions',
79
87
  :'tags' => :'tags',
80
88
  :'third_party_cases' => :'thirdPartyCases',
81
89
  :'type' => :'type'
@@ -86,6 +94,7 @@ module DatadogAPIClient::V2
86
94
  # @!visibility private
87
95
  def self.openapi_types
88
96
  {
97
+ :'calculated_fields' => :'Array<CalculatedField>',
89
98
  :'cases' => :'Array<SecurityMonitoringRuleCaseCreate>',
90
99
  :'filters' => :'Array<SecurityMonitoringFilter>',
91
100
  :'group_signals_by' => :'Array<String>',
@@ -96,12 +105,21 @@ module DatadogAPIClient::V2
96
105
  :'options' => :'SecurityMonitoringRuleOptions',
97
106
  :'queries' => :'Array<SecurityMonitoringStandardRuleQuery>',
98
107
  :'reference_tables' => :'Array<SecurityMonitoringReferenceTable>',
108
+ :'scheduling_options' => :'SecurityMonitoringSchedulingOptions',
99
109
  :'tags' => :'Array<String>',
100
110
  :'third_party_cases' => :'Array<SecurityMonitoringThirdPartyRuleCaseCreate>',
101
111
  :'type' => :'SecurityMonitoringRuleTypeCreate'
102
112
  }
103
113
  end
104
114
 
115
+ # List of attributes with nullable: true
116
+ # @!visibility private
117
+ def self.openapi_nullable
118
+ Set.new([
119
+ :'scheduling_options',
120
+ ])
121
+ end
122
+
105
123
  # Initializes the object
106
124
  # @param attributes [Hash] Model attributes in the form of hash
107
125
  # @!visibility private
@@ -120,6 +138,12 @@ module DatadogAPIClient::V2
120
138
  end
121
139
  }
122
140
 
141
+ if attributes.key?(:'calculated_fields')
142
+ if (value = attributes[:'calculated_fields']).is_a?(Array)
143
+ self.calculated_fields = value
144
+ end
145
+ end
146
+
123
147
  if attributes.key?(:'cases')
124
148
  if (value = attributes[:'cases']).is_a?(Array)
125
149
  self.cases = value
@@ -170,6 +194,10 @@ module DatadogAPIClient::V2
170
194
  end
171
195
  end
172
196
 
197
+ if attributes.key?(:'scheduling_options')
198
+ self.scheduling_options = attributes[:'scheduling_options']
199
+ end
200
+
173
201
  if attributes.key?(:'tags')
174
202
  if (value = attributes[:'tags']).is_a?(Array)
175
203
  self.tags = value
@@ -286,6 +314,7 @@ module DatadogAPIClient::V2
286
314
  def ==(o)
287
315
  return true if self.equal?(o)
288
316
  self.class == o.class &&
317
+ calculated_fields == o.calculated_fields &&
289
318
  cases == o.cases &&
290
319
  filters == o.filters &&
291
320
  group_signals_by == o.group_signals_by &&
@@ -296,6 +325,7 @@ module DatadogAPIClient::V2
296
325
  options == o.options &&
297
326
  queries == o.queries &&
298
327
  reference_tables == o.reference_tables &&
328
+ scheduling_options == o.scheduling_options &&
299
329
  tags == o.tags &&
300
330
  third_party_cases == o.third_party_cases &&
301
331
  type == o.type &&
@@ -306,7 +336,7 @@ module DatadogAPIClient::V2
306
336
  # @return [Integer] Hash code
307
337
  # @!visibility private
308
338
  def hash
309
- [cases, filters, group_signals_by, has_extended_title, is_enabled, message, name, options, queries, reference_tables, tags, third_party_cases, type, additional_properties].hash
339
+ [calculated_fields, cases, filters, group_signals_by, has_extended_title, is_enabled, message, name, options, queries, reference_tables, scheduling_options, tags, third_party_cases, type, additional_properties].hash
310
340
  end
311
341
  end
312
342
  end