datadog_api_client 2.29.1 → 2.30.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 (325) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +591 -464
  4. data/.generator/schemas/v2/openapi.yaml +4175 -744
  5. data/.github/CODEOWNERS +5 -5
  6. data/.github/workflows/docs.yml +2 -2
  7. data/.github/workflows/prepare_release.yml +1 -1
  8. data/.github/workflows/test.yml +4 -1
  9. data/CHANGELOG.md +42 -0
  10. data/Gemfile +1 -1
  11. data/LICENSE-3rdparty.csv +1 -1
  12. data/RELEASING.md +1 -1
  13. data/examples/v1/azure-integration/UpdateAzureHostFilters.rb +9 -6
  14. data/examples/v1/azure-integration/UpdateAzureIntegration.rb +0 -6
  15. data/examples/v1/logs-pipelines/CreateLogsPipeline.rb +1 -0
  16. data/examples/v1/logs-pipelines/UpdateLogsPipeline.rb +1 -0
  17. data/examples/v1/monitors/CreateMonitor_1303514967.rb +32 -0
  18. data/examples/v1/monitors/ListMonitors.rb +1 -1
  19. data/examples/v1/monitors/{ListMonitors_3448441939.rb → ListMonitors_2154432960.rb} +1 -1
  20. data/examples/v1/monitors/{ListMonitors_2966492814.rb → ListMonitors_463213563.rb} +1 -1
  21. data/examples/v2/action-connection/CreateActionConnection.rb +22 -0
  22. data/examples/v2/action-connection/DeleteActionConnection.rb +5 -0
  23. data/examples/v2/action-connection/DeleteActionConnection_2142905164.rb +8 -0
  24. data/examples/v2/action-connection/GetActionConnection.rb +5 -0
  25. data/examples/v2/action-connection/UpdateActionConnection.rb +22 -0
  26. data/examples/v2/agentless-scanning/ListAwsScanOptions.rb +5 -0
  27. data/examples/v2/{apps → app-builder}/CreateApp.rb +4 -4
  28. data/examples/v2/{apps → app-builder}/DeleteApp.rb +1 -1
  29. data/examples/v2/{apps → app-builder}/DeleteApps.rb +2 -2
  30. data/examples/v2/{apps → app-builder}/GetApp.rb +1 -1
  31. data/examples/v2/{apps → app-builder}/ListApps.rb +1 -1
  32. data/examples/v2/app-builder/PublishApp.rb +11 -0
  33. data/examples/v2/app-builder/UnpublishApp.rb +11 -0
  34. data/examples/v2/{apps → app-builder}/UpdateApp.rb +2 -2
  35. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_819339921.rb +29 -0
  36. data/examples/v2/csm-coverage-analysis/GetCSMCloudAccountsCoverageAnalysis.rb +5 -0
  37. data/examples/v2/csm-coverage-analysis/GetCSMHostsAndContainersCoverageAnalysis.rb +5 -0
  38. data/examples/v2/csm-coverage-analysis/GetCSMServerlessCoverageAnalysis.rb +5 -0
  39. data/examples/v2/data-deletion/CreateDataDeletionRequest.rb +1 -0
  40. data/examples/v2/events/CreateEvent.rb +1 -1
  41. data/examples/v2/logs/ListLogs.rb +12 -6
  42. data/examples/v2/logs/ListLogsGet.rb +1 -1
  43. data/examples/v2/logs/ListLogsGet_175182691.rb +5 -0
  44. data/examples/v2/logs/ListLogs_3400928236.rb +23 -0
  45. data/examples/v2/logs/ListLogs_534975433.rb +29 -0
  46. data/examples/v2/microsoft-teams-integration/CreateWorkflowsWebhookHandle.rb +15 -0
  47. data/examples/v2/microsoft-teams-integration/CreateWorkflowsWebhookHandle_1716851881.rb +15 -0
  48. data/examples/v2/microsoft-teams-integration/DeleteWorkflowsWebhookHandle.rb +5 -0
  49. data/examples/v2/microsoft-teams-integration/DeleteWorkflowsWebhookHandle_107549514.rb +8 -0
  50. data/examples/v2/microsoft-teams-integration/GetWorkflowsWebhookHandle.rb +5 -0
  51. data/examples/v2/microsoft-teams-integration/GetWorkflowsWebhookHandle_3421443805.rb +8 -0
  52. data/examples/v2/microsoft-teams-integration/ListWorkflowsWebhookHandles.rb +5 -0
  53. data/examples/v2/microsoft-teams-integration/ListWorkflowsWebhookHandles_620762083.rb +5 -0
  54. data/examples/v2/microsoft-teams-integration/UpdateWorkflowsWebhookHandle.rb +15 -0
  55. data/examples/v2/microsoft-teams-integration/UpdateWorkflowsWebhookHandle_163189594.rb +18 -0
  56. data/examples/v2/security-monitoring/CreateSecurityMonitoringSuppression.rb +1 -0
  57. data/examples/v2/security-monitoring/CreateSecurityMonitoringSuppression_3192265332.rb +1 -0
  58. data/examples/v2/security-monitoring/CreateSignalNotificationRule.rb +30 -0
  59. data/examples/v2/security-monitoring/CreateVulnerabilityNotificationRule.rb +30 -0
  60. data/examples/v2/security-monitoring/DeleteSignalNotificationRule.rb +8 -0
  61. data/examples/v2/security-monitoring/DeleteVulnerabilityNotificationRule.rb +8 -0
  62. data/examples/v2/security-monitoring/GetSBOM.rb +5 -0
  63. data/examples/v2/security-monitoring/GetSignalNotificationRule.rb +8 -0
  64. data/examples/v2/security-monitoring/GetSignalNotificationRules.rb +5 -0
  65. data/examples/v2/security-monitoring/GetVulnerabilityNotificationRule.rb +8 -0
  66. data/examples/v2/security-monitoring/GetVulnerabilityNotificationRules.rb +5 -0
  67. data/examples/v2/security-monitoring/ListVulnerabilities.rb +10 -0
  68. data/examples/v2/security-monitoring/ListVulnerableAssets.rb +10 -0
  69. data/examples/v2/security-monitoring/PatchSignalNotificationRule.rb +35 -0
  70. data/examples/v2/security-monitoring/PatchVulnerabilityNotificationRule.rb +35 -0
  71. data/examples/v2/security-monitoring/RunHistoricalJob.rb +2 -2
  72. data/examples/v2/usage-metering/GetActiveBillingDimensions.rb +0 -3
  73. data/examples/v2/usage-metering/GetBillingDimensionMapping.rb +0 -3
  74. data/examples/v2/usage-metering/GetMonthlyCostAttribution.rb +0 -3
  75. data/lib/datadog_api_client/configuration.rb +2 -5
  76. data/lib/datadog_api_client/inflector.rb +145 -44
  77. data/lib/datadog_api_client/v1/api/monitors_api.rb +28 -4
  78. data/lib/datadog_api_client/v1/models/azure_account.rb +42 -13
  79. data/lib/datadog_api_client/v1/models/dashboard.rb +0 -2
  80. data/lib/datadog_api_client/v1/models/logs_pipeline.rb +23 -1
  81. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_cost_aggregator.rb +34 -0
  82. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_cost_data_source.rb +28 -0
  83. data/lib/datadog_api_client/v1/models/{azure_account_metrics_config.rb → monitor_formula_and_function_cost_query_definition.rb} +81 -16
  84. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_query_definition.rb +2 -1
  85. data/lib/datadog_api_client/v1/models/monitor_type.rb +1 -0
  86. data/lib/datadog_api_client/v1/models/monitor_update_request.rb +1 -1
  87. data/lib/datadog_api_client/v1/models/resource_provider_config.rb +115 -0
  88. data/lib/datadog_api_client/v1/models/synthetics_step.rb +11 -1
  89. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +184 -4
  90. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +183 -3
  91. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +183 -3
  92. data/lib/datadog_api_client/v2/api/action_connection_api.rb +295 -0
  93. data/lib/datadog_api_client/v2/api/agentless_scanning_api.rb +86 -0
  94. data/lib/datadog_api_client/v2/api/{apps_api.rb → app_builder_api.rb} +184 -38
  95. data/lib/datadog_api_client/v2/api/csm_coverage_analysis_api.rb +212 -0
  96. data/lib/datadog_api_client/v2/api/logs_api.rb +8 -8
  97. data/lib/datadog_api_client/v2/api/metrics_api.rb +1 -1
  98. data/lib/datadog_api_client/v2/api/microsoft_teams_integration_api.rb +331 -0
  99. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +13 -3
  100. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +1123 -1
  101. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +1 -19
  102. data/lib/datadog_api_client/v2/models/action_connection_attributes.rb +144 -0
  103. data/lib/datadog_api_client/v2/models/{app_builder_error_errors_items.rb → action_connection_attributes_update.rb} +18 -18
  104. data/lib/datadog_api_client/v2/models/action_connection_data.rb +154 -0
  105. data/lib/datadog_api_client/v2/models/{delete_app_response_data_type.rb → action_connection_data_type.rb} +3 -3
  106. data/lib/datadog_api_client/v2/models/action_connection_data_update.rb +144 -0
  107. data/lib/datadog_api_client/v2/models/action_connection_integration.rb +63 -0
  108. data/lib/datadog_api_client/v2/models/action_connection_integration_update.rb +63 -0
  109. data/lib/datadog_api_client/v2/models/advisory.rb +154 -0
  110. data/lib/datadog_api_client/v2/models/app_builder_event.rb +1 -1
  111. data/lib/datadog_api_client/v2/models/{get_app_response_data_type.rb → app_definition_type.rb} +2 -2
  112. data/lib/datadog_api_client/v2/models/{deployment_included_type.rb → app_deployment_type.rb} +2 -2
  113. data/lib/datadog_api_client/v2/models/app_meta.rb +15 -25
  114. data/lib/datadog_api_client/v2/models/{get_app_response_relationship.rb → app_relationship.rb} +5 -5
  115. data/lib/datadog_api_client/v2/models/asset.rb +165 -0
  116. data/lib/datadog_api_client/v2/models/asset_attributes.rb +218 -0
  117. data/lib/datadog_api_client/v2/models/{script_data_type.rb → asset_entity_type.rb} +3 -3
  118. data/lib/datadog_api_client/v2/models/asset_operating_system.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/asset_risks.rb +163 -0
  120. data/lib/datadog_api_client/v2/models/asset_type.rb +30 -0
  121. data/lib/datadog_api_client/v2/models/{disable_app_response_data_attributes.rb → asset_version.rb} +21 -11
  122. data/lib/datadog_api_client/v2/models/aws_assume_role.rb +191 -0
  123. data/lib/datadog_api_client/v2/models/{input_schema_data_type.rb → aws_assume_role_type.rb} +3 -3
  124. data/lib/datadog_api_client/v2/models/aws_assume_role_update.rb +166 -0
  125. data/lib/datadog_api_client/v2/models/aws_credentials.rb +62 -0
  126. data/lib/datadog_api_client/v2/models/aws_credentials_update.rb +62 -0
  127. data/lib/datadog_api_client/v2/models/aws_integration.rb +144 -0
  128. data/lib/datadog_api_client/v2/models/{deploy_app_response_data_type.rb → aws_integration_type.rb} +3 -3
  129. data/lib/datadog_api_client/v2/models/aws_integration_update.rb +133 -0
  130. data/lib/datadog_api_client/v2/models/aws_scan_options_attributes.rb +135 -0
  131. data/lib/datadog_api_client/v2/models/{input_schema_data.rb → aws_scan_options_data.rb} +8 -8
  132. data/lib/datadog_api_client/v2/models/aws_scan_options_response.rb +107 -0
  133. data/lib/datadog_api_client/v2/models/{delete_apps_request_data_items_type.rb → aws_scan_options_type.rb} +3 -3
  134. data/lib/datadog_api_client/v2/models/change_event_custom_attributes.rb +1 -1
  135. data/lib/datadog_api_client/v2/models/change_event_custom_attributes_changed_resource.rb +1 -1
  136. data/lib/datadog_api_client/v2/models/change_event_custom_attributes_changed_resource_type.rb +1 -0
  137. data/lib/datadog_api_client/v2/models/ci_app_create_pipeline_event_request_attributes.rb +11 -1
  138. data/lib/datadog_api_client/v2/models/{deployment_included_meta.rb → code_location.rb} +41 -33
  139. data/lib/datadog_api_client/v2/models/component.rb +6 -6
  140. data/lib/datadog_api_client/v2/models/component_grid.rb +6 -6
  141. data/lib/datadog_api_client/v2/models/component_grid_properties.rb +4 -4
  142. data/lib/datadog_api_client/v2/models/component_grid_properties_is_visible.rb +1 -1
  143. data/lib/datadog_api_client/v2/models/component_grid_type.rb +1 -1
  144. data/lib/datadog_api_client/v2/models/component_properties.rb +3 -3
  145. data/lib/datadog_api_client/v2/models/component_properties_is_visible.rb +1 -1
  146. data/lib/datadog_api_client/v2/models/component_type.rb +1 -1
  147. data/lib/datadog_api_client/v2/models/create_action_connection_request.rb +123 -0
  148. data/lib/datadog_api_client/v2/models/{script.rb → create_action_connection_response.rb} +5 -5
  149. data/lib/datadog_api_client/v2/models/create_app_request.rb +2 -2
  150. data/lib/datadog_api_client/v2/models/create_app_request_data.rb +4 -4
  151. data/lib/datadog_api_client/v2/models/create_app_request_data_attributes.rb +19 -41
  152. data/lib/datadog_api_client/v2/models/create_app_response.rb +2 -2
  153. data/lib/datadog_api_client/v2/models/create_app_response_data.rb +5 -5
  154. data/lib/datadog_api_client/v2/models/create_data_deletion_request_body_data.rb +24 -3
  155. data/lib/datadog_api_client/v2/models/{disable_app_response_data_type.rb → create_data_deletion_request_body_data_type.rb} +3 -3
  156. data/lib/datadog_api_client/v2/models/create_notification_rule_parameters.rb +105 -0
  157. data/lib/datadog_api_client/v2/models/create_notification_rule_parameters_data.rb +144 -0
  158. data/lib/datadog_api_client/v2/models/create_notification_rule_parameters_data_attributes.rb +195 -0
  159. data/lib/datadog_api_client/v2/models/csm_cloud_accounts_coverage_analysis_attributes.rb +145 -0
  160. data/lib/datadog_api_client/v2/models/{disable_app_response_data.rb → csm_cloud_accounts_coverage_analysis_data.rb} +9 -19
  161. data/lib/datadog_api_client/v2/models/csm_cloud_accounts_coverage_analysis_response.rb +105 -0
  162. data/lib/datadog_api_client/v2/models/csm_coverage_analysis.rb +135 -0
  163. data/lib/datadog_api_client/v2/models/csm_hosts_and_containers_coverage_analysis_attributes.rb +145 -0
  164. data/lib/datadog_api_client/v2/models/csm_hosts_and_containers_coverage_analysis_data.rb +125 -0
  165. data/lib/datadog_api_client/v2/models/csm_hosts_and_containers_coverage_analysis_response.rb +105 -0
  166. data/lib/datadog_api_client/v2/models/csm_serverless_coverage_analysis_attributes.rb +125 -0
  167. data/lib/datadog_api_client/v2/models/csm_serverless_coverage_analysis_data.rb +125 -0
  168. data/lib/datadog_api_client/v2/models/csm_serverless_coverage_analysis_response.rb +105 -0
  169. data/lib/datadog_api_client/v2/models/custom_connection.rb +5 -5
  170. data/lib/datadog_api_client/v2/models/custom_connection_attributes.rb +3 -3
  171. data/lib/datadog_api_client/v2/models/custom_connection_attributes_on_prem_runner.rb +3 -3
  172. data/lib/datadog_api_client/v2/models/custom_connection_type.rb +1 -1
  173. data/lib/datadog_api_client/v2/models/cvss.rb +165 -0
  174. data/lib/datadog_api_client/v2/models/delete_app_response.rb +1 -1
  175. data/lib/datadog_api_client/v2/models/delete_app_response_data.rb +4 -4
  176. data/lib/datadog_api_client/v2/models/delete_apps_request.rb +2 -2
  177. data/lib/datadog_api_client/v2/models/delete_apps_request_data_items.rb +5 -5
  178. data/lib/datadog_api_client/v2/models/delete_apps_response.rb +2 -2
  179. data/lib/datadog_api_client/v2/models/delete_apps_response_data_items.rb +5 -5
  180. data/lib/datadog_api_client/v2/models/dependency_location.rb +207 -0
  181. data/lib/datadog_api_client/v2/models/{deploy_app_response_data.rb → deployment.rb} +11 -11
  182. data/lib/datadog_api_client/v2/models/{deploy_app_response_data_attributes.rb → deployment_attributes.rb} +5 -5
  183. data/lib/datadog_api_client/v2/models/{deployment_relationship_meta.rb → deployment_metadata.rb} +9 -9
  184. data/lib/datadog_api_client/v2/models/deployment_relationship.rb +4 -4
  185. data/lib/datadog_api_client/v2/models/deployment_relationship_data.rb +5 -5
  186. data/lib/datadog_api_client/v2/models/entity_v3.rb +2 -1
  187. data/lib/datadog_api_client/v2/models/entity_v3_api.rb +180 -0
  188. data/lib/datadog_api_client/v2/models/entity_v3_api_datadog.rb +126 -0
  189. data/lib/datadog_api_client/v2/models/entity_v3_api_kind.rb +26 -0
  190. data/lib/datadog_api_client/v2/models/entity_v3_api_spec.rb +151 -0
  191. data/lib/datadog_api_client/v2/models/entity_v3_api_spec_interface_definition.rb +80 -0
  192. data/lib/datadog_api_client/v2/models/{entity_v3_metadata_owner.rb → entity_v3_api_spec_interface_file_ref.rb} +12 -12
  193. data/lib/datadog_api_client/v2/models/entity_v3_metadata.rb +1 -1
  194. data/lib/datadog_api_client/v2/models/epss.rb +144 -0
  195. data/lib/datadog_api_client/v2/models/{input_schema.rb → get_action_connection_response.rb} +5 -5
  196. data/lib/datadog_api_client/v2/models/get_app_response.rb +7 -7
  197. data/lib/datadog_api_client/v2/models/get_app_response_data.rb +6 -6
  198. data/lib/datadog_api_client/v2/models/get_app_response_data_attributes.rb +20 -42
  199. data/lib/datadog_api_client/v2/models/get_sbom_response.rb +123 -0
  200. data/lib/datadog_api_client/v2/models/historical_job_options.rb +168 -0
  201. data/lib/datadog_api_client/v2/models/historical_job_query.rb +171 -0
  202. data/lib/datadog_api_client/v2/models/{app_builder_error.rb → http_body.rb} +21 -13
  203. data/lib/datadog_api_client/v2/models/http_credentials.rb +62 -0
  204. data/lib/datadog_api_client/v2/models/http_credentials_update.rb +62 -0
  205. data/lib/datadog_api_client/v2/models/http_header.rb +150 -0
  206. data/lib/datadog_api_client/v2/models/http_header_update.rb +149 -0
  207. data/lib/datadog_api_client/v2/models/http_integration.rb +171 -0
  208. data/lib/datadog_api_client/v2/models/http_integration_type.rb +26 -0
  209. data/lib/datadog_api_client/v2/models/http_integration_update.rb +156 -0
  210. data/lib/datadog_api_client/v2/models/http_token.rb +171 -0
  211. data/lib/datadog_api_client/v2/models/http_token_auth.rb +169 -0
  212. data/lib/datadog_api_client/v2/models/http_token_auth_type.rb +26 -0
  213. data/lib/datadog_api_client/v2/models/http_token_auth_update.rb +169 -0
  214. data/lib/datadog_api_client/v2/models/http_token_update.rb +181 -0
  215. data/lib/datadog_api_client/v2/models/job_definition.rb +6 -18
  216. data/lib/datadog_api_client/v2/models/jsonapi_error_item.rb +21 -1
  217. data/lib/datadog_api_client/v2/models/{app_builder_error_errors_items_source.rb → jsonapi_error_item_source.rb} +16 -6
  218. data/lib/datadog_api_client/v2/models/library.rb +133 -0
  219. data/lib/datadog_api_client/v2/models/links.rb +185 -0
  220. data/lib/datadog_api_client/v2/models/list_apps_response.rb +5 -5
  221. data/lib/datadog_api_client/v2/models/list_apps_response_data_items.rb +8 -8
  222. data/lib/datadog_api_client/v2/models/list_apps_response_data_items_attributes.rb +6 -6
  223. data/lib/datadog_api_client/v2/models/list_apps_response_data_items_relationships.rb +2 -2
  224. data/lib/datadog_api_client/v2/models/list_apps_response_meta.rb +2 -2
  225. data/lib/datadog_api_client/v2/models/list_apps_response_meta_page.rb +3 -3
  226. data/lib/datadog_api_client/v2/models/list_vulnerabilities_response.rb +145 -0
  227. data/lib/datadog_api_client/v2/models/list_vulnerable_assets_response.rb +145 -0
  228. data/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb +11 -1
  229. data/lib/datadog_api_client/v2/models/logs_archive_encryption_s3.rb +133 -0
  230. data/lib/datadog_api_client/v2/models/logs_archive_encryption_s3_type.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/metadata.rb +165 -0
  232. data/lib/datadog_api_client/v2/models/microsoft_teams_create_workflows_webhook_handle_request.rb +123 -0
  233. data/lib/datadog_api_client/v2/models/microsoft_teams_update_workflows_webhook_handle_request.rb +123 -0
  234. data/lib/datadog_api_client/v2/models/microsoft_teams_update_workflows_webhook_handle_request_data.rb +144 -0
  235. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_handle_attributes.rb +144 -0
  236. data/lib/datadog_api_client/v2/models/{input_schema_data_attributes_parameters_items_data_attributes.rb → microsoft_teams_workflows_webhook_handle_request_attributes.rb} +46 -51
  237. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_handle_request_data.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_handle_response.rb +123 -0
  239. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_handle_response_data.rb +147 -0
  240. data/lib/datadog_api_client/v2/models/{create_app_response_data_type.rb → microsoft_teams_workflows_webhook_handle_type.rb} +3 -3
  241. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_handles_response.rb +125 -0
  242. data/lib/datadog_api_client/v2/models/microsoft_teams_workflows_webhook_response_attributes.rb +123 -0
  243. data/lib/datadog_api_client/v2/models/notification_rule.rb +168 -0
  244. data/lib/datadog_api_client/v2/models/notification_rule_attributes.rb +311 -0
  245. data/lib/datadog_api_client/v2/models/{input_schema_data_attributes_parameters_items.rb → notification_rule_response.rb} +9 -5
  246. data/lib/datadog_api_client/v2/models/{create_app_request_data_type.rb → notification_rules_type.rb} +3 -3
  247. data/lib/datadog_api_client/v2/models/patch_notification_rule_parameters.rb +105 -0
  248. data/lib/datadog_api_client/v2/models/patch_notification_rule_parameters_data.rb +165 -0
  249. data/lib/datadog_api_client/v2/models/patch_notification_rule_parameters_data_attributes.rb +165 -0
  250. data/lib/datadog_api_client/v2/models/{disable_app_response.rb → publish_app_response.rb} +5 -5
  251. data/lib/datadog_api_client/v2/models/query.rb +7 -7
  252. data/lib/datadog_api_client/v2/models/query_type.rb +1 -1
  253. data/lib/datadog_api_client/v2/models/remediation.rb +278 -0
  254. data/lib/datadog_api_client/v2/models/rule_severity.rb +31 -0
  255. data/lib/datadog_api_client/v2/models/rule_types_items.rb +42 -0
  256. data/lib/datadog_api_client/v2/models/{deployment_included_attributes.rb → rule_user.rb} +21 -11
  257. data/lib/datadog_api_client/v2/models/{script_data.rb → sbom.rb} +8 -8
  258. data/lib/datadog_api_client/v2/models/sbom_attributes.rb +230 -0
  259. data/lib/datadog_api_client/v2/models/sbom_component.rb +185 -0
  260. data/lib/datadog_api_client/v2/models/sbom_component_type.rb +37 -0
  261. data/lib/datadog_api_client/v2/models/sbom_metadata.rb +105 -0
  262. data/lib/datadog_api_client/v2/models/{script_data_attributes.rb → sbom_metadata_component.rb} +6 -16
  263. data/lib/datadog_api_client/v2/models/sbom_type.rb +26 -0
  264. data/lib/datadog_api_client/v2/models/security_monitoring_reference_table.rb +2 -2
  265. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb +2 -2
  266. data/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb +1 -1
  267. data/lib/datadog_api_client/v2/models/security_monitoring_rule_impossible_travel_options.rb +1 -1
  268. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  269. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +1 -1
  270. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +6 -6
  271. data/lib/datadog_api_client/v2/models/security_monitoring_rule_third_party_options.rb +1 -1
  272. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +1 -1
  273. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_create_payload.rb +1 -1
  274. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_payload.rb +1 -1
  275. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_response.rb +1 -1
  276. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +1 -1
  277. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_payload.rb +1 -1
  278. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +1 -1
  279. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_test_payload.rb +1 -1
  280. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_attributes.rb +11 -1
  281. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_attributes.rb +11 -1
  282. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_attributes.rb +12 -1
  283. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case_create.rb +1 -1
  284. data/lib/datadog_api_client/v2/models/selectors.rb +160 -0
  285. data/lib/datadog_api_client/v2/models/spec_version.rb +31 -0
  286. data/lib/datadog_api_client/v2/models/token_type.rb +26 -0
  287. data/lib/datadog_api_client/v2/models/trigger_source.rb +28 -0
  288. data/lib/datadog_api_client/v2/models/unpublish_app_response.rb +105 -0
  289. data/lib/datadog_api_client/v2/models/update_action_connection_request.rb +123 -0
  290. data/lib/datadog_api_client/v2/models/{deploy_app_response.rb → update_action_connection_response.rb} +5 -5
  291. data/lib/datadog_api_client/v2/models/update_app_request.rb +2 -2
  292. data/lib/datadog_api_client/v2/models/update_app_request_data.rb +6 -6
  293. data/lib/datadog_api_client/v2/models/update_app_request_data_attributes.rb +19 -41
  294. data/lib/datadog_api_client/v2/models/update_app_response.rb +7 -7
  295. data/lib/datadog_api_client/v2/models/update_app_response_data.rb +6 -6
  296. data/lib/datadog_api_client/v2/models/update_app_response_data_attributes.rb +20 -42
  297. data/lib/datadog_api_client/v2/models/url_param.rb +150 -0
  298. data/lib/datadog_api_client/v2/models/url_param_update.rb +149 -0
  299. data/lib/datadog_api_client/v2/models/vulnerabilities_type.rb +26 -0
  300. data/lib/datadog_api_client/v2/models/vulnerability.rb +186 -0
  301. data/lib/datadog_api_client/v2/models/vulnerability_attributes.rb +462 -0
  302. data/lib/datadog_api_client/v2/models/{deployment_meta.rb → vulnerability_cvss.rb} +43 -34
  303. data/lib/datadog_api_client/v2/models/vulnerability_dependency_locations.rb +143 -0
  304. data/lib/datadog_api_client/v2/models/vulnerability_ecosystem.rb +36 -0
  305. data/lib/datadog_api_client/v2/models/vulnerability_relationships.rb +123 -0
  306. data/lib/datadog_api_client/v2/models/vulnerability_relationships_affects.rb +123 -0
  307. data/lib/datadog_api_client/v2/models/{deployment_included.rb → vulnerability_relationships_affects_data.rb} +38 -29
  308. data/lib/datadog_api_client/v2/models/vulnerability_risks.rb +198 -0
  309. data/lib/datadog_api_client/v2/models/vulnerability_severity.rb +31 -0
  310. data/lib/datadog_api_client/v2/models/vulnerability_status.rb +30 -0
  311. data/lib/datadog_api_client/v2/models/vulnerability_tool.rb +28 -0
  312. data/lib/datadog_api_client/v2/models/vulnerability_type.rb +67 -0
  313. data/lib/datadog_api_client/version.rb +1 -1
  314. metadata +194 -56
  315. data/examples/v2/app-deployment/DeployApp.rb +0 -11
  316. data/examples/v2/app-deployment/DisableApp.rb +0 -11
  317. data/lib/datadog_api_client/v2/api/app_deployment_api.rb +0 -168
  318. data/lib/datadog_api_client/v2/models/delete_apps_response_data_items_type.rb +0 -26
  319. data/lib/datadog_api_client/v2/models/deployment_relationship_data_type.rb +0 -26
  320. data/lib/datadog_api_client/v2/models/input_schema_data_attributes.rb +0 -107
  321. data/lib/datadog_api_client/v2/models/input_schema_data_attributes_parameters_items_data.rb +0 -105
  322. data/lib/datadog_api_client/v2/models/list_apps_response_data_items_type.rb +0 -26
  323. data/lib/datadog_api_client/v2/models/update_app_request_data_type.rb +0 -26
  324. data/lib/datadog_api_client/v2/models/update_app_response_data_type.rb +0 -26
  325. data/lib/datadog_api_client/v2/models/update_app_response_relationship.rb +0 -117
