surge_api 0.17.0 → 0.18.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.
Files changed (155) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +51 -16
  4. data/lib/surge_api/client.rb +22 -1
  5. data/lib/surge_api/internal/transport/base_client.rb +5 -0
  6. data/lib/surge_api/internal/util.rb +22 -7
  7. data/lib/surge_api/models/account_archive_params.rb +9 -1
  8. data/lib/surge_api/models/account_retrieve_status_params.rb +9 -1
  9. data/lib/surge_api/models/account_update_params.rb +9 -1
  10. data/lib/surge_api/models/attachment_get_file_params.rb +9 -1
  11. data/lib/surge_api/models/audience_add_contact_params.rb +9 -1
  12. data/lib/surge_api/models/audience_create_params.rb +9 -1
  13. data/lib/surge_api/models/audience_list_contacts_params.rb +9 -1
  14. data/lib/surge_api/models/blast_create_params.rb +9 -1
  15. data/lib/surge_api/models/campaign_create_params.rb +6 -10
  16. data/lib/surge_api/models/campaign_list_params.rb +9 -1
  17. data/lib/surge_api/models/campaign_retrieve_params.rb +9 -1
  18. data/lib/surge_api/models/campaign_update_params.rb +6 -10
  19. data/lib/surge_api/models/contact_create_params.rb +9 -1
  20. data/lib/surge_api/models/contact_list_params.rb +9 -1
  21. data/lib/surge_api/models/contact_retrieve_params.rb +9 -1
  22. data/lib/surge_api/models/contact_update_params.rb +9 -1
  23. data/lib/surge_api/models/message.rb +1 -0
  24. data/lib/surge_api/models/message_create_params.rb +6 -11
  25. data/lib/surge_api/models/message_delivered_webhook_event.rb +1 -0
  26. data/lib/surge_api/models/message_failed_webhook_event.rb +1 -0
  27. data/lib/surge_api/models/message_list_params.rb +9 -1
  28. data/lib/surge_api/models/message_params.rb +74 -2
  29. data/lib/surge_api/models/message_received_webhook_event.rb +1 -0
  30. data/lib/surge_api/models/message_retrieve_params.rb +9 -1
  31. data/lib/surge_api/models/message_sent_webhook_event.rb +1 -0
  32. data/lib/surge_api/models/phone_number.rb +1 -1
  33. data/lib/surge_api/models/phone_number_list_params.rb +9 -1
  34. data/lib/surge_api/models/phone_number_purchase_params.rb +9 -1
  35. data/lib/surge_api/models/phone_number_release_params.rb +22 -0
  36. data/lib/surge_api/models/phone_number_update_params.rb +38 -0
  37. data/lib/surge_api/models/recording_delete_params.rb +9 -1
  38. data/lib/surge_api/models/recording_get_file_params.rb +9 -1
  39. data/lib/surge_api/models/recording_list_params.rb +9 -1
  40. data/lib/surge_api/models/recording_retrieve_params.rb +9 -1
  41. data/lib/surge_api/models/user_create_params.rb +9 -1
  42. data/lib/surge_api/models/user_create_token_params.rb +9 -1
  43. data/lib/surge_api/models/user_delete_params.rb +9 -1
  44. data/lib/surge_api/models/user_list_params.rb +9 -1
  45. data/lib/surge_api/models/user_retrieve_params.rb +9 -1
  46. data/lib/surge_api/models/user_update_params.rb +9 -1
  47. data/lib/surge_api/models/verification_check_params.rb +9 -1
  48. data/lib/surge_api/models/verification_create_params.rb +9 -1
  49. data/lib/surge_api/models.rb +4 -0
  50. data/lib/surge_api/resources/campaigns.rb +4 -14
  51. data/lib/surge_api/resources/messages.rb +6 -7
  52. data/lib/surge_api/resources/phone_numbers.rb +46 -0
  53. data/lib/surge_api/resources/verifications.rb +7 -4
  54. data/lib/surge_api/resources/webhooks.rb +11 -1
  55. data/lib/surge_api/version.rb +1 -1
  56. data/lib/surge_api.rb +3 -0
  57. data/rbi/surge_api/client.rbi +6 -0
  58. data/rbi/surge_api/internal/util.rbi +8 -0
  59. data/rbi/surge_api/models/account_archive_params.rbi +18 -5
  60. data/rbi/surge_api/models/account_retrieve_status_params.rbi +8 -0
  61. data/rbi/surge_api/models/account_update_params.rbi +8 -0
  62. data/rbi/surge_api/models/attachment_get_file_params.rbi +18 -5
  63. data/rbi/surge_api/models/audience_add_contact_params.rbi +12 -1
  64. data/rbi/surge_api/models/audience_create_params.rbi +12 -1
  65. data/rbi/surge_api/models/audience_list_contacts_params.rbi +8 -0
  66. data/rbi/surge_api/models/blast_create_params.rbi +8 -0
  67. data/rbi/surge_api/models/campaign_create_params.rbi +7 -27
  68. data/rbi/surge_api/models/campaign_list_params.rbi +8 -0
  69. data/rbi/surge_api/models/campaign_retrieve_params.rbi +18 -5
  70. data/rbi/surge_api/models/campaign_update_params.rbi +7 -27
  71. data/rbi/surge_api/models/contact_create_params.rbi +8 -0
  72. data/rbi/surge_api/models/contact_list_params.rbi +8 -0
  73. data/rbi/surge_api/models/contact_retrieve_params.rbi +18 -5
  74. data/rbi/surge_api/models/contact_update_params.rbi +8 -0
  75. data/rbi/surge_api/models/message.rbi +2 -0
  76. data/rbi/surge_api/models/message_create_params.rbi +7 -29
  77. data/rbi/surge_api/models/message_delivered_webhook_event.rbi +5 -0
  78. data/rbi/surge_api/models/message_failed_webhook_event.rbi +5 -0
  79. data/rbi/surge_api/models/message_list_params.rbi +8 -0
  80. data/rbi/surge_api/models/message_params.rbi +225 -6
  81. data/rbi/surge_api/models/message_received_webhook_event.rbi +5 -0
  82. data/rbi/surge_api/models/message_retrieve_params.rbi +18 -5
  83. data/rbi/surge_api/models/message_sent_webhook_event.rbi +5 -0
  84. data/rbi/surge_api/models/phone_number_list_params.rbi +8 -0
  85. data/rbi/surge_api/models/phone_number_purchase_params.rbi +8 -0
  86. data/rbi/surge_api/models/phone_number_release_params.rbi +40 -0
  87. data/rbi/surge_api/models/phone_number_update_params.rbi +65 -0
  88. data/rbi/surge_api/models/recording_delete_params.rbi +18 -5
  89. data/rbi/surge_api/models/recording_get_file_params.rbi +18 -5
  90. data/rbi/surge_api/models/recording_list_params.rbi +8 -0
  91. data/rbi/surge_api/models/recording_retrieve_params.rbi +18 -5
  92. data/rbi/surge_api/models/user_create_params.rbi +8 -0
  93. data/rbi/surge_api/models/user_create_token_params.rbi +8 -0
  94. data/rbi/surge_api/models/user_delete_params.rbi +18 -5
  95. data/rbi/surge_api/models/user_list_params.rbi +8 -0
  96. data/rbi/surge_api/models/user_retrieve_params.rbi +18 -5
  97. data/rbi/surge_api/models/user_update_params.rbi +8 -0
  98. data/rbi/surge_api/models/verification_check_params.rbi +12 -1
  99. data/rbi/surge_api/models/verification_create_params.rbi +12 -1
  100. data/rbi/surge_api/models.rbi +4 -0
  101. data/rbi/surge_api/resources/campaigns.rbi +10 -2
  102. data/rbi/surge_api/resources/messages.rbi +9 -1
  103. data/rbi/surge_api/resources/phone_numbers.rbi +34 -0
  104. data/rbi/surge_api/resources/verifications.rbi +5 -1
  105. data/rbi/surge_api/resources/webhooks.rbi +10 -2
  106. data/sig/surge_api/client.rbs +3 -0
  107. data/sig/surge_api/internal/util.rbs +4 -0
  108. data/sig/surge_api/models/account_archive_params.rbs +8 -3
  109. data/sig/surge_api/models/account_retrieve_status_params.rbs +5 -0
  110. data/sig/surge_api/models/account_update_params.rbs +5 -0
  111. data/sig/surge_api/models/attachment_get_file_params.rbs +11 -3
  112. data/sig/surge_api/models/audience_add_contact_params.rbs +10 -2
  113. data/sig/surge_api/models/audience_create_params.rbs +6 -1
  114. data/sig/surge_api/models/audience_list_contacts_params.rbs +5 -1
  115. data/sig/surge_api/models/blast_create_params.rbs +5 -0
  116. data/sig/surge_api/models/campaign_create_params.rbs +4 -9
  117. data/sig/surge_api/models/campaign_list_params.rbs +5 -1
  118. data/sig/surge_api/models/campaign_retrieve_params.rbs +8 -3
  119. data/sig/surge_api/models/campaign_update_params.rbs +4 -12
  120. data/sig/surge_api/models/contact_create_params.rbs +5 -0
  121. data/sig/surge_api/models/contact_list_params.rbs +5 -1
  122. data/sig/surge_api/models/contact_retrieve_params.rbs +8 -3
  123. data/sig/surge_api/models/contact_update_params.rbs +5 -0
  124. data/sig/surge_api/models/message.rbs +2 -1
  125. data/sig/surge_api/models/message_create_params.rbs +4 -9
  126. data/sig/surge_api/models/message_delivered_webhook_event.rbs +2 -1
  127. data/sig/surge_api/models/message_failed_webhook_event.rbs +2 -1
  128. data/sig/surge_api/models/message_list_params.rbs +5 -1
  129. data/sig/surge_api/models/message_params.rbs +88 -6
  130. data/sig/surge_api/models/message_received_webhook_event.rbs +2 -1
  131. data/sig/surge_api/models/message_retrieve_params.rbs +8 -3
  132. data/sig/surge_api/models/message_sent_webhook_event.rbs +2 -1
  133. data/sig/surge_api/models/phone_number_list_params.rbs +5 -1
  134. data/sig/surge_api/models/phone_number_purchase_params.rbs +5 -0
  135. data/sig/surge_api/models/phone_number_release_params.rbs +20 -0
  136. data/sig/surge_api/models/phone_number_update_params.rbs +36 -0
  137. data/sig/surge_api/models/recording_delete_params.rbs +8 -3
  138. data/sig/surge_api/models/recording_get_file_params.rbs +11 -3
  139. data/sig/surge_api/models/recording_list_params.rbs +5 -1
  140. data/sig/surge_api/models/recording_retrieve_params.rbs +8 -3
  141. data/sig/surge_api/models/user_create_params.rbs +5 -0
  142. data/sig/surge_api/models/user_create_token_params.rbs +5 -1
  143. data/sig/surge_api/models/user_delete_params.rbs +8 -3
  144. data/sig/surge_api/models/user_list_params.rbs +5 -1
  145. data/sig/surge_api/models/user_retrieve_params.rbs +8 -3
  146. data/sig/surge_api/models/user_update_params.rbs +5 -0
  147. data/sig/surge_api/models/verification_check_params.rbs +6 -1
  148. data/sig/surge_api/models/verification_create_params.rbs +6 -1
  149. data/sig/surge_api/models.rbs +4 -0
  150. data/sig/surge_api/resources/campaigns.rbs +2 -2
  151. data/sig/surge_api/resources/messages.rbs +1 -1
  152. data/sig/surge_api/resources/phone_numbers.rbs +12 -0
  153. data/sig/surge_api/resources/verifications.rbs +1 -0
  154. data/sig/surge_api/resources/webhooks.rbs +3 -1
  155. metadata +22 -2
