rcs 2.0.5.pre.rc.1 → 2.0.5

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/lib/gemconfig.rb +14 -0
  3. data/lib/rcs/audiences/client.rb +347 -0
  4. data/lib/rcs/audiences/contacts/client.rb +177 -0
  5. data/lib/rcs/audiences/types/audiences_get_response.rb +58 -0
  6. data/lib/rcs/brands/client.rb +605 -0
  7. data/lib/rcs/brands/types/autofill_brand_options.rb +61 -0
  8. data/lib/rcs/brands/types/upsert_brand_schema_contact.rb +86 -0
  9. data/lib/rcs/brands/types/upsert_brand_schema_entity_type.rb +16 -0
  10. data/lib/rcs/brands/types/upsert_brand_schema_sector.rb +28 -0
  11. data/lib/rcs/brands/types/upsert_brand_schema_type.rb +16 -0
  12. data/lib/rcs/campaigns/client.rb +44 -0
  13. data/lib/rcs/campaigns/dlc/client.rb +492 -0
  14. data/lib/rcs/campaigns/dlc/types/dlc_campaign_help_keywords.rb +74 -0
  15. data/lib/rcs/campaigns/dlc/types/dlc_campaign_keywords.rb +99 -0
  16. data/lib/rcs/campaigns/dlc/types/dlc_campaign_links.rb +74 -0
  17. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +74 -0
  18. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +74 -0
  19. data/lib/rcs/campaigns/dlc/types/dlc_campaign_options.rb +110 -0
  20. data/lib/rcs/campaigns/dlc/types/dlc_campaign_use_case.rb +76 -0
  21. data/lib/rcs/campaigns/rcs/client.rb +566 -0
  22. data/lib/rcs/campaigns/rcs/types/rcs_agent.rb +152 -0
  23. data/lib/rcs/campaigns/rcs/types/rcs_agent_email.rb +73 -0
  24. data/lib/rcs/campaigns/rcs/types/rcs_agent_phone.rb +73 -0
  25. data/lib/rcs/campaigns/rcs/types/rcs_agent_website.rb +73 -0
  26. data/lib/rcs/campaigns/rcs/types/rcs_autofill_response.rb +246 -0
  27. data/lib/rcs/campaigns/rcs/types/rcs_campaign_help_keywords.rb +77 -0
  28. data/lib/rcs/campaigns/rcs/types/rcs_campaign_keywords.rb +98 -0
  29. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +87 -0
  30. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +83 -0
  31. data/lib/rcs/campaigns/rcs/types/rcs_campaign_traffic.rb +76 -0
  32. data/lib/rcs/campaigns/rcs/types/rcs_links.rb +74 -0
  33. data/lib/rcs/campaigns/rcs/types/rcs_use_case.rb +75 -0
  34. data/lib/rcs/campaigns/toll_free/client.rb +478 -0
  35. data/lib/rcs/campaigns/toll_free/types/toll_free_autofill_response.rb +172 -0
  36. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +66 -0
  37. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_keywords.rb +86 -0
  38. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_links.rb +74 -0
  39. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +86 -0
  40. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +78 -0
  41. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_options.rb +64 -0
  42. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_use_case.rb +75 -0
  43. data/lib/rcs/contacts/client.rb +277 -0
  44. data/lib/rcs/conversations/client.rb +401 -0
  45. data/lib/rcs/conversations/types/conversations_list_messages_request_direction.rb +12 -0
  46. data/lib/rcs/conversations/types/conversations_list_messages_request_sort_order.rb +12 -0
  47. data/lib/rcs/conversations/types/conversations_list_messages_request_status.rb +17 -0
  48. data/lib/rcs/conversations/types/conversations_list_messages_request_type.rb +13 -0
  49. data/lib/rcs/messages/blast/client.rb +425 -0
  50. data/lib/rcs/messages/blast/types/blast_mms_options.rb +82 -0
  51. data/lib/rcs/messages/blast/types/blast_mms_response.rb +60 -0
  52. data/lib/rcs/messages/blast/types/blast_rcs_options.rb +118 -0
  53. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card.rb +82 -0
  54. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +16 -0
  55. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +15 -0
  56. data/lib/rcs/messages/blast/types/blast_rcs_response.rb +60 -0
  57. data/lib/rcs/messages/blast/types/blast_sms_options.rb +70 -0
  58. data/lib/rcs/messages/blast/types/blast_sms_response.rb +60 -0
  59. data/lib/rcs/messages/client.rb +189 -0
  60. data/lib/rcs/messages/mms/client.rb +216 -0
  61. data/lib/rcs/messages/mms/types/mms_send_response.rb +60 -0
  62. data/lib/rcs/messages/mms/types/send_mms_options.rb +108 -0
  63. data/lib/rcs/messages/rcs/client.rb +286 -0
  64. data/lib/rcs/messages/rcs/types/send_rich_message_response.rb +60 -0
  65. data/lib/rcs/messages/rcs/types/send_typing_indicator_schema_options.rb +66 -0
  66. data/lib/rcs/messages/schedule/client.rb +103 -0
  67. data/lib/rcs/messages/sms/client.rb +198 -0
  68. data/lib/rcs/messages/sms/types/send_sms_options.rb +81 -0
  69. data/lib/rcs/messages/sms/types/sms_send_response.rb +60 -0
  70. data/lib/rcs/messages/types/react_message_options.rb +71 -0
  71. data/lib/rcs/phone_numbers/campaign/client.rb +197 -0
  72. data/lib/rcs/phone_numbers/client.rb +345 -0
  73. data/lib/rcs/phone_numbers/types/enhanced_contact_info.rb +62 -0
  74. data/lib/rcs/phone_numbers/types/phone_details_schema_level.rb +16 -0
  75. data/lib/rcs/phone_numbers/types/phone_numbers_get_response.rb +58 -0
  76. data/lib/rcs/phone_numbers/types/retrieve_phone_number_details_options.rb +93 -0
  77. data/lib/rcs/phone_numbers/types/search_phone_number_by_digits.rb +81 -0
  78. data/lib/rcs/phone_numbers/types/search_phone_number_by_location.rb +96 -0
  79. data/lib/rcs/phone_numbers/types/search_phone_number_options.rb +62 -0
  80. data/lib/rcs/phone_numbers/webhook/client.rb +193 -0
  81. data/lib/rcs/rcs/client.rb +332 -0
  82. data/lib/rcs/status/client.rb +30 -0
  83. data/lib/rcs/status/get/client.rb +383 -0
  84. data/lib/rcs/tools/client.rb +44 -0
  85. data/lib/rcs/tools/contact_card/client.rb +295 -0
  86. data/lib/rcs/tools/contact_card/types/get_v_card_schema_options.rb +67 -0
  87. data/lib/rcs/tools/file/client.rb +228 -0
  88. data/lib/rcs/tools/file/types/download_options.rb +66 -0
  89. data/lib/rcs/tools/file/types/upload_file_options.rb +88 -0
  90. data/lib/rcs/tools/url/client.rb +247 -0
  91. data/lib/rcs/types/advanced_phone_information.rb +147 -0
  92. data/lib/rcs/types/advanced_phone_information_carrier.rb +90 -0
  93. data/lib/rcs/types/advanced_phone_information_contact.rb +146 -0
  94. data/lib/rcs/types/advanced_phone_information_location.rb +142 -0
  95. data/lib/rcs/types/advanced_phone_information_location_coordinates.rb +73 -0
  96. data/lib/rcs/types/advanced_phone_information_location_country.rb +77 -0
  97. data/lib/rcs/types/advanced_phone_information_type.rb +97 -0
  98. data/lib/rcs/types/advanced_phone_information_type_recommendation.rb +15 -0
  99. data/lib/rcs/types/agent.rb +68 -0
  100. data/lib/rcs/types/attach_webhook_by_id_params.rb +77 -0
  101. data/lib/rcs/types/attach_webhook_params.rb +60 -0
  102. data/lib/rcs/types/attach_webhook_response_webhook.rb +88 -0
  103. data/lib/rcs/types/attached_phone_number_result.rb +75 -0
  104. data/lib/rcs/types/audience_count_only.rb +87 -0
  105. data/lib/rcs/types/audience_with_pagination.rb +114 -0
  106. data/lib/rcs/types/autofill_campaign_params.rb +81 -0
  107. data/lib/rcs/types/autofill_dlc_campaign_response.rb +173 -0
  108. data/lib/rcs/types/autofill_dlc_response_keywords.rb +93 -0
  109. data/lib/rcs/types/autofill_dlc_response_keywords_help.rb +70 -0
  110. data/lib/rcs/types/autofill_dlc_response_keywords_opt_in.rb +70 -0
  111. data/lib/rcs/types/autofill_dlc_response_keywords_opt_out.rb +70 -0
  112. data/lib/rcs/types/autofill_dlc_response_links.rb +70 -0
  113. data/lib/rcs/types/autofill_dlc_response_options.rb +106 -0
  114. data/lib/rcs/types/autofill_dlc_response_use_case.rb +72 -0
  115. data/lib/rcs/types/bad_request_error_body.rb +56 -0
  116. data/lib/rcs/types/base_rich_message.rb +82 -0
  117. data/lib/rcs/types/basic_phone_information.rb +127 -0
  118. data/lib/rcs/types/basic_phone_information_contact.rb +58 -0
  119. data/lib/rcs/types/basic_phone_information_location.rb +74 -0
  120. data/lib/rcs/types/basic_phone_information_location_country.rb +75 -0
  121. data/lib/rcs/types/blast_details.rb +110 -0
  122. data/lib/rcs/types/brand_status.rb +94 -0
  123. data/lib/rcs/types/brand_status_enum.rb +21 -0
  124. data/lib/rcs/types/button_clicked.rb +56 -0
  125. data/lib/rcs/types/button_clicked_data.rb +80 -0
  126. data/lib/rcs/types/button_clicked_data_button.rb +118 -0
  127. data/lib/rcs/types/button_clicked_data_button_raw.rb +58 -0
  128. data/lib/rcs/types/button_clicked_data_button_type.rb +15 -0
  129. data/lib/rcs/types/buy_response_capabilities.rb +77 -0
  130. data/lib/rcs/types/campaign_enum.rb +15 -0
  131. data/lib/rcs/types/campaign_query.rb +77 -0
  132. data/lib/rcs/types/campaign_submission_result.rb +57 -0
  133. data/lib/rcs/types/campaign_validation_response_errors_item.rb +76 -0
  134. data/lib/rcs/types/campaign_validation_result.rb +71 -0
  135. data/lib/rcs/types/company_entity_type_enum.rb +14 -0
  136. data/lib/rcs/types/company_sector_enum.rb +26 -0
  137. data/lib/rcs/types/company_type_enum.rb +14 -0
  138. data/lib/rcs/types/configured_webhook.rb +85 -0
  139. data/lib/rcs/types/contact.rb +107 -0
  140. data/lib/rcs/types/contact_id.rb +59 -0
  141. data/lib/rcs/types/conversation.rb +154 -0
  142. data/lib/rcs/types/conversation_by_id_params.rb +62 -0
  143. data/lib/rcs/types/conversation_by_participants_params.rb +72 -0
  144. data/lib/rcs/types/conversation_contact.rb +70 -0
  145. data/lib/rcs/types/conversation_list.rb +79 -0
  146. data/lib/rcs/types/conversation_sender.rb +60 -0
  147. data/lib/rcs/types/create_and_attach_webhook_by_url_params.rb +88 -0
  148. data/lib/rcs/types/create_url_options.rb +63 -0
  149. data/lib/rcs/types/delete_audience_response.rb +57 -0
  150. data/lib/rcs/types/detached_phone_number_result.rb +75 -0
  151. data/lib/rcs/types/detached_webhook_info.rb +76 -0
  152. data/lib/rcs/types/detailed_phone_number_enum.rb +25 -0
  153. data/lib/rcs/types/dlc_assignment_status_enum.rb +19 -0
  154. data/lib/rcs/types/dlc_campaign_status.rb +109 -0
  155. data/lib/rcs/types/dlc_campaign_use_case_enum.rb +35 -0
  156. data/lib/rcs/types/dlc_campaign_with_extended_brand_and_status.rb +224 -0
  157. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords.rb +94 -0
  158. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_help.rb +72 -0
  159. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +72 -0
  160. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +72 -0
  161. data/lib/rcs/types/dlc_with_extended_brand_and_status_links.rb +70 -0
  162. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +15 -0
  163. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +22 -0
  164. data/lib/rcs/types/dlc_with_extended_brand_and_status_options.rb +106 -0
  165. data/lib/rcs/types/dlc_with_extended_brand_and_status_use_case.rb +72 -0
  166. data/lib/rcs/types/enhanced_contact.rb +9 -0
  167. data/lib/rcs/types/enhanced_contact_item.rb +104 -0
  168. data/lib/rcs/types/error.rb +61 -0
  169. data/lib/rcs/types/extended_brand.rb +215 -0
  170. data/lib/rcs/types/extended_brand_with_vetting.rb +247 -0
  171. data/lib/rcs/types/extended_rcs_campaign.rb +267 -0
  172. data/lib/rcs/types/get_conversation_params.rb +57 -0
  173. data/lib/rcs/types/get_dlc_campaign_status_response_updates.rb +96 -0
  174. data/lib/rcs/types/get_toll_free_campaign_status_response_updates.rb +92 -0
  175. data/lib/rcs/types/link_click_event.rb +449 -0
  176. data/lib/rcs/types/location_share_action.rb +63 -0
  177. data/lib/rcs/types/location_share_action_data.rb +89 -0
  178. data/lib/rcs/types/message.rb +176 -0
  179. data/lib/rcs/types/message_content.rb +85 -0
  180. data/lib/rcs/types/message_event.rb +143 -0
  181. data/lib/rcs/types/message_event_content.rb +127 -0
  182. data/lib/rcs/types/message_event_conversation.rb +82 -0
  183. data/lib/rcs/types/message_event_direction.rb +11 -0
  184. data/lib/rcs/types/message_event_mms_content.rb +94 -0
  185. data/lib/rcs/types/message_event_rcs_button_data.rb +104 -0
  186. data/lib/rcs/types/message_event_rcs_cards_content.rb +103 -0
  187. data/lib/rcs/types/message_event_rcs_cards_content_cards_item.rb +96 -0
  188. data/lib/rcs/types/message_event_rcs_location_data.rb +91 -0
  189. data/lib/rcs/types/message_event_rcs_media_content.rb +96 -0
  190. data/lib/rcs/types/message_event_rcs_text_content.rb +94 -0
  191. data/lib/rcs/types/message_event_sms_content.rb +81 -0
  192. data/lib/rcs/types/message_list.rb +79 -0
  193. data/lib/rcs/types/message_method_enum.rb +12 -0
  194. data/lib/rcs/types/message_protocol_enum.rb +12 -0
  195. data/lib/rcs/types/message_schedule.rb +121 -0
  196. data/lib/rcs/types/message_status_enum.rb +17 -0
  197. data/lib/rcs/types/message_volume_enum.rb +20 -0
  198. data/lib/rcs/types/message_with_reaction.rb +197 -0
  199. data/lib/rcs/types/message_with_reaction_direction.rb +11 -0
  200. data/lib/rcs/types/messaging_profile_enum.rb +11 -0
  201. data/lib/rcs/types/mms_content.rb +74 -0
  202. data/lib/rcs/types/mms_validation_response_segments.rb +85 -0
  203. data/lib/rcs/types/mms_validation_response_segments_value_item.rb +75 -0
  204. data/lib/rcs/types/mms_validation_result.rb +82 -0
  205. data/lib/rcs/types/not_found_error_body.rb +59 -0
  206. data/lib/rcs/types/number_format.rb +79 -0
  207. data/lib/rcs/types/opt_in_method_enum.rb +13 -0
  208. data/lib/rcs/types/optional_brand_info.rb +154 -0
  209. data/lib/rcs/types/optional_contact.rb +83 -0
  210. data/lib/rcs/types/optional_contacts.rb +84 -0
  211. data/lib/rcs/types/pagination.rb +81 -0
  212. data/lib/rcs/types/phone.rb +101 -0
  213. data/lib/rcs/types/phone_capabilities.rb +75 -0
  214. data/lib/rcs/types/phone_enum.rb +13 -0
  215. data/lib/rcs/types/phone_feature_enum.rb +18 -0
  216. data/lib/rcs/types/phone_number_campaign_attach_failed_item.rb +67 -0
  217. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item.rb +75 -0
  218. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +82 -0
  219. data/lib/rcs/types/phone_number_campaign_detach_failed_item.rb +67 -0
  220. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item.rb +75 -0
  221. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +82 -0
  222. data/lib/rcs/types/phone_number_cost.rb +75 -0
  223. data/lib/rcs/types/phone_number_details.rb +110 -0
  224. data/lib/rcs/types/phone_number_enum.rb +18 -0
  225. data/lib/rcs/types/phone_number_region.rb +91 -0
  226. data/lib/rcs/types/phone_number_status.rb +90 -0
  227. data/lib/rcs/types/phone_number_status_enum.rb +16 -0
  228. data/lib/rcs/types/pinnacle_file_upload_metadata.rb +100 -0
  229. data/lib/rcs/types/pinnacle_url_config.rb +71 -0
  230. data/lib/rcs/types/profile_status_enum.rb +17 -0
  231. data/lib/rcs/types/purchased_number.rb +75 -0
  232. data/lib/rcs/types/rcs_button_call.rb +77 -0
  233. data/lib/rcs/types/rcs_button_open_url.rb +104 -0
  234. data/lib/rcs/types/rcs_button_open_url_webview_mode.rb +19 -0
  235. data/lib/rcs/types/rcs_button_request_user_location.rb +70 -0
  236. data/lib/rcs/types/rcs_button_schedule_event.rb +106 -0
  237. data/lib/rcs/types/rcs_button_send_location.rb +94 -0
  238. data/lib/rcs/types/rcs_button_send_location_lat_long.rb +68 -0
  239. data/lib/rcs/types/rcs_button_trigger.rb +80 -0
  240. data/lib/rcs/types/rcs_campaign.rb +234 -0
  241. data/lib/rcs/types/rcs_campaign_schema_agent.rb +134 -0
  242. data/lib/rcs/types/rcs_campaign_schema_agent_emails_item.rb +69 -0
  243. data/lib/rcs/types/rcs_campaign_schema_agent_phones_item.rb +69 -0
  244. data/lib/rcs/types/rcs_campaign_schema_agent_websites_item.rb +69 -0
  245. data/lib/rcs/types/rcs_campaign_schema_extra_agent.rb +134 -0
  246. data/lib/rcs/types/rcs_campaign_schema_extra_agent_emails_item.rb +70 -0
  247. data/lib/rcs/types/rcs_campaign_schema_extra_agent_phones_item.rb +70 -0
  248. data/lib/rcs/types/rcs_campaign_schema_extra_agent_websites_item.rb +71 -0
  249. data/lib/rcs/types/rcs_campaign_schema_extra_keywords.rb +94 -0
  250. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_help.rb +71 -0
  251. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_in.rb +73 -0
  252. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_out.rb +73 -0
  253. data/lib/rcs/types/rcs_campaign_schema_extra_links.rb +70 -0
  254. data/lib/rcs/types/rcs_campaign_schema_extra_traffic.rb +72 -0
  255. data/lib/rcs/types/rcs_campaign_schema_extra_use_case.rb +71 -0
  256. data/lib/rcs/types/rcs_campaign_schema_keywords.rb +94 -0
  257. data/lib/rcs/types/rcs_campaign_schema_keywords_help.rb +71 -0
  258. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_in.rb +73 -0
  259. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_out.rb +73 -0
  260. data/lib/rcs/types/rcs_campaign_schema_links.rb +70 -0
  261. data/lib/rcs/types/rcs_campaign_schema_traffic.rb +72 -0
  262. data/lib/rcs/types/rcs_campaign_schema_use_case.rb +71 -0
  263. data/lib/rcs/types/rcs_campaign_status.rb +88 -0
  264. data/lib/rcs/types/rcs_campaign_use_case_enum.rb +23 -0
  265. data/lib/rcs/types/rcs_capabilities_result.rb +7 -0
  266. data/lib/rcs/types/rcs_capability.rb +82 -0
  267. data/lib/rcs/types/rcs_capability_actions.rb +105 -0
  268. data/lib/rcs/types/rcs_capability_cards.rb +67 -0
  269. data/lib/rcs/types/rcs_cards_content.rb +83 -0
  270. data/lib/rcs/types/rcs_cards_content_cards_item.rb +98 -0
  271. data/lib/rcs/types/rcs_content.rb +72 -0
  272. data/lib/rcs/types/rcs_link_result.rb +75 -0
  273. data/lib/rcs/types/rcs_media_content.rb +83 -0
  274. data/lib/rcs/types/rcs_media_details_content.rb +77 -0
  275. data/lib/rcs/types/rcs_messaging_type_enum.rb +17 -0
  276. data/lib/rcs/types/rcs_validate_content.rb +70 -0
  277. data/lib/rcs/types/rcs_validate_content_media.rb +75 -0
  278. data/lib/rcs/types/rcs_validation_result.rb +83 -0
  279. data/lib/rcs/types/rcs_whitelist_response.rb +58 -0
  280. data/lib/rcs/types/reaction_result.rb +71 -0
  281. data/lib/rcs/types/refreshed_file.rb +67 -0
  282. data/lib/rcs/types/rich_button.rb +148 -0
  283. data/lib/rcs/types/rich_card.rb +92 -0
  284. data/lib/rcs/types/rich_cards.rb +83 -0
  285. data/lib/rcs/types/rich_cards_message.rb +114 -0
  286. data/lib/rcs/types/rich_media_message.rb +112 -0
  287. data/lib/rcs/types/rich_message.rb +70 -0
  288. data/lib/rcs/types/rich_standalone_card_options.rb +80 -0
  289. data/lib/rcs/types/rich_text.rb +74 -0
  290. data/lib/rcs/types/rich_text_message.rb +108 -0
  291. data/lib/rcs/types/schedule_cancel_result.rb +58 -0
  292. data/lib/rcs/types/scheduled_blast_details.rb +76 -0
  293. data/lib/rcs/types/scheduled_blast_response_config.rb +89 -0
  294. data/lib/rcs/types/scheduled_message.rb +75 -0
  295. data/lib/rcs/types/scheduled_send_response_config.rb +89 -0
  296. data/lib/rcs/types/send_rcs_card_options_standalone_card_image_alignment.rb +12 -0
  297. data/lib/rcs/types/send_rcs_card_options_standalone_card_orientation.rb +11 -0
  298. data/lib/rcs/types/send_rich_cards_options.rb +136 -0
  299. data/lib/rcs/types/send_rich_message_options.rb +111 -0
  300. data/lib/rcs/types/send_sms_response_segments.rb +69 -0
  301. data/lib/rcs/types/send_sms_response_segments_encoding.rb +11 -0
  302. data/lib/rcs/types/send_typing_indicator_response.rb +100 -0
  303. data/lib/rcs/types/sent_mms_details.rb +118 -0
  304. data/lib/rcs/types/sent_rich_message.rb +104 -0
  305. data/lib/rcs/types/sent_sms_details.rb +110 -0
  306. data/lib/rcs/types/shortened_url.rb +77 -0
  307. data/lib/rcs/types/shortened_url_with_click_data.rb +90 -0
  308. data/lib/rcs/types/sms_content.rb +58 -0
  309. data/lib/rcs/types/sms_validation_response_segments.rb +80 -0
  310. data/lib/rcs/types/sms_validation_response_segments_gsm_7.rb +75 -0
  311. data/lib/rcs/types/sms_validation_response_segments_utf_16.rb +68 -0
  312. data/lib/rcs/types/sms_validation_response_total.rb +75 -0
  313. data/lib/rcs/types/sms_validation_result.rb +102 -0
  314. data/lib/rcs/types/sub_use_case_enum.rb +19 -0
  315. data/lib/rcs/types/submission_results.rb +57 -0
  316. data/lib/rcs/types/successful_conversation_update.rb +58 -0
  317. data/lib/rcs/types/toll_free_campaign.rb +160 -0
  318. data/lib/rcs/types/toll_free_campaign_schema_keywords.rb +82 -0
  319. data/lib/rcs/types/toll_free_campaign_schema_keywords_help.rb +62 -0
  320. data/lib/rcs/types/toll_free_campaign_schema_keywords_opt_in.rb +74 -0
  321. data/lib/rcs/types/toll_free_campaign_schema_links.rb +70 -0
  322. data/lib/rcs/types/toll_free_campaign_schema_opt_in.rb +78 -0
  323. data/lib/rcs/types/toll_free_campaign_schema_options.rb +60 -0
  324. data/lib/rcs/types/toll_free_campaign_schema_use_case.rb +71 -0
  325. data/lib/rcs/types/toll_free_campaign_status.rb +93 -0
  326. data/lib/rcs/types/toll_free_campaign_use_case_enum.rb +52 -0
  327. data/lib/rcs/types/toll_free_campaign_with_extended_brand_and_status.rb +195 -0
  328. data/lib/rcs/types/toll_free_status_enum.rb +20 -0
  329. data/lib/rcs/types/tracking.rb +17 -0
  330. data/lib/rcs/types/updated_contact_id.rb +59 -0
  331. data/lib/rcs/types/upload_results.rb +80 -0
  332. data/lib/rcs/types/user_event.rb +83 -0
  333. data/lib/rcs/types/user_event_conversation.rb +78 -0
  334. data/lib/rcs/types/v_card_address_schema_type_item.rb +15 -0
  335. data/lib/rcs/types/v_card_data.rb +239 -0
  336. data/lib/rcs/types/v_card_data_file.rb +74 -0
  337. data/lib/rcs/types/v_card_data_file_metadata.rb +62 -0
  338. data/lib/rcs/types/v_card_email_schema_type_item.rb +21 -0
  339. data/lib/rcs/types/v_card_geo.rb +70 -0
  340. data/lib/rcs/types/v_card_name.rb +98 -0
  341. data/lib/rcs/types/v_card_organization.rb +70 -0
  342. data/lib/rcs/types/v_card_phone_schema_type_item.rb +21 -0
  343. data/lib/rcs/types/validate_campaign_params.rb +81 -0
  344. data/lib/rcs/types/validation_error_details.rb +76 -0
  345. data/lib/rcs/types/validation_results.rb +71 -0
  346. data/lib/rcs/types/vcard.rb +217 -0
  347. data/lib/rcs/types/vcard_address.rb +130 -0
  348. data/lib/rcs/types/vcard_content.rb +225 -0
  349. data/lib/rcs/types/vcard_email.rb +70 -0
  350. data/lib/rcs/types/vcard_phone.rb +70 -0
  351. data/lib/rcs/types/vcard_resource.rb +73 -0
  352. data/lib/rcs/types/vetting_feedback.rb +81 -0
  353. data/lib/rcs/types/vetting_history.rb +98 -0
  354. data/lib/rcs/types/vetting_history_vetting_status.rb +13 -0
  355. data/lib/rcs/types/vetting_results.rb +57 -0
  356. data/lib/rcs/types/webhook_event_enum.rb +14 -0
  357. data/lib/rcs/types/webhook_result.rb +64 -0
  358. data/lib/rcs/types/webhooks.rb +77 -0
  359. data/lib/rcs/types/zod_error.rb +73 -0
  360. data/lib/rcs/webhooks/client.rb +97 -0
  361. data/lib/rcs.rb +124 -0
  362. data/lib/requests.rb +163 -0
  363. data/lib/types_export.rb +334 -0
  364. metadata +456 -468
  365. data/.fern/metadata.json +0 -12
  366. data/.fernignore +0 -6
  367. data/.rubocop.yml +0 -60
  368. data/README.md +0 -121
  369. data/Rakefile +0 -20
  370. data/custom.gemspec.rb +0 -13
  371. data/lib/pinnacle/audiences/client.rb +0 -183
  372. data/lib/pinnacle/audiences/contacts/client.rb +0 -97
  373. data/lib/pinnacle/audiences/contacts/types/add_contacts_params.rb +0 -14
  374. data/lib/pinnacle/audiences/contacts/types/remove_contacts_params.rb +0 -14
  375. data/lib/pinnacle/audiences/types/audiences_delete_request.rb +0 -11
  376. data/lib/pinnacle/audiences/types/audiences_get_request.rb +0 -13
  377. data/lib/pinnacle/audiences/types/audiences_get_response.rb +0 -14
  378. data/lib/pinnacle/audiences/types/create_audience_params.rb +0 -13
  379. data/lib/pinnacle/audiences/types/update_audience_params.rb +0 -13
  380. data/lib/pinnacle/base_client.rb +0 -75
  381. data/lib/pinnacle/brands/client.rb +0 -245
  382. data/lib/pinnacle/brands/types/autofill_brand_options.rb +0 -11
  383. data/lib/pinnacle/brands/types/autofill_brand_params.rb +0 -14
  384. data/lib/pinnacle/brands/types/brands_get_request.rb +0 -12
  385. data/lib/pinnacle/brands/types/upsert_brand_params.rb +0 -22
  386. data/lib/pinnacle/brands/types/upsert_brand_schema_contact.rb +0 -15
  387. data/lib/pinnacle/brands/types/upsert_brand_schema_entity_type.rb +0 -17
  388. data/lib/pinnacle/brands/types/upsert_brand_schema_sector.rb +0 -29
  389. data/lib/pinnacle/brands/types/upsert_brand_schema_type.rb +0 -17
  390. data/lib/pinnacle/brands/types/vet_brand_params.rb +0 -14
  391. data/lib/pinnacle/campaigns/client.rb +0 -29
  392. data/lib/pinnacle/campaigns/dlc/client.rb +0 -201
  393. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_help_keywords.rb +0 -15
  394. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +0 -16
  395. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +0 -15
  396. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +0 -15
  397. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +0 -15
  398. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +0 -19
  399. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +0 -15
  400. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +0 -23
  401. data/lib/pinnacle/campaigns/rcs/client.rb +0 -199
  402. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +0 -21
  403. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +0 -14
  404. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +0 -14
  405. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +0 -14
  406. data/lib/pinnacle/campaigns/rcs/types/rcs_autofill_response.rb +0 -13
  407. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +0 -14
  408. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +0 -15
  409. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +0 -14
  410. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +0 -14
  411. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +0 -14
  412. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +0 -15
  413. data/lib/pinnacle/campaigns/rcs/types/rcs_use_case.rb +0 -15
  414. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +0 -28
  415. data/lib/pinnacle/campaigns/toll_free/client.rb +0 -201
  416. data/lib/pinnacle/campaigns/toll_free/types/toll_free_autofill_response.rb +0 -13
  417. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +0 -14
  418. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +0 -15
  419. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +0 -15
  420. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +0 -16
  421. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +0 -15
  422. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_options.rb +0 -14
  423. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +0 -15
  424. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +0 -22
  425. data/lib/pinnacle/client.rb +0 -26
  426. data/lib/pinnacle/contacts/client.rb +0 -130
  427. data/lib/pinnacle/contacts/types/contacts_get_request.rb +0 -12
  428. data/lib/pinnacle/contacts/types/create_contact_params.rb +0 -15
  429. data/lib/pinnacle/contacts/types/update_contact_params.rb +0 -15
  430. data/lib/pinnacle/conversations/client.rb +0 -175
  431. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +0 -19
  432. data/lib/pinnacle/conversations/types/conversations_list_messages_request_direction.rb +0 -14
  433. data/lib/pinnacle/conversations/types/conversations_list_messages_request_sort_order.rb +0 -14
  434. data/lib/pinnacle/conversations/types/conversations_list_messages_request_status.rb +0 -19
  435. data/lib/pinnacle/conversations/types/conversations_list_messages_request_type.rb +0 -15
  436. data/lib/pinnacle/conversations/types/list_conversations_params.rb +0 -17
  437. data/lib/pinnacle/conversations/types/update_conversation_params.rb +0 -12
  438. data/lib/pinnacle/errors/api_error.rb +0 -8
  439. data/lib/pinnacle/errors/client_error.rb +0 -17
  440. data/lib/pinnacle/errors/redirect_error.rb +0 -8
  441. data/lib/pinnacle/errors/response_error.rb +0 -42
  442. data/lib/pinnacle/errors/server_error.rb +0 -11
  443. data/lib/pinnacle/errors/timeout_error.rb +0 -8
  444. data/lib/pinnacle/internal/errors/constraint_error.rb +0 -10
  445. data/lib/pinnacle/internal/errors/type_error.rb +0 -10
  446. data/lib/pinnacle/internal/http/base_request.rb +0 -31
  447. data/lib/pinnacle/internal/http/raw_client.rb +0 -116
  448. data/lib/pinnacle/internal/iterators/cursor_item_iterator.rb +0 -28
  449. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +0 -51
  450. data/lib/pinnacle/internal/iterators/item_iterator.rb +0 -59
  451. data/lib/pinnacle/internal/iterators/offset_item_iterator.rb +0 -30
  452. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +0 -83
  453. data/lib/pinnacle/internal/json/request.rb +0 -39
  454. data/lib/pinnacle/internal/json/serializable.rb +0 -25
  455. data/lib/pinnacle/internal/multipart/multipart_encoder.rb +0 -141
  456. data/lib/pinnacle/internal/multipart/multipart_form_data.rb +0 -78
  457. data/lib/pinnacle/internal/multipart/multipart_form_data_part.rb +0 -51
  458. data/lib/pinnacle/internal/multipart/multipart_request.rb +0 -38
  459. data/lib/pinnacle/internal/types/array.rb +0 -47
  460. data/lib/pinnacle/internal/types/boolean.rb +0 -34
  461. data/lib/pinnacle/internal/types/enum.rb +0 -56
  462. data/lib/pinnacle/internal/types/hash.rb +0 -36
  463. data/lib/pinnacle/internal/types/model/field.rb +0 -38
  464. data/lib/pinnacle/internal/types/model.rb +0 -208
  465. data/lib/pinnacle/internal/types/type.rb +0 -35
  466. data/lib/pinnacle/internal/types/union.rb +0 -161
  467. data/lib/pinnacle/internal/types/unknown.rb +0 -15
  468. data/lib/pinnacle/internal/types/utils.rb +0 -116
  469. data/lib/pinnacle/messages/blast/client.rb +0 -143
  470. data/lib/pinnacle/messages/blast/types/blast_mms.rb +0 -16
  471. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +0 -15
  472. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +0 -16
  473. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +0 -16
  474. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +0 -17
  475. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +0 -20
  476. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +0 -16
  477. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +0 -16
  478. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +0 -16
  479. data/lib/pinnacle/messages/blast/types/blast_sms.rb +0 -16
  480. data/lib/pinnacle/messages/blast/types/blast_sms_options.rb +0 -14
  481. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +0 -16
  482. data/lib/pinnacle/messages/client.rb +0 -110
  483. data/lib/pinnacle/messages/mms/client.rb +0 -87
  484. data/lib/pinnacle/messages/mms/types/mms.rb +0 -17
  485. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +0 -16
  486. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +0 -17
  487. data/lib/pinnacle/messages/rcs/client.rb +0 -140
  488. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +0 -16
  489. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +0 -15
  490. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -14
  491. data/lib/pinnacle/messages/schedule/client.rb +0 -53
  492. data/lib/pinnacle/messages/sms/client.rb +0 -87
  493. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +0 -15
  494. data/lib/pinnacle/messages/sms/types/sms.rb +0 -16
  495. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +0 -16
  496. data/lib/pinnacle/messages/types/react_message_options.rb +0 -11
  497. data/lib/pinnacle/messages/types/react_message_params.rb +0 -13
  498. data/lib/pinnacle/phone_numbers/campaign/client.rb +0 -90
  499. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +0 -15
  500. data/lib/pinnacle/phone_numbers/campaign/types/detach_campaign_params.rb +0 -13
  501. data/lib/pinnacle/phone_numbers/client.rb +0 -133
  502. data/lib/pinnacle/phone_numbers/types/buy_phone_number_params.rb +0 -11
  503. data/lib/pinnacle/phone_numbers/types/enhanced_contact_info.rb +0 -12
  504. data/lib/pinnacle/phone_numbers/types/phone_details_schema_level.rb +0 -14
  505. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +0 -14
  506. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +0 -14
  507. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +0 -13
  508. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +0 -14
  509. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +0 -17
  510. data/lib/pinnacle/phone_numbers/types/search_phone_number_options.rb +0 -12
  511. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +0 -15
  512. data/lib/pinnacle/phone_numbers/webhook/client.rb +0 -90
  513. data/lib/pinnacle/rcs/client.rb +0 -159
  514. data/lib/pinnacle/rcs/types/rcs_capabilities_query.rb +0 -11
  515. data/lib/pinnacle/rcs/types/rcs_link_request.rb +0 -14
  516. data/lib/pinnacle/rcs/types/rcs_whitelist_request.rb +0 -12
  517. data/lib/pinnacle/status/client.rb +0 -19
  518. data/lib/pinnacle/status/get/client.rb +0 -188
  519. data/lib/pinnacle/tools/client.rb +0 -29
  520. data/lib/pinnacle/tools/contact_card/client.rb +0 -92
  521. data/lib/pinnacle/tools/contact_card/types/get_v_card_schema_options.rb +0 -13
  522. data/lib/pinnacle/tools/contact_card/types/get_vcard_params.rb +0 -14
  523. data/lib/pinnacle/tools/contact_card/types/upsert_vcard_params.rb +0 -29
  524. data/lib/pinnacle/tools/file/client.rb +0 -94
  525. data/lib/pinnacle/tools/file/types/download_options.rb +0 -14
  526. data/lib/pinnacle/tools/file/types/refresh_file_params.rb +0 -13
  527. data/lib/pinnacle/tools/file/types/upload_file_options.rb +0 -15
  528. data/lib/pinnacle/tools/file/types/upload_file_params.rb +0 -16
  529. data/lib/pinnacle/tools/url/client.rb +0 -128
  530. data/lib/pinnacle/tools/url/types/create_url_params.rb +0 -14
  531. data/lib/pinnacle/tools/url/types/update_url_params.rb +0 -15
  532. data/lib/pinnacle/types/advanced_phone_information.rb +0 -17
  533. data/lib/pinnacle/types/advanced_phone_information_carrier.rb +0 -13
  534. data/lib/pinnacle/types/advanced_phone_information_contact.rb +0 -19
  535. data/lib/pinnacle/types/advanced_phone_information_location.rb +0 -18
  536. data/lib/pinnacle/types/advanced_phone_information_location_coordinates.rb +0 -11
  537. data/lib/pinnacle/types/advanced_phone_information_location_country.rb +0 -12
  538. data/lib/pinnacle/types/advanced_phone_information_type.rb +0 -13
  539. data/lib/pinnacle/types/advanced_phone_information_type_recommendation.rb +0 -13
  540. data/lib/pinnacle/types/agent.rb +0 -11
  541. data/lib/pinnacle/types/attach_webhook_by_id_params.rb +0 -11
  542. data/lib/pinnacle/types/attach_webhook_params.rb +0 -15
  543. data/lib/pinnacle/types/attach_webhook_response_webhook.rb +0 -13
  544. data/lib/pinnacle/types/attached_phone_number_result.rb +0 -10
  545. data/lib/pinnacle/types/audience_count_only.rb +0 -12
  546. data/lib/pinnacle/types/audience_with_pagination.rb +0 -14
  547. data/lib/pinnacle/types/autofill_campaign_params.rb +0 -10
  548. data/lib/pinnacle/types/autofill_dlc_campaign_response.rb +0 -19
  549. data/lib/pinnacle/types/autofill_dlc_response_keywords.rb +0 -12
  550. data/lib/pinnacle/types/autofill_dlc_response_keywords_help.rb +0 -11
  551. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_in.rb +0 -11
  552. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_out.rb +0 -11
  553. data/lib/pinnacle/types/autofill_dlc_response_links.rb +0 -11
  554. data/lib/pinnacle/types/autofill_dlc_response_options.rb +0 -15
  555. data/lib/pinnacle/types/autofill_dlc_response_use_case.rb +0 -11
  556. data/lib/pinnacle/types/bad_request_error_body.rb +0 -12
  557. data/lib/pinnacle/types/base_rich_message.rb +0 -11
  558. data/lib/pinnacle/types/basic_phone_information.rb +0 -16
  559. data/lib/pinnacle/types/basic_phone_information_contact.rb +0 -10
  560. data/lib/pinnacle/types/basic_phone_information_location.rb +0 -11
  561. data/lib/pinnacle/types/basic_phone_information_location_country.rb +0 -12
  562. data/lib/pinnacle/types/blast_details.rb +0 -15
  563. data/lib/pinnacle/types/brand_status.rb +0 -12
  564. data/lib/pinnacle/types/brand_status_enum.rb +0 -16
  565. data/lib/pinnacle/types/button_clicked.rb +0 -12
  566. data/lib/pinnacle/types/button_clicked_data.rb +0 -11
  567. data/lib/pinnacle/types/button_clicked_data_button.rb +0 -14
  568. data/lib/pinnacle/types/button_clicked_data_button_raw.rb +0 -14
  569. data/lib/pinnacle/types/button_clicked_data_button_type.rb +0 -12
  570. data/lib/pinnacle/types/buy_response_capabilities.rb +0 -12
  571. data/lib/pinnacle/types/campaign_enum.rb +0 -13
  572. data/lib/pinnacle/types/campaign_query.rb +0 -11
  573. data/lib/pinnacle/types/campaign_submission_result.rb +0 -9
  574. data/lib/pinnacle/types/campaign_validation_response_errors_item.rb +0 -11
  575. data/lib/pinnacle/types/campaign_validation_result.rb +0 -10
  576. data/lib/pinnacle/types/company_entity_type_enum.rb +0 -15
  577. data/lib/pinnacle/types/company_sector_enum.rb +0 -27
  578. data/lib/pinnacle/types/company_type_enum.rb +0 -15
  579. data/lib/pinnacle/types/configured_webhook.rb +0 -13
  580. data/lib/pinnacle/types/contact.rb +0 -14
  581. data/lib/pinnacle/types/contact_id.rb +0 -9
  582. data/lib/pinnacle/types/conversation.rb +0 -17
  583. data/lib/pinnacle/types/conversation_by_id_params.rb +0 -10
  584. data/lib/pinnacle/types/conversation_by_participants_params.rb +0 -11
  585. data/lib/pinnacle/types/conversation_contact.rb +0 -11
  586. data/lib/pinnacle/types/conversation_list.rb +0 -12
  587. data/lib/pinnacle/types/conversation_sender.rb +0 -16
  588. data/lib/pinnacle/types/create_and_attach_webhook_by_url_params.rb +0 -12
  589. data/lib/pinnacle/types/create_url_options.rb +0 -9
  590. data/lib/pinnacle/types/delete_audience_response.rb +0 -9
  591. data/lib/pinnacle/types/detached_phone_number_result.rb +0 -10
  592. data/lib/pinnacle/types/detached_webhook_info.rb +0 -11
  593. data/lib/pinnacle/types/detailed_phone_number_enum.rb +0 -22
  594. data/lib/pinnacle/types/dlc_assignment_status_enum.rb +0 -15
  595. data/lib/pinnacle/types/dlc_campaign_status.rb +0 -13
  596. data/lib/pinnacle/types/dlc_campaign_use_case_enum.rb +0 -36
  597. data/lib/pinnacle/types/dlc_campaign_with_extended_brand_and_status.rb +0 -23
  598. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords.rb +0 -12
  599. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_help.rb +0 -11
  600. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +0 -11
  601. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +0 -11
  602. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_links.rb +0 -11
  603. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +0 -14
  604. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +0 -20
  605. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_options.rb +0 -15
  606. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_use_case.rb +0 -11
  607. data/lib/pinnacle/types/enhanced_contact.rb +0 -23
  608. data/lib/pinnacle/types/enhanced_contact_item.rb +0 -13
  609. data/lib/pinnacle/types/error.rb +0 -10
  610. data/lib/pinnacle/types/extended_brand.rb +0 -13
  611. data/lib/pinnacle/types/extended_brand_with_vetting.rb +0 -11
  612. data/lib/pinnacle/types/extended_rcs_campaign.rb +0 -26
  613. data/lib/pinnacle/types/get_conversation_params.rb +0 -13
  614. data/lib/pinnacle/types/get_dlc_campaign_status_response_updates.rb +0 -15
  615. data/lib/pinnacle/types/get_toll_free_campaign_status_response_updates.rb +0 -15
  616. data/lib/pinnacle/types/link_click_event.rb +0 -57
  617. data/lib/pinnacle/types/location_share_action.rb +0 -9
  618. data/lib/pinnacle/types/location_share_action_data.rb +0 -13
  619. data/lib/pinnacle/types/message.rb +0 -20
  620. data/lib/pinnacle/types/message_content.rb +0 -15
  621. data/lib/pinnacle/types/message_event.rb +0 -17
  622. data/lib/pinnacle/types/message_event_content.rb +0 -18
  623. data/lib/pinnacle/types/message_event_conversation.rb +0 -12
  624. data/lib/pinnacle/types/message_event_direction.rb +0 -12
  625. data/lib/pinnacle/types/message_event_mms_content.rb +0 -13
  626. data/lib/pinnacle/types/message_event_rcs_button_data.rb +0 -15
  627. data/lib/pinnacle/types/message_event_rcs_cards_content.rb +0 -16
  628. data/lib/pinnacle/types/message_event_rcs_cards_content_cards_item.rb +0 -13
  629. data/lib/pinnacle/types/message_event_rcs_location_data.rb +0 -15
  630. data/lib/pinnacle/types/message_event_rcs_media_content.rb +0 -15
  631. data/lib/pinnacle/types/message_event_rcs_text_content.rb +0 -13
  632. data/lib/pinnacle/types/message_event_sms_content.rb +0 -12
  633. data/lib/pinnacle/types/message_list.rb +0 -12
  634. data/lib/pinnacle/types/message_method_enum.rb +0 -13
  635. data/lib/pinnacle/types/message_protocol_enum.rb +0 -13
  636. data/lib/pinnacle/types/message_schedule.rb +0 -13
  637. data/lib/pinnacle/types/message_status_enum.rb +0 -18
  638. data/lib/pinnacle/types/message_volume_enum.rb +0 -21
  639. data/lib/pinnacle/types/message_with_reaction.rb +0 -11
  640. data/lib/pinnacle/types/message_with_reaction_direction.rb +0 -12
  641. data/lib/pinnacle/types/messaging_profile_enum.rb +0 -12
  642. data/lib/pinnacle/types/mms_content.rb +0 -11
  643. data/lib/pinnacle/types/mms_validation_response_segments.rb +0 -12
  644. data/lib/pinnacle/types/mms_validation_response_segments_value_item.rb +0 -11
  645. data/lib/pinnacle/types/mms_validation_result.rb +0 -11
  646. data/lib/pinnacle/types/not_found_error_body.rb +0 -9
  647. data/lib/pinnacle/types/number_format.rb +0 -13
  648. data/lib/pinnacle/types/opt_in_method_enum.rb +0 -14
  649. data/lib/pinnacle/types/optional_brand_info.rb +0 -19
  650. data/lib/pinnacle/types/optional_contact.rb +0 -12
  651. data/lib/pinnacle/types/optional_contacts.rb +0 -13
  652. data/lib/pinnacle/types/pagination.rb +0 -12
  653. data/lib/pinnacle/types/phone.rb +0 -14
  654. data/lib/pinnacle/types/phone_capabilities.rb +0 -12
  655. data/lib/pinnacle/types/phone_enum.rb +0 -12
  656. data/lib/pinnacle/types/phone_feature_enum.rb +0 -18
  657. data/lib/pinnacle/types/phone_number_campaign_attach_failed_item.rb +0 -10
  658. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item.rb +0 -10
  659. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +0 -12
  660. data/lib/pinnacle/types/phone_number_campaign_detach_failed_item.rb +0 -10
  661. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item.rb +0 -10
  662. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +0 -12
  663. data/lib/pinnacle/types/phone_number_cost.rb +0 -12
  664. data/lib/pinnacle/types/phone_number_details.rb +0 -15
  665. data/lib/pinnacle/types/phone_number_enum.rb +0 -18
  666. data/lib/pinnacle/types/phone_number_region.rb +0 -13
  667. data/lib/pinnacle/types/phone_number_status.rb +0 -12
  668. data/lib/pinnacle/types/phone_number_status_enum.rb +0 -13
  669. data/lib/pinnacle/types/pinnacle_file_upload_metadata.rb +0 -12
  670. data/lib/pinnacle/types/pinnacle_url_config.rb +0 -10
  671. data/lib/pinnacle/types/profile_status_enum.rb +0 -14
  672. data/lib/pinnacle/types/purchased_number.rb +0 -12
  673. data/lib/pinnacle/types/rcs_button_call.rb +0 -12
  674. data/lib/pinnacle/types/rcs_button_open_url.rb +0 -13
  675. data/lib/pinnacle/types/rcs_button_open_url_webview_mode.rb +0 -13
  676. data/lib/pinnacle/types/rcs_button_request_user_location.rb +0 -11
  677. data/lib/pinnacle/types/rcs_button_schedule_event.rb +0 -15
  678. data/lib/pinnacle/types/rcs_button_send_location.rb +0 -13
  679. data/lib/pinnacle/types/rcs_button_send_location_lat_long.rb +0 -11
  680. data/lib/pinnacle/types/rcs_button_trigger.rb +0 -12
  681. data/lib/pinnacle/types/rcs_campaign.rb +0 -23
  682. data/lib/pinnacle/types/rcs_campaign_schema_agent.rb +0 -17
  683. data/lib/pinnacle/types/rcs_campaign_schema_agent_emails_item.rb +0 -10
  684. data/lib/pinnacle/types/rcs_campaign_schema_agent_phones_item.rb +0 -10
  685. data/lib/pinnacle/types/rcs_campaign_schema_agent_websites_item.rb +0 -10
  686. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent.rb +0 -17
  687. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_emails_item.rb +0 -10
  688. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_phones_item.rb +0 -10
  689. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_websites_item.rb +0 -10
  690. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords.rb +0 -11
  691. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_help.rb +0 -10
  692. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_in.rb +0 -10
  693. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_out.rb +0 -10
  694. data/lib/pinnacle/types/rcs_campaign_schema_extra_links.rb +0 -11
  695. data/lib/pinnacle/types/rcs_campaign_schema_extra_traffic.rb +0 -10
  696. data/lib/pinnacle/types/rcs_campaign_schema_extra_use_case.rb +0 -11
  697. data/lib/pinnacle/types/rcs_campaign_schema_keywords.rb +0 -11
  698. data/lib/pinnacle/types/rcs_campaign_schema_keywords_help.rb +0 -10
  699. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_in.rb +0 -10
  700. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_out.rb +0 -10
  701. data/lib/pinnacle/types/rcs_campaign_schema_links.rb +0 -11
  702. data/lib/pinnacle/types/rcs_campaign_schema_traffic.rb +0 -10
  703. data/lib/pinnacle/types/rcs_campaign_schema_use_case.rb +0 -11
  704. data/lib/pinnacle/types/rcs_campaign_status.rb +0 -12
  705. data/lib/pinnacle/types/rcs_campaign_use_case_enum.rb +0 -24
  706. data/lib/pinnacle/types/rcs_capabilities_result.rb +0 -23
  707. data/lib/pinnacle/types/rcs_capability.rb +0 -11
  708. data/lib/pinnacle/types/rcs_capability_actions.rb +0 -16
  709. data/lib/pinnacle/types/rcs_capability_cards.rb +0 -10
  710. data/lib/pinnacle/types/rcs_cards_content.rb +0 -13
  711. data/lib/pinnacle/types/rcs_cards_content_cards_item.rb +0 -13
  712. data/lib/pinnacle/types/rcs_content.rb +0 -14
  713. data/lib/pinnacle/types/rcs_link_result.rb +0 -13
  714. data/lib/pinnacle/types/rcs_media_content.rb +0 -13
  715. data/lib/pinnacle/types/rcs_media_details_content.rb +0 -12
  716. data/lib/pinnacle/types/rcs_messaging_type_enum.rb +0 -14
  717. data/lib/pinnacle/types/rcs_validate_content.rb +0 -13
  718. data/lib/pinnacle/types/rcs_validate_content_media.rb +0 -13
  719. data/lib/pinnacle/types/rcs_validation_result.rb +0 -12
  720. data/lib/pinnacle/types/rcs_whitelist_response.rb +0 -10
  721. data/lib/pinnacle/types/reaction_result.rb +0 -10
  722. data/lib/pinnacle/types/refreshed_file.rb +0 -10
  723. data/lib/pinnacle/types/rich_button.rb +0 -18
  724. data/lib/pinnacle/types/rich_card.rb +0 -13
  725. data/lib/pinnacle/types/rich_cards.rb +0 -13
  726. data/lib/pinnacle/types/rich_cards_message.rb +0 -11
  727. data/lib/pinnacle/types/rich_media_message.rb +0 -10
  728. data/lib/pinnacle/types/rich_message.rb +0 -13
  729. data/lib/pinnacle/types/rich_standalone_card_options.rb +0 -17
  730. data/lib/pinnacle/types/rich_text.rb +0 -11
  731. data/lib/pinnacle/types/rich_text_message.rb +0 -7
  732. data/lib/pinnacle/types/schedule_cancel_result.rb +0 -10
  733. data/lib/pinnacle/types/scheduled_blast_details.rb +0 -11
  734. data/lib/pinnacle/types/scheduled_blast_response_config.rb +0 -13
  735. data/lib/pinnacle/types/scheduled_message.rb +0 -10
  736. data/lib/pinnacle/types/scheduled_send_response_config.rb +0 -13
  737. data/lib/pinnacle/types/send_rcs_card_options_standalone_card_image_alignment.rb +0 -12
  738. data/lib/pinnacle/types/send_rcs_card_options_standalone_card_orientation.rb +0 -12
  739. data/lib/pinnacle/types/send_rich_cards_options.rb +0 -9
  740. data/lib/pinnacle/types/send_rich_message_options.rb +0 -14
  741. data/lib/pinnacle/types/send_sms_response_segments.rb +0 -11
  742. data/lib/pinnacle/types/send_sms_response_segments_encoding.rb +0 -12
  743. data/lib/pinnacle/types/send_typing_indicator_response.rb +0 -14
  744. data/lib/pinnacle/types/sender.rb +0 -23
  745. data/lib/pinnacle/types/sent_mms_details.rb +0 -14
  746. data/lib/pinnacle/types/sent_rich_message.rb +0 -14
  747. data/lib/pinnacle/types/sent_sms_details.rb +0 -14
  748. data/lib/pinnacle/types/shortened_url.rb +0 -10
  749. data/lib/pinnacle/types/shortened_url_with_click_data.rb +0 -9
  750. data/lib/pinnacle/types/sms_content.rb +0 -10
  751. data/lib/pinnacle/types/sms_validation_response_segments.rb +0 -11
  752. data/lib/pinnacle/types/sms_validation_response_segments_gsm_7.rb +0 -12
  753. data/lib/pinnacle/types/sms_validation_response_segments_utf_16.rb +0 -11
  754. data/lib/pinnacle/types/sms_validation_response_total.rb +0 -10
  755. data/lib/pinnacle/types/sms_validation_result.rb +0 -12
  756. data/lib/pinnacle/types/sub_use_case_enum.rb +0 -20
  757. data/lib/pinnacle/types/submission_results.rb +0 -9
  758. data/lib/pinnacle/types/successful_conversation_update.rb +0 -10
  759. data/lib/pinnacle/types/toll_free_campaign.rb +0 -17
  760. data/lib/pinnacle/types/toll_free_campaign_schema_keywords.rb +0 -11
  761. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_help.rb +0 -10
  762. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_opt_in.rb +0 -11
  763. data/lib/pinnacle/types/toll_free_campaign_schema_links.rb +0 -11
  764. data/lib/pinnacle/types/toll_free_campaign_schema_opt_in.rb +0 -12
  765. data/lib/pinnacle/types/toll_free_campaign_schema_options.rb +0 -10
  766. data/lib/pinnacle/types/toll_free_campaign_schema_use_case.rb +0 -11
  767. data/lib/pinnacle/types/toll_free_campaign_status.rb +0 -12
  768. data/lib/pinnacle/types/toll_free_campaign_use_case_enum.rb +0 -53
  769. data/lib/pinnacle/types/toll_free_campaign_with_extended_brand_and_status.rb +0 -19
  770. data/lib/pinnacle/types/toll_free_status_enum.rb +0 -16
  771. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords.rb +0 -11
  772. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_help.rb +0 -10
  773. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_opt_in.rb +0 -11
  774. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_links.rb +0 -11
  775. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_opt_in.rb +0 -12
  776. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_options.rb +0 -10
  777. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_use_case.rb +0 -11
  778. data/lib/pinnacle/types/tracking.rb +0 -12
  779. data/lib/pinnacle/types/updated_contact_id.rb +0 -9
  780. data/lib/pinnacle/types/upload_results.rb +0 -11
  781. data/lib/pinnacle/types/user_event.rb +0 -12
  782. data/lib/pinnacle/types/user_event_conversation.rb +0 -12
  783. data/lib/pinnacle/types/v_card_address_schema_type_item.rb +0 -17
  784. data/lib/pinnacle/types/v_card_data.rb +0 -9
  785. data/lib/pinnacle/types/v_card_data_file.rb +0 -11
  786. data/lib/pinnacle/types/v_card_data_file_metadata.rb +0 -10
  787. data/lib/pinnacle/types/v_card_email_schema_type_item.rb +0 -23
  788. data/lib/pinnacle/types/v_card_geo.rb +0 -11
  789. data/lib/pinnacle/types/v_card_name.rb +0 -14
  790. data/lib/pinnacle/types/v_card_organization.rb +0 -11
  791. data/lib/pinnacle/types/v_card_phone_schema_type_item.rb +0 -23
  792. data/lib/pinnacle/types/validate_campaign_params.rb +0 -10
  793. data/lib/pinnacle/types/validation_error_details.rb +0 -11
  794. data/lib/pinnacle/types/validation_results.rb +0 -10
  795. data/lib/pinnacle/types/vcard.rb +0 -24
  796. data/lib/pinnacle/types/vcard_address.rb +0 -17
  797. data/lib/pinnacle/types/vcard_content.rb +0 -9
  798. data/lib/pinnacle/types/vcard_email.rb +0 -10
  799. data/lib/pinnacle/types/vcard_phone.rb +0 -10
  800. data/lib/pinnacle/types/vcard_resource.rb +0 -10
  801. data/lib/pinnacle/types/vetting_feedback.rb +0 -12
  802. data/lib/pinnacle/types/vetting_history.rb +0 -13
  803. data/lib/pinnacle/types/vetting_history_vetting_status.rb +0 -14
  804. data/lib/pinnacle/types/vetting_results.rb +0 -9
  805. data/lib/pinnacle/types/webhook_event_enum.rb +0 -12
  806. data/lib/pinnacle/types/webhook_result.rb +0 -11
  807. data/lib/pinnacle/types/webhooks.rb +0 -12
  808. data/lib/pinnacle/types/zod_error.rb +0 -10
  809. data/lib/pinnacle/version.rb +0 -5
  810. data/lib/pinnacle/webhooks/client.rb +0 -51
  811. data/lib/pinnacle/webhooks/types/get_webhook_params.rb +0 -11
  812. data/lib/pinnacle/wrapper/messages/client.rb +0 -72
  813. data/lib/pinnacle/wrapper/tools/client.rb +0 -14
  814. data/lib/pinnacle/wrapper/tools/file_uploader.rb +0 -149
  815. data/lib/pinnacle.rb +0 -449
  816. data/reference.md +0 -5956
  817. data/wiremock/docker-compose.test.yml +0 -14
  818. data/wiremock/wiremock-mappings.json +0 -1
  819. /data/lib/{pinnacle/environment.rb → environment.rb} +0 -0
@@ -0,0 +1,332 @@
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
@@ -0,0 +1,30 @@
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