datadog_api_client 2.31.0 → 2.32.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 (213) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +80 -4
  4. data/.generator/schemas/v2/openapi.yaml +2417 -93
  5. data/.generator/src/generator/cli.py +1 -1
  6. data/.generator/src/generator/formatter.py +3 -0
  7. data/.generator/src/generator/templates/api.j2 +1 -1
  8. data/.generator/src/generator/templates/inflector.j2 +1 -1
  9. data/CHANGELOG.md +35 -0
  10. data/examples/v1/slack-integration/CreateSlackIntegrationChannel.rb +1 -0
  11. data/examples/v1/slack-integration/UpdateSlackIntegrationChannel.rb +1 -0
  12. data/examples/v2/action-connection/CreateActionConnection.rb +1 -1
  13. data/examples/v2/action-connection/DeleteActionConnection.rb +4 -1
  14. data/examples/v2/apm-retention-filters/CreateApmRetentionFilter_3853850379.rb +21 -0
  15. data/examples/v2/apm-retention-filters/UpdateApmRetentionFilter_3916044058.rb +25 -0
  16. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections.rb +8 -0
  17. data/examples/v2/cloud-network-monitoring/GetAggregatedConnections_3059356111.rb +8 -0
  18. data/examples/v2/observability-pipelines/CreatePipeline.rb +44 -0
  19. data/examples/v2/observability-pipelines/DeletePipeline.rb +11 -0
  20. data/examples/v2/observability-pipelines/GetPipeline.rb +11 -0
  21. data/examples/v2/observability-pipelines/UpdatePipeline.rb +48 -0
  22. data/examples/v2/on-call/CreateOnCallSchedule.rb +61 -0
  23. data/examples/v2/on-call/DeleteOnCallSchedule.rb +8 -0
  24. data/examples/v2/on-call/GetOnCallSchedule.rb +8 -0
  25. data/examples/v2/on-call/UpdateOnCallSchedule.rb +68 -0
  26. data/examples/v2/rum-retention-filters/CreateRetentionFilter.rb +0 -3
  27. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1965169892.rb +6 -0
  28. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions.rb +1 -1
  29. data/examples/v2/software-catalog/UpsertCatalogEntity.rb +1 -0
  30. data/lib/datadog_api_client/configuration.rb +5 -0
  31. data/lib/datadog_api_client/inflector.rb +122 -3
  32. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -1
  33. data/lib/datadog_api_client/v1/models/formula_and_function_slo_query_type.rb +1 -0
  34. data/lib/datadog_api_client/v1/models/slack_integration_channel_display.rb +11 -1
  35. data/lib/datadog_api_client/v1/models/synthetics_step_type.rb +1 -0
  36. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +41 -1
  37. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +41 -1
  38. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +41 -1
  39. data/lib/datadog_api_client/v2/api/cloud_network_monitoring_api.rb +108 -0
  40. data/lib/datadog_api_client/v2/api/downtimes_api.rb +2 -0
  41. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +319 -0
  42. data/lib/datadog_api_client/v2/api/on_call_api.rb +301 -0
  43. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +7 -3
  44. data/lib/datadog_api_client/v2/api/rum_retention_filters_api.rb +13 -13
  45. data/lib/datadog_api_client/v2/models/api_trigger.rb +1 -1
  46. data/lib/datadog_api_client/v2/models/api_trigger_wrapper.rb +1 -1
  47. data/lib/datadog_api_client/v2/models/app_trigger_wrapper.rb +1 -1
  48. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_tags_category.rb +1 -1
  49. data/lib/datadog_api_client/v2/models/case_trigger.rb +1 -1
  50. data/lib/datadog_api_client/v2/models/case_trigger_wrapper.rb +1 -1
  51. data/lib/datadog_api_client/v2/models/change_event_trigger_wrapper.rb +1 -1
  52. data/lib/datadog_api_client/v2/models/dashboard_trigger_wrapper.rb +1 -1
  53. data/lib/datadog_api_client/v2/models/database_monitoring_trigger_wrapper.rb +135 -0
  54. data/lib/datadog_api_client/v2/models/entity_response_included_incident.rb +1 -1
  55. data/lib/datadog_api_client/v2/models/{rum_retention_filter_source.rb → entity_response_included_incident_type.rb} +3 -6
  56. data/lib/datadog_api_client/v2/models/entity_response_included_oncall.rb +1 -1
  57. data/lib/datadog_api_client/v2/models/{service_definition_v2_dot2_type.rb → entity_response_included_oncall_type.rb} +3 -9
  58. data/lib/datadog_api_client/v2/models/entity_response_included_raw_schema.rb +1 -1
  59. data/lib/datadog_api_client/v2/models/entity_response_included_raw_schema_type.rb +26 -0
  60. data/lib/datadog_api_client/v2/models/entity_response_included_related_entity.rb +1 -1
  61. data/lib/datadog_api_client/v2/models/entity_response_included_related_entity_type.rb +26 -0
  62. data/lib/datadog_api_client/v2/models/entity_response_included_schema.rb +1 -1
  63. data/lib/datadog_api_client/v2/models/entity_response_included_schema_type.rb +26 -0
  64. data/lib/datadog_api_client/v2/models/entity_v3_datastore_spec.rb +13 -1
  65. data/lib/datadog_api_client/v2/models/entity_v3_queue_spec.rb +13 -1
  66. data/lib/datadog_api_client/v2/models/entity_v3_service_spec.rb +13 -1
  67. data/lib/datadog_api_client/v2/models/github_webhook_trigger.rb +1 -1
  68. data/lib/datadog_api_client/v2/models/github_webhook_trigger_wrapper.rb +1 -1
  69. data/lib/datadog_api_client/v2/models/historical_job_query.rb +11 -1
  70. data/lib/datadog_api_client/v2/models/incident_trigger.rb +1 -1
  71. data/lib/datadog_api_client/v2/models/incident_trigger_wrapper.rb +1 -1
  72. data/lib/datadog_api_client/v2/models/interface_attributes.rb +13 -1
  73. data/lib/datadog_api_client/v2/models/layer.rb +135 -0
  74. data/lib/datadog_api_client/v2/models/layer_attributes.rb +157 -0
  75. data/lib/datadog_api_client/v2/models/layer_attributes_interval.rb +144 -0
  76. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items.rb +136 -0
  77. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_end_day.rb +32 -0
  78. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_start_day.rb +32 -0
  79. data/lib/datadog_api_client/v2/models/layer_relationships.rb +105 -0
  80. data/lib/datadog_api_client/v2/models/layer_relationships_members.rb +107 -0
  81. data/lib/datadog_api_client/v2/models/layer_relationships_members_data_items.rb +116 -0
  82. data/lib/datadog_api_client/v2/models/layer_relationships_members_data_items_type.rb +26 -0
  83. data/lib/datadog_api_client/v2/models/layer_type.rb +26 -0
  84. data/lib/datadog_api_client/v2/models/logs_aggregate_request.rb +1 -1
  85. data/lib/datadog_api_client/v2/models/logs_list_request.rb +1 -1
  86. data/lib/datadog_api_client/v2/models/logs_query_options.rb +4 -1
  87. data/lib/datadog_api_client/v2/models/monitor_trigger.rb +1 -1
  88. data/lib/datadog_api_client/v2/models/monitor_trigger_wrapper.rb +1 -1
  89. data/lib/datadog_api_client/v2/models/notebook_trigger_wrapper.rb +135 -0
  90. data/lib/datadog_api_client/v2/models/observability_pipeline.rb +123 -0
  91. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +211 -0
  92. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor_type.rb +26 -0
  93. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +171 -0
  94. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +62 -0
  95. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +67 -0
  96. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +63 -0
  97. data/lib/datadog_api_client/v2/models/observability_pipeline_create_request.rb +123 -0
  98. data/lib/datadog_api_client/v2/models/observability_pipeline_create_request_data.rb +144 -0
  99. data/lib/datadog_api_client/v2/models/observability_pipeline_data.rb +165 -0
  100. data/lib/datadog_api_client/v2/models/observability_pipeline_data_attributes.rb +144 -0
  101. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +154 -0
  102. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source_type.rb +26 -0
  103. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_logs_destination.rb +167 -0
  104. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_logs_destination_type.rb +26 -0
  105. data/lib/datadog_api_client/v2/models/observability_pipeline_field_value.rb +144 -0
  106. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +188 -0
  107. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor_type.rb +26 -0
  108. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +220 -0
  109. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source_librdkafka_option.rb +144 -0
  110. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source_sasl.rb +105 -0
  111. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source_type.rb +26 -0
  112. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +209 -0
  113. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor_type.rb +26 -0
  114. data/lib/datadog_api_client/v2/models/observability_pipeline_pipeline_kafka_source_sasl_mechanism.rb +28 -0
  115. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +285 -0
  116. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_limit.rb +144 -0
  117. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_limit_enforce_type.rb +27 -0
  118. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_override.rb +146 -0
  119. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_type.rb +26 -0
  120. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +211 -0
  121. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor_type.rb +26 -0
  122. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +211 -0
  123. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor_field.rb +165 -0
  124. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor_type.rb +26 -0
  125. data/lib/datadog_api_client/v2/models/observability_pipeline_tls.rb +143 -0
  126. data/lib/datadog_api_client/v2/models/retention_filter_all_attributes.rb +16 -5
  127. data/lib/datadog_api_client/v2/models/retention_filter_attributes.rb +16 -5
  128. data/lib/datadog_api_client/v2/models/retention_filter_create_attributes.rb +16 -5
  129. data/lib/datadog_api_client/v2/models/retention_filter_update_attributes.rb +16 -5
  130. data/lib/datadog_api_client/v2/models/rum_retention_filter_create_data.rb +1 -11
  131. data/lib/datadog_api_client/v2/models/rum_retention_filter_data.rb +1 -11
  132. data/lib/datadog_api_client/v2/models/rum_retention_filter_update_data.rb +1 -11
  133. data/lib/datadog_api_client/v2/models/rum_retention_filters_order_request.rb +1 -1
  134. data/lib/datadog_api_client/v2/models/rum_retention_filters_response.rb +1 -1
  135. data/lib/datadog_api_client/v2/models/schedule.rb +117 -0
  136. data/lib/datadog_api_client/v2/models/schedule_create_request.rb +123 -0
  137. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +154 -0
  138. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +179 -0
  139. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +231 -0
  140. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_interval.rb +144 -0
  141. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_members_items.rb +105 -0
  142. data/lib/datadog_api_client/v2/models/{rum_retention_filter_meta.rb → schedule_create_request_data_attributes_layers_items_members_items_user.rb} +11 -11
  143. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items.rb +136 -0
  144. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb +32 -0
  145. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb +32 -0
  146. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +105 -0
  147. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships_teams.rb +107 -0
  148. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships_teams_data_items.rb +116 -0
  149. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships_teams_data_items_type.rb +26 -0
  150. data/lib/datadog_api_client/v2/models/schedule_create_request_data_type.rb +26 -0
  151. data/lib/datadog_api_client/v2/models/schedule_data.rb +135 -0
  152. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +127 -0
  153. data/lib/datadog_api_client/v2/models/schedule_data_included_item.rb +65 -0
  154. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +115 -0
  155. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers.rb +107 -0
  156. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers_data_items.rb +115 -0
  157. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers_data_items_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/schedule_data_relationships_teams.rb +107 -0
  159. data/lib/datadog_api_client/v2/models/schedule_data_relationships_teams_data_items.rb +115 -0
  160. data/lib/datadog_api_client/v2/models/schedule_data_relationships_teams_data_items_type.rb +26 -0
  161. data/lib/datadog_api_client/v2/models/schedule_data_type.rb +26 -0
  162. data/lib/datadog_api_client/v2/models/schedule_member.rb +125 -0
  163. data/lib/datadog_api_client/v2/models/schedule_member_relationships.rb +105 -0
  164. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user.rb +105 -0
  165. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user_data.rb +115 -0
  166. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user_data_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/schedule_member_type.rb +26 -0
  168. data/lib/datadog_api_client/v2/models/schedule_trigger.rb +1 -1
  169. data/lib/datadog_api_client/v2/models/schedule_trigger_wrapper.rb +1 -1
  170. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +123 -0
  171. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +175 -0
  172. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +179 -0
  173. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +180 -0
  174. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_interval.rb +144 -0
  175. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_members_items.rb +106 -0
  176. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_members_items_user.rb +105 -0
  177. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items.rb +136 -0
  178. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +32 -0
  179. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +32 -0
  180. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +105 -0
  181. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships_teams.rb +107 -0
  182. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships_teams_data_items.rb +115 -0
  183. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships_teams_data_items_type.rb +26 -0
  184. data/lib/datadog_api_client/v2/models/schedule_update_request_data_type.rb +26 -0
  185. data/lib/datadog_api_client/v2/models/schedule_user.rb +125 -0
  186. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +115 -0
  187. data/lib/datadog_api_client/v2/models/schedule_user_type.rb +26 -0
  188. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options.rb +13 -3
  189. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_type.rb +1 -0
  190. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +31 -0
  191. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +11 -1
  192. data/lib/datadog_api_client/v2/models/security_trigger.rb +1 -1
  193. data/lib/datadog_api_client/v2/models/security_trigger_wrapper.rb +1 -1
  194. data/lib/datadog_api_client/v2/models/self_service_trigger_wrapper.rb +135 -0
  195. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2.rb +1 -1
  196. data/lib/datadog_api_client/v2/models/single_aggregated_connection_response_array.rb +107 -0
  197. data/lib/datadog_api_client/v2/models/single_aggregated_connection_response_data.rb +125 -0
  198. data/lib/datadog_api_client/v2/models/single_aggregated_connection_response_data_attributes.rb +215 -0
  199. data/lib/datadog_api_client/v2/models/single_aggregated_connection_response_data_type.rb +26 -0
  200. data/lib/datadog_api_client/v2/models/slack_trigger_wrapper.rb +1 -1
  201. data/lib/datadog_api_client/v2/models/software_catalog_trigger_wrapper.rb +135 -0
  202. data/lib/datadog_api_client/v2/models/team_reference.rb +135 -0
  203. data/lib/datadog_api_client/v2/models/team_reference_attributes.rb +135 -0
  204. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +105 -0
  205. data/lib/datadog_api_client/v2/models/team_reference_relationships_oncall_users.rb +107 -0
  206. data/lib/datadog_api_client/v2/models/team_reference_relationships_oncall_users_data_items.rb +115 -0
  207. data/lib/datadog_api_client/v2/models/team_reference_relationships_oncall_users_data_items_type.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/team_reference_type.rb +26 -0
  209. data/lib/datadog_api_client/v2/models/trigger.rb +4 -0
  210. data/lib/datadog_api_client/v2/models/workflow_trigger_wrapper.rb +1 -1
  211. data/lib/datadog_api_client/version.rb +1 -1
  212. metadata +136 -6
  213. data/examples/v2/action-connection/DeleteActionConnection_2142905164.rb +0 -8
