datadog_api_client 2.41.0 → 2.42.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 (117) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +69 -8
  3. data/.generator/schemas/v2/openapi.yaml +1568 -40
  4. data/CHANGELOG.md +15 -0
  5. data/examples/v2/actions-datastores/BulkWriteDatastoreItems.rb +24 -0
  6. data/examples/v2/actions-datastores/CreateDatastore.rb +15 -0
  7. data/examples/v2/actions-datastores/DeleteDatastore.rb +8 -0
  8. data/examples/v2/actions-datastores/DeleteDatastoreItem.rb +17 -0
  9. data/examples/v2/actions-datastores/GetDatastore.rb +8 -0
  10. data/examples/v2/actions-datastores/ListDatastoreItems.rb +8 -0
  11. data/examples/v2/actions-datastores/ListDatastores.rb +5 -0
  12. data/examples/v2/actions-datastores/UpdateDatastore.rb +18 -0
  13. data/examples/v2/actions-datastores/UpdateDatastoreItem.rb +18 -0
  14. data/examples/v2/aws-integration/CreateAWSAccount.rb +0 -3
  15. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +0 -3
  16. data/examples/v2/aws-integration/CreateNewAWSExternalID.rb +0 -3
  17. data/examples/v2/aws-integration/CreateNewAWSExternalID_364713854.rb +0 -3
  18. data/examples/v2/aws-integration/DeleteAWSAccount.rb +0 -3
  19. data/examples/v2/aws-integration/GetAWSAccount.rb +0 -3
  20. data/examples/v2/aws-integration/ListAWSAccounts.rb +0 -3
  21. data/examples/v2/aws-integration/ListAWSNamespaces.rb +0 -3
  22. data/examples/v2/aws-integration/ListAWSNamespaces_3031307873.rb +0 -3
  23. data/examples/v2/aws-integration/UpdateAWSAccount.rb +0 -3
  24. data/examples/v2/aws-logs-integration/ListAWSLogsServices.rb +0 -3
  25. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_2836340212.rb +52 -0
  26. data/examples/v2/incidents/CreateIncidentNotificationRule.rb +50 -0
  27. data/examples/v2/incidents/CreateIncidentNotificationRule_3029800608.rb +42 -0
  28. data/examples/v2/incidents/DeleteIncidentNotificationRule.rb +8 -0
  29. data/examples/v2/incidents/DeleteIncidentNotificationRule_4148107167.rb +11 -0
  30. data/examples/v2/incidents/GetIncidentNotificationRule.rb +8 -0
  31. data/examples/v2/incidents/GetIncidentNotificationRule_67441486.rb +11 -0
  32. data/examples/v2/incidents/ListIncidentNotificationRules.rb +8 -0
  33. data/examples/v2/incidents/UpdateIncidentNotificationRule.rb +51 -0
  34. data/examples/v2/incidents/UpdateIncidentNotificationRule_1207309457.rb +45 -0
  35. data/lib/datadog_api_client/configuration.rb +5 -8
  36. data/lib/datadog_api_client/inflector.rb +67 -0
  37. data/lib/datadog_api_client/v1/api/aws_integration_api.rb +27 -0
  38. data/lib/datadog_api_client/v1/api/aws_logs_integration_api.rb +9 -0
  39. data/lib/datadog_api_client/v1/models/gcp_account.rb +18 -4
  40. data/lib/datadog_api_client/v1/models/gcp_monitored_resource_config.rb +118 -0
  41. data/lib/datadog_api_client/v1/models/gcp_monitored_resource_config_type.rb +28 -0
  42. data/lib/datadog_api_client/v2/api/actions_datastores_api.rb +655 -0
  43. data/lib/datadog_api_client/v2/api/aws_integration_api.rb +0 -42
  44. data/lib/datadog_api_client/v2/api/aws_logs_integration_api.rb +0 -6
  45. data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +2 -0
  46. data/lib/datadog_api_client/v2/api/incidents_api.rb +367 -0
  47. data/lib/datadog_api_client/v2/api/org_connections_api.rb +8 -0
  48. data/lib/datadog_api_client/v2/models/bulk_put_apps_datastore_items_request.rb +105 -0
  49. data/lib/datadog_api_client/v2/models/bulk_put_apps_datastore_items_request_data.rb +133 -0
  50. data/lib/datadog_api_client/v2/models/bulk_put_apps_datastore_items_request_data_attributes.rb +139 -0
  51. data/lib/datadog_api_client/v2/models/ci_app_create_pipeline_event_request.rb +2 -2
  52. data/lib/datadog_api_client/v2/models/ci_app_create_pipeline_event_request_data_single_or_array.rb +63 -0
  53. data/lib/datadog_api_client/v2/models/create_apps_datastore_request.rb +105 -0
  54. data/lib/datadog_api_client/v2/models/create_apps_datastore_request_data.rb +143 -0
  55. data/lib/datadog_api_client/v2/models/create_apps_datastore_request_data_attributes.rb +180 -0
  56. data/lib/datadog_api_client/v2/models/create_apps_datastore_request_data_attributes_org_access.rb +28 -0
  57. data/lib/datadog_api_client/v2/models/create_apps_datastore_response.rb +105 -0
  58. data/lib/datadog_api_client/v2/models/create_apps_datastore_response_data.rb +133 -0
  59. data/lib/datadog_api_client/v2/models/create_incident_notification_rule_request.rb +123 -0
  60. data/lib/datadog_api_client/v2/models/datastore.rb +105 -0
  61. data/lib/datadog_api_client/v2/models/datastore_array.rb +125 -0
  62. data/lib/datadog_api_client/v2/models/datastore_data.rb +143 -0
  63. data/lib/datadog_api_client/v2/models/datastore_data_attributes.rb +205 -0
  64. data/lib/datadog_api_client/v2/models/datastore_data_type.rb +26 -0
  65. data/lib/datadog_api_client/v2/models/datastore_item_conflict_mode.rb +27 -0
  66. data/lib/datadog_api_client/v2/models/datastore_items_data_type.rb +26 -0
  67. data/lib/datadog_api_client/v2/models/datastore_primary_key_generation_strategy.rb +27 -0
  68. data/lib/datadog_api_client/v2/models/delete_apps_datastore_item_request.rb +105 -0
  69. data/lib/datadog_api_client/v2/models/delete_apps_datastore_item_request_data.rb +133 -0
  70. data/lib/datadog_api_client/v2/models/delete_apps_datastore_item_request_data_attributes.rb +137 -0
  71. data/lib/datadog_api_client/v2/models/delete_apps_datastore_item_response.rb +105 -0
  72. data/lib/datadog_api_client/v2/models/delete_apps_datastore_item_response_data.rb +133 -0
  73. data/lib/datadog_api_client/v2/models/dora_failure_request_attributes.rb +1 -1
  74. data/lib/datadog_api_client/v2/models/gcp_monitored_resource_config.rb +118 -0
  75. data/lib/datadog_api_client/v2/models/gcp_monitored_resource_config_type.rb +28 -0
  76. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +17 -2
  77. data/lib/datadog_api_client/v2/models/incident_notification_rule.rb +135 -0
  78. data/lib/datadog_api_client/v2/models/incident_notification_rule_array.rb +147 -0
  79. data/lib/datadog_api_client/v2/models/incident_notification_rule_array_meta.rb +105 -0
  80. data/lib/datadog_api_client/v2/models/incident_notification_rule_array_meta_page.rb +125 -0
  81. data/lib/datadog_api_client/v2/models/incident_notification_rule_attributes.rb +265 -0
  82. data/lib/datadog_api_client/v2/models/incident_notification_rule_attributes_visibility.rb +28 -0
  83. data/lib/datadog_api_client/v2/models/incident_notification_rule_conditions_items.rb +146 -0
  84. data/lib/datadog_api_client/v2/models/incident_notification_rule_create_attributes.rb +201 -0
  85. data/lib/datadog_api_client/v2/models/incident_notification_rule_create_attributes_visibility.rb +28 -0
  86. data/lib/datadog_api_client/v2/models/incident_notification_rule_create_data.rb +154 -0
  87. data/lib/datadog_api_client/v2/models/incident_notification_rule_create_data_relationships.rb +115 -0
  88. data/lib/datadog_api_client/v2/models/incident_notification_rule_included_items.rb +64 -0
  89. data/lib/datadog_api_client/v2/models/incident_notification_rule_relationships.rb +135 -0
  90. data/lib/datadog_api_client/v2/models/incident_notification_rule_response_data.rb +164 -0
  91. data/lib/datadog_api_client/v2/models/incident_notification_rule_type.rb +26 -0
  92. data/lib/datadog_api_client/v2/models/incident_notification_rule_update_data.rb +175 -0
  93. data/lib/datadog_api_client/v2/models/incident_notification_template_object.rb +164 -0
  94. data/lib/datadog_api_client/v2/models/item_api_payload.rb +105 -0
  95. data/lib/datadog_api_client/v2/models/item_api_payload_array.rb +139 -0
  96. data/lib/datadog_api_client/v2/models/item_api_payload_data.rb +143 -0
  97. data/lib/datadog_api_client/v2/models/item_api_payload_data_attributes.rb +185 -0
  98. data/lib/datadog_api_client/v2/models/item_api_payload_meta.rb +115 -0
  99. data/lib/datadog_api_client/v2/models/item_api_payload_meta_page.rb +125 -0
  100. data/lib/datadog_api_client/v2/models/item_api_payload_meta_schema.rb +117 -0
  101. data/lib/datadog_api_client/v2/models/item_api_payload_meta_schema_field.rb +144 -0
  102. data/lib/datadog_api_client/v2/models/put_apps_datastore_item_response_array.rb +129 -0
  103. data/lib/datadog_api_client/v2/models/put_apps_datastore_item_response_data.rb +133 -0
  104. data/lib/datadog_api_client/v2/models/put_incident_notification_rule_request.rb +123 -0
  105. data/lib/datadog_api_client/v2/models/relationship_to_incident_notification_template.rb +123 -0
  106. data/lib/datadog_api_client/v2/models/relationship_to_incident_notification_template_data.rb +144 -0
  107. data/lib/datadog_api_client/v2/models/security_monitoring_rule_convert_response.rb +11 -1
  108. data/lib/datadog_api_client/v2/models/update_apps_datastore_item_request.rb +105 -0
  109. data/lib/datadog_api_client/v2/models/update_apps_datastore_item_request_data.rb +143 -0
  110. data/lib/datadog_api_client/v2/models/update_apps_datastore_item_request_data_attributes.rb +158 -0
  111. data/lib/datadog_api_client/v2/models/update_apps_datastore_item_request_data_attributes_item_changes.rb +105 -0
  112. data/lib/datadog_api_client/v2/models/update_apps_datastore_item_request_data_type.rb +26 -0
  113. data/lib/datadog_api_client/v2/models/update_apps_datastore_request.rb +105 -0
  114. data/lib/datadog_api_client/v2/models/update_apps_datastore_request_data.rb +143 -0
  115. data/lib/datadog_api_client/v2/models/update_apps_datastore_request_data_attributes.rb +115 -0
  116. data/lib/datadog_api_client/version.rb +1 -1
  117. metadata +87 -1