@@ -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
+ # Workflows Webhook handle data from a response.
21
+ class MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData
22
+ include BaseGenericModel
23
+
24
+ # Workflows Webhook handle attributes.
25
+ attr_reader :attributes
26
+
27
+ # Specifies the Workflows webhook handle resource type.
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
+ :'attributes' => :'attributes',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'attributes' => :'MicrosoftTeamsWorkflowsWebhookHandleAttributes',
46
+ :'type' => :'MicrosoftTeamsWorkflowsWebhookHandleType'
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::MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData` 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?(:'attributes')
69
+ self.attributes = attributes[:'attributes']
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 @attributes.nil?
82
+ return false if @type.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param attributes [Object] Object to be assigned
88
+ # @!visibility private
89
+ def attributes=(attributes)
90
+ if attributes.nil?
91
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
92
+ end
93
+ @attributes = attributes
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
+ attributes == o.attributes &&
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
+ [attributes, type, additional_properties].hash
142
+ end
143
+ end
144
+ 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
+ # Workflows Webhook handle attributes.
21
+ class MicrosoftTeamsWorkflowsWebhookHandleAttributes
22
+ include BaseGenericModel
23
+
24
+ # Workflows Webhook handle name.
25
+ attr_reader :name
26
+
27
+ # Workflows Webhook URL.
28
+ attr_reader :url
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
+ :'name' => :'name',
37
+ :'url' => :'url'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'name' => :'String',
46
+ :'url' => :'String'
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::MicrosoftTeamsWorkflowsWebhookHandleAttributes` 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?(:'name')
69
+ self.name = attributes[:'name']
70
+ end
71
+
72
+ if attributes.key?(:'url')
73
+ self.url = attributes[:'url']
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 !@name.nil? && @name.to_s.length > 255
82
+ return false if !@url.nil? && @url.to_s.length > 255
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param name [Object] Object to be assigned
88
+ # @!visibility private
89
+ def name=(name)
90
+ if !name.nil? && name.to_s.length > 255
91
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
92
+ end
93
+ @name = name
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param url [Object] Object to be assigned
98
+ # @!visibility private
99
+ def url=(url)
100
+ if !url.nil? && url.to_s.length > 255
101
+ fail ArgumentError, 'invalid value for "url", the character length must be smaller than or equal to 255.'
102
+ end
103
+ @url = url
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
+ name == o.name &&
133
+ url == o.url &&
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
+ [name, url, additional_properties].hash
142
+ end
143
+ end
144
+ end
@@ -17,27 +17,15 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # The definition of `InputSchemaDataAttributesParametersItemsDataAttributes` object.
21
- class InputSchemaDataAttributesParametersItemsDataAttributes
20
+ # Workflows Webhook handle attributes.
21
+ class MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes
22
22
  include BaseGenericModel
