rcs 2.0.13 → 2.0.15
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/.fern/metadata.json +2 -2
- data/.fernignore +2 -1
- data/lib/pinnacle/audiences/client.rb +34 -0
- data/lib/pinnacle/audiences/types/list_audiences_params.rb +13 -0
- data/lib/pinnacle/brands/client.rb +34 -0
- data/lib/pinnacle/brands/types/list_brands_params.rb +15 -0
- data/lib/pinnacle/brands/types/list_brands_request_status.rb +18 -0
- data/lib/pinnacle/campaigns/dlc/client.rb +35 -0
- data/lib/pinnacle/campaigns/dlc/types/list_dlc_campaigns_params.rb +17 -0
- data/lib/pinnacle/campaigns/dlc/types/list_dlc_campaigns_request_status.rb +18 -0
- data/lib/pinnacle/campaigns/rcs/client.rb +35 -0
- data/lib/pinnacle/campaigns/rcs/types/list_rcs_campaigns_params.rb +17 -0
- data/lib/pinnacle/campaigns/rcs/types/list_rcs_campaigns_request_status.rb +18 -0
- data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +3 -6
- data/lib/pinnacle/campaigns/toll_free/client.rb +35 -0
- data/lib/pinnacle/campaigns/toll_free/types/list_toll_free_campaigns_params.rb +17 -0
- data/lib/pinnacle/campaigns/toll_free/types/list_toll_free_campaigns_request_status.rb +18 -0
- data/lib/pinnacle/client.rb +1 -1
- data/lib/pinnacle/contacts/client.rb +34 -0
- data/lib/pinnacle/contacts/types/list_contacts_params.rb +16 -0
- data/lib/pinnacle/internal/types/boolean.rb +1 -1
- data/lib/pinnacle/internal/types/utils.rb +2 -2
- data/lib/pinnacle/messages/blasts/client.rb +50 -0
- data/lib/pinnacle/messages/blasts/types/list_blasts_params.rb +17 -0
- data/lib/pinnacle/messages/client.rb +44 -0
- data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +2 -0
- data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +0 -1
- data/lib/pinnacle/messages/schedules/client.rb +51 -0
- data/lib/pinnacle/messages/schedules/types/list_scheduled_messages_params.rb +17 -0
- data/lib/pinnacle/messages/schedules/types/list_scheduled_messages_request_schedule_type.rb +16 -0
- data/lib/pinnacle/messages/schedules/types/list_scheduled_messages_request_status.rb +17 -0
- data/lib/pinnacle/messages/types/list_messages_params.rb +21 -0
- data/lib/pinnacle/messages/types/list_messages_request_direction.rb +14 -0
- data/lib/pinnacle/messages/types/list_messages_request_method.rb +15 -0
- data/lib/pinnacle/messages/types/list_messages_request_status.rb +21 -0
- data/lib/pinnacle/messages/types/list_messages_request_type.rb +15 -0
- data/lib/pinnacle/phone_numbers/client.rb +32 -3
- data/lib/pinnacle/phone_numbers/types/list_phone_numbers_params.rb +12 -0
- data/lib/pinnacle/rcs/agents/client.rb +50 -0
- data/lib/pinnacle/rcs/agents/types/list_agents_params.rb +16 -0
- data/lib/pinnacle/rcs/agents/types/list_agents_request_agent_type.rb +16 -0
- data/lib/pinnacle/rcs/client.rb +34 -44
- data/lib/pinnacle/rcs/test/client.rb +275 -0
- data/lib/pinnacle/rcs/test/types/create_test_agent_request.rb +24 -0
- data/lib/pinnacle/rcs/test/types/test_agent_whitelist_request.rb +14 -0
- data/lib/pinnacle/rcs/test/types/test_get_whitelist_status_request.rb +14 -0
- data/lib/pinnacle/rcs/test/types/update_test_agent_request.rb +25 -0
- data/lib/pinnacle/rcs/types/rcs_capabilities_query.rb +1 -0
- data/lib/pinnacle/rcs/types/rcs_link_request.rb +0 -1
- data/lib/pinnacle/rcs/whitelisted_numbers/client.rb +51 -0
- data/lib/pinnacle/rcs/whitelisted_numbers/types/list_test_numbers_params.rb +17 -0
- data/lib/pinnacle/rcs/whitelisted_numbers/types/list_test_numbers_request_status.rb +17 -0
- data/lib/pinnacle/tools/url/client.rb +34 -0
- data/lib/pinnacle/tools/url/types/list_links_params.rb +15 -0
- data/lib/pinnacle/types/agent_email_entry.rb +11 -0
- data/lib/pinnacle/types/agent_phone_entry.rb +11 -0
- data/lib/pinnacle/types/agent_summary.rb +15 -0
- data/lib/pinnacle/types/agent_summary_agent_type.rb +12 -0
- data/lib/pinnacle/types/agent_summary_carrier_launches.rb +13 -0
- data/lib/pinnacle/types/agent_summary_config.rb +21 -0
- data/lib/pinnacle/types/agent_summary_config_agent_use_case.rb +14 -0
- data/lib/pinnacle/types/agent_summary_config_emails_item.rb +10 -0
- data/lib/pinnacle/types/agent_summary_config_phones_item.rb +10 -0
- data/lib/pinnacle/types/agent_summary_config_websites_item.rb +10 -0
- data/lib/pinnacle/types/agent_use_case.rb +14 -0
- data/lib/pinnacle/types/agent_website_entry.rb +11 -0
- data/lib/pinnacle/types/attach_webhook_response_webhook.rb +1 -2
- data/lib/pinnacle/types/attach_webhook_result.rb +12 -0
- data/lib/pinnacle/types/audience_summary.rb +13 -0
- data/lib/pinnacle/types/blast_summary.rb +16 -0
- data/lib/pinnacle/types/blast_summary_type.rb +13 -0
- data/lib/pinnacle/types/carrier_launch_status.rb +13 -0
- data/lib/pinnacle/types/carrier_launches.rb +13 -0
- data/lib/pinnacle/types/detach_webhook_result.rb +11 -0
- data/lib/pinnacle/types/dlc_campaign_summary.rb +15 -0
- data/lib/pinnacle/types/dlc_campaign_summary_status.rb +14 -0
- data/lib/pinnacle/types/extended_rcs_campaign.rb +3 -6
- data/lib/pinnacle/types/failed_sender.rb +10 -0
- data/lib/pinnacle/types/fallback_message.rb +5 -3
- data/lib/pinnacle/types/link_summary.rb +12 -0
- data/lib/pinnacle/types/list_agents_response.rb +11 -0
- data/lib/pinnacle/types/list_audiences_response.rb +11 -0
- data/lib/pinnacle/types/list_blasts_response.rb +11 -0
- data/lib/pinnacle/types/list_brands_response.rb +11 -0
- data/lib/pinnacle/types/list_contacts_response.rb +11 -0
- data/lib/pinnacle/types/list_dlc_campaigns_response.rb +11 -0
- data/lib/pinnacle/types/list_links_response.rb +11 -0
- data/lib/pinnacle/types/list_messages_response.rb +11 -0
- data/lib/pinnacle/types/list_phone_numbers_response.rb +11 -0
- data/lib/pinnacle/types/list_rcs_campaigns_response.rb +11 -0
- data/lib/pinnacle/types/list_scheduled_messages_response.rb +11 -0
- data/lib/pinnacle/types/list_test_numbers_response.rb +11 -0
- data/lib/pinnacle/types/list_toll_free_campaigns_response.rb +11 -0
- data/lib/pinnacle/types/list_webhooks_response.rb +11 -0
- data/lib/pinnacle/types/message.rb +0 -1
- data/lib/pinnacle/types/message_event.rb +2 -1
- data/lib/pinnacle/types/message_event_fallback_message.rb +6 -6
- data/lib/pinnacle/types/message_list.rb +1 -1
- data/lib/pinnacle/types/message_summary.rb +25 -0
- data/lib/pinnacle/types/{message_with_reaction_direction.rb → message_summary_direction.rb} +1 -1
- data/lib/pinnacle/types/message_summary_method.rb +13 -0
- data/lib/pinnacle/types/message_summary_status.rb +19 -0
- data/lib/pinnacle/types/message_summary_type.rb +13 -0
- data/lib/pinnacle/types/message_with_reactions.rb +11 -0
- data/lib/pinnacle/types/message_with_reactions_direction.rb +12 -0
- data/lib/pinnacle/types/owned_phone_number.rb +14 -0
- data/lib/pinnacle/types/rcs_agent_details.rb +21 -0
- data/lib/pinnacle/types/rcs_agent_details_agent_use_case.rb +14 -0
- data/lib/pinnacle/types/rcs_agent_details_emails_item.rb +10 -0
- data/lib/pinnacle/types/rcs_agent_details_phones_item.rb +10 -0
- data/lib/pinnacle/types/rcs_agent_details_websites_item.rb +10 -0
- data/lib/pinnacle/types/rcs_agent_response.rb +14 -0
- data/lib/pinnacle/types/rcs_campaign.rb +3 -6
- data/lib/pinnacle/types/rcs_campaign_summary.rb +15 -0
- data/lib/pinnacle/types/rcs_campaign_summary_status.rb +14 -0
- data/lib/pinnacle/types/rcs_whitelist_status.rb +13 -0
- data/lib/pinnacle/types/scheduled_message_summary.rb +17 -0
- data/lib/pinnacle/types/scheduled_message_summary_status.rb +13 -0
- data/lib/pinnacle/types/send_rich_message_options.rb +0 -1
- data/lib/pinnacle/types/sent_rich_message_fallback_mms.rb +13 -0
- data/lib/pinnacle/types/sent_rich_message_fallback_sms.rb +13 -0
- data/lib/pinnacle/types/test_agent_response.rb +13 -0
- data/lib/pinnacle/types/test_agent_whitelist_response.rb +10 -0
- data/lib/pinnacle/types/toll_free_campaign_summary.rb +15 -0
- data/lib/pinnacle/types/toll_free_campaign_summary_status.rb +14 -0
- data/lib/pinnacle/types/webhook_event_enum.rb +1 -0
- data/lib/pinnacle/types/webhook_summary.rb +14 -0
- data/lib/pinnacle/types/webhook_summary_status.rb +13 -0
- data/lib/pinnacle/types/whitelisted_number_summary.rb +12 -0
- data/lib/pinnacle/types/whitelisted_number_summary_status.rb +13 -0
- data/lib/pinnacle/version.rb +1 -1
- data/lib/pinnacle/webhooks/client.rb +113 -0
- data/lib/pinnacle/webhooks/types/attach_webhook_params.rb +15 -0
- data/lib/pinnacle/webhooks/types/detach_webhook_params.rb +12 -0
- data/lib/pinnacle/webhooks/types/list_webhooks_params.rb +14 -0
- data/lib/pinnacle/webhooks/types/list_webhooks_request_status.rb +15 -0
- data/lib/pinnacle.rb +102 -18
- data/reference.md +2327 -454
- metadata +106 -17
- data/lib/pinnacle/campaigns/rcs/types/rcs_use_case.rb +0 -15
- data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -14
- data/lib/pinnacle/phone_numbers/webhook/client.rb +0 -90
- data/lib/pinnacle/rcs/types/rcs_whitelist_request.rb +0 -12
- data/lib/pinnacle/types/attach_webhook_by_id_params.rb +0 -11
- data/lib/pinnacle/types/attach_webhook_params.rb +0 -15
- data/lib/pinnacle/types/configured_webhook.rb +0 -13
- data/lib/pinnacle/types/create_and_attach_webhook_by_url_params.rb +0 -12
- data/lib/pinnacle/types/detached_webhook_info.rb +0 -11
- data/lib/pinnacle/types/message_with_reaction.rb +0 -11
- data/lib/pinnacle/types/rcs_campaign_schema_extra_use_case.rb +0 -11
- data/lib/pinnacle/types/rcs_campaign_schema_use_case.rb +0 -11
- data/lib/pinnacle/types/rcs_campaign_use_case_enum.rb +0 -43
- data/lib/pinnacle/types/rcs_whitelist_response.rb +0 -10
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3edce2029ee0605b95569ddf5681f98c17041bb376e2d480487cac489f7a3373
|
|
4
|
+
data.tar.gz: c8ab3851d9d26d7502df2c3183c35525d7aed0b18831fbbf100b158f001cb3a8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2bde1ac9823654bb075fafb0fee86d1b7874fc6f9b161021efbf11ae1cdbc465e1db7791c0e87fd15d9c01693f2994946156485f9ba40e318a1968174852ed6c
|
|
7
|
+
data.tar.gz: eca831fdf06ad136fa518a08bd5fe00782d2e86c512a433af37dd7a741148d1bc3762c22a873cf9061a68eeb7c3044e7ca865fa717985f615e4b5739a65a46c7
|
data/.fern/metadata.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"cliVersion": "3.51.3",
|
|
3
3
|
"generatorName": "fernapi/fern-ruby-sdk",
|
|
4
|
-
"generatorVersion": "1.0.0-
|
|
4
|
+
"generatorVersion": "1.0.0-rc85",
|
|
5
5
|
"generatorConfig": {
|
|
6
6
|
"clientModuleName": "PinnacleBaseClient",
|
|
7
7
|
"flattenModuleStructure": true,
|
|
8
8
|
"useProvidedDefaults": true
|
|
9
9
|
},
|
|
10
|
-
"sdkVersion": "2.0.
|
|
10
|
+
"sdkVersion": "2.0.15"
|
|
11
11
|
}
|
data/.fernignore
CHANGED
|
@@ -168,6 +168,40 @@ module Pinnacle
|
|
|
168
168
|
end
|
|
169
169
|
end
|
|
170
170
|
|
|
171
|
+
# List all audiences with optional filtering and pagination. Results are sorted by creation date, newest first.
|
|
172
|
+
#
|
|
173
|
+
# @param request_options [Hash]
|
|
174
|
+
# @param params [Pinnacle::Audiences::Types::ListAudiencesParams]
|
|
175
|
+
# @option request_options [String] :base_url
|
|
176
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
177
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
178
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
179
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
180
|
+
#
|
|
181
|
+
# @return [Pinnacle::Types::ListAudiencesResponse]
|
|
182
|
+
def list(request_options: {}, **params)
|
|
183
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
184
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
185
|
+
base_url: request_options[:base_url],
|
|
186
|
+
method: "POST",
|
|
187
|
+
path: "audiences/list",
|
|
188
|
+
body: Pinnacle::Audiences::Types::ListAudiencesParams.new(params).to_h,
|
|
189
|
+
request_options: request_options
|
|
190
|
+
)
|
|
191
|
+
begin
|
|
192
|
+
response = @client.send(request)
|
|
193
|
+
rescue Net::HTTPRequestTimeout
|
|
194
|
+
raise Pinnacle::Errors::TimeoutError
|
|
195
|
+
end
|
|
196
|
+
code = response.code.to_i
|
|
197
|
+
if code.between?(200, 299)
|
|
198
|
+
Pinnacle::Types::ListAudiencesResponse.load(response.body)
|
|
199
|
+
else
|
|
200
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
201
|
+
raise error_class.new(response.body, code: code)
|
|
202
|
+
end
|
|
203
|
+
end
|
|
204
|
+
|
|
171
205
|
# @return [Pinnacle::Contacts::Client]
|
|
172
206
|
def contacts
|
|
173
207
|
@contacts ||= Pinnacle::Audiences::Contacts::Client.new(client: @client)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Audiences
|
|
5
|
+
module Types
|
|
6
|
+
class ListAudiencesParams < Internal::Types::Model
|
|
7
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
8
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
9
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -233,6 +233,40 @@ module Pinnacle
|
|
|
233
233
|
raise error_class.new(response.body, code: code)
|
|
234
234
|
end
|
|
235
235
|
end
|
|
236
|
+
|
|
237
|
+
# List all brands with optional filtering and pagination. Results are sorted by creation date, newest first.
|
|
238
|
+
#
|
|
239
|
+
# @param request_options [Hash]
|
|
240
|
+
# @param params [Pinnacle::Brands::Types::ListBrandsParams]
|
|
241
|
+
# @option request_options [String] :base_url
|
|
242
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
243
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
244
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
245
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
246
|
+
#
|
|
247
|
+
# @return [Pinnacle::Types::ListBrandsResponse]
|
|
248
|
+
def list(request_options: {}, **params)
|
|
249
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
250
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
251
|
+
base_url: request_options[:base_url],
|
|
252
|
+
method: "POST",
|
|
253
|
+
path: "brands/list",
|
|
254
|
+
body: Pinnacle::Brands::Types::ListBrandsParams.new(params).to_h,
|
|
255
|
+
request_options: request_options
|
|
256
|
+
)
|
|
257
|
+
begin
|
|
258
|
+
response = @client.send(request)
|
|
259
|
+
rescue Net::HTTPRequestTimeout
|
|
260
|
+
raise Pinnacle::Errors::TimeoutError
|
|
261
|
+
end
|
|
262
|
+
code = response.code.to_i
|
|
263
|
+
if code.between?(200, 299)
|
|
264
|
+
Pinnacle::Types::ListBrandsResponse.load(response.body)
|
|
265
|
+
else
|
|
266
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
267
|
+
raise error_class.new(response.body, code: code)
|
|
268
|
+
end
|
|
269
|
+
end
|
|
236
270
|
end
|
|
237
271
|
end
|
|
238
272
|
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Brands
|
|
5
|
+
module Types
|
|
6
|
+
class ListBrandsParams < Internal::Types::Model
|
|
7
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
8
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
9
|
+
field :status, -> { Pinnacle::Brands::Types::ListBrandsRequestStatus }, optional: true, nullable: false
|
|
10
|
+
field :is_archived, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isArchived"
|
|
11
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Brands
|
|
5
|
+
module Types
|
|
6
|
+
module ListBrandsRequestStatus
|
|
7
|
+
extend Pinnacle::Internal::Types::Enum
|
|
8
|
+
|
|
9
|
+
PENDING = "PENDING"
|
|
10
|
+
UNVERIFIED = "UNVERIFIED"
|
|
11
|
+
VERIFIED = "VERIFIED"
|
|
12
|
+
VETTED = "VETTED"
|
|
13
|
+
FAILED = "FAILED"
|
|
14
|
+
INCOMPLETE = "INCOMPLETE"
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -192,6 +192,41 @@ module Pinnacle
|
|
|
192
192
|
raise error_class.new(response.body, code: code)
|
|
193
193
|
end
|
|
194
194
|
end
|
|
195
|
+
|
|
196
|
+
# List all 10DLC campaigns with optional filtering and pagination. Results are sorted by creation date, newest
|
|
197
|
+
# first.
|
|
198
|
+
#
|
|
199
|
+
# @param request_options [Hash]
|
|
200
|
+
# @param params [Pinnacle::Campaigns::Dlc::Types::ListDlcCampaignsParams]
|
|
201
|
+
# @option request_options [String] :base_url
|
|
202
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
203
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
204
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
205
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
206
|
+
#
|
|
207
|
+
# @return [Pinnacle::Types::ListDlcCampaignsResponse]
|
|
208
|
+
def list(request_options: {}, **params)
|
|
209
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
210
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
211
|
+
base_url: request_options[:base_url],
|
|
212
|
+
method: "POST",
|
|
213
|
+
path: "campaigns/dlc/list",
|
|
214
|
+
body: Pinnacle::Campaigns::Dlc::Types::ListDlcCampaignsParams.new(params).to_h,
|
|
215
|
+
request_options: request_options
|
|
216
|
+
)
|
|
217
|
+
begin
|
|
218
|
+
response = @client.send(request)
|
|
219
|
+
rescue Net::HTTPRequestTimeout
|
|
220
|
+
raise Pinnacle::Errors::TimeoutError
|
|
221
|
+
end
|
|
222
|
+
code = response.code.to_i
|
|
223
|
+
if code.between?(200, 299)
|
|
224
|
+
Pinnacle::Types::ListDlcCampaignsResponse.load(response.body)
|
|
225
|
+
else
|
|
226
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
227
|
+
raise error_class.new(response.body, code: code)
|
|
228
|
+
end
|
|
229
|
+
end
|
|
195
230
|
end
|
|
196
231
|
end
|
|
197
232
|
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module Dlc
|
|
6
|
+
module Types
|
|
7
|
+
class ListDlcCampaignsParams < Internal::Types::Model
|
|
8
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
9
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
10
|
+
field :status, -> { Pinnacle::Campaigns::Dlc::Types::ListDlcCampaignsRequestStatus }, optional: true, nullable: false
|
|
11
|
+
field :brand_id, -> { String }, optional: true, nullable: false, api_name: "brandId"
|
|
12
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module Dlc
|
|
6
|
+
module Types
|
|
7
|
+
module ListDlcCampaignsRequestStatus
|
|
8
|
+
extend Pinnacle::Internal::Types::Enum
|
|
9
|
+
|
|
10
|
+
INCOMPLETE = "INCOMPLETE"
|
|
11
|
+
IN_REVIEW = "IN REVIEW"
|
|
12
|
+
VERIFIED = "VERIFIED"
|
|
13
|
+
FAILED = "FAILED"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -190,6 +190,41 @@ module Pinnacle
|
|
|
190
190
|
raise error_class.new(response.body, code: code)
|
|
191
191
|
end
|
|
192
192
|
end
|
|
193
|
+
|
|
194
|
+
# List all RCS campaigns with optional filtering and pagination. Results are sorted by creation date, newest
|
|
195
|
+
# first.
|
|
196
|
+
#
|
|
197
|
+
# @param request_options [Hash]
|
|
198
|
+
# @param params [Pinnacle::Campaigns::Rcs::Types::ListRcsCampaignsParams]
|
|
199
|
+
# @option request_options [String] :base_url
|
|
200
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
201
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
202
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
203
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
204
|
+
#
|
|
205
|
+
# @return [Pinnacle::Types::ListRcsCampaignsResponse]
|
|
206
|
+
def list(request_options: {}, **params)
|
|
207
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
208
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
209
|
+
base_url: request_options[:base_url],
|
|
210
|
+
method: "POST",
|
|
211
|
+
path: "campaigns/rcs/list",
|
|
212
|
+
body: Pinnacle::Campaigns::Rcs::Types::ListRcsCampaignsParams.new(params).to_h,
|
|
213
|
+
request_options: request_options
|
|
214
|
+
)
|
|
215
|
+
begin
|
|
216
|
+
response = @client.send(request)
|
|
217
|
+
rescue Net::HTTPRequestTimeout
|
|
218
|
+
raise Pinnacle::Errors::TimeoutError
|
|
219
|
+
end
|
|
220
|
+
code = response.code.to_i
|
|
221
|
+
if code.between?(200, 299)
|
|
222
|
+
Pinnacle::Types::ListRcsCampaignsResponse.load(response.body)
|
|
223
|
+
else
|
|
224
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
225
|
+
raise error_class.new(response.body, code: code)
|
|
226
|
+
end
|
|
227
|
+
end
|
|
193
228
|
end
|
|
194
229
|
end
|
|
195
230
|
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module Rcs
|
|
6
|
+
module Types
|
|
7
|
+
class ListRcsCampaignsParams < Internal::Types::Model
|
|
8
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
9
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
10
|
+
field :status, -> { Pinnacle::Campaigns::Rcs::Types::ListRcsCampaignsRequestStatus }, optional: true, nullable: false
|
|
11
|
+
field :brand_id, -> { String }, optional: true, nullable: false, api_name: "brandId"
|
|
12
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module Rcs
|
|
6
|
+
module Types
|
|
7
|
+
module ListRcsCampaignsRequestStatus
|
|
8
|
+
extend Pinnacle::Internal::Types::Enum
|
|
9
|
+
|
|
10
|
+
INCOMPLETE = "INCOMPLETE"
|
|
11
|
+
IN_REVIEW = "IN REVIEW"
|
|
12
|
+
VERIFIED = "VERIFIED"
|
|
13
|
+
FAILED = "FAILED"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -10,15 +10,12 @@ module Pinnacle
|
|
|
10
10
|
field :campaign_id, -> { String }, optional: true, nullable: false, api_name: "campaignId"
|
|
11
11
|
field :expected_agent_responses, -> { Internal::Types::Array[String] }, optional: true, nullable: false, api_name: "expectedAgentResponses"
|
|
12
12
|
field :links, -> { Pinnacle::Campaigns::Rcs::Types::RcsLinks }, optional: true, nullable: false
|
|
13
|
-
field :
|
|
14
|
-
field :opt_in_terms_and_conditions, -> { String }, optional: true, nullable: false, api_name: "optInTermsAndConditions"
|
|
13
|
+
field :use_case_description, -> { String }, optional: true, nullable: false, api_name: "useCaseDescription"
|
|
15
14
|
field :messaging_type, -> { Pinnacle::Types::RcsMessagingTypeEnum }, optional: true, nullable: false, api_name: "messagingType"
|
|
16
|
-
field :
|
|
15
|
+
field :cta_media, -> { String }, optional: true, nullable: false, api_name: "ctaMedia"
|
|
16
|
+
field :opt_in_method, -> { String }, optional: true, nullable: false, api_name: "optInMethod"
|
|
17
17
|
field :keywords, -> { Pinnacle::Campaigns::Rcs::Types::RcsCampaignKeywords }, optional: true, nullable: false
|
|
18
18
|
field :traffic, -> { Pinnacle::Campaigns::Rcs::Types::RcsCampaignTraffic }, optional: true, nullable: false
|
|
19
|
-
field :agent_triggers, -> { String }, optional: true, nullable: false, api_name: "agentTriggers"
|
|
20
|
-
field :interaction_description, -> { String }, optional: true, nullable: false, api_name: "interactionDescription"
|
|
21
|
-
field :is_conversational, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isConversational"
|
|
22
19
|
field :cta_language, -> { String }, optional: true, nullable: false, api_name: "ctaLanguage"
|
|
23
20
|
field :demo_trigger, -> { String }, optional: true, nullable: false, api_name: "demoTrigger"
|
|
24
21
|
end
|
|
@@ -192,6 +192,41 @@ module Pinnacle
|
|
|
192
192
|
raise error_class.new(response.body, code: code)
|
|
193
193
|
end
|
|
194
194
|
end
|
|
195
|
+
|
|
196
|
+
# List all toll-free campaigns with optional filtering and pagination. Results are sorted by creation date,
|
|
197
|
+
# newest first.
|
|
198
|
+
#
|
|
199
|
+
# @param request_options [Hash]
|
|
200
|
+
# @param params [Pinnacle::Campaigns::TollFree::Types::ListTollFreeCampaignsParams]
|
|
201
|
+
# @option request_options [String] :base_url
|
|
202
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
203
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
204
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
205
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
206
|
+
#
|
|
207
|
+
# @return [Pinnacle::Types::ListTollFreeCampaignsResponse]
|
|
208
|
+
def list(request_options: {}, **params)
|
|
209
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
210
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
211
|
+
base_url: request_options[:base_url],
|
|
212
|
+
method: "POST",
|
|
213
|
+
path: "campaigns/toll-free/list",
|
|
214
|
+
body: Pinnacle::Campaigns::TollFree::Types::ListTollFreeCampaignsParams.new(params).to_h,
|
|
215
|
+
request_options: request_options
|
|
216
|
+
)
|
|
217
|
+
begin
|
|
218
|
+
response = @client.send(request)
|
|
219
|
+
rescue Net::HTTPRequestTimeout
|
|
220
|
+
raise Pinnacle::Errors::TimeoutError
|
|
221
|
+
end
|
|
222
|
+
code = response.code.to_i
|
|
223
|
+
if code.between?(200, 299)
|
|
224
|
+
Pinnacle::Types::ListTollFreeCampaignsResponse.load(response.body)
|
|
225
|
+
else
|
|
226
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
227
|
+
raise error_class.new(response.body, code: code)
|
|
228
|
+
end
|
|
229
|
+
end
|
|
195
230
|
end
|
|
196
231
|
end
|
|
197
232
|
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module TollFree
|
|
6
|
+
module Types
|
|
7
|
+
class ListTollFreeCampaignsParams < Internal::Types::Model
|
|
8
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
9
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
10
|
+
field :status, -> { Pinnacle::Campaigns::TollFree::Types::ListTollFreeCampaignsRequestStatus }, optional: true, nullable: false
|
|
11
|
+
field :brand_id, -> { String }, optional: true, nullable: false, api_name: "brandId"
|
|
12
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Campaigns
|
|
5
|
+
module TollFree
|
|
6
|
+
module Types
|
|
7
|
+
module ListTollFreeCampaignsRequestStatus
|
|
8
|
+
extend Pinnacle::Internal::Types::Enum
|
|
9
|
+
|
|
10
|
+
INCOMPLETE = "INCOMPLETE"
|
|
11
|
+
IN_REVIEW = "IN REVIEW"
|
|
12
|
+
VERIFIED = "VERIFIED"
|
|
13
|
+
FAILED = "FAILED"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
data/lib/pinnacle/client.rb
CHANGED
|
@@ -10,7 +10,7 @@ module Pinnacle
|
|
|
10
10
|
@raw_client = Pinnacle::Internal::Http::RawClient.new(
|
|
11
11
|
base_url: base_url || Pinnacle::Environment::DEFAULT,
|
|
12
12
|
headers: {
|
|
13
|
-
"User-Agent" => "rcs/2.0.
|
|
13
|
+
"User-Agent" => "rcs/2.0.15",
|
|
14
14
|
"X-Fern-Language" => "Ruby",
|
|
15
15
|
"PINNACLE-API-KEY" => api_key.to_s
|
|
16
16
|
}
|
|
@@ -119,6 +119,40 @@ module Pinnacle
|
|
|
119
119
|
raise error_class.new(response.body, code: code)
|
|
120
120
|
end
|
|
121
121
|
end
|
|
122
|
+
|
|
123
|
+
# List all contacts with optional filtering and pagination. Results are sorted by creation date, newest first.
|
|
124
|
+
#
|
|
125
|
+
# @param request_options [Hash]
|
|
126
|
+
# @param params [Pinnacle::Contacts::Types::ListContactsParams]
|
|
127
|
+
# @option request_options [String] :base_url
|
|
128
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
129
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
130
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
131
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
132
|
+
#
|
|
133
|
+
# @return [Pinnacle::Types::ListContactsResponse]
|
|
134
|
+
def list(request_options: {}, **params)
|
|
135
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
136
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
137
|
+
base_url: request_options[:base_url],
|
|
138
|
+
method: "POST",
|
|
139
|
+
path: "contacts/list",
|
|
140
|
+
body: Pinnacle::Contacts::Types::ListContactsParams.new(params).to_h,
|
|
141
|
+
request_options: request_options
|
|
142
|
+
)
|
|
143
|
+
begin
|
|
144
|
+
response = @client.send(request)
|
|
145
|
+
rescue Net::HTTPRequestTimeout
|
|
146
|
+
raise Pinnacle::Errors::TimeoutError
|
|
147
|
+
end
|
|
148
|
+
code = response.code.to_i
|
|
149
|
+
if code.between?(200, 299)
|
|
150
|
+
Pinnacle::Types::ListContactsResponse.load(response.body)
|
|
151
|
+
else
|
|
152
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
153
|
+
raise error_class.new(response.body, code: code)
|
|
154
|
+
end
|
|
155
|
+
end
|
|
122
156
|
end
|
|
123
157
|
end
|
|
124
158
|
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Contacts
|
|
5
|
+
module Types
|
|
6
|
+
class ListContactsParams < Internal::Types::Model
|
|
7
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
8
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
9
|
+
field :phone_number, -> { String }, optional: true, nullable: false, api_name: "phoneNumber"
|
|
10
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
11
|
+
field :tags, -> { Internal::Types::Array[String] }, optional: true, nullable: false
|
|
12
|
+
field :is_archived, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isArchived"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -81,10 +81,10 @@ module Pinnacle
|
|
|
81
81
|
}
|
|
82
82
|
return type.coerce(value, strict: strict)
|
|
83
83
|
else
|
|
84
|
-
value
|
|
84
|
+
return value
|
|
85
85
|
end
|
|
86
86
|
else
|
|
87
|
-
value
|
|
87
|
+
return value
|
|
88
88
|
end
|
|
89
89
|
|
|
90
90
|
raise Errors::TypeError, "cannot coerce value of type `#{value.class}` to `#{target}`" if strict
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Messages
|
|
5
|
+
module Blasts
|
|
6
|
+
class Client
|
|
7
|
+
# @param client [Pinnacle::Internal::Http::RawClient]
|
|
8
|
+
#
|
|
9
|
+
# @return [void]
|
|
10
|
+
def initialize(client:)
|
|
11
|
+
@client = client
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# List all blasts with optional filtering and pagination. Results are sorted by creation date, newest first.
|
|
15
|
+
#
|
|
16
|
+
# @param request_options [Hash]
|
|
17
|
+
# @param params [Pinnacle::Messages::Blasts::Types::ListBlastsParams]
|
|
18
|
+
# @option request_options [String] :base_url
|
|
19
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
20
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
21
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
22
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
23
|
+
#
|
|
24
|
+
# @return [Pinnacle::Types::ListBlastsResponse]
|
|
25
|
+
def list(request_options: {}, **params)
|
|
26
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
27
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
28
|
+
base_url: request_options[:base_url],
|
|
29
|
+
method: "POST",
|
|
30
|
+
path: "messages/blasts/list",
|
|
31
|
+
body: Pinnacle::Messages::Blasts::Types::ListBlastsParams.new(params).to_h,
|
|
32
|
+
request_options: request_options
|
|
33
|
+
)
|
|
34
|
+
begin
|
|
35
|
+
response = @client.send(request)
|
|
36
|
+
rescue Net::HTTPRequestTimeout
|
|
37
|
+
raise Pinnacle::Errors::TimeoutError
|
|
38
|
+
end
|
|
39
|
+
code = response.code.to_i
|
|
40
|
+
if code.between?(200, 299)
|
|
41
|
+
Pinnacle::Types::ListBlastsResponse.load(response.body)
|
|
42
|
+
else
|
|
43
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
44
|
+
raise error_class.new(response.body, code: code)
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pinnacle
|
|
4
|
+
module Messages
|
|
5
|
+
module Blasts
|
|
6
|
+
module Types
|
|
7
|
+
class ListBlastsParams < Internal::Types::Model
|
|
8
|
+
field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
|
|
9
|
+
field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
|
|
10
|
+
field :audience_id, -> { String }, optional: true, nullable: false, api_name: "audienceId"
|
|
11
|
+
field :sender, -> { String }, optional: true, nullable: false
|
|
12
|
+
field :content, -> { String }, optional: true, nullable: false
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -78,6 +78,40 @@ module Pinnacle
|
|
|
78
78
|
end
|
|
79
79
|
end
|
|
80
80
|
|
|
81
|
+
# List all messages with optional filtering and pagination. Results are sorted by creation date, newest first.
|
|
82
|
+
#
|
|
83
|
+
# @param request_options [Hash]
|
|
84
|
+
# @param params [Pinnacle::Messages::Types::ListMessagesParams]
|
|
85
|
+
# @option request_options [String] :base_url
|
|
86
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
87
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
88
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
89
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
90
|
+
#
|
|
91
|
+
# @return [Pinnacle::Types::ListMessagesResponse]
|
|
92
|
+
def list(request_options: {}, **params)
|
|
93
|
+
params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
|
|
94
|
+
request = Pinnacle::Internal::JSON::Request.new(
|
|
95
|
+
base_url: request_options[:base_url],
|
|
96
|
+
method: "POST",
|
|
97
|
+
path: "messages/list",
|
|
98
|
+
body: Pinnacle::Messages::Types::ListMessagesParams.new(params).to_h,
|
|
99
|
+
request_options: request_options
|
|
100
|
+
)
|
|
101
|
+
begin
|
|
102
|
+
response = @client.send(request)
|
|
103
|
+
rescue Net::HTTPRequestTimeout
|
|
104
|
+
raise Pinnacle::Errors::TimeoutError
|
|
105
|
+
end
|
|
106
|
+
code = response.code.to_i
|
|
107
|
+
if code.between?(200, 299)
|
|
108
|
+
Pinnacle::Types::ListMessagesResponse.load(response.body)
|
|
109
|
+
else
|
|
110
|
+
error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code)
|
|
111
|
+
raise error_class.new(response.body, code: code)
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
81
115
|
# @return [Pinnacle::Sms::Client]
|
|
82
116
|
def sms
|
|
83
117
|
@sms ||= Pinnacle::Messages::Sms::Client.new(client: @client)
|
|
@@ -102,6 +136,16 @@ module Pinnacle
|
|
|
102
136
|
def schedule
|
|
103
137
|
@schedule ||= Pinnacle::Messages::Schedule::Client.new(client: @client)
|
|
104
138
|
end
|
|
139
|
+
|
|
140
|
+
# @return [Pinnacle::Schedules::Client]
|
|
141
|
+
def schedules
|
|
142
|
+
@schedules ||= Pinnacle::Messages::Schedules::Client.new(client: @client)
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
# @return [Pinnacle::Blasts::Client]
|
|
146
|
+
def blasts
|
|
147
|
+
@blasts ||= Pinnacle::Messages::Blasts::Client.new(client: @client)
|
|
148
|
+
end
|
|
105
149
|
end
|
|
106
150
|
end
|
|
107
151
|
end
|