vellum_ai 1.3.7 → 1.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a4ccef84bedc151de09d499457e07a910c3e5aa1ce290203e572d6932e1050ce
4
- data.tar.gz: 45b6c6eec1da02fcd458f1722ed27de0a1388b2e37af898499cdcc42cf12aedf
3
+ metadata.gz: cd094c6ca0f72488953792cc922f1725c67be2f3ea8c9dc6f35344a9da41d0aa
4
+ data.tar.gz: 95625584e1ebd8031a59ddabdffbbd19fecfeed9d004f2541be55832cc99e951
5
5
  SHA512:
6
- metadata.gz: 909ca5dbe66c3845ddc238052133fdb6a8d69fb2a46e42e1669f6675de221aebb92e0bada2d787af4f651d720950c1bea087daa51a98a4b9414a5f829c7e4694
7
- data.tar.gz: 950c5a9da6f58eadbbf096f4f7829280e9e78e653135833367450c45e4a9c6af87df699363a9639c8826f21a2beb9df8ddba9a2d24193c53abbe8729004e5192
6
+ metadata.gz: 58426d5c07c9ea4777216895366c934e796adf141269f0749967bdea7cec36f0899a0f0b6838a1dd723f1297021951a661a85cc3c0655fda3070d9d5d48ee24a
7
+ data.tar.gz: 9e18ea16b9e16bb712809f8ffb1eabb151f5dda05fadae8b07aa4aad48979b3300eee39695482172f8ddf65ff43995cf7fb886e86976aac0f1d17c8aa8893170
data/lib/requests.rb CHANGED
@@ -56,7 +56,7 @@ end
56
56
  end
57
57
  # @return [Hash{String => String}]
58
58
  def get_headers
59
- headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.3.7' }
59
+ headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.3.9' }
60
60
  headers["X-API-KEY"] = ((@api_key.is_a? Method) ? @api_key.call : @api_key) unless @api_key.nil?
61
61
  headers
62
62
  end
@@ -107,7 +107,7 @@ end
107
107
  end
108
108
  # @return [Hash{String => String}]
109
109
  def get_headers
110
- headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.3.7' }
110
+ headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.3.9' }
111
111
  headers["X-API-KEY"] = ((@api_key.is_a? Method) ? @api_key.call : @api_key) unless @api_key.nil?
112
112
  headers
113
113
  end
@@ -10,6 +10,8 @@ module Vellum
10
10
  attr_reader :node_definition
11
11
  # @return [Vellum::VellumSdkError]
12
12
  attr_reader :error
13
+ # @return [String]
14
+ attr_reader :stacktrace
13
15
  # @return [OpenStruct] Additional properties unmapped to the current class definition
14
16
  attr_reader :additional_properties
15
17
  # @return [Object]
@@ -20,13 +22,17 @@ module Vellum
20
22
 
21
23
  # @param node_definition [Vellum::VellumCodeResourceDefinition]
22
24
  # @param error [Vellum::VellumSdkError]
25
+ # @param stacktrace [String]
23
26
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
24
27
  # @return [Vellum::NodeExecutionRejectedBody]
25
- def initialize(node_definition:, error:, additional_properties: nil)
28
+ def initialize(node_definition:, error:, stacktrace: OMIT, additional_properties: nil)
26
29
  @node_definition = node_definition
27
30
  @error = error
31
+ @stacktrace = stacktrace if stacktrace != OMIT
28
32
  @additional_properties = additional_properties
29
- @_field_set = { "node_definition": node_definition, "error": error }
33
+ @_field_set = { "node_definition": node_definition, "error": error, "stacktrace": stacktrace }.reject do | _k, v |
34
+ v == OMIT
35
+ end
30
36
  end
31
37
  # Deserialize a JSON object to an instance of NodeExecutionRejectedBody
32
38
  #
@@ -47,9 +53,11 @@ module Vellum
47
53
  else
48
54
  error = nil
49
55
  end
56
+ stacktrace = parsed_json["stacktrace"]
50
57
  new(
51
58
  node_definition: node_definition,
52
59
  error: error,
60
+ stacktrace: stacktrace,
53
61
  additional_properties: struct
54
62
  )
55
63
  end
@@ -68,6 +76,7 @@ module Vellum
68
76
  def self.validate_raw(obj:)
69
77
  Vellum::VellumCodeResourceDefinition.validate_raw(obj: obj.node_definition)
70
78
  Vellum::VellumSdkError.validate_raw(obj: obj.error)
79
+ obj.stacktrace&.is_a?(String) != false || raise("Passed value for field obj.stacktrace is not the expected type, validation failed.")
71
80
  end
72
81
  end
73
82
  end
@@ -5,10 +5,12 @@ require "json"
5
5
 
