composio 0.1.7 → 0.1.9

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.
@@ -0,0 +1,248 @@
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 Parameter
14
+ attr_accessor :name
15
+
16
+ attr_accessor :_in
17
+
18
+ attr_accessor :value
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'name' => :'name',
24
+ :'_in' => :'in',
25
+ :'value' => :'value'
26
+ }
27
+ end
28
+
29
+ # Returns all the JSON keys this model knows about
30
+ def self.acceptable_attributes
31
+ attribute_map.values
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.openapi_types
36
+ {
37
+ :'name' => :'String',
38
+ :'_in' => :'String',
39
+ :'value' => :'String'
40
+ }
41
+ end
42
+
43
+ # List of attributes with nullable: true
44
+ def self.openapi_nullable
45
+ Set.new([
46
+ ])
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Composio::Parameter` initialize method"
54
+ end
55
+
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Composio::Parameter`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
63
+
64
+ if attributes.key?(:'name')
65
+ self.name = attributes[:'name']
66
+ end
67
+
68
+ if attributes.key?(:'_in')
69
+ self._in = attributes[:'_in']
70
+ end
71
+
72
+ if attributes.key?(:'value')
73
+ self.value = attributes[:'value']
74
+ end
75
+ end
76
+
77
+ # Show invalid properties with the reasons. Usually used together with valid?
78
+ # @return Array for valid properties with the reasons
79
+ def list_invalid_properties
80
+ invalid_properties = Array.new
81
+ if @name.nil?
82
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
83
+ end
84
+
85
+ if @_in.nil?
86
+ invalid_properties.push('invalid value for "_in", _in cannot be nil.')
87
+ end
88
+
89
+ if @value.nil?
90
+ invalid_properties.push('invalid value for "value", value cannot be nil.')
91
+ end
92
+
93
+ invalid_properties
94
+ end
95
+
96
+ # Check to see if the all the properties in the model are valid
97
+ # @return true if the model is valid
98
+ def valid?
99
+ return false if @name.nil?
100
+ return false if @_in.nil?
101
+ return false if @value.nil?
102
+ true
103
+ end
104
+
105
+ # Checks equality by comparing each attribute.
106
+ # @param [Object] Object to be compared
107
+ def ==(o)
108
+ return true if self.equal?(o)
109
+ self.class == o.class &&
110
+ name == o.name &&
111
+ _in == o._in &&
112
+ value == o.value
113
+ end
114
+
115
+ # @see the `==` method
116
+ # @param [Object] Object to be compared
117
+ def eql?(o)
118
+ self == o
119
+ end
120
+
121
+ # Calculates hash code according to all attributes.
122
+ # @return [Integer] Hash code
123
+ def hash
124
+ [name, _in, value].hash
125
+ end
126
+
127
+ # Builds the object from hash
128
+ # @param [Hash] attributes Model attributes in the form of hash
129
+ # @return [Object] Returns the model itself
130
+ def self.build_from_hash(attributes)
131
+ new.build_from_hash(attributes)
132
+ end
133
+
134
+ # Builds the object from hash
135
+ # @param [Hash] attributes Model attributes in the form of hash
136
+ # @return [Object] Returns the model itself
137
+ def build_from_hash(attributes)
138
+ return nil unless attributes.is_a?(Hash)
139
+ attributes = attributes.transform_keys(&:to_sym)
140
+ self.class.openapi_types.each_pair do |key, type|
141
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
142
+ self.send("#{key}=", nil)
143
+ elsif type =~ /\AArray<(.*)>/i
144
+ # check to ensure the input is an array given that the attribute
145
+ # is documented as an array but the input is not
146
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
147
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
148
+ end
149
+ elsif !attributes[self.class.attribute_map[key]].nil?
150
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
151
+ end
152
+ end
153
+
154
+ self
155
+ end
156
+
157
+ # Deserializes the data based on type
158
+ # @param string type Data type
159
+ # @param string value Value to be deserialized
160
+ # @return [Object] Deserialized data
161
+ def _deserialize(type, value)
162
+ case type.to_sym
163
+ when :Time
164
+ Time.parse(value)
165
+ when :Date
166
+ Date.parse(value)
167
+ when :String
168
+ value.to_s
169
+ when :Integer
170
+ value.to_i
171
+ when :Float
172
+ value.to_f
173
+ when :Boolean
174
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
175
+ true
176
+ else
177
+ false
178
+ end
179
+ when :Object
180
+ # generic object (usually a Hash), return directly
181
+ value
182
+ when /\AArray<(?<inner_type>.+)>\z/
183
+ inner_type = Regexp.last_match[:inner_type]
184
+ value.map { |v| _deserialize(inner_type, v) }
185
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
186
+ k_type = Regexp.last_match[:k_type]
187
+ v_type = Regexp.last_match[:v_type]
188
+ {}.tap do |hash|
189
+ value.each do |k, v|
190
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
191
+ end
192
+ end
193
+ else # model
194
+ # models (e.g. Pet) or oneOf
195
+ klass = Composio.const_get(type)
196
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
197
+ end
198
+ end
199
+
200
+ # Returns the string representation of the object
201
+ # @return [String] String presentation of the object
202
+ def to_s
203
+ to_hash.to_s
204
+ end
205
+
206
+ # to_body is an alias to to_hash (backward compatibility)
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_body
209
+ to_hash
210
+ end
211
+
212
+ # Returns the object in the form of hash
213
+ # @return [Hash] Returns the object in the form of hash
214
+ def to_hash
215
+ hash = {}
216
+ self.class.attribute_map.each_pair do |attr, param|
217
+ value = self.send(attr)
218
+ if value.nil?
219
+ is_nullable = self.class.openapi_nullable.include?(attr)
220
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
221
+ end
222
+
223
+ hash[param] = _to_hash(value)
224
+ end
225
+ hash
226
+ end
227
+
228
+ # Outputs non-array value in the form of hash
229
+ # For object, use to_hash. Otherwise, just return the value
230
+ # @param [Object] value Any valid value
231
+ # @return [Hash] Returns the value in the form of hash
232
+ def _to_hash(value)
233
+ if value.is_a?(Array)
234
+ value.compact.map { |v| _to_hash(v) }
235
+ elsif value.is_a?(Hash)
236
+ {}.tap do |hash|
237
+ value.each { |k, v| hash[k] = _to_hash(v) }
238
+ end
239
+ elsif value.respond_to? :to_hash
240
+ value.to_hash
241
+ else
242
+ value
243
+ end
244
+ end
245
+
246
+ end
247
+
248
+ end
@@ -7,5 +7,5 @@ The version of the OpenAPI document: 1.0.0
7
7
  =end