@@ -1,26 +1,21 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type message_create_params =
4
- { message_params: SurgeAPI::Models::message_params }
5
- & SurgeAPI::Internal::Type::request_parameters
4
+ { account_id: String } & SurgeAPI::Internal::Type::request_parameters
6
5
 
7
6
  class MessageCreateParams < SurgeAPI::Internal::Type::BaseModel
8
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
8
  include SurgeAPI::Internal::Type::RequestParameters
10
9
 
11
- def message_params: -> SurgeAPI::Models::message_params
12
-
13
- def message_params=: (
14
- SurgeAPI::Models::message_params _
15
- ) -> SurgeAPI::Models::message_params
10
+ attr_accessor account_id: String
16
11
 
17
12
  def initialize: (
18
- message_params: SurgeAPI::Models::message_params,
13
+ account_id: String,
19
14
  ?request_options: SurgeAPI::request_opts
20
15
  ) -> void
21
16
 
22
17
  def to_hash: -> {
23
- message_params: SurgeAPI::Models::message_params,
18
+ account_id: String,
24
19
  request_options: SurgeAPI::RequestOptions
25
20
  }
26
21
  end
@@ -136,7 +136,7 @@ module SurgeAPI
136
136
  url: String
137
137
  }
138
138
 
139
- type type_ = :file | :image | :link | :video
139
+ type type_ = :file | :image | :link | :contact | :video
140
140
 