23
23
 
24
- # The `attributes` `defaultValue`.
25
- attr_accessor :default_value
24
+ # Workflows Webhook handle name.
25
+ attr_reader :name
26
26
 
27
- # The `attributes` `description`.
28
- attr_accessor :description
29
-
30
- # The `attributes` `enum`.
31
- attr_accessor :enum
32
-
33
- # The `attributes` `label`.
34
- attr_accessor :label
35
-
36
- # The `attributes` `name`.
37
- attr_accessor :name
38
-
39
- # The `attributes` `type`.
40
- attr_accessor :type
27
+ # Workflows Webhook URL.
28
+ attr_reader :url
41
29
 
42
30
  attr_accessor :additional_properties
43
31
 
@@ -45,12 +33,8 @@ module DatadogAPIClient::V2
45
33
  # @!visibility private
46
34
  def self.attribute_map
47
35
  {
48
- :'default_value' => :'defaultValue',
49
- :'description' => :'description',
50
- :'enum' => :'enum',
51
- :'label' => :'label',
52
36
  :'name' => :'name',
53
- :'type' => :'type'
37
+ :'url' => :'url'
54
38
  }
55
39
  end
56
40
 
@@ -58,12 +42,8 @@ module DatadogAPIClient::V2
58
42
  # @!visibility private