@@ -0,0 +1,175 @@
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
+ # Notification rule data for an update request.
21
+ class IncidentNotificationRuleUpdateData
22
+ include BaseGenericModel
23
+
24
+ # The attributes for creating a notification rule.
25
+ attr_reader :attributes
26
+
27
+ # The unique identifier of the notification rule.
28
+ attr_reader :id
29
+
30
+ # The definition of `NotificationRuleCreateDataRelationships` object.
31
+ attr_accessor :relationships
32
+
33
+ # Notification rules resource type.
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' => :'IncidentNotificationRuleCreateAttributes',
54
+ :'id' => :'UUID',
55
+ :'relationships' => :'IncidentNotificationRuleCreateDataRelationships',
56
+ :'type' => :'IncidentNotificationRuleType'
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::IncidentNotificationRuleUpdateData` 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 @attributes.nil?
100
+ return false if @id.nil?
101
+ return false if @type.nil?
102
+ true
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param attributes [Object] Object to be assigned
107
+ # @!visibility private
108
+ def attributes=(attributes)
109
+ if attributes.nil?
110
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
111
+ end
112
+ @attributes = attributes
113
+ end
114
+
115
+ # Custom attribute writer method with validation
116
+ # @param id [Object] Object to be assigned
117
+ # @!visibility private
118
+ def id=(id)
119
+ if id.nil?
120
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
121
+ end
122
+ @id = id
123
+ end
124
+
125
+ # Custom attribute writer method with validation
126
+ # @param type [Object] Object to be assigned
127
+ # @!visibility private
128
+ def type=(type)
129
+ if type.nil?
130
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
131
+ end
132
+ @type = type
133
+ end
134
+
135
+ # Returns the object in the form of hash, with additionalProperties support.
136
+ # @return [Hash] Returns the object in the form of hash
137
+ # @!visibility private
138
+ def to_hash
139
+ hash = {}
140
+ self.class.attribute_map.each_pair do |attr, param|
141
+ value = self.send(attr)
142
+ if value.nil?
143
+ is_nullable = self.class.openapi_nullable.include?(attr)
144
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
145
+ end
146
+
147
+ hash[param] = _to_hash(value)
148
+ end
149
+ self.additional_properties.each_pair do |attr, value|
150
+ hash[attr] = value
151
+ end
152
+ hash
153
+ end
154
+
155
+ # Checks equality by comparing each attribute.
156
+ # @param o [Object] Object to be compared
157
+ # @!visibility private
158
+ def ==(o)
159
+ return true if self.equal?(o)
160
+ self.class == o.class &&
161
+ attributes == o.attributes &&
162
+ id == o.id &&
163
+ relationships == o.relationships &&
164
+ type == o.type &&
165
+ additional_properties == o.additional_properties
166
+ end
167
+
168
+ # Calculates hash code according to all attributes.
169
+ # @return [Integer] Hash code
170
+ # @!visibility private
171
+ def hash
172
+ [attributes, id, relationships, type, additional_properties].hash
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,164 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # A notification template object for inclusion in other resources.
21
+ class IncidentNotificationTemplateObject
22
+ include BaseGenericModel
23
+
24
+ # The notification template's attributes.
25
+ attr_accessor :attributes
26
+
27
+ # The unique identifier of the notification template.
28
+ attr_reader :id
29
+
30
+ # The notification template's resource relationships.
31
+ attr_accessor :relationships
32
+
33
+ # Notification templates resource type.
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' => :'IncidentNotificationTemplateAttributes',
54
+ :'id' => :'UUID',
55
+ :'relationships' => :'IncidentNotificationTemplateRelationships',
56
+ :'type' => :'IncidentNotificationTemplateType'
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::IncidentNotificationTemplateObject` 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 @id.nil?
100
+ return false if @type.nil?
101
+ true
102
+ end
103
+
104
+ # Custom attribute writer method with validation
105
+ # @param id [Object] Object to be assigned
106
+ # @!visibility private
107
+ def id=(id)
108
+ if id.nil?
109
+ fail ArgumentError, 'invalid value for "id", id cannot be nil.'
110
+ end
111
+ @id = id
112
+ end
113
+
114
+ # Custom attribute writer method with validation
115
+ # @param type [Object] Object to be assigned
116
+ # @!visibility private
117
+ def type=(type)
118
+ if type.nil?
119
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
120
+ end
121
+ @type = type
122
+ end
123
+
124
+ # Returns the object in the form of hash, with additionalProperties support.
125
+ # @return [Hash] Returns the object in the form of hash
126
+ # @!visibility private
127
+ def to_hash
128
+ hash = {}
129
+ self.class.attribute_map.each_pair do |attr, param|
130
+ value = self.send(attr)
131
+ if value.nil?
132
+ is_nullable = self.class.openapi_nullable.include?(attr)
133
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
134
+ end
135
+
136
+ hash[param] = _to_hash(value)
137
+ end
138
+ self.additional_properties.each_pair do |attr, value|
139
+ hash[attr] = value
140
+ end
141
+ hash
142
+ end
143
+
144
+ # Checks equality by comparing each attribute.
145
+ # @param o [Object] Object to be compared
146
+ # @!visibility private
147
+ def ==(o)
148
+ return true if self.equal?(o)
149
+ self.class == o.class &&
150
+ attributes == o.attributes &&
151
+ id == o.id &&
152
+ relationships == o.relationships &&
153
+ type == o.type &&
154
+ additional_properties == o.additional_properties
155
+ end
156
+
157
+ # Calculates hash code according to all attributes.
158
+ # @return [Integer] Hash code
159
+ # @!visibility private
160
+ def hash
161
+ [attributes, id, relationships, type, additional_properties].hash
162
+ end
163
+ end
164
+ 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
+ # A single datastore item with its content and metadata.
21
+ class ItemApiPayload
22
+ include BaseGenericModel
23
+
24
+ # Core data and metadata for a single datastore item.
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' => :'ItemApiPayloadData'
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::ItemApiPayload` 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
@@ -0,0 +1,139 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # A collection of datastore items with pagination and schema metadata.
21
+ class ItemApiPayloadArray
22
+ include BaseGenericModel
23
+
24
+ # An array of datastore items with their content and metadata.
25
+ attr_reader :data
26
+
27
+ # Additional metadata about a collection of datastore items, including pagination and schema information.
28
+ attr_accessor :meta
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
+ :'data' => :'data',
37
+ :'meta' => :'meta'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'data' => :'Array<ItemApiPayloadData>',
46
+ :'meta' => :'ItemApiPayloadMeta'
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::ItemApiPayloadArray` 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?(:'data')
69
+ if (value = attributes[:'data']).is_a?(Array)
70
+ self.data = value
71
+ end
72
+ end
73
+
74
+ if attributes.key?(:'meta')
75
+ self.meta = attributes[:'meta']
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 @data.nil?
84
+ return false if @data.length > 100
85
+ true
86
+ end
87
+
88
+ # Custom attribute writer method with validation
89
+ # @param data [Object] Object to be assigned
90
+ # @!visibility private
91
+ def data=(data)
92
+ if data.nil?
93
+ fail ArgumentError, 'invalid value for "data", data cannot be nil.'
94
+ end
95
+ if data.length > 100
96
+ fail ArgumentError, 'invalid value for "data", number of items must be less than or equal to 100.'
97
+ end
98
+ @data = data
99
+ end
100
+
101
+ # Returns the object in the form of hash, with additionalProperties support.
102
+ # @return [Hash] Returns the object in the form of hash
103
+ # @!visibility private
104
+ def to_hash
105
+ hash = {}
106
+ self.class.attribute_map.each_pair do |attr, param|
107
+ value = self.send(attr)
108
+ if value.nil?
109
+ is_nullable = self.class.openapi_nullable.include?(attr)
110
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
111
+ end
112
+
113
+ hash[param] = _to_hash(value)
114
+ end
115
+ self.additional_properties.each_pair do |attr, value|
116
+ hash[attr] = value
117
+ end
118
+ hash
119
+ end
120
+
121
+ # Checks equality by comparing each attribute.
122
+ # @param o [Object] Object to be compared
123
+ # @!visibility private
124
+ def ==(o)
125
+ return true if self.equal?(o)
126
+ self.class == o.class &&
127
+ data == o.data &&
128
+ meta == o.meta &&
129
+ additional_properties == o.additional_properties
130
+ end
131
+
132
+ # Calculates hash code according to all attributes.
133
+ # @return [Integer] Hash code
134
+ # @!visibility private
135
+ def hash
136
+ [data, meta, additional_properties].hash
137
+ end
138
+ end
139
+ end