datadog_api_client 2.46.0 → 2.48.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 (276) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +201 -12
  3. data/.generator/schemas/v2/openapi.yaml +3391 -684
  4. data/CHANGELOG.md +46 -0
  5. data/examples/v1/dashboards/CreateDashboard_3685886950.rb +36 -0
  6. data/examples/v1/dashboards/CreateDashboard_865807520.rb +36 -0
  7. data/examples/v1/dashboards/CreateDashboard_9836563.rb +118 -0
  8. data/examples/v2/apm/GetServiceList.rb +5 -0
  9. data/examples/v2/aws-integration/CreateAWSAccount.rb +11 -0
  10. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +11 -0
  11. data/examples/v2/aws-integration/UpdateAWSAccount.rb +11 -0
  12. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1295653933.rb +3 -1
  13. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1363354233.rb +1 -1
  14. data/examples/v2/deployment-gates/GetDeploymentGateRules.rb +11 -0
  15. data/examples/v2/events/CreateEvent.rb +1 -0
  16. data/examples/v2/incidents/CreateIncidentAttachment.rb +22 -0
  17. data/examples/v2/incidents/DeleteIncidentAttachment.rb +8 -0
  18. data/examples/v2/incidents/ListIncidentAttachments.rb +1 -1
  19. data/examples/v2/incidents/UpdateIncidentAttachment.rb +20 -0
  20. data/examples/v2/observability-pipelines/CreatePipeline.rb +12 -4
  21. data/examples/v2/observability-pipelines/UpdatePipeline.rb +12 -4
  22. data/examples/v2/observability-pipelines/ValidatePipeline.rb +12 -4
  23. data/examples/v2/on-call/CreateUserNotificationChannel.rb +23 -0
  24. data/examples/v2/on-call/CreateUserNotificationRule.rb +29 -0
  25. data/examples/v2/on-call/DeleteUserNotificationChannel.rb +11 -0
  26. data/examples/v2/on-call/DeleteUserNotificationRule.rb +11 -0
  27. data/examples/v2/on-call/GetUserNotificationChannel.rb +11 -0
  28. data/examples/v2/on-call/GetUserNotificationRule.rb +14 -0
  29. data/examples/v2/on-call/ListUserNotificationChannels.rb +8 -0
  30. data/examples/v2/on-call/ListUserNotificationRules.rb +11 -0
  31. data/examples/v2/on-call/UpdateUserNotificationRule.rb +36 -0
  32. data/examples/v2/product-analytics/SubmitProductAnalyticsEvent.rb +24 -0
  33. data/examples/v2/security-monitoring/CreateCases.rb +2 -2
  34. data/examples/v2/security-monitoring/CreateCases_2385516013.rb +1 -1
  35. data/examples/v2/security-monitoring/CreateCases_2798851680.rb +2 -2
  36. data/examples/v2/security-monitoring/CreateJiraIssues.rb +14 -69
  37. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_2323193894.rb +48 -0
  38. data/examples/v2/security-monitoring/GetSecretsRules.rb +1 -1
  39. data/examples/v2/security-monitoring/GetSuppressionVersionHistory.rb +8 -0
  40. data/examples/v2/security-monitoring/ValidateSecurityMonitoringRule_2609327779.rb +54 -0
  41. data/examples/v2/synthetics/PatchGlobalVariable.rb +19 -0
  42. data/examples/v2/teams/CreateTeamNotificationRule.rb +23 -0
  43. data/examples/v2/teams/DeleteTeamConnections.rb +0 -3
  44. data/examples/v2/teams/DeleteTeamNotificationRule.rb +11 -0
  45. data/examples/v2/teams/GetTeamNotificationRule.rb +11 -0
  46. data/examples/v2/teams/GetTeamNotificationRules.rb +8 -0
  47. data/examples/v2/teams/GetTeamSync.rb +0 -3
  48. data/examples/v2/teams/ListTeamConnections.rb +0 -3
  49. data/examples/v2/teams/ListTeamConnections_2418873869.rb +0 -3
  50. data/examples/v2/teams/SyncTeams.rb +0 -3
  51. data/examples/v2/teams/SyncTeams_3215592344.rb +0 -3
  52. data/examples/v2/teams/UpdateTeamNotificationRule.rb +27 -0
  53. data/lib/datadog_api_client/configuration.rb +59 -9
  54. data/lib/datadog_api_client/inflector.rb +135 -26
  55. data/lib/datadog_api_client/v1/api/synthetics_api.rb +3 -3
  56. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -4
  57. data/lib/datadog_api_client/v1/models/formula_and_function_metric_query_definition.rb +13 -3
  58. data/lib/datadog_api_client/v1/models/formula_and_function_metric_semantic_mode.rb +27 -0
  59. data/lib/datadog_api_client/v1/models/geomap_widget_definition.rb +4 -5
  60. data/lib/datadog_api_client/v1/models/geomap_widget_definition_view.rb +1 -1
  61. data/lib/datadog_api_client/v1/models/geomap_widget_request.rb +37 -3
  62. data/lib/datadog_api_client/v1/models/geomap_widget_request_style.rb +105 -0
  63. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +3 -0
  64. data/lib/datadog_api_client/v1/models/monitor_search_response.rb +1 -1
  65. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +6 -0
  66. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +61 -1
  67. data/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb +1 -1
  68. data/lib/datadog_api_client/v1/models/synthetics_test_details.rb +1 -1
  69. data/lib/datadog_api_client/v1/models/synthetics_test_details_without_steps.rb +221 -0
  70. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +41 -1
  71. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +41 -1
  72. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +41 -1
  73. data/lib/datadog_api_client/v2/api/apm_api.rb +83 -0
  74. data/lib/datadog_api_client/v2/api/deployment_gates_api.rb +71 -0
  75. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +8 -8
  76. data/lib/datadog_api_client/v2/api/incidents_api.rb +188 -54
  77. data/lib/datadog_api_client/v2/api/on_call_api.rb +637 -0
  78. data/lib/datadog_api_client/v2/api/product_analytics_api.rb +121 -0
  79. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +99 -11
  80. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +4 -0
  81. data/lib/datadog_api_client/v2/api/synthetics_api.rb +79 -0
  82. data/lib/datadog_api_client/v2/api/teams_api.rb +345 -30
  83. data/lib/datadog_api_client/v2/models/attach_case_request_data.rb +1 -1
  84. data/lib/datadog_api_client/v2/models/attach_jira_issue_request_data.rb +1 -11
  85. data/lib/datadog_api_client/v2/models/attach_jira_issue_request_data_attributes.rb +1 -1
  86. data/lib/datadog_api_client/v2/models/{create_jira_issue_request_data_attributes_fields.rb → attachment.rb} +22 -10
  87. data/lib/datadog_api_client/v2/models/{incident_attachments_response.rb → attachment_array.rb} +7 -7
  88. data/lib/datadog_api_client/v2/models/{incident_attachment_data.rb → attachment_data.rb} +8 -8
  89. data/lib/datadog_api_client/v2/models/attachment_data_attributes.rb +125 -0
  90. data/lib/datadog_api_client/v2/models/attachment_data_attributes_attachment.rb +115 -0
  91. data/lib/datadog_api_client/v2/models/{incident_attachment_attachment_type.rb → attachment_data_attributes_attachment_type.rb} +3 -3
  92. data/lib/datadog_api_client/v2/models/{incident_attachment_relationships.rb → attachment_data_relationships.rb} +5 -5
  93. data/lib/datadog_api_client/v2/models/{create_jira_issue_request_data_relationships_case.rb → attachment_data_relationships_last_modified_by_user.rb} +5 -5
  94. data/lib/datadog_api_client/v2/models/{create_jira_issue_request_data_relationships_case_data.rb → attachment_data_relationships_last_modified_by_user_data.rb} +5 -5
  95. data/lib/datadog_api_client/v2/models/{incident_attachments_response_included_item.rb → attachment_included.rb} +3 -3
  96. data/lib/datadog_api_client/v2/models/aws_account_create_request_attributes.rb +11 -1
  97. data/lib/datadog_api_client/v2/models/aws_account_response_attributes.rb +11 -1
  98. data/lib/datadog_api_client/v2/models/aws_account_update_request_attributes.rb +11 -1
  99. data/lib/datadog_api_client/v2/models/awsccm_config.rb +107 -0
  100. data/lib/datadog_api_client/v2/models/case_create_attributes.rb +11 -1
  101. data/lib/datadog_api_client/v2/models/case_insights_items.rb +3 -3
  102. data/lib/datadog_api_client/v2/models/case_management_project_data.rb +1 -1
  103. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +11 -1
  104. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_version.rb +2 -2
  105. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +2 -2
  106. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_hash.rb +105 -0
  107. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_set.rb +1 -1
  108. data/lib/datadog_api_client/v2/models/{incident_attachment_update_attributes.rb → cloud_workload_security_agent_rule_action_set_value.rb} +5 -4
  109. data/lib/datadog_api_client/v2/models/{dora_fetch_response.rb → create_attachment_request.rb} +5 -5
  110. data/lib/datadog_api_client/v2/models/{incident_attachment_update_data.rb → create_attachment_request_data.rb} +6 -6
  111. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes.rb +115 -0
  112. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes_attachment.rb +115 -0
  113. data/lib/datadog_api_client/v2/models/create_case_request_data.rb +1 -11
  114. data/lib/datadog_api_client/v2/models/create_case_request_data_attributes.rb +3 -3
  115. data/lib/datadog_api_client/v2/models/create_email_notification_channel_config.rb +167 -0
  116. data/lib/datadog_api_client/v2/models/create_jira_issue_request_array.rb +3 -15
  117. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data.rb +1 -11
  118. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data_attributes.rb +43 -3
  119. data/lib/datadog_api_client/v2/models/create_jira_issue_request_data_relationships.rb +35 -14
  120. data/lib/datadog_api_client/v2/models/create_notification_channel_attributes.rb +105 -0
  121. data/lib/datadog_api_client/v2/models/{create_jira_issue_request_array_included.rb → create_notification_channel_config.rb} +4 -5
  122. data/lib/datadog_api_client/v2/models/create_notification_channel_data.rb +133 -0
  123. data/lib/datadog_api_client/v2/models/{incident_attachment_update_request.rb → create_on_call_notification_rule_request.rb} +6 -11
  124. data/lib/datadog_api_client/v2/models/create_on_call_notification_rule_request_data.rb +143 -0
  125. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes_attachment_object.rb → create_phone_notification_channel_config.rb} +30 -30
  126. data/lib/datadog_api_client/v2/models/create_user_notification_channel_request.rb +123 -0
  127. data/lib/datadog_api_client/v2/models/custom_attribute_type.rb +1 -0
  128. data/lib/datadog_api_client/v2/models/data_export_config.rb +145 -0
  129. data/lib/datadog_api_client/v2/models/deployment_gate_rules_response.rb +105 -0
  130. data/lib/datadog_api_client/v2/models/detach_case_request_data.rb +1 -11
  131. data/lib/datadog_api_client/v2/models/dora_deployment_fetch_response.rb +105 -0
  132. data/lib/datadog_api_client/v2/models/dora_deployment_object.rb +125 -0
  133. data/lib/datadog_api_client/v2/models/dora_deployment_object_attributes.rb +225 -0
  134. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +1 -1
  135. data/lib/datadog_api_client/v2/models/dora_deployments_list_response.rb +107 -0
  136. data/lib/datadog_api_client/v2/models/dora_failure_fetch_response.rb +105 -0
  137. data/lib/datadog_api_client/v2/models/dora_failure_request_attributes.rb +1 -1
  138. data/lib/datadog_api_client/v2/models/{dora_list_response.rb → dora_failures_list_response.rb} +5 -5
  139. data/lib/datadog_api_client/v2/models/{dora_event.rb → dora_incident_object.rb} +8 -8
  140. data/lib/datadog_api_client/v2/models/dora_incident_object_attributes.rb +225 -0
  141. data/lib/datadog_api_client/v2/models/event_payload.rb +26 -1
  142. data/lib/datadog_api_client/v2/models/finding_case_response_data.rb +1 -1
  143. data/lib/datadog_api_client/v2/models/finding_data.rb +1 -1
  144. data/lib/datadog_api_client/v2/models/finding_jira_issue.rb +2 -2
  145. data/lib/datadog_api_client/v2/models/finding_jira_issue_result.rb +4 -4
  146. data/lib/datadog_api_client/v2/models/get_suppression_version_history_data.rb +125 -0
  147. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attachment_type.rb → get_suppression_version_history_data_type.rb} +3 -3
  148. data/lib/datadog_api_client/v2/models/get_suppression_version_history_response.rb +105 -0
  149. data/lib/datadog_api_client/v2/models/global_variable_data.rb +125 -0
  150. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request.rb +123 -0
  151. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data.rb +115 -0
  152. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data_attributes.rb +107 -0
  153. data/lib/datadog_api_client/v2/models/global_variable_json_patch_type.rb +26 -0
  154. data/lib/datadog_api_client/v2/models/global_variable_response.rb +105 -0
  155. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attachment_type.rb → global_variable_type.rb} +3 -3
  156. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  157. data/lib/datadog_api_client/v2/models/json_patch_operation.rb +154 -0
  158. data/lib/datadog_api_client/v2/models/json_patch_operation_op.rb +31 -0
  159. data/lib/datadog_api_client/v2/models/library.rb +13 -1
  160. data/lib/datadog_api_client/v2/models/list_deployment_rule_response_data.rb +165 -0
  161. data/lib/datadog_api_client/v2/models/list_deployment_rules_data_type.rb +26 -0
  162. data/lib/datadog_api_client/v2/models/list_deployment_rules_response_data_attributes.rb +107 -0
  163. data/lib/datadog_api_client/v2/models/list_notification_channels_response.rb +107 -0
  164. data/lib/datadog_api_client/v2/models/list_on_call_notification_rules_response.rb +119 -0
  165. data/lib/datadog_api_client/v2/models/notification_channel.rb +105 -0
  166. data/lib/datadog_api_client/v2/models/notification_channel_attributes.rb +115 -0
  167. data/lib/datadog_api_client/v2/models/notification_channel_config.rb +64 -0
  168. data/lib/datadog_api_client/v2/models/notification_channel_data.rb +143 -0
  169. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes.rb → notification_channel_email_config.rb} +50 -37
  170. data/lib/datadog_api_client/v2/models/notification_channel_email_config_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/notification_channel_email_format_type.rb +27 -0
  172. data/lib/datadog_api_client/v2/models/notification_channel_phone_config.rb +225 -0
  173. data/lib/datadog_api_client/v2/models/notification_channel_phone_config_type.rb +26 -0
  174. data/lib/datadog_api_client/v2/models/notification_channel_push_config.rb +165 -0
  175. data/lib/datadog_api_client/v2/models/notification_channel_push_config_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/notification_channel_type.rb +26 -0
  177. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +32 -24
  178. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +32 -24
  179. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +2 -2
  180. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_group.rb +221 -0
  181. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor.rb +32 -24
  182. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor_remap.rb +1 -12
  183. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_tags_processor.rb +32 -24
  184. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +32 -24
  185. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +32 -24
  186. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +32 -24
  187. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +34 -48
  188. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +32 -24
  189. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +32 -24
  190. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +32 -24
  191. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +28 -31
  192. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +32 -24
  193. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +32 -24
  194. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +32 -24
  195. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +32 -24
  196. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +32 -24
  197. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +32 -24
  198. data/lib/datadog_api_client/v2/models/{incident_attachment_update_response.rb → on_call_notification_rule.rb} +8 -11
  199. data/lib/datadog_api_client/v2/models/on_call_notification_rule_attributes.rb +125 -0
  200. data/lib/datadog_api_client/v2/models/on_call_notification_rule_category.rb +27 -0
  201. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship.rb +123 -0
  202. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship_data.rb +115 -0
  203. data/lib/datadog_api_client/v2/models/{incident_attachment_attributes.rb → on_call_notification_rule_channel_settings.rb} +3 -4
  204. data/lib/datadog_api_client/v2/models/on_call_notification_rule_data.rb +153 -0
  205. data/lib/datadog_api_client/v2/models/on_call_notification_rule_relationships.rb +105 -0
  206. data/lib/datadog_api_client/v2/models/on_call_notification_rule_request_attributes.rb +125 -0
  207. data/lib/datadog_api_client/v2/models/on_call_notification_rule_type.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/on_call_notification_rules_included.rb +62 -0
  209. data/lib/datadog_api_client/v2/models/on_call_phone_notification_rule_method.rb +27 -0
  210. data/lib/datadog_api_client/v2/models/{incident_attachments_postmortem_attributes_attachment_object.rb → on_call_phone_notification_rule_settings.rb} +30 -30
  211. data/lib/datadog_api_client/v2/models/patch_attachment_request.rb +105 -0
  212. data/lib/datadog_api_client/v2/models/patch_attachment_request_data.rb +143 -0
  213. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes.rb +105 -0
  214. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes_attachment.rb +115 -0
  215. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_error.rb +125 -0
  216. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_errors.rb +107 -0
  217. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item.rb +195 -0
  218. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_account.rb +123 -0
  219. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_application.rb +124 -0
  220. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_event.rb +123 -0
  221. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_session.rb +123 -0
  222. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_type.rb +26 -0
  223. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_usr.rb +123 -0
  224. data/lib/datadog_api_client/v2/models/rule_versions.rb +1 -1
  225. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options.rb +155 -0
  226. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_bucket_duration.rb +32 -0
  227. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_detection_tolerance.rb +31 -0
  228. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_learning_duration.rb +32 -0
  229. data/lib/datadog_api_client/v2/models/security_monitoring_rule_new_value_options.rb +11 -1
  230. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +11 -1
  231. data/lib/datadog_api_client/v2/models/service_list.rb +105 -0
  232. data/lib/datadog_api_client/v2/models/service_list_data.rb +143 -0
  233. data/lib/datadog_api_client/v2/models/service_list_data_attributes.rb +119 -0
  234. data/lib/datadog_api_client/v2/models/service_list_data_attributes_metadata_items.rb +115 -0
  235. data/lib/datadog_api_client/v2/models/service_list_data_type.rb +26 -0
  236. data/lib/datadog_api_client/v2/models/suppression_version_history.rb +133 -0
  237. data/lib/datadog_api_client/v2/models/suppression_versions.rb +117 -0
  238. data/lib/datadog_api_client/v2/models/synthetics_global_variable.rb +248 -0
  239. data/lib/datadog_api_client/v2/models/synthetics_global_variable_attributes.rb +107 -0
  240. data/lib/datadog_api_client/v2/models/synthetics_global_variable_options.rb +105 -0
  241. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parse_test_options.rb +153 -0
  242. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parse_test_options_type.rb +29 -0
  243. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parser_type.rb +29 -0
  244. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attributes.rb → synthetics_global_variable_totp_parameters.rb} +38 -30
  245. data/lib/datadog_api_client/v2/models/synthetics_global_variable_value.rb +126 -0
  246. data/lib/datadog_api_client/v2/models/synthetics_variable_parser.rb +133 -0
  247. data/lib/datadog_api_client/v2/models/team_notification_rule.rb +154 -0
  248. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes.rb +135 -0
  249. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_email.rb +105 -0
  250. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_ms_teams.rb +105 -0
  251. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_pagerduty.rb +105 -0
  252. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_slack.rb +115 -0
  253. data/lib/datadog_api_client/v2/models/team_notification_rule_request.rb +123 -0
  254. data/lib/datadog_api_client/v2/models/team_notification_rule_response.rb +105 -0
  255. data/lib/datadog_api_client/v2/models/team_notification_rule_type.rb +26 -0
  256. data/lib/datadog_api_client/v2/models/team_notification_rules_response.rb +117 -0
  257. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta.rb +105 -0
  258. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta_page.rb +184 -0
  259. data/lib/datadog_api_client/v2/models/threat_hunting_job_options.rb +11 -1
  260. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request.rb +123 -0
  261. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_attributes.rb +125 -0
  262. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_data.rb +153 -0
  263. data/lib/datadog_api_client/v2/models/user140420082644000.rb +143 -0
  264. data/lib/datadog_api_client/v2/models/{incident_attachment_related_object.rb → user_type.rb} +2 -2
  265. data/lib/datadog_api_client/v2/models/{rule_version_update.rb → version_history_update.rb} +3 -3
  266. data/lib/datadog_api_client/v2/models/{rule_version_update_type.rb → version_history_update_type.rb} +1 -1
  267. data/lib/datadog_api_client/v2/models/vulnerability_attributes.rb +11 -1
  268. data/lib/datadog_api_client/v2/models/vulnerability_ecosystem.rb +6 -1
  269. data/lib/datadog_api_client/v2/models/vulnerability_tool.rb +1 -0
  270. data/lib/datadog_api_client/version.rb +1 -1
  271. metadata +163 -32
  272. data/examples/v2/incidents/ListIncidentAttachments_2457735435.rb +0 -11
  273. data/examples/v2/incidents/UpdateIncidentAttachments.rb +0 -38
  274. data/examples/v2/incidents/UpdateIncidentAttachments_3881702075.rb +0 -26
  275. data/examples/v2/security-monitoring/CreateJiraIssues_379590688.rb +0 -56
  276. data/examples/v2/security-monitoring/CreateJiraIssues_829823123.rb +0 -64