@@ -0,0 +1,127 @@
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
+ # Provides core properties of a schedule object, such as its name, time zone, and tags.
21
+ class ScheduleDataAttributes
22
+ include BaseGenericModel
23
+
24
+ # A short name for the schedule.
25
+ attr_accessor :name
26
+
27
+ # A list of tags associated with this schedule.
28
+ attr_accessor :tags
29
+
30
+ # The time zone in which this schedule operates.
31
+ attr_accessor :time_zone
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'name' => :'name',
40
+ :'tags' => :'tags',
41
+ :'time_zone' => :'time_zone'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'name' => :'String',
50
+ :'tags' => :'Array<String>',
51
+ :'time_zone' => :'String'
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::ScheduleDataAttributes` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'name')
74
+ self.name = attributes[:'name']
75
+ end
76
+
77
+ if attributes.key?(:'tags')
78
+ if (value = attributes[:'tags']).is_a?(Array)
79
+ self.tags = value
80
+ end
81
+ end
82
+
83
+ if attributes.key?(:'time_zone')
84
+ self.time_zone = attributes[:'time_zone']
85
+ end
86
+ end
87
+
88
+ # Returns the object in the form of hash, with additionalProperties support.
89
+ # @return [Hash] Returns the object in the form of hash
90
+ # @!visibility private
91
+ def to_hash
92
+ hash = {}
93
+ self.class.attribute_map.each_pair do |attr, param|
94
+ value = self.send(attr)
95
+ if value.nil?
96
+ is_nullable = self.class.openapi_nullable.include?(attr)
97
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
98
+ end
99
+
100
+ hash[param] = _to_hash(value)
101
+ end
102
+ self.additional_properties.each_pair do |attr, value|
103
+ hash[attr] = value
104
+ end
105
+ hash
106
+ end
107
+
108
+ # Checks equality by comparing each attribute.
109
+ # @param o [Object] Object to be compared
110
+ # @!visibility private
111
+ def ==(o)
112
+ return true if self.equal?(o)
113
+ self.class == o.class &&
114
+ name == o.name &&
115
+ tags == o.tags &&
116
+ time_zone == o.time_zone &&
117
+ additional_properties == o.additional_properties
118
+ end
119
+
120
+ # Calculates hash code according to all attributes.
121
+ # @return [Integer] Hash code
122
+ # @!visibility private
123
+ def hash
124
+ [name, tags, time_zone, additional_properties].hash
125
+ end
126
+ end
127
+ end
@@ -0,0 +1,65 @@
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
+ # Any additional resources related to this schedule, such as teams and layers.
21
+ module ScheduleDataIncludedItem
22
+ class << self
23
+ include BaseOneOfModel
24
+ include BaseOneOfModelNoDiscriminator
25
+
26
+ # List of class defined in oneOf (OpenAPI v3)
27
+ def openapi_one_of
28
+ [
29
+ :'TeamReference',
30
+ :'Layer',
31
+ :'ScheduleMember',
32
+ :'ScheduleUser'
33
+ ]
34
+ end
35
+ # Builds the object
36
+ # @param data [Mixed] Data to be matched against the list of oneOf items
37
+ # @return [Object] Returns the model or the data itself
38
+ def build(data)
39
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
40
+ # Note:
41
+ # - We do not attempt to check whether exactly one item matches.
42
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
43
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
44
+ # - TODO: scalar values are de facto behaving as if they were nullable.
45
+ # - TODO: logging when debugging is set.
46
+ openapi_one_of.each do |klass|
47
+ begin
48
+ next if klass == :AnyType # "nullable: true"
49
+ typed_data = find_and_cast_into_type(klass, data)
50
+ next if typed_data.respond_to?(:_unparsed) && typed_data._unparsed
51
+ return typed_data if typed_data
52
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
53
+ end
54
+ end
55
+
56
+ if openapi_one_of.include?(:AnyType)
57
+ data
58
+ else
59
+ self._unparsed = true
60
+ DatadogAPIClient::UnparsedObject.new(data)
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -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
+ # Groups the relationships for a schedule object, referencing layers and teams.
21
+ class ScheduleDataRelationships
22
+ include BaseGenericModel
23
+
24
+ # Associates layers with this schedule in a data structure.
25
+ attr_accessor :layers
26
+
27
+ # Associates teams with this schedule in a data structure.
28
+ attr_accessor :teams
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
+ :'layers' => :'layers',
37
+ :'teams' => :'teams'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'layers' => :'ScheduleDataRelationshipsLayers',
46
+ :'teams' => :'ScheduleDataRelationshipsTeams'
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::ScheduleDataRelationships` 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?(:'layers')
69
+ self.layers = attributes[:'layers']
70
+ end
71
+
72
+ if attributes.key?(:'teams')
73
+ self.teams = attributes[:'teams']
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
+ layers == o.layers &&
104
+ teams == o.teams &&
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
+ [layers, teams, additional_properties].hash
113
+ end
114
+ end
115
+ 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
+ # Associates layers with this schedule in a data structure.
21
+ class ScheduleDataRelationshipsLayers
22
+ include BaseGenericModel
23
+
24
+ # An array of layer references for this schedule.
25
+ attr_accessor :data
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
+ :'data' => :'data'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'data' => :'Array<ScheduleDataRelationshipsLayersDataItems>'
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::ScheduleDataRelationshipsLayers` 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?(:'data')
64
+ if (value = attributes[:'data']).is_a?(Array)
65
+ self.data = 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
+ data == o.data &&
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
+ [data, additional_properties].hash
105
+ end
106
+ end
107
+ end
@@ -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
+ # Relates a layer to this schedule, identified by `id` and `type` (must be `layers`).
21
+ class ScheduleDataRelationshipsLayersDataItems
22
+ include BaseGenericModel
23
+
24
+ # The unique identifier of the layer in this relationship.
25
+ attr_accessor :id
26
+
27
+ # Layers resource type.
28
+ attr_accessor :type
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'id' => :'id',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'id' => :'String',
46
+ :'type' => :'ScheduleDataRelationshipsLayersDataItemsType'
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::ScheduleDataRelationshipsLayersDataItems` 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?(:'id')
69
+ self.id = attributes[:'id']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
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
+ id == o.id &&
104
+ type == o.type &&
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
+ [id, type, additional_properties].hash
113
+ end
114
+ end
115
+ 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
+ # Layers resource type.
21
+ class ScheduleDataRelationshipsLayersDataItemsType
22
+ include BaseEnumModel
23
+
24
+ LAYERS = "layers".freeze
25
+ end
26
+ 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
+ # Associates teams with this schedule in a data structure.
21
+ class ScheduleDataRelationshipsTeams
22
+ include BaseGenericModel
23
+
24
+ # An array of team references for this schedule.
25
+ attr_accessor :data
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
+ :'data' => :'data'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'data' => :'Array<ScheduleDataRelationshipsTeamsDataItems>'
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::ScheduleDataRelationshipsTeams` 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?(:'data')
64
+ if (value = attributes[:'data']).is_a?(Array)
65
+ self.data = 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
+ data == o.data &&
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
+ [data, additional_properties].hash
105
+ end
106
+ end
107
+ end