59
43
  def self.openapi_types
60
44
  {
61
- :'default_value' => :'Object',
62
- :'description' => :'String',
63
- :'enum' => :'Array<String>',
64
- :'label' => :'String',
65
45
  :'name' => :'String',
66
- :'type' => :'String'
46
+ :'url' => :'String'
67
47
  }
68
48
  end
69
49
 
@@ -72,7 +52,7 @@ module DatadogAPIClient::V2
72
52
  # @!visibility private
73
53
  def initialize(attributes = {})
74
54
  if (!attributes.is_a?(Hash))
75
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::InputSchemaDataAttributesParametersItemsDataAttributes` initialize method"
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes` initialize method"
76
56
  end
77
57
 
78
58
  self.additional_properties = {}
@@ -85,31 +65,50 @@ module DatadogAPIClient::V2
85
65
  end
86
66
  }
87
67
 
88
- if attributes.key?(:'default_value')
89
- self.default_value = attributes[:'default_value']
68
+ if attributes.key?(:'name')
69
+ self.name = attributes[:'name']
90
70
  end
91
71
 
92
- if attributes.key?(:'description')
93
- self.description = attributes[:'description']
72
+ if attributes.key?(:'url')
73
+ self.url = attributes[:'url']
94
74
  end
75
+ end
95
76
 