8
8
 
9
9
  module Composio
10
- VERSION = '0.1.7'
10
+ VERSION = '0.1.9'
11
11
  end
data/lib/composio.rb CHANGED
@@ -37,6 +37,7 @@ require 'composio/models/add_repo_url_req_dto'
37
37
  require 'composio/models/add_repo_url_res_dto'
38
38
  require 'composio/models/add_tools_req_dto'
39
39
  require 'composio/models/add_tools_request_dto'
40
+ require 'composio/models/additional_info'
40
41
  require 'composio/models/analytics_data_req_dto'
41
42
  require 'composio/models/analytics_data_res_dto'
42
43
  require 'composio/models/analytics_entity_data_dto'
@@ -58,6 +59,7 @@ require 'composio/models/connector_list_item_dto_updated_at'
58
59
  require 'composio/models/create_checkout_session_req_dto'
59
60
  require 'composio/models/create_connector_payload_dto'
60
61
  require 'composio/models/create_connector_payload_dto_use_composio_auth'
62
+ require 'composio/models/data'
61
63
  require 'composio/models/delete_api_key_req_dto'
62
64
  require 'composio/models/delete_api_key_response_dto'
63
65
  require 'composio/models/delete_row_apidto'
@@ -74,6 +76,7 @@ require 'composio/models/generate_cli_session_req_dto'
74
76
  require 'composio/models/generate_cli_session_res_dto'
75
77
  require 'composio/models/get_active_triggers_query_dto'
76
78
  require 'composio/models/get_cli_session_res_dto'
79
+ require 'composio/models/get_connection_info_response_dto'
77
80
  require 'composio/models/get_connections_query_dto'
78
81
  require 'composio/models/get_connections_response_dto'
79
82
  require 'composio/models/get_connections_result'
