datadog_api_client 2.39.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 (309) hide show
  1. checksums.yaml +4 -4
  2. data/.generated-info +2 -2
  3. data/.generator/schemas/v1/openapi.yaml +208 -30
  4. data/.generator/schemas/v2/openapi.yaml +2921 -243
  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/CHANGELOG.md +26 -0
  9. data/Gemfile +1 -0
  10. data/examples/v1/logs-pipelines/CreateLogsPipeline_3336967838.rb +24 -0
  11. data/examples/v1/synthetics/CreateSyntheticsAPITest_1072503741.rb +1 -0
  12. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +1 -0
  13. data/examples/v1/synthetics/SearchTests_195957771.rb +1 -0
  14. data/examples/v2/aws-integration/CreateAWSAccount.rb +10 -0
  15. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +10 -0
  16. data/examples/v2/aws-integration/UpdateAWSAccount.rb +10 -0
  17. data/examples/v2/case-management/UpdateAttributes.rb +26 -0
  18. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections.rb +0 -3
  19. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections_3059356111.rb +0 -3
  20. data/examples/v2/cloud-network-monitoring/GetAggregatedDns.rb +5 -0
  21. data/examples/v2/datasets/CreateDataset.rb +7 -6
  22. data/examples/v2/datasets/DeleteDataset.rb +7 -1
  23. data/examples/v2/datasets/GetAllDatasets.rb +3 -0
  24. data/examples/v2/datasets/GetDataset.rb +7 -1
  25. data/examples/v2/datasets/UpdateDataset.rb +31 -0
  26. data/examples/v2/events/GetEvent.rb +5 -0
  27. data/examples/v2/metrics/GetMetricTagCardinalityDetails.rb +5 -0
  28. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1965169892.rb +6 -0
  29. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_868881438.rb +41 -0
  30. data/lib/datadog_api_client/configuration.rb +9 -1
  31. data/lib/datadog_api_client/inflector.rb +225 -2
  32. data/lib/datadog_api_client/v1/api/logs_api.rb +1 -1
  33. data/lib/datadog_api_client/v1/api/logs_indexes_api.rb +1 -1
  34. data/lib/datadog_api_client/v1/api/security_monitoring_api.rb +8 -2
  35. data/lib/datadog_api_client/v1/api/synthetics_api.rb +3 -1
  36. data/lib/datadog_api_client/v1/models/logs_decoder_processor.rb +229 -0
  37. data/lib/datadog_api_client/v1/models/logs_decoder_processor_binary_to_text_encoding.rb +27 -0
  38. data/lib/datadog_api_client/v1/models/logs_decoder_processor_input_representation.rb +27 -0
  39. data/lib/datadog_api_client/v1/models/logs_decoder_processor_type.rb +26 -0
  40. data/lib/datadog_api_client/v1/models/logs_processor.rb +2 -1
  41. data/lib/datadog_api_client/v1/models/synthetics_test_options.rb +13 -3
  42. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +11 -1
  43. data/lib/datadog_api_client/v1/models/usage_billable_summary_body.rb +21 -1
  44. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +41 -1
  45. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +41 -1
  46. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +41 -1
  47. data/lib/datadog_api_client/v2/api/case_management_api.rb +72 -0
  48. data/lib/datadog_api_client/v2/api/cloud_network_monitoring_api.rb +80 -10
  49. data/lib/datadog_api_client/v2/api/datasets_api.rb +102 -0
  50. data/lib/datadog_api_client/v2/api/events_api.rb +65 -2
  51. data/lib/datadog_api_client/v2/api/metrics_api.rb +65 -0
  52. data/lib/datadog_api_client/v2/api/monitors_api.rb +8 -8
  53. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +9 -5
  54. data/lib/datadog_api_client/v2/api/rum_api.rb +3 -3
  55. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +17 -14
  56. data/lib/datadog_api_client/v2/models/action_connection_integration.rb +23 -1
  57. data/lib/datadog_api_client/v2/models/action_connection_integration_update.rb +23 -1
  58. data/lib/datadog_api_client/v2/models/alert_event_attributes.rb +187 -0
  59. data/lib/datadog_api_client/v2/models/alert_event_attributes_links_item.rb +125 -0
  60. data/lib/datadog_api_client/v2/models/alert_event_attributes_links_item_category.rb +28 -0
  61. data/lib/datadog_api_client/v2/models/alert_event_attributes_priority.rb +30 -0
  62. data/lib/datadog_api_client/v2/models/alert_event_attributes_status.rb +28 -0
  63. data/lib/datadog_api_client/v2/models/anthropic_api_key.rb +144 -0
  64. data/lib/datadog_api_client/v2/models/anthropic_api_key_type.rb +26 -0
  65. data/lib/datadog_api_client/v2/models/anthropic_api_key_update.rb +133 -0
  66. data/lib/datadog_api_client/v2/models/anthropic_credentials.rb +62 -0
  67. data/lib/datadog_api_client/v2/models/anthropic_credentials_update.rb +62 -0
  68. data/lib/datadog_api_client/v2/models/anthropic_integration.rb +144 -0
  69. data/lib/datadog_api_client/v2/models/anthropic_integration_type.rb +26 -0
  70. data/lib/datadog_api_client/v2/models/anthropic_integration_update.rb +133 -0
  71. data/lib/datadog_api_client/v2/models/asana_access_token.rb +144 -0
  72. data/lib/datadog_api_client/v2/models/asana_access_token_type.rb +26 -0
  73. data/lib/datadog_api_client/v2/models/asana_access_token_update.rb +133 -0
  74. data/lib/datadog_api_client/v2/models/asana_credentials.rb +62 -0
  75. data/lib/datadog_api_client/v2/models/asana_credentials_update.rb +62 -0
  76. data/lib/datadog_api_client/v2/models/asana_integration.rb +144 -0
  77. data/lib/datadog_api_client/v2/models/asana_integration_type.rb +26 -0
  78. data/lib/datadog_api_client/v2/models/asana_integration_update.rb +133 -0
  79. data/lib/datadog_api_client/v2/models/aws_lambda_forwarder_config.rb +11 -1
  80. data/lib/datadog_api_client/v2/models/aws_lambda_forwarder_config_log_source_config.rb +107 -0
  81. data/lib/datadog_api_client/v2/models/aws_log_source_tag_filter.rb +128 -0
  82. data/lib/datadog_api_client/v2/models/azure_credentials.rb +62 -0
  83. data/lib/datadog_api_client/v2/models/azure_credentials_update.rb +62 -0
  84. data/lib/datadog_api_client/v2/models/azure_integration.rb +144 -0
  85. data/lib/datadog_api_client/v2/models/azure_integration_type.rb +26 -0
  86. data/lib/datadog_api_client/v2/models/azure_integration_update.rb +133 -0
  87. data/lib/datadog_api_client/v2/models/azure_tenant.rb +196 -0
  88. data/lib/datadog_api_client/v2/models/azure_tenant_type.rb +26 -0
  89. data/lib/datadog_api_client/v2/models/azure_tenant_update.rb +163 -0
  90. data/lib/datadog_api_client/v2/models/case.rb +1 -1
  91. data/lib/datadog_api_client/v2/models/case_attributes.rb +12 -2
  92. data/lib/datadog_api_client/v2/models/{dataset.rb → case_update_attributes.rb} +8 -18
  93. data/lib/datadog_api_client/v2/models/case_update_attributes_attributes.rb +123 -0
  94. data/lib/datadog_api_client/v2/models/case_update_attributes_request.rb +123 -0
  95. data/lib/datadog_api_client/v2/models/change_event_attributes.rb +207 -0
  96. data/lib/datadog_api_client/v2/models/change_event_attributes_author.rb +115 -0
  97. data/lib/datadog_api_client/v2/models/change_event_attributes_author_type.rb +29 -0
  98. data/lib/datadog_api_client/v2/models/change_event_attributes_changed_resource.rb +115 -0
  99. data/lib/datadog_api_client/v2/models/change_event_attributes_changed_resource_type.rb +27 -0
  100. data/lib/datadog_api_client/v2/models/change_event_attributes_impacted_resources_item.rb +115 -0
  101. data/lib/datadog_api_client/v2/models/change_event_attributes_impacted_resources_item_type.rb +26 -0
  102. data/lib/datadog_api_client/v2/models/circle_ci_credentials.rb +62 -0
  103. data/lib/datadog_api_client/v2/models/circle_ci_credentials_update.rb +62 -0
  104. data/lib/datadog_api_client/v2/models/circle_ci_integration.rb +144 -0
  105. data/lib/datadog_api_client/v2/models/circle_ci_integration_type.rb +26 -0
  106. data/lib/datadog_api_client/v2/models/circle_ci_integration_update.rb +133 -0
  107. data/lib/datadog_api_client/v2/models/circle_ciapi_key.rb +144 -0
  108. data/lib/datadog_api_client/v2/models/circle_ciapi_key_type.rb +26 -0
  109. data/lib/datadog_api_client/v2/models/circle_ciapi_key_update.rb +133 -0
  110. data/lib/datadog_api_client/v2/models/clickup_api_key.rb +144 -0
  111. data/lib/datadog_api_client/v2/models/clickup_api_key_type.rb +26 -0
  112. data/lib/datadog_api_client/v2/models/clickup_api_key_update.rb +133 -0
  113. data/lib/datadog_api_client/v2/models/clickup_credentials.rb +62 -0
  114. data/lib/datadog_api_client/v2/models/clickup_credentials_update.rb +62 -0
  115. data/lib/datadog_api_client/v2/models/clickup_integration.rb +144 -0
  116. data/lib/datadog_api_client/v2/models/clickup_integration_type.rb +26 -0
  117. data/lib/datadog_api_client/v2/models/clickup_integration_update.rb +133 -0
  118. data/lib/datadog_api_client/v2/models/cloudflare_api_token.rb +144 -0
  119. data/lib/datadog_api_client/v2/models/cloudflare_api_token_type.rb +26 -0
  120. data/lib/datadog_api_client/v2/models/cloudflare_api_token_update.rb +133 -0
  121. data/lib/datadog_api_client/v2/models/cloudflare_credentials.rb +63 -0
  122. data/lib/datadog_api_client/v2/models/cloudflare_credentials_update.rb +63 -0
  123. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token.rb +165 -0
  124. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token_type.rb +26 -0
  125. data/lib/datadog_api_client/v2/models/cloudflare_global_api_token_update.rb +143 -0
  126. data/lib/datadog_api_client/v2/models/cloudflare_integration.rb +144 -0
  127. data/lib/datadog_api_client/v2/models/cloudflare_integration_type.rb +26 -0
  128. data/lib/datadog_api_client/v2/models/cloudflare_integration_update.rb +133 -0
  129. data/lib/datadog_api_client/v2/models/config_cat_credentials.rb +62 -0
  130. data/lib/datadog_api_client/v2/models/config_cat_credentials_update.rb +62 -0
  131. data/lib/datadog_api_client/v2/models/config_cat_integration.rb +144 -0
  132. data/lib/datadog_api_client/v2/models/config_cat_integration_type.rb +26 -0
  133. data/lib/datadog_api_client/v2/models/config_cat_integration_update.rb +133 -0
  134. data/lib/datadog_api_client/v2/models/config_cat_sdk_key.rb +186 -0
  135. data/lib/datadog_api_client/v2/models/config_cat_sdk_key_type.rb +26 -0
  136. data/lib/datadog_api_client/v2/models/config_cat_sdk_key_update.rb +153 -0
  137. data/lib/datadog_api_client/v2/models/datadog_api_key.rb +196 -0
  138. data/lib/datadog_api_client/v2/models/datadog_api_key_type.rb +26 -0
  139. data/lib/datadog_api_client/v2/models/datadog_api_key_update.rb +163 -0
  140. data/lib/datadog_api_client/v2/models/datadog_credentials.rb +62 -0
  141. data/lib/datadog_api_client/v2/models/datadog_credentials_update.rb +62 -0
  142. data/lib/datadog_api_client/v2/models/datadog_integration.rb +144 -0
  143. data/lib/datadog_api_client/v2/models/datadog_integration_type.rb +26 -0
  144. data/lib/datadog_api_client/v2/models/datadog_integration_update.rb +133 -0
  145. data/lib/datadog_api_client/v2/models/{dataset_attributes.rb → dataset_attributes_request.rb} +4 -32
  146. data/lib/datadog_api_client/v2/models/dataset_attributes_response.rb +157 -0
  147. data/lib/datadog_api_client/v2/models/dataset_create_request.rb +12 -2
  148. data/lib/datadog_api_client/v2/models/dataset_request.rb +154 -0
  149. data/lib/datadog_api_client/v2/models/dataset_response.rb +135 -0
  150. data/lib/datadog_api_client/v2/models/dataset_response_multi.rb +2 -20
  151. data/lib/datadog_api_client/v2/models/dataset_response_single.rb +13 -21
  152. data/lib/datadog_api_client/v2/models/dataset_update_request.rb +133 -0
  153. data/lib/datadog_api_client/v2/models/dns_metric_key.rb +35 -0
  154. data/lib/datadog_api_client/v2/models/entity_v3_api.rb +1 -1
  155. data/lib/datadog_api_client/v2/models/entity_v3_api_version.rb +4 -1
  156. data/lib/datadog_api_client/v2/models/entity_v3_datastore.rb +1 -1
  157. data/lib/datadog_api_client/v2/models/entity_v3_queue.rb +1 -1
  158. data/lib/datadog_api_client/v2/models/entity_v3_service.rb +1 -1
  159. data/lib/datadog_api_client/v2/models/entity_v3_system.rb +1 -1
  160. data/lib/datadog_api_client/v2/models/event_system_attributes.rb +145 -0
  161. data/lib/datadog_api_client/v2/models/event_system_attributes_category.rb +27 -0
  162. data/lib/datadog_api_client/v2/models/event_system_attributes_integration_id.rb +26 -0
  163. data/lib/datadog_api_client/v2/models/events_data_source.rb +1 -0
  164. data/lib/datadog_api_client/v2/models/fastly_api_key.rb +144 -0
  165. data/lib/datadog_api_client/v2/models/fastly_api_key_type.rb +26 -0
  166. data/lib/datadog_api_client/v2/models/fastly_api_key_update.rb +133 -0
  167. data/lib/datadog_api_client/v2/models/fastly_credentials.rb +62 -0
  168. data/lib/datadog_api_client/v2/models/fastly_credentials_update.rb +62 -0
  169. data/lib/datadog_api_client/v2/models/fastly_integration.rb +144 -0
  170. data/lib/datadog_api_client/v2/models/fastly_integration_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/fastly_integration_update.rb +133 -0
  172. data/lib/datadog_api_client/v2/models/filters_per_product.rb +2 -2
  173. data/lib/datadog_api_client/v2/models/freshservice_api_key.rb +165 -0
  174. data/lib/datadog_api_client/v2/models/freshservice_api_key_type.rb +26 -0
  175. data/lib/datadog_api_client/v2/models/freshservice_api_key_update.rb +143 -0
  176. data/lib/datadog_api_client/v2/models/freshservice_credentials.rb +62 -0
  177. data/lib/datadog_api_client/v2/models/freshservice_credentials_update.rb +62 -0
  178. data/lib/datadog_api_client/v2/models/freshservice_integration.rb +144 -0
  179. data/lib/datadog_api_client/v2/models/freshservice_integration_type.rb +26 -0
  180. data/lib/datadog_api_client/v2/models/freshservice_integration_update.rb +133 -0
  181. data/lib/datadog_api_client/v2/models/gcp_credentials.rb +62 -0
  182. data/lib/datadog_api_client/v2/models/gcp_credentials_update.rb +62 -0
  183. data/lib/datadog_api_client/v2/models/gcp_integration.rb +144 -0
  184. data/lib/datadog_api_client/v2/models/gcp_integration_type.rb +26 -0
  185. data/lib/datadog_api_client/v2/models/gcp_integration_update.rb +133 -0
  186. data/lib/datadog_api_client/v2/models/gcp_service_account.rb +165 -0
  187. data/lib/datadog_api_client/v2/models/gcp_service_account_credential_type.rb +26 -0
  188. data/lib/datadog_api_client/v2/models/gcp_service_account_update.rb +143 -0
  189. data/lib/datadog_api_client/v2/models/gemini_api_key.rb +144 -0
  190. data/lib/datadog_api_client/v2/models/gemini_api_key_type.rb +26 -0
  191. data/lib/datadog_api_client/v2/models/gemini_api_key_update.rb +133 -0
  192. data/lib/datadog_api_client/v2/models/gemini_credentials.rb +62 -0
  193. data/lib/datadog_api_client/v2/models/gemini_credentials_update.rb +62 -0
  194. data/lib/datadog_api_client/v2/models/gemini_integration.rb +144 -0
  195. data/lib/datadog_api_client/v2/models/gemini_integration_type.rb +26 -0
  196. data/lib/datadog_api_client/v2/models/gemini_integration_update.rb +133 -0
  197. data/lib/datadog_api_client/v2/models/gitlab_api_key.rb +144 -0
  198. data/lib/datadog_api_client/v2/models/gitlab_api_key_type.rb +26 -0
  199. data/lib/datadog_api_client/v2/models/gitlab_api_key_update.rb +133 -0
  200. data/lib/datadog_api_client/v2/models/gitlab_credentials.rb +62 -0
  201. data/lib/datadog_api_client/v2/models/gitlab_credentials_update.rb +62 -0
  202. data/lib/datadog_api_client/v2/models/gitlab_integration.rb +144 -0
  203. data/lib/datadog_api_client/v2/models/gitlab_integration_type.rb +26 -0
  204. data/lib/datadog_api_client/v2/models/gitlab_integration_update.rb +133 -0
  205. data/lib/datadog_api_client/v2/models/grey_noise_api_key.rb +144 -0
  206. data/lib/datadog_api_client/v2/models/grey_noise_api_key_type.rb +26 -0
  207. data/lib/datadog_api_client/v2/models/grey_noise_api_key_update.rb +133 -0
  208. data/lib/datadog_api_client/v2/models/grey_noise_credentials.rb +62 -0
  209. data/lib/datadog_api_client/v2/models/grey_noise_credentials_update.rb +62 -0
  210. data/lib/datadog_api_client/v2/models/grey_noise_integration.rb +144 -0
  211. data/lib/datadog_api_client/v2/models/grey_noise_integration_type.rb +26 -0
  212. data/lib/datadog_api_client/v2/models/grey_noise_integration_update.rb +133 -0
  213. data/lib/datadog_api_client/v2/models/launch_darkly_api_key.rb +144 -0
  214. data/lib/datadog_api_client/v2/models/launch_darkly_api_key_type.rb +26 -0
  215. data/lib/datadog_api_client/v2/models/launch_darkly_api_key_update.rb +133 -0
  216. data/lib/datadog_api_client/v2/models/launch_darkly_credentials.rb +62 -0
  217. data/lib/datadog_api_client/v2/models/launch_darkly_credentials_update.rb +62 -0
  218. data/lib/datadog_api_client/v2/models/launch_darkly_integration.rb +144 -0
  219. data/lib/datadog_api_client/v2/models/launch_darkly_integration_type.rb +26 -0
  220. data/lib/datadog_api_client/v2/models/launch_darkly_integration_update.rb +133 -0
  221. data/lib/datadog_api_client/v2/models/metric_asset_attributes.rb +14 -2
  222. data/lib/datadog_api_client/v2/models/metric_dashboard_attributes.rb +13 -1
  223. data/lib/datadog_api_client/v2/models/metric_monitor_asset.rb +1 -1
  224. data/lib/datadog_api_client/v2/models/metric_notebook_asset.rb +1 -1
  225. data/lib/datadog_api_client/v2/models/metric_slo_asset.rb +1 -1
  226. data/lib/datadog_api_client/v2/models/metric_tag_cardinalities_meta.rb +107 -0
  227. data/lib/datadog_api_client/v2/models/metric_tag_cardinalities_response.rb +117 -0
  228. data/lib/datadog_api_client/v2/models/metric_tag_cardinality.rb +125 -0
  229. data/lib/datadog_api_client/v2/models/metric_tag_cardinality_attributes.rb +105 -0
  230. data/lib/datadog_api_client/v2/models/notion_api_key.rb +144 -0
  231. data/lib/datadog_api_client/v2/models/notion_api_key_type.rb +26 -0
  232. data/lib/datadog_api_client/v2/models/notion_api_key_update.rb +133 -0
  233. data/lib/datadog_api_client/v2/models/notion_credentials.rb +62 -0
  234. data/lib/datadog_api_client/v2/models/notion_credentials_update.rb +62 -0
  235. data/lib/datadog_api_client/v2/models/notion_integration.rb +144 -0
  236. data/lib/datadog_api_client/v2/models/notion_integration_type.rb +26 -0
  237. data/lib/datadog_api_client/v2/models/notion_integration_update.rb +133 -0
  238. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule.rb +1 -12
  239. data/lib/datadog_api_client/v2/models/okta_api_token.rb +165 -0
  240. data/lib/datadog_api_client/v2/models/okta_api_token_type.rb +26 -0
  241. data/lib/datadog_api_client/v2/models/okta_api_token_update.rb +143 -0
  242. data/lib/datadog_api_client/v2/models/okta_credentials.rb +62 -0
  243. data/lib/datadog_api_client/v2/models/okta_credentials_update.rb +62 -0
  244. data/lib/datadog_api_client/v2/models/okta_integration.rb +144 -0
  245. data/lib/datadog_api_client/v2/models/okta_integration_type.rb +26 -0
  246. data/lib/datadog_api_client/v2/models/okta_integration_update.rb +133 -0
  247. data/lib/datadog_api_client/v2/models/open_ai_credentials.rb +62 -0
  248. data/lib/datadog_api_client/v2/models/open_ai_credentials_update.rb +62 -0
  249. data/lib/datadog_api_client/v2/models/open_ai_integration.rb +144 -0
  250. data/lib/datadog_api_client/v2/models/open_ai_integration_type.rb +26 -0
  251. data/lib/datadog_api_client/v2/models/open_ai_integration_update.rb +133 -0
  252. data/lib/datadog_api_client/v2/models/open_aiapi_key.rb +144 -0
  253. data/lib/datadog_api_client/v2/models/open_aiapi_key_type.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/open_aiapi_key_update.rb +133 -0
  255. data/lib/datadog_api_client/v2/models/rule_types_items.rb +3 -1
  256. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options.rb +11 -1
  257. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options_flagged_ip_type.rb +27 -0
  258. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_type.rb +1 -0
  259. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +31 -1
  260. data/lib/datadog_api_client/v2/models/security_monitoring_scheduling_options.rb +125 -0
  261. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +31 -1
  262. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_payload.rb +31 -1
  263. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +12 -1
  264. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +31 -1
  265. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_test_payload.rb +31 -1
  266. data/lib/datadog_api_client/v2/models/service_now_basic_auth.rb +186 -0
  267. data/lib/datadog_api_client/v2/models/service_now_basic_auth_type.rb +26 -0
  268. data/lib/datadog_api_client/v2/models/service_now_basic_auth_update.rb +153 -0
  269. data/lib/datadog_api_client/v2/models/service_now_credentials.rb +62 -0
  270. data/lib/datadog_api_client/v2/models/service_now_credentials_update.rb +62 -0
  271. data/lib/datadog_api_client/v2/models/service_now_integration.rb +144 -0
  272. data/lib/datadog_api_client/v2/models/service_now_integration_type.rb +26 -0
  273. data/lib/datadog_api_client/v2/models/service_now_integration_update.rb +133 -0
  274. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_array.rb +107 -0
  275. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data.rb +125 -0
  276. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes.rb +119 -0
  277. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes_group_by_items.rb +115 -0
  278. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_attributes_metrics_items.rb +115 -0
  279. data/lib/datadog_api_client/v2/models/single_aggregated_dns_response_data_type.rb +26 -0
  280. data/lib/datadog_api_client/v2/models/split_api_key.rb +144 -0
  281. data/lib/datadog_api_client/v2/models/split_api_key_type.rb +26 -0
  282. data/lib/datadog_api_client/v2/models/split_api_key_update.rb +133 -0
  283. data/lib/datadog_api_client/v2/models/split_credentials.rb +62 -0
  284. data/lib/datadog_api_client/v2/models/split_credentials_update.rb +62 -0
  285. data/lib/datadog_api_client/v2/models/split_integration.rb +144 -0
  286. data/lib/datadog_api_client/v2/models/split_integration_type.rb +26 -0
  287. data/lib/datadog_api_client/v2/models/split_integration_update.rb +133 -0
  288. data/lib/datadog_api_client/v2/models/statsig_api_key.rb +144 -0
  289. data/lib/datadog_api_client/v2/models/statsig_api_key_type.rb +26 -0
  290. data/lib/datadog_api_client/v2/models/statsig_api_key_update.rb +133 -0
  291. data/lib/datadog_api_client/v2/models/statsig_credentials.rb +62 -0
  292. data/lib/datadog_api_client/v2/models/statsig_credentials_update.rb +62 -0
  293. data/lib/datadog_api_client/v2/models/statsig_integration.rb +144 -0
  294. data/lib/datadog_api_client/v2/models/statsig_integration_type.rb +26 -0
  295. data/lib/datadog_api_client/v2/models/statsig_integration_update.rb +133 -0
  296. data/lib/datadog_api_client/v2/models/v2_event.rb +125 -0
  297. data/lib/datadog_api_client/v2/models/v2_event_attributes.rb +137 -0
  298. data/lib/datadog_api_client/v2/models/v2_event_attributes_attributes.rb +63 -0
  299. data/lib/datadog_api_client/v2/models/v2_event_response.rb +105 -0
  300. data/lib/datadog_api_client/v2/models/virus_total_api_key.rb +144 -0
  301. data/lib/datadog_api_client/v2/models/virus_total_api_key_type.rb +26 -0
  302. data/lib/datadog_api_client/v2/models/virus_total_api_key_update.rb +133 -0
  303. data/lib/datadog_api_client/v2/models/virus_total_credentials.rb +62 -0
  304. data/lib/datadog_api_client/v2/models/virus_total_credentials_update.rb +62 -0
  305. data/lib/datadog_api_client/v2/models/virus_total_integration.rb +144 -0
  306. data/lib/datadog_api_client/v2/models/virus_total_integration_type.rb +26 -0
  307. data/lib/datadog_api_client/v2/models/virus_total_integration_update.rb +133 -0
  308. data/lib/datadog_api_client/version.rb +1 -1
  309. metadata +233 -3
