rcs 2.0.3 → 2.0.5.pre.rc.1

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 (817) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +12 -0
  3. data/.fernignore +6 -0
  4. data/.rubocop.yml +60 -0
  5. data/README.md +121 -0
  6. data/Rakefile +20 -0
  7. data/custom.gemspec.rb +13 -0
  8. data/lib/pinnacle/audiences/client.rb +183 -0
  9. data/lib/pinnacle/audiences/contacts/client.rb +97 -0
  10. data/lib/pinnacle/audiences/contacts/types/add_contacts_params.rb +14 -0
  11. data/lib/pinnacle/audiences/contacts/types/remove_contacts_params.rb +14 -0
  12. data/lib/pinnacle/audiences/types/audiences_delete_request.rb +11 -0
  13. data/lib/pinnacle/audiences/types/audiences_get_request.rb +13 -0
  14. data/lib/pinnacle/audiences/types/audiences_get_response.rb +14 -0
  15. data/lib/pinnacle/audiences/types/create_audience_params.rb +13 -0
  16. data/lib/pinnacle/audiences/types/update_audience_params.rb +13 -0
  17. data/lib/pinnacle/base_client.rb +75 -0
  18. data/lib/pinnacle/brands/client.rb +245 -0
  19. data/lib/pinnacle/brands/types/autofill_brand_options.rb +11 -0
  20. data/lib/pinnacle/brands/types/autofill_brand_params.rb +14 -0
  21. data/lib/pinnacle/brands/types/brands_get_request.rb +12 -0
  22. data/lib/pinnacle/brands/types/upsert_brand_params.rb +22 -0
  23. data/lib/pinnacle/brands/types/upsert_brand_schema_contact.rb +15 -0
  24. data/lib/pinnacle/brands/types/upsert_brand_schema_entity_type.rb +17 -0
  25. data/lib/pinnacle/brands/types/upsert_brand_schema_sector.rb +29 -0
  26. data/lib/pinnacle/brands/types/upsert_brand_schema_type.rb +17 -0
  27. data/lib/pinnacle/brands/types/vet_brand_params.rb +14 -0
  28. data/lib/pinnacle/campaigns/client.rb +29 -0
  29. data/lib/pinnacle/campaigns/dlc/client.rb +201 -0
  30. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_help_keywords.rb +15 -0
  31. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +16 -0
  32. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +15 -0
  33. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +15 -0
  34. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +15 -0
  35. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +19 -0
  36. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +15 -0
  37. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +23 -0
  38. data/lib/pinnacle/campaigns/rcs/client.rb +199 -0
  39. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +21 -0
  40. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +14 -0
  41. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +14 -0
  42. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +14 -0
  43. data/lib/pinnacle/campaigns/rcs/types/rcs_autofill_response.rb +13 -0
  44. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +14 -0
  45. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +15 -0
  46. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +14 -0
  47. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +14 -0
  48. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +14 -0
  49. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +15 -0
  50. data/lib/pinnacle/campaigns/rcs/types/rcs_use_case.rb +15 -0
  51. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +28 -0
  52. data/lib/pinnacle/campaigns/toll_free/client.rb +201 -0
  53. data/lib/pinnacle/campaigns/toll_free/types/toll_free_autofill_response.rb +13 -0
  54. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +14 -0
  55. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +15 -0
  56. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +15 -0
  57. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +16 -0
  58. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +15 -0
  59. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_options.rb +14 -0
  60. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +15 -0
  61. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +22 -0
  62. data/lib/pinnacle/client.rb +26 -0
  63. data/lib/pinnacle/contacts/client.rb +130 -0
  64. data/lib/pinnacle/contacts/types/contacts_get_request.rb +12 -0
  65. data/lib/pinnacle/contacts/types/create_contact_params.rb +15 -0
  66. data/lib/pinnacle/contacts/types/update_contact_params.rb +15 -0
  67. data/lib/pinnacle/conversations/client.rb +175 -0
  68. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +19 -0
  69. data/lib/pinnacle/conversations/types/conversations_list_messages_request_direction.rb +14 -0
  70. data/lib/pinnacle/conversations/types/conversations_list_messages_request_sort_order.rb +14 -0
  71. data/lib/pinnacle/conversations/types/conversations_list_messages_request_status.rb +19 -0
  72. data/lib/pinnacle/conversations/types/conversations_list_messages_request_type.rb +15 -0
  73. data/lib/pinnacle/conversations/types/list_conversations_params.rb +17 -0
  74. data/lib/pinnacle/conversations/types/update_conversation_params.rb +12 -0
  75. data/lib/pinnacle/errors/api_error.rb +8 -0
  76. data/lib/pinnacle/errors/client_error.rb +17 -0
  77. data/lib/pinnacle/errors/redirect_error.rb +8 -0
  78. data/lib/pinnacle/errors/response_error.rb +42 -0
  79. data/lib/pinnacle/errors/server_error.rb +11 -0
  80. data/lib/pinnacle/errors/timeout_error.rb +8 -0
  81. data/lib/pinnacle/internal/errors/constraint_error.rb +10 -0
  82. data/lib/pinnacle/internal/errors/type_error.rb +10 -0
  83. data/lib/pinnacle/internal/http/base_request.rb +31 -0
  84. data/lib/pinnacle/internal/http/raw_client.rb +116 -0
  85. data/lib/pinnacle/internal/iterators/cursor_item_iterator.rb +28 -0
  86. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +51 -0
  87. data/lib/pinnacle/internal/iterators/item_iterator.rb +59 -0
  88. data/lib/pinnacle/internal/iterators/offset_item_iterator.rb +30 -0
  89. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +83 -0
  90. data/lib/pinnacle/internal/json/request.rb +39 -0
  91. data/lib/pinnacle/internal/json/serializable.rb +25 -0
  92. data/lib/pinnacle/internal/multipart/multipart_encoder.rb +141 -0
  93. data/lib/pinnacle/internal/multipart/multipart_form_data.rb +78 -0
  94. data/lib/pinnacle/internal/multipart/multipart_form_data_part.rb +51 -0
  95. data/lib/pinnacle/internal/multipart/multipart_request.rb +38 -0
  96. data/lib/pinnacle/internal/types/array.rb +47 -0
  97. data/lib/pinnacle/internal/types/boolean.rb +34 -0
  98. data/lib/pinnacle/internal/types/enum.rb +56 -0
  99. data/lib/pinnacle/internal/types/hash.rb +36 -0
  100. data/lib/pinnacle/internal/types/model/field.rb +38 -0
  101. data/lib/pinnacle/internal/types/model.rb +208 -0
  102. data/lib/pinnacle/internal/types/type.rb +35 -0
  103. data/lib/pinnacle/internal/types/union.rb +161 -0
  104. data/lib/pinnacle/internal/types/unknown.rb +15 -0
  105. data/lib/pinnacle/internal/types/utils.rb +116 -0
  106. data/lib/pinnacle/messages/blast/client.rb +143 -0
  107. data/lib/pinnacle/messages/blast/types/blast_mms.rb +16 -0
  108. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +15 -0
  109. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +16 -0
  110. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +16 -0
  111. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +17 -0
  112. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +20 -0
  113. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +16 -0
  114. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +16 -0
  115. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +16 -0
  116. data/lib/pinnacle/messages/blast/types/blast_sms.rb +16 -0
  117. data/lib/pinnacle/messages/blast/types/blast_sms_options.rb +14 -0
  118. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +16 -0
  119. data/lib/pinnacle/messages/client.rb +110 -0
  120. data/lib/pinnacle/messages/mms/client.rb +87 -0
  121. data/lib/pinnacle/messages/mms/types/mms.rb +17 -0
  122. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +16 -0
  123. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +17 -0
  124. data/lib/pinnacle/messages/rcs/client.rb +140 -0
  125. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +16 -0
  126. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +15 -0
  127. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema_options.rb +14 -0
  128. data/lib/pinnacle/messages/schedule/client.rb +53 -0
  129. data/lib/pinnacle/messages/sms/client.rb +87 -0
  130. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +15 -0
  131. data/lib/pinnacle/messages/sms/types/sms.rb +16 -0
  132. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +16 -0
  133. data/lib/pinnacle/messages/types/react_message_options.rb +11 -0
  134. data/lib/pinnacle/messages/types/react_message_params.rb +13 -0
  135. data/lib/pinnacle/phone_numbers/campaign/client.rb +90 -0
  136. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +15 -0
  137. data/lib/pinnacle/phone_numbers/campaign/types/detach_campaign_params.rb +13 -0
  138. data/lib/pinnacle/phone_numbers/client.rb +133 -0
  139. data/lib/pinnacle/phone_numbers/types/buy_phone_number_params.rb +11 -0
  140. data/lib/pinnacle/phone_numbers/types/enhanced_contact_info.rb +12 -0
  141. data/lib/pinnacle/phone_numbers/types/phone_details_schema_level.rb +14 -0
  142. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +14 -0
  143. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +14 -0
  144. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +13 -0
  145. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +14 -0
  146. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +17 -0
  147. data/lib/pinnacle/phone_numbers/types/search_phone_number_options.rb +12 -0
  148. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +15 -0
  149. data/lib/pinnacle/phone_numbers/webhook/client.rb +90 -0
  150. data/lib/pinnacle/rcs/client.rb +159 -0
  151. data/lib/pinnacle/rcs/types/rcs_capabilities_query.rb +11 -0
  152. data/lib/pinnacle/rcs/types/rcs_link_request.rb +14 -0
  153. data/lib/pinnacle/rcs/types/rcs_whitelist_request.rb +12 -0
  154. data/lib/pinnacle/status/client.rb +19 -0
  155. data/lib/pinnacle/status/get/client.rb +188 -0
  156. data/lib/pinnacle/tools/client.rb +29 -0
  157. data/lib/pinnacle/tools/contact_card/client.rb +92 -0
  158. data/lib/pinnacle/tools/contact_card/types/get_v_card_schema_options.rb +13 -0
  159. data/lib/pinnacle/tools/contact_card/types/get_vcard_params.rb +14 -0
  160. data/lib/pinnacle/tools/contact_card/types/upsert_vcard_params.rb +29 -0
  161. data/lib/pinnacle/tools/file/client.rb +94 -0
  162. data/lib/pinnacle/tools/file/types/download_options.rb +14 -0
  163. data/lib/pinnacle/tools/file/types/refresh_file_params.rb +13 -0
  164. data/lib/pinnacle/tools/file/types/upload_file_options.rb +15 -0
  165. data/lib/pinnacle/tools/file/types/upload_file_params.rb +16 -0
  166. data/lib/pinnacle/tools/url/client.rb +128 -0
  167. data/lib/pinnacle/tools/url/types/create_url_params.rb +14 -0
  168. data/lib/pinnacle/tools/url/types/update_url_params.rb +15 -0
  169. data/lib/pinnacle/types/advanced_phone_information.rb +17 -0
  170. data/lib/pinnacle/types/advanced_phone_information_carrier.rb +13 -0
  171. data/lib/pinnacle/types/advanced_phone_information_contact.rb +19 -0
  172. data/lib/pinnacle/types/advanced_phone_information_location.rb +18 -0
  173. data/lib/pinnacle/types/advanced_phone_information_location_coordinates.rb +11 -0
  174. data/lib/pinnacle/types/advanced_phone_information_location_country.rb +12 -0
  175. data/lib/pinnacle/types/advanced_phone_information_type.rb +13 -0
  176. data/lib/pinnacle/types/advanced_phone_information_type_recommendation.rb +13 -0
  177. data/lib/pinnacle/types/agent.rb +11 -0
  178. data/lib/pinnacle/types/attach_webhook_by_id_params.rb +11 -0
  179. data/lib/pinnacle/types/attach_webhook_params.rb +15 -0
  180. data/lib/pinnacle/types/attach_webhook_response_webhook.rb +13 -0
  181. data/lib/pinnacle/types/attached_phone_number_result.rb +10 -0
  182. data/lib/pinnacle/types/audience_count_only.rb +12 -0
  183. data/lib/pinnacle/types/audience_with_pagination.rb +14 -0
  184. data/lib/pinnacle/types/autofill_campaign_params.rb +10 -0
  185. data/lib/pinnacle/types/autofill_dlc_campaign_response.rb +19 -0
  186. data/lib/pinnacle/types/autofill_dlc_response_keywords.rb +12 -0
  187. data/lib/pinnacle/types/autofill_dlc_response_keywords_help.rb +11 -0
  188. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_in.rb +11 -0
  189. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_out.rb +11 -0
  190. data/lib/pinnacle/types/autofill_dlc_response_links.rb +11 -0
  191. data/lib/pinnacle/types/autofill_dlc_response_options.rb +15 -0
  192. data/lib/pinnacle/types/autofill_dlc_response_use_case.rb +11 -0
  193. data/lib/pinnacle/types/bad_request_error_body.rb +12 -0
  194. data/lib/pinnacle/types/base_rich_message.rb +11 -0
  195. data/lib/pinnacle/types/basic_phone_information.rb +16 -0
  196. data/lib/pinnacle/types/basic_phone_information_contact.rb +10 -0
  197. data/lib/pinnacle/types/basic_phone_information_location.rb +11 -0
  198. data/lib/pinnacle/types/basic_phone_information_location_country.rb +12 -0
  199. data/lib/pinnacle/types/blast_details.rb +15 -0
  200. data/lib/pinnacle/types/brand_status.rb +12 -0
  201. data/lib/pinnacle/types/brand_status_enum.rb +16 -0
  202. data/lib/pinnacle/types/button_clicked.rb +12 -0
  203. data/lib/pinnacle/types/button_clicked_data.rb +11 -0
  204. data/lib/pinnacle/types/button_clicked_data_button.rb +14 -0
  205. data/lib/pinnacle/types/button_clicked_data_button_raw.rb +14 -0
  206. data/lib/pinnacle/types/button_clicked_data_button_type.rb +12 -0
  207. data/lib/pinnacle/types/buy_response_capabilities.rb +12 -0
  208. data/lib/pinnacle/types/campaign_enum.rb +13 -0
  209. data/lib/pinnacle/types/campaign_query.rb +11 -0
  210. data/lib/pinnacle/types/campaign_submission_result.rb +9 -0
  211. data/lib/pinnacle/types/campaign_validation_response_errors_item.rb +11 -0
  212. data/lib/pinnacle/types/campaign_validation_result.rb +10 -0
  213. data/lib/pinnacle/types/company_entity_type_enum.rb +15 -0
  214. data/lib/pinnacle/types/company_sector_enum.rb +27 -0
  215. data/lib/pinnacle/types/company_type_enum.rb +15 -0
  216. data/lib/pinnacle/types/configured_webhook.rb +13 -0
  217. data/lib/pinnacle/types/contact.rb +14 -0
  218. data/lib/pinnacle/types/contact_id.rb +9 -0
  219. data/lib/pinnacle/types/conversation.rb +17 -0
  220. data/lib/pinnacle/types/conversation_by_id_params.rb +10 -0
  221. data/lib/pinnacle/types/conversation_by_participants_params.rb +11 -0
  222. data/lib/pinnacle/types/conversation_contact.rb +11 -0
  223. data/lib/pinnacle/types/conversation_list.rb +12 -0
  224. data/lib/pinnacle/types/conversation_sender.rb +16 -0
  225. data/lib/pinnacle/types/create_and_attach_webhook_by_url_params.rb +12 -0
  226. data/lib/pinnacle/types/create_url_options.rb +9 -0
  227. data/lib/pinnacle/types/delete_audience_response.rb +9 -0
  228. data/lib/pinnacle/types/detached_phone_number_result.rb +10 -0
  229. data/lib/pinnacle/types/detached_webhook_info.rb +11 -0
  230. data/lib/pinnacle/types/detailed_phone_number_enum.rb +22 -0
  231. data/lib/pinnacle/types/dlc_assignment_status_enum.rb +15 -0
  232. data/lib/pinnacle/types/dlc_campaign_status.rb +13 -0
  233. data/lib/pinnacle/types/dlc_campaign_use_case_enum.rb +36 -0
  234. data/lib/pinnacle/types/dlc_campaign_with_extended_brand_and_status.rb +23 -0
  235. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords.rb +12 -0
  236. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_help.rb +11 -0
  237. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +11 -0
  238. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +11 -0
  239. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_links.rb +11 -0
  240. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +14 -0
  241. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +20 -0
  242. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_options.rb +15 -0
  243. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_use_case.rb +11 -0
  244. data/lib/pinnacle/types/enhanced_contact.rb +23 -0
  245. data/lib/pinnacle/types/enhanced_contact_item.rb +13 -0
  246. data/lib/pinnacle/types/error.rb +10 -0
  247. data/lib/pinnacle/types/extended_brand.rb +13 -0
  248. data/lib/pinnacle/types/extended_brand_with_vetting.rb +11 -0
  249. data/lib/pinnacle/types/extended_rcs_campaign.rb +26 -0
  250. data/lib/pinnacle/types/get_conversation_params.rb +13 -0
  251. data/lib/pinnacle/types/get_dlc_campaign_status_response_updates.rb +15 -0
  252. data/lib/pinnacle/types/get_toll_free_campaign_status_response_updates.rb +15 -0
  253. data/lib/pinnacle/types/link_click_event.rb +57 -0
  254. data/lib/pinnacle/types/location_share_action.rb +9 -0
  255. data/lib/pinnacle/types/location_share_action_data.rb +13 -0
  256. data/lib/pinnacle/types/message.rb +20 -0
  257. data/lib/pinnacle/types/message_content.rb +15 -0
  258. data/lib/pinnacle/types/message_event.rb +17 -0
  259. data/lib/pinnacle/types/message_event_content.rb +18 -0
  260. data/lib/pinnacle/types/message_event_conversation.rb +12 -0
  261. data/lib/pinnacle/types/message_event_direction.rb +12 -0
  262. data/lib/pinnacle/types/message_event_mms_content.rb +13 -0
  263. data/lib/pinnacle/types/message_event_rcs_button_data.rb +15 -0
  264. data/lib/pinnacle/types/message_event_rcs_cards_content.rb +16 -0
  265. data/lib/pinnacle/types/message_event_rcs_cards_content_cards_item.rb +13 -0
  266. data/lib/pinnacle/types/message_event_rcs_location_data.rb +15 -0
  267. data/lib/pinnacle/types/message_event_rcs_media_content.rb +15 -0
  268. data/lib/pinnacle/types/message_event_rcs_text_content.rb +13 -0
  269. data/lib/pinnacle/types/message_event_sms_content.rb +12 -0
  270. data/lib/pinnacle/types/message_list.rb +12 -0
  271. data/lib/pinnacle/types/message_method_enum.rb +13 -0
  272. data/lib/pinnacle/types/message_protocol_enum.rb +13 -0
  273. data/lib/pinnacle/types/message_schedule.rb +13 -0
  274. data/lib/pinnacle/types/message_status_enum.rb +18 -0
  275. data/lib/pinnacle/types/message_volume_enum.rb +21 -0
  276. data/lib/pinnacle/types/message_with_reaction.rb +11 -0
  277. data/lib/pinnacle/types/message_with_reaction_direction.rb +12 -0
  278. data/lib/pinnacle/types/messaging_profile_enum.rb +12 -0
  279. data/lib/pinnacle/types/mms_content.rb +11 -0
  280. data/lib/pinnacle/types/mms_validation_response_segments.rb +12 -0
  281. data/lib/pinnacle/types/mms_validation_response_segments_value_item.rb +11 -0
  282. data/lib/pinnacle/types/mms_validation_result.rb +11 -0
  283. data/lib/pinnacle/types/not_found_error_body.rb +9 -0
  284. data/lib/pinnacle/types/number_format.rb +13 -0
  285. data/lib/pinnacle/types/opt_in_method_enum.rb +14 -0
  286. data/lib/pinnacle/types/optional_brand_info.rb +19 -0
  287. data/lib/pinnacle/types/optional_contact.rb +12 -0
  288. data/lib/pinnacle/types/optional_contacts.rb +13 -0
  289. data/lib/pinnacle/types/pagination.rb +12 -0
  290. data/lib/pinnacle/types/phone.rb +14 -0
  291. data/lib/pinnacle/types/phone_capabilities.rb +12 -0
  292. data/lib/pinnacle/types/phone_enum.rb +12 -0
  293. data/lib/pinnacle/types/phone_feature_enum.rb +18 -0
  294. data/lib/pinnacle/types/phone_number_campaign_attach_failed_item.rb +10 -0
  295. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item.rb +10 -0
  296. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +12 -0
  297. data/lib/pinnacle/types/phone_number_campaign_detach_failed_item.rb +10 -0
  298. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item.rb +10 -0
  299. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +12 -0
  300. data/lib/pinnacle/types/phone_number_cost.rb +12 -0
  301. data/lib/pinnacle/types/phone_number_details.rb +15 -0
  302. data/lib/pinnacle/types/phone_number_enum.rb +18 -0
  303. data/lib/pinnacle/types/phone_number_region.rb +13 -0
  304. data/lib/pinnacle/types/phone_number_status.rb +12 -0
  305. data/lib/pinnacle/types/phone_number_status_enum.rb +13 -0
  306. data/lib/pinnacle/types/pinnacle_file_upload_metadata.rb +12 -0
  307. data/lib/pinnacle/types/pinnacle_url_config.rb +10 -0
  308. data/lib/pinnacle/types/profile_status_enum.rb +14 -0
  309. data/lib/pinnacle/types/purchased_number.rb +12 -0
  310. data/lib/pinnacle/types/rcs_button_call.rb +12 -0
  311. data/lib/pinnacle/types/rcs_button_open_url.rb +13 -0
  312. data/lib/pinnacle/types/rcs_button_open_url_webview_mode.rb +13 -0
  313. data/lib/pinnacle/types/rcs_button_request_user_location.rb +11 -0
  314. data/lib/pinnacle/types/rcs_button_schedule_event.rb +15 -0
  315. data/lib/pinnacle/types/rcs_button_send_location.rb +13 -0
  316. data/lib/pinnacle/types/rcs_button_send_location_lat_long.rb +11 -0
  317. data/lib/pinnacle/types/rcs_button_trigger.rb +12 -0
  318. data/lib/pinnacle/types/rcs_campaign.rb +23 -0
  319. data/lib/pinnacle/types/rcs_campaign_schema_agent.rb +17 -0
  320. data/lib/pinnacle/types/rcs_campaign_schema_agent_emails_item.rb +10 -0
  321. data/lib/pinnacle/types/rcs_campaign_schema_agent_phones_item.rb +10 -0
  322. data/lib/pinnacle/types/rcs_campaign_schema_agent_websites_item.rb +10 -0
  323. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent.rb +17 -0
  324. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_emails_item.rb +10 -0
  325. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_phones_item.rb +10 -0
  326. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_websites_item.rb +10 -0
  327. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords.rb +11 -0
  328. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_help.rb +10 -0
  329. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_in.rb +10 -0
  330. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_out.rb +10 -0
  331. data/lib/pinnacle/types/rcs_campaign_schema_extra_links.rb +11 -0
  332. data/lib/pinnacle/types/rcs_campaign_schema_extra_traffic.rb +10 -0
  333. data/lib/pinnacle/types/rcs_campaign_schema_extra_use_case.rb +11 -0
  334. data/lib/pinnacle/types/rcs_campaign_schema_keywords.rb +11 -0
  335. data/lib/pinnacle/types/rcs_campaign_schema_keywords_help.rb +10 -0
  336. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_in.rb +10 -0
  337. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_out.rb +10 -0
  338. data/lib/pinnacle/types/rcs_campaign_schema_links.rb +11 -0
  339. data/lib/pinnacle/types/rcs_campaign_schema_traffic.rb +10 -0
  340. data/lib/pinnacle/types/rcs_campaign_schema_use_case.rb +11 -0
  341. data/lib/pinnacle/types/rcs_campaign_status.rb +12 -0
  342. data/lib/pinnacle/types/rcs_campaign_use_case_enum.rb +24 -0
  343. data/lib/pinnacle/types/rcs_capabilities_result.rb +23 -0
  344. data/lib/pinnacle/types/rcs_capability.rb +11 -0
  345. data/lib/pinnacle/types/rcs_capability_actions.rb +16 -0
  346. data/lib/pinnacle/types/rcs_capability_cards.rb +10 -0
  347. data/lib/pinnacle/types/rcs_cards_content.rb +13 -0
  348. data/lib/pinnacle/types/rcs_cards_content_cards_item.rb +13 -0
  349. data/lib/pinnacle/types/rcs_content.rb +14 -0
  350. data/lib/pinnacle/types/rcs_link_result.rb +13 -0
  351. data/lib/pinnacle/types/rcs_media_content.rb +13 -0
  352. data/lib/pinnacle/types/rcs_media_details_content.rb +12 -0
  353. data/lib/pinnacle/types/rcs_messaging_type_enum.rb +14 -0
  354. data/lib/pinnacle/types/rcs_validate_content.rb +13 -0
  355. data/lib/pinnacle/types/rcs_validate_content_media.rb +13 -0
  356. data/lib/pinnacle/types/rcs_validation_result.rb +12 -0
  357. data/lib/pinnacle/types/rcs_whitelist_response.rb +10 -0
  358. data/lib/pinnacle/types/reaction_result.rb +10 -0
  359. data/lib/pinnacle/types/refreshed_file.rb +10 -0
  360. data/lib/pinnacle/types/rich_button.rb +18 -0
  361. data/lib/pinnacle/types/rich_card.rb +13 -0
  362. data/lib/pinnacle/types/rich_cards.rb +13 -0
  363. data/lib/pinnacle/types/rich_cards_message.rb +11 -0
  364. data/lib/pinnacle/types/rich_media_message.rb +10 -0
  365. data/lib/pinnacle/types/rich_message.rb +13 -0
  366. data/lib/pinnacle/types/rich_standalone_card_options.rb +17 -0
  367. data/lib/pinnacle/types/rich_text.rb +11 -0
  368. data/lib/pinnacle/types/rich_text_message.rb +7 -0
  369. data/lib/pinnacle/types/schedule_cancel_result.rb +10 -0
  370. data/lib/pinnacle/types/scheduled_blast_details.rb +11 -0
  371. data/lib/pinnacle/types/scheduled_blast_response_config.rb +13 -0
  372. data/lib/pinnacle/types/scheduled_message.rb +10 -0
  373. data/lib/pinnacle/types/scheduled_send_response_config.rb +13 -0
  374. data/lib/pinnacle/types/send_rcs_card_options_standalone_card_image_alignment.rb +12 -0
  375. data/lib/pinnacle/types/send_rcs_card_options_standalone_card_orientation.rb +12 -0
  376. data/lib/pinnacle/types/send_rich_cards_options.rb +9 -0
  377. data/lib/pinnacle/types/send_rich_message_options.rb +14 -0
  378. data/lib/pinnacle/types/send_sms_response_segments.rb +11 -0
  379. data/lib/pinnacle/types/send_sms_response_segments_encoding.rb +12 -0
  380. data/lib/pinnacle/types/send_typing_indicator_response.rb +14 -0
  381. data/lib/pinnacle/types/sender.rb +23 -0
  382. data/lib/pinnacle/types/sent_mms_details.rb +14 -0
  383. data/lib/pinnacle/types/sent_rich_message.rb +14 -0
  384. data/lib/pinnacle/types/sent_sms_details.rb +14 -0
  385. data/lib/pinnacle/types/shortened_url.rb +10 -0
  386. data/lib/pinnacle/types/shortened_url_with_click_data.rb +9 -0
  387. data/lib/pinnacle/types/sms_content.rb +10 -0
  388. data/lib/pinnacle/types/sms_validation_response_segments.rb +11 -0
  389. data/lib/pinnacle/types/sms_validation_response_segments_gsm_7.rb +12 -0
  390. data/lib/pinnacle/types/sms_validation_response_segments_utf_16.rb +11 -0
  391. data/lib/pinnacle/types/sms_validation_response_total.rb +10 -0
  392. data/lib/pinnacle/types/sms_validation_result.rb +12 -0
  393. data/lib/pinnacle/types/sub_use_case_enum.rb +20 -0
  394. data/lib/pinnacle/types/submission_results.rb +9 -0
  395. data/lib/pinnacle/types/successful_conversation_update.rb +10 -0
  396. data/lib/pinnacle/types/toll_free_campaign.rb +17 -0
  397. data/lib/pinnacle/types/toll_free_campaign_schema_keywords.rb +11 -0
  398. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_help.rb +10 -0
  399. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_opt_in.rb +11 -0
  400. data/lib/pinnacle/types/toll_free_campaign_schema_links.rb +11 -0
  401. data/lib/pinnacle/types/toll_free_campaign_schema_opt_in.rb +12 -0
  402. data/lib/pinnacle/types/toll_free_campaign_schema_options.rb +10 -0
  403. data/lib/pinnacle/types/toll_free_campaign_schema_use_case.rb +11 -0
  404. data/lib/pinnacle/types/toll_free_campaign_status.rb +12 -0
  405. data/lib/pinnacle/types/toll_free_campaign_use_case_enum.rb +53 -0
  406. data/lib/pinnacle/types/toll_free_campaign_with_extended_brand_and_status.rb +19 -0
  407. data/lib/pinnacle/types/toll_free_status_enum.rb +16 -0
  408. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords.rb +11 -0
  409. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_help.rb +10 -0
  410. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_opt_in.rb +11 -0
  411. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_links.rb +11 -0
  412. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_opt_in.rb +12 -0
  413. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_options.rb +10 -0
  414. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_use_case.rb +11 -0
  415. data/lib/pinnacle/types/tracking.rb +12 -0
  416. data/lib/pinnacle/types/updated_contact_id.rb +9 -0
  417. data/lib/pinnacle/types/upload_results.rb +11 -0
  418. data/lib/pinnacle/types/user_event.rb +12 -0
  419. data/lib/pinnacle/types/user_event_conversation.rb +12 -0
  420. data/lib/pinnacle/types/v_card_address_schema_type_item.rb +17 -0
  421. data/lib/pinnacle/types/v_card_data.rb +9 -0
  422. data/lib/pinnacle/types/v_card_data_file.rb +11 -0
  423. data/lib/pinnacle/types/v_card_data_file_metadata.rb +10 -0
  424. data/lib/pinnacle/types/v_card_email_schema_type_item.rb +23 -0
  425. data/lib/pinnacle/types/v_card_geo.rb +11 -0
  426. data/lib/pinnacle/types/v_card_name.rb +14 -0
  427. data/lib/pinnacle/types/v_card_organization.rb +11 -0
  428. data/lib/pinnacle/types/v_card_phone_schema_type_item.rb +23 -0
  429. data/lib/pinnacle/types/validate_campaign_params.rb +10 -0
  430. data/lib/pinnacle/types/validation_error_details.rb +11 -0
  431. data/lib/pinnacle/types/validation_results.rb +10 -0
  432. data/lib/pinnacle/types/vcard.rb +24 -0
  433. data/lib/pinnacle/types/vcard_address.rb +17 -0
  434. data/lib/pinnacle/types/vcard_content.rb +9 -0
  435. data/lib/pinnacle/types/vcard_email.rb +10 -0
  436. data/lib/pinnacle/types/vcard_phone.rb +10 -0
  437. data/lib/pinnacle/types/vcard_resource.rb +10 -0
  438. data/lib/pinnacle/types/vetting_feedback.rb +12 -0
  439. data/lib/pinnacle/types/vetting_history.rb +13 -0
  440. data/lib/pinnacle/types/vetting_history_vetting_status.rb +14 -0
  441. data/lib/pinnacle/types/vetting_results.rb +9 -0
  442. data/lib/pinnacle/types/webhook_event_enum.rb +12 -0
  443. data/lib/pinnacle/types/webhook_result.rb +11 -0
  444. data/lib/pinnacle/types/webhooks.rb +12 -0
  445. data/lib/pinnacle/types/zod_error.rb +10 -0
  446. data/lib/pinnacle/version.rb +5 -0
  447. data/lib/pinnacle/webhooks/client.rb +51 -0
  448. data/lib/pinnacle/webhooks/types/get_webhook_params.rb +11 -0
  449. data/lib/pinnacle/wrapper/messages/client.rb +72 -0
  450. data/lib/pinnacle/wrapper/tools/client.rb +14 -0
  451. data/lib/pinnacle/wrapper/tools/file_uploader.rb +149 -0
  452. data/lib/pinnacle.rb +449 -0
  453. data/reference.md +5956 -0
  454. data/wiremock/docker-compose.test.yml +14 -0
  455. data/wiremock/wiremock-mappings.json +1 -0
  456. metadata +468 -454
  457. data/lib/gemconfig.rb +0 -14
  458. data/lib/rcs/audiences/client.rb +0 -347
  459. data/lib/rcs/audiences/contacts/client.rb +0 -173
  460. data/lib/rcs/audiences/types/audiences_get_response.rb +0 -58
  461. data/lib/rcs/brands/client.rb +0 -656
  462. data/lib/rcs/brands/types/autofill_brand_options.rb +0 -61
  463. data/lib/rcs/brands/types/brand_contact.rb +0 -84
  464. data/lib/rcs/campaigns/client.rb +0 -44
  465. data/lib/rcs/campaigns/dlc/client.rb +0 -490
  466. data/lib/rcs/campaigns/dlc/types/dlc_campaign_help_keywords.rb +0 -74
  467. data/lib/rcs/campaigns/dlc/types/dlc_campaign_keywords.rb +0 -99
  468. data/lib/rcs/campaigns/dlc/types/dlc_campaign_links.rb +0 -74
  469. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +0 -74
  470. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +0 -74
  471. data/lib/rcs/campaigns/dlc/types/dlc_campaign_options.rb +0 -110
  472. data/lib/rcs/campaigns/dlc/types/dlc_campaign_use_case.rb +0 -76
  473. data/lib/rcs/campaigns/rcs/client.rb +0 -564
  474. data/lib/rcs/campaigns/rcs/types/rcs_agent.rb +0 -146
  475. data/lib/rcs/campaigns/rcs/types/rcs_agent_email.rb +0 -73
  476. data/lib/rcs/campaigns/rcs/types/rcs_agent_phone.rb +0 -73
  477. data/lib/rcs/campaigns/rcs/types/rcs_agent_website.rb +0 -73
  478. data/lib/rcs/campaigns/rcs/types/rcs_autofill_response.rb +0 -246
  479. data/lib/rcs/campaigns/rcs/types/rcs_campaign_help_keywords.rb +0 -77
  480. data/lib/rcs/campaigns/rcs/types/rcs_campaign_keywords.rb +0 -98
  481. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +0 -87
  482. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +0 -83
  483. data/lib/rcs/campaigns/rcs/types/rcs_campaign_traffic.rb +0 -76
  484. data/lib/rcs/campaigns/rcs/types/rcs_links.rb +0 -74
  485. data/lib/rcs/campaigns/rcs/types/rcs_use_case.rb +0 -75
  486. data/lib/rcs/campaigns/toll_free/client.rb +0 -478
  487. data/lib/rcs/campaigns/toll_free/types/toll_free_autofill_response.rb +0 -172
  488. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +0 -66
  489. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_keywords.rb +0 -86
  490. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_links.rb +0 -74
  491. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +0 -86
  492. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +0 -78
  493. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_options.rb +0 -64
  494. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_use_case.rb +0 -75
  495. data/lib/rcs/contacts/client.rb +0 -277
  496. data/lib/rcs/conversations/client.rb +0 -401
  497. data/lib/rcs/conversations/types/conversations_list_messages_request_direction.rb +0 -12
  498. data/lib/rcs/conversations/types/conversations_list_messages_request_sort_order.rb +0 -12
  499. data/lib/rcs/conversations/types/conversations_list_messages_request_status.rb +0 -17
  500. data/lib/rcs/conversations/types/conversations_list_messages_request_type.rb +0 -13
  501. data/lib/rcs/messages/blast/client.rb +0 -419
  502. data/lib/rcs/messages/blast/types/blast_mms_options.rb +0 -82
  503. data/lib/rcs/messages/blast/types/blast_mms_response.rb +0 -60
  504. data/lib/rcs/messages/blast/types/blast_rcs_options.rb +0 -118
  505. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card.rb +0 -82
  506. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +0 -16
  507. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +0 -15
  508. data/lib/rcs/messages/blast/types/blast_rcs_response.rb +0 -60
  509. data/lib/rcs/messages/blast/types/blast_sms_options.rb +0 -70
  510. data/lib/rcs/messages/blast/types/blast_sms_response.rb +0 -60
  511. data/lib/rcs/messages/client.rb +0 -189
  512. data/lib/rcs/messages/mms/client.rb +0 -216
  513. data/lib/rcs/messages/mms/types/mms_send_response.rb +0 -60
  514. data/lib/rcs/messages/mms/types/send_mms_options.rb +0 -108
  515. data/lib/rcs/messages/rcs/client.rb +0 -286
  516. data/lib/rcs/messages/rcs/types/send_rich_message_response.rb +0 -60
  517. data/lib/rcs/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -66
  518. data/lib/rcs/messages/schedule/client.rb +0 -103
  519. data/lib/rcs/messages/sms/client.rb +0 -198
  520. data/lib/rcs/messages/sms/types/send_sms_options.rb +0 -81
  521. data/lib/rcs/messages/sms/types/sms_send_response.rb +0 -60
  522. data/lib/rcs/messages/types/react_message_options.rb +0 -71
  523. data/lib/rcs/phone_numbers/campaign/client.rb +0 -193
  524. data/lib/rcs/phone_numbers/client.rb +0 -345
  525. data/lib/rcs/phone_numbers/types/enhanced_contact_info.rb +0 -62
  526. data/lib/rcs/phone_numbers/types/phone_details_schema_level.rb +0 -16
  527. data/lib/rcs/phone_numbers/types/phone_numbers_get_response.rb +0 -58
  528. data/lib/rcs/phone_numbers/types/retrieve_phone_number_details_options.rb +0 -93
  529. data/lib/rcs/phone_numbers/types/search_phone_number_by_digits.rb +0 -81
  530. data/lib/rcs/phone_numbers/types/search_phone_number_by_location.rb +0 -96
  531. data/lib/rcs/phone_numbers/types/search_phone_number_options.rb +0 -62
  532. data/lib/rcs/phone_numbers/webhook/client.rb +0 -193
  533. data/lib/rcs/rcs/client.rb +0 -330
  534. data/lib/rcs/status/client.rb +0 -30
  535. data/lib/rcs/status/get/client.rb +0 -383
  536. data/lib/rcs/tools/client.rb +0 -44
  537. data/lib/rcs/tools/contact_card/client.rb +0 -295
  538. data/lib/rcs/tools/contact_card/types/get_v_card_schema_options.rb +0 -67
  539. data/lib/rcs/tools/file/client.rb +0 -228
  540. data/lib/rcs/tools/file/types/download_options.rb +0 -66
  541. data/lib/rcs/tools/file/types/upload_file_options.rb +0 -88
  542. data/lib/rcs/tools/url/client.rb +0 -247
  543. data/lib/rcs/types/advanced_phone_information.rb +0 -147
  544. data/lib/rcs/types/advanced_phone_information_carrier.rb +0 -90
  545. data/lib/rcs/types/advanced_phone_information_contact.rb +0 -146
  546. data/lib/rcs/types/advanced_phone_information_location.rb +0 -142
  547. data/lib/rcs/types/advanced_phone_information_location_coordinates.rb +0 -73
  548. data/lib/rcs/types/advanced_phone_information_location_country.rb +0 -77
  549. data/lib/rcs/types/advanced_phone_information_type.rb +0 -97
  550. data/lib/rcs/types/advanced_phone_information_type_recommendation.rb +0 -15
  551. data/lib/rcs/types/agent.rb +0 -68
  552. data/lib/rcs/types/attach_webhook_by_id_params.rb +0 -77
  553. data/lib/rcs/types/attach_webhook_params.rb +0 -60
  554. data/lib/rcs/types/attach_webhook_response_webhook.rb +0 -88
  555. data/lib/rcs/types/attached_phone_number_result.rb +0 -75
  556. data/lib/rcs/types/audience_count_only.rb +0 -87
  557. data/lib/rcs/types/audience_with_pagination.rb +0 -114
  558. data/lib/rcs/types/autofill_campaign_params.rb +0 -81
  559. data/lib/rcs/types/autofill_dlc_campaign_response.rb +0 -173
  560. data/lib/rcs/types/autofill_dlc_response_keywords.rb +0 -93
  561. data/lib/rcs/types/autofill_dlc_response_keywords_help.rb +0 -70
  562. data/lib/rcs/types/autofill_dlc_response_keywords_opt_in.rb +0 -70
  563. data/lib/rcs/types/autofill_dlc_response_keywords_opt_out.rb +0 -70
  564. data/lib/rcs/types/autofill_dlc_response_links.rb +0 -70
  565. data/lib/rcs/types/autofill_dlc_response_options.rb +0 -106
  566. data/lib/rcs/types/autofill_dlc_response_use_case.rb +0 -72
  567. data/lib/rcs/types/bad_request_error_body.rb +0 -56
  568. data/lib/rcs/types/base_rich_message.rb +0 -82
  569. data/lib/rcs/types/basic_phone_information.rb +0 -127
  570. data/lib/rcs/types/basic_phone_information_contact.rb +0 -58
  571. data/lib/rcs/types/basic_phone_information_location.rb +0 -74
  572. data/lib/rcs/types/basic_phone_information_location_country.rb +0 -75
  573. data/lib/rcs/types/blast_details.rb +0 -110
  574. data/lib/rcs/types/brand_status.rb +0 -94
  575. data/lib/rcs/types/brand_status_enum.rb +0 -21
  576. data/lib/rcs/types/button_clicked.rb +0 -56
  577. data/lib/rcs/types/button_clicked_data.rb +0 -80
  578. data/lib/rcs/types/button_clicked_data_button.rb +0 -118
  579. data/lib/rcs/types/button_clicked_data_button_raw.rb +0 -58
  580. data/lib/rcs/types/button_clicked_data_button_type.rb +0 -15
  581. data/lib/rcs/types/buy_response_capabilities.rb +0 -77
  582. data/lib/rcs/types/campaign_enum.rb +0 -15
  583. data/lib/rcs/types/campaign_query.rb +0 -77
  584. data/lib/rcs/types/campaign_submission_result.rb +0 -57
  585. data/lib/rcs/types/campaign_validation_response_errors_item.rb +0 -76
  586. data/lib/rcs/types/campaign_validation_result.rb +0 -71
  587. data/lib/rcs/types/company_entity_type_enum.rb +0 -14
  588. data/lib/rcs/types/company_sector_enum.rb +0 -26
  589. data/lib/rcs/types/company_type_enum.rb +0 -14
  590. data/lib/rcs/types/configured_webhook.rb +0 -85
  591. data/lib/rcs/types/contact.rb +0 -107
  592. data/lib/rcs/types/contact_id.rb +0 -59
  593. data/lib/rcs/types/conversation.rb +0 -154
  594. data/lib/rcs/types/conversation_by_id_params.rb +0 -62
  595. data/lib/rcs/types/conversation_by_participants_params.rb +0 -72
  596. data/lib/rcs/types/conversation_contact.rb +0 -70
  597. data/lib/rcs/types/conversation_list.rb +0 -79
  598. data/lib/rcs/types/conversation_sender.rb +0 -60
  599. data/lib/rcs/types/create_and_attach_webhook_by_url_params.rb +0 -88
  600. data/lib/rcs/types/create_url_options.rb +0 -63
  601. data/lib/rcs/types/delete_audience_response.rb +0 -57
  602. data/lib/rcs/types/detached_phone_number_result.rb +0 -75
  603. data/lib/rcs/types/detached_webhook_info.rb +0 -76
  604. data/lib/rcs/types/detailed_phone_number_enum.rb +0 -25
  605. data/lib/rcs/types/dlc_assignment_status_enum.rb +0 -19
  606. data/lib/rcs/types/dlc_campaign_status.rb +0 -109
  607. data/lib/rcs/types/dlc_campaign_use_case_enum.rb +0 -35
  608. data/lib/rcs/types/dlc_campaign_with_extended_brand_and_status.rb +0 -224
  609. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords.rb +0 -94
  610. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_help.rb +0 -72
  611. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +0 -72
  612. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +0 -72
  613. data/lib/rcs/types/dlc_with_extended_brand_and_status_links.rb +0 -70
  614. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +0 -15
  615. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +0 -22
  616. data/lib/rcs/types/dlc_with_extended_brand_and_status_options.rb +0 -106
  617. data/lib/rcs/types/dlc_with_extended_brand_and_status_use_case.rb +0 -72
  618. data/lib/rcs/types/enhanced_contact.rb +0 -9
  619. data/lib/rcs/types/enhanced_contact_item.rb +0 -104
  620. data/lib/rcs/types/error.rb +0 -61
  621. data/lib/rcs/types/extended_brand.rb +0 -215
  622. data/lib/rcs/types/extended_brand_with_vetting.rb +0 -247
  623. data/lib/rcs/types/extended_rcs_campaign.rb +0 -267
  624. data/lib/rcs/types/get_conversation_params.rb +0 -57
  625. data/lib/rcs/types/get_dlc_campaign_status_response_updates.rb +0 -96
  626. data/lib/rcs/types/get_toll_free_campaign_status_response_updates.rb +0 -92
  627. data/lib/rcs/types/link_click_event.rb +0 -449
  628. data/lib/rcs/types/location_share_action.rb +0 -63
  629. data/lib/rcs/types/location_share_action_data.rb +0 -89
  630. data/lib/rcs/types/message.rb +0 -176
  631. data/lib/rcs/types/message_content.rb +0 -85
  632. data/lib/rcs/types/message_event.rb +0 -143
  633. data/lib/rcs/types/message_event_content.rb +0 -127
  634. data/lib/rcs/types/message_event_conversation.rb +0 -82
  635. data/lib/rcs/types/message_event_direction.rb +0 -11
  636. data/lib/rcs/types/message_event_mms_content.rb +0 -94
  637. data/lib/rcs/types/message_event_rcs_button_data.rb +0 -104
  638. data/lib/rcs/types/message_event_rcs_cards_content.rb +0 -99
  639. data/lib/rcs/types/message_event_rcs_cards_content_cards_item.rb +0 -94
  640. data/lib/rcs/types/message_event_rcs_location_data.rb +0 -91
  641. data/lib/rcs/types/message_event_rcs_media_content.rb +0 -94
  642. data/lib/rcs/types/message_event_rcs_text_content.rb +0 -92
  643. data/lib/rcs/types/message_event_sms_content.rb +0 -81
  644. data/lib/rcs/types/message_list.rb +0 -79
  645. data/lib/rcs/types/message_method_enum.rb +0 -12
  646. data/lib/rcs/types/message_protocol_enum.rb +0 -12
  647. data/lib/rcs/types/message_schedule.rb +0 -121
  648. data/lib/rcs/types/message_status_enum.rb +0 -17
  649. data/lib/rcs/types/message_volume_enum.rb +0 -20
  650. data/lib/rcs/types/message_with_reaction.rb +0 -197
  651. data/lib/rcs/types/message_with_reaction_direction.rb +0 -11
  652. data/lib/rcs/types/messaging_profile_enum.rb +0 -11
  653. data/lib/rcs/types/mms_content.rb +0 -74
  654. data/lib/rcs/types/mms_validation_response_segments.rb +0 -85
  655. data/lib/rcs/types/mms_validation_response_segments_value_item.rb +0 -75
  656. data/lib/rcs/types/mms_validation_result.rb +0 -82
  657. data/lib/rcs/types/not_found_error_body.rb +0 -59
  658. data/lib/rcs/types/number_format.rb +0 -79
  659. data/lib/rcs/types/opt_in_method_enum.rb +0 -13
  660. data/lib/rcs/types/optional_brand_info.rb +0 -154
  661. data/lib/rcs/types/optional_contact.rb +0 -83
  662. data/lib/rcs/types/optional_contacts.rb +0 -84
  663. data/lib/rcs/types/pagination.rb +0 -81
  664. data/lib/rcs/types/phone.rb +0 -101
  665. data/lib/rcs/types/phone_capabilities.rb +0 -75
  666. data/lib/rcs/types/phone_enum.rb +0 -13
  667. data/lib/rcs/types/phone_feature_enum.rb +0 -18
  668. data/lib/rcs/types/phone_number_campaign_attach_failed_item.rb +0 -67
  669. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item.rb +0 -75
  670. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +0 -82
  671. data/lib/rcs/types/phone_number_campaign_detach_failed_item.rb +0 -67
  672. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item.rb +0 -75
  673. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +0 -82
  674. data/lib/rcs/types/phone_number_cost.rb +0 -75
  675. data/lib/rcs/types/phone_number_details.rb +0 -110
  676. data/lib/rcs/types/phone_number_enum.rb +0 -18
  677. data/lib/rcs/types/phone_number_region.rb +0 -91
  678. data/lib/rcs/types/phone_number_status.rb +0 -90
  679. data/lib/rcs/types/phone_number_status_enum.rb +0 -16
  680. data/lib/rcs/types/pinnacle_file_upload_metadata.rb +0 -100
  681. data/lib/rcs/types/pinnacle_url_config.rb +0 -71
  682. data/lib/rcs/types/profile_status_enum.rb +0 -17
  683. data/lib/rcs/types/purchased_number.rb +0 -75
  684. data/lib/rcs/types/rcs_button_call.rb +0 -77
  685. data/lib/rcs/types/rcs_button_open_url.rb +0 -104
  686. data/lib/rcs/types/rcs_button_open_url_webview_mode.rb +0 -19
  687. data/lib/rcs/types/rcs_button_request_user_location.rb +0 -70
  688. data/lib/rcs/types/rcs_button_schedule_event.rb +0 -106
  689. data/lib/rcs/types/rcs_button_send_location.rb +0 -94
  690. data/lib/rcs/types/rcs_button_send_location_lat_long.rb +0 -68
  691. data/lib/rcs/types/rcs_button_trigger.rb +0 -80
  692. data/lib/rcs/types/rcs_campaign.rb +0 -234
  693. data/lib/rcs/types/rcs_campaign_schema_agent.rb +0 -134
  694. data/lib/rcs/types/rcs_campaign_schema_agent_emails_item.rb +0 -69
  695. data/lib/rcs/types/rcs_campaign_schema_agent_phones_item.rb +0 -69
  696. data/lib/rcs/types/rcs_campaign_schema_agent_websites_item.rb +0 -69
  697. data/lib/rcs/types/rcs_campaign_schema_extra_agent.rb +0 -134
  698. data/lib/rcs/types/rcs_campaign_schema_extra_agent_emails_item.rb +0 -70
  699. data/lib/rcs/types/rcs_campaign_schema_extra_agent_phones_item.rb +0 -70
  700. data/lib/rcs/types/rcs_campaign_schema_extra_agent_websites_item.rb +0 -71
  701. data/lib/rcs/types/rcs_campaign_schema_extra_keywords.rb +0 -94
  702. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_help.rb +0 -71
  703. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_in.rb +0 -73
  704. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_out.rb +0 -73
  705. data/lib/rcs/types/rcs_campaign_schema_extra_links.rb +0 -70
  706. data/lib/rcs/types/rcs_campaign_schema_extra_traffic.rb +0 -72
  707. data/lib/rcs/types/rcs_campaign_schema_extra_use_case.rb +0 -71
  708. data/lib/rcs/types/rcs_campaign_schema_keywords.rb +0 -94
  709. data/lib/rcs/types/rcs_campaign_schema_keywords_help.rb +0 -71
  710. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_in.rb +0 -73
  711. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_out.rb +0 -73
  712. data/lib/rcs/types/rcs_campaign_schema_links.rb +0 -70
  713. data/lib/rcs/types/rcs_campaign_schema_traffic.rb +0 -72
  714. data/lib/rcs/types/rcs_campaign_schema_use_case.rb +0 -71
  715. data/lib/rcs/types/rcs_campaign_status.rb +0 -88
  716. data/lib/rcs/types/rcs_campaign_use_case_enum.rb +0 -23
  717. data/lib/rcs/types/rcs_capabilities_result.rb +0 -7
  718. data/lib/rcs/types/rcs_capability.rb +0 -82
  719. data/lib/rcs/types/rcs_capability_actions.rb +0 -105
  720. data/lib/rcs/types/rcs_capability_cards.rb +0 -67
  721. data/lib/rcs/types/rcs_cards_content.rb +0 -79
  722. data/lib/rcs/types/rcs_cards_content_cards_item.rb +0 -96
  723. data/lib/rcs/types/rcs_content.rb +0 -72
  724. data/lib/rcs/types/rcs_link_result.rb +0 -75
  725. data/lib/rcs/types/rcs_media_content.rb +0 -81
  726. data/lib/rcs/types/rcs_media_details_content.rb +0 -77
  727. data/lib/rcs/types/rcs_messaging_type_enum.rb +0 -17
  728. data/lib/rcs/types/rcs_validate_content.rb +0 -70
  729. data/lib/rcs/types/rcs_validate_content_media.rb +0 -75
  730. data/lib/rcs/types/rcs_validation_result.rb +0 -83
  731. data/lib/rcs/types/rcs_whitelist_response.rb +0 -58
  732. data/lib/rcs/types/reaction_result.rb +0 -71
  733. data/lib/rcs/types/refreshed_file.rb +0 -67
  734. data/lib/rcs/types/rich_button.rb +0 -148
  735. data/lib/rcs/types/rich_card.rb +0 -90
  736. data/lib/rcs/types/rich_cards.rb +0 -79
  737. data/lib/rcs/types/rich_cards_message.rb +0 -110
  738. data/lib/rcs/types/rich_media_message.rb +0 -110
  739. data/lib/rcs/types/rich_message.rb +0 -70
  740. data/lib/rcs/types/rich_standalone_card_options.rb +0 -80
  741. data/lib/rcs/types/rich_text.rb +0 -72
  742. data/lib/rcs/types/rich_text_message.rb +0 -106
  743. data/lib/rcs/types/schedule_cancel_result.rb +0 -58
  744. data/lib/rcs/types/scheduled_blast_details.rb +0 -76
  745. data/lib/rcs/types/scheduled_blast_response_config.rb +0 -89
  746. data/lib/rcs/types/scheduled_message.rb +0 -75
  747. data/lib/rcs/types/scheduled_send_response_config.rb +0 -89
  748. data/lib/rcs/types/send_rcs_card_options_standalone_card_image_alignment.rb +0 -12
  749. data/lib/rcs/types/send_rcs_card_options_standalone_card_orientation.rb +0 -11
  750. data/lib/rcs/types/send_rich_cards_options.rb +0 -136
  751. data/lib/rcs/types/send_rich_message_options.rb +0 -111
  752. data/lib/rcs/types/send_sms_response_segments.rb +0 -69
  753. data/lib/rcs/types/send_sms_response_segments_encoding.rb +0 -11
  754. data/lib/rcs/types/send_typing_indicator_response.rb +0 -100
  755. data/lib/rcs/types/sent_mms_details.rb +0 -118
  756. data/lib/rcs/types/sent_rich_message.rb +0 -104
  757. data/lib/rcs/types/sent_sms_details.rb +0 -110
  758. data/lib/rcs/types/shortened_url.rb +0 -77
  759. data/lib/rcs/types/shortened_url_with_click_data.rb +0 -90
  760. data/lib/rcs/types/sms_content.rb +0 -58
  761. data/lib/rcs/types/sms_validation_response_segments.rb +0 -80
  762. data/lib/rcs/types/sms_validation_response_segments_gsm_7.rb +0 -75
  763. data/lib/rcs/types/sms_validation_response_segments_utf_16.rb +0 -68
  764. data/lib/rcs/types/sms_validation_response_total.rb +0 -75
  765. data/lib/rcs/types/sms_validation_result.rb +0 -102
  766. data/lib/rcs/types/sub_use_case_enum.rb +0 -19
  767. data/lib/rcs/types/submission_results.rb +0 -57
  768. data/lib/rcs/types/successful_conversation_update.rb +0 -58
  769. data/lib/rcs/types/toll_free_campaign.rb +0 -160
  770. data/lib/rcs/types/toll_free_campaign_schema_keywords.rb +0 -82
  771. data/lib/rcs/types/toll_free_campaign_schema_keywords_help.rb +0 -62
  772. data/lib/rcs/types/toll_free_campaign_schema_keywords_opt_in.rb +0 -74
  773. data/lib/rcs/types/toll_free_campaign_schema_links.rb +0 -70
  774. data/lib/rcs/types/toll_free_campaign_schema_opt_in.rb +0 -78
  775. data/lib/rcs/types/toll_free_campaign_schema_options.rb +0 -60
  776. data/lib/rcs/types/toll_free_campaign_schema_use_case.rb +0 -71
  777. data/lib/rcs/types/toll_free_campaign_status.rb +0 -93
  778. data/lib/rcs/types/toll_free_campaign_use_case_enum.rb +0 -52
  779. data/lib/rcs/types/toll_free_campaign_with_extended_brand_and_status.rb +0 -195
  780. data/lib/rcs/types/toll_free_status_enum.rb +0 -20
  781. data/lib/rcs/types/tracking.rb +0 -17
  782. data/lib/rcs/types/updated_contact_id.rb +0 -59
  783. data/lib/rcs/types/upload_results.rb +0 -80
  784. data/lib/rcs/types/upsert_contact.rb +0 -84
  785. data/lib/rcs/types/user_event.rb +0 -83
  786. data/lib/rcs/types/user_event_conversation.rb +0 -78
  787. data/lib/rcs/types/v_card_address_schema_type_item.rb +0 -15
  788. data/lib/rcs/types/v_card_data.rb +0 -239
  789. data/lib/rcs/types/v_card_data_file.rb +0 -74
  790. data/lib/rcs/types/v_card_data_file_metadata.rb +0 -62
  791. data/lib/rcs/types/v_card_email_schema_type_item.rb +0 -21
  792. data/lib/rcs/types/v_card_geo.rb +0 -70
  793. data/lib/rcs/types/v_card_name.rb +0 -98
  794. data/lib/rcs/types/v_card_organization.rb +0 -70
  795. data/lib/rcs/types/v_card_phone_schema_type_item.rb +0 -21
  796. data/lib/rcs/types/validate_campaign_params.rb +0 -81
  797. data/lib/rcs/types/validation_error_details.rb +0 -76
  798. data/lib/rcs/types/validation_results.rb +0 -71
  799. data/lib/rcs/types/vcard.rb +0 -217
  800. data/lib/rcs/types/vcard_address.rb +0 -130
  801. data/lib/rcs/types/vcard_content.rb +0 -225
  802. data/lib/rcs/types/vcard_email.rb +0 -70
  803. data/lib/rcs/types/vcard_phone.rb +0 -70
  804. data/lib/rcs/types/vcard_resource.rb +0 -73
  805. data/lib/rcs/types/vetting_feedback.rb +0 -81
  806. data/lib/rcs/types/vetting_history.rb +0 -98
  807. data/lib/rcs/types/vetting_history_vetting_status.rb +0 -13
  808. data/lib/rcs/types/vetting_results.rb +0 -57
  809. data/lib/rcs/types/webhook_event_enum.rb +0 -14
  810. data/lib/rcs/types/webhook_result.rb +0 -64
  811. data/lib/rcs/types/webhooks.rb +0 -77
  812. data/lib/rcs/types/zod_error.rb +0 -73
  813. data/lib/rcs/webhooks/client.rb +0 -93
  814. data/lib/rcs.rb +0 -124
  815. data/lib/requests.rb +0 -163
  816. data/lib/types_export.rb +0 -332
  817. /data/lib/{environment.rb → pinnacle/environment.rb} +0 -0
@@ -1,61 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "ostruct"
4
- require "json"
5
-
6
- module Pinnacle
7
- module Brands
8
- module Types
9
- class AutofillBrandOptions
10
- # @return [Boolean] Set to true to bypass cached data and fetch fresh information.
11
- attr_reader :force_reload
12
- # @return [OpenStruct] Additional properties unmapped to the current class definition
13
- attr_reader :additional_properties
14
- # @return [Object]
15
- attr_reader :_field_set
16
- protected :_field_set
17
-
18
- OMIT = Object.new
19
-
20
- # @param force_reload [Boolean] Set to true to bypass cached data and fetch fresh information.
21
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
22
- # @return [Pinnacle::Brands::Types::AutofillBrandOptions]
23
- def initialize(force_reload: OMIT, additional_properties: nil)
24
- @force_reload = force_reload if force_reload != OMIT
25
- @additional_properties = additional_properties
26
- @_field_set = { "forceReload": force_reload }.reject do |_k, v|
27
- v == OMIT
28
- end
29
- end
30
-
31
- # Deserialize a JSON object to an instance of AutofillBrandOptions
32
- #
33
- # @param json_object [String]
34
- # @return [Pinnacle::Brands::Types::AutofillBrandOptions]
35
- def self.from_json(json_object:)
36
- struct = JSON.parse(json_object, object_class: OpenStruct)
37
- parsed_json = JSON.parse(json_object)
38
- force_reload = parsed_json["forceReload"]
39
- new(force_reload: force_reload, additional_properties: struct)
40
- end
41
-
42
- # Serialize an instance of AutofillBrandOptions to a JSON object
43
- #
44
- # @return [String]
45
- def to_json(*_args)
46
- @_field_set&.to_json
47
- end
48
-
49
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
50
- # hash and check each fields type against the current object's property
51
- # definitions.
52
- #
53
- # @param obj [Object]
54
- # @return [Void]
55
- def self.validate_raw(obj:)
56
- obj.force_reload&.is_a?(Boolean) != false || raise("Passed value for field obj.force_reload is not the expected type, validation failed.")
57
- end
58
- end
59
- end
60
- end
61
- end
@@ -1,84 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "ostruct"
4
- require "json"
5
-
6
- module Pinnacle
7
- module Brands
8
- module Types
9
- # Contact information for the primary brand representative.
10
- class BrandContact
11
- # @return [String] Email address of the contact person.
12
- attr_reader :email
13
- # @return [String] Full name of the contact person.
14
- attr_reader :name
15
- # @return [String] Phone number of the contact person in E.164 format.
16
- attr_reader :phone
17
- # @return [String] Job title or position of the contact person.
18
- attr_reader :title
19
- # @return [OpenStruct] Additional properties unmapped to the current class definition
20
- attr_reader :additional_properties
21
- # @return [Object]
22
- attr_reader :_field_set
23
- protected :_field_set
24
-
25
- OMIT = Object.new
26
-
27
- # @param email [String] Email address of the contact person.
28
- # @param name [String] Full name of the contact person.
29
- # @param phone [String] Phone number of the contact person in E.164 format.
30
- # @param title [String] Job title or position of the contact person.
31
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
32
- # @return [Pinnacle::Brands::Types::BrandContact]
33
- def initialize(email:, name:, phone:, title:, additional_properties: nil)
34
- @email = email
35
- @name = name
36
- @phone = phone
37
- @title = title
38
- @additional_properties = additional_properties
39
- @_field_set = { "email": email, "name": name, "phone": phone, "title": title }
40
- end
41
-
42
- # Deserialize a JSON object to an instance of BrandContact
43
- #
44
- # @param json_object [String]
45
- # @return [Pinnacle::Brands::Types::BrandContact]
46
- def self.from_json(json_object:)
47
- struct = JSON.parse(json_object, object_class: OpenStruct)
48
- parsed_json = JSON.parse(json_object)
49
- email = parsed_json["email"]
50
- name = parsed_json["name"]
51
- phone = parsed_json["phone"]
52
- title = parsed_json["title"]
53
- new(
54
- email: email,
55
- name: name,
56
- phone: phone,
57
- title: title,
58
- additional_properties: struct
59
- )
60
- end
61
-
62
- # Serialize an instance of BrandContact to a JSON object
63
- #
64
- # @return [String]
65
- def to_json(*_args)
66
- @_field_set&.to_json
67
- end
68
-
69
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
70
- # hash and check each fields type against the current object's property
71
- # definitions.
72
- #
73
- # @param obj [Object]
74
- # @return [Void]
75
- def self.validate_raw(obj:)
76
- obj.email.is_a?(String) != false || raise("Passed value for field obj.email is not the expected type, validation failed.")
77
- obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
78
- obj.phone.is_a?(String) != false || raise("Passed value for field obj.phone is not the expected type, validation failed.")
79
- obj.title.is_a?(String) != false || raise("Passed value for field obj.title is not the expected type, validation failed.")
80
- end
81
- end
82
- end
83
- end
84
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../requests"
4
- require_relative "dlc/client"
5
- require_relative "toll_free/client"
6
- require_relative "rcs/client"
7
-
8
- module Pinnacle
9
- module Campaigns
10
- class Client
11
- # @return [Pinnacle::Campaigns::DlcClient]
12
- attr_reader :dlc
13
- # @return [Pinnacle::Campaigns::TollFreeClient]
14
- attr_reader :toll_free
15
- # @return [Pinnacle::Campaigns::RcsClient]
16
- attr_reader :rcs
17
-
18
- # @param request_client [Pinnacle::RequestClient]
19
- # @return [Pinnacle::Campaigns::Client]
20
- def initialize(request_client:)
21
- @dlc = Pinnacle::Campaigns::DlcClient.new(request_client: request_client)
22
- @toll_free = Pinnacle::Campaigns::TollFreeClient.new(request_client: request_client)
23
- @rcs = Pinnacle::Campaigns::RcsClient.new(request_client: request_client)
24
- end
25
- end
26
-
27
- class AsyncClient
28
- # @return [Pinnacle::Campaigns::AsyncDlcClient]
29
- attr_reader :dlc
30
- # @return [Pinnacle::Campaigns::AsyncTollFreeClient]
31
- attr_reader :toll_free
32
- # @return [Pinnacle::Campaigns::AsyncRcsClient]
33
- attr_reader :rcs
34
-
35
- # @param request_client [Pinnacle::AsyncRequestClient]
36
- # @return [Pinnacle::Campaigns::AsyncClient]
37
- def initialize(request_client:)
38
- @dlc = Pinnacle::Campaigns::AsyncDlcClient.new(request_client: request_client)
39
- @toll_free = Pinnacle::Campaigns::AsyncTollFreeClient.new(request_client: request_client)
40
- @rcs = Pinnacle::Campaigns::AsyncRcsClient.new(request_client: request_client)
41
- end
42
- end
43
- end
44
- end
@@ -1,490 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../../requests"
4
- require_relative "../../types/autofill_campaign_params"
5
- require_relative "../../types/autofill_dlc_campaign_response"
6
- require_relative "../../types/dlc_campaign_with_extended_brand_and_status"
7
- require_relative "../../types/campaign_submission_result"
8
- require_relative "types/dlc_campaign_keywords"
9
- require_relative "types/dlc_campaign_links"
10
- require_relative "types/dlc_campaign_options"
11
- require_relative "types/dlc_campaign_use_case"
12
- require_relative "../../types/validate_campaign_params"
13
- require_relative "../../types/campaign_validation_result"
14
- require "async"
15
-
16
- module Pinnacle
17
- module Campaigns
18
- class DlcClient
19
- # @return [Pinnacle::RequestClient]
20
- attr_reader :request_client
21
-
22
- # @param request_client [Pinnacle::RequestClient]
23
- # @return [Pinnacle::Campaigns::DlcClient]
24
- def initialize(request_client:)
25
- @request_client = request_client
26
- end
27
-
28
- # Generate campaign details based off existing campaign and the brand it's
29
- # connected to.
30
- #
31
- # @param request [Hash] Request of type Pinnacle::Types::AutofillCampaignParams, as a Hash
32
- # * :additional_info (String)
33
- # * :campaign_id (String)
34
- # @param request_options [Pinnacle::RequestOptions]
35
- # @return [Pinnacle::Types::AutofillDlcCampaignResponse]
36
- # @example
37
- # api = Pinnacle::Client.new(
38
- # base_url: "https://api.example.com",
39
- # environment: Pinnacle::Environment::DEFAULT,
40
- # api_key: "YOUR_API_KEY"
41
- # )
42
- # api.campaigns.dlc.autofill(request: { additional_info: "Please autofill missing campaign fields using my brand profile", campaign_id: "dlc_1234567890" })
43
- def autofill(request:, request_options: nil)
44
- response = @request_client.conn.post do |req|
45
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
46
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
47
- req.headers = {
48
- **(req.headers || {}),
49
- **@request_client.get_headers,
50
- **(request_options&.additional_headers || {})
51
- }.compact
52
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
53
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
54
- end
55
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
56
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/autofill"
57
- end
58
- Pinnacle::Types::AutofillDlcCampaignResponse.from_json(json_object: response.body)
59
- end
60
-
61
- # Retrieve 10DLC campaign.
62
- #
63
- # @param campaign_id [String] Unique identifier of the 10DLC campaign. This identifier is a string that always
64
- # begins with the prefix `dlc_`, for example: `dlc_1234567890`.
65
- # @param request_options [Pinnacle::RequestOptions]
66
- # @return [Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus]
67
- # @example
68
- # api = Pinnacle::Client.new(
69
- # base_url: "https://api.example.com",
70
- # environment: Pinnacle::Environment::DEFAULT,
71
- # api_key: "YOUR_API_KEY"
72
- # )
73
- # api.campaigns.dlc.get(campaign_id: "dlc_1234567890")
74
- def get(campaign_id:, request_options: nil)
75
- response = @request_client.conn.get do |req|
76
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
77
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
78
- req.headers = {
79
- **(req.headers || {}),
80
- **@request_client.get_headers,
81
- **(request_options&.additional_headers || {})
82
- }.compact
83
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
84
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
85
- end
86
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
87
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
88
- end
89
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/#{campaign_id}"
90
- end
91
- Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
92
- end
93
-
94
- # Submit your 10DLC campaign for approval and activation with carriers.
95
- #
96
- # @param campaign_id [String] Unique identifier of the 10DLC campaign to submit.
97
- # <br><br> This identifier is a string that always begins with the prefix `dlc_`,
98
- # for example: `dlc_1234567890`.
99
- # @param request_options [Pinnacle::RequestOptions]
100
- # @return [Pinnacle::Types::CampaignSubmissionResult]
101
- # @example
102
- # api = Pinnacle::Client.new(
103
- # base_url: "https://api.example.com",
104
- # environment: Pinnacle::Environment::DEFAULT,
105
- # api_key: "YOUR_API_KEY"
106
- # )
107
- # api.campaigns.dlc.submit(campaign_id: "dlc_1234567890")
108
- def submit(campaign_id:, request_options: nil)
109
- response = @request_client.conn.post do |req|
110
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
111
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
112
- req.headers = {
113
- **(req.headers || {}),
114
- **@request_client.get_headers,
115
- **(request_options&.additional_headers || {})
116
- }.compact
117
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
118
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
119
- end
120
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
121
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
122
- end
123
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/submit/#{campaign_id}"
124
- end
125
- Pinnacle::Types::CampaignSubmissionResult.from_json(json_object: response.body)
126
- end
127
-
128
- # Create a new 10DLC campaign or updates an existing one. <br>
129
- # Omit campaignId to create a campaign.
130
- #
131
- # @param auto_renew [Boolean] Whether the campaign renews automatically.
132
- # @param brand [String] Brand id. This identifier is a string that always begins with the prefix `b_`,
133
- # for example: `b_1234567890`.
134
- # @param campaign_id [String] Unique identifier for the campaign. This identifier is a string that always
135
- # begins with the prefix `dlc_`, for example: `dlc_1234567890`.
136
- # @param description [String] Description of the campaign.
137
- # @param keywords [Hash] Keyword response configuration.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignKeywords, as a Hash
138
- # * :help (Hash)
139
- # * :message (String)
140
- # * :values (Array<String>)
141
- # * :opt_in (Hash)
142
- # * :message (String)
143
- # * :values (Array<String>)
144
- # * :opt_out (Hash)
145
- # * :message (String)
146
- # * :values (Array<String>)
147
- # @param links [Hash] Legal documentation links.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignLinks, as a Hash
148
- # * :privacy_policy (String)
149
- # * :terms_of_service (String)
150
- # @param message_flow [String] Describe the flow of how users will opt in to this campaign.
151
- # @param name [String] Display name of the campaign.
152
- # @param options [Hash] Campaign configuration options.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignOptions, as a Hash
153
- # * :affiliate_marketing (Boolean)
154
- # * :age_gated (Boolean)
155
- # * :direct_lending (Boolean)
156
- # * :embedded_link (String)
157
- # * :embedded_phone (Boolean)
158
- # * :number_pooling (Boolean)
159
- # @param sample_messages [Array<String>] Example messages for the campaign.
160
- # @param use_case [Hash] Use case for the campaign.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignUseCase, as a Hash
161
- # * :sub (Array<Pinnacle::Types::SubUseCaseEnum>)
162
- # * :value (Pinnacle::Types::DlcCampaignUseCaseEnum)
163
- # @param request_options [Pinnacle::RequestOptions]
164
- # @return [Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus]
165
- # @example
166
- # api = Pinnacle::Client.new(
167
- # base_url: "https://api.example.com",
168
- # environment: Pinnacle::Environment::DEFAULT,
169
- # api_key: "YOUR_API_KEY"
170
- # )
171
- # api.campaigns.dlc.upsert(
172
- # auto_renew: true,
173
- # brand: "b_1234567890",
174
- # campaign_id: "dlc_1234567890",
175
- # keywords: { help: { message: "Reply HELP for assistance, STOP to opt-out", values: ["HELP", "INFO", "SUPPORT"] }, opt_in: { message: "Welcome. You are now subscribed to Pinnacle.", values: ["JOIN", "START", "SUBSCRIBE"] }, opt_out: { message: "You have been unsubscribed. Reply START to rejoin.", values: ["STOP", "QUIT", "UNSUBSCRIBE"] } },
176
- # links: { privacy_policy: "https://www.pinnacle.sh/privacy", terms_of_service: "https://www.pinnacle.sh/terms" },
177
- # message_flow: "Customer initiates -> Automated response -> Agent follow-up if needed",
178
- # name: "Account Notifications",
179
- # options: { affiliate_marketing: false, age_gated: false, direct_lending: false, embedded_link: "https://www.pinnacle.sh/example", embedded_phone: false, number_pooling: false },
180
- # sample_messages: ["Security alert: Unusual login detected from new device."],
181
- # use_case: { sub: [FRAUD_ALERT], value: ACCOUNT_NOTIFICATION }
182
- # )
183
- def upsert(auto_renew: nil, brand: nil, campaign_id: nil, description: nil, keywords: nil, links: nil,
184
- message_flow: nil, name: nil, options: nil, sample_messages: nil, use_case: nil, request_options: nil)
185
- response = @request_client.conn.post do |req|
186
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
187
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
188
- req.headers = {
189
- **(req.headers || {}),
190
- **@request_client.get_headers,
191
- **(request_options&.additional_headers || {})
192
- }.compact
193
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
194
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
195
- end
196
- req.body = {
197
- **(request_options&.additional_body_parameters || {}),
198
- autoRenew: auto_renew,
199
- brand: brand,
200
- campaignId: campaign_id,
201
- description: description,
202
- keywords: keywords,
203
- links: links,
204
- messageFlow: message_flow,
205
- name: name,
206
- options: options,
207
- sampleMessages: sample_messages,
208
- useCase: use_case
209
- }.compact
210
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc"
211
- end
212
- Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
213
- end
214
-
215
- # Validate your 10DLC campaign configuration against carrier requirements and
216
- # compliance rules.
217
- #
218
- # @param request [Hash] Request of type Pinnacle::Types::ValidateCampaignParams, as a Hash
219
- # * :additional_info (String)
220
- # * :campaign_id (String)
221
- # @param request_options [Pinnacle::RequestOptions]
222
- # @return [Pinnacle::Types::CampaignValidationResult]
223
- # @example
224
- # api = Pinnacle::Client.new(
225
- # base_url: "https://api.example.com",
226
- # environment: Pinnacle::Environment::DEFAULT,
227
- # api_key: "YOUR_API_KEY"
228
- # )
229
- # api.campaigns.dlc.validate(request: { additional_info: "Please validate this DLC campaign for 10DLC compliance", campaign_id: "dlc_1234567890" })
230
- def validate(request:, request_options: nil)
231
- response = @request_client.conn.post do |req|
232
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
233
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
234
- req.headers = {
235
- **(req.headers || {}),
236
- **@request_client.get_headers,
237
- **(request_options&.additional_headers || {})
238
- }.compact
239
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
240
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
241
- end
242
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
243
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/validate"
244
- end
245
- Pinnacle::Types::CampaignValidationResult.from_json(json_object: response.body)
246
- end
247
- end
248
-
249
- class AsyncDlcClient
250
- # @return [Pinnacle::AsyncRequestClient]
251
- attr_reader :request_client
252
-
253
- # @param request_client [Pinnacle::AsyncRequestClient]
254
- # @return [Pinnacle::Campaigns::AsyncDlcClient]
255
- def initialize(request_client:)
256
- @request_client = request_client
257
- end
258
-
259
- # Generate campaign details based off existing campaign and the brand it's
260
- # connected to.
261
- #
262
- # @param request [Hash] Request of type Pinnacle::Types::AutofillCampaignParams, as a Hash
263
- # * :additional_info (String)
264
- # * :campaign_id (String)
265
- # @param request_options [Pinnacle::RequestOptions]
266
- # @return [Pinnacle::Types::AutofillDlcCampaignResponse]
267
- # @example
268
- # api = Pinnacle::Client.new(
269
- # base_url: "https://api.example.com",
270
- # environment: Pinnacle::Environment::DEFAULT,
271
- # api_key: "YOUR_API_KEY"
272
- # )
273
- # api.campaigns.dlc.autofill(request: { additional_info: "Please autofill missing campaign fields using my brand profile", campaign_id: "dlc_1234567890" })
274
- def autofill(request:, request_options: nil)
275
- Async do
276
- response = @request_client.conn.post do |req|
277
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
278
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
279
- req.headers = {
280
- **(req.headers || {}),
281
- **@request_client.get_headers,
282
- **(request_options&.additional_headers || {})
283
- }.compact
284
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
285
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
286
- end
287
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
288
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/autofill"
289
- end
290
- Pinnacle::Types::AutofillDlcCampaignResponse.from_json(json_object: response.body)
291
- end
292
- end
293
-
294
- # Retrieve 10DLC campaign.
295
- #
296
- # @param campaign_id [String] Unique identifier of the 10DLC campaign. This identifier is a string that always
297
- # begins with the prefix `dlc_`, for example: `dlc_1234567890`.
298
- # @param request_options [Pinnacle::RequestOptions]
299
- # @return [Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus]
300
- # @example
301
- # api = Pinnacle::Client.new(
302
- # base_url: "https://api.example.com",
303
- # environment: Pinnacle::Environment::DEFAULT,
304
- # api_key: "YOUR_API_KEY"
305
- # )
306
- # api.campaigns.dlc.get(campaign_id: "dlc_1234567890")
307
- def get(campaign_id:, request_options: nil)
308
- Async do
309
- response = @request_client.conn.get do |req|
310
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
311
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
312
- req.headers = {
313
- **(req.headers || {}),
314
- **@request_client.get_headers,
315
- **(request_options&.additional_headers || {})
316
- }.compact
317
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
318
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
319
- end
320
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
321
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
322
- end
323
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/#{campaign_id}"
324
- end
325
- Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
326
- end
327
- end
328
-
329
- # Submit your 10DLC campaign for approval and activation with carriers.
330
- #
331
- # @param campaign_id [String] Unique identifier of the 10DLC campaign to submit.
332
- # <br><br> This identifier is a string that always begins with the prefix `dlc_`,
333
- # for example: `dlc_1234567890`.
334
- # @param request_options [Pinnacle::RequestOptions]
335
- # @return [Pinnacle::Types::CampaignSubmissionResult]
336
- # @example
337
- # api = Pinnacle::Client.new(
338
- # base_url: "https://api.example.com",
339
- # environment: Pinnacle::Environment::DEFAULT,
340
- # api_key: "YOUR_API_KEY"
341
- # )
342
- # api.campaigns.dlc.submit(campaign_id: "dlc_1234567890")
343
- def submit(campaign_id:, request_options: nil)
344
- Async do
345
- response = @request_client.conn.post do |req|
346
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
347
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
348
- req.headers = {
349
- **(req.headers || {}),
350
- **@request_client.get_headers,
351
- **(request_options&.additional_headers || {})
352
- }.compact
353
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
354
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
355
- end
356
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
357
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
358
- end
359
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/submit/#{campaign_id}"
360
- end
361
- Pinnacle::Types::CampaignSubmissionResult.from_json(json_object: response.body)
362
- end
363
- end
364
-
365
- # Create a new 10DLC campaign or updates an existing one. <br>
366
- # Omit campaignId to create a campaign.
367
- #
368
- # @param auto_renew [Boolean] Whether the campaign renews automatically.
369
- # @param brand [String] Brand id. This identifier is a string that always begins with the prefix `b_`,
370
- # for example: `b_1234567890`.
371
- # @param campaign_id [String] Unique identifier for the campaign. This identifier is a string that always
372
- # begins with the prefix `dlc_`, for example: `dlc_1234567890`.
373
- # @param description [String] Description of the campaign.
374
- # @param keywords [Hash] Keyword response configuration.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignKeywords, as a Hash
375
- # * :help (Hash)
376
- # * :message (String)
377
- # * :values (Array<String>)
378
- # * :opt_in (Hash)
379
- # * :message (String)
380
- # * :values (Array<String>)
381
- # * :opt_out (Hash)
382
- # * :message (String)
383
- # * :values (Array<String>)
384
- # @param links [Hash] Legal documentation links.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignLinks, as a Hash
385
- # * :privacy_policy (String)
386
- # * :terms_of_service (String)
387
- # @param message_flow [String] Describe the flow of how users will opt in to this campaign.
388
- # @param name [String] Display name of the campaign.
389
- # @param options [Hash] Campaign configuration options.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignOptions, as a Hash
390
- # * :affiliate_marketing (Boolean)
391
- # * :age_gated (Boolean)
392
- # * :direct_lending (Boolean)
393
- # * :embedded_link (String)
394
- # * :embedded_phone (Boolean)
395
- # * :number_pooling (Boolean)
396
- # @param sample_messages [Array<String>] Example messages for the campaign.
397
- # @param use_case [Hash] Use case for the campaign.Request of type Pinnacle::Campaigns::Dlc::Types::DlcCampaignUseCase, as a Hash
398
- # * :sub (Array<Pinnacle::Types::SubUseCaseEnum>)
399
- # * :value (Pinnacle::Types::DlcCampaignUseCaseEnum)
400
- # @param request_options [Pinnacle::RequestOptions]
401
- # @return [Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus]
402
- # @example
403
- # api = Pinnacle::Client.new(
404
- # base_url: "https://api.example.com",
405
- # environment: Pinnacle::Environment::DEFAULT,
406
- # api_key: "YOUR_API_KEY"
407
- # )
408
- # api.campaigns.dlc.upsert(
409
- # auto_renew: true,
410
- # brand: "b_1234567890",
411
- # campaign_id: "dlc_1234567890",
412
- # keywords: { help: { message: "Reply HELP for assistance, STOP to opt-out", values: ["HELP", "INFO", "SUPPORT"] }, opt_in: { message: "Welcome. You are now subscribed to Pinnacle.", values: ["JOIN", "START", "SUBSCRIBE"] }, opt_out: { message: "You have been unsubscribed. Reply START to rejoin.", values: ["STOP", "QUIT", "UNSUBSCRIBE"] } },
413
- # links: { privacy_policy: "https://www.pinnacle.sh/privacy", terms_of_service: "https://www.pinnacle.sh/terms" },
414
- # message_flow: "Customer initiates -> Automated response -> Agent follow-up if needed",
415
- # name: "Account Notifications",
416
- # options: { affiliate_marketing: false, age_gated: false, direct_lending: false, embedded_link: "https://www.pinnacle.sh/example", embedded_phone: false, number_pooling: false },
417
- # sample_messages: ["Security alert: Unusual login detected from new device."],
418
- # use_case: { sub: [FRAUD_ALERT], value: ACCOUNT_NOTIFICATION }
419
- # )
420
- def upsert(auto_renew: nil, brand: nil, campaign_id: nil, description: nil, keywords: nil, links: nil,
421
- message_flow: nil, name: nil, options: nil, sample_messages: nil, use_case: nil, request_options: nil)
422
- Async do
423
- response = @request_client.conn.post do |req|
424
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
425
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
426
- req.headers = {
427
- **(req.headers || {}),
428
- **@request_client.get_headers,
429
- **(request_options&.additional_headers || {})
430
- }.compact
431
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
432
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
433
- end
434
- req.body = {
435
- **(request_options&.additional_body_parameters || {}),
436
- autoRenew: auto_renew,
437
- brand: brand,
438
- campaignId: campaign_id,
439
- description: description,
440
- keywords: keywords,
441
- links: links,
442
- messageFlow: message_flow,
443
- name: name,
444
- options: options,
445
- sampleMessages: sample_messages,
446
- useCase: use_case
447
- }.compact
448
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc"
449
- end
450
- Pinnacle::Types::DlcCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
451
- end
452
- end
453
-
454
- # Validate your 10DLC campaign configuration against carrier requirements and
455
- # compliance rules.
456
- #
457
- # @param request [Hash] Request of type Pinnacle::Types::ValidateCampaignParams, as a Hash
458
- # * :additional_info (String)
459
- # * :campaign_id (String)
460
- # @param request_options [Pinnacle::RequestOptions]
461
- # @return [Pinnacle::Types::CampaignValidationResult]
462
- # @example
463
- # api = Pinnacle::Client.new(
464
- # base_url: "https://api.example.com",
465
- # environment: Pinnacle::Environment::DEFAULT,
466
- # api_key: "YOUR_API_KEY"
467
- # )
468
- # api.campaigns.dlc.validate(request: { additional_info: "Please validate this DLC campaign for 10DLC compliance", campaign_id: "dlc_1234567890" })
469
- def validate(request:, request_options: nil)
470
- Async do
471
- response = @request_client.conn.post do |req|
472
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
473
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
474
- req.headers = {
475
- **(req.headers || {}),
476
- **@request_client.get_headers,
477
- **(request_options&.additional_headers || {})
478
- }.compact
479
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
480
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
481
- end
482
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
483
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/dlc/validate"
484
- end
485
- Pinnacle::Types::CampaignValidationResult.from_json(json_object: response.body)
486
- end
487
- end
488
- end
489
- end
490
- end