surge_api 0.24.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 +12 -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/call_ended_webhook_event.rb +8 -3
- data/lib/surge_api/models/campaign.rb +15 -7
- data/lib/surge_api/models/campaign_approved_webhook_event.rb +9 -1
- data/lib/surge_api/models/campaign_params.rb +6 -6
- 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 +18 -2
- data/lib/surge_api/models/message_delivered_webhook_event.rb +9 -1
- data/lib/surge_api/models/message_failed_webhook_event.rb +5 -4
- data/lib/surge_api/models/message_received_webhook_event.rb +9 -1
- data/lib/surge_api/models/message_sent_webhook_event.rb +9 -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 +9 -1
- 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 +7 -1
- data/lib/surge_api/models/user_create_token_params.rb +15 -1
- data/lib/surge_api/models.rb +20 -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 +11 -0
- data/rbi/surge_api/client.rbi +3 -0
- data/rbi/surge_api/models/call_ended_webhook_event.rbi +6 -3
- data/rbi/surge_api/models/campaign.rbi +17 -9
- data/rbi/surge_api/models/campaign_approved_webhook_event.rbi +8 -0
- data/rbi/surge_api/models/campaign_params.rbi +9 -9
- 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 +16 -0
- data/rbi/surge_api/models/message_delivered_webhook_event.rbi +8 -0
- data/rbi/surge_api/models/message_failed_webhook_event.rbi +7 -5
- data/rbi/surge_api/models/message_received_webhook_event.rbi +8 -0
- data/rbi/surge_api/models/message_sent_webhook_event.rbi +8 -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 +8 -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 +3 -0
- data/rbi/surge_api/models/user_create_token_params.rbi +17 -0
- data/rbi/surge_api/models.rbi +22 -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 +3 -0
- data/sig/surge_api/client.rbs +2 -0
- data/sig/surge_api/models/campaign.rbs +5 -0
- 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 +10 -0
- data/sig/surge_api/models/message_delivered_webhook_event.rbs +5 -0
- data/sig/surge_api/models/message_failed_webhook_event.rbs +4 -4
- data/sig/surge_api/models/message_received_webhook_event.rbs +5 -0
- data/sig/surge_api/models/message_sent_webhook_event.rbs +5 -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 +5 -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 +3 -0
- data/sig/surge_api/models/user_create_token_params.rbs +7 -1
- data/sig/surge_api/models.rbs +20 -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 +3 -0
- metadata +50 -7
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module SurgeAPI
|
|
4
|
+
module Models
|
|
5
|
+
class TollFreeCampaignUpdateParams < SurgeAPI::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute consent_flows
|
|
7
|
+
#
|
|
8
|
+
# @return [Array<SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3>, nil]
|
|
9
|
+
optional :consent_flows,
|
|
10
|
+
-> { SurgeAPI::Internal::Type::ArrayOf[union: SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow] }
|
|
11
|
+
|
|
12
|
+
# @!attribute description
|
|
13
|
+
# An explanation of how the toll-free number will be used.
|
|
14
|
+
#
|
|
15
|
+
# @return [String, nil]
|
|
16
|
+
optional :description, String
|
|
17
|
+
|
|
18
|
+
# @!attribute includes
|
|
19
|
+
#
|
|
20
|
+
# @return [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::Include>, nil]
|
|
21
|
+
optional :includes,
|
|
22
|
+
-> { SurgeAPI::Internal::Type::ArrayOf[enum: SurgeAPI::TollFreeCampaignUpdateParams::Include] }
|
|
23
|
+
|
|
24
|
+
# @!attribute message_samples
|
|
25
|
+
#
|
|
26
|
+
# @return [Array<String>, nil]
|
|
27
|
+
optional :message_samples, SurgeAPI::Internal::Type::ArrayOf[String]
|
|
28
|
+
|
|
29
|
+
# @!attribute privacy_policy_url
|
|
30
|
+
#
|
|
31
|
+
# @return [String, nil]
|
|
32
|
+
optional :privacy_policy_url, String
|
|
33
|
+
|
|
34
|
+
# @!attribute terms_and_conditions_url
|
|
35
|
+
#
|
|
36
|
+
# @return [String, nil]
|
|
37
|
+
optional :terms_and_conditions_url, String
|
|
38
|
+
|
|
39
|
+
# @!attribute use_cases
|
|
40
|
+
#
|
|
41
|
+
# @return [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::UseCase>, nil]
|
|
42
|
+
optional :use_cases,
|
|
43
|
+
-> { SurgeAPI::Internal::Type::ArrayOf[enum: SurgeAPI::TollFreeCampaignUpdateParams::UseCase] }
|
|
44
|
+
|
|
45
|
+
# @!method initialize(consent_flows: nil, description: nil, includes: nil, message_samples: nil, privacy_policy_url: nil, terms_and_conditions_url: nil, use_cases: nil)
|
|
46
|
+
# Parameters for updating a toll-free campaign.
|
|
47
|
+
#
|
|
48
|
+
# @param consent_flows [Array<SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3>]
|
|
49
|
+
#
|
|
50
|
+
# @param description [String] An explanation of how the toll-free number will be used.
|
|
51
|
+
#
|
|
52
|
+
# @param includes [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::Include>]
|
|
53
|
+
#
|
|
54
|
+
# @param message_samples [Array<String>]
|
|
55
|
+
#
|
|
56
|
+
# @param privacy_policy_url [String]
|
|
57
|
+
#
|
|
58
|
+
# @param terms_and_conditions_url [String]
|
|
59
|
+
#
|
|
60
|
+
# @param use_cases [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::UseCase>]
|
|
61
|
+
|
|
62
|
+
module ConsentFlow
|
|
63
|
+
extend SurgeAPI::Internal::Type::Union
|
|
64
|
+
|
|
65
|
+
variant -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0 }
|
|
66
|
+
|
|
67
|
+
variant -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1 }
|
|
68
|
+
|
|
69
|
+
variant -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2 }
|
|
70
|
+
|
|
71
|
+
variant -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3 }
|
|
72
|
+
|
|
73
|
+
class UnionMember0 < SurgeAPI::Internal::Type::BaseModel
|
|
74
|
+
# @!attribute script
|
|
75
|
+
#
|
|
76
|
+
# @return [String]
|
|
77
|
+
required :script, String
|
|
78
|
+
|
|
79
|
+
# @!attribute type
|
|
80
|
+
#
|
|
81
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0::Type]
|
|
82
|
+
required :type, enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0::Type }
|
|
83
|
+
|
|
84
|
+
# @!method initialize(script:, type:)
|
|
85
|
+
# @param script [String]
|
|
86
|
+
# @param type [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0::Type]
|
|
87
|
+
|
|
88
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0#type
|
|
89
|
+
module Type
|
|
90
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
91
|
+
|
|
92
|
+
VERBAL = :verbal
|
|
93
|
+
|
|
94
|
+
# @!method self.values
|
|
95
|
+
# @return [Array<Symbol>]
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
class UnionMember1 < SurgeAPI::Internal::Type::BaseModel
|
|
100
|
+
# @!attribute owner
|
|
101
|
+
#
|
|
102
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Owner]
|
|
103
|
+
required :owner, enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Owner }
|
|
104
|
+
|
|
105
|
+
# @!attribute type
|
|
106
|
+
#
|
|
107
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Type]
|
|
108
|
+
required :type, enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Type }
|
|
109
|
+
|
|
110
|
+
# @!attribute form_url
|
|
111
|
+
#
|
|
112
|
+
# @return [String, nil]
|
|
113
|
+
optional :form_url, String
|
|
114
|
+
|
|
115
|
+
# @!attribute screenshot
|
|
116
|
+
#
|
|
117
|
+
# @return [SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot, nil]
|
|
118
|
+
optional :screenshot, -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot }
|
|
119
|
+
|
|
120
|
+
# @!method initialize(owner:, type:, form_url: nil, screenshot: nil)
|
|
121
|
+
# @param owner [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Owner]
|
|
122
|
+
# @param type [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Type]
|
|
123
|
+
# @param form_url [String]
|
|
124
|
+
# @param screenshot [SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot]
|
|
125
|
+
|
|
126
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1#owner
|
|
127
|
+
module Owner
|
|
128
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
129
|
+
|
|
130
|
+
BRAND = :brand
|
|
131
|
+
PLATFORM = :platform
|
|
132
|
+
|
|
133
|
+
# @!method self.values
|
|
134
|
+
# @return [Array<Symbol>]
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1#type
|
|
138
|
+
module Type
|
|
139
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
140
|
+
|
|
141
|
+
WEB_FORM = :web_form
|
|
142
|
+
|
|
143
|
+
# @!method self.values
|
|
144
|
+
# @return [Array<Symbol>]
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1#screenshot
|
|
148
|
+
class Screenshot < SurgeAPI::Internal::Type::BaseModel
|
|
149
|
+
# @!attribute reason
|
|
150
|
+
#
|
|
151
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot::Reason]
|
|
152
|
+
required :reason,
|
|
153
|
+
enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot::Reason }
|
|
154
|
+
|
|
155
|
+
# @!attribute urls
|
|
156
|
+
#
|
|
157
|
+
# @return [Array<String>]
|
|
158
|
+
required :urls, SurgeAPI::Internal::Type::ArrayOf[String]
|
|
159
|
+
|
|
160
|
+
# @!attribute reason_other
|
|
161
|
+
#
|
|
162
|
+
# @return [String, nil]
|
|
163
|
+
optional :reason_other, String
|
|
164
|
+
|
|
165
|
+
# @!method initialize(reason:, urls:, reason_other: nil)
|
|
166
|
+
# @param reason [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot::Reason]
|
|
167
|
+
# @param urls [Array<String>]
|
|
168
|
+
# @param reason_other [String]
|
|
169
|
+
|
|
170
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1::Screenshot#reason
|
|
171
|
+
module Reason
|
|
172
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
173
|
+
|
|
174
|
+
BEHIND_LOGIN = :behind_login
|
|
175
|
+
UNDER_CONSTRUCTION = :under_construction
|
|
176
|
+
OTHER = :other
|
|
177
|
+
|
|
178
|
+
# @!method self.values
|
|
179
|
+
# @return [Array<Symbol>]
|
|
180
|
+
end
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
class UnionMember2 < SurgeAPI::Internal::Type::BaseModel
|
|
185
|
+
# @!attribute file_urls
|
|
186
|
+
#
|
|
187
|
+
# @return [Array<String>]
|
|
188
|
+
required :file_urls, SurgeAPI::Internal::Type::ArrayOf[String]
|
|
189
|
+
|
|
190
|
+
# @!attribute type
|
|
191
|
+
#
|
|
192
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2::Type]
|
|
193
|
+
required :type, enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2::Type }
|
|
194
|
+
|
|
195
|
+
# @!attribute keywords
|
|
196
|
+
#
|
|
197
|
+
# @return [Array<String>, nil]
|
|
198
|
+
optional :keywords, SurgeAPI::Internal::Type::ArrayOf[String]
|
|
199
|
+
|
|
200
|
+
# @!method initialize(file_urls:, type:, keywords: nil)
|
|
201
|
+
# @param file_urls [Array<String>]
|
|
202
|
+
# @param type [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2::Type]
|
|
203
|
+
# @param keywords [Array<String>]
|
|
204
|
+
|
|
205
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2#type
|
|
206
|
+
module Type
|
|
207
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
208
|
+
|
|
209
|
+
TEXT = :text
|
|
210
|
+
|
|
211
|
+
# @!method self.values
|
|
212
|
+
# @return [Array<Symbol>]
|
|
213
|
+
end
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
class UnionMember3 < SurgeAPI::Internal::Type::BaseModel
|
|
217
|
+
# @!attribute file_urls
|
|
218
|
+
#
|
|
219
|
+
# @return [Array<String>]
|
|
220
|
+
required :file_urls, SurgeAPI::Internal::Type::ArrayOf[String]
|
|
221
|
+
|
|
222
|
+
# @!attribute type
|
|
223
|
+
#
|
|
224
|
+
# @return [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3::Type]
|
|
225
|
+
required :type, enum: -> { SurgeAPI::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3::Type }
|
|
226
|
+
|
|
227
|
+
# @!method initialize(file_urls:, type:)
|
|
228
|
+
# @param file_urls [Array<String>]
|
|
229
|
+
# @param type [Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3::Type]
|
|
230
|
+
|
|
231
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3#type
|
|
232
|
+
module Type
|
|
233
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
234
|
+
|
|
235
|
+
PAPER_FORM = :paper_form
|
|
236
|
+
|
|
237
|
+
# @!method self.values
|
|
238
|
+
# @return [Array<Symbol>]
|
|
239
|
+
end
|
|
240
|
+
end
|
|
241
|
+
|
|
242
|
+
# @!method self.variants
|
|
243
|
+
# @return [Array(SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3)]
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
module Include
|
|
247
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
248
|
+
|
|
249
|
+
AGE_GATED = :age_gated
|
|
250
|
+
|
|
251
|
+
# @!method self.values
|
|
252
|
+
# @return [Array<Symbol>]
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
module UseCase
|
|
256
|
+
extend SurgeAPI::Internal::Type::Enum
|
|
257
|
+
|
|
258
|
+
TWO_FACTOR_AUTHENTICATION = :two_factor_authentication
|
|
259
|
+
ACCOUNT_NOTIFICATION = :account_notification
|
|
260
|
+
CUSTOMER_CARE = :customer_care
|
|
261
|
+
CHARITY = :charity
|
|
262
|
+
DELIVERY_NOTIFICATION = :delivery_notification
|
|
263
|
+
FRAUD_ALERT = :fraud_alert
|
|
264
|
+
EVENT = :event
|
|
265
|
+
HIGHER_EDUCATION = :higher_education
|
|
266
|
+
K12_EDUCATION = :k12_education
|
|
267
|
+
MARKETING = :marketing
|
|
268
|
+
POLLING_VOTING = :polling_voting
|
|
269
|
+
POLITICAL = :political
|
|
270
|
+
PUBLIC_SERVICE_ANNOUNCEMENT = :public_service_announcement
|
|
271
|
+
SECURITY_ALERT = :security_alert
|
|
272
|
+
|
|
273
|
+
# @!method self.values
|
|
274
|
+
# @return [Array<Symbol>]
|
|
275
|
+
end
|
|
276
|
+
end
|
|
277
|
+
end
|
|
278
|
+
end
|
|
@@ -11,6 +11,12 @@ module SurgeAPI
|
|
|
11
11
|
|
|
12
12
|
variant :"campaign.approved", -> { SurgeAPI::CampaignApprovedWebhookEvent }
|
|
13
13
|
|
|
14
|
+
variant :"campaign.rejected", -> { SurgeAPI::CampaignRejectedWebhookEvent }
|
|
15
|
+
|
|
16
|
+
variant :"campaign.submitted", -> { SurgeAPI::CampaignSubmittedWebhookEvent }
|
|
17
|
+
|
|
18
|
+
variant :"campaign.warning", -> { SurgeAPI::CampaignWarningWebhookEvent }
|
|
19
|
+
|
|
14
20
|
variant :"contact.opted_in", -> { SurgeAPI::ContactOptedInWebhookEvent }
|
|
15
21
|
|
|
16
22
|
variant :"contact.opted_out", -> { SurgeAPI::ContactOptedOutWebhookEvent }
|
|
@@ -36,7 +42,7 @@ module SurgeAPI
|
|
|
36
42
|
variant :"voicemail.received", -> { SurgeAPI::VoicemailReceivedWebhookEvent }
|
|
37
43
|
|
|
38
44
|
# @!method self.variants
|
|
39
|
-
# @return [Array(SurgeAPI::Models::CallEndedWebhookEvent, SurgeAPI::Models::CampaignApprovedWebhookEvent, SurgeAPI::Models::ContactOptedInWebhookEvent, SurgeAPI::Models::ContactOptedOutWebhookEvent, SurgeAPI::Models::ConversationCreatedWebhookEvent, SurgeAPI::Models::LinkFollowedWebhookEvent, SurgeAPI::Models::MessageDeliveredWebhookEvent, SurgeAPI::Models::MessageFailedWebhookEvent, SurgeAPI::Models::MessageReceivedWebhookEvent, SurgeAPI::Models::MessageSentWebhookEvent, SurgeAPI::Models::PhoneNumberAttachedToCampaignWebhookEvent, SurgeAPI::Models::PhoneNumberImportedWebhookEvent, SurgeAPI::Models::RecordingCompletedWebhookEvent, SurgeAPI::Models::VoicemailReceivedWebhookEvent)]
|
|
45
|
+
# @return [Array(SurgeAPI::Models::CallEndedWebhookEvent, SurgeAPI::Models::CampaignApprovedWebhookEvent, SurgeAPI::Models::CampaignRejectedWebhookEvent, SurgeAPI::Models::CampaignSubmittedWebhookEvent, SurgeAPI::Models::CampaignWarningWebhookEvent, SurgeAPI::Models::ContactOptedInWebhookEvent, SurgeAPI::Models::ContactOptedOutWebhookEvent, SurgeAPI::Models::ConversationCreatedWebhookEvent, SurgeAPI::Models::LinkFollowedWebhookEvent, SurgeAPI::Models::MessageDeliveredWebhookEvent, SurgeAPI::Models::MessageFailedWebhookEvent, SurgeAPI::Models::MessageReceivedWebhookEvent, SurgeAPI::Models::MessageSentWebhookEvent, SurgeAPI::Models::PhoneNumberAttachedToCampaignWebhookEvent, SurgeAPI::Models::PhoneNumberImportedWebhookEvent, SurgeAPI::Models::RecordingCompletedWebhookEvent, SurgeAPI::Models::VoicemailReceivedWebhookEvent)]
|
|
40
46
|
end
|
|
41
47
|
end
|
|
42
48
|
end
|
|
@@ -19,11 +19,25 @@ module SurgeAPI
|
|
|
19
19
|
# @return [Integer, nil]
|
|
20
20
|
optional :duration_seconds, Integer
|
|
21
21
|
|
|
22
|
-
# @!
|
|
22
|
+
# @!attribute read_only
|
|
23
|
+
# Restrict the token to viewing embedded conversations and unread counts. Sending
|
|
24
|
+
# messages, changing read state, editing contacts, and calling are disabled.
|
|
25
|
+
# Defaults to false. Preserve this value when refreshing the token; changing
|
|
26
|
+
# access mode requires reloading the embed.
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :read_only, SurgeAPI::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!method initialize(user_id:, duration_seconds: nil, read_only: nil, request_options: {})
|
|
32
|
+
# Some parameter documentations has been truncated, see
|
|
33
|
+
# {SurgeAPI::Models::UserCreateTokenParams} for more details.
|
|
34
|
+
#
|
|
23
35
|
# @param user_id [String] The user for which the token represents authentication.
|
|
24
36
|
#
|
|
25
37
|
# @param duration_seconds [Integer] For how many seconds the token should be accepted. Defaults to 15 minutes.
|
|
26
38
|
#
|
|
39
|
+
# @param read_only [Boolean] Restrict the token to viewing embedded conversations and unread counts. Sending
|
|
40
|
+
#
|
|
27
41
|
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}]
|
|
28
42
|
end
|
|
29
43
|
end
|
data/lib/surge_api/models.rb
CHANGED
|
@@ -79,13 +79,19 @@ module SurgeAPI
|
|
|
79
79
|
|
|
80
80
|
CampaignParams = SurgeAPI::Models::CampaignParams
|
|
81
81
|
|
|
82
|
+
CampaignRejectedWebhookEvent = SurgeAPI::Models::CampaignRejectedWebhookEvent
|
|
83
|
+
|
|
82
84
|
CampaignResendBrandVerificationMessageParams =
|
|
83
85
|
SurgeAPI::Models::CampaignResendBrandVerificationMessageParams
|
|
84
86
|
|
|
85
87
|
CampaignRetrieveParams = SurgeAPI::Models::CampaignRetrieveParams
|
|
86
88
|
|
|
89
|
+
CampaignSubmittedWebhookEvent = SurgeAPI::Models::CampaignSubmittedWebhookEvent
|
|
90
|
+
|
|
87
91
|
CampaignUpdateParams = SurgeAPI::Models::CampaignUpdateParams
|
|
88
92
|
|
|
93
|
+
CampaignWarningWebhookEvent = SurgeAPI::Models::CampaignWarningWebhookEvent
|
|
94
|
+
|
|
89
95
|
Contact = SurgeAPI::Models::Contact
|
|
90
96
|
|
|
91
97
|
ContactCreateParams = SurgeAPI::Models::ContactCreateParams
|
|
@@ -154,6 +160,20 @@ module SurgeAPI
|
|
|
154
160
|
|
|
155
161
|
RecordingRetrieveParams = SurgeAPI::Models::RecordingRetrieveParams
|
|
156
162
|
|
|
163
|
+
TollFreeCampaign = SurgeAPI::Models::TollFreeCampaign
|
|
164
|
+
|
|
165
|
+
TollFreeCampaignConsentFlow = SurgeAPI::Models::TollFreeCampaignConsentFlow
|
|
166
|
+
|
|
167
|
+
TollFreeCampaignCreateParams = SurgeAPI::Models::TollFreeCampaignCreateParams
|
|
168
|
+
|
|
169
|
+
TollFreeCampaignListParams = SurgeAPI::Models::TollFreeCampaignListParams
|
|
170
|
+
|
|
171
|
+
TollFreeCampaignParams = SurgeAPI::Models::TollFreeCampaignParams
|
|
172
|
+
|
|
173
|
+
TollFreeCampaignRetrieveParams = SurgeAPI::Models::TollFreeCampaignRetrieveParams
|
|
174
|
+
|
|
175
|
+
TollFreeCampaignUpdateParams = SurgeAPI::Models::TollFreeCampaignUpdateParams
|
|
176
|
+
|
|
157
177
|
UnwrapWebhookEvent = SurgeAPI::Models::UnwrapWebhookEvent
|
|
158
178
|
|
|
159
179
|
User = SurgeAPI::Models::User
|
|
@@ -6,7 +6,7 @@ module SurgeAPI
|
|
|
6
6
|
# Some parameter documentations has been truncated, see
|
|
7
7
|
# {SurgeAPI::Models::AccountCreateParams} for more details.
|
|
8
8
|
#
|
|
9
|
-
# Creates a new Account
|
|
9
|
+
# Creates a new Account.
|
|
10
10
|
#
|
|
11
11
|
# @overload create(name:, brand_name: nil, organization: nil, time_zone: nil, request_options: {})
|
|
12
12
|
#
|
|
@@ -90,7 +90,7 @@ module SurgeAPI
|
|
|
90
90
|
# Some parameter documentations has been truncated, see
|
|
91
91
|
# {SurgeAPI::Models::AccountListParams} for more details.
|
|
92
92
|
#
|
|
93
|
-
# List all accounts
|
|
93
|
+
# List all accounts with cursor-based pagination.
|
|
94
94
|
#
|
|
95
95
|
# @overload list(after: nil, before: nil, request_options: {})
|
|
96
96
|
#
|
|
@@ -53,28 +53,46 @@ module SurgeAPI
|
|
|
53
53
|
# Some parameter documentations has been truncated, see
|
|
54
54
|
# {SurgeAPI::Models::CampaignUpdateParams} for more details.
|
|
55
55
|
#
|
|
56
|
-
# Updates a campaign
|
|
57
|
-
#
|
|
58
|
-
# campaign
|
|
59
|
-
#
|
|
56
|
+
# Updates supplied fields on a campaign and submits it for review. Omitted fields
|
|
57
|
+
# retain their stored values. An empty object or empty request body resubmits the
|
|
58
|
+
# existing campaign without changing its registration details. Supplied arrays
|
|
59
|
+
# replace their stored values; an empty includes array clears all inclusion flags.
|
|
60
|
+
# Returns an error if the resulting campaign is incomplete or invalid, or the
|
|
61
|
+
# campaign is not editable.
|
|
60
62
|
#
|
|
61
|
-
# @overload update(id,
|
|
63
|
+
# @overload update(id, consent_flow: nil, description: nil, includes: nil, link_sample: nil, message_samples: nil, privacy_policy_url: nil, terms_and_conditions_url: nil, use_cases: nil, volume: nil, request_options: {})
|
|
62
64
|
#
|
|
63
65
|
# @param id [String] The ID of the campaign to update.
|
|
64
66
|
#
|
|
65
|
-
# @param
|
|
67
|
+
# @param consent_flow [String] A string explaining the method through which end users will opt in to receive me
|
|
68
|
+
#
|
|
69
|
+
# @param description [String] An explanation of the organization's purpose and how it will be using text messa
|
|
70
|
+
#
|
|
71
|
+
# @param includes [Array<Symbol, SurgeAPI::Models::CampaignUpdateParams::Include>] A list of properties that this campaign should include. These properties can be
|
|
72
|
+
#
|
|
73
|
+
# @param link_sample [String, nil] A sample link that might be sent by this campaign. This is required when `includ
|
|
74
|
+
#
|
|
75
|
+
# @param message_samples [Array<String>] An array of 2-5 strings with examples of the messages that will be sent from thi
|
|
76
|
+
#
|
|
77
|
+
# @param privacy_policy_url [String] The URL of the privacy policy for the brand in question. This may be a shared pr
|
|
78
|
+
#
|
|
79
|
+
# @param terms_and_conditions_url [String] The URL of the terms and conditions presented to end users when they opt in to m
|
|
80
|
+
#
|
|
81
|
+
# @param use_cases [Array<Symbol, SurgeAPI::Models::CampaignUpdateParams::UseCase>] A list containing 1-5 types of messages that will be sent with this campaign.
|
|
82
|
+
#
|
|
83
|
+
# @param volume [Symbol, SurgeAPI::Models::CampaignUpdateParams::Volume] This will be one of the following:
|
|
66
84
|
#
|
|
67
85
|
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
68
86
|
#
|
|
69
87
|
# @return [SurgeAPI::Models::Campaign]
|
|
70
88
|
#
|
|
71
89
|
# @see SurgeAPI::Models::CampaignUpdateParams
|
|
72
|
-
def update(id, params)
|
|
90
|
+
def update(id, params = {})
|
|
73
91
|
parsed, options = SurgeAPI::CampaignUpdateParams.dump_request(params)
|
|
74
92
|
@client.request(
|
|
75
93
|
method: :patch,
|
|
76
94
|
path: ["campaigns/%1$s", id],
|
|
77
|
-
body: parsed
|
|
95
|
+
body: parsed,
|
|
78
96
|
model: SurgeAPI::Campaign,
|
|
79
97
|
options: options
|
|
80
98
|
)
|
|
@@ -25,12 +25,14 @@ module SurgeAPI
|
|
|
25
25
|
|
|
26
26
|
# Updates a phone number's details.
|
|
27
27
|
#
|
|
28
|
-
# @overload update(id, campaign_id: nil, name: nil, request_options: {})
|
|
28
|
+
# @overload update(id, campaign_id: nil, metadata: nil, name: nil, request_options: {})
|
|
29
29
|
#
|
|
30
30
|
# @param id [String] The ID of the phone number to update.
|
|
31
31
|
#
|
|
32
32
|
# @param campaign_id [String] Campaign ID to attach this number to (`cpn_...`).
|
|
33
33
|
#
|
|
34
|
+
# @param metadata [Hash{Symbol=>String}] Set of key-value pairs that will be stored with the object.
|
|
35
|
+
#
|
|
34
36
|
# @param name [String] A human-readable name for the phone number.
|
|
35
37
|
#
|
|
36
38
|
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
@@ -127,7 +129,7 @@ module SurgeAPI
|
|
|
127
129
|
#
|
|
128
130
|
# When `phone_number` is provided, all other search parameters are ignored.
|
|
129
131
|
#
|
|
130
|
-
# @overload purchase(account_id, area_code: nil, latitude: nil, longitude: nil, name: nil, phone_number: nil, type: nil, request_options: {})
|
|
132
|
+
# @overload purchase(account_id, area_code: nil, latitude: nil, longitude: nil, metadata: nil, name: nil, phone_number: nil, type: nil, request_options: {})
|
|
131
133
|
#
|
|
132
134
|
# @param account_id [String] The account for which the phone number should be created.
|
|
133
135
|
#
|
|
@@ -137,6 +139,8 @@ module SurgeAPI
|
|
|
137
139
|
#
|
|
138
140
|
# @param longitude [Float] Longitude to search for nearby phone numbers. Must be used with latitude. If pro
|
|
139
141
|
#
|
|
142
|
+
# @param metadata [Hash{Symbol=>String}] Set of key-value pairs that will be stored with the object.
|
|
143
|
+
#
|
|
140
144
|
# @param name [String] A human-readable name for the phone number. If not provided, defaults to the for
|
|
141
145
|
#
|
|
142
146
|
# @param phone_number [String] The exact phone number to purchase in E.164 format. When provided, all other sea
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module SurgeAPI
|
|
4
|
+
module Resources
|
|
5
|
+
class TollFreeCampaigns
|
|
6
|
+
# Creates a toll-free campaign and submits it for Surge review.
|
|
7
|
+
#
|
|
8
|
+
# @overload create(account_id, consent_flows:, description:, message_samples:, phone_number_id:, privacy_policy_url:, terms_and_conditions_url:, use_cases:, includes: nil, request_options: {})
|
|
9
|
+
#
|
|
10
|
+
# @param account_id [String] The account for which the toll-free campaign should be created.
|
|
11
|
+
#
|
|
12
|
+
# @param consent_flows [Array<SurgeAPI::Models::TollFreeCampaignParams::ConsentFlow::UnionMember0, SurgeAPI::Models::TollFreeCampaignParams::ConsentFlow::UnionMember1, SurgeAPI::Models::TollFreeCampaignParams::ConsentFlow::UnionMember2, SurgeAPI::Models::TollFreeCampaignParams::ConsentFlow::UnionMember3>]
|
|
13
|
+
#
|
|
14
|
+
# @param description [String] An explanation of how the toll-free number will be used.
|
|
15
|
+
#
|
|
16
|
+
# @param message_samples [Array<String>]
|
|
17
|
+
#
|
|
18
|
+
# @param phone_number_id [String] The toll-free phone number to register.
|
|
19
|
+
#
|
|
20
|
+
# @param privacy_policy_url [String]
|
|
21
|
+
#
|
|
22
|
+
# @param terms_and_conditions_url [String]
|
|
23
|
+
#
|
|
24
|
+
# @param use_cases [Array<Symbol, SurgeAPI::Models::TollFreeCampaignParams::UseCase>]
|
|
25
|
+
#
|
|
26
|
+
# @param includes [Array<Symbol, SurgeAPI::Models::TollFreeCampaignParams::Include>]
|
|
27
|
+
#
|
|
28
|
+
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
29
|
+
#
|
|
30
|
+
# @return [SurgeAPI::Models::TollFreeCampaign]
|
|
31
|
+
#
|
|
32
|
+
# @see SurgeAPI::Models::TollFreeCampaignCreateParams
|
|
33
|
+
def create(account_id, params)
|
|
34
|
+
parsed, options = SurgeAPI::TollFreeCampaignCreateParams.dump_request(params)
|
|
35
|
+
@client.request(
|
|
36
|
+
method: :post,
|
|
37
|
+
path: ["accounts/%1$s/toll_free_campaigns", account_id],
|
|
38
|
+
body: parsed,
|
|
39
|
+
model: SurgeAPI::TollFreeCampaign,
|
|
40
|
+
options: options
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Retrieves a toll-free campaign object.
|
|
45
|
+
#
|
|
46
|
+
# @overload retrieve(campaign_id, request_options: {})
|
|
47
|
+
#
|
|
48
|
+
# @param campaign_id [String] The ID of the toll-free campaign to retrieve.
|
|
49
|
+
#
|
|
50
|
+
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
51
|
+
#
|
|
52
|
+
# @return [SurgeAPI::Models::TollFreeCampaign]
|
|
53
|
+
#
|
|
54
|
+
# @see SurgeAPI::Models::TollFreeCampaignRetrieveParams
|
|
55
|
+
def retrieve(campaign_id, params = {})
|
|
56
|
+
@client.request(
|
|
57
|
+
method: :get,
|
|
58
|
+
path: ["toll_free_campaigns/%1$s", campaign_id],
|
|
59
|
+
model: SurgeAPI::TollFreeCampaign,
|
|
60
|
+
options: params[:request_options]
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Updates a toll-free campaign awaiting customer fixes and re-submits it for Surge
|
|
65
|
+
# review. Returns 409 if the campaign is not in an updatable status.
|
|
66
|
+
#
|
|
67
|
+
# @overload update(campaign_id, consent_flows: nil, description: nil, includes: nil, message_samples: nil, privacy_policy_url: nil, terms_and_conditions_url: nil, use_cases: nil, request_options: {})
|
|
68
|
+
#
|
|
69
|
+
# @param campaign_id [String] The toll-free campaign ID to update.
|
|
70
|
+
#
|
|
71
|
+
# @param consent_flows [Array<SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember0, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember1, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember2, SurgeAPI::Models::TollFreeCampaignUpdateParams::ConsentFlow::UnionMember3>]
|
|
72
|
+
#
|
|
73
|
+
# @param description [String] An explanation of how the toll-free number will be used.
|
|
74
|
+
#
|
|
75
|
+
# @param includes [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::Include>]
|
|
76
|
+
#
|
|
77
|
+
# @param message_samples [Array<String>]
|
|
78
|
+
#
|
|
79
|
+
# @param privacy_policy_url [String]
|
|
80
|
+
#
|
|
81
|
+
# @param terms_and_conditions_url [String]
|
|
82
|
+
#
|
|
83
|
+
# @param use_cases [Array<Symbol, SurgeAPI::Models::TollFreeCampaignUpdateParams::UseCase>]
|
|
84
|
+
#
|
|
85
|
+
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
86
|
+
#
|
|
87
|
+
# @return [SurgeAPI::Models::TollFreeCampaign]
|
|
88
|
+
#
|
|
89
|
+
# @see SurgeAPI::Models::TollFreeCampaignUpdateParams
|
|
90
|
+
def update(campaign_id, params = {})
|
|
91
|
+
parsed, options = SurgeAPI::TollFreeCampaignUpdateParams.dump_request(params)
|
|
92
|
+
@client.request(
|
|
93
|
+
method: :patch,
|
|
94
|
+
path: ["toll_free_campaigns/%1$s", campaign_id],
|
|
95
|
+
body: parsed,
|
|
96
|
+
model: SurgeAPI::TollFreeCampaign,
|
|
97
|
+
options: options
|
|
98
|
+
)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Some parameter documentations has been truncated, see
|
|
102
|
+
# {SurgeAPI::Models::TollFreeCampaignListParams} for more details.
|
|
103
|
+
#
|
|
104
|
+
# List all toll-free campaigns for an account with cursor-based pagination.
|
|
105
|
+
#
|
|
106
|
+
# @overload list(account_id, after: nil, before: nil, request_options: {})
|
|
107
|
+
#
|
|
108
|
+
# @param account_id [String] The account ID to list toll-free campaigns for.
|
|
109
|
+
#
|
|
110
|
+
# @param after [String] Cursor for forward pagination. Use the next_cursor from a previous response.
|
|
111
|
+
#
|
|
112
|
+
# @param before [String] Cursor for backward pagination. Use the previous_cursor from a previous response
|
|
113
|
+
#
|
|
114
|
+
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
115
|
+
#
|
|
116
|
+
# @return [SurgeAPI::Internal::Cursor<SurgeAPI::Models::TollFreeCampaign>]
|
|
117
|
+
#
|
|
118
|
+
# @see SurgeAPI::Models::TollFreeCampaignListParams
|
|
119
|
+
def list(account_id, params = {})
|
|
120
|
+
parsed, options = SurgeAPI::TollFreeCampaignListParams.dump_request(params)
|
|
121
|
+
query = SurgeAPI::Internal::Util.encode_query_params(parsed)
|
|
122
|
+
@client.request(
|
|
123
|
+
method: :get,
|
|
124
|
+
path: ["accounts/%1$s/toll_free_campaigns", account_id],
|
|
125
|
+
query: query,
|
|
126
|
+
page: SurgeAPI::Internal::Cursor,
|
|
127
|
+
model: SurgeAPI::TollFreeCampaign,
|
|
128
|
+
options: options
|
|
129
|
+
)
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
# @api private
|
|
133
|
+
#
|
|
134
|
+
# @param client [SurgeAPI::Client]
|
|
135
|
+
def initialize(client:)
|
|
136
|
+
@client = client
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
end
|
|
@@ -138,15 +138,20 @@ module SurgeAPI
|
|
|
138
138
|
)
|
|
139
139
|
end
|
|
140
140
|
|
|
141
|
+
# Some parameter documentations has been truncated, see
|
|
142
|
+
# {SurgeAPI::Models::UserCreateTokenParams} for more details.
|
|
143
|
+
#
|
|
141
144
|
# Provides a mechanism for having Surge create a signed token for embeds instead
|
|
142
145
|
# of signing with your own signing key.
|
|
143
146
|
#
|
|
144
|
-
# @overload create_token(user_id, duration_seconds: nil, request_options: {})
|
|
147
|
+
# @overload create_token(user_id, duration_seconds: nil, read_only: nil, request_options: {})
|
|
145
148
|
#
|
|
146
149
|
# @param user_id [String] The user for which the token represents authentication.
|
|
147
150
|
#
|
|
148
151
|
# @param duration_seconds [Integer] For how many seconds the token should be accepted. Defaults to 15 minutes.
|
|
149
152
|
#
|
|
153
|
+
# @param read_only [Boolean] Restrict the token to viewing embedded conversations and unread counts. Sending
|
|
154
|
+
#
|
|
150
155
|
# @param request_options [SurgeAPI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
151
156
|
#
|
|
152
157
|
# @return [SurgeAPI::Models::UserTokenResponse]
|
|
@@ -9,7 +9,7 @@ module SurgeAPI
|
|
|
9
9
|
#
|
|
10
10
|
# @param key [String, nil] The webhook signing key
|
|
11
11
|
#
|
|
12
|
-
# @return [SurgeAPI::Models::CallEndedWebhookEvent, SurgeAPI::Models::CampaignApprovedWebhookEvent, SurgeAPI::Models::ContactOptedInWebhookEvent, SurgeAPI::Models::ContactOptedOutWebhookEvent, SurgeAPI::Models::ConversationCreatedWebhookEvent, SurgeAPI::Models::LinkFollowedWebhookEvent, SurgeAPI::Models::MessageDeliveredWebhookEvent, SurgeAPI::Models::MessageFailedWebhookEvent, SurgeAPI::Models::MessageReceivedWebhookEvent, SurgeAPI::Models::MessageSentWebhookEvent, SurgeAPI::Models::PhoneNumberAttachedToCampaignWebhookEvent, SurgeAPI::Models::PhoneNumberImportedWebhookEvent, SurgeAPI::Models::RecordingCompletedWebhookEvent, SurgeAPI::Models::VoicemailReceivedWebhookEvent]
|
|
12
|
+
# @return [SurgeAPI::Models::CallEndedWebhookEvent, SurgeAPI::Models::CampaignApprovedWebhookEvent, SurgeAPI::Models::CampaignRejectedWebhookEvent, SurgeAPI::Models::CampaignSubmittedWebhookEvent, SurgeAPI::Models::CampaignWarningWebhookEvent, SurgeAPI::Models::ContactOptedInWebhookEvent, SurgeAPI::Models::ContactOptedOutWebhookEvent, SurgeAPI::Models::ConversationCreatedWebhookEvent, SurgeAPI::Models::LinkFollowedWebhookEvent, SurgeAPI::Models::MessageDeliveredWebhookEvent, SurgeAPI::Models::MessageFailedWebhookEvent, SurgeAPI::Models::MessageReceivedWebhookEvent, SurgeAPI::Models::MessageSentWebhookEvent, SurgeAPI::Models::PhoneNumberAttachedToCampaignWebhookEvent, SurgeAPI::Models::PhoneNumberImportedWebhookEvent, SurgeAPI::Models::RecordingCompletedWebhookEvent, SurgeAPI::Models::VoicemailReceivedWebhookEvent]
|
|
13
13
|
def unwrap(payload, headers:, key: @client.webhook_signing_secret)
|
|
14
14
|
if key.nil?
|
|
15
15
|
raise ArgumentError.new("Cannot verify a webhook without a key on either the client's webhook_signing_secret or passed in as an argument")
|
data/lib/surge_api/version.rb
CHANGED