@@ -0,0 +1,35 @@
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
+ # The metric key for DNS metrics.
21
+ class DnsMetricKey
22
+ include BaseEnumModel
23
+
24
+ DNS_TOTAL_REQUESTS = "dns_total_requests".freeze
25
+ DNS_FAILURES = "dns_failures".freeze
26
+ DNS_SUCCESSFUL_RESPONSES = "dns_successful_responses".freeze
27
+ DNS_FAILED_RESPONSES = "dns_failed_responses".freeze
28
+ DNS_TIMEOUTS = "dns_timeouts".freeze
29
+ DNS_RESPONSES_NXDOMAIN = "dns_responses.nxdomain".freeze
30
+ DNS_RESPONSES_SERVFAIL = "dns_responses.servfail".freeze
31
+ DNS_RESPONSES_OTHER = "dns_responses.other".freeze
32
+ DNS_SUCCESS_LATENCY_PERCENTILE = "dns_success_latency_percentile".freeze
33
+ DNS_FAILURE_LATENCY_PERCENTILE = "dns_failure_latency_percentile".freeze
34
+ end
35
+ end
@@ -21,7 +21,7 @@ module DatadogAPIClient::V2
21
21
  class EntityV3API
22
22
  include BaseGenericModel
23
23
 
24
- # The schema version of entity type. The field is known as schema-version in the previous version.
24
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
25
25
  attr_reader :api_version
