pingram 1.0.30 → 1.0.31

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: b060d82b88d28f53793bd5088b8365bd2b1156c99003032087ff4f7356cde479
4
- data.tar.gz: 4c141e3cf23edf0e18a7651746164f869464144116fd31ebc7a738b504ad7130
3
+ metadata.gz: 1f6ad60125911770d223ca8d214b8a2940219d857890a112e0e59944e5095482
4
+ data.tar.gz: 01da7ff2cf74ab8edcbb47f1820f950175fbadfc12266733e4d8ddfefeba38ab
5
5
  SHA512:
6
- metadata.gz: 5c22df0d321c8c8c006c9c5d6d4cf8defd9ecec06365b3fcdcfd975bce559f63af363dd57291b1589e9c3a11297cc44e4fb545a119ce522f021bee38bedf096b
7
- data.tar.gz: 0fda0509597950d768dc479f71a60b13dc0bd2ba68e76640b2160ddec58f57d526d2d2a0335feb0c12b45cef63a0198761c1bed891052628c04426dfcd0c9bbf
6
+ metadata.gz: e384d353b41c0671b702397a051003ab56603716b2b97da359aac7365332c2e56dbafd38a008ff136a4426f2b35c430569c4224eadabbb0a74989f2ba982defb
7
+ data.tar.gz: d711627dc58b22961656bcd76845c55efe0f22687bc71eec569f9d64b64dcacf18ee2b7da0f3f33987e44427a19633dd382558d246a4f7e5b8d656f6f246a3b1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pingram (1.0.30)
4
+ pingram (1.0.31)
5
5
  typhoeus (~> 1.0, >= 1.0.1)
6
6
 
7
7
  GEM
@@ -19,23 +19,95 @@ module Pingram
19
19
  def initialize(api_client = ApiClient.default)
20
20
  @api_client = api_client
21
21
  end
