composio 0.1.14 → 0.1.16

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +4 -4
  3. data/README.md +248 -202
  4. data/lib/composio/api/actions_api.rb +191 -4
  5. data/lib/composio/api/admin_api.rb +78 -0
  6. data/lib/composio/api/auth_api.rb +77 -0
  7. data/lib/composio/api/cli_api.rb +266 -0
  8. data/lib/composio/api/connections_api.rb +128 -6
  9. data/lib/composio/api/event_logs_api.rb +0 -318
  10. data/lib/composio/api/integrations_api.rb +8 -4
  11. data/lib/composio/api/logs_api.rb +19 -4
  12. data/lib/composio/api/triggers_api.rb +9 -2
  13. data/lib/composio/models/action_execution_req_dto.rb +31 -4
  14. data/lib/composio/models/actions_query_dto.rb +22 -4
  15. data/lib/composio/models/app_query_dto.rb +1 -1
  16. data/lib/composio/models/client_dto.rb +374 -0
  17. data/lib/composio/models/client_dto_created_at.rb +102 -0
  18. data/lib/composio/models/client_dto_last_subscribed_at.rb +102 -0
  19. data/lib/composio/models/client_dto_updated_at.rb +102 -0
  20. data/lib/composio/models/client_info_res_dto.rb +235 -0
  21. data/lib/composio/models/connection_params.rb +15 -4
  22. data/lib/composio/models/connection_with_app_data.rb +15 -4
  23. data/lib/composio/models/create_connector_payload_dto.rb +12 -7
  24. data/lib/composio/models/expected_input_fields_dto.rb +346 -0
  25. data/lib/composio/models/get_connections_query_dto.rb +15 -4
  26. data/lib/composio/models/get_connector_info_res_dto.rb +1 -1
  27. data/lib/composio/models/get_logs_dto.rb +14 -4
  28. data/lib/composio/models/ingest_data_dto.rb +21 -1
  29. data/lib/composio/models/initiate_connection_payload_dto.rb +28 -18
  30. data/lib/composio/models/list_triggers_query_dto.rb +11 -1
  31. data/lib/composio/models/sdk_error_res_dto.rb +221 -0
  32. data/lib/composio/models/session_info_dto.rb +224 -0
  33. data/lib/composio/models/tools_execute_req_dto.rb +22 -4
  34. data/lib/composio/models/trigger_response_dto.rb +14 -4
  35. data/lib/composio/models/update_connection_labels_payload_dto.rb +222 -0
  36. data/lib/composio/version.rb +1 -1
  37. data/lib/composio.rb +12 -3
  38. data/spec/api/actions_api_spec.rb +25 -0
  39. data/spec/api/admin_api_spec.rb +11 -0
  40. data/spec/api/auth_api_spec.rb +11 -0
  41. data/spec/api/cli_api_spec.rb +63 -0
  42. data/spec/api/connections_api_spec.rb +14 -0
  43. data/spec/api/event_logs_api_spec.rb +0 -43
  44. data/spec/api/logs_api_spec.rb +1 -0
  45. data/spec/api/triggers_api_spec.rb +1 -0
  46. data/spec/models/action_execution_req_dto_spec.rb +18 -0
  47. data/spec/models/actions_query_dto_spec.rb +12 -0
  48. data/spec/models/client_dto_created_at_spec.rb +25 -0
  49. data/spec/models/client_dto_last_subscribed_at_spec.rb +25 -0
  50. data/spec/models/client_dto_spec.rb +100 -0
  51. data/spec/models/client_dto_updated_at_spec.rb +25 -0
  52. data/spec/models/client_info_res_dto_spec.rb +34 -0
  53. data/spec/models/connection_params_spec.rb +6 -0
  54. data/spec/models/connection_with_app_data_spec.rb +6 -0
  55. data/spec/models/create_connector_payload_dto_spec.rb +6 -0
  56. data/spec/models/expected_input_fields_dto_spec.rb +82 -0
  57. data/spec/models/get_connections_query_dto_spec.rb +6 -0
  58. data/spec/models/get_logs_dto_spec.rb +6 -0
  59. data/spec/models/ingest_data_dto_spec.rb +12 -0
  60. data/spec/models/initiate_connection_payload_dto_spec.rb +12 -0
  61. data/spec/models/list_triggers_query_dto_spec.rb +6 -0
  62. data/spec/models/sdk_error_res_dto_spec.rb +28 -0
  63. data/spec/models/session_info_dto_spec.rb +34 -0
  64. data/spec/models/tools_execute_req_dto_spec.rb +12 -0
  65. data/spec/models/trigger_response_dto_spec.rb +6 -0
  66. data/spec/models/update_connection_labels_payload_dto_spec.rb +28 -0
  67. metadata +32 -4
  68. data/spec/api/payment_api_spec.rb +0 -83
