vellum_ai 1.7.12 → 1.7.14
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 +4 -4
 - data/lib/requests.rb +2 -2
 - data/lib/types_export.rb +3 -0
 - data/lib/vellum_ai/environments/client.rb +102 -0
 - data/lib/vellum_ai/types/dataset_row_push_request.rb +61 -0
 - data/lib/vellum_ai/types/environment_display_config.rb +53 -0
 - data/lib/vellum_ai/types/environment_read.rb +83 -0
 - data/lib/vellum_ai/types/integration_name.rb +30 -0
 - data/lib/vellum_ai/types/vellum_document.rb +2 -2
 - data/lib/vellum_ai/types/vellum_document_request.rb +2 -2
 - data/lib/vellum_ai/types/vellum_image.rb +2 -2
 - data/lib/vellum_ai/types/vellum_image_request.rb +2 -2
 - data/lib/vellum_ai/types/workflow_execution_fulfilled_body.rb +9 -2
 - data/lib/vellum_ai/workflows/client.rb +11 -4
 - data/lib/vellum_ai.rb +7 -0
 - metadata +6 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 38a73b5c23a3bb027d07020b870879430e109b1dbd5c5207cda7009d4f2a0c30
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 42fd482ae369b04197b6817bf55427371169da327c5bd8777bedd7194fb92dc5
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 406b9ffb3b41a9315e1ed28f3262a900a57942e6b6c51e06a2c050ba6549de1b808ee6c4ff20b2f8aab49248aa5b73db304ed89f50ed8073205ee5ed05ba7176
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 8580fc1abb3c478f17e4978e2a322ee4765f231e8eab15090dbc599ea849b223929979ec76e6aecb6b3666ff3d8c9007bd642fcec52f47269c53d68edf4d763e
         
     | 
    
        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.7. 
     | 
| 
      
 59 
     | 
    
         
            +
                  headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.7.14' }
         
     | 
| 
       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.7. 
     | 
| 
      
 110 
     | 
    
         
            +
                  headers = { "X-Fern-Language": 'Ruby', "X-Fern-SDK-Name": 'vellum_ai', "X-Fern-SDK-Version": '1.7.14' }
         
     | 
| 
       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
         
     | 
    
        data/lib/types_export.rb
    CHANGED
    
    | 
         @@ -121,6 +121,7 @@ require_relative "vellum_ai/types/workflow_execution_resumed_event" 
     | 
|
| 
       121 
121 
     | 
    
         
             
            require_relative "vellum_ai/types/workflow_execution_snapshotted_event"
         
     | 
| 
       122 
122 
     | 
    
         
             
            require_relative "vellum_ai/types/workflow_event"
         
     | 
| 
       123 
123 
     | 
    
         
             
            require_relative "vellum_ai/types/create_workflow_event_request"
         
     | 
| 
      
 124 
     | 
    
         
            +
            require_relative "vellum_ai/types/dataset_row_push_request"
         
     | 
| 
       124 
125 
     | 
    
         
             
            require_relative "vellum_ai/types/delimiter_chunker_config"
         
     | 
| 
       125 
126 
     | 
    
         
             
            require_relative "vellum_ai/types/delimiter_chunker_config_request"
         
     | 
| 
       126 
127 
     | 
    
         
             
            require_relative "vellum_ai/types/delimiter_chunking"
         
     | 
| 
         @@ -164,7 +165,9 @@ require_relative "vellum_ai/types/document_vellum_value_request" 
     | 
|
| 
       164 
165 
     | 
    
         
             
            require_relative "vellum_ai/types/enriched_normalized_completion"
         
     | 
| 
       165 
166 
     | 
    
         
             
            require_relative "vellum_ai/types/entity_status"
         
     | 
| 
       166 
167 
     | 
    
         
             
            require_relative "vellum_ai/types/entity_visibility"
         
     | 
| 
      
 168 
     | 
    
         
            +
            require_relative "vellum_ai/types/environment_display_config"
         
     | 
| 
       167 
169 
     | 
    
         
             
            require_relative "vellum_ai/types/environment_enum"
         
     | 
| 
      
 170 
     | 
    
         
            +
            require_relative "vellum_ai/types/environment_read"
         
     | 
| 
       168 
171 
     | 
    
         
             
            require_relative "vellum_ai/types/ephemeral_prompt_cache_config"
         
     | 
| 
       169 
172 
     | 
    
         
             
            require_relative "vellum_ai/types/ephemeral_prompt_cache_config_type_enum"
         
     | 
| 
       170 
173 
     | 
    
         
             
            require_relative "vellum_ai/types/error_detail_response"
         
     | 
| 
         @@ -0,0 +1,102 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
            require_relative "../../requests"
         
     | 
| 
      
 3 
     | 
    
         
            +
            require_relative "../types/environment_read"
         
     | 
| 
      
 4 
     | 
    
         
            +
            require "async"
         
     | 
| 
      
 5 
     | 
    
         
            +
            require_relative "../../requests"
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            module Vellum
         
     | 
| 
      
 8 
     | 
    
         
            +
              class EnvironmentsClient
         
     | 
| 
      
 9 
     | 
    
         
            +
              # @return [Vellum::RequestClient] 
         
     | 
| 
      
 10 
     | 
    
         
            +
                attr_reader :request_client
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                # @param request_client [Vellum::RequestClient] 
         
     | 
| 
      
 14 
     | 
    
         
            +
                # @return [Vellum::EnvironmentsClient]
         
     | 
| 
      
 15 
     | 
    
         
            +
                def initialize(request_client:)
         
     | 
| 
      
 16 
     | 
    
         
            +
                  @request_client = request_client
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
            # Retrieves information about the active Environment
         
     | 
| 
      
 19 
     | 
    
         
            +
                #
         
     | 
| 
      
 20 
     | 
    
         
            +
                # @param request_options [Vellum::RequestOptions] 
         
     | 
| 
      
 21 
     | 
    
         
            +
                # @return [Vellum::EnvironmentRead]
         
     | 
| 
      
 22 
     | 
    
         
            +
                # @example
         
     | 
| 
      
 23 
     | 
    
         
            +
            #  api = Vellum::Client.new(
         
     | 
| 
      
 24 
     | 
    
         
            +
            #    base_url: "https://api.example.com",
         
     | 
| 
      
 25 
     | 
    
         
            +
            #    environment: Vellum::Environment::PRODUCTION,
         
     | 
| 
      
 26 
     | 
    
         
            +
            #    api_key: "YOUR_API_KEY"
         
     | 
| 
      
 27 
     | 
    
         
            +
            #  )
         
     | 
| 
      
 28 
     | 
    
         
            +
            #  api.environments.environment_identity
         
     | 
| 
      
 29 
     | 
    
         
            +
                def environment_identity(request_options: nil)
         
     | 
| 
      
 30 
     | 
    
         
            +
                  response = @request_client.conn.get do | req |
         
     | 
| 
      
 31 
     | 
    
         
            +
              unless request_options&.timeout_in_seconds.nil?
         
     | 
| 
      
 32 
     | 
    
         
            +
                req.options.timeout = request_options.timeout_in_seconds
         
     | 
| 
      
 33 
     | 
    
         
            +
              end
         
     | 
| 
      
 34 
     | 
    
         
            +
              unless request_options&.api_key.nil?
         
     | 
| 
      
 35 
     | 
    
         
            +
                req.headers["X-API-KEY"] = request_options.api_key
         
     | 
| 
      
 36 
     | 
    
         
            +
              end
         
     | 
| 
      
 37 
     | 
    
         
            +
              unless request_options&.api_version.nil?
         
     | 
| 
      
 38 
     | 
    
         
            +
                req.headers["X-API-Version"] = request_options.api_version
         
     | 
| 
      
 39 
     | 
    
         
            +
              else
         
     | 
| 
      
 40 
     | 
    
         
            +
                req.headers["X-API-Version"] = "2025-07-30"
         
     | 
| 
      
 41 
     | 
    
         
            +
              end
         
     | 
| 
      
 42 
     | 
    
         
            +
              req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
         
     | 
| 
      
 43 
     | 
    
         
            +
              unless request_options.nil? || request_options&.additional_query_parameters.nil?
         
     | 
| 
      
 44 
     | 
    
         
            +
                req.params = { **(request_options&.additional_query_parameters || {}) }.compact
         
     | 
| 
      
 45 
     | 
    
         
            +
              end
         
     | 
| 
      
 46 
     | 
    
         
            +
              unless request_options.nil? || request_options&.additional_body_parameters.nil?
         
     | 
| 
      
 47 
     | 
    
         
            +
                req.body = { **(request_options&.additional_body_parameters || {}) }.compact
         
     | 
| 
      
 48 
     | 
    
         
            +
              end
         
     | 
| 
      
 49 
     | 
    
         
            +
              req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/environments/identity"
         
     | 
| 
      
 50 
     | 
    
         
            +
            end
         
     | 
| 
      
 51 
     | 
    
         
            +
                  Vellum::EnvironmentRead.from_json(json_object: response.body)
         
     | 
| 
      
 52 
     | 
    
         
            +
                end
         
     | 
| 
      
 53 
     | 
    
         
            +
              end
         
     | 
| 
      
 54 
     | 
    
         
            +
              class AsyncEnvironmentsClient
         
     | 
| 
      
 55 
     | 
    
         
            +
              # @return [Vellum::AsyncRequestClient] 
         
     | 
| 
      
 56 
     | 
    
         
            +
                attr_reader :request_client
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                # @param request_client [Vellum::RequestClient] 
         
     | 
| 
      
 60 
     | 
    
         
            +
                # @return [Vellum::AsyncEnvironmentsClient]
         
     | 
| 
      
 61 
     | 
    
         
            +
                def initialize(request_client:)
         
     | 
| 
      
 62 
     | 
    
         
            +
                  @request_client = request_client
         
     | 
| 
      
 63 
     | 
    
         
            +
                end
         
     | 
| 
      
 64 
     | 
    
         
            +
            # Retrieves information about the active Environment
         
     | 
| 
      
 65 
     | 
    
         
            +
                #
         
     | 
| 
      
 66 
     | 
    
         
            +
                # @param request_options [Vellum::RequestOptions] 
         
     | 
| 
      
 67 
     | 
    
         
            +
                # @return [Vellum::EnvironmentRead]
         
     | 
| 
      
 68 
     | 
    
         
            +
                # @example
         
     | 
| 
      
 69 
     | 
    
         
            +
            #  api = Vellum::Client.new(
         
     | 
| 
      
 70 
     | 
    
         
            +
            #    base_url: "https://api.example.com",
         
     | 
| 
      
 71 
     | 
    
         
            +
            #    environment: Vellum::Environment::PRODUCTION,
         
     | 
| 
      
 72 
     | 
    
         
            +
            #    api_key: "YOUR_API_KEY"
         
     | 
| 
      
 73 
     | 
    
         
            +
            #  )
         
     | 
| 
      
 74 
     | 
    
         
            +
            #  api.environments.environment_identity
         
     | 
| 
      
 75 
     | 
    
         
            +
                def environment_identity(request_options: nil)
         
     | 
| 
      
 76 
     | 
    
         
            +
                  Async do
         
     | 
| 
      
 77 
     | 
    
         
            +
                    response = @request_client.conn.get do | req |
         
     | 
| 
      
 78 
     | 
    
         
            +
              unless request_options&.timeout_in_seconds.nil?
         
     | 
| 
      
 79 
     | 
    
         
            +
                req.options.timeout = request_options.timeout_in_seconds
         
     | 
| 
      
 80 
     | 
    
         
            +
              end
         
     | 
| 
      
 81 
     | 
    
         
            +
              unless request_options&.api_key.nil?
         
     | 
| 
      
 82 
     | 
    
         
            +
                req.headers["X-API-KEY"] = request_options.api_key
         
     | 
| 
      
 83 
     | 
    
         
            +
              end
         
     | 
| 
      
 84 
     | 
    
         
            +
              unless request_options&.api_version.nil?
         
     | 
| 
      
 85 
     | 
    
         
            +
                req.headers["X-API-Version"] = request_options.api_version
         
     | 
| 
      
 86 
     | 
    
         
            +
              else
         
     | 
| 
      
 87 
     | 
    
         
            +
                req.headers["X-API-Version"] = "2025-07-30"
         
     | 
| 
      
 88 
     | 
    
         
            +
              end
         
     | 
| 
      
 89 
     | 
    
         
            +
              req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
         
     | 
| 
      
 90 
     | 
    
         
            +
              unless request_options.nil? || request_options&.additional_query_parameters.nil?
         
     | 
| 
      
 91 
     | 
    
         
            +
                req.params = { **(request_options&.additional_query_parameters || {}) }.compact
         
     | 
| 
      
 92 
     | 
    
         
            +
              end
         
     | 
| 
      
 93 
     | 
    
         
            +
              unless request_options.nil? || request_options&.additional_body_parameters.nil?
         
     | 
| 
      
 94 
     | 
    
         
            +
                req.body = { **(request_options&.additional_body_parameters || {}) }.compact
         
     | 
| 
      
 95 
     | 
    
         
            +
              end
         
     | 
| 
      
 96 
     | 
    
         
            +
              req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/environments/identity"
         
     | 
| 
      
 97 
     | 
    
         
            +
            end
         
     | 
| 
      
 98 
     | 
    
         
            +
                    Vellum::EnvironmentRead.from_json(json_object: response.body)
         
     | 
| 
      
 99 
     | 
    
         
            +
                  end
         
     | 
| 
      
 100 
     | 
    
         
            +
                end
         
     | 
| 
      
 101 
     | 
    
         
            +
              end
         
     | 
| 
      
 102 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,61 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
            require "ostruct"
         
     | 
| 
      
 3 
     | 
    
         
            +
            require "json"
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            module Vellum
         
     | 
| 
      
 6 
     | 
    
         
            +
              class DatasetRowPushRequest
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] 
         
     | 
| 
      
 8 
     | 
    
         
            +
                attr_reader :label
         
     | 
| 
      
 9 
     | 
    
         
            +
              # @return [Hash{String => Object}] 
         
     | 
| 
      
 10 
     | 
    
         
            +
                attr_reader :inputs
         
     | 
| 
      
 11 
     | 
    
         
            +
              # @return [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 12 
     | 
    
         
            +
                attr_reader :additional_properties
         
     | 
| 
      
 13 
     | 
    
         
            +
              # @return [Object] 
         
     | 
| 
      
 14 
     | 
    
         
            +
                attr_reader :_field_set
         
     | 
| 
      
 15 
     | 
    
         
            +
                protected :_field_set
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                OMIT = Object.new
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                # @param label [String] 
         
     | 
| 
      
 20 
     | 
    
         
            +
                # @param inputs [Hash{String => Object}] 
         
     | 
| 
      
 21 
     | 
    
         
            +
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 22 
     | 
    
         
            +
                # @return [Vellum::DatasetRowPushRequest]
         
     | 
| 
      
 23 
     | 
    
         
            +
                def initialize(label:, inputs:, additional_properties: nil)
         
     | 
| 
      
 24 
     | 
    
         
            +
                  @label = label
         
     | 
| 
      
 25 
     | 
    
         
            +
                  @inputs = inputs
         
     | 
| 
      
 26 
     | 
    
         
            +
                  @additional_properties = additional_properties
         
     | 
| 
      
 27 
     | 
    
         
            +
                  @_field_set = { "label": label, "inputs": inputs }
         
     | 
| 
      
 28 
     | 
    
         
            +
                end
         
     | 
| 
      
 29 
     | 
    
         
            +
            # Deserialize a JSON object to an instance of DatasetRowPushRequest
         
     | 
| 
      
 30 
     | 
    
         
            +
                #
         
     | 
| 
      
 31 
     | 
    
         
            +
                # @param json_object [String] 
         
     | 
| 
      
 32 
     | 
    
         
            +
                # @return [Vellum::DatasetRowPushRequest]
         
     | 
| 
      
 33 
     | 
    
         
            +
                def self.from_json(json_object:)
         
     | 
| 
      
 34 
     | 
    
         
            +
                  struct = JSON.parse(json_object, object_class: OpenStruct)
         
     | 
| 
      
 35 
     | 
    
         
            +
                  parsed_json = JSON.parse(json_object)
         
     | 
| 
      
 36 
     | 
    
         
            +
                  label = parsed_json["label"]
         
     | 
| 
      
 37 
     | 
    
         
            +
                  inputs = parsed_json["inputs"]
         
     | 
| 
      
 38 
     | 
    
         
            +
                  new(
         
     | 
| 
      
 39 
     | 
    
         
            +
                    label: label,
         
     | 
| 
      
 40 
     | 
    
         
            +
                    inputs: inputs,
         
     | 
| 
      
 41 
     | 
    
         
            +
                    additional_properties: struct
         
     | 
| 
      
 42 
     | 
    
         
            +
                  )
         
     | 
| 
      
 43 
     | 
    
         
            +
                end
         
     | 
| 
      
 44 
     | 
    
         
            +
            # Serialize an instance of DatasetRowPushRequest to a JSON object
         
     | 
| 
      
 45 
     | 
    
         
            +
                #
         
     | 
| 
      
 46 
     | 
    
         
            +
                # @return [String]
         
     | 
| 
      
 47 
     | 
    
         
            +
                def to_json
         
     | 
| 
      
 48 
     | 
    
         
            +
                  @_field_set&.to_json
         
     | 
| 
      
 49 
     | 
    
         
            +
                end
         
     | 
| 
      
 50 
     | 
    
         
            +
            # Leveraged for Union-type generation, validate_raw attempts to parse the given
         
     | 
| 
      
 51 
     | 
    
         
            +
            #  hash and check each fields type against the current object's property
         
     | 
| 
      
 52 
     | 
    
         
            +
            #  definitions.
         
     | 
| 
      
 53 
     | 
    
         
            +
                #
         
     | 
| 
      
 54 
     | 
    
         
            +
                # @param obj [Object] 
         
     | 
| 
      
 55 
     | 
    
         
            +
                # @return [Void]
         
     | 
| 
      
 56 
     | 
    
         
            +
                def self.validate_raw(obj:)
         
     | 
| 
      
 57 
     | 
    
         
            +
                  obj.label.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
         
     | 
| 
      
 58 
     | 
    
         
            +
                  obj.inputs.is_a?(Hash) != false || raise("Passed value for field obj.inputs is not the expected type, validation failed.")
         
     | 
| 
      
 59 
     | 
    
         
            +
                end
         
     | 
| 
      
 60 
     | 
    
         
            +
              end
         
     | 
| 
      
 61 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,53 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
            require "ostruct"
         
     | 
| 
      
 3 
     | 
    
         
            +
            require "json"
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            module Vellum
         
     | 
| 
      
 6 
     | 
    
         
            +
              class EnvironmentDisplayConfig
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] 
         
     | 
| 
      
 8 
     | 
    
         
            +
                attr_reader :color
         
     | 
| 
      
 9 
     | 
    
         
            +
              # @return [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 10 
     | 
    
         
            +
                attr_reader :additional_properties
         
     | 
| 
      
 11 
     | 
    
         
            +
              # @return [Object] 
         
     | 
| 
      
 12 
     | 
    
         
            +
                attr_reader :_field_set
         
     | 
| 
      
 13 
     | 
    
         
            +
                protected :_field_set
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                OMIT = Object.new
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                # @param color [String] 
         
     | 
| 
      
 18 
     | 
    
         
            +
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 19 
     | 
    
         
            +
                # @return [Vellum::EnvironmentDisplayConfig]
         
     | 
| 
      
 20 
     | 
    
         
            +
                def initialize(color: OMIT, additional_properties: nil)
         
     | 
| 
      
 21 
     | 
    
         
            +
                  @color = color if color != OMIT
         
     | 
| 
      
 22 
     | 
    
         
            +
                  @additional_properties = additional_properties
         
     | 
| 
      
 23 
     | 
    
         
            +
                  @_field_set = { "color": color }.reject do | _k, v |
         
     | 
| 
      
 24 
     | 
    
         
            +
              v == OMIT
         
     | 
| 
      
 25 
     | 
    
         
            +
            end
         
     | 
| 
      
 26 
     | 
    
         
            +
                end
         
     | 
| 
      
 27 
     | 
    
         
            +
            # Deserialize a JSON object to an instance of EnvironmentDisplayConfig
         
     | 
| 
      
 28 
     | 
    
         
            +
                #
         
     | 
| 
      
 29 
     | 
    
         
            +
                # @param json_object [String] 
         
     | 
| 
      
 30 
     | 
    
         
            +
                # @return [Vellum::EnvironmentDisplayConfig]
         
     | 
| 
      
 31 
     | 
    
         
            +
                def self.from_json(json_object:)
         
     | 
| 
      
 32 
     | 
    
         
            +
                  struct = JSON.parse(json_object, object_class: OpenStruct)
         
     | 
| 
      
 33 
     | 
    
         
            +
                  parsed_json = JSON.parse(json_object)
         
     | 
| 
      
 34 
     | 
    
         
            +
                  color = parsed_json["color"]
         
     | 
| 
      
 35 
     | 
    
         
            +
                  new(color: color, additional_properties: struct)
         
     | 
| 
      
 36 
     | 
    
         
            +
                end
         
     | 
| 
      
 37 
     | 
    
         
            +
            # Serialize an instance of EnvironmentDisplayConfig to a JSON object
         
     | 
| 
      
 38 
     | 
    
         
            +
                #
         
     | 
| 
      
 39 
     | 
    
         
            +
                # @return [String]
         
     | 
| 
      
 40 
     | 
    
         
            +
                def to_json
         
     | 
| 
      
 41 
     | 
    
         
            +
                  @_field_set&.to_json
         
     | 
| 
      
 42 
     | 
    
         
            +
                end
         
     | 
| 
      
 43 
     | 
    
         
            +
            # Leveraged for Union-type generation, validate_raw attempts to parse the given
         
     | 
| 
      
 44 
     | 
    
         
            +
            #  hash and check each fields type against the current object's property
         
     | 
| 
      
 45 
     | 
    
         
            +
            #  definitions.
         
     | 
| 
      
 46 
     | 
    
         
            +
                #
         
     | 
| 
      
 47 
     | 
    
         
            +
                # @param obj [Object] 
         
     | 
| 
      
 48 
     | 
    
         
            +
                # @return [Void]
         
     | 
| 
      
 49 
     | 
    
         
            +
                def self.validate_raw(obj:)
         
     | 
| 
      
 50 
     | 
    
         
            +
                  obj.color&.is_a?(String) != false || raise("Passed value for field obj.color is not the expected type, validation failed.")
         
     | 
| 
      
 51 
     | 
    
         
            +
                end
         
     | 
| 
      
 52 
     | 
    
         
            +
              end
         
     | 
| 
      
 53 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,83 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
            require_relative "environment_display_config"
         
     | 
| 
      
 3 
     | 
    
         
            +
            require "ostruct"
         
     | 
| 
      
 4 
     | 
    
         
            +
            require "json"
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            module Vellum
         
     | 
| 
      
 7 
     | 
    
         
            +
              class EnvironmentRead
         
     | 
| 
      
 8 
     | 
    
         
            +
              # @return [String] 
         
     | 
| 
      
 9 
     | 
    
         
            +
                attr_reader :id
         
     | 
| 
      
 10 
     | 
    
         
            +
              # @return [String] 
         
     | 
| 
      
 11 
     | 
    
         
            +
                attr_reader :name
         
     | 
| 
      
 12 
     | 
    
         
            +
              # @return [String] 
         
     | 
| 
      
 13 
     | 
    
         
            +
                attr_reader :label
         
     | 
| 
      
 14 
     | 
    
         
            +
              # @return [Vellum::EnvironmentDisplayConfig] 
         
     | 
| 
      
 15 
     | 
    
         
            +
                attr_reader :display_config
         
     | 
| 
      
 16 
     | 
    
         
            +
              # @return [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 17 
     | 
    
         
            +
                attr_reader :additional_properties
         
     | 
| 
      
 18 
     | 
    
         
            +
              # @return [Object] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                attr_reader :_field_set
         
     | 
| 
      
 20 
     | 
    
         
            +
                protected :_field_set
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                OMIT = Object.new
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                # @param id [String] 
         
     | 
| 
      
 25 
     | 
    
         
            +
                # @param name [String] 
         
     | 
| 
      
 26 
     | 
    
         
            +
                # @param label [String] 
         
     | 
| 
      
 27 
     | 
    
         
            +
                # @param display_config [Vellum::EnvironmentDisplayConfig] 
         
     | 
| 
      
 28 
     | 
    
         
            +
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
      
 29 
     | 
    
         
            +
                # @return [Vellum::EnvironmentRead]
         
     | 
| 
      
 30 
     | 
    
         
            +
                def initialize(id: OMIT, name:, label:, display_config: OMIT, additional_properties: nil)
         
     | 
| 
      
 31 
     | 
    
         
            +
                  @id = id if id != OMIT
         
     | 
| 
      
 32 
     | 
    
         
            +
                  @name = name
         
     | 
| 
      
 33 
     | 
    
         
            +
                  @label = label
         
     | 
| 
      
 34 
     | 
    
         
            +
                  @display_config = display_config if display_config != OMIT
         
     | 
| 
      
 35 
     | 
    
         
            +
                  @additional_properties = additional_properties
         
     | 
| 
      
 36 
     | 
    
         
            +
                  @_field_set = { "id": id, "name": name, "label": label, "display_config": display_config }.reject do | _k, v |
         
     | 
| 
      
 37 
     | 
    
         
            +
              v == OMIT
         
     | 
| 
      
 38 
     | 
    
         
            +
            end
         
     | 
| 
      
 39 
     | 
    
         
            +
                end
         
     | 
| 
      
 40 
     | 
    
         
            +
            # Deserialize a JSON object to an instance of EnvironmentRead
         
     | 
| 
      
 41 
     | 
    
         
            +
                #
         
     | 
| 
      
 42 
     | 
    
         
            +
                # @param json_object [String] 
         
     | 
| 
      
 43 
     | 
    
         
            +
                # @return [Vellum::EnvironmentRead]
         
     | 
| 
      
 44 
     | 
    
         
            +
                def self.from_json(json_object:)
         
     | 
| 
      
 45 
     | 
    
         
            +
                  struct = JSON.parse(json_object, object_class: OpenStruct)
         
     | 
| 
      
 46 
     | 
    
         
            +
                  parsed_json = JSON.parse(json_object)
         
     | 
| 
      
 47 
     | 
    
         
            +
                  id = parsed_json["id"]
         
     | 
| 
      
 48 
     | 
    
         
            +
                  name = parsed_json["name"]
         
     | 
| 
      
 49 
     | 
    
         
            +
                  label = parsed_json["label"]
         
     | 
| 
      
 50 
     | 
    
         
            +
                  unless parsed_json["display_config"].nil?
         
     | 
| 
      
 51 
     | 
    
         
            +
                    display_config = parsed_json["display_config"].to_json
         
     | 
| 
      
 52 
     | 
    
         
            +
                    display_config = Vellum::EnvironmentDisplayConfig.from_json(json_object: display_config)
         
     | 
| 
      
 53 
     | 
    
         
            +
                  else
         
     | 
| 
      
 54 
     | 
    
         
            +
                    display_config = nil
         
     | 
| 
      
 55 
     | 
    
         
            +
                  end
         
     | 
| 
      
 56 
     | 
    
         
            +
                  new(
         
     | 
| 
      
 57 
     | 
    
         
            +
                    id: id,
         
     | 
| 
      
 58 
     | 
    
         
            +
                    name: name,
         
     | 
| 
      
 59 
     | 
    
         
            +
                    label: label,
         
     | 
| 
      
 60 
     | 
    
         
            +
                    display_config: display_config,
         
     | 
| 
      
 61 
     | 
    
         
            +
                    additional_properties: struct
         
     | 
| 
      
 62 
     | 
    
         
            +
                  )
         
     | 
| 
      
 63 
     | 
    
         
            +
                end
         
     | 
| 
      
 64 
     | 
    
         
            +
            # Serialize an instance of EnvironmentRead to a JSON object
         
     | 
| 
      
 65 
     | 
    
         
            +
                #
         
     | 
| 
      
 66 
     | 
    
         
            +
                # @return [String]
         
     | 
| 
      
 67 
     | 
    
         
            +
                def to_json
         
     | 
| 
      
 68 
     | 
    
         
            +
                  @_field_set&.to_json
         
     | 
| 
      
 69 
     | 
    
         
            +
                end
         
     | 
| 
      
 70 
     | 
    
         
            +
            # Leveraged for Union-type generation, validate_raw attempts to parse the given
         
     | 
| 
      
 71 
     | 
    
         
            +
            #  hash and check each fields type against the current object's property
         
     | 
| 
      
 72 
     | 
    
         
            +
            #  definitions.
         
     | 
| 
      
 73 
     | 
    
         
            +
                #
         
     | 
| 
      
 74 
     | 
    
         
            +
                # @param obj [Object] 
         
     | 
| 
      
 75 
     | 
    
         
            +
                # @return [Void]
         
     | 
| 
      
 76 
     | 
    
         
            +
                def self.validate_raw(obj:)
         
     | 
| 
      
 77 
     | 
    
         
            +
                  obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
         
     | 
| 
      
 78 
     | 
    
         
            +
                  obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
         
     | 
| 
      
 79 
     | 
    
         
            +
                  obj.label.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
         
     | 
| 
      
 80 
     | 
    
         
            +
                  obj.display_config.nil? || Vellum::EnvironmentDisplayConfig.validate_raw(obj: obj.display_config)
         
     | 
| 
      
 81 
     | 
    
         
            +
                end
         
     | 
| 
      
 82 
     | 
    
         
            +
              end
         
     | 
| 
      
 83 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -5,36 +5,66 @@ module Vellum 
     | 
|
| 
       5 
5 
     | 
    
         
             
            #  * `NOTION` - Notion
         
     | 
| 
       6 
6 
     | 
    
         
             
            #  * `GOOGLE` - Google
         
     | 
| 
       7 
7 
     | 
    
         
             
            #  * `CALENDLY` - Calendly
         
     | 
| 
      
 8 
     | 
    
         
            +
            #  * `CANVA` - Canva
         
     | 
| 
       8 
9 
     | 
    
         
             
            #  * `HUBSPOT` - Hubspot
         
     | 
| 
       9 
10 
     | 
    
         
             
            #  * `LINEAR` - Linear
         
     | 
| 
      
 11 
     | 
    
         
            +
            #  * `LINKEDIN` - LinkedIn
         
     | 
| 
      
 12 
     | 
    
         
            +
            #  * `MAILCHIMP` - Mailchimp
         
     | 
| 
       10 
13 
     | 
    
         
             
            #  * `GITHUB` - Github
         
     | 
| 
       11 
14 
     | 
    
         
             
            #  * `GOOGLE_SHEETS` - Google Sheets
         
     | 
| 
       12 
15 
     | 
    
         
             
            #  * `GOOGLE_CALENDAR` - Google Calendar
         
     | 
| 
       13 
16 
     | 
    
         
             
            #  * `GOOGLE_DRIVE` - Google Drive
         
     | 
| 
       14 
17 
     | 
    
         
             
            #  * `GMAIL` - Gmail
         
     | 
| 
       15 
18 
     | 
    
         
             
            #  * `AIRTABLE` - Airtable
         
     | 
| 
      
 19 
     | 
    
         
            +
            #  * `ATLASSIAN` - Atlassian
         
     | 
| 
       16 
20 
     | 
    
         
             
            #  * `GAMMA` - Gamma
         
     | 
| 
      
 21 
     | 
    
         
            +
            #  * `GITLAB` - Gitlab
         
     | 
| 
       17 
22 
     | 
    
         
             
            #  * `FIRECRAWL` - Firecrawl
         
     | 
| 
      
 23 
     | 
    
         
            +
            #  * `FIGMA` - Figma
         
     | 
| 
      
 24 
     | 
    
         
            +
            #  * `PAGERDUTY` - PagerDuty
         
     | 
| 
       18 
25 
     | 
    
         
             
            #  * `PERPLEXITY` - Perplexity
         
     | 
| 
      
 26 
     | 
    
         
            +
            #  * `REDDIT` - Reddit
         
     | 
| 
       19 
27 
     | 
    
         
             
            #  * `SERPAPI` - Serp Api
         
     | 
| 
      
 28 
     | 
    
         
            +
            #  * `SUPABASE` - Supabase
         
     | 
| 
      
 29 
     | 
    
         
            +
            #  * `WEBFLOW` - Webflow
         
     | 
| 
      
 30 
     | 
    
         
            +
            #  * `ZENDESK` - Zendesk
         
     | 
| 
      
 31 
     | 
    
         
            +
            #  * `DROPBOX` - Dropbox
         
     | 
| 
      
 32 
     | 
    
         
            +
            #  * `EVENTBRITE` - Eventbrite
         
     | 
| 
      
 33 
     | 
    
         
            +
            #  * `CONFLUENCE` - Confluence
         
     | 
| 
      
 34 
     | 
    
         
            +
            #  * `DOCUSIGN` - DocuSign
         
     | 
| 
       20 
35 
     | 
    
         
             
              class IntegrationName
         
     | 
| 
       21 
36 
     | 
    
         | 
| 
       22 
37 
     | 
    
         
             
                SLACK = "SLACK"
         
     | 
| 
       23 
38 
     | 
    
         
             
                NOTION = "NOTION"
         
     | 
| 
       24 
39 
     | 
    
         
             
                GOOGLE = "GOOGLE"
         
     | 
| 
       25 
40 
     | 
    
         
             
                CALENDLY = "CALENDLY"
         
     | 
| 
      
 41 
     | 
    
         
            +
                CANVA = "CANVA"
         
     | 
| 
       26 
42 
     | 
    
         
             
                HUBSPOT = "HUBSPOT"
         
     | 
| 
       27 
43 
     | 
    
         
             
                LINEAR = "LINEAR"
         
     | 
| 
      
 44 
     | 
    
         
            +
                LINKEDIN = "LINKEDIN"
         
     | 
| 
      
 45 
     | 
    
         
            +
                MAILCHIMP = "MAILCHIMP"
         
     | 
| 
       28 
46 
     | 
    
         
             
                GITHUB = "GITHUB"
         
     | 
| 
       29 
47 
     | 
    
         
             
                GOOGLE_SHEETS = "GOOGLE_SHEETS"
         
     | 
| 
       30 
48 
     | 
    
         
             
                GOOGLE_CALENDAR = "GOOGLE_CALENDAR"
         
     | 
| 
       31 
49 
     | 
    
         
             
                GOOGLE_DRIVE = "GOOGLE_DRIVE"
         
     | 
| 
       32 
50 
     | 
    
         
             
                GMAIL = "GMAIL"
         
     | 
| 
       33 
51 
     | 
    
         
             
                AIRTABLE = "AIRTABLE"
         
     | 
| 
      
 52 
     | 
    
         
            +
                ATLASSIAN = "ATLASSIAN"
         
     | 
| 
       34 
53 
     | 
    
         
             
                GAMMA = "GAMMA"
         
     | 
| 
      
 54 
     | 
    
         
            +
                GITLAB = "GITLAB"
         
     | 
| 
       35 
55 
     | 
    
         
             
                FIRECRAWL = "FIRECRAWL"
         
     | 
| 
      
 56 
     | 
    
         
            +
                FIGMA = "FIGMA"
         
     | 
| 
      
 57 
     | 
    
         
            +
                PAGERDUTY = "PAGERDUTY"
         
     | 
| 
       36 
58 
     | 
    
         
             
                PERPLEXITY = "PERPLEXITY"
         
     | 
| 
      
 59 
     | 
    
         
            +
                REDDIT = "REDDIT"
         
     | 
| 
       37 
60 
     | 
    
         
             
                SERPAPI = "SERPAPI"
         
     | 
| 
      
 61 
     | 
    
         
            +
                SUPABASE = "SUPABASE"
         
     | 
| 
      
 62 
     | 
    
         
            +
                WEBFLOW = "WEBFLOW"
         
     | 
| 
      
 63 
     | 
    
         
            +
                ZENDESK = "ZENDESK"
         
     | 
| 
      
 64 
     | 
    
         
            +
                DROPBOX = "DROPBOX"
         
     | 
| 
      
 65 
     | 
    
         
            +
                EVENTBRITE = "EVENTBRITE"
         
     | 
| 
      
 66 
     | 
    
         
            +
                CONFLUENCE = "CONFLUENCE"
         
     | 
| 
      
 67 
     | 
    
         
            +
                DOCUSIGN = "DOCUSIGN"
         
     | 
| 
       38 
68 
     | 
    
         | 
| 
       39 
69 
     | 
    
         
             
              end
         
     | 
| 
       40 
70 
     | 
    
         
             
            end
         
     | 
| 
         @@ -4,7 +4,7 @@ require "json" 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Vellum
         
     | 
| 
       6 
6 
     | 
    
         
             
              class VellumDocument
         
     | 
| 
       7 
     | 
    
         
            -
              # @return [String] 
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] A valid data URL containing the document data.
         
     | 
| 
       8 
8 
     | 
    
         
             
                attr_reader :src
         
     | 
| 
       9 
9 
     | 
    
         
             
              # @return [Hash{String => Object}] 
         
     | 
| 
       10 
10 
     | 
    
         
             
                attr_reader :metadata
         
     | 
| 
         @@ -16,7 +16,7 @@ module Vellum 
     | 
|
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                OMIT = Object.new
         
     | 
| 
       18 
18 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
                # @param src [String] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                # @param src [String] A valid data URL containing the document data.
         
     | 
| 
       20 
20 
     | 
    
         
             
                # @param metadata [Hash{String => Object}] 
         
     | 
| 
       21 
21 
     | 
    
         
             
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       22 
22 
     | 
    
         
             
                # @return [Vellum::VellumDocument]
         
     | 
| 
         @@ -4,7 +4,7 @@ require "json" 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Vellum
         
     | 
| 
       6 
6 
     | 
    
         
             
              class VellumDocumentRequest
         
     | 
| 
       7 
     | 
    
         
            -
              # @return [String] 
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] A valid data URL containing the document data.
         
     | 
| 
       8 
8 
     | 
    
         
             
                attr_reader :src
         
     | 
| 
       9 
9 
     | 
    
         
             
              # @return [Hash{String => Object}] 
         
     | 
| 
       10 
10 
     | 
    
         
             
                attr_reader :metadata
         
     | 
| 
         @@ -16,7 +16,7 @@ module Vellum 
     | 
|
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                OMIT = Object.new
         
     | 
| 
       18 
18 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
                # @param src [String] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                # @param src [String] A valid data URL containing the document data.
         
     | 
| 
       20 
20 
     | 
    
         
             
                # @param metadata [Hash{String => Object}] 
         
     | 
| 
       21 
21 
     | 
    
         
             
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       22 
22 
     | 
    
         
             
                # @return [Vellum::VellumDocumentRequest]
         
     | 
| 
         @@ -4,7 +4,7 @@ require "json" 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Vellum
         
     | 
| 
       6 
6 
     | 
    
         
             
              class VellumImage
         
     | 
| 
       7 
     | 
    
         
            -
              # @return [String] 
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] A valid data URL containing the image data.
         
     | 
| 
       8 
8 
     | 
    
         
             
                attr_reader :src
         
     | 
| 
       9 
9 
     | 
    
         
             
              # @return [Hash{String => Object}] 
         
     | 
| 
       10 
10 
     | 
    
         
             
                attr_reader :metadata
         
     | 
| 
         @@ -16,7 +16,7 @@ module Vellum 
     | 
|
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                OMIT = Object.new
         
     | 
| 
       18 
18 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
                # @param src [String] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                # @param src [String] A valid data URL containing the image data.
         
     | 
| 
       20 
20 
     | 
    
         
             
                # @param metadata [Hash{String => Object}] 
         
     | 
| 
       21 
21 
     | 
    
         
             
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       22 
22 
     | 
    
         
             
                # @return [Vellum::VellumImage]
         
     | 
| 
         @@ -4,7 +4,7 @@ require "json" 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Vellum
         
     | 
| 
       6 
6 
     | 
    
         
             
              class VellumImageRequest
         
     | 
| 
       7 
     | 
    
         
            -
              # @return [String] 
         
     | 
| 
      
 7 
     | 
    
         
            +
              # @return [String] A valid data URL containing the image data.
         
     | 
| 
       8 
8 
     | 
    
         
             
                attr_reader :src
         
     | 
| 
       9 
9 
     | 
    
         
             
              # @return [Hash{String => Object}] 
         
     | 
| 
       10 
10 
     | 
    
         
             
                attr_reader :metadata
         
     | 
| 
         @@ -16,7 +16,7 @@ module Vellum 
     | 
|
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                OMIT = Object.new
         
     | 
| 
       18 
18 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
                # @param src [String] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                # @param src [String] A valid data URL containing the image data.
         
     | 
| 
       20 
20 
     | 
    
         
             
                # @param metadata [Hash{String => Object}] 
         
     | 
| 
       21 
21 
     | 
    
         
             
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       22 
22 
     | 
    
         
             
                # @return [Vellum::VellumImageRequest]
         
     | 
| 
         @@ -11,6 +11,8 @@ module Vellum 
     | 
|
| 
       11 
11 
     | 
    
         
             
                attr_reader :outputs
         
     | 
| 
       12 
12 
     | 
    
         
             
              # @return [Hash{String => Object}] 
         
     | 
| 
       13 
13 
     | 
    
         
             
                attr_reader :final_state
         
     | 
| 
      
 14 
     | 
    
         
            +
              # @return [Hash{String => Object}] 
         
     | 
| 
      
 15 
     | 
    
         
            +
                attr_reader :server_metadata
         
     | 
| 
       14 
16 
     | 
    
         
             
              # @return [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       15 
17 
     | 
    
         
             
                attr_reader :additional_properties
         
     | 
| 
       16 
18 
     | 
    
         
             
              # @return [Object] 
         
     | 
| 
         @@ -22,14 +24,16 @@ module Vellum 
     | 
|
| 
       22 
24 
     | 
    
         
             
                # @param workflow_definition [Vellum::VellumCodeResourceDefinition] 
         
     | 
| 
       23 
25 
     | 
    
         
             
                # @param outputs [Hash{String => Object}] 
         
     | 
| 
       24 
26 
     | 
    
         
             
                # @param final_state [Hash{String => Object}] 
         
     | 
| 
      
 27 
     | 
    
         
            +
                # @param server_metadata [Hash{String => Object}] 
         
     | 
| 
       25 
28 
     | 
    
         
             
                # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
         
     | 
| 
       26 
29 
     | 
    
         
             
                # @return [Vellum::WorkflowExecutionFulfilledBody]
         
     | 
| 
       27 
     | 
    
         
            -
                def initialize(workflow_definition:, outputs:, final_state: OMIT, additional_properties: nil)
         
     | 
| 
      
 30 
     | 
    
         
            +
                def initialize(workflow_definition:, outputs:, final_state: OMIT, server_metadata: OMIT, additional_properties: nil)
         
     | 
| 
       28 
31 
     | 
    
         
             
                  @workflow_definition = workflow_definition
         
     | 
| 
       29 
32 
     | 
    
         
             
                  @outputs = outputs
         
     | 
| 
       30 
33 
     | 
    
         
             
                  @final_state = final_state if final_state != OMIT
         
     | 
| 
      
 34 
     | 
    
         
            +
                  @server_metadata = server_metadata if server_metadata != OMIT
         
     | 
| 
       31 
35 
     | 
    
         
             
                  @additional_properties = additional_properties
         
     | 
| 
       32 
     | 
    
         
            -
                  @_field_set = { "workflow_definition": workflow_definition, "outputs": outputs, "final_state": final_state }.reject do | _k, v |
         
     | 
| 
      
 36 
     | 
    
         
            +
                  @_field_set = { "workflow_definition": workflow_definition, "outputs": outputs, "final_state": final_state, "server_metadata": server_metadata }.reject do | _k, v |
         
     | 
| 
       33 
37 
     | 
    
         
             
              v == OMIT
         
     | 
| 
       34 
38 
     | 
    
         
             
            end
         
     | 
| 
       35 
39 
     | 
    
         
             
                end
         
     | 
| 
         @@ -48,10 +52,12 @@ end 
     | 
|
| 
       48 
52 
     | 
    
         
             
                  end
         
     | 
| 
       49 
53 
     | 
    
         
             
                  outputs = parsed_json["outputs"]
         
     | 
| 
       50 
54 
     | 
    
         
             
                  final_state = parsed_json["final_state"]
         
     | 
| 
      
 55 
     | 
    
         
            +
                  server_metadata = parsed_json["server_metadata"]
         
     | 
| 
       51 
56 
     | 
    
         
             
                  new(
         
     | 
| 
       52 
57 
     | 
    
         
             
                    workflow_definition: workflow_definition,
         
     | 
| 
       53 
58 
     | 
    
         
             
                    outputs: outputs,
         
     | 
| 
       54 
59 
     | 
    
         
             
                    final_state: final_state,
         
     | 
| 
      
 60 
     | 
    
         
            +
                    server_metadata: server_metadata,
         
     | 
| 
       55 
61 
     | 
    
         
             
                    additional_properties: struct
         
     | 
| 
       56 
62 
     | 
    
         
             
                  )
         
     | 
| 
       57 
63 
     | 
    
         
             
                end
         
     | 
| 
         @@ -71,6 +77,7 @@ end 
     | 
|
| 
       71 
77 
     | 
    
         
             
                  Vellum::VellumCodeResourceDefinition.validate_raw(obj: obj.workflow_definition)
         
     | 
| 
       72 
78 
     | 
    
         
             
                  obj.outputs.is_a?(Hash) != false || raise("Passed value for field obj.outputs is not the expected type, validation failed.")
         
     | 
| 
       73 
79 
     | 
    
         
             
                  obj.final_state&.is_a?(Hash) != false || raise("Passed value for field obj.final_state is not the expected type, validation failed.")
         
     | 
| 
      
 80 
     | 
    
         
            +
                  obj.server_metadata&.is_a?(Hash) != false || raise("Passed value for field obj.server_metadata is not the expected type, validation failed.")
         
     | 
| 
       74 
81 
     | 
    
         
             
                end
         
     | 
| 
       75 
82 
     | 
    
         
             
              end
         
     | 
| 
       76 
83 
     | 
    
         
             
            end
         
     | 
| 
         @@ -2,6 +2,7 @@ 
     | 