22
- # Delete the events webhook configuration for the current account/environment.
22
+ # Create a webhook.
23
+ # @param webhook_endpoint_upsert_request [WebhookEndpointUpsertRequest]
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [WebhookEndpoint]
26
+ def webhooks_create_webhook(webhook_endpoint_upsert_request, opts = {})
27
+ data, _status_code, _headers = webhooks_create_webhook_with_http_info(webhook_endpoint_upsert_request, opts)
28
+ data
29
+ end
30
+
31
+ # Create a webhook.
32
+ # @param webhook_endpoint_upsert_request [WebhookEndpointUpsertRequest]
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(WebhookEndpoint, Integer, Hash)>] WebhookEndpoint data, response status code and response headers
35
+ def webhooks_create_webhook_with_http_info(webhook_endpoint_upsert_request, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_create_webhook ...'
38
+ end
39
+ # verify the required parameter 'webhook_endpoint_upsert_request' is set
40
+ if @api_client.config.client_side_validation && webhook_endpoint_upsert_request.nil?
41
+ fail ArgumentError, "Missing the required parameter 'webhook_endpoint_upsert_request' when calling WebhooksApi.webhooks_create_webhook"
42
+ end
43
+ # resource path
44
+ local_var_path = '/webhooks'
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
53
+ # HTTP header 'Content-Type'
54
+ content_type = @api_client.select_header_content_type(['application/json'])
55
+ if !content_type.nil?
56
+ header_params['Content-Type'] = content_type
57
+ end
58
+
59
+ # form parameters
60
+ form_params = opts[:form_params] || {}
61
+
62
+ # http body (model)
63
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(webhook_endpoint_upsert_request)
64
+
65
+ # return_type
66
+ return_type = opts[:debug_return_type] || 'WebhookEndpoint'
67
+
68
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
69
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
70
+
71
+ new_options = opts.merge(
72
+ :operation => :"WebhooksApi.webhooks_create_webhook",
73
+ :header_params => header_params,
74
+ :query_params => query_params,
75
+ :form_params => form_params,
76
+ :body => post_body,
77
+ :auth_names => auth_names,
78
+ :return_type => return_type
79
+ )
80
+
81
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
82
+ if @api_client.config.debugging
83
+ @api_client.config.logger.debug "API called: WebhooksApi#webhooks_create_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
84
+ end
85
+ return data, status_code, headers
86
+ end
87
+
88
+ # Delete a webhook.
89
+ # @param endpoint_id [String] Webhook endpoint id
23
90
  # @param [Hash] opts the optional parameters
24
91
  # @return [nil]
25
- def webhooks_delete_events_webhook(opts = {})
26
- webhooks_delete_events_webhook_with_http_info(opts)
92
+ def webhooks_delete_webhook(endpoint_id, opts = {})
93
+ webhooks_delete_webhook_with_http_info(endpoint_id, opts)
27
94
  nil
28
95
  end
29
96
 
30
- # Delete the events webhook configuration for the current account/environment.
97
+ # Delete a webhook.
98
+ # @param endpoint_id [String] Webhook endpoint id
31
99
  # @param [Hash] opts the optional parameters
32
100
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
33
- def webhooks_delete_events_webhook_with_http_info(opts = {})
101
+ def webhooks_delete_webhook_with_http_info(endpoint_id, opts = {})
34
102
  if @api_client.config.debugging
35
- @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_delete_events_webhook ...'
103
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_delete_webhook ...'
104
+ end
105
+ # verify the required parameter 'endpoint_id' is set
106
+ if @api_client.config.client_side_validation && endpoint_id.nil?
107
+ fail ArgumentError, "Missing the required parameter 'endpoint_id' when calling WebhooksApi.webhooks_delete_webhook"
36
108
  end
37
109
  # resource path
38
- local_var_path = '/webhooks/events'
110
+ local_var_path = '/webhooks/{endpointId}'.sub('{' + 'endpointId' + '}', CGI.escape(endpoint_id.to_s))
39
111
 
40
112
  # query parameters
41
113
  query_params = opts[:query_params] || {}
@@ -58,7 +130,7 @@ module Pingram
58
130
  auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
59
131
 
60
132
  new_options = opts.merge(
61
- :operation => :"WebhooksApi.webhooks_delete_events_webhook",
133
+ :operation => :"WebhooksApi.webhooks_delete_webhook",
62
134
  :header_params => header_params,
63
135
  :query_params => query_params,
64
136
  :form_params => form_params,
@@ -69,28 +141,28 @@ module Pingram
69
141
 
70
142
  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
71
143
  if @api_client.config.debugging
72
- @api_client.config.logger.debug "API called: WebhooksApi#webhooks_delete_events_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
144
+ @api_client.config.logger.debug "API called: WebhooksApi#webhooks_delete_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
145
  end
74
146
  return data, status_code, headers
75
147
  end
76
148
 
77
- # Get the events webhook configuration for the current account/environment.
149
+ # List webhooks for the current account.
78
150
  # @param [Hash] opts the optional parameters
79
- # @return [EventsWebhookResponse]
80
- def webhooks_get_events_webhook(opts = {})
81
- data, _status_code, _headers = webhooks_get_events_webhook_with_http_info(opts)
151
+ # @return [WebhookEndpointsResponse]
152
+ def webhooks_list_webhooks(opts = {})
153
+ data, _status_code, _headers = webhooks_list_webhooks_with_http_info(opts)
82
154
  data
83
155
  end
84
156
 
85
- # Get the events webhook configuration for the current account/environment.
157
+ # List webhooks for the current account.
86
158
  # @param [Hash] opts the optional parameters
87
- # @return [Array<(EventsWebhookResponse, Integer, Hash)>] EventsWebhookResponse data, response status code and response headers
88
- def webhooks_get_events_webhook_with_http_info(opts = {})
159
+ # @return [Array<(WebhookEndpointsResponse, Integer, Hash)>] WebhookEndpointsResponse data, response status code and response headers
160
+ def webhooks_list_webhooks_with_http_info(opts = {})
89
161
  if @api_client.config.debugging
90
- @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_get_events_webhook ...'
162
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_list_webhooks ...'
91
163
  end
92
164
  # resource path
93
- local_var_path = '/webhooks/events'
165
+ local_var_path = '/webhooks'
94
166
 
95
167
  # query parameters
96
168
  query_params = opts[:query_params] || {}
@@ -107,13 +179,13 @@ module Pingram
107
179
  post_body = opts[:debug_body]
108
180
 
109
181
  # return_type
110
- return_type = opts[:debug_return_type] || 'EventsWebhookResponse'
182
+ return_type = opts[:debug_return_type] || 'WebhookEndpointsResponse'
111
183
 
112
184
  # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
113
185
  auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
114
186
 
115
187
  new_options = opts.merge(
116
- :operation => :"WebhooksApi.webhooks_get_events_webhook",
188
+ :operation => :"WebhooksApi.webhooks_list_webhooks",
117
189
  :header_params => header_params,
118
190
  :query_params => query_params,
119
191
  :form_params => form_params,
@@ -124,34 +196,40 @@ module Pingram
124
196
 
125
197
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
126
198
  if @api_client.config.debugging
127
- @api_client.config.logger.debug "API called: WebhooksApi#webhooks_get_events_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
199
+ @api_client.config.logger.debug "API called: WebhooksApi#webhooks_list_webhooks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
128
200
  end
129
201
  return data, status_code, headers
130
202
  end
131
203
 
132
- # Create or update the events webhook configuration for the current account/environment.
133
- # @param events_webhook_upsert_request [EventsWebhookUpsertRequest]
204
+ # Update a webhook. The signing secret is preserved.
205
+ # @param endpoint_id [String] Webhook endpoint id
206
+ # @param webhook_endpoint_upsert_request [WebhookEndpointUpsertRequest]
134
207
  # @param [Hash] opts the optional parameters
135
- # @return [EventsWebhookResponse]
136
- def webhooks_upsert_events_webhook(events_webhook_upsert_request, opts = {})
137
- data, _status_code, _headers = webhooks_upsert_events_webhook_with_http_info(events_webhook_upsert_request, opts)
208
+ # @return [WebhookEndpoint]
209
+ def webhooks_update_webhook(endpoint_id, webhook_endpoint_upsert_request, opts = {})
210
+ data, _status_code, _headers = webhooks_update_webhook_with_http_info(endpoint_id, webhook_endpoint_upsert_request, opts)
138
211
  data
139
212
  end
140
213
 
141
- # Create or update the events webhook configuration for the current account/environment.
142
- # @param events_webhook_upsert_request [EventsWebhookUpsertRequest]
214
+ # Update a webhook. The signing secret is preserved.
215
+ # @param endpoint_id [String] Webhook endpoint id
216
+ # @param webhook_endpoint_upsert_request [WebhookEndpointUpsertRequest]
143
217
  # @param [Hash] opts the optional parameters
144
- # @return [Array<(EventsWebhookResponse, Integer, Hash)>] EventsWebhookResponse data, response status code and response headers
145
- def webhooks_upsert_events_webhook_with_http_info(events_webhook_upsert_request, opts = {})
218
+ # @return [Array<(WebhookEndpoint, Integer, Hash)>] WebhookEndpoint data, response status code and response headers
219
+ def webhooks_update_webhook_with_http_info(endpoint_id, webhook_endpoint_upsert_request, opts = {})
146
220
  if @api_client.config.debugging
147
- @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_upsert_events_webhook ...'
221
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.webhooks_update_webhook ...'
222
+ end
223
+ # verify the required parameter 'endpoint_id' is set
224
+ if @api_client.config.client_side_validation && endpoint_id.nil?
225
+ fail ArgumentError, "Missing the required parameter 'endpoint_id' when calling WebhooksApi.webhooks_update_webhook"
148
226
  end
149
- # verify the required parameter 'events_webhook_upsert_request' is set
150
- if @api_client.config.client_side_validation && events_webhook_upsert_request.nil?
151
- fail ArgumentError, "Missing the required parameter 'events_webhook_upsert_request' when calling WebhooksApi.webhooks_upsert_events_webhook"
227
+ # verify the required parameter 'webhook_endpoint_upsert_request' is set
228
+ if @api_client.config.client_side_validation && webhook_endpoint_upsert_request.nil?
229
+ fail ArgumentError, "Missing the required parameter 'webhook_endpoint_upsert_request' when calling WebhooksApi.webhooks_update_webhook"
152
230
  end
153
231
  # resource path
154
- local_var_path = '/webhooks/events'
232
+ local_var_path = '/webhooks/{endpointId}'.sub('{' + 'endpointId' + '}', CGI.escape(endpoint_id.to_s))
155
233
 
156
234
  # query parameters
157
235
  query_params = opts[:query_params] || {}
@@ -170,16 +248,16 @@ module Pingram
170
248
  form_params = opts[:form_params] || {}
171
249
 
172
250
  # http body (model)
173
- post_body = opts[:debug_body] || @api_client.object_to_http_body(events_webhook_upsert_request)
251
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(webhook_endpoint_upsert_request)
174
252
 
175
253
  # return_type
176
- return_type = opts[:debug_return_type] || 'EventsWebhookResponse'
254
+ return_type = opts[:debug_return_type] || 'WebhookEndpoint'
177
255
 
178
256
  # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
179
257
  auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
180
258
 
181
259
  new_options = opts.merge(
182
- :operation => :"WebhooksApi.webhooks_upsert_events_webhook",
260
+ :operation => :"WebhooksApi.webhooks_update_webhook",
183
261
  :header_params => header_params,
184
262
  :query_params => query_params,
185
263
  :form_params => form_params,
@@ -190,7 +268,7 @@ module Pingram
190
268
 
191
269
  data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
192
270
  if @api_client.config.debugging
193
- @api_client.config.logger.debug "API called: WebhooksApi#webhooks_upsert_events_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
271
+ @api_client.config.logger.debug "API called: WebhooksApi#webhooks_update_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
194
272
  end
195
273
  return data, status_code, headers
196
274
  end
@@ -32,7 +32,7 @@ module Pingram
32
32
  # @option config [Configuration] Configuration for initializing the object, default to Configuration.default
33
33
  def initialize(config = Configuration.default)
34
34
  @config = config
35
- @user_agent = "pingram-ruby/1.0.30"
35
+ @user_agent = "pingram-ruby/1.0.31"
36
36
  @default_headers = {
37
37
  'Content-Type' => 'application/json',
38
38
  'User-Agent' => @user_agent
@@ -14,15 +14,15 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Pingram
17
- # Events webhook configuration returned by the API.
18
- class EventsWebhookResponse < ApiModelBase
19
- # Storage key in the format accountId:envId (currently accountId:accountId for account-scoped usage).
20
- attr_accessor :webhook_id
17
+ # Destination URL that receives signed event payloads for a set of subscribed events.
18
+ class WebhookEndpoint < ApiModelBase
19
+ # Unique identifier for this endpoint within the account.
20
+ attr_accessor :id
21
21
 
22
22
  # Destination URL that receives webhook event payloads.
23
23
  attr_accessor :webhook
24
24
 
25
- # List of subscribed event types for this webhook configuration.
25
+ # List of subscribed event types for this endpoint.
26
26
  attr_accessor :events
27
27
 
28
28
  # HMAC secret for verifying webhook signatures. Use this with your X-Pingram-Signature verification.
@@ -53,7 +53,7 @@ module Pingram
53
53
  # Attribute mapping from ruby-style variable name to JSON key.
54
54
  def self.attribute_map
55
55
  {
56
- :'webhook_id' => :'webhookId',
56
+ :'id' => :'id',
57
57
  :'webhook' => :'webhook',
58
58
  :'events' => :'events',
59
59
  :'secret' => :'secret'
@@ -73,7 +73,7 @@ module Pingram
73
73
  # Attribute type mapping.
74
74
  def self.openapi_types
75
75
  {
76
- :'webhook_id' => :'String',
76
+ :'id' => :'String',
77
77
  :'webhook' => :'String',
78
78
  :'events' => :'Array<String>',
79
79
  :'secret' => :'String'
@@ -90,22 +90,22 @@ module Pingram
90
90
  # @param [Hash] attributes Model attributes in the form of hash
91
91
  def initialize(attributes = {})
92
92
  if (!attributes.is_a?(Hash))
93
- fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::EventsWebhookResponse` initialize method"
93
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::WebhookEndpoint` initialize method"
94
94
  end
95
95
 
96
96
  # check to see if the attribute exists and convert string to symbol for hash key
97
97
  acceptable_attribute_map = self.class.acceptable_attribute_map
98
98
  attributes = attributes.each_with_object({}) { |(k, v), h|
99
99
  if (!acceptable_attribute_map.key?(k.to_sym))
100
- fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::EventsWebhookResponse`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
100
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::WebhookEndpoint`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
101
101
  end
102
102
  h[k.to_sym] = v
103
103
  }
104
104
 
105
- if attributes.key?(:'webhook_id')
106
- self.webhook_id = attributes[:'webhook_id']
105
+ if attributes.key?(:'id')
106
+ self.id = attributes[:'id']
107
107
  else
108
- self.webhook_id = nil
108
+ self.id = nil
109
109
  end
110
110
 
111
111
  if attributes.key?(:'webhook')
@@ -134,8 +134,8 @@ module Pingram
134
134
  def list_invalid_properties
135
135
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
136
136
  invalid_properties = Array.new
137
- if @webhook_id.nil?
138
- invalid_properties.push('invalid value for "webhook_id", webhook_id cannot be nil.')
137
+ if @id.nil?
138
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
139
139
  end
140
140
 
141
141
  if @webhook.nil?
@@ -157,7 +157,7 @@ module Pingram
157
157
  # @return true if the model is valid
158
158
  def valid?
159
159
  warn '[DEPRECATED] the `valid?` method is obsolete'
160
- return false if @webhook_id.nil?
160
+ return false if @id.nil?
161
161
  return false if @webhook.nil?
162
162
  return false if @events.nil?
163
163
  return false if @secret.nil?
@@ -165,13 +165,13 @@ module Pingram
165
165
  end
166
166
 
167
167
  # Custom attribute writer method with validation
168
- # @param [Object] webhook_id Value to be assigned
169
- def webhook_id=(webhook_id)
170
- if webhook_id.nil?
171
- fail ArgumentError, 'webhook_id cannot be nil'
168
+ # @param [Object] id Value to be assigned
169
+ def id=(id)
170
+ if id.nil?
171
+ fail ArgumentError, 'id cannot be nil'
172
172
  end
173
173
 
174
- @webhook_id = webhook_id
174
+ @id = id
175
175
  end
176
176
 
177
177
  # Custom attribute writer method with validation
@@ -199,7 +199,7 @@ module Pingram
199
199
  def ==(o)
200
200
  return true if self.equal?(o)
201
201
  self.class == o.class &&
202
- webhook_id == o.webhook_id &&
202
+ id == o.id &&
203
203
  webhook == o.webhook &&
204
204
  events == o.events &&
205
205
  secret == o.secret
@@ -214,7 +214,7 @@ module Pingram
214
214
  # Calculates hash code according to all attributes.
215
215
  # @return [Integer] Hash code
216
216
  def hash
217
- [webhook_id, webhook, events, secret].hash
217
+ [id, webhook, events, secret].hash
218
218
  end
219
219
 
220
220
  # Builds the object from hash
@@ -14,8 +14,8 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Pingram
17
- # Request body for creating or updating the events webhook configuration.
18
- class EventsWebhookUpsertRequest < ApiModelBase
17
+ # Request body for creating or updating an events webhook endpoint.
18
+ class WebhookEndpointUpsertRequest < ApiModelBase
19
19
  # Destination URL that receives webhook event payloads. Must be a valid http(s) URL.
20
20
  attr_accessor :webhook
21
21
 
@@ -80,14 +80,14 @@ module Pingram
80
80
  # @param [Hash] attributes Model attributes in the form of hash
81
81
  def initialize(attributes = {})
82
82
  if (!attributes.is_a?(Hash))
83
- fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::EventsWebhookUpsertRequest` initialize method"
83
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::WebhookEndpointUpsertRequest` initialize method"
84
84
  end
85
85
 
86
86
  # check to see if the attribute exists and convert string to symbol for hash key
87
87
  acceptable_attribute_map = self.class.acceptable_attribute_map
88
88
  attributes = attributes.each_with_object({}) { |(k, v), h|
89
89
  if (!acceptable_attribute_map.key?(k.to_sym))
90
- fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::EventsWebhookUpsertRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
90
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::WebhookEndpointUpsertRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
91
91
  end
92
92
  h[k.to_sym] = v
93
93
  }
@@ -0,0 +1,168 @@
1
+ =begin
2
+ #Pingram
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pingram
17
+ # Events webhook endpoints configured for the current account.
18
+ class WebhookEndpointsResponse < ApiModelBase
19
+ # Configured webhook endpoints. Empty when none exist.
20
+ attr_accessor :endpoints
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'endpoints' => :'endpoints'
26
+ }
27
+ end
28
+
29
+ # Returns attribute mapping this model knows about
30
+ def self.acceptable_attribute_map
31
+ attribute_map
32
+ end
33
+
34
+ # Returns all the JSON keys this model knows about
35
+ def self.acceptable_attributes
36
+ acceptable_attribute_map.values
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.openapi_types
41
+ {
42
+ :'endpoints' => :'Array<WebhookEndpointsResponseEndpointsInner>'
43
+ }
44
+ end
45
+
46
+ # List of attributes with nullable: true
47
+ def self.openapi_nullable
48
+ Set.new([
49
+ ])
50
+ end
51
+
52
+ # Initializes the object
53
+ # @param [Hash] attributes Model attributes in the form of hash
54
+ def initialize(attributes = {})
55
+ if (!attributes.is_a?(Hash))
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::WebhookEndpointsResponse` initialize method"
57
+ end
58
+
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ acceptable_attribute_map = self.class.acceptable_attribute_map
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!acceptable_attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::WebhookEndpointsResponse`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'endpoints')
69
+ if (value = attributes[:'endpoints']).is_a?(Array)
70
+ self.endpoints = value
71
+ end
72
+ else
73
+ self.endpoints = nil
74
+ end
75
+ end
76
+
77
+ # Show invalid properties with the reasons. Usually used together with valid?
78
+ # @return Array for valid properties with the reasons
79
+ def list_invalid_properties
80
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
81
+ invalid_properties = Array.new
82
+ if @endpoints.nil?
83
+ invalid_properties.push('invalid value for "endpoints", endpoints cannot be nil.')
84
+ end
85
+
86
+ invalid_properties
87
+ end
88
+
89
+ # Check to see if the all the properties in the model are valid
90
+ # @return true if the model is valid
91
+ def valid?
92
+ warn '[DEPRECATED] the `valid?` method is obsolete'
93
+ return false if @endpoints.nil?
94
+ true
95
+ end
96
+
97
+ # Custom attribute writer method with validation
98
+ # @param [Object] endpoints Value to be assigned
99
+ def endpoints=(endpoints)
100
+ if endpoints.nil?
101
+ fail ArgumentError, 'endpoints cannot be nil'
102
+ end
103
+
104
+ @endpoints = endpoints
105
+ end
106
+
107
+ # Checks equality by comparing each attribute.
108
+ # @param [Object] Object to be compared
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ endpoints == o.endpoints
113
+ end
114
+
115
+ # @see the `==` method
116
+ # @param [Object] Object to be compared
117
+ def eql?(o)
118
+ self == o
119
+ end
120
+
121
+ # Calculates hash code according to all attributes.
122
+ # @return [Integer] Hash code
123
+ def hash
124
+ [endpoints].hash
125
+ end
126
+
127
+ # Builds the object from hash
128
+ # @param [Hash] attributes Model attributes in the form of hash
129
+ # @return [Object] Returns the model itself
130
+ def self.build_from_hash(attributes)
131
+ return nil unless attributes.is_a?(Hash)
132
+ attributes = attributes.transform_keys(&:to_sym)
133
+ transformed_hash = {}
134
+ openapi_types.each_pair do |key, type|
135
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
136
+ transformed_hash["#{key}"] = nil
137
+ elsif type =~ /\AArray<(.*)>/i
138
+ # check to ensure the input is an array given that the attribute
139
+ # is documented as an array but the input is not
140
+ if attributes[attribute_map[key]].is_a?(Array)
141
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
142
+ end
143
+ elsif !attributes[attribute_map[key]].nil?
144
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
145
+ end
146
+ end
147
+ new(transformed_hash)
148
+ end
149
+
150
+ # Returns the object in the form of hash
151
+ # @return [Hash] Returns the object in the form of hash
152
+ def to_hash
153
+ hash = {}
154
+ self.class.attribute_map.each_pair do |attr, param|
155
+ value = self.send(attr)
156
+ if value.nil?
157
+ is_nullable = self.class.openapi_nullable.include?(attr)
158
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
159
+ end
160
+
161
+ hash[param] = _to_hash(value)
162
+ end
163
+ hash
164
+ end
165
+
166
+ end
167
+
168
+ end
@@ -0,0 +1,261 @@
1
+ =begin
2
+ #Pingram
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pingram
17
+ # Destination URL that receives signed event payloads for a set of subscribed events.
18
+ class WebhookEndpointsResponseEndpointsInner < ApiModelBase
19
+ # Unique identifier for this endpoint within the account.
20
+ attr_accessor :id
21
+
22
+ # Destination URL that receives webhook event payloads.
23
+ attr_accessor :webhook
24
+
25
+ # List of subscribed event types for this endpoint.
26
+ attr_accessor :events
27
+
28
+ # HMAC secret for verifying webhook signatures. Use this with your X-Pingram-Signature verification.
29
+ attr_accessor :secret
30
+
31
+ class EnumAttributeValidator
32
+ attr_reader :datatype
33
+ attr_reader :allowable_values
34
+
35
+ def initialize(datatype, allowable_values)
36
+ @allowable_values = allowable_values.map do |value|
37
+ case datatype.to_s
38
+ when /Integer/i
39
+ value.to_i
40
+ when /Float/i
41
+ value.to_f
42
+ else
43
+ value
44
+ end
45
+ end
46
+ end
47
+
48
+ def valid?(value)
49
+ !value || allowable_values.include?(value)
50
+ end
51
+ end
52
+
53
+ # Attribute mapping from ruby-style variable name to JSON key.
54
+ def self.attribute_map
55
+ {
56
+ :'id' => :'id',
57
+ :'webhook' => :'webhook',
58
+ :'events' => :'events',
59
+ :'secret' => :'secret'
60
+ }
61
+ end
62
+
63
+ # Returns attribute mapping this model knows about
64
+ def self.acceptable_attribute_map
65
+ attribute_map
66
+ end
67
+
68
+ # Returns all the JSON keys this model knows about
69
+ def self.acceptable_attributes
70
+ acceptable_attribute_map.values
71
+ end
72
+
73
+ # Attribute type mapping.
74
+ def self.openapi_types
75
+ {
76
+ :'id' => :'String',
77
+ :'webhook' => :'String',
78
+ :'events' => :'Array<String>',
79
+ :'secret' => :'String'
80
+ }
81
+ end
82
+
83
+ # List of attributes with nullable: true
84
+ def self.openapi_nullable
85
+ Set.new([
86
+ ])
87
+ end
88
+
89
+ # Initializes the object
90
+ # @param [Hash] attributes Model attributes in the form of hash
91
+ def initialize(attributes = {})
92
+ if (!attributes.is_a?(Hash))
93
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::WebhookEndpointsResponseEndpointsInner` initialize method"
94
+ end
95
+
96
+ # check to see if the attribute exists and convert string to symbol for hash key
97
+ acceptable_attribute_map = self.class.acceptable_attribute_map
98
+ attributes = attributes.each_with_object({}) { |(k, v), h|
99
+ if (!acceptable_attribute_map.key?(k.to_sym))
100
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::WebhookEndpointsResponseEndpointsInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
101
+ end
102
+ h[k.to_sym] = v
103
+ }
104
+
105
+ if attributes.key?(:'id')
106
+ self.id = attributes[:'id']
107
+ else
108
+ self.id = nil
109
+ end
110
+
111
+ if attributes.key?(:'webhook')
112
+ self.webhook = attributes[:'webhook']
113
+ else
114
+ self.webhook = nil
115
+ end
116
+
117
+ if attributes.key?(:'events')
118
+ if (value = attributes[:'events']).is_a?(Array)
119
+ self.events = value
120
+ end
121
+ else
122
+ self.events = nil
123
+ end
124
+
125
+ if attributes.key?(:'secret')
126
+ self.secret = attributes[:'secret']
127
+ else
128
+ self.secret = nil
129
+ end
130
+ end
131
+
132
+ # Show invalid properties with the reasons. Usually used together with valid?
133
+ # @return Array for valid properties with the reasons
134
+ def list_invalid_properties
135
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
136
+ invalid_properties = Array.new
137
+ if @id.nil?
138
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
139
+ end
140
+
141
+ if @webhook.nil?
142
+ invalid_properties.push('invalid value for "webhook", webhook cannot be nil.')
143
+ end
144
+
145
+ if @events.nil?
146
+ invalid_properties.push('invalid value for "events", events cannot be nil.')
147
+ end
148
+
149
+ if @secret.nil?
150
+ invalid_properties.push('invalid value for "secret", secret cannot be nil.')
151
+ end
152
+
153
+ invalid_properties
154
+ end
155
+
156
+ # Check to see if the all the properties in the model are valid
157
+ # @return true if the model is valid
158
+ def valid?
159
+ warn '[DEPRECATED] the `valid?` method is obsolete'
160
+ return false if @id.nil?
161
+ return false if @webhook.nil?
162
+ return false if @events.nil?
163
+ return false if @secret.nil?
164
+ true
165
+ end
166
+
167
+ # Custom attribute writer method with validation
168
+ # @param [Object] id Value to be assigned
169
+ def id=(id)
170
+ if id.nil?
171
+ fail ArgumentError, 'id cannot be nil'
172
+ end
173
+
174
+ @id = id
175
+ end
176
+
177
+ # Custom attribute writer method with validation
178
+ # @param [Object] webhook Value to be assigned
179
+ def webhook=(webhook)
180
+ if webhook.nil?
181
+ fail ArgumentError, 'webhook cannot be nil'
182
+ end
183
+
184
+ @webhook = webhook
185
+ end
186
+
187
+ # Custom attribute writer method with validation
188
+ # @param [Object] secret Value to be assigned
189
+ def secret=(secret)
190
+ if secret.nil?
191
+ fail ArgumentError, 'secret cannot be nil'
192
+ end
193
+
194
+ @secret = secret
195
+ end
196
+
197
+ # Checks equality by comparing each attribute.
198
+ # @param [Object] Object to be compared
199
+ def ==(o)
200
+ return true if self.equal?(o)
201
+ self.class == o.class &&
202
+ id == o.id &&
203
+ webhook == o.webhook &&
204
+ events == o.events &&
205
+ secret == o.secret
206
+ end
207
+
208
+ # @see the `==` method
209
+ # @param [Object] Object to be compared
210
+ def eql?(o)
211
+ self == o
212
+ end
213
+
214
+ # Calculates hash code according to all attributes.
215
+ # @return [Integer] Hash code
216
+ def hash
217
+ [id, webhook, events, secret].hash
218
+ end
219
+
220
+ # Builds the object from hash
221
+ # @param [Hash] attributes Model attributes in the form of hash
222
+ # @return [Object] Returns the model itself
223
+ def self.build_from_hash(attributes)
224
+ return nil unless attributes.is_a?(Hash)
225
+ attributes = attributes.transform_keys(&:to_sym)
226
+ transformed_hash = {}
227
+ openapi_types.each_pair do |key, type|
228
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
229
+ transformed_hash["#{key}"] = nil
230
+ elsif type =~ /\AArray<(.*)>/i
231
+ # check to ensure the input is an array given that the attribute
232
+ # is documented as an array but the input is not
233
+ if attributes[attribute_map[key]].is_a?(Array)
234
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
235
+ end
236
+ elsif !attributes[attribute_map[key]].nil?
237
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
238
+ end
239
+ end
240
+ new(transformed_hash)
241
+ end
242
+
243
+ # Returns the object in the form of hash
244
+ # @return [Hash] Returns the object in the form of hash
245
+ def to_hash
246
+ hash = {}
247
+ self.class.attribute_map.each_pair do |attr, param|
248
+ value = self.send(attr)
249
+ if value.nil?
250
+ is_nullable = self.class.openapi_nullable.include?(attr)
251
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
252
+ end
253
+
254
+ hash[param] = _to_hash(value)
255
+ end
256
+ hash
257
+ end
258
+
259
+ end
260
+
261
+ end
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Pingram
14
- VERSION = '1.0.30'
14
+ VERSION = '1.0.31'
15
15
  end
data/lib/pingram.rb CHANGED
@@ -77,8 +77,6 @@ require 'pingram/models/email_component_response'
77
77
  require 'pingram/models/email_component_response_referenced_by_inner'
78
78
  require 'pingram/models/environment'
79
79
  require 'pingram/models/environment_patch_request'
80
- require 'pingram/models/events_webhook_response'
81
- require 'pingram/models/events_webhook_upsert_request'
82
80
  require 'pingram/models/first_account_request'
83
81
  require 'pingram/models/first_account_response'
84
82
  require 'pingram/models/get_account_metadata_response'
@@ -290,6 +288,10 @@ require 'pingram/models/voice_browser_call_request'
290
288
  require 'pingram/models/voice_browser_call_response'
291
289
  require 'pingram/models/voice_call_request'
292
290
  require 'pingram/models/voice_call_response'
291
+ require 'pingram/models/webhook_endpoint'
292
+ require 'pingram/models/webhook_endpoint_upsert_request'
293
+ require 'pingram/models/webhook_endpoints_response'
294
+ require 'pingram/models/webhook_endpoints_response_endpoints_inner'
293
295
  require 'pingram/models/webhook_event'
294
296
  require 'pingram/models/webhook_response'
295
297
 
@@ -3,10 +3,10 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
6
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-1bd7ps sitelibdir\=./.gem.20260910-2474-1bd7ps clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-o65qgz sitelibdir\=./.gem.20260911-2524-o65qgz clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
9
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-1bd7ps sitelibdir\=./.gem.20260910-2474-1bd7ps
9
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-o65qgz sitelibdir\=./.gem.20260911-2524-o65qgz
10
10
  compiling breakpoint.c
11
11
  compiling byebug.c
12
12
  byebug.c: In function ‘check_started’:
@@ -35,8 +35,8 @@ compiling threads.c
35
35
  linking shared-object byebug/byebug.so
36
36
 
37
37
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
38
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-1bd7ps sitelibdir\=./.gem.20260910-2474-1bd7ps install
39
- /usr/bin/install -c -m 0755 byebug.so ./.gem.20260910-2474-1bd7ps/byebug
38
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-o65qgz sitelibdir\=./.gem.20260911-2524-o65qgz install
39
+ /usr/bin/install -c -m 0755 byebug.so ./.gem.20260911-2524-o65qgz/byebug
40
40
 
41
41
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
42
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-1bd7ps sitelibdir\=./.gem.20260910-2474-1bd7ps clean
42
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-o65qgz sitelibdir\=./.gem.20260911-2524-o65qgz clean
@@ -6,10 +6,10 @@ checking for altzone in time.h with -Werror... no
6
6
  creating Makefile
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
9
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-c0hrrx sitelibdir\=./.gem.20260910-2474-c0hrrx clean
9
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-me45g0 sitelibdir\=./.gem.20260911-2524-me45g0 clean
10
10
 
11
11
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
12
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-c0hrrx sitelibdir\=./.gem.20260910-2474-c0hrrx
12
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-me45g0 sitelibdir\=./.gem.20260911-2524-me45g0
13
13
  compiling date_core.c
14
14
  compiling date_parse.c
15
15
  compiling date_strftime.c
@@ -17,8 +17,8 @@ compiling date_strptime.c
17
17
  linking shared-object date_core.so
18
18
 
19
19
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
20
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-c0hrrx sitelibdir\=./.gem.20260910-2474-c0hrrx install
21
- /usr/bin/install -c -m 0755 date_core.so ./.gem.20260910-2474-c0hrrx
20
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-me45g0 sitelibdir\=./.gem.20260911-2524-me45g0 install
21
+ /usr/bin/install -c -m 0755 date_core.so ./.gem.20260911-2524-me45g0
22
22
 
23
23
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
24
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-c0hrrx sitelibdir\=./.gem.20260910-2474-c0hrrx clean
24
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-me45g0 sitelibdir\=./.gem.20260911-2524-me45g0 clean
@@ -17,16 +17,16 @@ checking for rb_prepend_module()... yes
17
17
  creating Makefile
18
18
 
19
19
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console
20
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-7k6wwz sitelibdir\=./.gem.20260910-2474-7k6wwz clean
20
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-240zpg sitelibdir\=./.gem.20260911-2524-240zpg clean
21
21
 
22
22
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console
23
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-7k6wwz sitelibdir\=./.gem.20260910-2474-7k6wwz
23
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-240zpg sitelibdir\=./.gem.20260911-2524-240zpg
24
24
  compiling console.c
25
25
  linking shared-object io/console.so
26
26
 
27
27
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console
28
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-7k6wwz sitelibdir\=./.gem.20260910-2474-7k6wwz install
29
- /usr/bin/install -c -m 0755 console.so ./.gem.20260910-2474-7k6wwz/io
28
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-240zpg sitelibdir\=./.gem.20260911-2524-240zpg install
29
+ /usr/bin/install -c -m 0755 console.so ./.gem.20260911-2524-240zpg/io
30
30
 
31
31
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console
32
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-7k6wwz sitelibdir\=./.gem.20260910-2474-7k6wwz clean
32
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-240zpg sitelibdir\=./.gem.20260911-2524-240zpg clean
@@ -143,7 +143,7 @@ checked program was:
143
143
  /* end */
144
144
 
145
145
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
146
- /usr/bin/ld: /tmp/ccpmzFIP.o: in function `t':
146
+ /usr/bin/ld: /tmp/cc1T4yf5.o: in function `t':
147
147
  /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_path'
148
148
  collect2: error: ld returned 1 exit status
149
149
  checked program was:
@@ -203,7 +203,7 @@ checked program was:
203
203
  /* end */
204
204
 
205
205
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
206
- /usr/bin/ld: /tmp/cclkIkqL.o: in function `t':
206
+ /usr/bin/ld: /tmp/ccvCeq5c.o: in function `t':
207
207
  /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_closed_p'
208
208
  collect2: error: ld returned 1 exit status
209
209
  checked program was:
@@ -263,7 +263,7 @@ checked program was:
263
263
  /* end */
264
264
 
265
265
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
266
- /usr/bin/ld: /tmp/ccYZ2nIL.o: in function `t':
266
+ /usr/bin/ld: /tmp/ccFKg8Gh.o: in function `t':
267
267
  /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_open_descriptor'
268
268
  collect2: error: ld returned 1 exit status
269
269
  checked program was:
@@ -3,10 +3,10 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
6
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-ym7ib3 sitelibdir\=./.gem.20260910-2474-ym7ib3 clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-jib9lx sitelibdir\=./.gem.20260911-2524-jib9lx clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
9
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-ym7ib3 sitelibdir\=./.gem.20260910-2474-ym7ib3
9
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-jib9lx sitelibdir\=./.gem.20260911-2524-jib9lx
10
10
  compiling adj_matrix.c
11
11
  adj_matrix.c: In function ‘adj_matrix_default’:
12
12
  adj_matrix.c:82:12: warning: old-style function definition [-Wold-style-definition]
@@ -22,8 +22,8 @@ compiling jaro_winkler.c
22
22
  linking shared-object jaro_winkler/jaro_winkler_ext.so
23
23
 
24
24
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
25
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-ym7ib3 sitelibdir\=./.gem.20260910-2474-ym7ib3 install
26
- /usr/bin/install -c -m 0755 jaro_winkler_ext.so ./.gem.20260910-2474-ym7ib3/jaro_winkler
25
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-jib9lx sitelibdir\=./.gem.20260911-2524-jib9lx install
26
+ /usr/bin/install -c -m 0755 jaro_winkler_ext.so ./.gem.20260911-2524-jib9lx/jaro_winkler
27
27
 
28
28
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
29
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-ym7ib3 sitelibdir\=./.gem.20260910-2474-ym7ib3 clean
29
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-jib9lx sitelibdir\=./.gem.20260911-2524-jib9lx clean
@@ -3,13 +3,13 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
6
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-utv0rk sitelibdir\=./.gem.20260910-2474-utv0rk clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-xipsxj sitelibdir\=./.gem.20260911-2524-xipsxj clean
7
7
  cd libyaml && make clean
8
8
  /bin/sh: 1: cd: can't cd to libyaml
9
9
  make: [Makefile:283: clean-so] Error 2 (ignored)
10
10
 
11
11
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
12
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-utv0rk sitelibdir\=./.gem.20260910-2474-utv0rk
12
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-xipsxj sitelibdir\=./.gem.20260911-2524-xipsxj
13
13
  compiling psych.c
14
14
  compiling psych_emitter.c
15
15
  compiling psych_parser.c
@@ -18,11 +18,11 @@ compiling psych_yaml_tree.c
18
18
  linking shared-object psych.so
19
19
 
20
20
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
21
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-utv0rk sitelibdir\=./.gem.20260910-2474-utv0rk install
22
- /usr/bin/install -c -m 0755 psych.so ./.gem.20260910-2474-utv0rk
21
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-xipsxj sitelibdir\=./.gem.20260911-2524-xipsxj install
22
+ /usr/bin/install -c -m 0755 psych.so ./.gem.20260911-2524-xipsxj
23
23
 
24
24
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
25
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-utv0rk sitelibdir\=./.gem.20260910-2474-utv0rk clean
25
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-xipsxj sitelibdir\=./.gem.20260911-2524-xipsxj clean
26
26
  cd libyaml && make clean
27
27
  /bin/sh: 1: cd: can't cd to libyaml
28
28
  make: [Makefile:283: clean-so] Error 2 (ignored)
@@ -3,16 +3,16 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
6
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-71glor sitelibdir\=./.gem.20260910-2474-71glor clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-6p7ps8 sitelibdir\=./.gem.20260911-2524-6p7ps8 clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
9
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-71glor sitelibdir\=./.gem.20260910-2474-71glor
9
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-6p7ps8 sitelibdir\=./.gem.20260911-2524-6p7ps8
10
10
  compiling cparse.c
11
11
  linking shared-object racc/cparse.so
12
12
 
13
13
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
14
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-71glor sitelibdir\=./.gem.20260910-2474-71glor install
15
- /usr/bin/install -c -m 0755 cparse.so ./.gem.20260910-2474-71glor/racc
14
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-6p7ps8 sitelibdir\=./.gem.20260911-2524-6p7ps8 install
15
+ /usr/bin/install -c -m 0755 cparse.so ./.gem.20260911-2524-6p7ps8/racc
16
16
 
17
17
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
18
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-71glor sitelibdir\=./.gem.20260910-2474-71glor clean
18
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-6p7ps8 sitelibdir\=./.gem.20260911-2524-6p7ps8 clean
@@ -4,16 +4,16 @@ checking for rb_io_mode_t in ruby/io.h... no
4
4
  creating Makefile
5
5
 
6
6
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
7
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-zk221v sitelibdir\=./.gem.20260910-2474-zk221v clean
7
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-qvo3yt sitelibdir\=./.gem.20260911-2524-qvo3yt clean
8
8
 
9
9
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
10
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-zk221v sitelibdir\=./.gem.20260910-2474-zk221v
10
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-qvo3yt sitelibdir\=./.gem.20260911-2524-qvo3yt
11
11
  compiling stringio.c
12
12
  linking shared-object stringio.so
13
13
 
14
14
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
15
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-zk221v sitelibdir\=./.gem.20260910-2474-zk221v install
16
- /usr/bin/install -c -m 0755 stringio.so ./.gem.20260910-2474-zk221v
15
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-qvo3yt sitelibdir\=./.gem.20260911-2524-qvo3yt install
16
+ /usr/bin/install -c -m 0755 stringio.so ./.gem.20260911-2524-qvo3yt
17
17
 
18
18
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
19
- make DESTDIR\= sitearchdir\=./.gem.20260910-2474-zk221v sitelibdir\=./.gem.20260910-2474-zk221v clean
19
+ make DESTDIR\= sitearchdir\=./.gem.20260911-2524-qvo3yt sitelibdir\=./.gem.20260911-2524-qvo3yt clean
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pingram
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.30
4
+ version: 1.0.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pingram
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-10 00:00:00.000000000 Z
11
+ date: 2026-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -150,8 +150,6 @@ files:
150
150
  - lib/pingram/models/email_component_response_referenced_by_inner.rb
151
151
  - lib/pingram/models/environment.rb
152
152
  - lib/pingram/models/environment_patch_request.rb
153
- - lib/pingram/models/events_webhook_response.rb
154
- - lib/pingram/models/events_webhook_upsert_request.rb
155
153
  - lib/pingram/models/first_account_request.rb
156
154
  - lib/pingram/models/first_account_response.rb
157
155
  - lib/pingram/models/get_account_metadata_response.rb
@@ -363,6 +361,10 @@ files:
363
361
  - lib/pingram/models/voice_browser_call_response.rb
364
362
  - lib/pingram/models/voice_call_request.rb
365
363
  - lib/pingram/models/voice_call_response.rb
364
+ - lib/pingram/models/webhook_endpoint.rb
365
+ - lib/pingram/models/webhook_endpoint_upsert_request.rb
366
+ - lib/pingram/models/webhook_endpoints_response.rb
367
+ - lib/pingram/models/webhook_endpoints_response_endpoints_inner.rb
366
368
  - lib/pingram/models/webhook_event.rb
367
369
  - lib/pingram/models/webhook_response.rb
368
370
  - lib/pingram/version.rb