141
141
  module Type
142
142
  extend SurgeAPI::Internal::Type::Enum
@@ -144,6 +144,7 @@ module SurgeAPI
144
144
  FILE: :file
145
145
  IMAGE: :image
146
146
  LINK: :link
147
+ CONTACT: :contact
147
148
  VIDEO: :video
148
149
 
149
150
  def self?.values: -> ::Array[SurgeAPI::Models::MessageDeliveredWebhookEvent::Data::Attachment::type_]
@@ -141,7 +141,7 @@ module SurgeAPI
141
141
  url: String
142
142
  }
143
143
 
144
- type type_ = :file | :image | :link | :video
144
+ type type_ = :file | :image | :link | :contact | :video
145
145
 
146
146
  module Type
147
147
  extend SurgeAPI::Internal::Type::Enum
@@ -149,6 +149,7 @@ module SurgeAPI
149
149
  FILE: :file
150
150
  IMAGE: :image
151
151
  LINK: :link
152
+ CONTACT: :contact
152
153
  VIDEO: :video
153
154
 
154
155
  def self?.values: -> ::Array[SurgeAPI::Models::MessageFailedWebhookEvent::Data::Attachment::type_]
@@ -1,13 +1,15 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type message_list_params =
4
- { after: String, before: String }
4
+ { account_id: String, after: String, before: String }
5
5
  & SurgeAPI::Internal::Type::request_parameters