6
6
  module Vellum
7
7
  class VellumError
8
- # @return [String]
9
- attr_reader :message
10
8
  # @return [Vellum::VellumErrorCodeEnum]
11
9
  attr_reader :code
10
+ # @return [String]
11
+ attr_reader :message
12
+ # @return [Hash{String => Object}]
13
+ attr_reader :raw_data
12
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
13
15
  attr_reader :additional_properties
14
16
  # @return [Object]
@@ -17,15 +19,19 @@ module Vellum
17
19
 
18
20
  OMIT = Object.new
19
21
 
20
- # @param message [String]
21
22
  # @param code [Vellum::VellumErrorCodeEnum]
23
+ # @param message [String]
24
+ # @param raw_data [Hash{String => Object}]
22
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
26
  # @return [Vellum::VellumError]
24
- def initialize(message:, code:, additional_properties: nil)
25
- @message = message
27
+ def initialize(code:, message:, raw_data: OMIT, additional_properties: nil)
26
28
  @code = code
29
+ @message = message
30
+ @raw_data = raw_data if raw_data != OMIT
27
31
  @additional_properties = additional_properties
28
- @_field_set = { "message": message, "code": code }
32
+ @_field_set = { "code": code, "message": message, "raw_data": raw_data }.reject do | _k, v |
33
+ v == OMIT
34
+ end
29
35
  end
30
36
  # Deserialize a JSON object to an instance of VellumError
31
37
  #
@@ -34,11 +40,13 @@ module Vellum
34
40
  def self.from_json(json_object:)
35
41
  struct = JSON.parse(json_object, object_class: OpenStruct)
36
42
  parsed_json = JSON.parse(json_object)
37
- message = parsed_json["message"]
38
43
  code = parsed_json["code"]
44
+ message = parsed_json["message"]
45
+ raw_data = parsed_json["raw_data"]
39
46
  new(
40
- message: message,
41
47
  code: code,
48
+ message: message,
49
+ raw_data: raw_data,
42
50
  additional_properties: struct
43
51
  )
44
52
  end
@@ -55,8 +63,9 @@ module Vellum
55
63
  # @param obj [Object]
56
64
  # @return [Void]
57
65
  def self.validate_raw(obj:)
58
- obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
59
66
  obj.code.is_a?(Vellum::VellumErrorCodeEnum) != false || raise("Passed value for field obj.code is not the expected type, validation failed.")
67
+ obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
68
+ obj.raw_data&.is_a?(Hash) != false || raise("Passed value for field obj.raw_data is not the expected type, validation failed.")
60
69
  end
61
70
  end
62
71
  end
@@ -5,10 +5,12 @@ require "json"
5
5
 
6
6
  module Vellum
7
7
  class VellumErrorRequest
8
- # @return [String]
9
- attr_reader :message
10
8
  # @return [Vellum::VellumErrorCodeEnum]
11
9
  attr_reader :code
10
+ # @return [String]
11
+ attr_reader :message
12
+ # @return [Hash{String => Object}]
13
+ attr_reader :raw_data
12
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
13
15
  attr_reader :additional_properties
14
16
  # @return [Object]
@@ -17,15 +19,19 @@ module Vellum
17
19
 
18
20
  OMIT = Object.new
19
21
 
20
- # @param message [String]
21
22
  # @param code [Vellum::VellumErrorCodeEnum]
23
+ # @param message [String]
24
+ # @param raw_data [Hash{String => Object}]
22
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
26
  # @return [Vellum::VellumErrorRequest]
24
- def initialize(message:, code:, additional_properties: nil)
25
- @message = message
27
+ def initialize(code:, message:, raw_data: OMIT, additional_properties: nil)
26
28
  @code = code
29
+ @message = message
30
+ @raw_data = raw_data if raw_data != OMIT
27
31
  @additional_properties = additional_properties
28
- @_field_set = { "message": message, "code": code }
32
+ @_field_set = { "code": code, "message": message, "raw_data": raw_data }.reject do | _k, v |
33
+ v == OMIT
34
+ end
29
35
  end
30
36
  # Deserialize a JSON object to an instance of VellumErrorRequest
31
37
  #
@@ -34,11 +40,13 @@ module Vellum
34
40
  def self.from_json(json_object:)
35
41
  struct = JSON.parse(json_object, object_class: OpenStruct)
36
42
  parsed_json = JSON.parse(json_object)
37
- message = parsed_json["message"]
38
43
  code = parsed_json["code"]
44
+ message = parsed_json["message"]
45
+ raw_data = parsed_json["raw_data"]
39
46
  new(
40
- message: message,
41
47
  code: code,
48
+ message: message,
49
+ raw_data: raw_data,
42
50
  additional_properties: struct
43
51
  )