@@ -0,0 +1,346 @@
1
+ =begin
2
+ #Composio OpenAPI
3
+
4
+ #Composio SDK: Equip your agent with high-quality tools and build your real-world usecase
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ =end
8
+
9
+ require 'date'
10
+ require 'time'
11
+
12
+ module Composio
13
+ class ExpectedInputFieldsDTO
14
+ # Description of the field
15
+ attr_accessor :description
16
+
17
+ # Name of the field
18
+ attr_accessor :name
19
+
20
+ # Type of the field
21
+ attr_accessor :type
22
+
23
+ # Display name of the field
24
+ attr_accessor :display_name
25
+
26
+ # Default value of the field
27
+ attr_accessor :default
28
+
29
+ # Whether the field is required
30
+ attr_accessor :required
31
+
32
+ # Whether the field is expected from customer
33
+ attr_accessor :expected_from_customer
34
+
35
+ # Whether the field is a secret
36
+ attr_accessor :is_secret
37
+
38
+ # Default value of the field
39
+ attr_accessor :example
40
+
41
+ # Default value of the field
42
+ attr_accessor :x_konfig_original_example
43
+
44
+ # Attribute mapping from ruby-style variable name to JSON key.
45
+ def self.attribute_map
46
+ {
47
+ :'description' => :'description',
48
+ :'name' => :'name',
49
+ :'type' => :'type',
50
+ :'display_name' => :'display_name',
51
+ :'default' => :'default',
52
+ :'required' => :'required',
53
+ :'expected_from_customer' => :'expected_from_customer',
54
+ :'is_secret' => :'is_secret',
55
+ :'example' => :'example',
56
+ :'x_konfig_original_example' => :'x-konfig-original-example'
57
+ }
58
+ end
59
+
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ attribute_map.values
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.openapi_types
67
+ {
68
+ :'description' => :'String',
69
+ :'name' => :'String',
70
+ :'type' => :'String',
71
+ :'display_name' => :'String',
72
+ :'default' => :'Object',
73
+ :'required' => :'Boolean',
74
+ :'expected_from_customer' => :'Boolean',
75
+ :'is_secret' => :'Boolean',
76
+ :'example' => :'Object',
77
+ :'x_konfig_original_example' => :'Object'
78
+ }
79
+ end
80
+
81
+ # List of attributes with nullable: true
82
+ def self.openapi_nullable
83
+ Set.new([
84
+ ])
85
+ end
86
+
87
+ # Initializes the object
88
+ # @param [Hash] attributes Model attributes in the form of hash
89
+ def initialize(attributes = {})
90
+ if (!attributes.is_a?(Hash))
91
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Composio::ExpectedInputFieldsDTO` initialize method"
92
+ end
93
+
94
+ # check to see if the attribute exists and convert string to symbol for hash key
95
+ attributes = attributes.each_with_object({}) { |(k, v), h|
96
+ if (!self.class.attribute_map.key?(k.to_sym))
97
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Composio::ExpectedInputFieldsDTO`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
98
+ end
99
+ h[k.to_sym] = v
100
+ }
101
+
102
+ if attributes.key?(:'description')
103
+ self.description = attributes[:'description']
104
+ end
105
+
106
+ if attributes.key?(:'name')
107
+ self.name = attributes[:'name']
108
+ end
109
+
110
+ if attributes.key?(:'type')
111
+ self.type = attributes[:'type']
112
+ end
113
+
114
+ if attributes.key?(:'display_name')
115
+ self.display_name = attributes[:'display_name']
116
+ end
117
+
118
+ if attributes.key?(:'default')
119
+ self.default = attributes[:'default']
120
+ end
121
+
122
+ if attributes.key?(:'required')
123
+ self.required = attributes[:'required']
124
+ end
125
+
126
+ if attributes.key?(:'expected_from_customer')
127
+ self.expected_from_customer = attributes[:'expected_from_customer']
128
+ end
129
+
130
+ if attributes.key?(:'is_secret')
131
+ self.is_secret = attributes[:'is_secret']
132
+ end
133
+
134
+ if attributes.key?(:'example')
135
+ self.example = attributes[:'example']
136
+ end
137
+
138
+ if attributes.key?(:'x_konfig_original_example')
139
+ self.x_konfig_original_example = attributes[:'x_konfig_original_example']
140
+ end
141
+ end
142
+
143
+ # Show invalid properties with the reasons. Usually used together with valid?
144
+ # @return Array for valid properties with the reasons
145
+ def list_invalid_properties
146
+ invalid_properties = Array.new
147
+ if @description.nil?
148
+ invalid_properties.push('invalid value for "description", description cannot be nil.')
149
+ end
150
+
151
+ if @name.nil?
152
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
153
+ end
154
+
155
+ if @type.nil?
156
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
157
+ end
158
+
159
+ if @display_name.nil?
160
+ invalid_properties.push('invalid value for "display_name", display_name cannot be nil.')
161
+ end
162
+
163
+ if @default.nil?
164
+ invalid_properties.push('invalid value for "default", default cannot be nil.')
165
+ end
166
+
167
+ if @required.nil?
168
+ invalid_properties.push('invalid value for "required", required cannot be nil.')
169
+ end
170
+
171
+ if @expected_from_customer.nil?
172
+ invalid_properties.push('invalid value for "expected_from_customer", expected_from_customer cannot be nil.')
173
+ end
174
+
175
+ if @is_secret.nil?
176
+ invalid_properties.push('invalid value for "is_secret", is_secret cannot be nil.')
177
+ end
178
+
179
+ invalid_properties
180
+ end
181
+
182
+ # Check to see if the all the properties in the model are valid
183
+ # @return true if the model is valid
184
+ def valid?
185
+ return false if @description.nil?
186
+ return false if @name.nil?
187
+ return false if @type.nil?
188
+ return false if @display_name.nil?
189
+ return false if @default.nil?
190
+ return false if @required.nil?
191
+ return false if @expected_from_customer.nil?
192
+ return false if @is_secret.nil?
193
+ true
194
+ end
195
+
196
+ # Checks equality by comparing each attribute.
197
+ # @param [Object] Object to be compared
198
+ def ==(o)
199
+ return true if self.equal?(o)
200
+ self.class == o.class &&
201
+ description == o.description &&
202
+ name == o.name &&
203
+ type == o.type &&
204
+ display_name == o.display_name &&
205
+ default == o.default &&
206
+ required == o.required &&
207
+ expected_from_customer == o.expected_from_customer &&
208
+ is_secret == o.is_secret &&
209
+ example == o.example &&
210
+ x_konfig_original_example == o.x_konfig_original_example
211
+ end
212
+
213
+ # @see the `==` method
214
+ # @param [Object] Object to be compared
215
+ def eql?(o)
216
+ self == o
217
+ end
218
+
219
+ # Calculates hash code according to all attributes.
220
+ # @return [Integer] Hash code
221
+ def hash
222
+ [description, name, type, display_name, default, required, expected_from_customer, is_secret, example, x_konfig_original_example].hash
223
+ end
224
+
225
+ # Builds the object from hash
226
+ # @param [Hash] attributes Model attributes in the form of hash
227
+ # @return [Object] Returns the model itself
228
+ def self.build_from_hash(attributes)
229
+ new.build_from_hash(attributes)
230
+ end
231
+
232
+ # Builds the object from hash
233
+ # @param [Hash] attributes Model attributes in the form of hash
234
+ # @return [Object] Returns the model itself
235
+ def build_from_hash(attributes)
236
+ return nil unless attributes.is_a?(Hash)
237
+ attributes = attributes.transform_keys(&:to_sym)
238
+ self.class.openapi_types.each_pair do |key, type|
239
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
240
+ self.send("#{key}=", nil)
241
+ elsif type =~ /\AArray<(.*)>/i
242
+ # check to ensure the input is an array given that the attribute
243
+ # is documented as an array but the input is not
244
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
245
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
246
+ end
247
+ elsif !attributes[self.class.attribute_map[key]].nil?
248
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
249
+ end
250
+ end
251
+
252
+ self
253
+ end
254
+
255
+ # Deserializes the data based on type
256
+ # @param string type Data type
257
+ # @param string value Value to be deserialized
258
+ # @return [Object] Deserialized data
259
+ def _deserialize(type, value)
260
+ case type.to_sym
261
+ when :Time
262
+ Time.parse(value)
263
+ when :Date
264
+ Date.parse(value)
265
+ when :String
266
+ value.to_s
267
+ when :Integer
268
+ value.to_i
269
+ when :Float
270
+ value.to_f
271
+ when :Boolean
272
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
273
+ true
274
+ else
275
+ false
276
+ end
277
+ when :Object
278
+ # generic object (usually a Hash), return directly
279
+ value
280
+ when /\AArray<(?<inner_type>.+)>\z/
281
+ inner_type = Regexp.last_match[:inner_type]
282
+ value.map { |v| _deserialize(inner_type, v) }
283
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
284
+ k_type = Regexp.last_match[:k_type]
285
+ v_type = Regexp.last_match[:v_type]
286
+ {}.tap do |hash|
287
+ value.each do |k, v|
288
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
289
+ end
290
+ end
291
+ else # model
292
+ # models (e.g. Pet) or oneOf
293
+ klass = Composio.const_get(type)
294
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
295
+ end
296
+ end
297
+
298
+ # Returns the string representation of the object
299
+ # @return [String] String presentation of the object
300
+ def to_s
301
+ to_hash.to_s
302
+ end
303
+
304
+ # to_body is an alias to to_hash (backward compatibility)
305
+ # @return [Hash] Returns the object in the form of hash
306
+ def to_body
307
+ to_hash
308
+ end
309
+
310
+ # Returns the object in the form of hash
311
+ # @return [Hash] Returns the object in the form of hash
312
+ def to_hash
313
+ hash = {}
314
+ self.class.attribute_map.each_pair do |attr, param|
315
+ value = self.send(attr)
316
+ if value.nil?
317
+ is_nullable = self.class.openapi_nullable.include?(attr)
318
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
319
+ end
320
+
321
+ hash[param] = _to_hash(value)
322
+ end
323
+ hash
324
+ end
325
+
326
+ # Outputs non-array value in the form of hash
327
+ # For object, use to_hash. Otherwise, just return the value
328
+ # @param [Object] value Any valid value
329
+ # @return [Hash] Returns the value in the form of hash
330
+ def _to_hash(value)
331
+ if value.is_a?(Array)
332
+ value.compact.map { |v| _to_hash(v) }
333
+ elsif value.is_a?(Hash)
334
+ {}.tap do |hash|
335
+ value.each { |k, v| hash[k] = _to_hash(v) }
336
+ end
337
+ elsif value.respond_to? :to_hash
338
+ value.to_hash
339
+ else
340
+ value
341
+ end
342
+ end
343
+
344
+ end
345
+
346
+ end
@@ -29,6 +29,8 @@ module Composio
29
29
 