96
- if attributes.key?(:'enum')
97
- if (value = attributes[:'enum']).is_a?(Array)
98
- self.enum = value
99
- end
100
- end
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 @name.nil?
82
+ return false if @name.to_s.length > 255
83
+ return false if @url.nil?
84
+ return false if @url.to_s.length > 255
85
+ true
86
+ end
101
87
 
102
- if attributes.key?(:'label')
103
- self.label = attributes[:'label']
88
+ # Custom attribute writer method with validation
89
+ # @param name [Object] Object to be assigned
90
+ # @!visibility private
91
+ def name=(name)
92
+ if name.nil?
93
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
104
94
  end
105
-
106
- if attributes.key?(:'name')
107
- self.name = attributes[:'name']
95
+ if name.to_s.length > 255
96
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
108
97
  end
98
+ @name = name
99
+ end
109
100
 
110
- if attributes.key?(:'type')
111
- self.type = attributes[:'type']
101
+ # Custom attribute writer method with validation
102
+ # @param url [Object] Object to be assigned
103
+ # @!visibility private
104
+ def url=(url)
105
+ if url.nil?
106
+ fail ArgumentError, 'invalid value for "url", url cannot be nil.'
107
+ end
108
+ if url.to_s.length > 255
109
+ fail ArgumentError, 'invalid value for "url", the character length must be smaller than or equal to 255.'
112
110
  end