6
6
 
7
7
  class MessageListParams < SurgeAPI::Internal::Type::BaseModel
8
8
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
9
  include SurgeAPI::Internal::Type::RequestParameters
10
10
 
11
+ attr_accessor account_id: String
12
+
11
13
  attr_reader after: String?
12
14
 
13
15
  def after=: (String) -> String
@@ -17,12 +19,14 @@ module SurgeAPI
17
19
  def before=: (String) -> String
18
20
 
19
21
  def initialize: (
22
+ account_id: String,
20
23
  ?after: String,
21
24
  ?before: String,
22
25
  ?request_options: SurgeAPI::request_opts
23
26
  ) -> void
24
27
 
25
28
  def to_hash: -> {
29
+ account_id: String,
26
30
  after: String,
27
31
  before: String,
28
32
  request_options: SurgeAPI::RequestOptions
@@ -13,7 +13,8 @@ module SurgeAPI
13
13
  attachments: ::Array[SurgeAPI::MessageParams::MessageParamsWithConversation::Attachment],
14
14
  body: String,
15
15
  metadata: ::Hash[Symbol, String],
16
- send_at: Time
16
+ send_at: Time,
17
+ settings: SurgeAPI::MessageParams::MessageParamsWithConversation::Settings
17
18
  }
18
19
 
19
20
  class MessageParamsWithConversation < SurgeAPI::Internal::Type::BaseModel
@@ -37,12 +38,19 @@ module SurgeAPI
37
38
 
38
39
  def send_at=: (Time) -> Time
39
40
 
41
+ attr_reader settings: SurgeAPI::MessageParams::MessageParamsWithConversation::Settings?
42
+
43
+ def settings=: (
44
+ SurgeAPI::MessageParams::MessageParamsWithConversation::Settings
45
+ ) -> SurgeAPI::MessageParams::MessageParamsWithConversation::Settings
46
+
40
47
  def initialize: (
41
48
  conversation: SurgeAPI::MessageParams::MessageParamsWithConversation::Conversation,
42
49
  ?attachments: ::Array[SurgeAPI::MessageParams::MessageParamsWithConversation::Attachment],
43
50
  ?body: String,
44
51
  ?metadata: ::Hash[Symbol, String],
45
- ?send_at: Time
52
+ ?send_at: Time,
53
+ ?settings: SurgeAPI::MessageParams::MessageParamsWithConversation::Settings
46
54
  ) -> void
47
55
 
48
56
  def to_hash: -> {
@@ -50,7 +58,8 @@ module SurgeAPI
50
58
  attachments: ::Array[SurgeAPI::MessageParams::MessageParamsWithConversation::Attachment],
51
59
  body: String,
52
60
  metadata: ::Hash[Symbol, String],
53
- send_at: Time
61
+ send_at: Time,
62
+ settings: SurgeAPI::MessageParams::MessageParamsWithConversation::Settings
54
63
  }