30
30
  attr_accessor :show_disabled
31
31
 
32
+ attr_accessor :labels
33
+
32
34
  # Attribute mapping from ruby-style variable name to JSON key.
33
35
  def self.attribute_map
34
36
  {
@@ -40,7 +42,8 @@ module Composio
40
42
  :'user_uuid' => :'user_uuid',
41
43
  :'show_active_only' => :'showActiveOnly',
42
44
  :'status' => :'status',
43
- :'show_disabled' => :'showDisabled'
45
+ :'show_disabled' => :'showDisabled',
46
+ :'labels' => :'labels'
44
47
  }
45
48
  end
46
49
 
@@ -60,7 +63,8 @@ module Composio
60
63
  :'user_uuid' => :'String',
61
64
  :'show_active_only' => :'Boolean',
62
65
  :'status' => :'String',
63
- :'show_disabled' => :'Boolean'
66
+ :'show_disabled' => :'Boolean',
67
+ :'labels' => :'Array<String>'
64
68
  }
65
69
  end
66
70
 
@@ -120,6 +124,12 @@ module Composio
120
124
  if attributes.key?(:'show_disabled')
121
125
  self.show_disabled = attributes[:'show_disabled']
122
126
  end
127
+
128
+ if attributes.key?(:'labels')
129
+ if (value = attributes[:'labels']).is_a?(Array)
130
+ self.labels = value
131
+ end
132
+ end
123
133
  end
