datadog_api_client 2.32.0 → 2.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +5 -4
  4. data/.generator/schemas/v2/openapi.yaml +5260 -517
  5. data/.github/workflows/publish.yml +6 -9
  6. data/.github/workflows/test.yml +1 -1
  7. data/CHANGELOG.md +20 -0
  8. data/Gemfile +0 -1
  9. data/LICENSE-3rdparty.csv +0 -1
  10. data/Rakefile +3 -0
  11. data/datadog_api_client.gemspec +0 -2
  12. data/examples/v2/cloud-cost-management/DeleteBudget.rb +5 -0
  13. data/examples/v2/cloud-cost-management/GetBudget.rb +5 -0
  14. data/examples/v2/cloud-cost-management/ListBudgets.rb +5 -0
  15. data/examples/v2/cloud-cost-management/UpsertBudget.rb +35 -0
  16. data/examples/v2/monitors/CreateMonitorNotificationRule.rb +26 -0
  17. data/examples/v2/monitors/DeleteMonitorNotificationRule.rb +11 -0
  18. data/examples/v2/monitors/GetMonitorNotificationRule.rb +11 -0
  19. data/examples/v2/monitors/GetMonitorNotificationRules.rb +8 -0
  20. data/examples/v2/monitors/UpdateMonitorNotificationRule.rb +30 -0
  21. data/examples/v2/network-device-monitoring/GetInterfaces.rb +4 -1
  22. data/examples/v2/observability-pipelines/CreatePipeline.rb +2 -2
  23. data/examples/v2/observability-pipelines/ListPipelines.rb +8 -0
  24. data/examples/v2/observability-pipelines/ValidatePipeline.rb +44 -0
  25. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +66 -0
  26. data/examples/v2/on-call/CreateOnCallSchedule.rb +3 -3
  27. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +8 -0
  28. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +8 -0
  29. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +51 -0
  30. data/examples/v2/on-call/UpdateOnCallSchedule.rb +3 -3
  31. data/examples/v2/security-monitoring/CreateCustomFramework.rb +30 -0
  32. data/examples/v2/security-monitoring/DeleteCustomFramework.rb +5 -0
  33. data/examples/v2/security-monitoring/GetCustomFramework.rb +5 -0
  34. data/examples/v2/security-monitoring/UpdateCustomFramework.rb +30 -0
  35. data/lib/datadog_api_client/configuration.rb +20 -13
  36. data/lib/datadog_api_client/inflector.rb +241 -2
  37. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +257 -0
  38. data/lib/datadog_api_client/v2/api/monitors_api.rb +363 -0
  39. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +2 -0
  40. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +146 -1
  41. data/lib/datadog_api_client/v2/api/on_call_api.rb +275 -0
  42. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  43. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +285 -1
  44. data/lib/datadog_api_client/v2/models/azure_storage_destination.rb +198 -0
  45. data/lib/datadog_api_client/v2/models/azure_storage_destination_type.rb +26 -0
  46. data/lib/datadog_api_client/v2/models/budget.rb +125 -0
  47. data/lib/datadog_api_client/v2/models/budget_array.rb +107 -0
  48. data/lib/datadog_api_client/v2/models/budget_attributes.rb +207 -0
  49. data/lib/datadog_api_client/v2/models/budget_entry.rb +127 -0
  50. data/lib/datadog_api_client/v2/models/budget_with_entries.rb +105 -0
  51. data/lib/datadog_api_client/v2/models/budget_with_entries_data.rb +125 -0
  52. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request.rb → create_custom_framework_request.rb} +5 -5
  53. data/lib/datadog_api_client/v2/models/create_custom_framework_response.rb +123 -0
  54. data/lib/datadog_api_client/v2/models/custom_framework_control.rb +146 -0
  55. data/lib/datadog_api_client/v2/models/custom_framework_data.rb +144 -0
  56. data/lib/datadog_api_client/v2/models/custom_framework_data_attributes.rb +208 -0
  57. data/lib/datadog_api_client/v2/models/custom_framework_data_handle_and_version.rb +115 -0
  58. data/lib/datadog_api_client/v2/models/custom_framework_metadata.rb +125 -0
  59. data/lib/datadog_api_client/v2/models/custom_framework_requirement.rb +146 -0
  60. data/lib/datadog_api_client/v2/models/custom_framework_type.rb +26 -0
  61. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +207 -0
  62. data/lib/datadog_api_client/v2/models/delete_custom_framework_response.rb +123 -0
  63. data/lib/datadog_api_client/v2/models/escalation_policy.rb +117 -0
  64. data/lib/datadog_api_client/v2/models/escalation_policy_create_request.rb +123 -0
  65. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data.rb +154 -0
  66. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +176 -0
  67. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +145 -0
  68. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb +27 -0
  69. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items.rb +115 -0
  70. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb +28 -0
  71. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +105 -0
  72. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams.rb +107 -0
  73. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams_data_items.rb +144 -0
  74. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams_data_items_type.rb +26 -0
  75. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_type.rb +26 -0
  76. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +153 -0
  77. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +153 -0
  78. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +133 -0
  79. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps.rb +107 -0
  80. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items.rb +144 -0
  81. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items_type.rb +26 -0
  82. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams.rb +107 -0
  83. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams_data_items.rb +144 -0
  84. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams_data_items_type.rb +26 -0
  85. data/lib/datadog_api_client/v2/models/escalation_policy_data_type.rb +26 -0
  86. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +66 -0
  87. data/lib/datadog_api_client/v2/models/escalation_policy_step.rb +153 -0
  88. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes.rb +115 -0
  89. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes_assignment.rb +27 -0
  90. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +105 -0
  91. data/lib/datadog_api_client/v2/models/escalation_policy_step_type.rb +26 -0
  92. data/lib/datadog_api_client/v2/models/escalation_policy_update_request.rb +123 -0
  93. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data.rb +175 -0
  94. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +176 -0
  95. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +155 -0
  96. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +27 -0
  97. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items.rb +115 -0
  98. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb +28 -0
  99. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +105 -0
  100. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams.rb +107 -0
  101. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams_data_items.rb +144 -0
  102. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams_data_items_type.rb +26 -0
  103. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_type.rb +26 -0
  104. data/lib/datadog_api_client/v2/models/escalation_target.rb +64 -0
  105. data/lib/datadog_api_client/v2/models/framework_handle_and_version_response_data.rb +165 -0
  106. data/lib/datadog_api_client/v2/models/full_custom_framework_data.rb +165 -0
  107. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +230 -0
  108. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +11 -1
  109. data/lib/datadog_api_client/v2/models/get_custom_framework_response.rb +123 -0
  110. data/lib/datadog_api_client/v2/models/layer.rb +19 -1
  111. data/lib/datadog_api_client/v2/models/layer_relationships_members_data_items.rb +31 -2
  112. data/lib/datadog_api_client/v2/models/list_pipelines_response.rb +135 -0
  113. data/lib/datadog_api_client/v2/models/list_pipelines_response_meta.rb +105 -0
  114. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination.rb +251 -0
  115. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/monitor_notification_rule_attributes.rb +147 -0
  117. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request.rb +123 -0
  118. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request_data.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/monitor_notification_rule_data.rb +135 -0
  120. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter.rb +62 -0
  121. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter_tags.rb +108 -0
  122. data/lib/datadog_api_client/v2/models/monitor_notification_rule_list_response.rb +119 -0
  123. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships.rb +105 -0
  124. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships_created_by.rb +113 -0
  125. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships_created_by_data.rb +115 -0
  126. data/lib/datadog_api_client/v2/models/monitor_notification_rule_resource_type.rb +26 -0
  127. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response.rb +117 -0
  128. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_attributes.rb +184 -0
  129. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_included_item.rb +62 -0
  130. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request.rb +123 -0
  131. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request_data.rb +154 -0
  132. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +211 -0
  133. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_type.rb +26 -0
  134. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_variable.rb +144 -0
  135. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source.rb +166 -0
  136. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source_type.rb +26 -0
  137. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination.rb +200 -0
  138. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth.rb +164 -0
  139. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth_strategy.rb +27 -0
  140. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_type.rb +26 -0
  141. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination.rb +262 -0
  142. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination_storage_class.rb +34 -0
  143. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination_type.rb +26 -0
  144. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source.rb +188 -0
  145. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source_type.rb +26 -0
  146. data/lib/datadog_api_client/v2/models/observability_pipeline_aws_auth.rb +126 -0
  147. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +1 -12
  148. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +15 -1
  149. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +11 -1
  150. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +14 -1
  151. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +1 -1
  152. data/lib/datadog_api_client/v2/models/observability_pipeline_decoding.rb +29 -0
  153. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +232 -0
  154. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_mode.rb +27 -0
  155. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_type.rb +26 -0
  156. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination.rb +187 -0
  157. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_api_version.rb +29 -0
  158. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_type.rb +26 -0
  159. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file.rb +190 -0
  160. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding.rb +165 -0
  161. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding_type.rb +26 -0
  162. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items.rb +165 -0
  163. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items_comparison.rb +26 -0
  164. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items.rb +144 -0
  165. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items_type.rb +31 -0
  166. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_geo_ip.rb +165 -0
  167. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +229 -0
  168. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor_type.rb +26 -0
  169. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source.rb +154 -0
  170. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source.rb +154 -0
  172. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source_type.rb +26 -0
  173. data/lib/datadog_api_client/v2/models/observability_pipeline_gcp_auth.rb +123 -0
  174. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +212 -0
  175. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric.rb +199 -0
  177. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field_strategy.rb +26 -0
  179. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one.rb +123 -0
  180. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one_strategy.rb +26 -0
  181. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_metric_type.rb +28 -0
  182. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +230 -0
  183. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_encoding.rb +27 -0
  184. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_type.rb +26 -0
  185. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +286 -0
  186. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_acl.rb +31 -0
  187. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_storage_class.rb +29 -0
  188. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_type.rb +26 -0
  189. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +239 -0
  190. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source_type.rb +26 -0
  191. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source.rb +205 -0
  192. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_auth_strategy.rb +27 -0
  193. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_type.rb +26 -0
  194. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source.rb +196 -0
  195. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_auth_strategy.rb +27 -0
  196. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_type.rb +26 -0
  197. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +1 -1
  198. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source.rb +154 -0
  199. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source_type.rb +26 -0
  200. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +144 -0
  201. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_value.rb +63 -0
  202. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination.rb +188 -0
  203. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_region.rb +27 -0
  204. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_type.rb +26 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +211 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping.rb +144 -0
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping_mapping.rb +62 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_type.rb +26 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapping_library.rb +36 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination.rb +177 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination_type.rb +26 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +221 -0
  213. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule.rb +173 -0
  214. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_match_rule.rb +145 -0
  215. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_support_rule.rb +144 -0
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_type.rb +26 -0
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +16 -2
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_overflow_action.rb +31 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +234 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy.rb +144 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy_strategy.rb +37 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_type.rb +26 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination.rb +198 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination_type.rb +26 -0
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source.rb +175 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source_type.rb +26 -0
  227. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +219 -0
  228. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor_type.rb +26 -0
  229. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +211 -0
  230. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action.rb +64 -0
  231. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash.rb +133 -0
  232. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash_action.rb +26 -0
  233. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact.rb +144 -0
  234. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_action.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options.rb +144 -0
  236. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options_direction.rb +27 -0
  237. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_action.rb +26 -0
  239. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_options.rb +123 -0
  240. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern.rb +144 -0
  241. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_options.rb +123 -0
  242. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_type.rb +26 -0
  243. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_keyword_options.rb +146 -0
  244. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern.rb +144 -0
  245. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_options.rb +133 -0
  246. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_type.rb +26 -0
  247. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_pattern.rb +63 -0
  248. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_rule.rb +219 -0
  249. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope.rb +64 -0
  250. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all.rb +123 -0
  251. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all_target.rb +26 -0
  252. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude.rb +144 -0
  253. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude_target.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include.rb +144 -0
  255. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include_target.rb +26 -0
  256. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_options.rb +125 -0
  257. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_type.rb +26 -0
  258. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination.rb +188 -0
  259. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_region.rb +29 -0
  260. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_type.rb +26 -0
  261. data/lib/datadog_api_client/v2/models/observability_pipeline_spec.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request_data.rb → observability_pipeline_spec_data.rb} +3 -3
  263. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination.rb +209 -0
  264. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_encoding.rb +27 -0
  265. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_type.rb +26 -0
  266. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source.rb +154 -0
  267. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source_type.rb +26 -0
  268. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source.rb +155 -0
  269. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source_type.rb +26 -0
  270. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination.rb +219 -0
  271. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_encoding.rb +28 -0
  272. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_header_custom_fields_item.rb +144 -0
  273. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_type.rb +26 -0
  274. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source.rb +144 -0
  275. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source_type.rb +26 -0
  276. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination.rb +198 -0
  277. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination_type.rb +26 -0
  278. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source.rb +175 -0
  279. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source_type.rb +26 -0
  280. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_source_mode.rb +27 -0
  281. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +242 -0
  282. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor_type.rb +26 -0
  283. data/lib/datadog_api_client/v2/models/observability_pipeline_tls.rb +1 -1
  284. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships_teams_data_items.rb +31 -2
  285. data/lib/datadog_api_client/v2/models/schedule_data.rb +19 -1
  286. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers_data_items.rb +31 -2
  287. data/lib/datadog_api_client/v2/models/schedule_data_relationships_teams_data_items.rb +31 -2
  288. data/lib/datadog_api_client/v2/models/schedule_member.rb +19 -1
  289. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user.rb +19 -1
  290. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user_data.rb +31 -2
  291. data/lib/datadog_api_client/v2/models/schedule_target.rb +144 -0
  292. data/lib/datadog_api_client/v2/models/schedule_target_type.rb +26 -0
  293. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +68 -6
  294. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships_teams_data_items.rb +31 -2
  295. data/lib/datadog_api_client/v2/models/schedule_user.rb +19 -1
  296. data/lib/datadog_api_client/v2/models/tag_filter.rb +115 -0
  297. data/lib/datadog_api_client/v2/models/team_reference.rb +19 -1
  298. data/lib/datadog_api_client/v2/models/team_reference_relationships_oncall_users_data_items.rb +31 -2
  299. data/lib/datadog_api_client/v2/models/team_target.rb +144 -0
  300. data/lib/datadog_api_client/v2/models/team_target_type.rb +26 -0
  301. data/lib/datadog_api_client/v2/models/update_custom_framework_request.rb +123 -0
  302. data/lib/datadog_api_client/v2/models/update_custom_framework_response.rb +123 -0
  303. data/lib/datadog_api_client/v2/models/user_target.rb +144 -0
  304. data/lib/datadog_api_client/v2/models/user_target_type.rb +26 -0
  305. data/lib/datadog_api_client/v2/models/validation_error.rb +144 -0
  306. data/lib/datadog_api_client/v2/models/validation_error_meta.rb +143 -0
  307. data/lib/datadog_api_client/v2/models/validation_response.rb +107 -0
  308. data/lib/datadog_api_client/version.rb +1 -1
  309. metadata +262 -24