55
64
 
56
65
  type conversation =
@@ -131,6 +140,38 @@ module SurgeAPI
131
140
 
132
141
  def to_hash: -> { url: String }
133
142
  end
143
+
144
+ type settings =
145
+ {
146
+ link_shortening: SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening
147
+ }
148
+
149
+ class Settings < SurgeAPI::Internal::Type::BaseModel
150
+ attr_reader link_shortening: SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening?
151
+
152
+ def link_shortening=: (
153
+ SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening
154
+ ) -> SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening
155
+
156
+ def initialize: (
157
+ ?link_shortening: SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening
158
+ ) -> void
159
+
160
+ def to_hash: -> {
161
+ link_shortening: SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening
162
+ }
163
+
164
+ type link_shortening = :enabled | :disabled
165
+
166
+ module LinkShortening
167
+ extend SurgeAPI::Internal::Type::Enum
168
+
169
+ ENABLED: :enabled
170
+ DISABLED: :disabled
171
+
172
+ def self?.values: -> ::Array[SurgeAPI::Models::MessageParams::MessageParamsWithConversation::Settings::link_shortening]
173
+ end
174
+ end
134
175
  end
135
176
 
136
177
  type simple_message_params =
@@ -140,7 +181,8 @@ module SurgeAPI
140
181
  body: String,
141
182
  from: String,
142
183
  metadata: ::Hash[Symbol, String],
143
- send_at: Time
184
+ send_at: Time,
185
+ settings: SurgeAPI::MessageParams::SimpleMessageParams::Settings
144
186
  }
145
187
 
146
188
  class SimpleMessageParams < SurgeAPI::Internal::Type::BaseModel
@@ -168,13 +210,20 @@ module SurgeAPI
168
210
 
169
211
  def send_at=: (Time) -> Time
170
212
 
213
+ attr_reader settings: SurgeAPI::MessageParams::SimpleMessageParams::Settings?
214
+
215
+ def settings=: (
216
+ SurgeAPI::MessageParams::SimpleMessageParams::Settings
217
+ ) -> SurgeAPI::MessageParams::SimpleMessageParams::Settings
218
+
171
219
  def initialize: (
172
220
  to: String,
173
221
  ?attachments: ::Array[SurgeAPI::MessageParams::SimpleMessageParams::Attachment],
174
222
  ?body: String,
175
223
  ?from: String,
176
224
  ?metadata: ::Hash[Symbol, String],
177
- ?send_at: Time
225
+ ?send_at: Time,
226
+ ?settings: SurgeAPI::MessageParams::SimpleMessageParams::Settings
178
227
  ) -> void
179
228
 
180
229
  def to_hash: -> {
@@ -183,7 +232,8 @@ module SurgeAPI
183
232
  body: String,
184
233
  from: String,
185
234
  metadata: ::Hash[Symbol, String],
186
- send_at: Time
235
+ send_at: Time,
236
+ settings: SurgeAPI::MessageParams::SimpleMessageParams::Settings
187
237
  }
188
238
 
189
239
  type attachment = { url: String }
@@ -195,6 +245,38 @@ module SurgeAPI
195
245
 
196
246
  def to_hash: -> { url: String }
197
247
  end
248
+
249
+ type settings =
250
+ {
251
+ link_shortening: SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening
252
+ }
253
+
254
+ class Settings < SurgeAPI::Internal::Type::BaseModel
255
+ attr_reader link_shortening: SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening?
256
+
257
+ def link_shortening=: (
258
+ SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening
259
+ ) -> SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening
260
+
261
+ def initialize: (
262
+ ?link_shortening: SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening
263
+ ) -> void
264
+
265
+ def to_hash: -> {
266
+ link_shortening: SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening
267
+ }
268
+
269
+ type link_shortening = :enabled | :disabled
270
+
271
+ module LinkShortening
272
+ extend SurgeAPI::Internal::Type::Enum
273
+
274
+ ENABLED: :enabled
275
+ DISABLED: :disabled
276
+
277
+ def self?.values: -> ::Array[SurgeAPI::Models::MessageParams::SimpleMessageParams::Settings::link_shortening]
278
+ end
279
+ end
198
280
  end
199
281
 
200
282
  def self?.variants: -> ::Array[SurgeAPI::Models::message_params]
@@ -136,7 +136,7 @@ module SurgeAPI
136
136
  url: String
137
137
  }
138
138
 