124
134
 
125
135
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -148,7 +158,8 @@ module Composio
148
158
  user_uuid == o.user_uuid &&
149
159
  show_active_only == o.show_active_only &&
150
160
  status == o.status &&
151
- show_disabled == o.show_disabled
161
+ show_disabled == o.show_disabled &&
162
+ labels == o.labels
152
163
  end
153
164
 
154
165
  # @see the `==` method
@@ -160,7 +171,7 @@ module Composio
160
171
  # Calculates hash code according to all attributes.
161
172
  # @return [Integer] Hash code
162
173
  def hash
163
- [page, page_size, app_names, integration_id, connection_id, user_uuid, show_active_only, status, show_disabled].hash
174
+ [page, page_size, app_names, integration_id, connection_id, user_uuid, show_active_only, status, show_disabled, labels].hash
164
175
  end
165
176
 
166
177
  # Builds the object from hash
@@ -91,7 +91,7 @@ module Composio
91
91
  :'app_id' => :'String',
92
92
  :'default_connector_id' => :'String',
93
93
  :'auth_config' => :'Object',
94
- :'expected_input_fields' => :'Array<String>',
94
+ :'expected_input_fields' => :'Array<ExpectedInputFieldsDTO>',
95
95
  :'logo' => :'String',
96
96
  :'app_name' => :'String',