44
52
  end
@@ -55,8 +63,9 @@ module Vellum
55
63
  # @param obj [Object]
56
64
  # @return [Void]
57
65
  def self.validate_raw(obj:)
58
- obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
59
66
  obj.code.is_a?(Vellum::VellumErrorCodeEnum) != false || raise("Passed value for field obj.code is not the expected type, validation failed.")
67
+ obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
68
+ obj.raw_data&.is_a?(Hash) != false || raise("Passed value for field obj.raw_data is not the expected type, validation failed.")
60
69
  end
61
70
  end
62
71
  end
@@ -9,6 +9,8 @@ module Vellum
9
9
  attr_reader :message
10
10
  # @return [Vellum::WorkflowExecutionEventErrorCode]
11
11
  attr_reader :code
12
+ # @return [String]
13
+ attr_reader :stacktrace
12
14
  # @return [OpenStruct] Additional properties unmapped to the current class definition
13
15
  attr_reader :additional_properties
14
16
  # @return [Object]
@@ -19,13 +21,17 @@ module Vellum
19
21
 
20
22
  # @param message [String]
21
23
  # @param code [Vellum::WorkflowExecutionEventErrorCode]
24
+ # @param stacktrace [String]
22
25
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
26
  # @return [Vellum::WorkflowEventError]
24
- def initialize(message:, code:, additional_properties: nil)
27
+ def initialize(message:, code:, stacktrace: OMIT, additional_properties: nil)
25
28
  @message = message
26
29
  @code = code
30
+ @stacktrace = stacktrace if stacktrace != OMIT
27
31
  @additional_properties = additional_properties
28
- @_field_set = { "message": message, "code": code }
32
+ @_field_set = { "message": message, "code": code, "stacktrace": stacktrace }.reject do | _k, v |
33
+ v == OMIT
34
+ end
29
35
  end
30
36
  # Deserialize a JSON object to an instance of WorkflowEventError
31
37
  #
@@ -36,9 +42,11 @@ module Vellum
36
42
  parsed_json = JSON.parse(json_object)
37
43
  message = parsed_json["message"]
38
44
  code = parsed_json["code"]
45
+ stacktrace = parsed_json["stacktrace"]
39
46
  new(
40
47
  message: message,
41
48
  code: code,
49
+ stacktrace: stacktrace,
42
50
  additional_properties: struct
43
51
  )
44
52
  end
@@ -57,6 +65,7 @@ module Vellum
57
65
  def self.validate_raw(obj:)
58
66
  obj.message.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
59
67
  obj.code.is_a?(Vellum::WorkflowExecutionEventErrorCode) != false || raise("Passed value for field obj.code is not the expected type, validation failed.")
68
+ obj.stacktrace&.is_a?(String) != false || raise("Passed value for field obj.stacktrace is not the expected type, validation failed.")
60
69
  end
61
70
  end
62
71
  end
@@ -10,6 +10,8 @@ module Vellum
10
10
  attr_reader :workflow_definition
11
11
  # @return [Vellum::VellumSdkError]
12
12
  attr_reader :error
13
+ # @return [String]
14
+ attr_reader :stacktrace
13
15
  # @return [OpenStruct] Additional properties unmapped to the current class definition
14
16
  attr_reader :additional_properties
15
17
  # @return [Object]
@@ -20,13 +22,17 @@ module Vellum
20
22
 
21
23
  # @param workflow_definition [Vellum::VellumCodeResourceDefinition]
22
24
  # @param error [Vellum::VellumSdkError]
25
+ # @param stacktrace [String]
23
26
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
24
27
  # @return [Vellum::WorkflowExecutionRejectedBody]
25
- def initialize(workflow_definition:, error:, additional_properties: nil)
28
+ def initialize(workflow_definition:, error:, stacktrace: OMIT, additional_properties: nil)
26
29
  @workflow_definition = workflow_definition
27
30
  @error = error
31
+ @stacktrace = stacktrace if stacktrace != OMIT
28
32
  @additional_properties = additional_properties
29
- @_field_set = { "workflow_definition": workflow_definition, "error": error }
33
+ @_field_set = { "workflow_definition": workflow_definition, "error": error, "stacktrace": stacktrace }.reject do | _k, v |
34
+ v == OMIT
35
+ end
30
36
  end
31
37
  # Deserialize a JSON object to an instance of WorkflowExecutionRejectedBody
32
38
  #
@@ -47,9 +53,11 @@ module Vellum
47
53
  else
48
54
  error = nil
49
55
  end
56
+ stacktrace = parsed_json["stacktrace"]
50
57
  new(
51
58
  workflow_definition: workflow_definition,
52
59
  error: error,
60
+ stacktrace: stacktrace,
53
61
  additional_properties: struct
54
62
  )