@@ -112,6 +115,7 @@ require 'composio/models/o_auth2_callback_query_dto'
112
115
  require 'composio/models/open_api_spec_list_res_dto'
113
116
  require 'composio/models/page_info'
114
117
  require 'composio/models/page_info_dto'
118
+ require 'composio/models/parameter'
115
119
  require 'composio/models/patch_connector_req_dto'
116
120
  require 'composio/models/patch_connector_res_dto'
117
121
  require 'composio/models/plan'
@@ -70,6 +70,17 @@ describe 'ConnectionsApi' do
70
70
  end
71
71
  end
72
72
 
73
+ # unit tests for get_info
74
+ # Get connection info
75
+ # @param connected_account_id
76
+ # @param [Hash] opts the optional parameters
77
+ # @return [GetConnectionInfoResponseDTO]
78
+ describe 'get_info test' do
79
+ it 'should work' do
80
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
81
+ end
82
+ end
83
+
73
84
  # unit tests for initiate
74
85
  # Initiate connection
75
86
  # @param [Hash] opts the optional parameters
@@ -49,6 +49,12 @@ describe Composio::ActionExecutionReqDTO do
49
49
  end
50
50
  end
51
51
 
52
+ describe 'test attribute "auth_config"' do
53
+ it 'should work' do
54
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
55
+ end
56
+ end
57
+
52
58
  describe 'test attribute "text"' do
53
59
  it 'should work' do
54
60
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
@@ -0,0 +1,28 @@
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 'spec_helper'
10
+ require 'json'
11
+ require 'date'
12
+
13
+ # Unit tests for Composio::AdditionalInfo
14
+ describe Composio::AdditionalInfo do
15
+ let(:instance) { Composio::AdditionalInfo.new }
16
+
17
+ describe 'test an instance of AdditionalInfo' do
18
+ it 'should create an instance of AdditionalInfo' do
19
+ expect(instance).to be_instance_of(Composio::AdditionalInfo)
20
+ end
21
+ end
22
+ describe 'test attribute "meta"' do
23
+ it 'should work' do
24
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
25
+ end
26
+ end
27
+
28
+ end
@@ -0,0 +1,34 @@
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 'spec_helper'
10
+ require 'json'
11
+ require 'date'
12
+
13
+ # Unit tests for Composio::Data
14
+ describe Composio::Data do
15
+ let(:instance) { Composio::Data.new }
16
+
17
+ describe 'test an instance of Data' do
18
+ it 'should create an instance of Data' do
19
+ expect(instance).to be_instance_of(Composio::Data)
20
+ end
21
+ end
22
+ describe 'test attribute "field1"' do
23
+ it 'should work' do
24
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
25
+ end
26
+ end
27
+
28
+ describe 'test attribute "field2"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ end
@@ -0,0 +1,40 @@
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 'spec_helper'
10
+ require 'json'
11
+ require 'date'
12
+
13
+ # Unit tests for Composio::GetConnectionInfoResponseDTO
14
+ describe Composio::GetConnectionInfoResponseDTO do
15
+ let(:instance) { Composio::GetConnectionInfoResponseDTO.new }
16
+
17
+ describe 'test an instance of GetConnectionInfoResponseDTO' do
18
+ it 'should create an instance of GetConnectionInfoResponseDTO' do
19
+ expect(instance).to be_instance_of(Composio::GetConnectionInfoResponseDTO)
20
+ end
21
+ end
22
+ describe 'test attribute "parameters"' do
23
+ it 'should work' do
24
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
25
+ end
26
+ end
27
+
28
+ describe 'test attribute "base_url"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ describe 'test attribute "body"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
40
+ end
@@ -0,0 +1,40 @@
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 'spec_helper'
10
+ require 'json'
11
+ require 'date'
12
+
13
+ # Unit tests for Composio::Parameter
14
+ describe Composio::Parameter do
15
+ let(:instance) { Composio::Parameter.new }
16
+
17
+ describe 'test an instance of Parameter' do
18
+ it 'should create an instance of Parameter' do
19
+ expect(instance).to be_instance_of(Composio::Parameter)
20
+ end
21
+ end
22
+ describe 'test attribute "name"' do
23
+ it 'should work' do
24
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
25
+ end
26
+ end
27
+
28
+ describe 'test attribute "_in"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ describe 'test attribute "value"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
40
+ end