surge_api 0.23.0 → 0.25.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 +4 -4
- data/CHANGELOG.md +28 -0
- data/README.md +9 -9
- data/lib/surge_api/client.rb +4 -0
- data/lib/surge_api/internal/type/union.rb +2 -2
- data/lib/surge_api/models/account_retrieve_status_params.rb +1 -0
- data/lib/surge_api/models/call_ended_webhook_event.rb +8 -3
- data/lib/surge_api/models/campaign.rb +21 -13
- data/lib/surge_api/models/campaign_approved_webhook_event.rb +9 -1
- data/lib/surge_api/models/campaign_params.rb +11 -12
- data/lib/surge_api/models/campaign_rejected_webhook_event.rb +135 -0
- data/lib/surge_api/models/campaign_submitted_webhook_event.rb +74 -0
- data/lib/surge_api/models/campaign_update_params.rb +188 -1
- data/lib/surge_api/models/campaign_warning_webhook_event.rb +134 -0
- data/lib/surge_api/models/message.rb +42 -2
- data/lib/surge_api/models/message_delivered_webhook_event.rb +29 -1
- data/lib/surge_api/models/message_failed_webhook_event.rb +26 -5
- data/lib/surge_api/models/message_received_webhook_event.rb +29 -1
- data/lib/surge_api/models/message_sent_webhook_event.rb +29 -1
- data/lib/surge_api/models/phone_number.rb +9 -1
- data/lib/surge_api/models/phone_number_attached_to_campaign_webhook_event.rb +9 -1
- data/lib/surge_api/models/phone_number_imported_webhook_event.rb +160 -0
- data/lib/surge_api/models/phone_number_purchase_params.rb +9 -1
- data/lib/surge_api/models/phone_number_update_params.rb +9 -1
- data/lib/surge_api/models/toll_free_campaign.rb +132 -0
- data/lib/surge_api/models/toll_free_campaign_consent_flow.rb +176 -0
- data/lib/surge_api/models/toll_free_campaign_create_params.rb +22 -0
- data/lib/surge_api/models/toll_free_campaign_list_params.rb +42 -0
- data/lib/surge_api/models/toll_free_campaign_params.rb +286 -0
- data/lib/surge_api/models/toll_free_campaign_retrieve_params.rb +22 -0
- data/lib/surge_api/models/toll_free_campaign_update_params.rb +278 -0
- data/lib/surge_api/models/unwrap_webhook_event.rb +9 -1
- data/lib/surge_api/models/user_create_token_params.rb +15 -1
- data/lib/surge_api/models.rb +22 -0
- data/lib/surge_api/resources/accounts.rb +2 -2
- data/lib/surge_api/resources/campaigns.rb +26 -8
- data/lib/surge_api/resources/phone_numbers.rb +6 -2
- data/lib/surge_api/resources/toll_free_campaigns.rb +140 -0
- data/lib/surge_api/resources/users.rb +6 -1
- data/lib/surge_api/resources/webhooks.rb +1 -1
- data/lib/surge_api/version.rb +1 -1
- data/lib/surge_api.rb +12 -0
- data/rbi/surge_api/client.rbi +3 -0
- data/rbi/surge_api/models/account_retrieve_status_params.rbi +5 -0
- data/rbi/surge_api/models/call_ended_webhook_event.rbi +6 -3
- data/rbi/surge_api/models/campaign.rbi +26 -19
- data/rbi/surge_api/models/campaign_approved_webhook_event.rbi +8 -0
- data/rbi/surge_api/models/campaign_params.rbi +17 -19
- data/rbi/surge_api/models/campaign_rejected_webhook_event.rbi +269 -0
- data/rbi/surge_api/models/campaign_submitted_webhook_event.rbi +149 -0
- data/rbi/surge_api/models/campaign_update_params.rbi +378 -1
- data/rbi/surge_api/models/campaign_warning_webhook_event.rbi +259 -0
- data/rbi/surge_api/models/message.rbi +50 -3
- data/rbi/surge_api/models/message_delivered_webhook_event.rbi +52 -0
- data/rbi/surge_api/models/message_failed_webhook_event.rbi +47 -5
- data/rbi/surge_api/models/message_received_webhook_event.rbi +49 -0
- data/rbi/surge_api/models/message_sent_webhook_event.rbi +46 -0
- data/rbi/surge_api/models/phone_number.rbi +8 -0
- data/rbi/surge_api/models/phone_number_attached_to_campaign_webhook_event.rbi +8 -0
- data/rbi/surge_api/models/phone_number_imported_webhook_event.rbi +318 -0
- data/rbi/surge_api/models/phone_number_purchase_params.rbi +11 -0
- data/rbi/surge_api/models/phone_number_update_params.rbi +11 -0
- data/rbi/surge_api/models/toll_free_campaign.rbi +230 -0
- data/rbi/surge_api/models/toll_free_campaign_consent_flow.rbi +476 -0
- data/rbi/surge_api/models/toll_free_campaign_create_params.rbi +43 -0
- data/rbi/surge_api/models/toll_free_campaign_list_params.rbi +70 -0
- data/rbi/surge_api/models/toll_free_campaign_params.rbi +711 -0
- data/rbi/surge_api/models/toll_free_campaign_retrieve_params.rbi +43 -0
- data/rbi/surge_api/models/toll_free_campaign_update_params.rbi +760 -0
- data/rbi/surge_api/models/unwrap_webhook_event.rbi +4 -0
- data/rbi/surge_api/models/user_create_token_params.rbi +17 -0
- data/rbi/surge_api/models.rbi +25 -0
- data/rbi/surge_api/resources/accounts.rbi +2 -2
- data/rbi/surge_api/resources/campaigns.rbi +94 -12
- data/rbi/surge_api/resources/phone_numbers.rbi +6 -0
- data/rbi/surge_api/resources/toll_free_campaigns.rbi +129 -0
- data/rbi/surge_api/resources/users.rbi +6 -0
- data/rbi/surge_api/resources/webhooks.rbi +4 -0
- data/sig/surge_api/client.rbs +2 -0
- data/sig/surge_api/models/account_retrieve_status_params.rbs +2 -1
- data/sig/surge_api/models/campaign.rbs +8 -1
- data/sig/surge_api/models/campaign_approved_webhook_event.rbs +5 -0
- data/sig/surge_api/models/campaign_rejected_webhook_event.rbs +115 -0
- data/sig/surge_api/models/campaign_submitted_webhook_event.rbs +67 -0
- data/sig/surge_api/models/campaign_update_params.rbs +128 -2
- data/sig/surge_api/models/campaign_warning_webhook_event.rbs +114 -0
- data/sig/surge_api/models/message.rbs +36 -3
- data/sig/surge_api/models/message_delivered_webhook_event.rbs +20 -0
- data/sig/surge_api/models/message_failed_webhook_event.rbs +19 -4
- data/sig/surge_api/models/message_received_webhook_event.rbs +20 -0
- data/sig/surge_api/models/message_sent_webhook_event.rbs +20 -0
- data/sig/surge_api/models/phone_number.rbs +5 -0
- data/sig/surge_api/models/phone_number_attached_to_campaign_webhook_event.rbs +5 -0
- data/sig/surge_api/models/phone_number_imported_webhook_event.rbs +130 -0
- data/sig/surge_api/models/phone_number_purchase_params.rbs +7 -0
- data/sig/surge_api/models/phone_number_update_params.rbs +12 -1
- data/sig/surge_api/models/toll_free_campaign.rbs +126 -0
- data/sig/surge_api/models/toll_free_campaign_consent_flow.rbs +207 -0
- data/sig/surge_api/models/toll_free_campaign_create_params.rbs +25 -0
- data/sig/surge_api/models/toll_free_campaign_list_params.rbs +36 -0
- data/sig/surge_api/models/toll_free_campaign_params.rbs +321 -0
- data/sig/surge_api/models/toll_free_campaign_retrieve_params.rbs +23 -0
- data/sig/surge_api/models/toll_free_campaign_update_params.rbs +332 -0
- data/sig/surge_api/models/unwrap_webhook_event.rbs +4 -0
- data/sig/surge_api/models/user_create_token_params.rbs +7 -1
- data/sig/surge_api/models.rbs +22 -0
- data/sig/surge_api/resources/campaigns.rbs +9 -1
- data/sig/surge_api/resources/phone_numbers.rbs +2 -0
- data/sig/surge_api/resources/toll_free_campaigns.rbs +44 -0
- data/sig/surge_api/resources/users.rbs +1 -0
- data/sig/surge_api/resources/webhooks.rbs +4 -0
- metadata +53 -7
|
@@ -39,6 +39,10 @@ module SurgeAPI
|
|
|
39
39
|
sig { params(conversation: SurgeAPI::Message::Conversation::OrHash).void }
|
|
40
40
|
attr_writer :conversation
|
|
41
41
|
|
|
42
|
+
# The reason the message failed, or null if no failure reason is set.
|
|
43
|
+
sig { returns(T.nilable(String)) }
|
|
44
|
+
attr_accessor :failure_reason
|
|
45
|
+
|
|
42
46
|
# Set of key-value pairs that will be stored with the object.
|
|
43
47
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
44
48
|
attr_reader :metadata
|
|
@@ -46,6 +50,13 @@ module SurgeAPI
|
|
|
46
50
|
sig { params(metadata: T::Hash[Symbol, String]).void }
|
|
47
51
|
attr_writer :metadata
|
|
48
52
|
|
|
53
|
+
# The current status of the message.
|
|
54
|
+
sig { returns(T.nilable(SurgeAPI::Message::Status::TaggedSymbol)) }
|
|
55
|
+
attr_reader :status
|
|
56
|
+
|
|
57
|
+
sig { params(status: SurgeAPI::Message::Status::OrSymbol).void }
|
|
58
|
+
attr_writer :status
|
|
59
|
+
|
|
49
60
|
# A Message is a communication sent to a Contact.
|
|
50
61
|
sig do
|
|
51
62
|
params(
|
|
@@ -54,7 +65,9 @@ module SurgeAPI
|
|
|
54
65
|
blast_id: T.nilable(String),
|
|
55
66
|
body: T.nilable(String),
|
|
56
67
|
conversation: SurgeAPI::Message::Conversation::OrHash,
|
|
57
|
-
|
|
68
|
+
failure_reason: T.nilable(String),
|
|
69
|
+
metadata: T::Hash[Symbol, String],
|
|
70
|
+
status: SurgeAPI::Message::Status::OrSymbol
|
|
58
71
|
).returns(T.attached_class)
|
|
59
72
|
end
|
|
60
73
|
def self.new(
|
|
@@ -68,8 +81,12 @@ module SurgeAPI
|
|
|
68
81
|
body: nil,
|
|
69
82
|
# A conversation with a Contact
|
|
70
83
|
conversation: nil,
|
|
84
|
+
# The reason the message failed, or null if no failure reason is set.
|
|
85
|
+
failure_reason: nil,
|
|
71
86
|
# Set of key-value pairs that will be stored with the object.
|
|
72
|
-
metadata: nil
|
|
87
|
+
metadata: nil,
|
|
88
|
+
# The current status of the message.
|
|
89
|
+
status: nil
|
|
73
90
|
)
|
|
74
91
|
end
|
|
75
92
|
|
|
@@ -81,7 +98,9 @@ module SurgeAPI
|
|
|
81
98
|
blast_id: T.nilable(String),
|
|
82
99
|
body: T.nilable(String),
|
|
83
100
|
conversation: SurgeAPI::Message::Conversation,
|
|
84
|
-
|
|
101
|
+
failure_reason: T.nilable(String),
|
|
102
|
+
metadata: T::Hash[Symbol, String],
|
|
103
|
+
status: SurgeAPI::Message::Status::TaggedSymbol
|
|
85
104
|
}
|
|
86
105
|
)
|
|
87
106
|
end
|
|
@@ -245,6 +264,10 @@ module SurgeAPI
|
|
|
245
264
|
sig { returns(String) }
|
|
246
265
|
attr_accessor :id
|
|
247
266
|
|
|
267
|
+
# Set of key-value pairs that will be stored with the object.
|
|
268
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
269
|
+
attr_accessor :metadata
|
|
270
|
+
|
|
248
271
|
# A human-readable name for the phone number
|
|
249
272
|
sig { returns(T.nilable(String)) }
|
|
250
273
|
attr_accessor :name
|
|
@@ -265,6 +288,7 @@ module SurgeAPI
|
|
|
265
288
|
sig do
|
|
266
289
|
params(
|
|
267
290
|
id: String,
|
|
291
|
+
metadata: T::Hash[Symbol, String],
|
|
268
292
|
name: T.nilable(String),
|
|
269
293
|
number: String,
|
|
270
294
|
type: SurgeAPI::Message::Conversation::PhoneNumber::Type::OrSymbol
|
|
@@ -273,6 +297,8 @@ module SurgeAPI
|
|
|
273
297
|
def self.new(
|
|
274
298
|
# Unique identifier for the phone number
|
|
275
299
|
id:,
|
|
300
|
+
# Set of key-value pairs that will be stored with the object.
|
|
301
|
+
metadata:,
|
|
276
302
|
# A human-readable name for the phone number
|
|
277
303
|
name:,
|
|
278
304
|
# The canonical format of the phone number.
|
|
@@ -286,6 +312,7 @@ module SurgeAPI
|
|
|
286
312
|
override.returns(
|
|
287
313
|
{
|
|
288
314
|
id: String,
|
|
315
|
+
metadata: T::Hash[Symbol, String],
|
|
289
316
|
name: T.nilable(String),
|
|
290
317
|
number: String,
|
|
291
318
|
type:
|
|
@@ -342,6 +369,26 @@ module SurgeAPI
|
|
|
342
369
|
end
|
|
343
370
|
end
|
|
344
371
|
end
|
|
372
|
+
|
|
373
|
+
# The current status of the message.
|
|
374
|
+
module Status
|
|
375
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
376
|
+
|
|
377
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, SurgeAPI::Message::Status) }
|
|
378
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
379
|
+
|
|
380
|
+
PENDING = T.let(:pending, SurgeAPI::Message::Status::TaggedSymbol)
|
|
381
|
+
RECEIVED = T.let(:received, SurgeAPI::Message::Status::TaggedSymbol)
|
|
382
|
+
SENT = T.let(:sent, SurgeAPI::Message::Status::TaggedSymbol)
|
|
383
|
+
DELIVERED = T.let(:delivered, SurgeAPI::Message::Status::TaggedSymbol)
|
|
384
|
+
FAILED = T.let(:failed, SurgeAPI::Message::Status::TaggedSymbol)
|
|
385
|
+
|
|
386
|
+
sig do
|
|
387
|
+
override.returns(T::Array[SurgeAPI::Message::Status::TaggedSymbol])
|
|
388
|
+
end
|
|
389
|
+
def self.values
|
|
390
|
+
end
|
|
391
|
+
end
|
|
345
392
|
end
|
|
346
393
|
end
|
|
347
394
|
end
|
|
@@ -100,10 +100,22 @@ module SurgeAPI
|
|
|
100
100
|
sig { returns(Time) }
|
|
101
101
|
attr_accessor :delivered_at
|
|
102
102
|
|
|
103
|
+
# The reason the message failed, or null if no failure reason is set
|
|
104
|
+
sig { returns(T.nilable(String)) }
|
|
105
|
+
attr_accessor :failure_reason
|
|
106
|
+
|
|
103
107
|
# Set of key-value pairs that will be stored with the object.
|
|
104
108
|
sig { returns(T::Hash[Symbol, String]) }
|
|
105
109
|
attr_accessor :metadata
|
|
106
110
|
|
|
111
|
+
# The message status represented by this event
|
|
112
|
+
sig do
|
|
113
|
+
returns(
|
|
114
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status::TaggedSymbol
|
|
115
|
+
)
|
|
116
|
+
end
|
|
117
|
+
attr_accessor :status
|
|
118
|
+
|
|
107
119
|
# Attachments included with the message
|
|
108
120
|
sig do
|
|
109
121
|
returns(
|
|
@@ -140,7 +152,10 @@ module SurgeAPI
|
|
|
140
152
|
conversation:
|
|
141
153
|
SurgeAPI::MessageDeliveredWebhookEvent::Data::Conversation::OrHash,
|
|
142
154
|
delivered_at: Time,
|
|
155
|
+
failure_reason: T.nilable(String),
|
|
143
156
|
metadata: T::Hash[Symbol, String],
|
|
157
|
+
status:
|
|
158
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status::OrSymbol,
|
|
144
159
|
attachments:
|
|
145
160
|
T::Array[
|
|
146
161
|
SurgeAPI::MessageDeliveredWebhookEvent::Data::Attachment::OrHash
|
|
@@ -157,8 +172,12 @@ module SurgeAPI
|
|
|
157
172
|
conversation:,
|
|
158
173
|
# When the message was delivered
|
|
159
174
|
delivered_at:,
|
|
175
|
+
# The reason the message failed, or null if no failure reason is set
|
|
176
|
+
failure_reason:,
|
|
160
177
|
# Set of key-value pairs that will be stored with the object.
|
|
161
178
|
metadata:,
|
|
179
|
+
# The message status represented by this event
|
|
180
|
+
status:,
|
|
162
181
|
# Attachments included with the message
|
|
163
182
|
attachments: nil,
|
|
164
183
|
# The ID of the blast this message belongs to, if any. This can be used to
|
|
@@ -175,7 +194,10 @@ module SurgeAPI
|
|
|
175
194
|
conversation:
|
|
176
195
|
SurgeAPI::MessageDeliveredWebhookEvent::Data::Conversation,
|
|
177
196
|
delivered_at: Time,
|
|
197
|
+
failure_reason: T.nilable(String),
|
|
178
198
|
metadata: T::Hash[Symbol, String],
|
|
199
|
+
status:
|
|
200
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status::TaggedSymbol,
|
|
179
201
|
attachments:
|
|
180
202
|
T::Array[
|
|
181
203
|
SurgeAPI::MessageDeliveredWebhookEvent::Data::Attachment
|
|
@@ -245,6 +267,36 @@ module SurgeAPI
|
|
|
245
267
|
end
|
|
246
268
|
end
|
|
247
269
|
|
|
270
|
+
# The message status represented by this event
|
|
271
|
+
module Status
|
|
272
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
273
|
+
|
|
274
|
+
TaggedSymbol =
|
|
275
|
+
T.type_alias do
|
|
276
|
+
T.all(
|
|
277
|
+
Symbol,
|
|
278
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status
|
|
279
|
+
)
|
|
280
|
+
end
|
|
281
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
282
|
+
|
|
283
|
+
DELIVERED =
|
|
284
|
+
T.let(
|
|
285
|
+
:delivered,
|
|
286
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status::TaggedSymbol
|
|
287
|
+
)
|
|
288
|
+
|
|
289
|
+
sig do
|
|
290
|
+
override.returns(
|
|
291
|
+
T::Array[
|
|
292
|
+
SurgeAPI::MessageDeliveredWebhookEvent::Data::Status::TaggedSymbol
|
|
293
|
+
]
|
|
294
|
+
)
|
|
295
|
+
end
|
|
296
|
+
def self.values
|
|
297
|
+
end
|
|
298
|
+
end
|
|
299
|
+
|
|
248
300
|
class Attachment < SurgeAPI::Internal::Type::BaseModel
|
|
249
301
|
OrHash =
|
|
250
302
|
T.type_alias do
|
|
@@ -98,14 +98,23 @@ module SurgeAPI
|
|
|
98
98
|
sig { returns(Time) }
|
|
99
99
|
attr_accessor :failed_at
|
|
100
100
|
|
|
101
|
-
# The reason the message failed to be delivered
|
|
102
|
-
|
|
101
|
+
# The reason the message failed to be delivered, or null if no failure reason is
|
|
102
|
+
# set
|
|
103
|
+
sig { returns(T.nilable(String)) }
|
|
103
104
|
attr_accessor :failure_reason
|
|
104
105
|
|
|
105
106
|
# Set of key-value pairs that will be stored with the object.
|
|
106
107
|
sig { returns(T::Hash[Symbol, String]) }
|
|
107
108
|
attr_accessor :metadata
|
|
108
109
|
|
|
110
|
+
# The message status represented by this event
|
|
111
|
+
sig do
|
|
112
|
+
returns(
|
|
113
|
+
SurgeAPI::MessageFailedWebhookEvent::Data::Status::TaggedSymbol
|
|
114
|
+
)
|
|
115
|
+
end
|
|
116
|
+
attr_accessor :status
|
|
117
|
+
|
|
109
118
|
# Attachments included with the message
|
|
110
119
|
sig do
|
|
111
120
|
returns(
|
|
@@ -142,8 +151,9 @@ module SurgeAPI
|
|
|
142
151
|
conversation:
|
|
143
152
|
SurgeAPI::MessageFailedWebhookEvent::Data::Conversation::OrHash,
|
|
144
153
|
failed_at: Time,
|
|
145
|
-
failure_reason: String,
|
|
154
|
+
failure_reason: T.nilable(String),
|
|
146
155
|
metadata: T::Hash[Symbol, String],
|
|
156
|
+
status: SurgeAPI::MessageFailedWebhookEvent::Data::Status::OrSymbol,
|
|
147
157
|
attachments:
|
|
148
158
|
T::Array[
|
|
149
159
|
SurgeAPI::MessageFailedWebhookEvent::Data::Attachment::OrHash
|
|
@@ -160,10 +170,13 @@ module SurgeAPI
|
|
|
160
170
|
conversation:,
|
|
161
171
|
# When the message failed
|
|
162
172
|
failed_at:,
|
|
163
|
-
# The reason the message failed to be delivered
|
|
173
|
+
# The reason the message failed to be delivered, or null if no failure reason is
|
|
174
|
+
# set
|
|
164
175
|
failure_reason:,
|
|
165
176
|
# Set of key-value pairs that will be stored with the object.
|
|
166
177
|
metadata:,
|
|
178
|
+
# The message status represented by this event
|
|
179
|
+
status:,
|
|
167
180
|
# Attachments included with the message
|
|
168
181
|
attachments: nil,
|
|
169
182
|
# The ID of the blast this message belongs to, if any. This can be used to
|
|
@@ -180,8 +193,10 @@ module SurgeAPI
|
|
|
180
193
|
conversation:
|
|
181
194
|
SurgeAPI::MessageFailedWebhookEvent::Data::Conversation,
|
|
182
195
|
failed_at: Time,
|
|
183
|
-
failure_reason: String,
|
|
196
|
+
failure_reason: T.nilable(String),
|
|
184
197
|
metadata: T::Hash[Symbol, String],
|
|
198
|
+
status:
|
|
199
|
+
SurgeAPI::MessageFailedWebhookEvent::Data::Status::TaggedSymbol,
|
|
185
200
|
attachments:
|
|
186
201
|
T::Array[SurgeAPI::MessageFailedWebhookEvent::Data::Attachment],
|
|
187
202
|
blast_id: String
|
|
@@ -249,6 +264,33 @@ module SurgeAPI
|
|
|
249
264
|
end
|
|
250
265
|
end
|
|
251
266
|
|
|
267
|
+
# The message status represented by this event
|
|
268
|
+
module Status
|
|
269
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
270
|
+
|
|
271
|
+
TaggedSymbol =
|
|
272
|
+
T.type_alias do
|
|
273
|
+
T.all(Symbol, SurgeAPI::MessageFailedWebhookEvent::Data::Status)
|
|
274
|
+
end
|
|
275
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
276
|
+
|
|
277
|
+
FAILED =
|
|
278
|
+
T.let(
|
|
279
|
+
:failed,
|
|
280
|
+
SurgeAPI::MessageFailedWebhookEvent::Data::Status::TaggedSymbol
|
|
281
|
+
)
|
|
282
|
+
|
|
283
|
+
sig do
|
|
284
|
+
override.returns(
|
|
285
|
+
T::Array[
|
|
286
|
+
SurgeAPI::MessageFailedWebhookEvent::Data::Status::TaggedSymbol
|
|
287
|
+
]
|
|
288
|
+
)
|
|
289
|
+
end
|
|
290
|
+
def self.values
|
|
291
|
+
end
|
|
292
|
+
end
|
|
293
|
+
|
|
252
294
|
class Attachment < SurgeAPI::Internal::Type::BaseModel
|
|
253
295
|
OrHash =
|
|
254
296
|
T.type_alias do
|
|
@@ -96,6 +96,10 @@ module SurgeAPI
|
|
|
96
96
|
end
|
|
97
97
|
attr_writer :conversation
|
|
98
98
|
|
|
99
|
+
# The reason the message failed, or null if no failure reason is set
|
|
100
|
+
sig { returns(T.nilable(String)) }
|
|
101
|
+
attr_accessor :failure_reason
|
|
102
|
+
|
|
99
103
|
# Set of key-value pairs that will be stored with the object.
|
|
100
104
|
sig { returns(T::Hash[Symbol, String]) }
|
|
101
105
|
attr_accessor :metadata
|
|
@@ -104,6 +108,14 @@ module SurgeAPI
|
|
|
104
108
|
sig { returns(Time) }
|
|
105
109
|
attr_accessor :received_at
|
|
106
110
|
|
|
111
|
+
# The message status represented by this event
|
|
112
|
+
sig do
|
|
113
|
+
returns(
|
|
114
|
+
SurgeAPI::MessageReceivedWebhookEvent::Data::Status::TaggedSymbol
|
|
115
|
+
)
|
|
116
|
+
end
|
|
117
|
+
attr_accessor :status
|
|
118
|
+
|
|
107
119
|
# Attachments included with the message
|
|
108
120
|
sig do
|
|
109
121
|
returns(
|
|
@@ -139,8 +151,11 @@ module SurgeAPI
|
|
|
139
151
|
body: T.nilable(String),
|
|
140
152
|
conversation:
|
|
141
153
|
SurgeAPI::MessageReceivedWebhookEvent::Data::Conversation::OrHash,
|
|
154
|
+
failure_reason: T.nilable(String),
|
|
142
155
|
metadata: T::Hash[Symbol, String],
|
|
143
156
|
received_at: Time,
|
|
157
|
+
status:
|
|
158
|
+
SurgeAPI::MessageReceivedWebhookEvent::Data::Status::OrSymbol,
|
|
144
159
|
attachments:
|
|
145
160
|
T::Array[
|
|
146
161
|
SurgeAPI::MessageReceivedWebhookEvent::Data::Attachment::OrHash
|
|
@@ -155,10 +170,14 @@ module SurgeAPI
|
|
|
155
170
|
body:,
|
|
156
171
|
# The conversation this message belongs to
|
|
157
172
|
conversation:,
|
|
173
|
+
# The reason the message failed, or null if no failure reason is set
|
|
174
|
+
failure_reason:,
|
|
158
175
|
# Set of key-value pairs that will be stored with the object.
|
|
159
176
|
metadata:,
|
|
160
177
|
# When the message was received
|
|
161
178
|
received_at:,
|
|
179
|
+
# The message status represented by this event
|
|
180
|
+
status:,
|
|
162
181
|
# Attachments included with the message
|
|
163
182
|
attachments: nil,
|
|
164
183
|
# The ID of the blast this message belongs to, if any. This can be used to
|
|
@@ -174,8 +193,11 @@ module SurgeAPI
|
|
|
174
193
|
body: T.nilable(String),
|
|
175
194
|
conversation:
|
|
176
195
|
SurgeAPI::MessageReceivedWebhookEvent::Data::Conversation,
|
|
196
|
+
failure_reason: T.nilable(String),
|
|
177
197
|
metadata: T::Hash[Symbol, String],
|
|
178
198
|
received_at: Time,
|
|
199
|
+
status:
|
|
200
|
+
SurgeAPI::MessageReceivedWebhookEvent::Data::Status::TaggedSymbol,
|
|
179
201
|
attachments:
|
|
180
202
|
T::Array[
|
|
181
203
|
SurgeAPI::MessageReceivedWebhookEvent::Data::Attachment
|
|
@@ -245,6 +267,33 @@ module SurgeAPI
|
|
|
245
267
|
end
|
|
246
268
|
end
|
|
247
269
|
|
|
270
|
+
# The message status represented by this event
|
|
271
|
+
module Status
|
|
272
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
273
|
+
|
|
274
|
+
TaggedSymbol =
|
|
275
|
+
T.type_alias do
|
|
276
|
+
T.all(Symbol, SurgeAPI::MessageReceivedWebhookEvent::Data::Status)
|
|
277
|
+
end
|
|
278
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
279
|
+
|
|
280
|
+
RECEIVED =
|
|
281
|
+
T.let(
|
|
282
|
+
:received,
|
|
283
|
+
SurgeAPI::MessageReceivedWebhookEvent::Data::Status::TaggedSymbol
|
|
284
|
+
)
|
|
285
|
+
|
|
286
|
+
sig do
|
|
287
|
+
override.returns(
|
|
288
|
+
T::Array[
|
|
289
|
+
SurgeAPI::MessageReceivedWebhookEvent::Data::Status::TaggedSymbol
|
|
290
|
+
]
|
|
291
|
+
)
|
|
292
|
+
end
|
|
293
|
+
def self.values
|
|
294
|
+
end
|
|
295
|
+
end
|
|
296
|
+
|
|
248
297
|
class Attachment < SurgeAPI::Internal::Type::BaseModel
|
|
249
298
|
OrHash =
|
|
250
299
|
T.type_alias do
|
|
@@ -89,6 +89,10 @@ module SurgeAPI
|
|
|
89
89
|
end
|
|
90
90
|
attr_writer :conversation
|
|
91
91
|
|
|
92
|
+
# The reason the message failed, or null if no failure reason is set
|
|
93
|
+
sig { returns(T.nilable(String)) }
|
|
94
|
+
attr_accessor :failure_reason
|
|
95
|
+
|
|
92
96
|
# Set of key-value pairs that will be stored with the object.
|
|
93
97
|
sig { returns(T::Hash[Symbol, String]) }
|
|
94
98
|
attr_accessor :metadata
|
|
@@ -97,6 +101,12 @@ module SurgeAPI
|
|
|
97
101
|
sig { returns(Time) }
|
|
98
102
|
attr_accessor :sent_at
|
|
99
103
|
|
|
104
|
+
# The message status represented by this event
|
|
105
|
+
sig do
|
|
106
|
+
returns(SurgeAPI::MessageSentWebhookEvent::Data::Status::TaggedSymbol)
|
|
107
|
+
end
|
|
108
|
+
attr_accessor :status
|
|
109
|
+
|
|
100
110
|
# Attachments included with the message
|
|
101
111
|
sig do
|
|
102
112
|
returns(
|
|
@@ -132,8 +142,10 @@ module SurgeAPI
|
|
|
132
142
|
body: T.nilable(String),
|
|
133
143
|
conversation:
|
|
134
144
|
SurgeAPI::MessageSentWebhookEvent::Data::Conversation::OrHash,
|
|
145
|
+
failure_reason: T.nilable(String),
|
|
135
146
|
metadata: T::Hash[Symbol, String],
|
|
136
147
|
sent_at: Time,
|
|
148
|
+
status: SurgeAPI::MessageSentWebhookEvent::Data::Status::OrSymbol,
|
|
137
149
|
attachments:
|
|
138
150
|
T::Array[
|
|
139
151
|
SurgeAPI::MessageSentWebhookEvent::Data::Attachment::OrHash
|
|
@@ -148,10 +160,14 @@ module SurgeAPI
|
|
|
148
160
|
body:,
|
|
149
161
|
# The conversation this message belongs to
|
|
150
162
|
conversation:,
|
|
163
|
+
# The reason the message failed, or null if no failure reason is set
|
|
164
|
+
failure_reason:,
|
|
151
165
|
# Set of key-value pairs that will be stored with the object.
|
|
152
166
|
metadata:,
|
|
153
167
|
# When the message was sent
|
|
154
168
|
sent_at:,
|
|
169
|
+
# The message status represented by this event
|
|
170
|
+
status:,
|
|
155
171
|
# Attachments included with the message
|
|
156
172
|
attachments: nil,
|
|
157
173
|
# The ID of the blast this message belongs to, if any. This can be used to
|
|
@@ -167,8 +183,11 @@ module SurgeAPI
|
|
|
167
183
|
body: T.nilable(String),
|
|
168
184
|
conversation:
|
|
169
185
|
SurgeAPI::MessageSentWebhookEvent::Data::Conversation,
|
|
186
|
+
failure_reason: T.nilable(String),
|
|
170
187
|
metadata: T::Hash[Symbol, String],
|
|
171
188
|
sent_at: Time,
|
|
189
|
+
status:
|
|
190
|
+
SurgeAPI::MessageSentWebhookEvent::Data::Status::TaggedSymbol,
|
|
172
191
|
attachments:
|
|
173
192
|
T::Array[SurgeAPI::MessageSentWebhookEvent::Data::Attachment],
|
|
174
193
|
blast_id: String
|
|
@@ -236,6 +255,33 @@ module SurgeAPI
|
|
|
236
255
|
end
|
|
237
256
|
end
|
|
238
257
|
|
|
258
|
+
# The message status represented by this event
|
|
259
|
+
module Status
|
|
260
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
261
|
+
|
|
262
|
+
TaggedSymbol =
|
|
263
|
+
T.type_alias do
|
|
264
|
+
T.all(Symbol, SurgeAPI::MessageSentWebhookEvent::Data::Status)
|
|
265
|
+
end
|
|
266
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
267
|
+
|
|
268
|
+
SENT =
|
|
269
|
+
T.let(
|
|
270
|
+
:sent,
|
|
271
|
+
SurgeAPI::MessageSentWebhookEvent::Data::Status::TaggedSymbol
|
|
272
|
+
)
|
|
273
|
+
|
|
274
|
+
sig do
|
|
275
|
+
override.returns(
|
|
276
|
+
T::Array[
|
|
277
|
+
SurgeAPI::MessageSentWebhookEvent::Data::Status::TaggedSymbol
|
|
278
|
+
]
|
|
279
|
+
)
|
|
280
|
+
end
|
|
281
|
+
def self.values
|
|
282
|
+
end
|
|
283
|
+
end
|
|
284
|
+
|
|
239
285
|
class Attachment < SurgeAPI::Internal::Type::BaseModel
|
|
240
286
|
OrHash =
|
|
241
287
|
T.type_alias do
|
|
@@ -28,6 +28,10 @@ module SurgeAPI
|
|
|
28
28
|
sig { returns(T.nilable(String)) }
|
|
29
29
|
attr_accessor :campaign_id
|
|
30
30
|
|
|
31
|
+
# Set of key-value pairs that will be stored with the object.
|
|
32
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
33
|
+
attr_accessor :metadata
|
|
34
|
+
|
|
31
35
|
# A human-readable name for the phone number
|
|
32
36
|
sig { returns(T.nilable(String)) }
|
|
33
37
|
attr_accessor :name
|
|
@@ -46,6 +50,7 @@ module SurgeAPI
|
|
|
46
50
|
id: String,
|
|
47
51
|
campaign: T.nilable(SurgeAPI::PhoneNumber::Campaign::OrHash),
|
|
48
52
|
campaign_id: T.nilable(String),
|
|
53
|
+
metadata: T::Hash[Symbol, String],
|
|
49
54
|
name: T.nilable(String),
|
|
50
55
|
number: String,
|
|
51
56
|
type: SurgeAPI::PhoneNumber::Type::OrSymbol
|
|
@@ -59,6 +64,8 @@ module SurgeAPI
|
|
|
59
64
|
# Deprecated. The unique identifier of the campaign this phone number is attached
|
|
60
65
|
# to, if any
|
|
61
66
|
campaign_id:,
|
|
67
|
+
# Set of key-value pairs that will be stored with the object.
|
|
68
|
+
metadata:,
|
|
62
69
|
# A human-readable name for the phone number
|
|
63
70
|
name:,
|
|
64
71
|
# The phone number in E.164 format
|
|
@@ -74,6 +81,7 @@ module SurgeAPI
|
|
|
74
81
|
id: String,
|
|
75
82
|
campaign: T.nilable(SurgeAPI::PhoneNumber::Campaign),
|
|
76
83
|
campaign_id: T.nilable(String),
|
|
84
|
+
metadata: T::Hash[Symbol, String],
|
|
77
85
|
name: T.nilable(String),
|
|
78
86
|
number: String,
|
|
79
87
|
type: SurgeAPI::PhoneNumber::Type::TaggedSymbol
|
|
@@ -109,6 +109,10 @@ module SurgeAPI
|
|
|
109
109
|
sig { returns(String) }
|
|
110
110
|
attr_accessor :campaign_id
|
|
111
111
|
|
|
112
|
+
# Set of key-value pairs that will be stored with the object.
|
|
113
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
114
|
+
attr_accessor :metadata
|
|
115
|
+
|
|
112
116
|
# A human-readable name for the phone number
|
|
113
117
|
sig { returns(T.nilable(String)) }
|
|
114
118
|
attr_accessor :name
|
|
@@ -134,6 +138,7 @@ module SurgeAPI
|
|
|
134
138
|
SurgeAPI::PhoneNumberAttachedToCampaignWebhookEvent::Data::Campaign::OrHash
|
|
135
139
|
),
|
|
136
140
|
campaign_id: String,
|
|
141
|
+
metadata: T::Hash[Symbol, String],
|
|
137
142
|
name: T.nilable(String),
|
|
138
143
|
number: String,
|
|
139
144
|
type:
|
|
@@ -148,6 +153,8 @@ module SurgeAPI
|
|
|
148
153
|
# Deprecated. The unique identifier of the campaign this phone number is attached
|
|
149
154
|
# to
|
|
150
155
|
campaign_id:,
|
|
156
|
+
# Set of key-value pairs that will be stored with the object.
|
|
157
|
+
metadata:,
|
|
151
158
|
# A human-readable name for the phone number
|
|
152
159
|
name:,
|
|
153
160
|
# The phone number in E.164 format
|
|
@@ -166,6 +173,7 @@ module SurgeAPI
|
|
|
166
173
|
SurgeAPI::PhoneNumberAttachedToCampaignWebhookEvent::Data::Campaign
|
|
167
174
|
),
|
|
168
175
|
campaign_id: String,
|
|
176
|
+
metadata: T::Hash[Symbol, String],
|
|
169
177
|
name: T.nilable(String),
|
|
170
178
|
number: String,
|
|
171
179
|
type:
|