55
63
  end
@@ -68,6 +76,7 @@ module Vellum
68
76
  def self.validate_raw(obj:)
69
77
  Vellum::VellumCodeResourceDefinition.validate_raw(obj: obj.workflow_definition)
70
78
  Vellum::VellumSdkError.validate_raw(obj: obj.error)
79
+ obj.stacktrace&.is_a?(String) != false || raise("Passed value for field obj.stacktrace is not the expected type, validation failed.")
71
80
  end
72
81
  end
73
82
  end
@@ -3,6 +3,8 @@ require_relative "../../requests"
3
3
  require_relative "../types/workflow_push_deployment_config_request"
4
4
  require_relative "../types/workflow_push_response"
5
5
  require_relative "../../core/file_utilities"
6
+ require "json"
7
+ require "async"
6
8
  require "async"
7
9
  require "async"
8
10
  require_relative "../../requests"
@@ -92,6 +94,41 @@ end, dry_run: dry_run, strict: strict }.compact
92
94
  end
93
95
  Vellum::WorkflowPushResponse.from_json(json_object: response.body)
94
96
  end
97
+ # Serialize files
98
+ #
99
+ # @param files [Hash{String => Object}]
100
+ # @param request_options [Vellum::RequestOptions]
101
+ # @return [Hash{String => Object}]
102
+ # @example
103
+ # api = Vellum::Client.new(
104
+ # base_url: "https://api.example.com",
105
+ # environment: Vellum::Environment::PRODUCTION,
106
+ # api_key: "YOUR_API_KEY"
107
+ # )
108
+ # api.workflows.serialize_workflow_files(files: { "files": {"key":"value"} })
109
+ def serialize_workflow_files(files:, request_options: nil)
110
+ response = @request_client.conn.post do | req |
111
+ unless request_options&.timeout_in_seconds.nil?
112
+ req.options.timeout = request_options.timeout_in_seconds
113
+ end
114
+ unless request_options&.api_key.nil?
115
+ req.headers["X-API-KEY"] = request_options.api_key
116
+ end
117
+ unless request_options&.api_version.nil?
118
+ req.headers["X-API-Version"] = request_options.api_version
119
+ else
120
+ req.headers["X-API-Version"] = "2025-07-30"
121
+ end
122
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
123
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
124
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
125
+ end
126
+ req.body = { **(request_options&.additional_body_parameters || {}), files: files }.compact
127
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/workflows/serialize"
128
+ end
129
+ parsed_json = JSON.parse(response.body)
130
+ parsed_json
131
+ end
95
132
  end
96
133
  class AsyncWorkflowsClient
97
134
  # @return [Vellum::AsyncRequestClient]
@@ -181,5 +218,42 @@ end
181
218
  Vellum::WorkflowPushResponse.from_json(json_object: response.body)
182
219
  end
183
220
  end
221
+ # Serialize files
222
+ #
223
+ # @param files [Hash{String => Object}]
224
+ # @param request_options [Vellum::RequestOptions]
225
+ # @return [Hash{String => Object}]
226
+ # @example
227
+ # api = Vellum::Client.new(
228
+ # base_url: "https://api.example.com",
229
+ # environment: Vellum::Environment::PRODUCTION,
230
+ # api_key: "YOUR_API_KEY"
231
+ # )
232
+ # api.workflows.serialize_workflow_files(files: { "files": {"key":"value"} })
233
+ def serialize_workflow_files(files:, request_options: nil)
234
+ Async do
235
+ response = @request_client.conn.post do | req |
236
+ unless request_options&.timeout_in_seconds.nil?
237
+ req.options.timeout = request_options.timeout_in_seconds
238
+ end
239
+ unless request_options&.api_key.nil?
240
+ req.headers["X-API-KEY"] = request_options.api_key
241
+ end
242
+ unless request_options&.api_version.nil?
243
+ req.headers["X-API-Version"] = request_options.api_version
244
+ else
245
+ req.headers["X-API-Version"] = "2025-07-30"
246
+ end
247
+ req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
248
+ unless request_options.nil? || request_options&.additional_query_parameters.nil?
249
+ req.params = { **(request_options&.additional_query_parameters || {}) }.compact
250
+ end
251
+ req.body = { **(request_options&.additional_body_parameters || {}), files: files }.compact
252
+ req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/workflows/serialize"
253
+ end
254
+ parsed_json = JSON.parse(response.body)
255
+ parsed_json
256
+ end
257
+ end
184
258
  end
185
259
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vellum_ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.7
4
+ version: 1.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vellum
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-09 00:00:00.000000000 Z
11
+ date: 2025-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday