svix 1.92.2 → 1.93.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 774cd8f19045ffb5dd3c0a4e6a2ae6a5078f1b4ac7a0a38e0431217629bc749e
4
- data.tar.gz: a67c09024afbf863bc0ffc76d5910289e01dd8f5c6e0b0cc76329101e7b1b021
3
+ metadata.gz: c93ea5ce62cf3681a65b3244a48e8787c65e763798398ed81a662bed6cb8f5d0
4
+ data.tar.gz: d0242261a2b37ac3e49c27246b854bc027dc4ef6369968f47ca73ee899716605
5
5
  SHA512:
6
- metadata.gz: b52cbec0349aa9f17b7779dd8d4a65a934acf0c661fc5251ab847b3717b558257c68ffa73bdacaf551d72e90896451c4064b0e64a156b70c92d67a3de306b54c
7
- data.tar.gz: 64c7b2ab23084d0d8b3a7561082d01ee6eec4b2fdd2e2e2bd49211d56df12f573c8d0ce0428d550148773d6ef0f8c832323d2b61ea180f6a2c6881f04e245fd1
6
+ metadata.gz: 5824f3ebe1dfae4ae4f1455e85bf731ebf43f5d7b73dc1791474ce041b5683595300faac9c11cd7afbfa5e5000bb366c03b291fafa06adc1868d62a2f47b4dca
7
+ data.tar.gz: e3b796b52c466792f4dc2e34e4ea3be1528cefea41b5405ca792a64d924a5f3df00cb66b5aaa3ba61ab8ec607cfb5e5fbb9ecb9fa1f4b71df9a454d9702327b1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- svix (1.92.2)
4
+ svix (1.93.0)
5
5
  base64 (~> 0.3.0)
6
6
  logger (~> 1.0)
7
7
 
@@ -25,6 +25,7 @@ module Svix
25
25
  "after" => options["after"],
26
26
  "with_content" => options["with_content"],
27
27
  "with_msg" => options["with_msg"],
28
+ "expanded_statuses" => options["expanded_statuses"],
28
29
  "event_types" => options["event_types"]
29
30
  }
30
31
  )
@@ -47,6 +48,7 @@ module Svix
47
48
  "before" => options["before"],
48
49
  "after" => options["after"],
49
50
  "with_content" => options["with_content"],
51
+ "expanded_statuses" => options["expanded_statuses"],
50
52
  "event_types" => options["event_types"]
51
53
  }
52
54
  )
@@ -67,16 +69,21 @@ module Svix
67
69
  "before" => options["before"],
68
70
  "after" => options["after"],
69
71
  "with_content" => options["with_content"],
72
+ "expanded_statuses" => options["expanded_statuses"],
70
73
  "event_types" => options["event_types"]
71
74
  }
72
75
  )
73
76
  ListResponseEndpointMessageOut.deserialize(res)
74
77
  end
75
78
 
76
- def get(app_id, msg_id, attempt_id)
79
+ def get(app_id, msg_id, attempt_id, options = {})
80
+ options = options.transform_keys(&:to_s)
77
81
  res = @client.execute_request(
78
82
  "GET",
79
- "/api/v1/app/#{app_id}/msg/#{msg_id}/attempt/#{attempt_id}"
83
+ "/api/v1/app/#{app_id}/msg/#{msg_id}/attempt/#{attempt_id}",
84
+ query_params: {
85
+ "expanded_statuses" => options["expanded_statuses"]
86
+ }
80
87
  )
81
88
  MessageAttemptOut.deserialize(res)
82
89
  end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+ # This file is @generated
3
+
4
+ require "net/http"
5
+
6
+ module Svix
7
+ class Endpoint
8
+ attr_accessor :auto_config
9
+ def initialize(client)
10
+ @client = client
11
+ @auto_config = EndpointAutoConfig.new(client)
12
+ end
13
+
14
+ def transformation_partial_update(app_id, endpoint_id, endpoint_transformation_in)
15
+ @client.execute_request(
16
+ "PATCH",
17
+ "/api/v1/app/#{app_id}/endpoint/#{endpoint_id}/transformation",
18
+ body: endpoint_transformation_in
19
+ )
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+ # This file is @generated
3
+
4
+ require "net/http"
5
+
6
+ module Svix
7
+ class EndpointAutoConfig
8
+ def initialize(client)
9
+ @client = client
10
+ end
11
+
12
+ def update(app_id, endpoint_id, subscribe_in)
13
+ res = @client.execute_request(
14
+ "PUT",
15
+ "/api/v1/app/#{app_id}/endpoint/#{endpoint_id}/auto-config",
16
+ body: subscribe_in
17
+ )
18
+ EndpointOut.deserialize(res)
19
+ end
20
+
21
+ end
22
+ end
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require "base64"
5
+ require "uri"
6
+
7
+ require "svix/models/subscribe_in"
8
+ require "svix/api_internal/endpoint_auto_config"
9
+
10
+ module Svix
11
+ class AutoConfig
12
+ AUTOCONFIG_TOKEN_PREFIX_V1 = "auto_v1_"
13
+
14
+ class InvalidTokenError < StandardError; end
15
+
16
+ attr_reader :app_id, :endpoint_id, :endpoint
17
+
18
+ def initialize(token, endpoint_in)
19
+ content = AutoConfig.decode_token!(token)
20
+ @app_id = content.fetch("app_id")
21
+ @endpoint_id = content.fetch("endpoint_id")
22
+ @endpoint = endpoint_in
23
+ @webhook = Webhook.new(content.fetch("endpoint_secret"))
24
+ @client = SvixHttpClient.new(
25
+ content.fetch("token_plaintext"),
26
+ URI(content.fetch("server_url"))
27
+ )
28
+ end
29
+
30
+ def subscribe
31
+ EndpointAutoConfig.new(@client).update(
32
+ @app_id,
33
+ @endpoint_id,
34
+ SubscribeIn.new("endpoint" => @endpoint)
35
+ )
36
+ end
37
+
38
+ def verify(payload, headers)
39
+ @webhook.verify(payload, headers)
40
+ end
41
+
42
+ class << self
43
+ def decode_token!(token)
44
+ unless token.is_a?(String) && token.start_with?(AUTOCONFIG_TOKEN_PREFIX_V1)
45
+ raise InvalidTokenError
46
+ end
47
+
48
+ encoded = token.byteslice(AUTOCONFIG_TOKEN_PREFIX_V1.length..-1)
49
+ json = Base64.decode64(encoded)
50
+ data = JSON.parse(json)
51
+ unless data.is_a?(Hash)
52
+ raise InvalidTokenError
53
+ end
54
+
55
+ {
56
+ "app_id" => data.fetch("aid"),
57
+ "endpoint_id" => data.fetch("eid"),
58
+ "server_url" => data.fetch("surl"),
59
+ "endpoint_secret" => data.fetch("esec"),
60
+ "token_plaintext" => data.fetch("tok"),
61
+ }
62
+ rescue ArgumentError, JSON::ParserError, KeyError, TypeError
63
+ raise InvalidTokenError
64
+ end
65
+ end
66
+ end
67
+ end
data/lib/svix/internal.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "svix/autoconfig"
4
+
3
5
  module Svix
4
6
  private_constant :HttpErrorOut
5
7
  private_constant :HTTPValidationError
@@ -6,11 +6,16 @@ module Svix
6
6
  class ApplicationPatch
7
7
  attr_accessor :metadata
8
8
  attr_accessor :name
9
+ # Deprecated, use `throttleRate` instead.
9
10
  attr_accessor :rate_limit
11
+ # Maximum messages per second to send to this application.
12
+ #
13
+ # Outgoing messages will be throttled to this rate.
14
+ attr_accessor :throttle_rate
10
15
  # The Application's UID.
11
16
  attr_accessor :uid
12
17
 
13
- ALL_FIELD ||= ["metadata", "name", "rate_limit", "uid"].freeze
18
+ ALL_FIELD ||= ["metadata", "name", "rate_limit", "throttle_rate", "uid"].freeze
14
19
  private_constant :ALL_FIELD
15
20
 
16
21
  def initialize(attributes = {})
@@ -34,6 +39,7 @@ module Svix
34
39
  attrs["metadata"] = attributes["metadata"]
35
40
  attrs["name"] = attributes["name"]
36
41
  attrs["rate_limit"] = attributes["rateLimit"]
42
+ attrs["throttle_rate"] = attributes["throttleRate"]
37
43
  attrs["uid"] = attributes["uid"]
38
44
  new(attrs)
39
45
  end
@@ -43,6 +49,7 @@ module Svix
43
49
  out["metadata"] = Svix::serialize_primitive(@metadata) if @metadata
44
50
  out["name"] = Svix::serialize_primitive(@name) if @name
45
51
  out["rateLimit"] = Svix::serialize_primitive(@rate_limit) if @__rate_limit_is_defined
52
+ out["throttleRate"] = Svix::serialize_primitive(@throttle_rate) if @__throttle_rate_is_defined
46
53
  out["uid"] = Svix::serialize_primitive(@uid) if @__uid_is_defined
47
54
  out
48
55
  end
@@ -16,7 +16,9 @@ module Svix
16
16
  attr_accessor :metadata
17
17
  # Deprecated, use `throttleRate` instead.
18
18
  attr_accessor :rate_limit
19
- # Maximum messages per second to send to this endpoint. Outgoing messages will be throttled to this rate.
19
+ # Maximum messages per second to send to this endpoint.
20
+ #
21
+ # Outgoing messages will be throttled to this rate.
20
22
  attr_accessor :throttle_rate
21
23
  # Optional unique identifier for the endpoint.
22
24
  attr_accessor :uid
@@ -4,12 +4,13 @@ require "json"
4
4
 
5
5
  module Svix
6
6
  class EndpointStats
7
+ attr_accessor :canceled
7
8
  attr_accessor :fail
8
9
  attr_accessor :pending
9
10
  attr_accessor :sending
10
11
  attr_accessor :success
11
12
 
12
- ALL_FIELD ||= ["fail", "pending", "sending", "success"].freeze
13
+ ALL_FIELD ||= ["canceled", "fail", "pending", "sending", "success"].freeze
13
14
  private_constant :ALL_FIELD
14
15
 
15
16
  def initialize(attributes = {})
@@ -30,6 +31,7 @@ module Svix
30
31
  def self.deserialize(attributes = {})
31
32
  attributes = attributes.transform_keys(&:to_s)
32
33
  attrs = Hash.new
34
+ attrs["canceled"] = attributes["canceled"]
33
35
  attrs["fail"] = attributes["fail"]
34
36
  attrs["pending"] = attributes["pending"]
35
37
  attrs["sending"] = attributes["sending"]
@@ -39,6 +41,7 @@ module Svix
39
41
 
40
42
  def serialize
41
43
  out = Hash.new
44
+ out["canceled"] = Svix::serialize_primitive(@canceled) if @canceled
42
45
  out["fail"] = Svix::serialize_primitive(@fail) if @fail
43
46
  out["pending"] = Svix::serialize_primitive(@pending) if @pending
44
47
  out["sending"] = Svix::serialize_primitive(@sending) if @sending
@@ -23,6 +23,7 @@ require_relative "./svix_config"
23
23
  require_relative "./telnyx_config"
24
24
  require_relative "./vapi_config"
25
25
  require_relative "./veriff_config"
26
+ require_relative "./vgs_config"
26
27
  require_relative "./zoom_config"
27
28
 
28
29
  module Svix
@@ -156,6 +157,9 @@ module Svix
156
157
 
157
158
  class Airwallex < AirwallexConfig
158
159
  end
160
+
161
+ class Vgs < VgsConfig
162
+ end
159
163
  end
160
164
 
161
165
  class IngestSourceIn
@@ -206,7 +210,8 @@ module Svix
206
210
  IngestSourceInConfig::OpenAi => "open-ai",
207
211
  IngestSourceInConfig::Render => "render",
208
212
  IngestSourceInConfig::Veriff => "veriff",
209
- IngestSourceInConfig::Airwallex => "airwallex"
213
+ IngestSourceInConfig::Airwallex => "airwallex",
214
+ IngestSourceInConfig::Vgs => "vgs"
210
215
  }
211
216
  private_constant :TYPE_TO_NAME
212
217
  NAME_TO_TYPE = TYPE_TO_NAME.invert
@@ -23,6 +23,7 @@ require_relative "./svix_config_out"
23
23
  require_relative "./telnyx_config_out"
24
24
  require_relative "./vapi_config_out"
25
25
  require_relative "./veriff_config_out"
26
+ require_relative "./vgs_config_out"
26
27
  require_relative "./zoom_config_out"
27
28
 
28
29
  module Svix
@@ -156,6 +157,9 @@ module Svix
156
157
 
157
158
  class Airwallex < AirwallexConfigOut
158
159
  end
160
+
161
+ class Vgs < VgsConfigOut
162
+ end
159
163
  end
160
164
 
161
165
  class IngestSourceOut
@@ -211,7 +215,8 @@ module Svix
211
215
  IngestSourceOutConfig::OpenAi => "open-ai",
212
216
  IngestSourceOutConfig::Render => "render",
213
217
  IngestSourceOutConfig::Veriff => "veriff",
214
- IngestSourceOutConfig::Airwallex => "airwallex"
218
+ IngestSourceOutConfig::Airwallex => "airwallex",
219
+ IngestSourceOutConfig::Vgs => "vgs"
215
220
  }
216
221
  private_constant :TYPE_TO_NAME
217
222
  NAME_TO_TYPE = TYPE_TO_NAME.invert
@@ -18,7 +18,9 @@ module Svix
18
18
  attr_accessor :rate_limit
19
19
  attr_accessor :status
20
20
  attr_accessor :status_text
21
- # Maximum messages per second to send to this endpoint. Outgoing messages will be throttled to this rate.
21
+ # Maximum messages per second to send to this endpoint.
22
+ #
23
+ # Outgoing messages will be throttled to this rate.
22
24
  attr_accessor :throttle_rate
23
25
  # Optional unique identifier for the endpoint.
24
26
  attr_accessor :uid
@@ -7,14 +7,16 @@ module Svix
7
7
  # - Pending = 1
8
8
  # - Fail = 2
9
9
  # - Sending = 3
10
+ # - Canceled = 4
10
11
  class MessageStatus
11
12
  SUCCESS = 0.freeze
12
13
  PENDING = 1.freeze
13
14
  FAIL = 2.freeze
14
15
  SENDING = 3.freeze
16
+ CANCELED = 4.freeze
15
17
 
16
18
  def self.all_vars
17
- @all_vars ||= [SUCCESS, PENDING, FAIL, SENDING].freeze
19
+ @all_vars ||= [SUCCESS, PENDING, FAIL, SENDING, CANCELED].freeze
18
20
  end
19
21
 
20
22
  def initialize(value)
@@ -6,9 +6,10 @@ module Svix
6
6
  PENDING = "pending".freeze
7
7
  FAIL = "fail".freeze
8
8
  SENDING = "sending".freeze
9
+ CANCELED = "canceled".freeze
9
10
 
10
11
  def self.all_vars
11
- @all_vars ||= [SUCCESS, PENDING, FAIL, SENDING].freeze
12
+ @all_vars ||= [SUCCESS, PENDING, FAIL, SENDING, CANCELED].freeze
12
13
  end
13
14
 
14
15
  def initialize(value)
@@ -8,17 +8,32 @@ module Svix
8
8
  attr_accessor :disabled
9
9
  attr_accessor :filter_types
10
10
  attr_accessor :metadata
11
+ # Deprecated, use `throttleRate` instead.
11
12
  attr_accessor :rate_limit
12
13
  # The endpoint's verification secret.
13
14
  #
14
15
  # Format: `base64` encoded random bytes optionally prefixed with `whsec_`.
15
16
  # It is recommended to not set this and let the server generate the secret.
16
17
  attr_accessor :secret
18
+ # Maximum messages per second to send to this endpoint.
19
+ #
20
+ # Outgoing messages will be throttled to this rate.
21
+ attr_accessor :throttle_rate
17
22
  # Optional unique identifier for the endpoint.
18
23
  attr_accessor :uid
19
24
  attr_accessor :url
20
25
 
21
- ALL_FIELD ||= ["description", "disabled", "filter_types", "metadata", "rate_limit", "secret", "uid", "url"].freeze
26
+ ALL_FIELD ||= [
27
+ "description",
28
+ "disabled",
29
+ "filter_types",
30
+ "metadata",
31
+ "rate_limit",
32
+ "secret",
33
+ "throttle_rate",
34
+ "uid",
35
+ "url"
36
+ ].freeze
22
37
  private_constant :ALL_FIELD
23
38
 
24
39
  def initialize(attributes = {})
@@ -48,6 +63,7 @@ module Svix
48
63
  attrs["metadata"] = attributes["metadata"]
49
64
  attrs["rate_limit"] = attributes["rateLimit"]
50
65
  attrs["secret"] = attributes["secret"]
66
+ attrs["throttle_rate"] = attributes["throttleRate"]
51
67
  attrs["uid"] = attributes["uid"]
52
68
  attrs["url"] = attributes["url"]
53
69
  new(attrs)
@@ -61,6 +77,7 @@ module Svix
61
77
  out["metadata"] = Svix::serialize_primitive(@metadata) if @metadata
62
78
  out["rateLimit"] = Svix::serialize_primitive(@rate_limit) if @rate_limit
63
79
  out["secret"] = Svix::serialize_primitive(@secret) if @secret
80
+ out["throttleRate"] = Svix::serialize_primitive(@throttle_rate) if @throttle_rate
64
81
  out["uid"] = Svix::serialize_primitive(@uid) if @uid
65
82
  out["url"] = Svix::serialize_primitive(@url) if @url
66
83
  out
@@ -12,7 +12,12 @@ module Svix
12
12
  # The Endpoint's ID.
13
13
  attr_accessor :id
14
14
  attr_accessor :metadata
15
+ # Deprecated, use `throttleRate` instead.
15
16
  attr_accessor :rate_limit
17
+ # Maximum messages per second to send to this endpoint.
18
+ #
19
+ # Outgoing messages will be throttled to this rate.
20
+ attr_accessor :throttle_rate
16
21
  # Optional unique identifier for the endpoint.
17
22
  attr_accessor :uid
18
23
  attr_accessor :updated_at
@@ -26,6 +31,7 @@ module Svix
26
31
  "id",
27
32
  "metadata",
28
33
  "rate_limit",
34
+ "throttle_rate",
29
35
  "uid",
30
36
  "updated_at",
31
37
  "url"
@@ -60,6 +66,7 @@ module Svix
60
66
  attrs["id"] = attributes["id"]
61
67
  attrs["metadata"] = attributes["metadata"]
62
68
  attrs["rate_limit"] = attributes["rateLimit"]
69
+ attrs["throttle_rate"] = attributes["throttleRate"]
63
70
  attrs["uid"] = attributes["uid"]
64
71
  attrs["updated_at"] = DateTime.rfc3339(attributes["updatedAt"]).to_time
65
72
  attrs["url"] = attributes["url"]
@@ -75,6 +82,7 @@ module Svix
75
82
  out["id"] = Svix::serialize_primitive(@id) if @id
76
83
  out["metadata"] = Svix::serialize_primitive(@metadata) if @metadata
77
84
  out["rateLimit"] = Svix::serialize_primitive(@rate_limit) if @rate_limit
85
+ out["throttleRate"] = Svix::serialize_primitive(@throttle_rate) if @throttle_rate
78
86
  out["uid"] = Svix::serialize_primitive(@uid) if @uid
79
87
  out["updatedAt"] = Svix::serialize_primitive(@updated_at) if @updated_at
80
88
  out["url"] = Svix::serialize_primitive(@url) if @url
@@ -8,12 +8,17 @@ module Svix
8
8
  attr_accessor :disabled
9
9
  attr_accessor :filter_types
10
10
  attr_accessor :metadata
11
+ # Deprecated, use `throttleRate` instead.
11
12
  attr_accessor :rate_limit
13
+ # Maximum messages per second to send to this endpoint.
14
+ #
15
+ # Outgoing messages will be throttled to this rate.
16
+ attr_accessor :throttle_rate
12
17
  # Optional unique identifier for the endpoint.
13
18
  attr_accessor :uid
14
19
  attr_accessor :url
15
20
 
16
- ALL_FIELD ||= ["description", "disabled", "filter_types", "metadata", "rate_limit", "uid", "url"].freeze
21
+ ALL_FIELD ||= ["description", "disabled", "filter_types", "metadata", "rate_limit", "throttle_rate", "uid", "url"].freeze
17
22
  private_constant :ALL_FIELD
18
23
 
19
24
  def initialize(attributes = {})
@@ -42,6 +47,7 @@ module Svix
42
47
  attrs["filter_types"] = attributes["filterTypes"]
43
48
  attrs["metadata"] = attributes["metadata"]
44
49
  attrs["rate_limit"] = attributes["rateLimit"]
50
+ attrs["throttle_rate"] = attributes["throttleRate"]
45
51
  attrs["uid"] = attributes["uid"]
46
52
  attrs["url"] = attributes["url"]
47
53
  new(attrs)
@@ -54,6 +60,7 @@ module Svix
54
60
  out["filterTypes"] = Svix::serialize_primitive(@filter_types) if @filter_types
55
61
  out["metadata"] = Svix::serialize_primitive(@metadata) if @metadata
56
62
  out["rateLimit"] = Svix::serialize_primitive(@rate_limit) if @rate_limit
63
+ out["throttleRate"] = Svix::serialize_primitive(@throttle_rate) if @throttle_rate
57
64
  out["uid"] = Svix::serialize_primitive(@uid) if @uid
58
65
  out["url"] = Svix::serialize_primitive(@url) if @url
59
66
  out
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+ # This file is @generated
3
+ require "json"
4
+
5
+ module Svix
6
+ class SubscribeIn
7
+ attr_accessor :endpoint
8
+
9
+ ALL_FIELD ||= ["endpoint"].freeze
10
+ private_constant :ALL_FIELD
11
+
12
+ def initialize(attributes = {})
13
+ unless attributes.is_a?(Hash)
14
+ fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::SubscribeIn` new method")
15
+ end
16
+
17
+ attributes.each do |k, v|
18
+ unless ALL_FIELD.include?(k.to_s)
19
+ fail(ArgumentError, "The field #{k} is not part of Svix::SubscribeIn")
20
+ end
21
+
22
+ instance_variable_set("@#{k}", v)
23
+ instance_variable_set("@__#{k}_is_defined", true)
24
+ end
25
+ end
26
+
27
+ def self.deserialize(attributes = {})
28
+ attributes = attributes.transform_keys(&:to_s)
29
+ attrs = Hash.new
30
+ attrs["endpoint"] = Svix::EndpointIn.deserialize(attributes["endpoint"])
31
+ new(attrs)
32
+ end
33
+
34
+ def serialize
35
+ out = Hash.new
36
+ out["endpoint"] = Svix::serialize_schema_ref(@endpoint) if @endpoint
37
+ out
38
+ end
39
+
40
+ # Serializes the object to a json string
41
+ # @return String
42
+ def to_json
43
+ JSON.dump(serialize)
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+ # This file is @generated
3
+ require "json"
4
+
5
+ module Svix
6
+ class VgsConfig
7
+ attr_accessor :secret
8
+
9
+ ALL_FIELD ||= ["secret"].freeze
10
+ private_constant :ALL_FIELD
11
+
12
+ def initialize(attributes = {})
13
+ unless attributes.is_a?(Hash)
14
+ fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::VgsConfig` new method")
15
+ end
16
+
17
+ attributes.each do |k, v|
18
+ unless ALL_FIELD.include?(k.to_s)
19
+ fail(ArgumentError, "The field #{k} is not part of Svix::VgsConfig")
20
+ end
21
+
22
+ instance_variable_set("@#{k}", v)
23
+ instance_variable_set("@__#{k}_is_defined", true)
24
+ end
25
+ end
26
+
27
+ def self.deserialize(attributes = {})
28
+ attributes = attributes.transform_keys(&:to_s)
29
+ attrs = Hash.new
30
+ attrs["secret"] = attributes["secret"]
31
+ new(attrs)
32
+ end
33
+
34
+ def serialize
35
+ out = Hash.new
36
+ out["secret"] = Svix::serialize_primitive(@secret) if @secret
37
+ out
38
+ end
39
+
40
+ # Serializes the object to a json string
41
+ # @return String
42
+ def to_json
43
+ JSON.dump(serialize)
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+ # This file is @generated
3
+ require "json"
4
+
5
+ module Svix
6
+ class VgsConfigOut
7
+
8
+ ALL_FIELD ||= [].freeze
9
+ private_constant :ALL_FIELD
10
+
11
+ def initialize(attributes = {})
12
+ unless attributes.is_a?(Hash)
13
+ fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::VgsConfigOut` new method")
14
+ end
15
+
16
+ attributes.each do |k, v|
17
+ unless ALL_FIELD.include?(k.to_s)
18
+ fail(ArgumentError, "The field #{k} is not part of Svix::VgsConfigOut")
19
+ end
20
+
21
+ instance_variable_set("@#{k}", v)
22
+ instance_variable_set("@__#{k}_is_defined", true)
23
+ end
24
+ end
25
+
26
+ def self.deserialize(attributes = {})
27
+ attributes = attributes.transform_keys(&:to_s)
28
+ attrs = Hash.new
29
+ new(attrs)
30
+ end
31
+
32
+ def serialize
33
+ out = Hash.new
34
+ out
35
+ end
36
+
37
+ # Serializes the object to a json string
38
+ # @return String
39
+ def to_json
40
+ JSON.dump(serialize)
41
+ end
42
+ end
43
+ end
data/lib/svix/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Svix
4
- VERSION = "1.92.2"
4
+ VERSION = "1.93.0"
5
5
  end
data/lib/svix.rb CHANGED
@@ -246,6 +246,8 @@ require "svix/models/vapi_config"
246
246
  require "svix/models/vapi_config_out"
247
247
  require "svix/models/veriff_config"
248
248
  require "svix/models/veriff_config_out"
249
+ require "svix/models/vgs_config"
250
+ require "svix/models/vgs_config_out"
249
251
  require "svix/models/zoom_config"
250
252
  require "svix/models/zoom_config_out"
251
253
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: svix
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.92.2
4
+ version: 1.93.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Svix
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-04-23 00:00:00.000000000 Z
10
+ date: 2026-05-07 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: base64
@@ -115,6 +115,9 @@ files:
115
115
  - lib/svix/api/streaming_sink.rb
116
116
  - lib/svix/api/streaming_stream.rb
117
117
  - lib/svix/api_error.rb
118
+ - lib/svix/api_internal/endpoint.rb
119
+ - lib/svix/api_internal/endpoint_auto_config.rb
120
+ - lib/svix/autoconfig.rb
118
121
  - lib/svix/errors.rb
119
122
  - lib/svix/http_error_out.rb
120
123
  - lib/svix/http_validation_error.rb
@@ -324,6 +327,7 @@ files:
324
327
  - lib/svix/models/stream_token_expire_in.rb
325
328
  - lib/svix/models/stripe_config.rb
326
329
  - lib/svix/models/stripe_config_out.rb
330
+ - lib/svix/models/subscribe_in.rb
327
331
  - lib/svix/models/svix_config.rb
328
332
  - lib/svix/models/svix_config_out.rb
329
333
  - lib/svix/models/telnyx_config.rb
@@ -332,6 +336,8 @@ files:
332
336
  - lib/svix/models/vapi_config_out.rb
333
337
  - lib/svix/models/veriff_config.rb
334
338
  - lib/svix/models/veriff_config_out.rb
339
+ - lib/svix/models/vgs_config.rb
340
+ - lib/svix/models/vgs_config_out.rb
335
341
  - lib/svix/models/zoom_config.rb
336
342
  - lib/svix/models/zoom_config_out.rb
337
343
  - lib/svix/svix.rb