rcs 2.0.5 → 2.0.7

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 (819) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +12 -0
  3. data/.fernignore +7 -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/brands/client.rb +245 -0
  18. data/lib/pinnacle/brands/types/autofill_brand_options.rb +11 -0
  19. data/lib/pinnacle/brands/types/autofill_brand_params.rb +14 -0
  20. data/lib/pinnacle/brands/types/brands_get_request.rb +12 -0
  21. data/lib/pinnacle/brands/types/upsert_brand_params.rb +22 -0
  22. data/lib/pinnacle/brands/types/upsert_brand_schema_contact.rb +15 -0
  23. data/lib/pinnacle/brands/types/upsert_brand_schema_entity_type.rb +17 -0
  24. data/lib/pinnacle/brands/types/upsert_brand_schema_sector.rb +29 -0
  25. data/lib/pinnacle/brands/types/upsert_brand_schema_type.rb +17 -0
  26. data/lib/pinnacle/brands/types/vet_brand_params.rb +14 -0
  27. data/lib/pinnacle/campaigns/client.rb +29 -0
  28. data/lib/pinnacle/campaigns/dlc/client.rb +201 -0
  29. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_help_keywords.rb +15 -0
  30. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +16 -0
  31. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +15 -0
  32. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +15 -0
  33. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +15 -0
  34. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +19 -0
  35. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +15 -0
  36. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +23 -0
  37. data/lib/pinnacle/campaigns/rcs/client.rb +199 -0
  38. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +21 -0
  39. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +14 -0
  40. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +14 -0
  41. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +14 -0
  42. data/lib/pinnacle/campaigns/rcs/types/rcs_autofill_response.rb +13 -0
  43. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +14 -0
  44. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +15 -0
  45. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +14 -0
  46. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +14 -0
  47. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +14 -0
  48. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +15 -0
  49. data/lib/pinnacle/campaigns/rcs/types/rcs_use_case.rb +15 -0
  50. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +28 -0
  51. data/lib/pinnacle/campaigns/toll_free/client.rb +201 -0
  52. data/lib/pinnacle/campaigns/toll_free/types/toll_free_autofill_response.rb +13 -0
  53. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +14 -0
  54. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +15 -0
  55. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +15 -0
  56. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +16 -0
  57. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +15 -0
  58. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_options.rb +14 -0
  59. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +15 -0
  60. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +22 -0
  61. data/lib/pinnacle/client.rb +75 -0
  62. data/lib/pinnacle/contacts/client.rb +130 -0
  63. data/lib/pinnacle/contacts/types/contacts_get_request.rb +12 -0
  64. data/lib/pinnacle/contacts/types/create_contact_params.rb +15 -0
  65. data/lib/pinnacle/contacts/types/update_contact_params.rb +15 -0
  66. data/lib/pinnacle/conversations/client.rb +175 -0
  67. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +19 -0
  68. data/lib/pinnacle/conversations/types/conversations_list_messages_request_direction.rb +14 -0
  69. data/lib/pinnacle/conversations/types/conversations_list_messages_request_sort_order.rb +14 -0
  70. data/lib/pinnacle/conversations/types/conversations_list_messages_request_status.rb +19 -0
  71. data/lib/pinnacle/conversations/types/conversations_list_messages_request_type.rb +15 -0
  72. data/lib/pinnacle/conversations/types/list_conversations_params.rb +17 -0
  73. data/lib/pinnacle/conversations/types/update_conversation_params.rb +12 -0
  74. data/lib/pinnacle/errors/api_error.rb +8 -0
  75. data/lib/pinnacle/errors/client_error.rb +17 -0
  76. data/lib/pinnacle/errors/redirect_error.rb +8 -0
  77. data/lib/pinnacle/errors/response_error.rb +42 -0
  78. data/lib/pinnacle/errors/server_error.rb +11 -0
  79. data/lib/pinnacle/errors/timeout_error.rb +8 -0
  80. data/lib/pinnacle/internal/errors/constraint_error.rb +10 -0
  81. data/lib/pinnacle/internal/errors/type_error.rb +10 -0
  82. data/lib/pinnacle/internal/http/base_request.rb +31 -0
  83. data/lib/pinnacle/internal/http/raw_client.rb +116 -0
  84. data/lib/pinnacle/internal/iterators/cursor_item_iterator.rb +28 -0
  85. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +51 -0
  86. data/lib/pinnacle/internal/iterators/item_iterator.rb +59 -0
  87. data/lib/pinnacle/internal/iterators/offset_item_iterator.rb +30 -0
  88. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +83 -0
  89. data/lib/pinnacle/internal/json/request.rb +39 -0
  90. data/lib/pinnacle/internal/json/serializable.rb +25 -0
  91. data/lib/pinnacle/internal/multipart/multipart_encoder.rb +141 -0
  92. data/lib/pinnacle/internal/multipart/multipart_form_data.rb +78 -0
  93. data/lib/pinnacle/internal/multipart/multipart_form_data_part.rb +51 -0
  94. data/lib/pinnacle/internal/multipart/multipart_request.rb +38 -0
  95. data/lib/pinnacle/internal/types/array.rb +47 -0
  96. data/lib/pinnacle/internal/types/boolean.rb +34 -0
  97. data/lib/pinnacle/internal/types/enum.rb +56 -0
  98. data/lib/pinnacle/internal/types/hash.rb +36 -0
  99. data/lib/pinnacle/internal/types/model/field.rb +38 -0
  100. data/lib/pinnacle/internal/types/model.rb +208 -0
  101. data/lib/pinnacle/internal/types/type.rb +35 -0
  102. data/lib/pinnacle/internal/types/union.rb +161 -0
  103. data/lib/pinnacle/internal/types/unknown.rb +15 -0
  104. data/lib/pinnacle/internal/types/utils.rb +116 -0
  105. data/lib/pinnacle/messages/blast/client.rb +143 -0
  106. data/lib/pinnacle/messages/blast/types/blast_mms.rb +16 -0
  107. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +15 -0
  108. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +16 -0
  109. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +16 -0
  110. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +17 -0
  111. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +20 -0
  112. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +16 -0
  113. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +16 -0
  114. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +16 -0
  115. data/lib/pinnacle/messages/blast/types/blast_sms.rb +16 -0
  116. data/lib/pinnacle/messages/blast/types/blast_sms_options.rb +14 -0
  117. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +16 -0
  118. data/lib/pinnacle/messages/client.rb +110 -0
  119. data/lib/pinnacle/messages/mms/client.rb +87 -0
  120. data/lib/pinnacle/messages/mms/types/mms.rb +17 -0
  121. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +16 -0
  122. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +17 -0
  123. data/lib/pinnacle/messages/rcs/client.rb +140 -0
  124. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +16 -0
  125. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +15 -0
  126. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema_options.rb +14 -0
  127. data/lib/pinnacle/messages/schedule/client.rb +53 -0
  128. data/lib/pinnacle/messages/sms/client.rb +87 -0
  129. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +15 -0
  130. data/lib/pinnacle/messages/sms/types/sms.rb +16 -0
  131. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +16 -0
  132. data/lib/pinnacle/messages/types/react_message_options.rb +11 -0
  133. data/lib/pinnacle/messages/types/react_message_params.rb +13 -0
  134. data/lib/pinnacle/phone_numbers/campaign/client.rb +90 -0
  135. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +15 -0
  136. data/lib/pinnacle/phone_numbers/campaign/types/detach_campaign_params.rb +13 -0
  137. data/lib/pinnacle/phone_numbers/client.rb +133 -0
  138. data/lib/pinnacle/phone_numbers/types/buy_phone_number_params.rb +11 -0
  139. data/lib/pinnacle/phone_numbers/types/enhanced_contact_info.rb +12 -0
  140. data/lib/pinnacle/phone_numbers/types/phone_details_schema_level.rb +14 -0
  141. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +14 -0
  142. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +14 -0
  143. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +13 -0
  144. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +14 -0
  145. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +17 -0
  146. data/lib/pinnacle/phone_numbers/types/search_phone_number_options.rb +12 -0
  147. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +15 -0
  148. data/lib/pinnacle/phone_numbers/webhook/client.rb +90 -0
  149. data/lib/pinnacle/pinnacle_client.rb +24 -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 +450 -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 -456
  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 -177
  460. data/lib/rcs/audiences/types/audiences_get_response.rb +0 -58
  461. data/lib/rcs/brands/client.rb +0 -605
  462. data/lib/rcs/brands/types/autofill_brand_options.rb +0 -61
  463. data/lib/rcs/brands/types/upsert_brand_schema_contact.rb +0 -86
  464. data/lib/rcs/brands/types/upsert_brand_schema_entity_type.rb +0 -16
  465. data/lib/rcs/brands/types/upsert_brand_schema_sector.rb +0 -28
  466. data/lib/rcs/brands/types/upsert_brand_schema_type.rb +0 -16
  467. data/lib/rcs/campaigns/client.rb +0 -44
  468. data/lib/rcs/campaigns/dlc/client.rb +0 -492
  469. data/lib/rcs/campaigns/dlc/types/dlc_campaign_help_keywords.rb +0 -74
  470. data/lib/rcs/campaigns/dlc/types/dlc_campaign_keywords.rb +0 -99
  471. data/lib/rcs/campaigns/dlc/types/dlc_campaign_links.rb +0 -74
  472. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +0 -74
  473. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +0 -74
  474. data/lib/rcs/campaigns/dlc/types/dlc_campaign_options.rb +0 -110
  475. data/lib/rcs/campaigns/dlc/types/dlc_campaign_use_case.rb +0 -76
  476. data/lib/rcs/campaigns/rcs/client.rb +0 -566
  477. data/lib/rcs/campaigns/rcs/types/rcs_agent.rb +0 -152
  478. data/lib/rcs/campaigns/rcs/types/rcs_agent_email.rb +0 -73
  479. data/lib/rcs/campaigns/rcs/types/rcs_agent_phone.rb +0 -73
  480. data/lib/rcs/campaigns/rcs/types/rcs_agent_website.rb +0 -73
  481. data/lib/rcs/campaigns/rcs/types/rcs_autofill_response.rb +0 -246
  482. data/lib/rcs/campaigns/rcs/types/rcs_campaign_help_keywords.rb +0 -77
  483. data/lib/rcs/campaigns/rcs/types/rcs_campaign_keywords.rb +0 -98
  484. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +0 -87
  485. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +0 -83
  486. data/lib/rcs/campaigns/rcs/types/rcs_campaign_traffic.rb +0 -76
  487. data/lib/rcs/campaigns/rcs/types/rcs_links.rb +0 -74
  488. data/lib/rcs/campaigns/rcs/types/rcs_use_case.rb +0 -75
  489. data/lib/rcs/campaigns/toll_free/client.rb +0 -478
  490. data/lib/rcs/campaigns/toll_free/types/toll_free_autofill_response.rb +0 -172
  491. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +0 -66
  492. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_keywords.rb +0 -86
  493. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_links.rb +0 -74
  494. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +0 -86
  495. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +0 -78
  496. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_options.rb +0 -64
  497. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_use_case.rb +0 -75
  498. data/lib/rcs/contacts/client.rb +0 -277
  499. data/lib/rcs/conversations/client.rb +0 -401
  500. data/lib/rcs/conversations/types/conversations_list_messages_request_direction.rb +0 -12
  501. data/lib/rcs/conversations/types/conversations_list_messages_request_sort_order.rb +0 -12
  502. data/lib/rcs/conversations/types/conversations_list_messages_request_status.rb +0 -17
  503. data/lib/rcs/conversations/types/conversations_list_messages_request_type.rb +0 -13
  504. data/lib/rcs/messages/blast/client.rb +0 -425
  505. data/lib/rcs/messages/blast/types/blast_mms_options.rb +0 -82
  506. data/lib/rcs/messages/blast/types/blast_mms_response.rb +0 -60
  507. data/lib/rcs/messages/blast/types/blast_rcs_options.rb +0 -118
  508. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card.rb +0 -82
  509. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +0 -16
  510. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +0 -15
  511. data/lib/rcs/messages/blast/types/blast_rcs_response.rb +0 -60
  512. data/lib/rcs/messages/blast/types/blast_sms_options.rb +0 -70
  513. data/lib/rcs/messages/blast/types/blast_sms_response.rb +0 -60
  514. data/lib/rcs/messages/client.rb +0 -189
  515. data/lib/rcs/messages/mms/client.rb +0 -216
  516. data/lib/rcs/messages/mms/types/mms_send_response.rb +0 -60
  517. data/lib/rcs/messages/mms/types/send_mms_options.rb +0 -108
  518. data/lib/rcs/messages/rcs/client.rb +0 -286
  519. data/lib/rcs/messages/rcs/types/send_rich_message_response.rb +0 -60
  520. data/lib/rcs/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -66
  521. data/lib/rcs/messages/schedule/client.rb +0 -103
  522. data/lib/rcs/messages/sms/client.rb +0 -198
  523. data/lib/rcs/messages/sms/types/send_sms_options.rb +0 -81
  524. data/lib/rcs/messages/sms/types/sms_send_response.rb +0 -60
  525. data/lib/rcs/messages/types/react_message_options.rb +0 -71
  526. data/lib/rcs/phone_numbers/campaign/client.rb +0 -197
  527. data/lib/rcs/phone_numbers/client.rb +0 -345
  528. data/lib/rcs/phone_numbers/types/enhanced_contact_info.rb +0 -62
  529. data/lib/rcs/phone_numbers/types/phone_details_schema_level.rb +0 -16
  530. data/lib/rcs/phone_numbers/types/phone_numbers_get_response.rb +0 -58
  531. data/lib/rcs/phone_numbers/types/retrieve_phone_number_details_options.rb +0 -93
  532. data/lib/rcs/phone_numbers/types/search_phone_number_by_digits.rb +0 -81
  533. data/lib/rcs/phone_numbers/types/search_phone_number_by_location.rb +0 -96
  534. data/lib/rcs/phone_numbers/types/search_phone_number_options.rb +0 -62
  535. data/lib/rcs/phone_numbers/webhook/client.rb +0 -193
  536. data/lib/rcs/rcs/client.rb +0 -332
  537. data/lib/rcs/status/client.rb +0 -30
  538. data/lib/rcs/status/get/client.rb +0 -383
  539. data/lib/rcs/tools/client.rb +0 -44
  540. data/lib/rcs/tools/contact_card/client.rb +0 -295
  541. data/lib/rcs/tools/contact_card/types/get_v_card_schema_options.rb +0 -67
  542. data/lib/rcs/tools/file/client.rb +0 -228
  543. data/lib/rcs/tools/file/types/download_options.rb +0 -66
  544. data/lib/rcs/tools/file/types/upload_file_options.rb +0 -88
  545. data/lib/rcs/tools/url/client.rb +0 -247
  546. data/lib/rcs/types/advanced_phone_information.rb +0 -147
  547. data/lib/rcs/types/advanced_phone_information_carrier.rb +0 -90
  548. data/lib/rcs/types/advanced_phone_information_contact.rb +0 -146
  549. data/lib/rcs/types/advanced_phone_information_location.rb +0 -142
  550. data/lib/rcs/types/advanced_phone_information_location_coordinates.rb +0 -73
  551. data/lib/rcs/types/advanced_phone_information_location_country.rb +0 -77
  552. data/lib/rcs/types/advanced_phone_information_type.rb +0 -97
  553. data/lib/rcs/types/advanced_phone_information_type_recommendation.rb +0 -15
  554. data/lib/rcs/types/agent.rb +0 -68
  555. data/lib/rcs/types/attach_webhook_by_id_params.rb +0 -77
  556. data/lib/rcs/types/attach_webhook_params.rb +0 -60
  557. data/lib/rcs/types/attach_webhook_response_webhook.rb +0 -88
  558. data/lib/rcs/types/attached_phone_number_result.rb +0 -75
  559. data/lib/rcs/types/audience_count_only.rb +0 -87
  560. data/lib/rcs/types/audience_with_pagination.rb +0 -114
  561. data/lib/rcs/types/autofill_campaign_params.rb +0 -81
  562. data/lib/rcs/types/autofill_dlc_campaign_response.rb +0 -173
  563. data/lib/rcs/types/autofill_dlc_response_keywords.rb +0 -93
  564. data/lib/rcs/types/autofill_dlc_response_keywords_help.rb +0 -70
  565. data/lib/rcs/types/autofill_dlc_response_keywords_opt_in.rb +0 -70
  566. data/lib/rcs/types/autofill_dlc_response_keywords_opt_out.rb +0 -70
  567. data/lib/rcs/types/autofill_dlc_response_links.rb +0 -70
  568. data/lib/rcs/types/autofill_dlc_response_options.rb +0 -106
  569. data/lib/rcs/types/autofill_dlc_response_use_case.rb +0 -72
  570. data/lib/rcs/types/bad_request_error_body.rb +0 -56
  571. data/lib/rcs/types/base_rich_message.rb +0 -82
  572. data/lib/rcs/types/basic_phone_information.rb +0 -127
  573. data/lib/rcs/types/basic_phone_information_contact.rb +0 -58
  574. data/lib/rcs/types/basic_phone_information_location.rb +0 -74
  575. data/lib/rcs/types/basic_phone_information_location_country.rb +0 -75
  576. data/lib/rcs/types/blast_details.rb +0 -110
  577. data/lib/rcs/types/brand_status.rb +0 -94
  578. data/lib/rcs/types/brand_status_enum.rb +0 -21
  579. data/lib/rcs/types/button_clicked.rb +0 -56
  580. data/lib/rcs/types/button_clicked_data.rb +0 -80
  581. data/lib/rcs/types/button_clicked_data_button.rb +0 -118
  582. data/lib/rcs/types/button_clicked_data_button_raw.rb +0 -58
  583. data/lib/rcs/types/button_clicked_data_button_type.rb +0 -15
  584. data/lib/rcs/types/buy_response_capabilities.rb +0 -77
  585. data/lib/rcs/types/campaign_enum.rb +0 -15
  586. data/lib/rcs/types/campaign_query.rb +0 -77
  587. data/lib/rcs/types/campaign_submission_result.rb +0 -57
  588. data/lib/rcs/types/campaign_validation_response_errors_item.rb +0 -76
  589. data/lib/rcs/types/campaign_validation_result.rb +0 -71
  590. data/lib/rcs/types/company_entity_type_enum.rb +0 -14
  591. data/lib/rcs/types/company_sector_enum.rb +0 -26
  592. data/lib/rcs/types/company_type_enum.rb +0 -14
  593. data/lib/rcs/types/configured_webhook.rb +0 -85
  594. data/lib/rcs/types/contact.rb +0 -107
  595. data/lib/rcs/types/contact_id.rb +0 -59
  596. data/lib/rcs/types/conversation.rb +0 -154
  597. data/lib/rcs/types/conversation_by_id_params.rb +0 -62
  598. data/lib/rcs/types/conversation_by_participants_params.rb +0 -72
  599. data/lib/rcs/types/conversation_contact.rb +0 -70
  600. data/lib/rcs/types/conversation_list.rb +0 -79
  601. data/lib/rcs/types/conversation_sender.rb +0 -60
  602. data/lib/rcs/types/create_and_attach_webhook_by_url_params.rb +0 -88
  603. data/lib/rcs/types/create_url_options.rb +0 -63
  604. data/lib/rcs/types/delete_audience_response.rb +0 -57
  605. data/lib/rcs/types/detached_phone_number_result.rb +0 -75
  606. data/lib/rcs/types/detached_webhook_info.rb +0 -76
  607. data/lib/rcs/types/detailed_phone_number_enum.rb +0 -25
  608. data/lib/rcs/types/dlc_assignment_status_enum.rb +0 -19
  609. data/lib/rcs/types/dlc_campaign_status.rb +0 -109
  610. data/lib/rcs/types/dlc_campaign_use_case_enum.rb +0 -35
  611. data/lib/rcs/types/dlc_campaign_with_extended_brand_and_status.rb +0 -224
  612. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords.rb +0 -94
  613. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_help.rb +0 -72
  614. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +0 -72
  615. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +0 -72
  616. data/lib/rcs/types/dlc_with_extended_brand_and_status_links.rb +0 -70
  617. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +0 -15
  618. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +0 -22
  619. data/lib/rcs/types/dlc_with_extended_brand_and_status_options.rb +0 -106
  620. data/lib/rcs/types/dlc_with_extended_brand_and_status_use_case.rb +0 -72
  621. data/lib/rcs/types/enhanced_contact.rb +0 -9
  622. data/lib/rcs/types/enhanced_contact_item.rb +0 -104
  623. data/lib/rcs/types/error.rb +0 -61
  624. data/lib/rcs/types/extended_brand.rb +0 -215
  625. data/lib/rcs/types/extended_brand_with_vetting.rb +0 -247
  626. data/lib/rcs/types/extended_rcs_campaign.rb +0 -267
  627. data/lib/rcs/types/get_conversation_params.rb +0 -57
  628. data/lib/rcs/types/get_dlc_campaign_status_response_updates.rb +0 -96
  629. data/lib/rcs/types/get_toll_free_campaign_status_response_updates.rb +0 -92
  630. data/lib/rcs/types/link_click_event.rb +0 -449
  631. data/lib/rcs/types/location_share_action.rb +0 -63
  632. data/lib/rcs/types/location_share_action_data.rb +0 -89
  633. data/lib/rcs/types/message.rb +0 -176
  634. data/lib/rcs/types/message_content.rb +0 -85
  635. data/lib/rcs/types/message_event.rb +0 -143
  636. data/lib/rcs/types/message_event_content.rb +0 -127
  637. data/lib/rcs/types/message_event_conversation.rb +0 -82
  638. data/lib/rcs/types/message_event_direction.rb +0 -11
  639. data/lib/rcs/types/message_event_mms_content.rb +0 -94
  640. data/lib/rcs/types/message_event_rcs_button_data.rb +0 -104
  641. data/lib/rcs/types/message_event_rcs_cards_content.rb +0 -103
  642. data/lib/rcs/types/message_event_rcs_cards_content_cards_item.rb +0 -96
  643. data/lib/rcs/types/message_event_rcs_location_data.rb +0 -91
  644. data/lib/rcs/types/message_event_rcs_media_content.rb +0 -96
  645. data/lib/rcs/types/message_event_rcs_text_content.rb +0 -94
  646. data/lib/rcs/types/message_event_sms_content.rb +0 -81
  647. data/lib/rcs/types/message_list.rb +0 -79
  648. data/lib/rcs/types/message_method_enum.rb +0 -12
  649. data/lib/rcs/types/message_protocol_enum.rb +0 -12
  650. data/lib/rcs/types/message_schedule.rb +0 -121
  651. data/lib/rcs/types/message_status_enum.rb +0 -17
  652. data/lib/rcs/types/message_volume_enum.rb +0 -20
  653. data/lib/rcs/types/message_with_reaction.rb +0 -197
  654. data/lib/rcs/types/message_with_reaction_direction.rb +0 -11
  655. data/lib/rcs/types/messaging_profile_enum.rb +0 -11
  656. data/lib/rcs/types/mms_content.rb +0 -74
  657. data/lib/rcs/types/mms_validation_response_segments.rb +0 -85
  658. data/lib/rcs/types/mms_validation_response_segments_value_item.rb +0 -75
  659. data/lib/rcs/types/mms_validation_result.rb +0 -82
  660. data/lib/rcs/types/not_found_error_body.rb +0 -59
  661. data/lib/rcs/types/number_format.rb +0 -79
  662. data/lib/rcs/types/opt_in_method_enum.rb +0 -13
  663. data/lib/rcs/types/optional_brand_info.rb +0 -154
  664. data/lib/rcs/types/optional_contact.rb +0 -83
  665. data/lib/rcs/types/optional_contacts.rb +0 -84
  666. data/lib/rcs/types/pagination.rb +0 -81
  667. data/lib/rcs/types/phone.rb +0 -101
  668. data/lib/rcs/types/phone_capabilities.rb +0 -75
  669. data/lib/rcs/types/phone_enum.rb +0 -13
  670. data/lib/rcs/types/phone_feature_enum.rb +0 -18
  671. data/lib/rcs/types/phone_number_campaign_attach_failed_item.rb +0 -67
  672. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item.rb +0 -75
  673. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +0 -82
  674. data/lib/rcs/types/phone_number_campaign_detach_failed_item.rb +0 -67
  675. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item.rb +0 -75
  676. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +0 -82
  677. data/lib/rcs/types/phone_number_cost.rb +0 -75
  678. data/lib/rcs/types/phone_number_details.rb +0 -110
  679. data/lib/rcs/types/phone_number_enum.rb +0 -18
  680. data/lib/rcs/types/phone_number_region.rb +0 -91
  681. data/lib/rcs/types/phone_number_status.rb +0 -90
  682. data/lib/rcs/types/phone_number_status_enum.rb +0 -16
  683. data/lib/rcs/types/pinnacle_file_upload_metadata.rb +0 -100
  684. data/lib/rcs/types/pinnacle_url_config.rb +0 -71
  685. data/lib/rcs/types/profile_status_enum.rb +0 -17
  686. data/lib/rcs/types/purchased_number.rb +0 -75
  687. data/lib/rcs/types/rcs_button_call.rb +0 -77
  688. data/lib/rcs/types/rcs_button_open_url.rb +0 -104
  689. data/lib/rcs/types/rcs_button_open_url_webview_mode.rb +0 -19
  690. data/lib/rcs/types/rcs_button_request_user_location.rb +0 -70
  691. data/lib/rcs/types/rcs_button_schedule_event.rb +0 -106
  692. data/lib/rcs/types/rcs_button_send_location.rb +0 -94
  693. data/lib/rcs/types/rcs_button_send_location_lat_long.rb +0 -68
  694. data/lib/rcs/types/rcs_button_trigger.rb +0 -80
  695. data/lib/rcs/types/rcs_campaign.rb +0 -234
  696. data/lib/rcs/types/rcs_campaign_schema_agent.rb +0 -134
  697. data/lib/rcs/types/rcs_campaign_schema_agent_emails_item.rb +0 -69
  698. data/lib/rcs/types/rcs_campaign_schema_agent_phones_item.rb +0 -69
  699. data/lib/rcs/types/rcs_campaign_schema_agent_websites_item.rb +0 -69
  700. data/lib/rcs/types/rcs_campaign_schema_extra_agent.rb +0 -134
  701. data/lib/rcs/types/rcs_campaign_schema_extra_agent_emails_item.rb +0 -70
  702. data/lib/rcs/types/rcs_campaign_schema_extra_agent_phones_item.rb +0 -70
  703. data/lib/rcs/types/rcs_campaign_schema_extra_agent_websites_item.rb +0 -71
  704. data/lib/rcs/types/rcs_campaign_schema_extra_keywords.rb +0 -94
  705. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_help.rb +0 -71
  706. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_in.rb +0 -73
  707. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_out.rb +0 -73
  708. data/lib/rcs/types/rcs_campaign_schema_extra_links.rb +0 -70
  709. data/lib/rcs/types/rcs_campaign_schema_extra_traffic.rb +0 -72
  710. data/lib/rcs/types/rcs_campaign_schema_extra_use_case.rb +0 -71
  711. data/lib/rcs/types/rcs_campaign_schema_keywords.rb +0 -94
  712. data/lib/rcs/types/rcs_campaign_schema_keywords_help.rb +0 -71
  713. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_in.rb +0 -73
  714. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_out.rb +0 -73
  715. data/lib/rcs/types/rcs_campaign_schema_links.rb +0 -70
  716. data/lib/rcs/types/rcs_campaign_schema_traffic.rb +0 -72
  717. data/lib/rcs/types/rcs_campaign_schema_use_case.rb +0 -71
  718. data/lib/rcs/types/rcs_campaign_status.rb +0 -88
  719. data/lib/rcs/types/rcs_campaign_use_case_enum.rb +0 -23
  720. data/lib/rcs/types/rcs_capabilities_result.rb +0 -7
  721. data/lib/rcs/types/rcs_capability.rb +0 -82
  722. data/lib/rcs/types/rcs_capability_actions.rb +0 -105
  723. data/lib/rcs/types/rcs_capability_cards.rb +0 -67
  724. data/lib/rcs/types/rcs_cards_content.rb +0 -83
  725. data/lib/rcs/types/rcs_cards_content_cards_item.rb +0 -98
  726. data/lib/rcs/types/rcs_content.rb +0 -72
  727. data/lib/rcs/types/rcs_link_result.rb +0 -75
  728. data/lib/rcs/types/rcs_media_content.rb +0 -83
  729. data/lib/rcs/types/rcs_media_details_content.rb +0 -77
  730. data/lib/rcs/types/rcs_messaging_type_enum.rb +0 -17
  731. data/lib/rcs/types/rcs_validate_content.rb +0 -70
  732. data/lib/rcs/types/rcs_validate_content_media.rb +0 -75
  733. data/lib/rcs/types/rcs_validation_result.rb +0 -83
  734. data/lib/rcs/types/rcs_whitelist_response.rb +0 -58
  735. data/lib/rcs/types/reaction_result.rb +0 -71
  736. data/lib/rcs/types/refreshed_file.rb +0 -67
  737. data/lib/rcs/types/rich_button.rb +0 -148
  738. data/lib/rcs/types/rich_card.rb +0 -92
  739. data/lib/rcs/types/rich_cards.rb +0 -83
  740. data/lib/rcs/types/rich_cards_message.rb +0 -114
  741. data/lib/rcs/types/rich_media_message.rb +0 -112
  742. data/lib/rcs/types/rich_message.rb +0 -70
  743. data/lib/rcs/types/rich_standalone_card_options.rb +0 -80
  744. data/lib/rcs/types/rich_text.rb +0 -74
  745. data/lib/rcs/types/rich_text_message.rb +0 -108
  746. data/lib/rcs/types/schedule_cancel_result.rb +0 -58
  747. data/lib/rcs/types/scheduled_blast_details.rb +0 -76
  748. data/lib/rcs/types/scheduled_blast_response_config.rb +0 -89
  749. data/lib/rcs/types/scheduled_message.rb +0 -75
  750. data/lib/rcs/types/scheduled_send_response_config.rb +0 -89
  751. data/lib/rcs/types/send_rcs_card_options_standalone_card_image_alignment.rb +0 -12
  752. data/lib/rcs/types/send_rcs_card_options_standalone_card_orientation.rb +0 -11
  753. data/lib/rcs/types/send_rich_cards_options.rb +0 -136
  754. data/lib/rcs/types/send_rich_message_options.rb +0 -111
  755. data/lib/rcs/types/send_sms_response_segments.rb +0 -69
  756. data/lib/rcs/types/send_sms_response_segments_encoding.rb +0 -11
  757. data/lib/rcs/types/send_typing_indicator_response.rb +0 -100
  758. data/lib/rcs/types/sent_mms_details.rb +0 -118
  759. data/lib/rcs/types/sent_rich_message.rb +0 -104
  760. data/lib/rcs/types/sent_sms_details.rb +0 -110
  761. data/lib/rcs/types/shortened_url.rb +0 -77
  762. data/lib/rcs/types/shortened_url_with_click_data.rb +0 -90
  763. data/lib/rcs/types/sms_content.rb +0 -58
  764. data/lib/rcs/types/sms_validation_response_segments.rb +0 -80
  765. data/lib/rcs/types/sms_validation_response_segments_gsm_7.rb +0 -75
  766. data/lib/rcs/types/sms_validation_response_segments_utf_16.rb +0 -68
  767. data/lib/rcs/types/sms_validation_response_total.rb +0 -75
  768. data/lib/rcs/types/sms_validation_result.rb +0 -102
  769. data/lib/rcs/types/sub_use_case_enum.rb +0 -19
  770. data/lib/rcs/types/submission_results.rb +0 -57
  771. data/lib/rcs/types/successful_conversation_update.rb +0 -58
  772. data/lib/rcs/types/toll_free_campaign.rb +0 -160
  773. data/lib/rcs/types/toll_free_campaign_schema_keywords.rb +0 -82
  774. data/lib/rcs/types/toll_free_campaign_schema_keywords_help.rb +0 -62
  775. data/lib/rcs/types/toll_free_campaign_schema_keywords_opt_in.rb +0 -74
  776. data/lib/rcs/types/toll_free_campaign_schema_links.rb +0 -70
  777. data/lib/rcs/types/toll_free_campaign_schema_opt_in.rb +0 -78
  778. data/lib/rcs/types/toll_free_campaign_schema_options.rb +0 -60
  779. data/lib/rcs/types/toll_free_campaign_schema_use_case.rb +0 -71
  780. data/lib/rcs/types/toll_free_campaign_status.rb +0 -93
  781. data/lib/rcs/types/toll_free_campaign_use_case_enum.rb +0 -52
  782. data/lib/rcs/types/toll_free_campaign_with_extended_brand_and_status.rb +0 -195
  783. data/lib/rcs/types/toll_free_status_enum.rb +0 -20
  784. data/lib/rcs/types/tracking.rb +0 -17
  785. data/lib/rcs/types/updated_contact_id.rb +0 -59
  786. data/lib/rcs/types/upload_results.rb +0 -80
  787. data/lib/rcs/types/user_event.rb +0 -83
  788. data/lib/rcs/types/user_event_conversation.rb +0 -78
  789. data/lib/rcs/types/v_card_address_schema_type_item.rb +0 -15
  790. data/lib/rcs/types/v_card_data.rb +0 -239
  791. data/lib/rcs/types/v_card_data_file.rb +0 -74
  792. data/lib/rcs/types/v_card_data_file_metadata.rb +0 -62
  793. data/lib/rcs/types/v_card_email_schema_type_item.rb +0 -21
  794. data/lib/rcs/types/v_card_geo.rb +0 -70
  795. data/lib/rcs/types/v_card_name.rb +0 -98
  796. data/lib/rcs/types/v_card_organization.rb +0 -70
  797. data/lib/rcs/types/v_card_phone_schema_type_item.rb +0 -21
  798. data/lib/rcs/types/validate_campaign_params.rb +0 -81
  799. data/lib/rcs/types/validation_error_details.rb +0 -76
  800. data/lib/rcs/types/validation_results.rb +0 -71
  801. data/lib/rcs/types/vcard.rb +0 -217
  802. data/lib/rcs/types/vcard_address.rb +0 -130
  803. data/lib/rcs/types/vcard_content.rb +0 -225
  804. data/lib/rcs/types/vcard_email.rb +0 -70
  805. data/lib/rcs/types/vcard_phone.rb +0 -70
  806. data/lib/rcs/types/vcard_resource.rb +0 -73
  807. data/lib/rcs/types/vetting_feedback.rb +0 -81
  808. data/lib/rcs/types/vetting_history.rb +0 -98
  809. data/lib/rcs/types/vetting_history_vetting_status.rb +0 -13
  810. data/lib/rcs/types/vetting_results.rb +0 -57
  811. data/lib/rcs/types/webhook_event_enum.rb +0 -14
  812. data/lib/rcs/types/webhook_result.rb +0 -64
  813. data/lib/rcs/types/webhooks.rb +0 -77
  814. data/lib/rcs/types/zod_error.rb +0 -73
  815. data/lib/rcs/webhooks/client.rb +0 -97
  816. data/lib/rcs.rb +0 -124
  817. data/lib/requests.rb +0 -163
  818. data/lib/types_export.rb +0 -334
  819. /data/lib/{environment.rb → pinnacle/environment.rb} +0 -0