@@ -0,0 +1,115 @@
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
+ # Framework Handle and Version.
21
+ class CustomFrameworkDataHandleAndVersion
22
+ include BaseGenericModel
23
+
24
+ # Framework Handle
25
+ attr_accessor :handle
26
+
27
+ # Framework Version
28
+ attr_accessor :version
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
+ :'handle' => :'handle',
37
+ :'version' => :'version'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'handle' => :'String',
46
+ :'version' => :'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::CustomFrameworkDataHandleAndVersion` 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?(:'handle')
69
+ self.handle = attributes[:'handle']
70
+ end
71
+
72
+ if attributes.key?(:'version')
73
+ self.version = attributes[:'version']
74
+ end
75
+ end
76
+
77
+ # Returns the object in the form of hash, with additionalProperties support.
78
+ # @return [Hash] Returns the object in the form of hash
79
+ # @!visibility private
80
+ def to_hash
81
+ hash = {}
82
+ self.class.attribute_map.each_pair do |attr, param|
83
+ value = self.send(attr)
84
+ if value.nil?
85
+ is_nullable = self.class.openapi_nullable.include?(attr)
86
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
87
+ end
88
+
89
+ hash[param] = _to_hash(value)
90
+ end
91
+ self.additional_properties.each_pair do |attr, value|
92
+ hash[attr] = value
93
+ end
94
+ hash
95
+ end
96
+
97
+ # Checks equality by comparing each attribute.
98
+ # @param o [Object] Object to be compared
99
+ # @!visibility private
100
+ def ==(o)
101
+ return true if self.equal?(o)
102
+ self.class == o.class &&
103
+ handle == o.handle &&
104
+ version == o.version &&
105
+ additional_properties == o.additional_properties
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Integer] Hash code
110
+ # @!visibility private
111
+ def hash
112
+ [handle, version, additional_properties].hash
113
+ end
114
+ end
115
+ end
@@ -0,0 +1,125 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Metadata for custom frameworks.
21
+ class CustomFrameworkMetadata
22
+ include BaseGenericModel
23
+
24
+ # Framework without requirements.
25
+ attr_accessor :attributes
26
+
27
+ # The ID of the custom framework.
28
+ attr_accessor :id
29
+
30
+ # The type of the resource. The value must be `custom_framework`.
31
+ attr_accessor :type
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'attributes' => :'attributes',
40
+ :'id' => :'id',
41
+ :'type' => :'type'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'attributes' => :'CustomFrameworkWithoutRequirements',
50
+ :'id' => :'String',
51
+ :'type' => :'CustomFrameworkType'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomFrameworkMetadata` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'attributes')
74
+ self.attributes = attributes[:'attributes']
75
+ end
76
+
77
+ if attributes.key?(:'id')
78
+ self.id = attributes[:'id']
79
+ end
80
+
81
+ if attributes.key?(:'type')
82
+ self.type = attributes[:'type']
83
+ end
84
+ end
85
+
86
+ # Returns the object in the form of hash, with additionalProperties support.
87
+ # @return [Hash] Returns the object in the form of hash
88
+ # @!visibility private
89
+ def to_hash
90
+ hash = {}
91
+ self.class.attribute_map.each_pair do |attr, param|
92
+ value = self.send(attr)
93
+ if value.nil?
94
+ is_nullable = self.class.openapi_nullable.include?(attr)
95
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
96
+ end
97
+
98
+ hash[param] = _to_hash(value)
99
+ end
100
+ self.additional_properties.each_pair do |attr, value|
101
+ hash[attr] = value
102
+ end
103
+ hash
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param o [Object] Object to be compared
108
+ # @!visibility private
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ attributes == o.attributes &&
113
+ id == o.id &&
114
+ type == o.type &&
115
+ additional_properties == o.additional_properties
116
+ end
117
+
118
+ # Calculates hash code according to all attributes.
119
+ # @return [Integer] Hash code
120
+ # @!visibility private
121
+ def hash
122
+ [attributes, id, type, additional_properties].hash
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,146 @@
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
+ # Framework Requirement.
21
+ class CustomFrameworkRequirement
22
+ include BaseGenericModel
23
+
24
+ # Requirement Controls.
25
+ attr_reader :controls
26
+
27
+ # Requirement Name.
28
+ attr_reader :name
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
+ :'controls' => :'controls',
37
+ :'name' => :'name'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'controls' => :'Array<CustomFrameworkControl>',
46
+ :'name' => :'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::CustomFrameworkRequirement` 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?(:'controls')
69
+ if (value = attributes[:'controls']).is_a?(Array)
70
+ self.controls = value
71
+ end
72
+ end
73
+
74
+ if attributes.key?(:'name')
75
+ self.name = attributes[:'name']
76
+ end
77
+ end
78
+
79
+ # Check to see if the all the properties in the model are valid
80
+ # @return true if the model is valid
81
+ # @!visibility private
82
+ def valid?
83
+ return false if @controls.nil?
84
+ return false if @name.nil?
85
+ true
86
+ end
87
+
88
+ # Custom attribute writer method with validation
89
+ # @param controls [Object] Object to be assigned
90
+ # @!visibility private
91
+ def controls=(controls)
92
+ if controls.nil?
93
+ fail ArgumentError, 'invalid value for "controls", controls cannot be nil.'
94
+ end
95
+ @controls = controls
96
+ end
97
+
98
+ # Custom attribute writer method with validation
99
+ # @param name [Object] Object to be assigned
100
+ # @!visibility private
101
+ def name=(name)
102
+ if name.nil?
103
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
104
+ end
105
+ @name = name
106
+ end
107
+
108
+ # Returns the object in the form of hash, with additionalProperties support.
109
+ # @return [Hash] Returns the object in the form of hash
110
+ # @!visibility private
111
+ def to_hash
112
+ hash = {}
113
+ self.class.attribute_map.each_pair do |attr, param|
114
+ value = self.send(attr)
115
+ if value.nil?
116
+ is_nullable = self.class.openapi_nullable.include?(attr)
117
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
118
+ end
119
+
120
+ hash[param] = _to_hash(value)
121
+ end
122
+ self.additional_properties.each_pair do |attr, value|
123
+ hash[attr] = value
124
+ end
125
+ hash
126
+ end
127
+
128
+ # Checks equality by comparing each attribute.
129
+ # @param o [Object] Object to be compared
130
+ # @!visibility private
131
+ def ==(o)
132
+ return true if self.equal?(o)
133
+ self.class == o.class &&
134
+ controls == o.controls &&
135
+ name == o.name &&
136
+ additional_properties == o.additional_properties
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Integer] Hash code
141
+ # @!visibility private
142
+ def hash
143
+ [controls, name, additional_properties].hash
144
+ end
145
+ end
146
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The type of the resource. The value must be `custom_framework`.
21
+ class CustomFrameworkType
22
+ include BaseEnumModel
23
+
24
+ CUSTOM_FRAMEWORK = "custom_framework".freeze
25
+ end
26
+ end
@@ -0,0 +1,207 @@
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
+ # Framework without requirements.
21
+ class CustomFrameworkWithoutRequirements
22
+ include BaseGenericModel
23
+
24
+ # Framework Description
25
+ attr_reader :description
26
+
27
+ # Framework Handle
28
+ attr_reader :handle
29
+
30
+ # Framework Icon URL
31
+ attr_reader :icon_url
32
+
33
+ # Framework Name
34
+ attr_reader :name
35
+
36
+ # Framework Version
37
+ attr_reader :version
38
+
39
+ attr_accessor :additional_properties
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ # @!visibility private
43
+ def self.attribute_map
44
+ {
45
+ :'description' => :'description',
46
+ :'handle' => :'handle',
47
+ :'icon_url' => :'icon_url',
48
+ :'name' => :'name',
49
+ :'version' => :'version'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ # @!visibility private
55
+ def self.openapi_types
56
+ {
57
+ :'description' => :'String',
58
+ :'handle' => :'String',
59
+ :'icon_url' => :'String',
60
+ :'name' => :'String',
61
+ :'version' => :'String'
62
+ }
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param attributes [Hash] Model attributes in the form of hash
67
+ # @!visibility private
68
+ def initialize(attributes = {})
69
+ if (!attributes.is_a?(Hash))
70
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomFrameworkWithoutRequirements` initialize method"
71
+ end
72
+
73
+ self.additional_properties = {}
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ attributes = attributes.each_with_object({}) { |(k, v), h|
76
+ if (!self.class.attribute_map.key?(k.to_sym))
77
+ self.additional_properties[k.to_sym] = v
78
+ else
79
+ h[k.to_sym] = v
80
+ end
81
+ }
82
+
83
+ if attributes.key?(:'description')
84
+ self.description = attributes[:'description']
85
+ end
86
+
87
+ if attributes.key?(:'handle')
88
+ self.handle = attributes[:'handle']
89
+ end
90
+
91
+ if attributes.key?(:'icon_url')
92
+ self.icon_url = attributes[:'icon_url']
93
+ end
94
+
95
+ if attributes.key?(:'name')
96
+ self.name = attributes[:'name']
97
+ end
98
+
99
+ if attributes.key?(:'version')
100
+ self.version = attributes[:'version']
101
+ end
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ # @!visibility private
107
+ def valid?
108
+ return false if @description.nil?
109
+ return false if @handle.nil?
110
+ return false if @icon_url.nil?
111
+ return false if @name.nil?
112
+ return false if @version.nil?
113
+ true
114
+ end
115
+
116
+ # Custom attribute writer method with validation
117
+ # @param description [Object] Object to be assigned
118
+ # @!visibility private
119
+ def description=(description)
120
+ if description.nil?
121
+ fail ArgumentError, 'invalid value for "description", description cannot be nil.'
122
+ end
123
+ @description = description
124
+ end
125
+
126
+ # Custom attribute writer method with validation
127
+ # @param handle [Object] Object to be assigned
128
+ # @!visibility private
129
+ def handle=(handle)
130
+ if handle.nil?
131
+ fail ArgumentError, 'invalid value for "handle", handle cannot be nil.'
132
+ end
133
+ @handle = handle
134
+ end
135
+
136
+ # Custom attribute writer method with validation
137
+ # @param icon_url [Object] Object to be assigned
138
+ # @!visibility private
139
+ def icon_url=(icon_url)
140
+ if icon_url.nil?
141
+ fail ArgumentError, 'invalid value for "icon_url", icon_url cannot be nil.'
142
+ end
143
+ @icon_url = icon_url
144
+ end
145
+
146
+ # Custom attribute writer method with validation
147
+ # @param name [Object] Object to be assigned
148
+ # @!visibility private
149
+ def name=(name)
150
+ if name.nil?
151
+ fail ArgumentError, 'invalid value for "name", name cannot be nil.'
152
+ end
153
+ @name = name
154
+ end
155
+
156
+ # Custom attribute writer method with validation
157
+ # @param version [Object] Object to be assigned
158
+ # @!visibility private
159
+ def version=(version)
160
+ if version.nil?
161
+ fail ArgumentError, 'invalid value for "version", version cannot be nil.'
162
+ end
163
+ @version = version
164
+ end
165
+
166
+ # Returns the object in the form of hash, with additionalProperties support.
167
+ # @return [Hash] Returns the object in the form of hash
168
+ # @!visibility private
169
+ def to_hash
170
+ hash = {}
171
+ self.class.attribute_map.each_pair do |attr, param|
172
+ value = self.send(attr)
173
+ if value.nil?
174
+ is_nullable = self.class.openapi_nullable.include?(attr)
175
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
176
+ end
177
+
178
+ hash[param] = _to_hash(value)
179
+ end
180
+ self.additional_properties.each_pair do |attr, value|
181
+ hash[attr] = value
182
+ end
183
+ hash
184
+ end
185
+
186
+ # Checks equality by comparing each attribute.
187
+ # @param o [Object] Object to be compared
188
+ # @!visibility private
189
+ def ==(o)
190
+ return true if self.equal?(o)
191
+ self.class == o.class &&
192
+ description == o.description &&
193
+ handle == o.handle &&
194
+ icon_url == o.icon_url &&
195
+ name == o.name &&
196
+ version == o.version &&
197
+ additional_properties == o.additional_properties
198
+ end
199
+
200
+ # Calculates hash code according to all attributes.
201
+ # @return [Integer] Hash code
202
+ # @!visibility private
203
+ def hash
204
+ [description, handle, icon_url, name, version, additional_properties].hash
205
+ end
206
+ end
207
+ end