datadog_api_client 2.47.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 (165) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +96 -5
  3. data/.generator/schemas/v2/openapi.yaml +2453 -707
  4. data/CHANGELOG.md +20 -0
  5. data/examples/v2/incidents/CreateIncidentAttachment.rb +22 -0
  6. data/examples/v2/incidents/DeleteIncidentAttachment.rb +8 -0
  7. data/examples/v2/incidents/ListIncidentAttachments.rb +1 -1
  8. data/examples/v2/incidents/UpdateIncidentAttachment.rb +20 -0
  9. data/examples/v2/on-call/CreateUserNotificationRule.rb +29 -0
  10. data/examples/v2/on-call/DeleteUserNotificationRule.rb +11 -0
  11. data/examples/v2/on-call/GetUserNotificationRule.rb +14 -0
  12. data/examples/v2/on-call/ListUserNotificationRules.rb +11 -0
  13. data/examples/v2/on-call/UpdateUserNotificationRule.rb +36 -0
  14. data/examples/v2/product-analytics/SubmitProductAnalyticsEvent.rb +24 -0
  15. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_2323193894.rb +48 -0
  16. data/examples/v2/synthetics/PatchGlobalVariable.rb +19 -0
  17. data/examples/v2/teams/CreateTeamNotificationRule.rb +23 -0
  18. data/examples/v2/teams/DeleteTeamConnections.rb +0 -3
  19. data/examples/v2/teams/DeleteTeamNotificationRule.rb +11 -0
  20. data/examples/v2/teams/GetTeamNotificationRule.rb +11 -0
  21. data/examples/v2/teams/GetTeamNotificationRules.rb +8 -0
  22. data/examples/v2/teams/GetTeamSync.rb +0 -3
  23. data/examples/v2/teams/ListTeamConnections.rb +0 -3
  24. data/examples/v2/teams/ListTeamConnections_2418873869.rb +0 -3
  25. data/examples/v2/teams/SyncTeams.rb +0 -3
  26. data/examples/v2/teams/SyncTeams_3215592344.rb +0 -3
  27. data/examples/v2/teams/UpdateTeamNotificationRule.rb +27 -0
  28. data/lib/datadog_api_client/configuration.rb +55 -6
  29. data/lib/datadog_api_client/inflector.rb +92 -20
  30. data/lib/datadog_api_client/v1/api/synthetics_api.rb +3 -3
  31. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -4
  32. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +3 -0
  33. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +6 -0
  34. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +61 -1
  35. data/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb +1 -1
  36. data/lib/datadog_api_client/v1/models/synthetics_test_details.rb +1 -1
  37. data/lib/datadog_api_client/v1/models/synthetics_test_details_without_steps.rb +221 -0
  38. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +8 -8
  39. data/lib/datadog_api_client/v2/api/incidents_api.rb +188 -36
  40. data/lib/datadog_api_client/v2/api/on_call_api.rb +360 -0
  41. data/lib/datadog_api_client/v2/api/product_analytics_api.rb +121 -0
  42. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +4 -0
  43. data/lib/datadog_api_client/v2/api/synthetics_api.rb +79 -0
  44. data/lib/datadog_api_client/v2/api/teams_api.rb +339 -30
  45. data/lib/datadog_api_client/v2/models/attachment.rb +117 -0
  46. data/lib/datadog_api_client/v2/models/{incident_attachments_response.rb → attachment_array.rb} +7 -7
  47. data/lib/datadog_api_client/v2/models/{incident_attachment_data.rb → attachment_data.rb} +8 -8
  48. data/lib/datadog_api_client/v2/models/attachment_data_attributes.rb +125 -0
  49. data/lib/datadog_api_client/v2/models/attachment_data_attributes_attachment.rb +115 -0
  50. data/lib/datadog_api_client/v2/models/{incident_attachment_attachment_type.rb → attachment_data_attributes_attachment_type.rb} +3 -3
  51. data/lib/datadog_api_client/v2/models/{incident_attachment_relationships.rb → attachment_data_relationships.rb} +5 -5
  52. data/lib/datadog_api_client/v2/models/{incident_attachment_update_request.rb → attachment_data_relationships_last_modified_by_user.rb} +6 -11
  53. data/lib/datadog_api_client/v2/models/attachment_data_relationships_last_modified_by_user_data.rb +144 -0
  54. data/lib/datadog_api_client/v2/models/{incident_attachments_response_included_item.rb → attachment_included.rb} +3 -3
  55. data/lib/datadog_api_client/v2/models/case_create_attributes.rb +11 -1
  56. data/lib/datadog_api_client/v2/models/{dora_fetch_response.rb → create_attachment_request.rb} +5 -5
  57. data/lib/datadog_api_client/v2/models/{incident_attachment_update_data.rb → create_attachment_request_data.rb} +6 -6
  58. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes.rb +115 -0
  59. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes_attachment.rb +115 -0
  60. data/lib/datadog_api_client/v2/models/create_on_call_notification_rule_request.rb +123 -0
  61. data/lib/datadog_api_client/v2/models/create_on_call_notification_rule_request_data.rb +143 -0
  62. data/lib/datadog_api_client/v2/models/custom_attribute_type.rb +1 -0
  63. data/lib/datadog_api_client/v2/models/dora_deployment_fetch_response.rb +105 -0
  64. data/lib/datadog_api_client/v2/models/dora_deployment_object.rb +125 -0
  65. data/lib/datadog_api_client/v2/models/dora_deployment_object_attributes.rb +225 -0
  66. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +1 -1
  67. data/lib/datadog_api_client/v2/models/dora_deployments_list_response.rb +107 -0
  68. data/lib/datadog_api_client/v2/models/dora_failure_fetch_response.rb +105 -0
  69. data/lib/datadog_api_client/v2/models/dora_failure_request_attributes.rb +1 -1
  70. data/lib/datadog_api_client/v2/models/{dora_list_response.rb → dora_failures_list_response.rb} +5 -5
  71. data/lib/datadog_api_client/v2/models/{dora_event.rb → dora_incident_object.rb} +8 -8
  72. data/lib/datadog_api_client/v2/models/dora_incident_object_attributes.rb +225 -0
  73. data/lib/datadog_api_client/v2/models/global_variable_data.rb +125 -0
  74. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request.rb +123 -0
  75. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data.rb +115 -0
  76. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data_attributes.rb +107 -0
  77. data/lib/datadog_api_client/v2/models/global_variable_json_patch_type.rb +26 -0
  78. data/lib/datadog_api_client/v2/models/global_variable_response.rb +105 -0
  79. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attachment_type.rb → global_variable_type.rb} +3 -3
  80. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  81. data/lib/datadog_api_client/v2/models/{incident_attachments_postmortem_attributes_attachment_object.rb → json_patch_operation.rb} +40 -30
  82. data/lib/datadog_api_client/v2/models/json_patch_operation_op.rb +31 -0
  83. data/lib/datadog_api_client/v2/models/list_on_call_notification_rules_response.rb +119 -0
  84. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +11 -1
  85. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +11 -1
  86. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_group.rb +11 -1
  87. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor.rb +11 -1
  88. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_tags_processor.rb +11 -1
  89. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +11 -1
  90. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +11 -1
  91. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +11 -1
  92. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +11 -1
  93. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +11 -1
  94. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +11 -1
  95. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +11 -1
  96. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +11 -1
  97. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +11 -1
  98. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +11 -1
  99. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +11 -1
  100. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +11 -1
  101. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +11 -1
  102. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +11 -1
  103. data/lib/datadog_api_client/v2/models/{incident_attachment_update_response.rb → on_call_notification_rule.rb} +8 -11
  104. data/lib/datadog_api_client/v2/models/on_call_notification_rule_attributes.rb +125 -0
  105. data/lib/datadog_api_client/v2/models/on_call_notification_rule_category.rb +27 -0
  106. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship.rb +123 -0
  107. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship_data.rb +115 -0
  108. data/lib/datadog_api_client/v2/models/{incident_attachment_update_attributes.rb → on_call_notification_rule_channel_settings.rb} +3 -4
  109. data/lib/datadog_api_client/v2/models/on_call_notification_rule_data.rb +153 -0
  110. data/lib/datadog_api_client/v2/models/on_call_notification_rule_relationships.rb +105 -0
  111. data/lib/datadog_api_client/v2/models/on_call_notification_rule_request_attributes.rb +125 -0
  112. data/lib/datadog_api_client/v2/models/on_call_notification_rule_type.rb +26 -0
  113. data/lib/datadog_api_client/v2/models/{incident_attachment_attributes.rb → on_call_notification_rules_included.rb} +3 -4
  114. data/lib/datadog_api_client/v2/models/on_call_phone_notification_rule_method.rb +27 -0
  115. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes_attachment_object.rb → on_call_phone_notification_rule_settings.rb} +30 -30
  116. data/lib/datadog_api_client/v2/models/patch_attachment_request.rb +105 -0
  117. data/lib/datadog_api_client/v2/models/patch_attachment_request_data.rb +143 -0
  118. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes.rb +105 -0
  119. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes_attachment.rb +115 -0
  120. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_error.rb +125 -0
  121. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_errors.rb +107 -0
  122. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item.rb +195 -0
  123. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_account.rb +123 -0
  124. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_application.rb +124 -0
  125. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_event.rb +123 -0
  126. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_session.rb +123 -0
  127. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_type.rb +26 -0
  128. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_usr.rb +123 -0
  129. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options.rb +155 -0
  130. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_bucket_duration.rb +32 -0
  131. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_detection_tolerance.rb +31 -0
  132. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_learning_duration.rb +32 -0
  133. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +11 -1
  134. data/lib/datadog_api_client/v2/models/synthetics_global_variable.rb +248 -0
  135. data/lib/datadog_api_client/v2/models/synthetics_global_variable_attributes.rb +107 -0
  136. data/lib/datadog_api_client/v2/models/synthetics_global_variable_options.rb +105 -0
  137. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attributes.rb → synthetics_global_variable_parse_test_options.rb} +44 -35
  138. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parse_test_options_type.rb +29 -0
  139. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parser_type.rb +29 -0
  140. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes.rb → synthetics_global_variable_totp_parameters.rb} +38 -40
  141. data/lib/datadog_api_client/v2/models/synthetics_global_variable_value.rb +126 -0
  142. data/lib/datadog_api_client/v2/models/synthetics_variable_parser.rb +133 -0
  143. data/lib/datadog_api_client/v2/models/team_notification_rule.rb +154 -0
  144. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes.rb +135 -0
  145. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_email.rb +105 -0
  146. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_ms_teams.rb +105 -0
  147. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_pagerduty.rb +105 -0
  148. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_slack.rb +115 -0
  149. data/lib/datadog_api_client/v2/models/team_notification_rule_request.rb +123 -0
  150. data/lib/datadog_api_client/v2/models/team_notification_rule_response.rb +105 -0
  151. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attachment_type.rb → team_notification_rule_type.rb} +3 -3
  152. data/lib/datadog_api_client/v2/models/team_notification_rules_response.rb +117 -0
  153. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta.rb +105 -0
  154. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta_page.rb +184 -0
  155. data/lib/datadog_api_client/v2/models/threat_hunting_job_options.rb +11 -1
  156. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request.rb +123 -0
  157. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_attributes.rb +125 -0
  158. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_data.rb +153 -0
  159. data/lib/datadog_api_client/v2/models/user140420082644000.rb +143 -0
  160. data/lib/datadog_api_client/v2/models/{incident_attachment_related_object.rb → user_type.rb} +2 -2
  161. data/lib/datadog_api_client/version.rb +1 -1
  162. metadata +109 -24
  163. data/examples/v2/incidents/ListIncidentAttachments_2457735435.rb +0 -11
  164. data/examples/v2/incidents/UpdateIncidentAttachments.rb +0 -38
  165. data/examples/v2/incidents/UpdateIncidentAttachments_3881702075.rb +0 -26