139
- type type_ = :file | :image | :link | :video
139
+ type type_ = :file | :image | :link | :contact | :video
140
140
 
141
141
  module Type
142
142
  extend SurgeAPI::Internal::Type::Enum
@@ -144,6 +144,7 @@ module SurgeAPI
144
144
  FILE: :file
145
145
  IMAGE: :image
146
146
  LINK: :link
147
+ CONTACT: :contact
147
148
  VIDEO: :video
148
149
 
149
150
  def self?.values: -> ::Array[SurgeAPI::Models::MessageReceivedWebhookEvent::Data::Attachment::type_]
@@ -1,15 +1,20 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type message_retrieve_params =
4
- { } & SurgeAPI::Internal::Type::request_parameters
4
+ { id: String } & SurgeAPI::Internal::Type::request_parameters
5
5
 
6
6
  class MessageRetrieveParams < SurgeAPI::Internal::Type::BaseModel
7
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
8
  include SurgeAPI::Internal::Type::RequestParameters
9
9
 
10
- def initialize: (?request_options: SurgeAPI::request_opts) -> void
10
+ attr_accessor id: String
11
11
 
12
- def to_hash: -> { request_options: SurgeAPI::RequestOptions }
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: SurgeAPI::RequestOptions }
13
18
  end
14
19
  end
15
20
  end
@@ -136,7 +136,7 @@ module SurgeAPI
136
136
  url: String
137
137
  }
138
138
 
139
- type type_ = :file | :image | :link | :video
139
+ type type_ = :file | :image | :link | :contact | :video
140
140
 
141
141
  module Type
142
142
  extend SurgeAPI::Internal::Type::Enum
@@ -144,6 +144,7 @@ module SurgeAPI
144
144
  FILE: :file
145
145
  IMAGE: :image
146
146
  LINK: :link
147
+ CONTACT: :contact
147
148
  VIDEO: :video
148
149
 
149
150
  def self?.values: -> ::Array[SurgeAPI::Models::MessageSentWebhookEvent::Data::Attachment::type_]
@@ -1,13 +1,15 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type phone_number_list_params =
4
- { after: String, before: String }
4
+ { account_id: String, after: String, before: String }
5
5
  & SurgeAPI::Internal::Type::request_parameters
6
6
 
7
7
  class PhoneNumberListParams < SurgeAPI::Internal::Type::BaseModel
8
8
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
9
  include SurgeAPI::Internal::Type::RequestParameters
10
10
 
11
+ attr_accessor account_id: String
12
+
11
13
  attr_reader after: String?
12
14
 
13
15
  def after=: (String) -> String
@@ -17,12 +19,14 @@ module SurgeAPI
17
19
  def before=: (String) -> String
18
20
 
19
21
  def initialize: (
22
+ account_id: String,
20
23
  ?after: String,
21
24
  ?before: String,
22
25
  ?request_options: SurgeAPI::request_opts
23
26
  ) -> void
24
27
 