|
| 
       2 
2 
     | 
    
         
             
            require_relative "../../requests"
         
     | 
| 
       3 
3 
     | 
    
         
             
            require_relative "../types/workflow_resolved_state"
         
     | 
| 
       4 
4 
     | 
    
         
             
            require_relative "../types/workflow_push_deployment_config_request"
         
     | 
| 
      
 5 
     | 
    
         
            +
            require_relative "../types/dataset_row_push_request"
         
     | 
| 
       5 
6 
     | 
    
         
             
            require_relative "../types/workflow_push_response"
         
     | 
| 
       6 
7 
     | 
    
         
             
            require_relative "../../core/file_utilities"
         
     | 
| 
       7 
8 
     | 
    
         
             
            require "json"
         
     | 
| 
         @@ -105,11 +106,14 @@ end 
     | 
|
| 
       105 
106 
     | 
    
         
             
                #   * :release_tags (Array<String>) 
         
     | 
| 
       106 
107 
     | 
    
         
             
                #   * :release_description (String) 
         
     | 
| 
       107 
108 
     | 
    
         
             
                # @param artifact [String, IO] 
         
     | 
| 
      
 109 
     | 
    
         
            +
                # @param dataset [Array<Hash>] List of dataset rows with inputs for scenarios.Request of type Array<Vellum::DatasetRowPushRequest>, as a Hash
         
     | 
| 
      
 110 
     | 
    
         
            +
                #   * :label (String) 
         
     | 
| 
      
 111 
     | 
    
         
            +
                #   * :inputs (Hash{String => Object}) 
         
     | 
| 
       108 
112 
     | 
    
         
             
                # @param dry_run [Boolean] 
         
     | 
| 
       109 
113 
     | 
    
         
             
                # @param strict [Boolean] 
         
     | 
| 
       110 
114 
     | 
    
         
             
                # @param request_options [Vellum::RequestOptions] 
         
     | 
| 
       111 
115 
     | 
    
         
             
                # @return [Vellum::WorkflowPushResponse]
         
     | 
| 
       112 
     | 
    
         
            -
                def push(exec_config:, workflow_sandbox_id: nil, deployment_config: nil, artifact: nil, dry_run: nil, strict: nil, request_options: nil)
         
     | 
| 
      
 116 
     | 
    
         
            +
                def push(exec_config:, workflow_sandbox_id: nil, deployment_config: nil, artifact: nil, dataset: nil, dry_run: nil, strict: nil, request_options: nil)
         
     | 
| 
       113 
117 
     | 
    
         
             
                  response = @request_client.conn.post do | req |
         
     | 
| 
       114 
118 
     | 
    
         
             
              unless request_options&.timeout_in_seconds.nil?
         
     | 
| 
       115 
119 
     | 
    
         
             
                req.options.timeout = request_options.timeout_in_seconds
         
     | 
| 
         @@ -128,7 +132,7 @@ end 
     | 
|
| 
       128 
132 
     | 
    
         
             
              end
         
     | 
| 
       129 
133 
     | 
    
         
             
              req.body = { **(request_options&.additional_body_parameters || {}), exec_config: exec_config, workflow_sandbox_id: workflow_sandbox_id, deployment_config: deployment_config, artifact: unless artifact.nil?
         
     | 
| 
       130 
134 
     | 
    
         
             
              Vellum::FileUtilities.as_faraday_multipart(file_like: artifact)
         
     | 
| 
       131 
     | 
    
         
            -
            end, dry_run: dry_run, strict: strict }.compact
         
     | 
| 
      
 135 
     | 
    
         
            +
            end, dataset: dataset, dry_run: dry_run, strict: strict }.compact
         
     | 
| 
       132 
136 
     | 
    
         
             
              req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/workflows/push"
         
     | 
| 
       133 
137 
     | 
    
         
             
            end
         
     | 
| 
       134 
138 
     | 
    
         
             
                  Vellum::WorkflowPushResponse.from_json(json_object: response.body)
         
     | 
| 
         @@ -266,11 +270,14 @@ end 
     | 
|
| 
       266 
270 
     | 
    
         
             
                #   * :release_tags (Array<String>) 
         
     | 
| 
       267 
271 
     | 
    
         
             
                #   * :release_description (String) 
         
     | 
| 
       268 
272 
     | 
    
         
             
                # @param artifact [String, IO] 
         
     | 
| 
      
 273 
     | 
    
         
            +
                # @param dataset [Array<Hash>] List of dataset rows with inputs for scenarios.Request of type Array<Vellum::DatasetRowPushRequest>, as a Hash
         
     | 
| 
      
 274 
     | 
    
         
            +
                #   * :label (String) 
         
     | 
| 
      
 275 
     | 
    
         
            +
                #   * :inputs (Hash{String => Object}) 
         
     | 
| 
       269 
276 
     | 
    
         
             
                # @param dry_run [Boolean] 
         
     | 
| 
       270 
277 
     | 
    
         
             
                # @param strict [Boolean] 
         
     | 
| 
       271 
278 
     | 
    
         
             
                # @param request_options [Vellum::RequestOptions] 
         
     | 
| 
       272 
279 
     | 
    
         
             
                # @return [Vellum::WorkflowPushResponse]
         
     | 
| 
       273 
     | 
    
         
            -
                def push(exec_config:, workflow_sandbox_id: nil, deployment_config: nil, artifact: nil, dry_run: nil, strict: nil, request_options: nil)
         
     | 
| 
      
 280 
     | 
    
         
            +
                def push(exec_config:, workflow_sandbox_id: nil, deployment_config: nil, artifact: nil, dataset: nil, dry_run: nil, strict: nil, request_options: nil)
         
     | 
| 
       274 
281 
     | 
    
         
             
                  Async do
         
     | 
| 
       275 
282 
     | 
    
         
             
                    response = @request_client.conn.post do | req |
         
     | 
| 
       276 
283 
     | 
    
         
             
              unless request_options&.timeout_in_seconds.nil?
         
     | 
| 
         @@ -290,7 +297,7 @@ end 
     | 
|
| 
       290 
297 
     | 
    
         
             
              end
         
     | 
| 
       291 
298 
     | 
    
         
             
              req.body = { **(request_options&.additional_body_parameters || {}), exec_config: exec_config, workflow_sandbox_id: workflow_sandbox_id, deployment_config: deployment_config, artifact: unless artifact.nil?
         
     | 
| 
       292 
299 
     | 
    
         
             
              Vellum::FileUtilities.as_faraday_multipart(file_like: artifact)
         
     | 
| 
       293 
     | 
    
         
            -
            end, dry_run: dry_run, strict: strict }.compact
         
     | 
| 
      
 300 
     | 
    
         
            +
            end, dataset: dataset, dry_run: dry_run, strict: strict }.compact
         
     | 
| 
       294 
301 
     | 
    
         
             
              req.url "#{@request_client.get_url(environment: Default, request_options: request_options)}/v1/workflows/push"
         
     | 
| 
       295 
302 
     | 
    
         
             
            end
         
     | 
| 
       296 
303 
     | 
    
         
             
                    Vellum::WorkflowPushResponse.from_json(json_object: response.body)
         
     | 
    
        data/lib/vellum_ai.rb
    CHANGED
    
    | 
         @@ -10,6 +10,7 @@ require_relative "vellum_ai/container_images/client" 
     | 
|
| 
       10 
10 
     | 
    
         
             
            require_relative "vellum_ai/deployments/client"
         
     | 
| 
       11 
11 
     | 
    
         
             
            require_relative "vellum_ai/document_indexes/client"
         
     | 
| 
       12 
12 
     | 
    
         
             
            require_relative "vellum_ai/documents/client"
         
     | 
| 
      
 13 
     | 
    
         
            +
            require_relative "vellum_ai/environments/client"
         
     | 
| 
       13 
14 
     | 
    
         
             
            require_relative "vellum_ai/folder_entities/client"
         
     | 