@@ -1,332 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../requests"
4
- require_relative "../types/rcs_capabilities_result"
5
- require "json"
6
- require_relative "../types/rcs_whitelist_response"
7
- require_relative "../types/rcs_link_result"
8
- require "async"
9
-
10
- module Pinnacle
11
- class RcsClient
12
- # @return [Pinnacle::RequestClient]
13
- attr_reader :request_client
14
-
15
- # @param request_client [Pinnacle::RequestClient]
16
- # @return [Pinnacle::RcsClient]
17
- def initialize(request_client:)
18
- @request_client = request_client
19
- end
20
-
21
- # Check RCS capabilities for one or more phone numbers.
22
- # This endpoint allows you to verify which RCS features (cards, buttons, etc.) are
23
- # supported
24
- # on specific phone numbers before sending RCS messages to them.
25
- #
26
- # @param phone_numbers [Array<String>] List of phone numbers to check RCS capabilities for (E.164 format). <br><br>
27
- # **Limit:** 1 min
28
- # @param request_options [Pinnacle::RequestOptions]
29
- # @return [Pinnacle::Types::RCS_CAPABILITIES_RESULT]
30
- # @example
31
- # api = Pinnacle::Client.new(
32
- # base_url: "https://api.example.com",
33
- # environment: Pinnacle::Environment::DEFAULT,
34
- # api_key: "YOUR_API_KEY"
35
- # )
36
- # api.rcs.get_capabilities(phone_numbers: ["+12345678901", "+19876543210"])
37
- def get_capabilities(phone_numbers:, request_options: nil)
38
- response = @request_client.conn.post do |req|
39
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
40
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
41
- req.headers = {
42
- **(req.headers || {}),
43
- **@request_client.get_headers,
44
- **(request_options&.additional_headers || {})
45
- }.compact
46
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
47
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
48
- end
49
- req.body = { **(request_options&.additional_body_parameters || {}), phoneNumbers: phone_numbers }.compact
50
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/capabilities"
51
- end
52
- parsed_json = JSON.parse(response.body)
53
- parsed_json&.transform_values do |value|
54
- value = value.to_json
55
- Pinnacle::Types::RcsCapability.from_json(json_object: value)
56
- end
57
- end
58
-
59
- # Whitelist a phone number for testing with your test RCS agent.
60
- # ## Overview
61
- # During development and testing, RCS agents can only send messages to whitelisted
62
- # phone numbers.
63
- # Use this endpoint to whitelist specific phone numbers to send and receive
64
- # messages from the test agent.
65
- # ## Verification Process
66
- # After whitelisting a number, you'll need to complete verification:
67
- # 1. Check the test device for message from "RBM Tester Management"
68
- # 2. Click the "Make me a tester" button
69
- # 3. Enter the separate 4-digit verification SMS code in the Pinnacle dashboard
70
- # at:
71
- # ```
72
- # .pinnacle.sh/dashboard/brands/{brandId}?campaignId={campaignId}&campaignType=RCS
73
- # ```
74
- # > **⚠️ Important: Re-whitelisting Numbers**
75
- # >
76
- # > If you whitelist a number that's already whitelisted, you'll receive a new
77
- # message from "RBM Tester Management". **You must click the "Make me a tester"
78
- # button again to continue sending and receiving messages.**
79
- # > **Important Notes**
80
- # >
81
- # > - **Verification required:** Messages cannot be sent nor received until you
82
- # have clicked the "Make me a tester" button on the test device.
83
- # > - **Testing only:** This is only required for test agents. Production agents
84
- # can message any RCS-enabled number.
85
- # > - **Network limitations:** Whitelisting may be temporarily unavailable for
86
- # some carriers but are usually restored shortly.
87
- #
88
- # @param agent_id [String] The RCS agent ID (must be prefixed with 'agent_')
89
- # @param phone_number [String] Phone number to whitelist for testing (E.164 format)
90
- # @param request_options [Pinnacle::RequestOptions]
91
- # @return [Pinnacle::Types::RcsWhitelistResponse]
92
- # @example
93
- # api = Pinnacle::Client.new(
94
- # base_url: "https://api.example.com",
95
- # environment: Pinnacle::Environment::DEFAULT,
96
- # api_key: "YOUR_API_KEY"
97
- # )
98
- # api.rcs.whitelist(agent_id: "agent_XXXXXXXXXXXX", phone_number: "+12345678901")
99
- def whitelist(agent_id:, phone_number:, request_options: nil)
100
- response = @request_client.conn.post do |req|
101
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
102
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
103
- req.headers = {
104
- **(req.headers || {}),
105
- **@request_client.get_headers,
106
- **(request_options&.additional_headers || {})
107
- }.compact
108
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
109
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
110
- end
111
- req.body = {
112
- **(request_options&.additional_body_parameters || {}),
113
- agentId: agent_id,
114
- phoneNumber: phone_number
115
- }.compact
116
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/whitelist"
117
- end
118
- Pinnacle::Types::RcsWhitelistResponse.from_json(json_object: response.body)
119
- end
120
-
121
- # Generate a link for initiating an RCS conversation with your agent.
122
- # Users can click these links to start conversations with your RCS agent directly
123
- # from websites, emails, or other applications.
124
- #
125
- # @param agent_id [String] The RCS agent ID (must be prefixed with 'agent_')
126
- # @param test_mode [Boolean] Link to the test agent or the production agent if false
127
- # @param phone_number [String] Fallback phone number (E.164 format) to use if the phone number does not support
128
- # RCS. If not provided, no url will be generated.
129
- # @param body [String] Optional message body to pre-fill after the user clicks the link
130
- # @param request_options [Pinnacle::RequestOptions]
131
- # @return [Pinnacle::Types::RcsLinkResult]
132
- # @example
133
- # api = Pinnacle::Client.new(
134
- # base_url: "https://api.example.com",
135
- # environment: Pinnacle::Environment::DEFAULT,
136
- # api_key: "YOUR_API_KEY"
137
- # )
138
- # api.rcs.get_link(
139
- # agent_id: "agent_XXXXXXXXXXXX",
140
- # test_mode: false,
141
- # phone_number: "+12345678901",
142
- # body: "Hello, I need help with my order"
143
- # )
144
- def get_link(agent_id:, test_mode: nil, phone_number: nil, body: nil, request_options: nil)
145
- response = @request_client.conn.post do |req|
146
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
147
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
148
- req.headers = {
149
- **(req.headers || {}),
150
- **@request_client.get_headers,
151
- **(request_options&.additional_headers || {})
152
- }.compact
153
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
154
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
155
- end
156
- req.body = {
157
- **(request_options&.additional_body_parameters || {}),
158
- agentId: agent_id,
159
- testMode: test_mode,
160
- phoneNumber: phone_number,
161
- body: body
162
- }.compact
163
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/link"
164
- end
165
- Pinnacle::Types::RcsLinkResult.from_json(json_object: response.body)
166
- end
167
- end
168
-
169
- class AsyncRcsClient
170
- # @return [Pinnacle::AsyncRequestClient]
171
- attr_reader :request_client
172
-
173
- # @param request_client [Pinnacle::AsyncRequestClient]
174
- # @return [Pinnacle::AsyncRcsClient]
175
- def initialize(request_client:)
176
- @request_client = request_client
177
- end
178
-
179
- # Check RCS capabilities for one or more phone numbers.
180
- # This endpoint allows you to verify which RCS features (cards, buttons, etc.) are
181
- # supported
182
- # on specific phone numbers before sending RCS messages to them.
183
- #
184
- # @param phone_numbers [Array<String>] List of phone numbers to check RCS capabilities for (E.164 format). <br><br>
185
- # **Limit:** 1 min
186
- # @param request_options [Pinnacle::RequestOptions]
187
- # @return [Pinnacle::Types::RCS_CAPABILITIES_RESULT]
188
- # @example
189
- # api = Pinnacle::Client.new(
190
- # base_url: "https://api.example.com",
191
- # environment: Pinnacle::Environment::DEFAULT,
192
- # api_key: "YOUR_API_KEY"
193
- # )
194
- # api.rcs.get_capabilities(phone_numbers: ["+12345678901", "+19876543210"])
195
- def get_capabilities(phone_numbers:, request_options: nil)
196
- Async do
197
- response = @request_client.conn.post do |req|
198
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
199
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
200
- req.headers = {
201
- **(req.headers || {}),
202
- **@request_client.get_headers,
203
- **(request_options&.additional_headers || {})
204
- }.compact
205
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
206
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
207
- end
208
- req.body = { **(request_options&.additional_body_parameters || {}), phoneNumbers: phone_numbers }.compact
209
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/capabilities"
210
- end
211
- parsed_json = JSON.parse(response.body)
212
- parsed_json&.transform_values do |value|
213
- value = value.to_json
214
- Pinnacle::Types::RcsCapability.from_json(json_object: value)
215
- end
216
- end
217
- end
218
-
219
- # Whitelist a phone number for testing with your test RCS agent.
220
- # ## Overview
221
- # During development and testing, RCS agents can only send messages to whitelisted
222
- # phone numbers.
223
- # Use this endpoint to whitelist specific phone numbers to send and receive
224
- # messages from the test agent.
225
- # ## Verification Process
226
- # After whitelisting a number, you'll need to complete verification:
227
- # 1. Check the test device for message from "RBM Tester Management"
228
- # 2. Click the "Make me a tester" button
229
- # 3. Enter the separate 4-digit verification SMS code in the Pinnacle dashboard
230
- # at:
231
- # ```
232
- # .pinnacle.sh/dashboard/brands/{brandId}?campaignId={campaignId}&campaignType=RCS
233
- # ```
234
- # > **⚠️ Important: Re-whitelisting Numbers**
235
- # >
236
- # > If you whitelist a number that's already whitelisted, you'll receive a new
237
- # message from "RBM Tester Management". **You must click the "Make me a tester"
238
- # button again to continue sending and receiving messages.**
239
- # > **Important Notes**
240
- # >
241
- # > - **Verification required:** Messages cannot be sent nor received until you
242
- # have clicked the "Make me a tester" button on the test device.
243
- # > - **Testing only:** This is only required for test agents. Production agents
244
- # can message any RCS-enabled number.
245
- # > - **Network limitations:** Whitelisting may be temporarily unavailable for
246
- # some carriers but are usually restored shortly.
247
- #
248
- # @param agent_id [String] The RCS agent ID (must be prefixed with 'agent_')
249
- # @param phone_number [String] Phone number to whitelist for testing (E.164 format)
250
- # @param request_options [Pinnacle::RequestOptions]
251
- # @return [Pinnacle::Types::RcsWhitelistResponse]
252
- # @example
253
- # api = Pinnacle::Client.new(
254
- # base_url: "https://api.example.com",
255
- # environment: Pinnacle::Environment::DEFAULT,
256
- # api_key: "YOUR_API_KEY"
257
- # )
258
- # api.rcs.whitelist(agent_id: "agent_XXXXXXXXXXXX", phone_number: "+12345678901")
259
- def whitelist(agent_id:, phone_number:, request_options: nil)
260
- Async do
261
- response = @request_client.conn.post do |req|
262
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
263
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
264
- req.headers = {
265
- **(req.headers || {}),
266
- **@request_client.get_headers,
267
- **(request_options&.additional_headers || {})
268
- }.compact
269
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
270
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
271
- end
272
- req.body = {
273
- **(request_options&.additional_body_parameters || {}),
274
- agentId: agent_id,
275
- phoneNumber: phone_number
276
- }.compact
277
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/whitelist"
278
- end
279
- Pinnacle::Types::RcsWhitelistResponse.from_json(json_object: response.body)
280
- end
281
- end
282
-
283
- # Generate a link for initiating an RCS conversation with your agent.
284
- # Users can click these links to start conversations with your RCS agent directly
285
- # from websites, emails, or other applications.
286
- #
287
- # @param agent_id [String] The RCS agent ID (must be prefixed with 'agent_')
288
- # @param test_mode [Boolean] Link to the test agent or the production agent if false
289
- # @param phone_number [String] Fallback phone number (E.164 format) to use if the phone number does not support
290
- # RCS. If not provided, no url will be generated.
291
- # @param body [String] Optional message body to pre-fill after the user clicks the link
292
- # @param request_options [Pinnacle::RequestOptions]
293
- # @return [Pinnacle::Types::RcsLinkResult]
294
- # @example
295
- # api = Pinnacle::Client.new(
296
- # base_url: "https://api.example.com",
297
- # environment: Pinnacle::Environment::DEFAULT,
298
- # api_key: "YOUR_API_KEY"
299
- # )
300
- # api.rcs.get_link(
301
- # agent_id: "agent_XXXXXXXXXXXX",
302
- # test_mode: false,
303
- # phone_number: "+12345678901",
304
- # body: "Hello, I need help with my order"
305
- # )
306
- def get_link(agent_id:, test_mode: nil, phone_number: nil, body: nil, request_options: nil)
307
- Async do
308
- response = @request_client.conn.post do |req|
309
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
310
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
311
- req.headers = {
312
- **(req.headers || {}),
313
- **@request_client.get_headers,
314
- **(request_options&.additional_headers || {})
315
- }.compact
316
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
317
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
318
- end
319
- req.body = {
320
- **(request_options&.additional_body_parameters || {}),
321
- agentId: agent_id,
322
- testMode: test_mode,
323
- phoneNumber: phone_number,
324
- body: body
325
- }.compact
326
- req.url "#{@request_client.get_url(request_options: request_options)}/rcs/link"
327
- end
328
- Pinnacle::Types::RcsLinkResult.from_json(json_object: response.body)
329
- end
330
- end
331
- end
332
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../requests"
4
- require_relative "get/client"
5
-
6
- module Pinnacle
7
- module Status
8
- class Client
9
- # @return [Pinnacle::Status::GetClient]
10
- attr_reader :get
11
-
12
- # @param request_client [Pinnacle::RequestClient]
13
- # @return [Pinnacle::Status::Client]
14
- def initialize(request_client:)
15
- @get = Pinnacle::Status::GetClient.new(request_client: request_client)
16
- end
17
- end
18
-
19
- class AsyncClient
20
- # @return [Pinnacle::Status::AsyncGetClient]
21
- attr_reader :get
22
-
23
- # @param request_client [Pinnacle::AsyncRequestClient]
24
- # @return [Pinnacle::Status::AsyncClient]
25
- def initialize(request_client:)
26
- @get = Pinnacle::Status::AsyncGetClient.new(request_client: request_client)
27
- end
28
- end
29
- end
30
- end