97
97
  :'use_composio_auth' => :'Boolean'
@@ -38,6 +38,9 @@ module Composio
38
38
  # Type of the log
39
39
  attr_accessor :logs_type
40
40
 
41
+ # Session ID of the log
42
+ attr_accessor :session_id
43
+
41
44
  # Attribute mapping from ruby-style variable name to JSON key.
42
45
  def self.attribute_map
43
46
  {
@@ -49,7 +52,8 @@ module Composio
49
52
  :'entity_id' => :'entityId',
50
53
  :'limit' => :'limit',
51
54
  :'cursor' => :'cursor',
52
- :'logs_type' => :'logsType'
55
+ :'logs_type' => :'logsType',
56
+ :'session_id' => :'sessionId'
53
57
  }
54
58
  end
55
59
 
@@ -69,7 +73,8 @@ module Composio
69
73
  :'entity_id' => :'String',
70
74
  :'limit' => :'Float',
71
75
  :'cursor' => :'String',
72
- :'logs_type' => :'String'
76
+ :'logs_type' => :'String',
77
+ :'session_id' => :'String'
73
78
  }
74
79
  end
75
80
 
@@ -131,6 +136,10 @@ module Composio
131
136
  if attributes.key?(:'logs_type')
132
137
  self.logs_type = attributes[:'logs_type']
133
138
  end
139
+
140
+ if attributes.key?(:'session_id')
141
+ self.session_id = attributes[:'session_id']
142
+ end
134
143
  end
135
144
 
136
145
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -159,7 +168,8 @@ module Composio
159
168
  entity_id == o.entity_id &&
160
169
  limit == o.limit &&
161
170
  cursor == o.cursor &&
162
- logs_type == o.logs_type
171
+ logs_type == o.logs_type &&
172
+ session_id == o.session_id
163
173
  end
164
174
 
165
175
  # @see the `==` method
@@ -171,7 +181,7 @@ module Composio
171
181
  # Calculates hash code according to all attributes.
172
182
  # @return [Integer] Hash code
173
183
  def hash
174
- [type, time, status, search, integration_id, entity_id, limit, cursor, logs_type].hash
184
+ [type, time, status, search, integration_id, entity_id, limit, cursor, logs_type, session_id].hash
175
185
  end
176
186
 
177
187
  # Builds the object from hash
@@ -14,6 +14,12 @@ module Composio
14
14
  # Connection ID of the log
15
15
  attr_accessor :connection_id
16
16
 
17
+ # Session ID of the log
18
+ attr_accessor :session_id
19
+
20
+ # Type of the log
21
+ attr_accessor :logs_type
22
+
17
23
  # Entity ID of the log
18
24
  attr_accessor :entity_id
19
25
 