| 
       14 
15 
     | 
    
         
             
            require_relative "vellum_ai/integration_auth_configs/client"
         
     | 
| 
       15 
16 
     | 
    
         
             
            require_relative "vellum_ai/integration_providers/client"
         
     | 
| 
         @@ -67,6 +68,8 @@ module Vellum 
     | 
|
| 
       67 
68 
     | 
    
         
             
                attr_reader :document_indexes
         
     | 
| 
       68 
69 
     | 
    
         
             
              # @return [Vellum::DocumentsClient] 
         
     | 
| 
       69 
70 
     | 
    
         
             
                attr_reader :documents
         
     | 
| 
      
 71 
     | 
    
         
            +
              # @return [Vellum::EnvironmentsClient] 
         
     | 
| 
      
 72 
     | 
    
         
            +
                attr_reader :environments
         
     | 
| 
       70 
73 
     | 
    
         
             
              # @return [Vellum::FolderEntitiesClient] 
         
     | 
| 
       71 
74 
     | 
    
         
             
                attr_reader :folder_entities
         
     | 
| 
       72 
75 
     | 
    
         
             
              # @return [Vellum::IntegrationAuthConfigsClient] 
         
     | 
| 
         @@ -124,6 +127,7 @@ module Vellum 
     | 
|
| 
       124 
127 
     | 
    
         
             
                  @deployments = Vellum::DeploymentsClient.new(request_client: @request_client)
         
     | 
| 
       125 
128 
     | 
    
         
             
                  @document_indexes = Vellum::DocumentIndexesClient.new(request_client: @request_client)
         
     | 
| 
       126 
129 
     | 
    
         
             
                  @documents = Vellum::DocumentsClient.new(request_client: @request_client)
         
     | 
| 
      
 130 
     | 
    
         
            +
                  @environments = Vellum::EnvironmentsClient.new(request_client: @request_client)
         
     | 
| 
       127 
131 
     | 
    
         
             
                  @folder_entities = Vellum::FolderEntitiesClient.new(request_client: @request_client)
         
     | 
| 
       128 
132 
     | 
    
         
             
                  @integration_auth_configs = Vellum::IntegrationAuthConfigsClient.new(request_client: @request_client)
         
     | 
| 
       129 
133 
     | 
    
         
             
                  @integration_providers = Vellum::IntegrationProvidersClient.new(request_client: @request_client)
         
     | 
| 
         @@ -533,6 +537,8 @@ end 
     | 
|
| 
       533 
537 
     | 
    
         
             
                attr_reader :document_indexes
         
     | 
| 
       534 
538 
     | 
    
         
             
              # @return [Vellum::AsyncDocumentsClient] 
         
     | 
| 
       535 
539 
     | 
    
         
             
                attr_reader :documents
         
     | 
| 
      
 540 
     | 
    
         
            +
              # @return [Vellum::AsyncEnvironmentsClient] 
         
     | 
| 
      
 541 
     | 
    
         
            +
                attr_reader :environments
         
     | 
| 
       536 
542 
     | 
    
         
             
              # @return [Vellum::AsyncFolderEntitiesClient] 
         
     | 
| 
       537 
543 
     | 
    
         
             
                attr_reader :folder_entities
         
     | 
| 
       538 
544 
     | 
    
         
             
              # @return [Vellum::AsyncIntegrationAuthConfigsClient] 
         
     | 
| 
         @@ -590,6 +596,7 @@ end 
     | 
|
| 
       590 
596 
     | 
    
         
             
                  @deployments = Vellum::AsyncDeploymentsClient.new(request_client: @async_request_client)
         
     | 
| 
       591 
597 
     | 
    
         
             
                  @document_indexes = Vellum::AsyncDocumentIndexesClient.new(request_client: @async_request_client)
         
     | 
| 
       592 
598 
     | 
    
         
             
                  @documents = Vellum::AsyncDocumentsClient.new(request_client: @async_request_client)
         
     | 
| 
      
 599 
     | 
    
         
            +
                  @environments = Vellum::AsyncEnvironmentsClient.new(request_client: @async_request_client)
         
     | 
| 
       593 
600 
     | 
    
         
             
                  @folder_entities = Vellum::AsyncFolderEntitiesClient.new(request_client: @async_request_client)
         
     | 
| 
       594 
601 
     | 
    
         
             
                  @integration_auth_configs = Vellum::AsyncIntegrationAuthConfigsClient.new(request_client: @async_request_client)
         
     | 
| 
       595 
602 
     | 
    
         
             
                  @integration_providers = Vellum::AsyncIntegrationProvidersClient.new(request_client: @async_request_client)
         
     | 
    
        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.7. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.7.14
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Vellum
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2025-10- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2025-10-21 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: faraday
         
     | 
| 
         @@ -145,6 +145,7 @@ files: 
     | 
|
| 
       145 
145 
     | 
    
         
             
            - lib/vellum_ai/document_indexes/client.rb
         
     | 
| 
       146 
146 
     | 
    
         
             
            - lib/vellum_ai/document_indexes/types/document_indexes_list_request_status.rb
         
     | 
| 
       147 
147 
     | 
    
         
             
            - lib/vellum_ai/documents/client.rb
         
     | 
| 
      
 148 
     | 
    
         
            +
            - lib/vellum_ai/environments/client.rb
         
     | 
| 
       148 
149 
     | 
    
         
             
            - lib/vellum_ai/events/client.rb
         
     | 
| 
       149 
150 
     | 
    
         
             
            - lib/vellum_ai/folder_entities/client.rb
         
     | 
| 
       150 
151 
     | 
    
         
             
            - lib/vellum_ai/folder_entities/types/folder_entities_list_request_entity_status.rb
         
     | 
| 
         @@ -240,6 +241,7 @@ files: 
     | 
|
| 
       240 
241 
     | 
    
         
             
            - lib/vellum_ai/types/container_image_read.rb
         
     | 
| 
       241 
242 
     | 
    
         
             
            - lib/vellum_ai/types/create_test_suite_test_case_request.rb
         
     | 
| 
       242 
243 
     | 
    
         
             
            - lib/vellum_ai/types/create_workflow_event_request.rb
         
     | 
| 
      
 244 
     | 
    
         
            +
            - lib/vellum_ai/types/dataset_row_push_request.rb
         
     | 
| 
       243 
245 
     | 
    
         
             
            - lib/vellum_ai/types/delimiter_chunker_config.rb
         
     | 
| 
       244 
246 
     | 
    
         
             
            - lib/vellum_ai/types/delimiter_chunker_config_request.rb
         
     | 
| 
       245 
247 
     | 
    
         
             
            - lib/vellum_ai/types/delimiter_chunking.rb
         
     | 
| 
         @@ -271,7 +273,9 @@ files: 
     | 
|
| 
       271 
273 
     | 
    
         
             
            - lib/vellum_ai/types/enriched_normalized_completion.rb
         
     | 
| 
       272 
274 
     | 
    
         
             
            - lib/vellum_ai/types/entity_status.rb
         
     | 
| 
       273 
275 
     | 
    
         
             
            - lib/vellum_ai/types/entity_visibility.rb
         
     | 
| 
      
 276 
     | 
    
         
            +
            - lib/vellum_ai/types/environment_display_config.rb
         
     | 
| 
       274 
277 
     | 
    
         
             
            - lib/vellum_ai/types/environment_enum.rb
         
     | 
| 
      
 278 
     | 
    
         
            +
            - lib/vellum_ai/types/environment_read.rb
         
     | 
| 
       275 
279 
     | 
    
         
             
            - lib/vellum_ai/types/ephemeral_prompt_cache_config.rb
         
     | 
| 
       276 
280 
     | 
    
         
             
            - lib/vellum_ai/types/ephemeral_prompt_cache_config_type_enum.rb
         
     | 
| 
       277 
281 
     | 
    
         
             
            - lib/vellum_ai/types/error_detail_response.rb
         
     |