25
28
  def to_hash: -> {
29
+ account_id: String,
26
30
  after: String,
27
31
  before: String,
28
32
  request_options: SurgeAPI::RequestOptions
@@ -2,6 +2,7 @@ module SurgeAPI
2
2
  module Models
3
3
  type phone_number_purchase_params =
4
4
  {
5
+ account_id: String,
5
6
  area_code: String,
6
7
  latitude: Float,
7
8
  longitude: Float,
@@ -14,6 +15,8 @@ module SurgeAPI
14
15
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
15
16
  include SurgeAPI::Internal::Type::RequestParameters
16
17
 
18
+ attr_accessor account_id: String
19
+
17
20
  attr_reader area_code: String?
18
21
 
19
22
  def area_code=: (String) -> String
@@ -37,6 +40,7 @@ module SurgeAPI
37
40
  ) -> SurgeAPI::Models::PhoneNumberPurchaseParams::type_
38
41
 
39
42
  def initialize: (
43
+ account_id: String,
40
44
  ?area_code: String,
41
45
  ?latitude: Float,
42
46
  ?longitude: Float,
@@ -46,6 +50,7 @@ module SurgeAPI
46
50
  ) -> void
47
51
 
48
52
  def to_hash: -> {
53
+ account_id: String,
49
54
  area_code: String,
50
55
  latitude: Float,
51
56
  longitude: Float,
@@ -0,0 +1,20 @@
1
+ module SurgeAPI
2
+ module Models
3
+ type phone_number_release_params =
4
+ { id: String } & SurgeAPI::Internal::Type::request_parameters
5
+
6
+ class PhoneNumberReleaseParams < SurgeAPI::Internal::Type::BaseModel
7
+ extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
+ include SurgeAPI::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: SurgeAPI::RequestOptions }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,36 @@
1
+ module SurgeAPI
2
+ module Models
3
+ type phone_number_update_params =
4
+ { id: String, campaign_id: String, name: String }
5
+ & SurgeAPI::Internal::Type::request_parameters
6
+
7
+ class PhoneNumberUpdateParams < SurgeAPI::Internal::Type::BaseModel
8
+ extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
+ include SurgeAPI::Internal::Type::RequestParameters
10
+
11
+ attr_accessor id: String
12
+
13
+ attr_reader campaign_id: String?
14
+
15
+ def campaign_id=: (String) -> String
16
+
17
+ attr_reader name: String?
18
+
19
+ def name=: (String) -> String
20
+
21
+ def initialize: (
22
+ id: String,
23
+ ?campaign_id: String,
24
+ ?name: String,
25
+ ?request_options: SurgeAPI::request_opts
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ id: String,
30
+ campaign_id: String,
31
+ name: String,
32
+ request_options: SurgeAPI::RequestOptions
33
+ }
34
+ end
35
+ end
36
+ end
@@ -1,15 +1,20 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type recording_delete_params =
4
- { } & SurgeAPI::Internal::Type::request_parameters
4
+ { id: String } & SurgeAPI::Internal::Type::request_parameters
5
5
 
6
6
  class RecordingDeleteParams < SurgeAPI::Internal::Type::BaseModel
7
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
8
  include SurgeAPI::Internal::Type::RequestParameters
9
9
 
10
- def initialize: (?request_options: SurgeAPI::request_opts) -> void
10
+ attr_accessor id: String
11
11
 
12
- def to_hash: -> { request_options: SurgeAPI::RequestOptions }
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: SurgeAPI::RequestOptions }
13
18
  end
14
19
  end
15
20
  end
@@ -1,15 +1,23 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type recording_get_file_params =
4
- { } & SurgeAPI::Internal::Type::request_parameters
4
+ { recording_id: String } & SurgeAPI::Internal::Type::request_parameters
5
5
 
6
6
  class RecordingGetFileParams < SurgeAPI::Internal::Type::BaseModel
7
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
8
  include SurgeAPI::Internal::Type::RequestParameters
9
9
 
10
- def initialize: (?request_options: SurgeAPI::request_opts) -> void
10
+ attr_accessor recording_id: String
11
11
 
12
- def to_hash: -> { request_options: SurgeAPI::RequestOptions }
12
+ def initialize: (
13
+ recording_id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ recording_id: String,
19
+ request_options: SurgeAPI::RequestOptions
20
+ }
13
21
  end
14
22
  end
15
23
  end
@@ -1,13 +1,15 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type recording_list_params =
4
- { after: String, before: String }
4
+ { account_id: String, after: String, before: String }
5
5
  & SurgeAPI::Internal::Type::request_parameters
6
6
 
7
7
  class RecordingListParams < SurgeAPI::Internal::Type::BaseModel
8
8
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
9
  include SurgeAPI::Internal::Type::RequestParameters
10
10
 
11
+ attr_accessor account_id: String
12
+
11
13
  attr_reader after: String?
12
14
 
13
15
  def after=: (String) -> String
@@ -17,12 +19,14 @@ module SurgeAPI
17
19
  def before=: (String) -> String
18
20
 
19
21
  def initialize: (
22
+ account_id: String,
20
23
  ?after: String,
21
24
  ?before: String,
22
25
  ?request_options: SurgeAPI::request_opts
23
26
  ) -> void
24
27
 
25
28
  def to_hash: -> {
29
+ account_id: String,
26
30
  after: String,
27
31
  before: String,
28
32
  request_options: SurgeAPI::RequestOptions
@@ -1,15 +1,20 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type recording_retrieve_params =
4
- { } & SurgeAPI::Internal::Type::request_parameters
4
+ { id: String } & SurgeAPI::Internal::Type::request_parameters
5
5
 
6
6
  class RecordingRetrieveParams < SurgeAPI::Internal::Type::BaseModel
7
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
8
  include SurgeAPI::Internal::Type::RequestParameters
9
9
 
10
- def initialize: (?request_options: SurgeAPI::request_opts) -> void
10
+ attr_accessor id: String
11
11
 
12
- def to_hash: -> { request_options: SurgeAPI::RequestOptions }
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: SurgeAPI::RequestOptions }
13
18
  end
