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
@@ -0,0 +1,169 @@
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
+ # Dataset metadata and configurations.
21
+ class DatasetAttributesRequest
22
+ include BaseGenericModel
23
+
24
+ # Name of the dataset.
25
+ attr_reader :name
26
+
27
+ # List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'.
28
+ attr_reader :principals
29
+
30
+ # List of product-specific filters.
31
+ attr_reader :product_filters
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
+ :'name' => :'name',
40
+ :'principals' => :'principals',
41
+ :'product_filters' => :'product_filters'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'name' => :'String',
50
+ :'principals' => :'Array<String>',
51
+ :'product_filters' => :'Array<FiltersPerProduct>'
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::DatasetAttributesRequest` 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?(:'name')
74
+ self.name = attributes[:'name']
75
+ end
76
+
77
+ if attributes.key?(:'principals')
78
+ if (value = attributes[:'principals']).is_a?(Array)
79
+ self.principals = value
80
+ end
81
+ end
82
+
83
+ if attributes.key?(:'product_filters')
84
+ if (value = attributes[:'product_filters']).is_a?(Array)
85
+ self.product_filters = value
86
+ end
87
+ end
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ # @!visibility private
93
+ def valid?
94
+ return false if @name.nil?
95
+ return false if @principals.nil?
96
+ return false if @product_filters.nil?
97
+ true
98
+ end
99
+
100
+ # Custom attribute writer method with validation
101
+ # @param name [Object] Object to be assigned
102
+ # @!visibility private
103
+ def name=(name)
104
+ if name.nil?
105
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
106
+ end
107
+ @name = name
108
+ end
109
+
110
+ # Custom attribute writer method with validation
111
+ # @param principals [Object] Object to be assigned
112
+ # @!visibility private
113
+ def principals=(principals)
114
+ if principals.nil?
115
+ fail ArgumentError, 'invalid value for "principals", principals cannot be nil.'
116
+ end
117
+ @principals = principals
118
+ end
119
+
120
+ # Custom attribute writer method with validation
121
+ # @param product_filters [Object] Object to be assigned
122
+ # @!visibility private
123
+ def product_filters=(product_filters)
124
+ if product_filters.nil?
125
+ fail ArgumentError, 'invalid value for "product_filters", product_filters cannot be nil.'
126
+ end
127
+ @product_filters = product_filters
128
+ end
129
+
130
+ # Returns the object in the form of hash, with additionalProperties support.
131
+ # @return [Hash] Returns the object in the form of hash
132
+ # @!visibility private
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ if value.nil?
138
+ is_nullable = self.class.openapi_nullable.include?(attr)
139
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
140
+ end
141
+
142
+ hash[param] = _to_hash(value)
143
+ end
144
+ self.additional_properties.each_pair do |attr, value|
145
+ hash[attr] = value
146
+ end
147
+ hash
148
+ end
149
+
150
+ # Checks equality by comparing each attribute.
151
+ # @param o [Object] Object to be compared
152
+ # @!visibility private
153
+ def ==(o)
154
+ return true if self.equal?(o)
155
+ self.class == o.class &&
156
+ name == o.name &&
157
+ principals == o.principals &&
158
+ product_filters == o.product_filters &&
159
+ additional_properties == o.additional_properties
160
+ end
161
+
162
+ # Calculates hash code according to all attributes.
163
+ # @return [Integer] Hash code
164
+ # @!visibility private
165
+ def hash
166
+ [name, principals, product_filters, additional_properties].hash
167
+ end
168
+ end
169
+ end
@@ -0,0 +1,157 @@
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
+ # Dataset metadata and configuration(s).
21
+ class DatasetAttributesResponse
22
+ include BaseGenericModel
23
+
24
+ # Timestamp when the dataset was created.
25
+ attr_accessor :created_at
26
+
27
+ # Unique ID of the user who created the dataset.
28
+ attr_accessor :created_by
29
+
30
+ # Name of the dataset.
31
+ attr_accessor :name
32
+
33
+ # List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'.
34
+ attr_accessor :principals
35
+
36
+ # List of product-specific filters.
37
+ attr_accessor :product_filters
38
+
39
+ attr_accessor :additional_properties
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ # @!visibility private
43
+ def self.attribute_map
44
+ {
45
+ :'created_at' => :'created_at',
46
+ :'created_by' => :'created_by',
47
+ :'name' => :'name',
48
+ :'principals' => :'principals',
49
+ :'product_filters' => :'product_filters'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ # @!visibility private
55
+ def self.openapi_types
56
+ {
57
+ :'created_at' => :'Time',
58
+ :'created_by' => :'UUID',
59
+ :'name' => :'String',
60
+ :'principals' => :'Array<String>',
61
+ :'product_filters' => :'Array<FiltersPerProduct>'
62
+ }
63
+ end
64
+
65
+ # List of attributes with nullable: true
66
+ # @!visibility private
67
+ def self.openapi_nullable
68
+ Set.new([
69
+ :'created_at',
70
+ ])
71
+ end
72
+
73
+ # Initializes the object
74
+ # @param attributes [Hash] Model attributes in the form of hash
75
+ # @!visibility private
76
+ def initialize(attributes = {})
77
+ if (!attributes.is_a?(Hash))
78
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::DatasetAttributesResponse` initialize method"
79
+ end
80
+
81
+ self.additional_properties = {}
82
+ # check to see if the attribute exists and convert string to symbol for hash key
83
+ attributes = attributes.each_with_object({}) { |(k, v), h|
84
+ if (!self.class.attribute_map.key?(k.to_sym))
85
+ self.additional_properties[k.to_sym] = v
86
+ else
87
+ h[k.to_sym] = v
88
+ end
89
+ }
90
+
91
+ if attributes.key?(:'created_at')
92
+ self.created_at = attributes[:'created_at']
93
+ end
94
+
95
+ if attributes.key?(:'created_by')
96
+ self.created_by = attributes[:'created_by']
97
+ end
98
+
99
+ if attributes.key?(:'name')
100
+ self.name = attributes[:'name']
101
+ end
102
+
103
+ if attributes.key?(:'principals')
104
+ if (value = attributes[:'principals']).is_a?(Array)
105
+ self.principals = value
106
+ end
107
+ end
108
+
109
+ if attributes.key?(:'product_filters')
110
+ if (value = attributes[:'product_filters']).is_a?(Array)
111
+ self.product_filters = value
112
+ end
113
+ end
114
+ end
115
+
116
+ # Returns the object in the form of hash, with additionalProperties support.
117
+ # @return [Hash] Returns the object in the form of hash
118
+ # @!visibility private
119
+ def to_hash
120
+ hash = {}
121
+ self.class.attribute_map.each_pair do |attr, param|
122
+ value = self.send(attr)
123
+ if value.nil?
124
+ is_nullable = self.class.openapi_nullable.include?(attr)
125
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
126
+ end
127
+
128
+ hash[param] = _to_hash(value)
129
+ end
130
+ self.additional_properties.each_pair do |attr, value|
131
+ hash[attr] = value
132
+ end
133
+ hash
134
+ end
135
+
136
+ # Checks equality by comparing each attribute.
137
+ # @param o [Object] Object to be compared
138
+ # @!visibility private
139
+ def ==(o)
140
+ return true if self.equal?(o)
141
+ self.class == o.class &&
142
+ created_at == o.created_at &&
143
+ created_by == o.created_by &&
144
+ name == o.name &&
145
+ principals == o.principals &&
146
+ product_filters == o.product_filters &&
147
+ additional_properties == o.additional_properties
148
+ end
149
+
150
+ # Calculates hash code according to all attributes.
151
+ # @return [Integer] Hash code
152
+ # @!visibility private
153
+ def hash
154
+ [created_at, created_by, name, principals, product_filters, additional_properties].hash
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,133 @@
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
+ # Create request for a dataset.
21
+ class DatasetCreateRequest
22
+ include BaseGenericModel
23
+
24
+ # **Datasets Object Constraints**
25
+ # - **Tag limit per dataset**:
26
+ # - Each restricted dataset supports a maximum of 10 key:value pairs per product.
27
+ #
28
+ # - **Tag key rules per telemetry type**:
29
+ # - Only one tag key or attribute may be used to define access within a single telemetry type.
30
+ # - The same or different tag key may be used across different telemetry types.
31
+ #
32
+ # - **Tag value uniqueness**:
33
+ # - Tag values must be unique within a single dataset.
34
+ # - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
35
+ attr_reader :data
36
+
37
+ attr_accessor :additional_properties
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ # @!visibility private
41
+ def self.attribute_map
42
+ {
43
+ :'data' => :'data'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ # @!visibility private
49
+ def self.openapi_types
50
+ {
51
+ :'data' => :'DatasetRequest'
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::DatasetCreateRequest` 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?(:'data')
74
+ self.data = attributes[:'data']
75
+ end
76
+ end
77
+
78
+ # Check to see if the all the properties in the model are valid
79
+ # @return true if the model is valid
80
+ # @!visibility private
81
+ def valid?
82
+ return false if @data.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param data [Object] Object to be assigned
88
+ # @!visibility private
89
+ def data=(data)
90
+ if data.nil?
91
+ fail ArgumentError, 'invalid value for "data", data cannot be nil.'
92
+ end
93
+ @data = data
94
+ end
95
+
96
+ # Returns the object in the form of hash, with additionalProperties support.
97
+ # @return [Hash] Returns the object in the form of hash
98
+ # @!visibility private
99
+ def to_hash
100
+ hash = {}
101
+ self.class.attribute_map.each_pair do |attr, param|
102
+ value = self.send(attr)
103
+ if value.nil?
104
+ is_nullable = self.class.openapi_nullable.include?(attr)
105
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
106
+ end
107
+
108
+ hash[param] = _to_hash(value)
109
+ end
110
+ self.additional_properties.each_pair do |attr, value|
111
+ hash[attr] = value
112
+ end
113
+ hash
114
+ end
115
+
116
+ # Checks equality by comparing each attribute.
117
+ # @param o [Object] Object to be compared
118
+ # @!visibility private
119
+ def ==(o)
120
+ return true if self.equal?(o)
121
+ self.class == o.class &&
122
+ data == o.data &&
123
+ additional_properties == o.additional_properties
124
+ end
125
+
126
+ # Calculates hash code according to all attributes.
127
+ # @return [Integer] Hash code
128
+ # @!visibility private
129
+ def hash
130
+ [data, additional_properties].hash
131
+ end
132
+ end
133
+ end
@@ -0,0 +1,154 @@
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
+ # **Datasets Object Constraints**
21
+ # - **Tag limit per dataset**:
22
+ # - Each restricted dataset supports a maximum of 10 key:value pairs per product.
23
+ #
24
+ # - **Tag key rules per telemetry type**:
25
+ # - Only one tag key or attribute may be used to define access within a single telemetry type.
26
+ # - The same or different tag key may be used across different telemetry types.
27
+ #
28
+ # - **Tag value uniqueness**:
29
+ # - Tag values must be unique within a single dataset.
30
+ # - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type.
31
+ class DatasetRequest
32
+ include BaseGenericModel
33
+
34
+ # Dataset metadata and configurations.
35
+ attr_reader :attributes
36
+
37
+ # Resource type, always "dataset".
38
+ attr_reader :type
39
+
40
+ attr_accessor :additional_properties
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ # @!visibility private
44
+ def self.attribute_map
45
+ {
46
+ :'attributes' => :'attributes',
47
+ :'type' => :'type'
48
+ }
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ # @!visibility private
53
+ def self.openapi_types
54
+ {
55
+ :'attributes' => :'DatasetAttributesRequest',
56
+ :'type' => :'String'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param attributes [Hash] Model attributes in the form of hash
62
+ # @!visibility private
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::DatasetRequest` initialize method"
66
+ end
67
+
68
+ self.additional_properties = {}
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ self.additional_properties[k.to_sym] = v
73
+ else
74
+ h[k.to_sym] = v
75
+ end
76
+ }
77
+
78
+ if attributes.key?(:'attributes')
79
+ self.attributes = attributes[:'attributes']
80
+ end
81
+
82
+ if attributes.key?(:'type')
83
+ self.type = attributes[:'type']
84
+ end
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ # @!visibility private
90
+ def valid?
91
+ return false if @attributes.nil?
92
+ return false if @type.nil?
93
+ true
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param attributes [Object] Object to be assigned
98
+ # @!visibility private
99
+ def attributes=(attributes)
100
+ if attributes.nil?
101
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
102
+ end
103
+ @attributes = attributes
104
+ end
105
+
106
+ # Custom attribute writer method with validation
107
+ # @param type [Object] Object to be assigned
108
+ # @!visibility private
109
+ def type=(type)
110
+ if type.nil?
111
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
112
+ end
113
+ @type = type
114
+ end
115
+
116
+ # Returns the object in the form of hash, with additionalProperties support.
117
+ # @return [Hash] Returns the object in the form of hash
118
+ # @!visibility private
119
+ def to_hash
120
+ hash = {}
121
+ self.class.attribute_map.each_pair do |attr, param|
122
+ value = self.send(attr)
123
+ if value.nil?
124
+ is_nullable = self.class.openapi_nullable.include?(attr)
125
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
126
+ end
127
+
128
+ hash[param] = _to_hash(value)
129
+ end
130
+ self.additional_properties.each_pair do |attr, value|
131
+ hash[attr] = value
132
+ end
133
+ hash
134
+ end
135
+
136
+ # Checks equality by comparing each attribute.
137
+ # @param o [Object] Object to be compared
138
+ # @!visibility private
139
+ def ==(o)
140
+ return true if self.equal?(o)
141
+ self.class == o.class &&
142
+ attributes == o.attributes &&
143
+ type == o.type &&
144
+ additional_properties == o.additional_properties
145
+ end
146
+
147
+ # Calculates hash code according to all attributes.
148
+ # @return [Integer] Hash code
149
+ # @!visibility private
150
+ def hash
151
+ [attributes, type, additional_properties].hash
152
+ end
153
+ end
154
+ end