@@ -33,6 +39,8 @@ module Composio
33
39
  def self.attribute_map
34
40
  {
35
41
  :'connection_id' => :'connectionId',
42
+ :'session_id' => :'sessionId',
43
+ :'logs_type' => :'logsType',
36
44
  :'entity_id' => :'entityId',
37
45
  :'provider_name' => :'providerName',
38
46
  :'action_name' => :'actionName',
@@ -51,6 +59,8 @@ module Composio
51
59
  def self.openapi_types
52
60
  {
53
61
  :'connection_id' => :'String',
62
+ :'session_id' => :'String',
63
+ :'logs_type' => :'String',
54
64
  :'entity_id' => :'String',
55
65
  :'provider_name' => :'String',
56
66
  :'action_name' => :'String',
@@ -85,6 +95,14 @@ module Composio
85
95
  self.connection_id = attributes[:'connection_id']
86
96
  end
87
97
 
98
+ if attributes.key?(:'session_id')
99
+ self.session_id = attributes[:'session_id']
100
+ end
101
+
102
+ if attributes.key?(:'logs_type')
103
+ self.logs_type = attributes[:'logs_type']
104
+ end
105
+
88
106
  if attributes.key?(:'entity_id')
89
107
  self.entity_id = attributes[:'entity_id']
90
108
  end
@@ -154,6 +172,8 @@ module Composio
154
172
  return true if self.equal?(o)
155
173
  self.class == o.class &&
156
174
  connection_id == o.connection_id &&
175
+ session_id == o.session_id &&
176
+ logs_type == o.logs_type &&
157
177
  entity_id == o.entity_id &&
158
178
  provider_name == o.provider_name &&
159
179
  action_name == o.action_name &&
@@ -171,7 +191,7 @@ module Composio
171
191
  # Calculates hash code according to all attributes.
172
192
  # @return [Integer] Hash code
173
193
  def hash
174
- [connection_id, entity_id, provider_name, action_name, request, response, is_error].hash
194
+ [connection_id, session_id, logs_type, entity_id, provider_name, action_name, request, response, is_error].hash
175
195
  end
176
196
 
177
197
  # Builds the object from hash
@@ -19,13 +19,19 @@ module Composio
19
19
 
20
20
  attr_accessor :user_uuid
21
21
 
22
+ attr_accessor :entity_id
23
+
24
+ attr_accessor :labels
25
+
22
26
  # Attribute mapping from ruby-style variable name to JSON key.
23
27
  def self.attribute_map
24
28
  {
25
29
  :'data' => :'data',
26
30
  :'integration_id' => :'integrationId',
27
31
  :'redirect_uri' => :'redirectUri',
28
- :'user_uuid' => :'userUuid'
32
+ :'user_uuid' => :'userUuid',
33
+ :'entity_id' => :'entityId',
34
+ :'labels' => :'labels'
29
35
  }
30
36
  end
31
37
 
@@ -37,10 +43,12 @@ module Composio
37
43
  # Attribute type mapping.
38
44
  def self.openapi_types
39
45
  {
40
- :'data' => :'String',
46
+ :'data' => :'Object',
41
47
  :'integration_id' => :'String',
42
48
  :'redirect_uri' => :'String',
43
- :'user_uuid' => :'String'
49
+ :'user_uuid' => :'String',
50
+ :'entity_id' => :'String',
51
+ :'labels' => :'Array<String>'
44
52
  }
45
53
  end
46
54
 
@@ -80,14 +88,24 @@ module Composio
80
88
  if attributes.key?(:'user_uuid')
81
89
  self.user_uuid = attributes[:'user_uuid']
82
90
  end
91
+
92
+ if attributes.key?(:'entity_id')
93
+ self.entity_id = attributes[:'entity_id']
94
+ end
95
+
96
+ if attributes.key?(:'labels')
97
+ if (value = attributes[:'labels']).is_a?(Array)
98
+ self.labels = value
99
+ end
100
+ end
83
101
  end
84
102
 
85
103
  # Show invalid properties with the reasons. Usually used together with valid?
86
104
  # @return Array for valid properties with the reasons
87
105
  def list_invalid_properties
88
106
  invalid_properties = Array.new
89
- if !@data.nil? && @data.to_s.length < 1
90
- invalid_properties.push('invalid value for "data", the character length must be great than or equal to 1.')
107
+ if @data.nil?
108
+ invalid_properties.push('invalid value for "data", data cannot be nil.')
91
109
  end
92
110
 
93
111
  if @integration_id.nil?
@@ -104,22 +122,12 @@ module Composio
104
122
  # Check to see if the all the properties in the model are valid
105
123
  # @return true if the model is valid
106
124
  def valid?
107
- return false if !@data.nil? && @data.to_s.length < 1
125
+ return false if @data.nil?
108
126
  return false if @integration_id.nil?
109
127
  return false if @integration_id.to_s.length < 1
110
128
  true
111
129
  end
112
130
 
113
- # Custom attribute writer method with validation
114
- # @param [Object] data Value to be assigned
115
- def data=(data)
116
- if !data.nil? && data.to_s.length < 1
117
- fail ArgumentError, 'invalid value for "data", the character length must be great than or equal to 1.'
118
- end
119
-
120
- @data = data
121
- end
122
-
123
131
  # Custom attribute writer method with validation
124
132
  # @param [Object] integration_id Value to be assigned
125
133
  def integration_id=(integration_id)
@@ -142,7 +150,9 @@ module Composio
142
150
  data == o.data &&
143
151
  integration_id == o.integration_id &&
144
152
  redirect_uri == o.redirect_uri &&
145
- user_uuid == o.user_uuid
153
+ user_uuid == o.user_uuid &&
154
+ entity_id == o.entity_id &&
155
+ labels == o.labels
146
156
  end
147
157
 
148
158
  # @see the `==` method
@@ -154,7 +164,7 @@ module Composio
154
164
  # Calculates hash code according to all attributes.
155
165
  # @return [Integer] Hash code
156
166
  def hash
157
- [data, integration_id, redirect_uri, user_uuid].hash
167
+ [data, integration_id, redirect_uri, user_uuid, entity_id, labels].hash
158
168
  end
159
169
 
160
170
  # Builds the object from hash
@@ -20,6 +20,9 @@ module Composio
20
20
  # IDs of the triggers
21
21
  attr_accessor :trigger_ids
22
22
 
23
+ # Integration ID
24
+ attr_accessor :integration_ids
25
+
23
26
  # Show enabled only
24
27
  attr_accessor :show_enabled_only
25
28
 
@@ -29,6 +32,7 @@ module Composio
29
32
  :'app_names' => :'appNames',
30
33
  :'connected_account_ids' => :'connectedAccountIds',
31
34
  :'trigger_ids' => :'triggerIds',
35
+ :'integration_ids' => :'integrationIds',
32
36
  :'show_enabled_only' => :'showEnabledOnly'
33
37
  }
34
38
  end
@@ -44,6 +48,7 @@ module Composio
44
48
  :'app_names' => :'String',
45
49
  :'connected_account_ids' => :'String',
46
50
  :'trigger_ids' => :'String',
51
+ :'integration_ids' => :'String',
47
52
  :'show_enabled_only' => :'Boolean'
48
53
  }
49
54
  end
@@ -81,6 +86,10 @@ module Composio
81
86
  self.trigger_ids = attributes[:'trigger_ids']
82
87
  end
83
88
 
89
+ if attributes.key?(:'integration_ids')
90
+ self.integration_ids = attributes[:'integration_ids']
91
+ end
92
+
84
93
  if attributes.key?(:'show_enabled_only')
85
94
  self.show_enabled_only = attributes[:'show_enabled_only']
86
95
  end
@@ -107,6 +116,7 @@ module Composio
107
116
  app_names == o.app_names &&
108
117
  connected_account_ids == o.connected_account_ids &&
109
118
  trigger_ids == o.trigger_ids &&
119
+ integration_ids == o.integration_ids &&
110
120
  show_enabled_only == o.show_enabled_only
111
121
  end
112
122
 
@@ -119,7 +129,7 @@ module Composio
119
129
  # Calculates hash code according to all attributes.
120
130
  # @return [Integer] Hash code
121
131
  def hash
122
- [app_names, connected_account_ids, trigger_ids, show_enabled_only].hash
132
+ [app_names, connected_account_ids, trigger_ids, integration_ids, show_enabled_only].hash
123
133
  end
124
134
 
125
135
  # Builds the object from hash