14
19
  end
15
20
  end
@@ -2,6 +2,7 @@ module SurgeAPI
2
2
  module Models
3
3
  type user_create_params =
4
4
  {
5
+ account_id: String,
5
6
  first_name: String,
6
7
  last_name: String,
7
8
  metadata: ::Hash[Symbol, String],
@@ -13,6 +14,8 @@ module SurgeAPI
13
14
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
14
15
  include SurgeAPI::Internal::Type::RequestParameters
15
16
 
17
+ attr_accessor account_id: String
18
+
16
19
  attr_accessor first_name: String
17
20
 
18
21
  attr_reader last_name: String?
@@ -28,6 +31,7 @@ module SurgeAPI
28
31
  def photo_url=: (String) -> String
29
32
 
30
33
  def initialize: (
34
+ account_id: String,
31
35
  first_name: String,
32
36
  ?last_name: String,
33
37
  ?metadata: ::Hash[Symbol, String],
@@ -36,6 +40,7 @@ module SurgeAPI
36
40
  ) -> void
37
41
 
38
42
  def to_hash: -> {
43
+ account_id: String,
39
44
  first_name: String,
40
45
  last_name: String,
41
46
  metadata: ::Hash[Symbol, String],
@@ -1,23 +1,27 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type user_create_token_params =
4
- { duration_seconds: Integer }
4
+ { user_id: String, duration_seconds: Integer }
5
5
  & SurgeAPI::Internal::Type::request_parameters
6
6
 
7
7
  class UserCreateTokenParams < SurgeAPI::Internal::Type::BaseModel
8
8
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
9
  include SurgeAPI::Internal::Type::RequestParameters
10
10
 
11
+ attr_accessor user_id: String
12
+
11
13
  attr_reader duration_seconds: Integer?
12
14
 
13
15
  def duration_seconds=: (Integer) -> Integer
14
16
 
15
17
  def initialize: (
18
+ user_id: String,
16
19
  ?duration_seconds: Integer,
17
20
  ?request_options: SurgeAPI::request_opts
18
21
  ) -> void
19
22
 
20
23
  def to_hash: -> {
24
+ user_id: String,
21
25
  duration_seconds: Integer,
22
26
  request_options: SurgeAPI::RequestOptions
23
27
  }
@@ -1,15 +1,20 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type user_delete_params =
4
- { } & SurgeAPI::Internal::Type::request_parameters
4
+ { id: String } & SurgeAPI::Internal::Type::request_parameters
5
5
 
6
6
  class UserDeleteParams < SurgeAPI::Internal::Type::BaseModel
7
7
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
8
8
  include SurgeAPI::Internal::Type::RequestParameters
9
9
 
10
- def initialize: (?request_options: SurgeAPI::request_opts) -> void
10
+ attr_accessor id: String
11
11
 
12
- def to_hash: -> { request_options: SurgeAPI::RequestOptions }
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: SurgeAPI::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: SurgeAPI::RequestOptions }
13
18
  end
14
19
  end
15
20
  end
@@ -1,13 +1,15 @@
1
1
  module SurgeAPI
2
2
  module Models
3
3
  type user_list_params =
4
- { after: String, before: String }
4
+ { account_id: String, after: String, before: String }
5
5
  & SurgeAPI::Internal::Type::request_parameters
6
6
 
7
7
  class UserListParams < SurgeAPI::Internal::Type::BaseModel
8
8
  extend SurgeAPI::Internal::Type::RequestParameters::Converter
9
9
  include SurgeAPI::Internal::Type::RequestParameters
10
10
 
11
+ attr_accessor account_id: String
12
+
11
13
  attr_reader after: String?
12
14
 
13
15
  def after=: (String) -> String
@@ -17,12 +19,14 @@ module SurgeAPI
17
19
  def before=: (String) -> String
18
20
 
19
21
  def initialize: (
22
+ account_id: String,
20
23
  ?after: String,
21
24
  ?before: String,
22
25
  ?request_options: SurgeAPI::request_opts
23
26
  ) -> void
24
27
 
25
28
  def to_hash: -> {
29
+ account_id: String,
26
30
  after: String,
27
31
  before: String,
28
32
  request_options: SurgeAPI::RequestOptions