26
26
 
27
27
  # Datadog product integrations for the API entity.
@@ -17,10 +17,13 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # The schema version of entity type. The field is known as schema-version in the previous version.
20
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
21
21
  class EntityV3APIVersion
22
22
  include BaseEnumModel
23
23
 
24
24
  V3 = "v3".freeze
25
+ V2_2 = "v2.2".freeze
26
+ V2_1 = "v2.1".freeze
27
+ V2 = "v2".freeze
25
28
  end
26
29
  end
@@ -21,7 +21,7 @@ module DatadogAPIClient::V2
21
21
  class EntityV3Datastore
22
22
  include BaseGenericModel
23
23
 
24
- # The schema version of entity type. The field is known as schema-version in the previous version.
24
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
25
25
  attr_reader :api_version
26
26
 
27
27
  # Datadog product integrations for the datastore entity.
@@ -21,7 +21,7 @@ module DatadogAPIClient::V2
21
21
  class EntityV3Queue
22
22
  include BaseGenericModel
23
23
 
24
- # The schema version of entity type. The field is known as schema-version in the previous version.
24
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
25
25
  attr_reader :api_version
26
26
 
27
27
  # Datadog product integrations for the datastore entity.
@@ -21,7 +21,7 @@ module DatadogAPIClient::V2
21
21
  class EntityV3Service