@@ -0,0 +1,153 @@
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
+ # Data for an on-call notification rule
21
+ class OnCallNotificationRuleData
22
+ include BaseGenericModel
23
+
24
+ # Attributes for an on-call notification rule.
25
+ attr_accessor :attributes
26
+
27
+ # Unique identifier for the rule
28
+ attr_accessor :id
29
+
30
+ # Relationship object for creating a notification rule
31
+ attr_accessor :relationships
32
+
33
+ # Indicates that the resource is of type 'notification_rules'.
34
+ attr_reader :type
35
+
36
+ attr_accessor :additional_properties
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ # @!visibility private
40
+ def self.attribute_map
41
+ {
42
+ :'attributes' => :'attributes',
43
+ :'id' => :'id',
44
+ :'relationships' => :'relationships',
45
+ :'type' => :'type'
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ # @!visibility private
51
+ def self.openapi_types
52
+ {
53
+ :'attributes' => :'OnCallNotificationRuleAttributes',
54
+ :'id' => :'String',
55
+ :'relationships' => :'OnCallNotificationRuleRelationships',
56
+ :'type' => :'OnCallNotificationRuleType'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param attributes [Hash] Model attributes in the form of hash
62
+ # @!visibility private
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::OnCallNotificationRuleData` initialize method"
66
+ end
67
+
68
+ self.additional_properties = {}
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ self.additional_properties[k.to_sym] = v
73
+ else
74
+ h[k.to_sym] = v
75
+ end
76
+ }
77
+
78
+ if attributes.key?(:'attributes')
79
+ self.attributes = attributes[:'attributes']
80
+ end
81
+
82
+ if attributes.key?(:'id')
83
+ self.id = attributes[:'id']
84
+ end
85
+
86
+ if attributes.key?(:'relationships')
87
+ self.relationships = attributes[:'relationships']
88
+ end
89
+
90
+ if attributes.key?(:'type')
91
+ self.type = attributes[:'type']
92
+ end
93
+ end
94
+
95
+ # Check to see if the all the properties in the model are valid
96
+ # @return true if the model is valid
97
+ # @!visibility private
98
+ def valid?
99
+ return false if @type.nil?
100
+ true
101
+ end
102
+
103
+ # Custom attribute writer method with validation
104
+ # @param type [Object] Object to be assigned
105
+ # @!visibility private
106
+ def type=(type)
107
+ if type.nil?
108
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
109
+ end
110
+ @type = type
111
+ end
112
+
113
+ # Returns the object in the form of hash, with additionalProperties support.
114
+ # @return [Hash] Returns the object in the form of hash
115
+ # @!visibility private
116
+ def to_hash
117
+ hash = {}
118
+ self.class.attribute_map.each_pair do |attr, param|
119
+ value = self.send(attr)
120
+ if value.nil?
121
+ is_nullable = self.class.openapi_nullable.include?(attr)
122
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
123
+ end
124
+
125
+ hash[param] = _to_hash(value)
126
+ end
127
+ self.additional_properties.each_pair do |attr, value|
128
+ hash[attr] = value
129
+ end
130
+ hash
131
+ end
132
+
133
+ # Checks equality by comparing each attribute.
134
+ # @param o [Object] Object to be compared
135
+ # @!visibility private
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ attributes == o.attributes &&
140
+ id == o.id &&
141
+ relationships == o.relationships &&
142
+ type == o.type &&
143
+ additional_properties == o.additional_properties
144
+ end
145
+
146
+ # Calculates hash code according to all attributes.
147
+ # @return [Integer] Hash code
148
+ # @!visibility private
149
+ def hash
150
+ [attributes, id, relationships, type, additional_properties].hash
151
+ end
152
+ end
153
+ 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
+ # Relationship object for creating a notification rule
21
+ class OnCallNotificationRuleRelationships
22
+ include BaseGenericModel
23
+
24
+ # Relationship object for creating a notification rule
25
+ attr_accessor :channel
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
+ :'channel' => :'channel'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'channel' => :'OnCallNotificationRuleChannelRelationship'
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::OnCallNotificationRuleRelationships` 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?(:'channel')
64
+ self.channel = attributes[:'channel']
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
+ channel == o.channel &&
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
+ [channel, additional_properties].hash
103
+ end
104
+ end
105
+ 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
+ # Attributes for creating or modifying an on-call notification rule.
21
+ class OnCallNotificationRuleRequestAttributes
22
+ include BaseGenericModel
23
+
24
+ # Specifies the category a notification rule will apply to
25
+ attr_accessor :category
26
+
27
+ # Defines the configuration for a channel associated with a notification rule
28
+ attr_accessor :channel_settings
29
+
30
+ # The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation
31
+ attr_accessor :delay_minutes
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
+ :'category' => :'category',
40
+ :'channel_settings' => :'channel_settings',
41
+ :'delay_minutes' => :'delay_minutes'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'category' => :'OnCallNotificationRuleCategory',
50
+ :'channel_settings' => :'OnCallNotificationRuleChannelSettings',
51
+ :'delay_minutes' => :'Integer'
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::OnCallNotificationRuleRequestAttributes` 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?(:'category')
74
+ self.category = attributes[:'category']
75
+ end
76
+
77
+ if attributes.key?(:'channel_settings')
78
+ self.channel_settings = attributes[:'channel_settings']
79
+ end
80
+
81
+ if attributes.key?(:'delay_minutes')
82
+ self.delay_minutes = attributes[:'delay_minutes']
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
+ category == o.category &&
113
+ channel_settings == o.channel_settings &&
114
+ delay_minutes == o.delay_minutes &&
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
+ [category, channel_settings, delay_minutes, additional_properties].hash
123
+ end
124
+ end
125
+ 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
+ # Indicates that the resource is of type 'notification_rules'.
21
+ class OnCallNotificationRuleType
22
+ include BaseEnumModel
23
+
24
+ NOTIFICATION_RULES = "notification_rules".freeze
25
+ end
26
+ end
@@ -17,8 +17,8 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # The attributes object for an attachment.
21
- module IncidentAttachmentAttributes
20
+ # Represents additional included resources for a on-call notification rules
21
+ module OnCallNotificationRulesIncluded
22
22
  class << self
23
23
  include BaseOneOfModel
24
24
  include BaseOneOfModelNoDiscriminator
@@ -26,8 +26,7 @@ module DatadogAPIClient::V2
26
26
  # List of class defined in oneOf (OpenAPI v3)
27
27
  def openapi_one_of
28
28
  [
29
- :'IncidentAttachmentPostmortemAttributes',
30
- :'IncidentAttachmentLinkAttributes'
29
+ :'NotificationChannelData'
31
30
  ]
32
31
  end
33
32
  # Builds the object
@@ -0,0 +1,27 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Specifies the method in which a phone is used in a notification rule
21
+ class OnCallPhoneNotificationRuleMethod
22
+ include BaseEnumModel
23
+
24
+ SMS = "sms".freeze
25
+ VOICE = "voice".freeze
26
+ end
27
+ end
@@ -17,15 +17,15 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # The link attachment.
21
- class IncidentAttachmentLinkAttributesAttachmentObject
20
+ # Configuration for using a phone notification channel in a notification rule
21
+ class OnCallPhoneNotificationRuleSettings
22
22
  include BaseGenericModel
23
23
 
24
- # The URL of this link attachment.
25
- attr_reader :document_url
24
+ # Specifies the method in which a phone is used in a notification rule
25
+ attr_reader :method
26
26
 
27
- # The title of this link attachment.
28
- attr_reader :title
27
+ # Indicates that the notification channel is a phone
28
+ attr_reader :type
29
29
 
30
30
  attr_accessor :additional_properties
31
31
 
@@ -33,8 +33,8 @@ module DatadogAPIClient::V2
33
33
  # @!visibility private
34
34
  def self.attribute_map
35
35
  {
36
- :'document_url' => :'documentUrl',
37
- :'title' => :'title'
36
+ :'method' => :'method',
37
+ :'type' => :'type'
38
38
  }
39
39
  end
40
40
 
@@ -42,8 +42,8 @@ module DatadogAPIClient::V2
42
42
  # @!visibility private
43
43
  def self.openapi_types
44
44
  {
45
- :'document_url' => :'String',
46
- :'title' => :'String'
45
+ :'method' => :'OnCallPhoneNotificationRuleMethod',
46
+ :'type' => :'NotificationChannelPhoneConfigType'
47
47
  }
48
48
  end
49
49
 
@@ -52,7 +52,7 @@ module DatadogAPIClient::V2
52
52
  # @!visibility private
53
53
  def initialize(attributes = {})
54
54
  if (!attributes.is_a?(Hash))
55
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::IncidentAttachmentLinkAttributesAttachmentObject` initialize method"
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::OnCallPhoneNotificationRuleSettings` initialize method"
56
56
  end
57
57
 
58
58
  self.additional_properties = {}
@@ -65,12 +65,12 @@ module DatadogAPIClient::V2
65
65
  end
66
66
  }
67
67
 
68
- if attributes.key?(:'document_url')
69
- self.document_url = attributes[:'document_url']
68
+ if attributes.key?(:'method')
69
+ self.method = attributes[:'method']
70
70
  end
71
71
 
72
- if attributes.key?(:'title')
73
- self.title = attributes[:'title']
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
74
  end
75
75
  end
76
76
 
@@ -78,29 +78,29 @@ module DatadogAPIClient::V2
78
78
  # @return true if the model is valid
79
79
  # @!visibility private
80
80
  def valid?
81
- return false if @document_url.nil?
82
- return false if @title.nil?
81
+ return false if @method.nil?
82
+ return false if @type.nil?
83
83
  true
84
84
  end
85
85
 
86
86
  # Custom attribute writer method with validation
87
- # @param document_url [Object] Object to be assigned
87
+ # @param method [Object] Object to be assigned
88
88
  # @!visibility private
89
- def document_url=(document_url)
90
- if document_url.nil?
91
- fail ArgumentError, 'invalid value for "document_url", document_url cannot be nil.'
89
+ def method=(method)
90
+ if method.nil?
91
+ fail ArgumentError, 'invalid value for "method", method cannot be nil.'
92
92
  end
93
- @document_url = document_url
93
+ @method = method
94
94
  end
95
95
 
96
96
  # Custom attribute writer method with validation
97
- # @param title [Object] Object to be assigned
97
+ # @param type [Object] Object to be assigned
98
98
  # @!visibility private
99
- def title=(title)
100
- if title.nil?
101
- fail ArgumentError, 'invalid value for "title", title cannot be nil.'
99
+ def type=(type)
100
+ if type.nil?
101
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
102
102
  end
103
- @title = title
103
+ @type = type
104
104
  end
105
105
 
106
106
  # Returns the object in the form of hash, with additionalProperties support.
@@ -129,8 +129,8 @@ module DatadogAPIClient::V2
129
129
  def ==(o)
130
130
  return true if self.equal?(o)
131
131
  self.class == o.class &&
132
- document_url == o.document_url &&
133
- title == o.title &&
132
+ method == o.method &&
133
+ type == o.type &&
134
134
  additional_properties == o.additional_properties
135
135
  end
136
136
 
@@ -138,7 +138,7 @@ module DatadogAPIClient::V2
138
138
  # @return [Integer] Hash code
139
139
  # @!visibility private
140
140
  def hash
141
- [document_url, title, additional_properties].hash
141
+ [method, type, additional_properties].hash
142
142
  end
143
143
  end
144
144
  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
+ #
21
+ class PatchAttachmentRequest
22
+ include BaseGenericModel
23
+
24
+ #
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' => :'PatchAttachmentRequestData'
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::PatchAttachmentRequest` 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
+ self.data = attributes[:'data']
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
+ data == o.data &&
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
+ [data, additional_properties].hash
103
+ end
104
+ end
105
+ end