@@ -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
+ # Response object containing the version history of a suppression.
21
+ class SuppressionVersionHistory
22
+ include BaseGenericModel
23
+
24
+ # The number of suppression versions.
25
+ attr_reader :count
26
+
27
+ # The version history of a suppression.
28
+ attr_accessor :data
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
+ :'count' => :'count',
37
+ :'data' => :'data'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'count' => :'Integer',
46
+ :'data' => :'Hash<String, SuppressionVersions>'
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::SuppressionVersionHistory` 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?(:'count')
69
+ self.count = attributes[:'count']
70
+ end
71
+
72
+ if attributes.key?(:'data')
73
+ self.data = attributes[:'data']
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 !@count.nil? && @count > 2147483647
82
+ true
83
+ end
84
+
85
+ # Custom attribute writer method with validation
86
+ # @param count [Object] Object to be assigned
87
+ # @!visibility private
88
+ def count=(count)
89
+ if !count.nil? && count > 2147483647
90
+ fail ArgumentError, 'invalid value for "count", must be smaller than or equal to 2147483647.'
91
+ end
92
+ @count = count
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
+ count == o.count &&
122
+ data == o.data &&
123
+ additional_properties == o.additional_properties
124
+ end
125
+
126
+ # Calculates hash code according to all attributes.
127
+ # @return [Integer] Hash code
128
+ # @!visibility private
129
+ def hash
130
+ [count, data, additional_properties].hash
131
+ end
132
+ end
133
+ end
@@ -0,0 +1,117 @@
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
+ # A suppression version with a list of updates.
21
+ class SuppressionVersions
22
+ include BaseGenericModel
23
+
24
+ # A list of changes.
25
+ attr_accessor :changes
26
+
27
+ # The attributes of the suppression rule.
28
+ attr_accessor :suppression
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
+ :'changes' => :'changes',
37
+ :'suppression' => :'suppression'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'changes' => :'Array<VersionHistoryUpdate>',
46
+ :'suppression' => :'SecurityMonitoringSuppressionAttributes'
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::SuppressionVersions` 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?(:'changes')
69
+ if (value = attributes[:'changes']).is_a?(Array)
70
+ self.changes = value
71
+ end
72
+ end
73
+
74
+ if attributes.key?(:'suppression')
75
+ self.suppression = attributes[:'suppression']
76
+ end
77
+ end
78
+
79
+ # Returns the object in the form of hash, with additionalProperties support.
80
+ # @return [Hash] Returns the object in the form of hash
81
+ # @!visibility private
82
+ def to_hash
83
+ hash = {}
84
+ self.class.attribute_map.each_pair do |attr, param|
85
+ value = self.send(attr)
86
+ if value.nil?
87
+ is_nullable = self.class.openapi_nullable.include?(attr)
88
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
89
+ end
90
+
91
+ hash[param] = _to_hash(value)
92
+ end
93
+ self.additional_properties.each_pair do |attr, value|
94
+ hash[attr] = value
95
+ end
96
+ hash
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param o [Object] Object to be compared
101
+ # @!visibility private
102
+ def ==(o)
103
+ return true if self.equal?(o)
104
+ self.class == o.class &&
105
+ changes == o.changes &&
106
+ suppression == o.suppression &&
107
+ additional_properties == o.additional_properties
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Integer] Hash code
112
+ # @!visibility private
113
+ def hash
114
+ [changes, suppression, additional_properties].hash
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,248 @@
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
+ # Synthetic global variable.
21
+ class SyntheticsGlobalVariable
22
+ include BaseGenericModel
23
+
24
+ # Attributes of the global variable.
25
+ attr_accessor :attributes
26
+
27
+ # Description of the global variable.
28
+ attr_reader :description
29
+
30
+ # Unique identifier of the global variable.
31
+ attr_accessor :id
32
+
33
+ # Determines if the global variable is a FIDO variable.
34
+ attr_accessor :is_fido
35
+
36
+ # Determines if the global variable is a TOTP/MFA variable.
37
+ attr_accessor :is_totp
38
+
39
+ # Name of the global variable. Unique across Synthetic global variables.
40
+ attr_reader :name
41
+
42
+ # Parser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`.
43
+ attr_accessor :parse_test_options
44
+
45
+ # A Synthetic test ID to use as a test to generate the variable value.
46
+ attr_accessor :parse_test_public_id
47
+
48
+ # Tags of the global variable.
49
+ attr_reader :tags
50
+
51
+ # Value of the global variable.
52
+ attr_reader :value
53
+
54
+ attr_accessor :additional_properties
55
+
56
+ # Attribute mapping from ruby-style variable name to JSON key.
57
+ # @!visibility private
58
+ def self.attribute_map
59
+ {
60
+ :'attributes' => :'attributes',
61
+ :'description' => :'description',
62
+ :'id' => :'id',
63
+ :'is_fido' => :'is_fido',
64
+ :'is_totp' => :'is_totp',
65
+ :'name' => :'name',
66
+ :'parse_test_options' => :'parse_test_options',
67
+ :'parse_test_public_id' => :'parse_test_public_id',
68
+ :'tags' => :'tags',
69
+ :'value' => :'value'
70
+ }
71
+ end
72
+
73
+ # Attribute type mapping.
74
+ # @!visibility private
75
+ def self.openapi_types
76
+ {
77
+ :'attributes' => :'SyntheticsGlobalVariableAttributes',
78
+ :'description' => :'String',
79
+ :'id' => :'String',
80
+ :'is_fido' => :'Boolean',
81
+ :'is_totp' => :'Boolean',
82
+ :'name' => :'String',
83
+ :'parse_test_options' => :'SyntheticsGlobalVariableParseTestOptions',
84
+ :'parse_test_public_id' => :'String',
85
+ :'tags' => :'Array<String>',
86
+ :'value' => :'SyntheticsGlobalVariableValue'
87
+ }
88
+ end
89
+
90
+ # Initializes the object
91
+ # @param attributes [Hash] Model attributes in the form of hash
92
+ # @!visibility private
93
+ def initialize(attributes = {})
94
+ if (!attributes.is_a?(Hash))
95
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SyntheticsGlobalVariable` initialize method"
96
+ end
97
+
98
+ self.additional_properties = {}
99
+ # check to see if the attribute exists and convert string to symbol for hash key
100
+ attributes = attributes.each_with_object({}) { |(k, v), h|
101
+ if (!self.class.attribute_map.key?(k.to_sym))
102
+ self.additional_properties[k.to_sym] = v
103
+ else
104
+ h[k.to_sym] = v
105
+ end
106
+ }
107
+
108
+ if attributes.key?(:'attributes')
109
+ self.attributes = attributes[:'attributes']
110
+ end
111
+
112
+ if attributes.key?(:'description')
113
+ self.description = attributes[:'description']
114
+ end
115
+
116
+ if attributes.key?(:'id')
117
+ self.id = attributes[:'id']
118
+ end
119
+
120
+ if attributes.key?(:'is_fido')
121
+ self.is_fido = attributes[:'is_fido']
122
+ end
123
+
124
+ if attributes.key?(:'is_totp')
125
+ self.is_totp = attributes[:'is_totp']
126
+ end
127
+
128
+ if attributes.key?(:'name')
129
+ self.name = attributes[:'name']
130
+ end
131
+
132
+ if attributes.key?(:'parse_test_options')
133
+ self.parse_test_options = attributes[:'parse_test_options']
134
+ end
135
+
136
+ if attributes.key?(:'parse_test_public_id')
137
+ self.parse_test_public_id = attributes[:'parse_test_public_id']
138
+ end
139
+
140
+ if attributes.key?(:'tags')
141
+ if (value = attributes[:'tags']).is_a?(Array)
142
+ self.tags = value
143
+ end
144
+ end
145
+
146
+ if attributes.key?(:'value')
147
+ self.value = attributes[:'value']
148
+ end
149
+ end
150
+
151
+ # Check to see if the all the properties in the model are valid
152
+ # @return true if the model is valid
153
+ # @!visibility private
154
+ def valid?
155
+ return false if @description.nil?
156
+ return false if @name.nil?
157
+ return false if @tags.nil?
158
+ return false if @value.nil?
159
+ true
160
+ end
161
+
162
+ # Custom attribute writer method with validation
163
+ # @param description [Object] Object to be assigned
164
+ # @!visibility private
165
+ def description=(description)
166
+ if description.nil?
167
+ fail ArgumentError, 'invalid value for "description", description cannot be nil.'
168
+ end
169
+ @description = description
170
+ end
171
+
172
+ # Custom attribute writer method with validation
173
+ # @param name [Object] Object to be assigned
174
+ # @!visibility private
175
+ def name=(name)
176
+ if name.nil?
177
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
178
+ end
179
+ @name = name
180
+ end
181
+
182
+ # Custom attribute writer method with validation
183
+ # @param tags [Object] Object to be assigned
184
+ # @!visibility private
185
+ def tags=(tags)
186
+ if tags.nil?
187
+ fail ArgumentError, 'invalid value for "tags", tags cannot be nil.'
188
+ end
189
+ @tags = tags
190
+ end
191
+
192
+ # Custom attribute writer method with validation
193
+ # @param value [Object] Object to be assigned
194
+ # @!visibility private
195
+ def value=(value)
196
+ if value.nil?
197
+ fail ArgumentError, 'invalid value for "value", value cannot be nil.'
198
+ end
199
+ @value = value
200
+ end
201
+
202
+ # Returns the object in the form of hash, with additionalProperties support.
203
+ # @return [Hash] Returns the object in the form of hash
204
+ # @!visibility private
205
+ def to_hash
206
+ hash = {}
207
+ self.class.attribute_map.each_pair do |attr, param|
208
+ value = self.send(attr)
209
+ if value.nil?
210
+ is_nullable = self.class.openapi_nullable.include?(attr)
211
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
212
+ end
213
+
214
+ hash[param] = _to_hash(value)
215
+ end
216
+ self.additional_properties.each_pair do |attr, value|
217
+ hash[attr] = value
218
+ end
219
+ hash
220
+ end
221
+
222
+ # Checks equality by comparing each attribute.
223
+ # @param o [Object] Object to be compared
224
+ # @!visibility private
225
+ def ==(o)
226
+ return true if self.equal?(o)
227
+ self.class == o.class &&
228
+ attributes == o.attributes &&
229
+ description == o.description &&
230
+ id == o.id &&
231
+ is_fido == o.is_fido &&
232
+ is_totp == o.is_totp &&
233
+ name == o.name &&
234
+ parse_test_options == o.parse_test_options &&
235
+ parse_test_public_id == o.parse_test_public_id &&
236
+ tags == o.tags &&
237
+ value == o.value &&
238
+ additional_properties == o.additional_properties
239
+ end
240
+
241
+ # Calculates hash code according to all attributes.
242
+ # @return [Integer] Hash code
243
+ # @!visibility private
244
+ def hash
245
+ [attributes, description, id, is_fido, is_totp, name, parse_test_options, parse_test_public_id, tags, value, additional_properties].hash
246
+ end
247
+ end
248
+ end
@@ -0,0 +1,107 @@
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
+ # Attributes of the global variable.
21
+ class SyntheticsGlobalVariableAttributes
22
+ include BaseGenericModel
23
+
24
+ # A list of role identifiers that can be pulled from the Roles API, for restricting read and write access.
25
+ attr_accessor :restricted_roles
26
+
27
+ attr_accessor :additional_properties
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ # @!visibility private
31
+ def self.attribute_map
32
+ {
33
+ :'restricted_roles' => :'restricted_roles'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'restricted_roles' => :'Array<String>'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param attributes [Hash] Model attributes in the form of hash
47
+ # @!visibility private
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SyntheticsGlobalVariableAttributes` initialize method"
51
+ end
52
+
53
+ self.additional_properties = {}
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ self.additional_properties[k.to_sym] = v
58
+ else
59
+ h[k.to_sym] = v
60
+ end
61
+ }
62
+
63
+ if attributes.key?(:'restricted_roles')
64
+ if (value = attributes[:'restricted_roles']).is_a?(Array)
65
+ self.restricted_roles = value
66
+ end
67
+ end
68
+ end
69
+
70
+ # Returns the object in the form of hash, with additionalProperties support.
71
+ # @return [Hash] Returns the object in the form of hash
72
+ # @!visibility private
73
+ def to_hash
74
+ hash = {}
75
+ self.class.attribute_map.each_pair do |attr, param|
76
+ value = self.send(attr)
77
+ if value.nil?
78
+ is_nullable = self.class.openapi_nullable.include?(attr)
79
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
80
+ end
81
+
82
+ hash[param] = _to_hash(value)
83
+ end
84
+ self.additional_properties.each_pair do |attr, value|
85
+ hash[attr] = value
86
+ end
87
+ hash
88
+ end
89
+
90
+ # Checks equality by comparing each attribute.
91
+ # @param o [Object] Object to be compared
92
+ # @!visibility private
93
+ def ==(o)
94
+ return true if self.equal?(o)
95
+ self.class == o.class &&
96
+ restricted_roles == o.restricted_roles &&
97
+ additional_properties == o.additional_properties
98
+ end
99
+
100
+ # Calculates hash code according to all attributes.
101
+ # @return [Integer] Hash code
102
+ # @!visibility private
103
+ def hash
104
+ [restricted_roles, additional_properties].hash
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,105 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Options for the Global Variable for MFA.
21
+ class SyntheticsGlobalVariableOptions
22
+ include BaseGenericModel
23
+
24
+ # Parameters for the TOTP/MFA variable
25
+ attr_accessor :totp_parameters
26
+
27
+ attr_accessor :additional_properties
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ # @!visibility private
31
+ def self.attribute_map
32
+ {
33
+ :'totp_parameters' => :'totp_parameters'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'totp_parameters' => :'SyntheticsGlobalVariableTOTPParameters'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param attributes [Hash] Model attributes in the form of hash
47
+ # @!visibility private
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SyntheticsGlobalVariableOptions` initialize method"
51
+ end
52
+
53
+ self.additional_properties = {}
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ self.additional_properties[k.to_sym] = v
58
+ else
59
+ h[k.to_sym] = v
60
+ end
61
+ }
62
+
63
+ if attributes.key?(:'totp_parameters')
64
+ self.totp_parameters = attributes[:'totp_parameters']
65
+ end
66
+ end
67
+
68
+ # Returns the object in the form of hash, with additionalProperties support.
69
+ # @return [Hash] Returns the object in the form of hash
70
+ # @!visibility private
71
+ def to_hash
72
+ hash = {}
73
+ self.class.attribute_map.each_pair do |attr, param|
74
+ value = self.send(attr)
75
+ if value.nil?
76
+ is_nullable = self.class.openapi_nullable.include?(attr)
77
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
78
+ end
79
+
80
+ hash[param] = _to_hash(value)
81
+ end
82
+ self.additional_properties.each_pair do |attr, value|
83
+ hash[attr] = value
84
+ end
85
+ hash
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param o [Object] Object to be compared
90
+ # @!visibility private
91
+ def ==(o)
92
+ return true if self.equal?(o)
93
+ self.class == o.class &&
94
+ totp_parameters == o.totp_parameters &&
95
+ additional_properties == o.additional_properties
96
+ end
97
+
98
+ # Calculates hash code according to all attributes.
99
+ # @return [Integer] Hash code
100
+ # @!visibility private
101
+ def hash
102
+ [totp_parameters, additional_properties].hash
103
+ end
104
+ end
105
+ end