22
22
  include BaseGenericModel
23
23
 
24
- # The schema version of entity type. The field is known as schema-version in the previous version.
24
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
25
25
  attr_reader :api_version
26
26
 
27
27
  # Datadog product integrations for the service entity.
@@ -21,7 +21,7 @@ module DatadogAPIClient::V2
21
21
  class EntityV3System
22
22
  include BaseGenericModel
23
23
 
24
- # The schema version of entity type. The field is known as schema-version in the previous version.
24
+ # The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version.
25
25
  attr_reader :api_version
26
26
 
27
27
  # Datadog product integrations for the service entity.
@@ -0,0 +1,145 @@
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
+ # JSON object of event system attributes.
21
+ class EventSystemAttributes
22
+ include BaseGenericModel
23
+
24
+ # Event category identifying the type of event.
25
+ attr_accessor :category
26
+
27
+ # Event identifier. This field is deprecated and will be removed in a future version. Use the `uid` field instead.
28
+ attr_accessor :id
29
+
30
+ # Integration ID sourced from integration manifests.
31
+ attr_accessor :integration_id
32
+
33
+ # The source type ID of the event.
34
+ attr_accessor :source_id
35
+
36
+ # A unique identifier for the event. You can use this identifier to query or reference the event.
37
+ attr_accessor :uid
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
+ :'category' => :'category',
46
+ :'id' => :'id',
47
+ :'integration_id' => :'integration_id',
48
+ :'source_id' => :'source_id',
49
+ :'uid' => :'uid'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ # @!visibility private
55
+ def self.openapi_types
56
+ {
57
+ :'category' => :'EventSystemAttributesCategory',
58
+ :'id' => :'String',
59
+ :'integration_id' => :'EventSystemAttributesIntegrationId',
60
+ :'source_id' => :'Integer',
61
+ :'uid' => :'String'
62
+ }
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param attributes [Hash] Model attributes in the form of hash
67
+ # @!visibility private
68
+ def initialize(attributes = {})
69
+ if (!attributes.is_a?(Hash))
70
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::EventSystemAttributes` initialize method"
71
+ end
72
+
73
+ self.additional_properties = {}
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ attributes = attributes.each_with_object({}) { |(k, v), h|
76
+ if (!self.class.attribute_map.key?(k.to_sym))
77
+ self.additional_properties[k.to_sym] = v
78
+ else
79
+ h[k.to_sym] = v
80
+ end
81
+ }
82
+
83
+ if attributes.key?(:'category')
84
+ self.category = attributes[:'category']
85
+ end
86
+
87
+ if attributes.key?(:'id')
88
+ self.id = attributes[:'id']
89
+ end
90
+
91
+ if attributes.key?(:'integration_id')
92
+ self.integration_id = attributes[:'integration_id']
93
+ end
94
+
95
+ if attributes.key?(:'source_id')
96
+ self.source_id = attributes[:'source_id']
97
+ end
98
+
99
+ if attributes.key?(:'uid')
100
+ self.uid = attributes[:'uid']
101
+ end
102
+ end
103
+
104
+ # Returns the object in the form of hash, with additionalProperties support.
105
+ # @return [Hash] Returns the object in the form of hash
106
+ # @!visibility private
107
+ def to_hash
108
+ hash = {}
109
+ self.class.attribute_map.each_pair do |attr, param|
110
+ value = self.send(attr)
111
+ if value.nil?
112
+ is_nullable = self.class.openapi_nullable.include?(attr)
113
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
114
+ end
115
+
116
+ hash[param] = _to_hash(value)
117
+ end
118
+ self.additional_properties.each_pair do |attr, value|
119
+ hash[attr] = value
120
+ end
121
+ hash
122
+ end
123
+
124
+ # Checks equality by comparing each attribute.
125
+ # @param o [Object] Object to be compared
126
+ # @!visibility private
127
+ def ==(o)
128
+ return true if self.equal?(o)
129
+ self.class == o.class &&
130
+ category == o.category &&
131
+ id == o.id &&
132
+ integration_id == o.integration_id &&
133
+ source_id == o.source_id &&
134
+ uid == o.uid &&
135
+ additional_properties == o.additional_properties
136
+ end
137
+
138
+ # Calculates hash code according to all attributes.
139
+ # @return [Integer] Hash code
140
+ # @!visibility private
141
+ def hash
142
+ [category, id, integration_id, source_id, uid, additional_properties].hash
143
+ end
144
+ end
145
+ 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
+ # Event category identifying the type of event.
21
+ class EventSystemAttributesCategory
22
+ include BaseEnumModel
23
+
24
+ CHANGE = "change".freeze
25
+ ALERT = "alert".freeze
26
+ end
27
+ end
@@ -0,0 +1,26 @@
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
+ # Integration ID sourced from integration manifests.
21
+ class EventSystemAttributesIntegrationId
22
+ include BaseEnumModel
23
+
24
+ CUSTOM_EVENTS = "custom-events".freeze
25
+ end
26
+ end
@@ -23,5 +23,6 @@ module DatadogAPIClient::V2
23
23
 
24
24
  LOGS = "logs".freeze
25
25
  RUM = "rum".freeze
26
+ DORA = "dora".freeze
26
27
  end
27
28
  end
@@ -0,0 +1,144 @@
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
+ # The definition of the `FastlyAPIKey` object.
21
+ class FastlyAPIKey
22
+ include BaseGenericModel
23
+
24
+ # The `FastlyAPIKey` `api_key`.
25
+ attr_reader :api_key
26
+
27
+ # The definition of the `FastlyAPIKey` object.
28
+ attr_reader :type
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'api_key' => :'api_key',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'api_key' => :'String',
46
+ :'type' => :'FastlyAPIKeyType'
47
+ }
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param attributes [Hash] Model attributes in the form of hash
52
+ # @!visibility private
53
+ def initialize(attributes = {})
54
+ if (!attributes.is_a?(Hash))
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::FastlyAPIKey` initialize method"
56
+ end
57
+
58
+ self.additional_properties = {}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ self.additional_properties[k.to_sym] = v
63
+ else
64
+ h[k.to_sym] = v
65
+ end
66
+ }
67
+
68
+ if attributes.key?(:'api_key')
69
+ self.api_key = attributes[:'api_key']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
+ end
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ # @!visibility private
80
+ def valid?
81
+ return false if @api_key.nil?
82
+ return false if @type.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param api_key [Object] Object to be assigned
88
+ # @!visibility private
89
+ def api_key=(api_key)
90
+ if api_key.nil?
91
+ fail ArgumentError, 'invalid value for "api_key", api_key cannot be nil.'
92
+ end
93
+ @api_key = api_key
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param type [Object] Object to be assigned
98
+ # @!visibility private
99
+ def type=(type)
100
+ if type.nil?
101
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
102
+ end
103
+ @type = type
104
+ end
105
+
106
+ # Returns the object in the form of hash, with additionalProperties support.
107
+ # @return [Hash] Returns the object in the form of hash
108
+ # @!visibility private
109
+ def to_hash
110
+ hash = {}
111
+ self.class.attribute_map.each_pair do |attr, param|
112
+ value = self.send(attr)
113
+ if value.nil?
114
+ is_nullable = self.class.openapi_nullable.include?(attr)
115
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
116
+ end
117
+
118
+ hash[param] = _to_hash(value)
119
+ end
120
+ self.additional_properties.each_pair do |attr, value|
121
+ hash[attr] = value
122
+ end
123
+ hash
124
+ end
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param o [Object] Object to be compared
128
+ # @!visibility private
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ api_key == o.api_key &&
133
+ type == o.type &&
134
+ additional_properties == o.additional_properties
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Integer] Hash code
139
+ # @!visibility private
140
+ def hash
141
+ [api_key, type, additional_properties].hash
142
+ end
143
+ end
144
+ end
@@ -0,0 +1,26 @@
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
+ # The definition of the `FastlyAPIKey` object.
21
+ class FastlyAPIKeyType
22
+ include BaseEnumModel
23
+
24
+ FASTLYAPIKEY = "FastlyAPIKey".freeze
25
+ end
26
+ 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
+ # The definition of the `FastlyAPIKey` object.
21
+ class FastlyAPIKeyUpdate
22
+ include BaseGenericModel
23
+
24
+ # The `FastlyAPIKeyUpdate` `api_key`.
25
+ attr_accessor :api_key
26
+
27
+ # The definition of the `FastlyAPIKey` object.
28
+ attr_reader :type
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'api_key' => :'api_key',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'api_key' => :'String',
46
+ :'type' => :'FastlyAPIKeyType'
47
+ }
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param attributes [Hash] Model attributes in the form of hash
52
+ # @!visibility private
53
+ def initialize(attributes = {})
54
+ if (!attributes.is_a?(Hash))
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::FastlyAPIKeyUpdate` initialize method"
56
+ end
57
+
58
+ self.additional_properties = {}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ self.additional_properties[k.to_sym] = v
63
+ else
64
+ h[k.to_sym] = v
65
+ end
66
+ }
67
+
68
+ if attributes.key?(:'api_key')
69
+ self.api_key = attributes[:'api_key']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
+ end
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ # @!visibility private
80
+ def valid?
81
+ return false if @type.nil?
82
+ true
83
+ end
84
+
85
+ # Custom attribute writer method with validation
86
+ # @param type [Object] Object to be assigned
87
+ # @!visibility private
88
+ def type=(type)
89
+ if type.nil?
90
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
91
+ end
92
+ @type = type
93
+ end
94
+
95
+ # Returns the object in the form of hash, with additionalProperties support.
96
+ # @return [Hash] Returns the object in the form of hash
97
+ # @!visibility private
98
+ def to_hash
99
+ hash = {}
100
+ self.class.attribute_map.each_pair do |attr, param|
101
+ value = self.send(attr)
102
+ if value.nil?
103
+ is_nullable = self.class.openapi_nullable.include?(attr)
104
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
105
+ end
106
+
107
+ hash[param] = _to_hash(value)
108
+ end
109
+ self.additional_properties.each_pair do |attr, value|
110
+ hash[attr] = value
111
+ end
112
+ hash
113
+ end
114
+
115
+ # Checks equality by comparing each attribute.
116
+ # @param o [Object] Object to be compared
117
+ # @!visibility private
118
+ def ==(o)
119
+ return true if self.equal?(o)
120
+ self.class == o.class &&
121
+ api_key == o.api_key &&
122
+ type == o.type &&
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
+ [api_key, type, additional_properties].hash
131
+ end
132
+ end
133
+ end
@@ -0,0 +1,62 @@
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
+ # The definition of the `FastlyCredentials` object.
21
+ module FastlyCredentials
22
+ class << self
23
+ include BaseOneOfModel
24
+ include BaseOneOfModelNoDiscriminator
25
+
26
+ # List of class defined in oneOf (OpenAPI v3)
27
+ def openapi_one_of
28
+ [
29
+ :'FastlyAPIKey'
30
+ ]
31
+ end
32
+ # Builds the object
33
+ # @param data [Mixed] Data to be matched against the list of oneOf items
34
+ # @return [Object] Returns the model or the data itself
35
+ def build(data)
36
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
37
+ # Note:
38
+ # - We do not attempt to check whether exactly one item matches.
39
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
40
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
41
+ # - TODO: scalar values are de facto behaving as if they were nullable.
42
+ # - TODO: logging when debugging is set.
43
+ openapi_one_of.each do |klass|
44
+ begin
45
+ next if klass == :AnyType # "nullable: true"
46
+ typed_data = find_and_cast_into_type(klass, data)
47
+ next if typed_data.respond_to?(:_unparsed) && typed_data._unparsed
48
+ return typed_data if typed_data
49
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
50
+ end
51
+ end
52
+
53
+ if openapi_one_of.include?(:AnyType)
54
+ data
55
+ else
56
+ self._unparsed = true
57
+ DatadogAPIClient::UnparsedObject.new(data)
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end