111
+ @url = url
113
112
  end
114
113
 
115
114
  # Returns the object in the form of hash, with additionalProperties support.
@@ -138,12 +137,8 @@ module DatadogAPIClient::V2
138
137
  def ==(o)
139
138
  return true if self.equal?(o)
140
139
  self.class == o.class &&
141
- default_value == o.default_value &&
142
- description == o.description &&
143
- enum == o.enum &&
144
- label == o.label &&
145
140
  name == o.name &&
146
- type == o.type &&
141
+ url == o.url &&
147
142
  additional_properties == o.additional_properties
148
143
  end
149
144
 
@@ -151,7 +146,7 @@ module DatadogAPIClient::V2
151
146
  # @return [Integer] Hash code
152
147
  # @!visibility private
153
148
  def hash
154
- [default_value, description, enum, label, name, type, additional_properties].hash
149
+ [name, url, additional_properties].hash
155
150
  end
156
151
  end
157
152
  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
+ # Workflows Webhook handle data from a response.
21
+ class MicrosoftTeamsWorkflowsWebhookHandleRequestData
22
+ include BaseGenericModel
23
+
24
+ # Workflows Webhook handle attributes.
25
+ attr_reader :attributes
26
+
27
+ # Specifies the Workflows webhook handle resource type.
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
+ :'attributes' => :'attributes',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'attributes' => :'MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes',
46
+ :'type' => :'MicrosoftTeamsWorkflowsWebhookHandleType'
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::MicrosoftTeamsWorkflowsWebhookHandleRequestData` 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?(:'attributes')
69
+ self.attributes = attributes[:'attributes']
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 @attributes.nil?
82
+ return false if @type.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param attributes [Object] Object to be assigned
88
+ # @!visibility private
89
+ def attributes=(attributes)
90
+ if attributes.nil?
91
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
92
+ end
93
+ @attributes = attributes
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
+ attributes == o.attributes &&
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
+ [attributes, type, additional_properties].hash
142
+ end
143
+ end
144
+ end