rcs 2.0.18 → 2.0.20.pre.rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (494) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +6 -4
  3. data/.rubocop.yml +34 -0
  4. data/CONTRIBUTING.md +120 -0
  5. data/lib/pinnacle/audiences/client.rb +0 -4
  6. data/lib/pinnacle/audiences/contacts/types/add_contacts_params.rb +1 -0
  7. data/lib/pinnacle/audiences/contacts/types/remove_contacts_params.rb +1 -0
  8. data/lib/pinnacle/audiences/types/audiences_get_request.rb +2 -0
  9. data/lib/pinnacle/audiences/types/audiences_get_response.rb +1 -0
  10. data/lib/pinnacle/audiences/types/create_audience_params.rb +2 -0
  11. data/lib/pinnacle/audiences/types/list_audiences_params.rb +2 -0
  12. data/lib/pinnacle/audiences/types/update_audience_params.rb +2 -0
  13. data/lib/pinnacle/brands/client.rb +1 -3
  14. data/lib/pinnacle/brands/types/autofill_brand_params.rb +3 -0
  15. data/lib/pinnacle/brands/types/brands_get_request.rb +1 -0
  16. data/lib/pinnacle/brands/types/list_brands_params.rb +4 -0
  17. data/lib/pinnacle/brands/types/upsert_brand_params.rb +11 -0
  18. data/lib/pinnacle/brands/types/upsert_brand_schema_contact.rb +3 -0
  19. data/lib/pinnacle/brands/types/vet_brand_params.rb +3 -0
  20. data/lib/pinnacle/calls/client.rb +359 -0
  21. data/lib/pinnacle/calls/types/calls_download_recording_request.rb +13 -0
  22. data/lib/pinnacle/calls/types/calls_list_events_request.rb +15 -0
  23. data/lib/pinnacle/calls/types/calls_list_request.rb +25 -0
  24. data/lib/pinnacle/calls/types/create_call_params.rb +17 -0
  25. data/lib/pinnacle/calls/types/create_stream_token_params.rb +17 -0
  26. data/lib/pinnacle/calls/types/update_call_params.rb +13 -0
  27. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_help_keywords.rb +1 -0
  28. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +2 -0
  29. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +1 -0
  30. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +1 -0
  31. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +1 -0
  32. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +5 -0
  33. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +1 -0
  34. data/lib/pinnacle/campaigns/dlc/types/list_dlc_campaigns_params.rb +4 -0
  35. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +10 -0
  36. data/lib/pinnacle/campaigns/rcs/types/list_rcs_campaigns_params.rb +4 -0
  37. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +7 -0
  38. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +1 -0
  39. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +1 -0
  40. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +1 -0
  41. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +1 -0
  42. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +2 -0
  43. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +1 -0
  44. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +1 -0
  45. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +1 -0
  46. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +1 -0
  47. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +12 -0
  48. data/lib/pinnacle/campaigns/toll_free/types/list_toll_free_campaigns_params.rb +4 -0
  49. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +1 -0
  50. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +1 -0
  51. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +2 -0
  52. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +1 -0
  53. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +1 -0
  54. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +9 -0
  55. data/lib/pinnacle/client.rb +12 -2
  56. data/lib/pinnacle/contacts/client.rb +0 -2
  57. data/lib/pinnacle/contacts/types/contacts_get_request.rb +1 -0
  58. data/lib/pinnacle/contacts/types/create_contact_params.rb +4 -0
  59. data/lib/pinnacle/contacts/types/list_contacts_params.rb +5 -0
  60. data/lib/pinnacle/contacts/types/update_contact_params.rb +4 -0
  61. data/lib/pinnacle/conversations/client.rb +0 -2
  62. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +8 -0
  63. data/lib/pinnacle/conversations/types/list_conversations_params.rb +6 -0
  64. data/lib/pinnacle/conversations/types/update_conversation_params.rb +1 -0
  65. data/lib/pinnacle/forms/client.rb +2 -2
  66. data/lib/pinnacle/forms/submissions/client.rb +1 -1
  67. data/lib/pinnacle/forms/submissions/types/list_form_submissions_params.rb +2 -0
  68. data/lib/pinnacle/forms/types/forms_send_response.rb +1 -0
  69. data/lib/pinnacle/forms/types/list_forms_params.rb +1 -0
  70. data/lib/pinnacle/forms/types/update_form_params.rb +7 -0
  71. data/lib/pinnacle/internal/http/raw_client.rb +3 -2
  72. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +14 -2
  73. data/lib/pinnacle/internal/iterators/item_iterator.rb +6 -0
  74. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +22 -2
  75. data/lib/pinnacle/internal/types/utils.rb +2 -2
  76. data/lib/pinnacle/messages/blast/types/blast_mms.rb +3 -0
  77. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +1 -0
  78. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +1 -0
  79. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +4 -0
  80. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +3 -0
  81. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +1 -0
  82. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +1 -0
  83. data/lib/pinnacle/messages/blast/types/blast_sms.rb +3 -0
  84. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +1 -0
  85. data/lib/pinnacle/messages/blasts/types/list_blasts_params.rb +4 -0
  86. data/lib/pinnacle/messages/mms/types/mms.rb +4 -0
  87. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +1 -0
  88. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +3 -0
  89. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +3 -0
  90. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +1 -0
  91. data/lib/pinnacle/messages/schedules/types/list_scheduled_messages_params.rb +4 -0
  92. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +1 -0
  93. data/lib/pinnacle/messages/sms/types/sms.rb +3 -0
  94. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +1 -0
  95. data/lib/pinnacle/messages/types/list_messages_params.rb +10 -0
  96. data/lib/pinnacle/messages/types/react_message_params.rb +2 -0
  97. data/lib/pinnacle/network/client.rb +34 -0
  98. data/lib/pinnacle/network/requests/client.rb +94 -0
  99. data/lib/pinnacle/network/requests/types/list_network_requests_params.rb +21 -0
  100. data/lib/pinnacle/network/silent_auth/client.rb +107 -0
  101. data/lib/pinnacle/network/silent_auth/types/silent_auth_check_request.rb +15 -0
  102. data/lib/pinnacle/network/silent_auth/types/silent_auth_request.rb +17 -0
  103. data/lib/pinnacle/network/sim_swap/client.rb +55 -0
  104. data/lib/pinnacle/network/sim_swap/types/sim_swap_request.rb +15 -0
  105. data/lib/pinnacle/network/subscriber_match/client.rb +55 -0
  106. data/lib/pinnacle/network/subscriber_match/types/subscriber_match_request.rb +15 -0
  107. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +2 -0
  108. data/lib/pinnacle/phone_numbers/types/list_phone_numbers_params.rb +1 -0
  109. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +1 -0
  110. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +2 -0
  111. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +2 -0
  112. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +2 -0
  113. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +3 -0
  114. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +4 -0
  115. data/lib/pinnacle/pinnacle_client.rb +8 -0
  116. data/lib/pinnacle/rcs/agents/types/list_agents_params.rb +3 -0
  117. data/lib/pinnacle/rcs/test/client.rb +2 -4
  118. data/lib/pinnacle/rcs/test/types/create_test_agent_request.rb +11 -0
  119. data/lib/pinnacle/rcs/test/types/test_agent_whitelist_request.rb +1 -0
  120. data/lib/pinnacle/rcs/test/types/test_get_whitelist_status_request.rb +1 -0
  121. data/lib/pinnacle/rcs/test/types/update_test_agent_request.rb +12 -0
  122. data/lib/pinnacle/rcs/types/rcs_capabilities_query.rb +1 -0
  123. data/lib/pinnacle/rcs/types/rcs_link_request.rb +2 -0
  124. data/lib/pinnacle/rcs/whitelisted_numbers/types/list_test_numbers_params.rb +4 -0
  125. data/lib/pinnacle/tools/contact_card/types/get_vcard_params.rb +1 -0
  126. data/lib/pinnacle/tools/contact_card/types/upsert_vcard_params.rb +16 -0
  127. data/lib/pinnacle/tools/file/types/upload_file_options.rb +1 -0
  128. data/lib/pinnacle/tools/file/types/upload_file_params.rb +3 -0
  129. data/lib/pinnacle/tools/url/client.rb +1 -1
  130. data/lib/pinnacle/tools/url/types/create_url_params.rb +1 -0
  131. data/lib/pinnacle/tools/url/types/list_links_params.rb +2 -0
  132. data/lib/pinnacle/tools/url/types/update_url_params.rb +2 -0
  133. data/lib/pinnacle/types/address_field.rb +3 -0
  134. data/lib/pinnacle/types/advanced_phone_information.rb +5 -0
  135. data/lib/pinnacle/types/advanced_phone_information_carrier.rb +3 -0
  136. data/lib/pinnacle/types/advanced_phone_information_contact.rb +9 -0
  137. data/lib/pinnacle/types/advanced_phone_information_location.rb +7 -0
  138. data/lib/pinnacle/types/advanced_phone_information_location_coordinates.rb +1 -0
  139. data/lib/pinnacle/types/advanced_phone_information_location_country.rb +2 -0
  140. data/lib/pinnacle/types/advanced_phone_information_type.rb +3 -0
  141. data/lib/pinnacle/types/agent.rb +1 -0
  142. data/lib/pinnacle/types/agent_email_entry.rb +1 -0
  143. data/lib/pinnacle/types/agent_phone_entry.rb +1 -0
  144. data/lib/pinnacle/types/agent_summary.rb +6 -0
  145. data/lib/pinnacle/types/agent_summary_carrier_launches.rb +6 -1
  146. data/lib/pinnacle/types/agent_summary_config.rb +11 -0
  147. data/lib/pinnacle/types/agent_summary_config_emails_item.rb +1 -0
  148. data/lib/pinnacle/types/agent_summary_config_phones_item.rb +1 -0
  149. data/lib/pinnacle/types/agent_summary_config_websites_item.rb +1 -0
  150. data/lib/pinnacle/types/agent_website_entry.rb +1 -0
  151. data/lib/pinnacle/types/attach_webhook_response_webhook.rb +4 -0
  152. data/lib/pinnacle/types/attach_webhook_result.rb +3 -0
  153. data/lib/pinnacle/types/attached_phone_number_result.rb +1 -0
  154. data/lib/pinnacle/types/audience_count_only.rb +3 -0
  155. data/lib/pinnacle/types/audience_summary.rb +4 -0
  156. data/lib/pinnacle/types/audience_with_pagination.rb +5 -0
  157. data/lib/pinnacle/types/autofill_campaign_params.rb +1 -0
  158. data/lib/pinnacle/types/autofill_dlc_campaign_response.rb +10 -0
  159. data/lib/pinnacle/types/autofill_dlc_response_keywords.rb +2 -0
  160. data/lib/pinnacle/types/autofill_dlc_response_keywords_help.rb +1 -0
  161. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_in.rb +1 -0
  162. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_out.rb +1 -0
  163. data/lib/pinnacle/types/autofill_dlc_response_links.rb +1 -0
  164. data/lib/pinnacle/types/autofill_dlc_response_options.rb +5 -0
  165. data/lib/pinnacle/types/autofill_dlc_response_use_case.rb +1 -0
  166. data/lib/pinnacle/types/bad_request_error_body.rb +1 -0
  167. data/lib/pinnacle/types/base_rich_message.rb +3 -0
  168. data/lib/pinnacle/types/basic_phone_information.rb +5 -0
  169. data/lib/pinnacle/types/basic_phone_information_location.rb +1 -0
  170. data/lib/pinnacle/types/basic_phone_information_location_country.rb +2 -0
  171. data/lib/pinnacle/types/blast_details.rb +5 -0
  172. data/lib/pinnacle/types/blast_summary.rb +7 -0
  173. data/lib/pinnacle/types/brand_status.rb +2 -0
  174. data/lib/pinnacle/types/button_clicked.rb +1 -0
  175. data/lib/pinnacle/types/button_clicked_data.rb +1 -0
  176. data/lib/pinnacle/types/button_clicked_data_button.rb +4 -0
  177. data/lib/pinnacle/types/button_clicked_data_button_raw.rb +1 -0
  178. data/lib/pinnacle/types/buy_response_capabilities.rb +2 -0
  179. data/lib/pinnacle/types/call.rb +31 -0
  180. data/lib/pinnacle/types/call_direction.rb +12 -0
  181. data/lib/pinnacle/types/call_event.rb +27 -0
  182. data/lib/pinnacle/types/call_event_source.rb +14 -0
  183. data/lib/pinnacle/types/call_metadata.rb +23 -0
  184. data/lib/pinnacle/types/call_state.rb +19 -0
  185. data/lib/pinnacle/types/call_status_event.rb +14 -0
  186. data/lib/pinnacle/types/call_status_event_call.rb +17 -0
  187. data/lib/pinnacle/types/call_stream_token.rb +13 -0
  188. data/lib/pinnacle/types/campaign_query.rb +1 -0
  189. data/lib/pinnacle/types/campaign_status_event.rb +5 -0
  190. data/lib/pinnacle/types/campaign_status_event_agent.rb +1 -0
  191. data/lib/pinnacle/types/campaign_status_event_brand.rb +1 -0
  192. data/lib/pinnacle/types/campaign_status_event_campaign.rb +1 -0
  193. data/lib/pinnacle/types/campaign_status_event_carrier_launches.rb +1 -0
  194. data/lib/pinnacle/types/campaign_status_event_carrier_launches_carriers.rb +3 -0
  195. data/lib/pinnacle/types/campaign_status_event_carrier_launches_verification.rb +1 -0
  196. data/lib/pinnacle/types/campaign_validation_response_errors_item.rb +2 -0
  197. data/lib/pinnacle/types/campaign_validation_result.rb +1 -0
  198. data/lib/pinnacle/types/carrier_launches.rb +1 -0
  199. data/lib/pinnacle/types/carrier_launches_carriers.rb +3 -0
  200. data/lib/pinnacle/types/carrier_launches_verification.rb +1 -0
  201. data/lib/pinnacle/types/checkbox_field.rb +2 -0
  202. data/lib/pinnacle/types/contact.rb +5 -0
  203. data/lib/pinnacle/types/conversation.rb +7 -0
  204. data/lib/pinnacle/types/conversation_by_participants_params.rb +1 -0
  205. data/lib/pinnacle/types/conversation_contact.rb +1 -0
  206. data/lib/pinnacle/types/conversation_list.rb +2 -0
  207. data/lib/pinnacle/types/conversation_sender.rb +1 -0
  208. data/lib/pinnacle/types/created_call.rb +33 -0
  209. data/lib/pinnacle/types/date_field.rb +2 -0
  210. data/lib/pinnacle/types/datetime_field.rb +2 -0
  211. data/lib/pinnacle/types/detach_webhook_result.rb +2 -0
  212. data/lib/pinnacle/types/detached_phone_number_result.rb +1 -0
  213. data/lib/pinnacle/types/dlc_campaign_status.rb +3 -0
  214. data/lib/pinnacle/types/dlc_campaign_summary.rb +6 -0
  215. data/lib/pinnacle/types/dlc_campaign_with_extended_brand_and_status.rb +13 -0
  216. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords.rb +2 -0
  217. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_help.rb +1 -0
  218. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +1 -0
  219. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +1 -0
  220. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_links.rb +1 -0
  221. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_options.rb +5 -0
  222. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_use_case.rb +1 -0
  223. data/lib/pinnacle/types/e_164_phone_number.rb +23 -0
  224. data/lib/pinnacle/types/enhanced_contact_item.rb +4 -0
  225. data/lib/pinnacle/types/extended_brand.rb +4 -0
  226. data/lib/pinnacle/types/extended_brand_with_vetting.rb +2 -0
  227. data/lib/pinnacle/types/extended_rcs_campaign.rb +14 -0
  228. data/lib/pinnacle/types/failed_sender.rb +1 -0
  229. data/lib/pinnacle/types/fallback_message.rb +2 -0
  230. data/lib/pinnacle/types/field_base.rb +3 -0
  231. data/lib/pinnacle/types/form.rb +12 -0
  232. data/lib/pinnacle/types/form_background.rb +3 -0
  233. data/lib/pinnacle/types/form_background_gradient.rb +1 -0
  234. data/lib/pinnacle/types/form_background_image.rb +3 -0
  235. data/lib/pinnacle/types/form_color_palette.rb +2 -0
  236. data/lib/pinnacle/types/form_definition.rb +5 -0
  237. data/lib/pinnacle/types/form_field.rb +15 -0
  238. data/lib/pinnacle/types/form_field_option.rb +1 -0
  239. data/lib/pinnacle/types/form_gradient.rb +2 -0
  240. data/lib/pinnacle/types/form_submission.rb +9 -0
  241. data/lib/pinnacle/types/form_submission_answer.rb +3 -0
  242. data/lib/pinnacle/types/form_submission_event.rb +4 -0
  243. data/lib/pinnacle/types/form_submission_event_conversation.rb +2 -0
  244. data/lib/pinnacle/types/form_submission_event_form.rb +2 -0
  245. data/lib/pinnacle/types/form_submission_event_submission.rb +7 -0
  246. data/lib/pinnacle/types/form_submitted_field.rb +3 -0
  247. data/lib/pinnacle/types/form_theme_override.rb +14 -0
  248. data/lib/pinnacle/types/form_theme_override_colors.rb +1 -0
  249. data/lib/pinnacle/types/get_conversation_params.rb +1 -0
  250. data/lib/pinnacle/types/get_dlc_campaign_status_response_updates.rb +2 -0
  251. data/lib/pinnacle/types/get_toll_free_campaign_status_response_updates.rb +2 -0
  252. data/lib/pinnacle/types/hosted_silent_auth_response.rb +13 -0
  253. data/lib/pinnacle/types/json_silent_auth_response.rb +13 -0
  254. data/lib/pinnacle/types/link_click_event.rb +48 -0
  255. data/lib/pinnacle/types/link_summary.rb +3 -0
  256. data/lib/pinnacle/types/list_agents_response.rb +2 -0
  257. data/lib/pinnacle/types/list_audiences_response.rb +2 -0
  258. data/lib/pinnacle/types/list_blasts_response.rb +2 -0
  259. data/lib/pinnacle/types/list_brands_response.rb +2 -0
  260. data/lib/pinnacle/types/list_call_events_response.rb +11 -0
  261. data/lib/pinnacle/types/list_calls_response.rb +11 -0
  262. data/lib/pinnacle/types/list_contacts_response.rb +2 -0
  263. data/lib/pinnacle/types/list_dlc_campaigns_response.rb +2 -0
  264. data/lib/pinnacle/types/list_form_submissions_response.rb +2 -0
  265. data/lib/pinnacle/types/list_forms_response.rb +2 -0
  266. data/lib/pinnacle/types/list_links_response.rb +2 -0
  267. data/lib/pinnacle/types/list_messages_response.rb +2 -0
  268. data/lib/pinnacle/types/list_network_requests_response.rb +13 -0
  269. data/lib/pinnacle/types/list_phone_numbers_response.rb +2 -0
  270. data/lib/pinnacle/types/list_rcs_campaigns_response.rb +2 -0
  271. data/lib/pinnacle/types/list_scheduled_messages_response.rb +2 -0
  272. data/lib/pinnacle/types/list_test_numbers_response.rb +2 -0
  273. data/lib/pinnacle/types/list_toll_free_campaigns_response.rb +2 -0
  274. data/lib/pinnacle/types/list_webhooks_response.rb +2 -0
  275. data/lib/pinnacle/types/location_share_action_data.rb +3 -0
  276. data/lib/pinnacle/types/message.rb +11 -0
  277. data/lib/pinnacle/types/message_content.rb +3 -0
  278. data/lib/pinnacle/types/message_event.rb +9 -0
  279. data/lib/pinnacle/types/message_event_content.rb +6 -0
  280. data/lib/pinnacle/types/message_event_conversation.rb +2 -0
  281. data/lib/pinnacle/types/message_event_fallback_message.rb +5 -0
  282. data/lib/pinnacle/types/message_event_mms_content.rb +2 -0
  283. data/lib/pinnacle/types/message_event_rcs_button_data.rb +2 -0
  284. data/lib/pinnacle/types/message_event_rcs_button_data_button.rb +4 -0
  285. data/lib/pinnacle/types/message_event_rcs_button_data_button_raw.rb +1 -0
  286. data/lib/pinnacle/types/message_event_rcs_cards_content.rb +2 -0
  287. data/lib/pinnacle/types/message_event_rcs_cards_content_cards_item.rb +3 -0
  288. data/lib/pinnacle/types/message_event_rcs_location_data.rb +2 -0
  289. data/lib/pinnacle/types/message_event_rcs_location_data_data.rb +3 -0
  290. data/lib/pinnacle/types/message_event_rcs_media_content.rb +2 -0
  291. data/lib/pinnacle/types/message_event_rcs_text_content.rb +2 -0
  292. data/lib/pinnacle/types/message_event_sms_content.rb +1 -0
  293. data/lib/pinnacle/types/message_list.rb +2 -0
  294. data/lib/pinnacle/types/message_schedule.rb +3 -0
  295. data/lib/pinnacle/types/message_summary.rb +16 -0
  296. data/lib/pinnacle/types/message_with_reactions.rb +1 -0
  297. data/lib/pinnacle/types/mms_content.rb +1 -0
  298. data/lib/pinnacle/types/mms_validation_response_segments.rb +2 -0
  299. data/lib/pinnacle/types/mms_validation_response_segments_value_item.rb +2 -0
  300. data/lib/pinnacle/types/mms_validation_result.rb +2 -0
  301. data/lib/pinnacle/types/network_insight_status.rb +14 -0
  302. data/lib/pinnacle/types/network_request_id.rb +23 -0
  303. data/lib/pinnacle/types/network_request_result.rb +16 -0
  304. data/lib/pinnacle/types/network_request_status.rb +15 -0
  305. data/lib/pinnacle/types/network_request_summary.rb +27 -0
  306. data/lib/pinnacle/types/network_request_type.rb +13 -0
  307. data/lib/pinnacle/types/number_field.rb +3 -0
  308. data/lib/pinnacle/types/number_format.rb +2 -0
  309. data/lib/pinnacle/types/optional_brand_info.rb +10 -0
  310. data/lib/pinnacle/types/optional_contact.rb +3 -0
  311. data/lib/pinnacle/types/optional_contacts.rb +3 -0
  312. data/lib/pinnacle/types/owned_phone_number.rb +5 -0
  313. data/lib/pinnacle/types/pagination.rb +3 -0
  314. data/lib/pinnacle/types/phone.rb +4 -0
  315. data/lib/pinnacle/types/phone_capabilities.rb +2 -0
  316. data/lib/pinnacle/types/phone_number_campaign_attach_failed_item.rb +1 -0
  317. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item.rb +1 -0
  318. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +2 -0
  319. data/lib/pinnacle/types/phone_number_campaign_detach_failed_item.rb +1 -0
  320. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item.rb +1 -0
  321. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +2 -0
  322. data/lib/pinnacle/types/phone_number_cost.rb +2 -0
  323. data/lib/pinnacle/types/phone_number_details.rb +4 -0
  324. data/lib/pinnacle/types/phone_number_region.rb +3 -0
  325. data/lib/pinnacle/types/phone_number_status.rb +2 -0
  326. data/lib/pinnacle/types/pinnacle_file_upload_metadata.rb +3 -0
  327. data/lib/pinnacle/types/pinnacle_url_config.rb +1 -0
  328. data/lib/pinnacle/types/purchased_number.rb +1 -0
  329. data/lib/pinnacle/types/range_field.rb +2 -0
  330. data/lib/pinnacle/types/rating_field.rb +1 -0
  331. data/lib/pinnacle/types/rcs_agent_details.rb +11 -0
  332. data/lib/pinnacle/types/rcs_agent_details_emails_item.rb +1 -0
  333. data/lib/pinnacle/types/rcs_agent_details_phones_item.rb +1 -0
  334. data/lib/pinnacle/types/rcs_agent_details_websites_item.rb +1 -0
  335. data/lib/pinnacle/types/rcs_agent_response.rb +4 -0
  336. data/lib/pinnacle/types/rcs_button_call.rb +2 -0
  337. data/lib/pinnacle/types/rcs_button_open_url.rb +3 -0
  338. data/lib/pinnacle/types/rcs_button_request_user_location.rb +1 -0
  339. data/lib/pinnacle/types/rcs_button_schedule_event.rb +5 -0
  340. data/lib/pinnacle/types/rcs_button_send_location.rb +3 -0
  341. data/lib/pinnacle/types/rcs_button_send_location_lat_long.rb +1 -0
  342. data/lib/pinnacle/types/rcs_button_trigger.rb +2 -0
  343. data/lib/pinnacle/types/rcs_campaign.rb +11 -0
  344. data/lib/pinnacle/types/rcs_campaign_schema_agent.rb +7 -0
  345. data/lib/pinnacle/types/rcs_campaign_schema_agent_emails_item.rb +1 -0
  346. data/lib/pinnacle/types/rcs_campaign_schema_agent_phones_item.rb +1 -0
  347. data/lib/pinnacle/types/rcs_campaign_schema_agent_websites_item.rb +1 -0
  348. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent.rb +7 -0
  349. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_emails_item.rb +1 -0
  350. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_phones_item.rb +1 -0
  351. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_websites_item.rb +1 -0
  352. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords.rb +2 -0
  353. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_help.rb +1 -0
  354. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_in.rb +1 -0
  355. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_out.rb +1 -0
  356. data/lib/pinnacle/types/rcs_campaign_schema_extra_links.rb +1 -0
  357. data/lib/pinnacle/types/rcs_campaign_schema_extra_traffic.rb +1 -0
  358. data/lib/pinnacle/types/rcs_campaign_schema_keywords.rb +2 -0
  359. data/lib/pinnacle/types/rcs_campaign_schema_keywords_help.rb +1 -0
  360. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_in.rb +1 -0
  361. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_out.rb +1 -0
  362. data/lib/pinnacle/types/rcs_campaign_schema_links.rb +1 -0
  363. data/lib/pinnacle/types/rcs_campaign_schema_traffic.rb +1 -0
  364. data/lib/pinnacle/types/rcs_campaign_status.rb +2 -0
  365. data/lib/pinnacle/types/rcs_campaign_summary.rb +6 -0
  366. data/lib/pinnacle/types/rcs_capability.rb +1 -0
  367. data/lib/pinnacle/types/rcs_capability_actions.rb +5 -0
  368. data/lib/pinnacle/types/rcs_capability_cards.rb +1 -0
  369. data/lib/pinnacle/types/rcs_cards_content.rb +1 -0
  370. data/lib/pinnacle/types/rcs_cards_content_cards_item.rb +3 -0
  371. data/lib/pinnacle/types/rcs_content.rb +2 -0
  372. data/lib/pinnacle/types/rcs_link_result.rb +1 -0
  373. data/lib/pinnacle/types/rcs_media_content.rb +1 -0
  374. data/lib/pinnacle/types/rcs_media_details_content.rb +2 -0
  375. data/lib/pinnacle/types/rcs_validate_content.rb +2 -0
  376. data/lib/pinnacle/types/rcs_validate_content_media.rb +1 -0
  377. data/lib/pinnacle/types/rcs_validation_result.rb +3 -0
  378. data/lib/pinnacle/types/reaction_result.rb +1 -0
  379. data/lib/pinnacle/types/recording_download.rb +11 -0
  380. data/lib/pinnacle/types/recording_state.rb +14 -0
  381. data/lib/pinnacle/types/refreshed_file.rb +1 -0
  382. data/lib/pinnacle/types/rich_button.rb +5 -0
  383. data/lib/pinnacle/types/rich_card.rb +3 -0
  384. data/lib/pinnacle/types/rich_cards.rb +1 -0
  385. data/lib/pinnacle/types/rich_cards_message.rb +3 -0
  386. data/lib/pinnacle/types/rich_media_message.rb +1 -0
  387. data/lib/pinnacle/types/rich_message.rb +2 -0
  388. data/lib/pinnacle/types/rich_standalone_card_options.rb +1 -0
  389. data/lib/pinnacle/types/rich_text.rb +1 -0
  390. data/lib/pinnacle/types/scheduled_blast_details.rb +1 -0
  391. data/lib/pinnacle/types/scheduled_blast_response_config.rb +3 -0
  392. data/lib/pinnacle/types/scheduled_form_send_response_form.rb +1 -0
  393. data/lib/pinnacle/types/scheduled_form_send_response_submission.rb +1 -0
  394. data/lib/pinnacle/types/scheduled_form_send_result.rb +3 -0
  395. data/lib/pinnacle/types/scheduled_message.rb +1 -0
  396. data/lib/pinnacle/types/scheduled_message_summary.rb +8 -0
  397. data/lib/pinnacle/types/scheduled_send_response_config.rb +3 -0
  398. data/lib/pinnacle/types/select_field.rb +1 -0
  399. data/lib/pinnacle/types/send_form_options.rb +1 -0
  400. data/lib/pinnacle/types/send_form_params.rb +1 -0
  401. data/lib/pinnacle/types/send_form_result.rb +2 -0
  402. data/lib/pinnacle/types/send_form_via_rcs_params.rb +4 -0
  403. data/lib/pinnacle/types/send_form_via_rcs_request_form.rb +1 -0
  404. data/lib/pinnacle/types/send_form_via_sms_params.rb +3 -0
  405. data/lib/pinnacle/types/send_form_via_sms_request_form.rb +1 -0
  406. data/lib/pinnacle/types/send_rich_cards_options.rb +4 -0
  407. data/lib/pinnacle/types/send_rich_message_options.rb +3 -0
  408. data/lib/pinnacle/types/send_rich_message_options_4.rb +3 -0
  409. data/lib/pinnacle/types/send_sms_response_segments.rb +1 -0
  410. data/lib/pinnacle/types/send_typing_indicator_response.rb +4 -0
  411. data/lib/pinnacle/types/sent_mms_details.rb +5 -0
  412. data/lib/pinnacle/types/sent_rich_message.rb +5 -0
  413. data/lib/pinnacle/types/sent_rich_message_fallback_mms.rb +1 -0
  414. data/lib/pinnacle/types/sent_rich_message_fallback_sms.rb +1 -0
  415. data/lib/pinnacle/types/sent_sms_details.rb +5 -0
  416. data/lib/pinnacle/types/shortened_url.rb +1 -0
  417. data/lib/pinnacle/types/silent_auth_check_response.rb +11 -0
  418. data/lib/pinnacle/types/silent_auth_check_response_status.rb +12 -0
  419. data/lib/pinnacle/types/silent_auth_response.rb +15 -0
  420. data/lib/pinnacle/types/sim_swap_response.rb +15 -0
  421. data/lib/pinnacle/types/simulate_message_input.rb +1 -0
  422. data/lib/pinnacle/types/simulate_user_button.rb +2 -0
  423. data/lib/pinnacle/types/simulate_user_message.rb +2 -0
  424. data/lib/pinnacle/types/simulate_user_params.rb +1 -0
  425. data/lib/pinnacle/types/sms_validation_response_segments.rb +1 -0
  426. data/lib/pinnacle/types/sms_validation_response_segments_gsm_7.rb +2 -0
  427. data/lib/pinnacle/types/sms_validation_response_segments_utf_16.rb +1 -0
  428. data/lib/pinnacle/types/sms_validation_response_total.rb +1 -0
  429. data/lib/pinnacle/types/sms_validation_result.rb +3 -0
  430. data/lib/pinnacle/types/subscriber_match_attributes.rb +30 -0
  431. data/lib/pinnacle/types/subscriber_match_response.rb +13 -0
  432. data/lib/pinnacle/types/subscriber_match_response_matches.rb +41 -0
  433. data/lib/pinnacle/types/subscriber_match_result.rb +18 -0
  434. data/lib/pinnacle/types/test_agent_response.rb +3 -0
  435. data/lib/pinnacle/types/text_field.rb +3 -0
  436. data/lib/pinnacle/types/textarea_field.rb +3 -0
  437. data/lib/pinnacle/types/time_field.rb +2 -0
  438. data/lib/pinnacle/types/toll_free_campaign.rb +8 -0
  439. data/lib/pinnacle/types/toll_free_campaign_schema_keywords.rb +1 -0
  440. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_opt_in.rb +1 -0
  441. data/lib/pinnacle/types/toll_free_campaign_schema_links.rb +1 -0
  442. data/lib/pinnacle/types/toll_free_campaign_schema_opt_in.rb +2 -0
  443. data/lib/pinnacle/types/toll_free_campaign_schema_use_case.rb +1 -0
  444. data/lib/pinnacle/types/toll_free_campaign_status.rb +2 -0
  445. data/lib/pinnacle/types/toll_free_campaign_summary.rb +6 -0
  446. data/lib/pinnacle/types/toll_free_campaign_with_extended_brand_and_status.rb +10 -0
  447. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords.rb +1 -0
  448. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_opt_in.rb +1 -0
  449. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_links.rb +1 -0
  450. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_opt_in.rb +2 -0
  451. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_use_case.rb +1 -0
  452. data/lib/pinnacle/types/upload_results.rb +2 -0
  453. data/lib/pinnacle/types/user_button_press.rb +5 -0
  454. data/lib/pinnacle/types/user_button_press_call.rb +2 -0
  455. data/lib/pinnacle/types/user_button_press_open_url.rb +2 -0
  456. data/lib/pinnacle/types/user_button_press_request_user_location.rb +2 -0
  457. data/lib/pinnacle/types/user_button_press_request_user_location_location.rb +3 -0
  458. data/lib/pinnacle/types/user_button_press_schedule_event.rb +5 -0
  459. data/lib/pinnacle/types/user_button_press_send_location.rb +3 -0
  460. data/lib/pinnacle/types/user_button_press_send_location_lat_long.rb +1 -0
  461. data/lib/pinnacle/types/user_button_press_trigger.rb +2 -0
  462. data/lib/pinnacle/types/user_event.rb +2 -0
  463. data/lib/pinnacle/types/user_event_conversation.rb +2 -0
  464. data/lib/pinnacle/types/v_card_data_file.rb +1 -0
  465. data/lib/pinnacle/types/v_card_geo.rb +1 -0
  466. data/lib/pinnacle/types/v_card_name.rb +4 -0
  467. data/lib/pinnacle/types/v_card_organization.rb +1 -0
  468. data/lib/pinnacle/types/validate_campaign_params.rb +1 -0
  469. data/lib/pinnacle/types/validation_error_details.rb +2 -0
  470. data/lib/pinnacle/types/validation_results.rb +1 -0
  471. data/lib/pinnacle/types/vcard.rb +15 -0
  472. data/lib/pinnacle/types/vcard_address.rb +8 -0
  473. data/lib/pinnacle/types/vcard_email.rb +1 -0
  474. data/lib/pinnacle/types/vcard_phone.rb +1 -0
  475. data/lib/pinnacle/types/vcard_resource.rb +1 -0
  476. data/lib/pinnacle/types/vetting_feedback.rb +3 -0
  477. data/lib/pinnacle/types/vetting_history.rb +4 -0
  478. data/lib/pinnacle/types/webhook_event_enum.rb +1 -0
  479. data/lib/pinnacle/types/webhook_summary.rb +6 -0
  480. data/lib/pinnacle/types/webhooks.rb +3 -0
  481. data/lib/pinnacle/types/whitelisted_number_summary.rb +3 -0
  482. data/lib/pinnacle/types/zod_error.rb +1 -0
  483. data/lib/pinnacle/version.rb +1 -1
  484. data/lib/pinnacle/webhooks/types/attach_webhook_params.rb +5 -0
  485. data/lib/pinnacle/webhooks/types/detach_webhook_params.rb +1 -0
  486. data/lib/pinnacle/webhooks/types/list_webhooks_params.rb +3 -0
  487. data/lib/pinnacle/wrapper/messages/client.rb +4 -1
  488. data/lib/pinnacle/wrapper/voice/client.rb +125 -0
  489. data/lib/pinnacle/wrapper/voice/types.rb +38 -0
  490. data/lib/pinnacle/wrapper/voice/voice_socket.rb +354 -0
  491. data/lib/pinnacle.rb +54 -0
  492. data/lib/rcs.rb +1 -637
  493. data/reference.md +2011 -804
  494. metadata +76 -3
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  # See (supported file types)[https://app.pinnacle.sh/supported-file-types?type=RCS-CARD].
8
8
  class RichCards < Internal::Types::Model
9
9
  field :cards, -> { Internal::Types::Array[Pinnacle::Types::RichCard] }, optional: false, nullable: false
10
+
10
11
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: true, nullable: false, api_name: "quickReplies"
11
12
  end
12
13
  end
@@ -4,8 +4,11 @@ module Pinnacle
4
4
  module Types
5
5
  class RichCardsMessage < Internal::Types::Model
6
6
  field :options, -> { Pinnacle::Types::SendRichCardsOptions }, optional: true, nullable: false
7
+
7
8
  field :from, -> { String }, optional: false, nullable: false
9
+
8
10
  field :fallback, -> { Pinnacle::Types::FallbackMessage }, optional: true, nullable: false
11
+
9
12
  field :to, -> { String }, optional: false, nullable: false
10
13
  end
11
14
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class RichMediaMessage < Internal::Types::Model
6
6
  field :media, -> { String }, optional: false, nullable: false
7
+
7
8
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: true, nullable: false, api_name: "quickReplies"
8
9
  end
9
10
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  extend Pinnacle::Internal::Types::Union
7
7
 
8
8
  member -> { Pinnacle::Types::RichTextMessage }
9
+
9
10
  member -> { Pinnacle::Types::RichMediaMessage }
11
+
10
12
  member -> { Pinnacle::Types::RichCardsMessage }
11
13
  end
12
14
  end
@@ -11,6 +11,7 @@ module Pinnacle
11
11
  # > GIFs and videos are not supported and will be rendered as vertical cards.
12
12
  class RichStandaloneCardOptions < Internal::Types::Model
13
13
  field :orientation, -> { Pinnacle::Types::SendRcsCardOptionsStandaloneCardOrientation }, optional: true, nullable: false
14
+
14
15
  field :image_alignment, -> { Pinnacle::Types::SendRcsCardOptionsStandaloneCardImageAlignment }, optional: true, nullable: false
15
16
  end
16
17
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Message containing longer text content with optional quick reply buttons.
6
6
  class RichText < Internal::Types::Model
7
7
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: true, nullable: false, api_name: "quickReplies"
8
+
8
9
  field :text, -> { String }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Response returned when a blast is scheduled for future delivery.
6
6
  class ScheduledBlastDetails < Internal::Types::Model
7
7
  field :schedule_id, -> { String }, optional: false, nullable: false, api_name: "scheduleId"
8
+
8
9
  field :config, -> { Pinnacle::Types::ScheduledBlastResponseConfig }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # The schedule configuration for the blast.
6
6
  class ScheduledBlastResponseConfig < Internal::Types::Model
7
7
  field :send_at, -> { String }, optional: true, nullable: false, api_name: "sendAt"
8
+
8
9
  field :recurrence, -> { String }, optional: true, nullable: false
10
+
9
11
  field :timezone, -> { String }, optional: true, nullable: false
12
+
10
13
  field :end_date, -> { String }, optional: true, nullable: false, api_name: "endDate"
11
14
  end
12
15
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class ScheduledFormSendResponseForm < Internal::Types::Model
6
6
  field :id, -> { String }, optional: false, nullable: false
7
+
7
8
  field :name, -> { String }, optional: false, nullable: true
8
9
  end
9
10
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class ScheduledFormSendResponseSubmission < Internal::Types::Model
6
6
  field :id, -> { String }, optional: false, nullable: false
7
+
7
8
  field :url, -> { String }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Response shape for a scheduled form send — returned in place of `SendFormResponse` when `options.schedule` is set.
6
6
  class ScheduledFormSendResult < Internal::Types::Model
7
7
  field :schedule_id, -> { String }, optional: false, nullable: false, api_name: "scheduleId"
8
+
8
9
  field :config, -> { Pinnacle::Types::MessageSchedule }, optional: false, nullable: false
10
+
9
11
  field :form, -> { Pinnacle::Types::ScheduledFormSendResponseForm }, optional: false, nullable: false
12
+
10
13
  field :submission, -> { Pinnacle::Types::ScheduledFormSendResponseSubmission }, optional: false, nullable: false
11
14
  end
12
15
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class ScheduledMessage < Internal::Types::Model
6
6
  field :schedule_id, -> { String }, optional: false, nullable: false, api_name: "scheduleId"
7
+
7
8
  field :config, -> { Pinnacle::Types::ScheduledSendResponseConfig }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -4,13 +4,21 @@ module Pinnacle
4
4
  module Types
5
5
  class ScheduledMessageSummary < Internal::Types::Model
6
6
  field :id, -> { String }, optional: false, nullable: false
7
+
7
8
  field :send_at, -> { String }, optional: false, nullable: true, api_name: "sendAt"
9
+
8
10
  field :status, -> { Pinnacle::Types::ScheduledMessageSummaryStatus }, optional: false, nullable: false
11
+
9
12
  field :recurrence, -> { String }, optional: false, nullable: true
13
+
10
14
  field :timezone, -> { String }, optional: false, nullable: true
15
+
11
16
  field :end_date, -> { String }, optional: false, nullable: true, api_name: "endDate"
17
+
12
18
  field :payload, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
19
+
13
20
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
21
+
14
22
  field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
15
23
  end
16
24
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Configuration for the scheduled message.
6
6
  class ScheduledSendResponseConfig < Internal::Types::Model
7
7
  field :send_at, -> { String }, optional: false, nullable: false, api_name: "sendAt"
8
+
8
9
  field :recurrence, -> { String }, optional: true, nullable: false
10
+
9
11
  field :timezone, -> { String }, optional: false, nullable: false
12
+
10
13
  field :end_date, -> { String }, optional: true, nullable: false, api_name: "endDate"
11
14
  end
12
15
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Single-select dropdown.
6
6
  class SelectField < Internal::Types::Model
7
7
  field :options, -> { Internal::Types::Array[Pinnacle::Types::FormFieldOption] }, optional: false, nullable: false
8
+
8
9
  field :placeholder, -> { String }, optional: true, nullable: false
9
10
  end
10
11
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Optional delivery knobs shared by RCS and SMS sends.
6
6
  class SendFormOptions < Internal::Types::Model
7
7
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
8
+
8
9
  field :webview_mode, -> { Pinnacle::Types::SendFormOptionsWebviewMode }, optional: true, nullable: false
9
10
  end
10
11
  end
@@ -14,6 +14,7 @@ module Pinnacle
14
14
  extend Pinnacle::Internal::Types::Union
15
15
 
16
16
  member -> { Pinnacle::Types::SendFormViaRcsParams }
17
+
17
18
  member -> { Pinnacle::Types::SendFormViaSmsParams }
18
19
  end
19
20
  end
@@ -10,7 +10,9 @@ module Pinnacle
10
10
  # submission URL is returned.
11
11
  class SendFormResult < Internal::Types::Model
12
12
  field :form, -> { Pinnacle::Types::Form }, optional: false, nullable: false
13
+
13
14
  field :submission, -> { Pinnacle::Types::FormSubmission }, optional: false, nullable: false
15
+
14
16
  field :message_id, -> { String }, optional: false, nullable: true
15
17
  end
16
18
  end
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  # Send a form from an RCS agent. `from` must be an `agent_*` id.
6
6
  class SendFormViaRcsParams < Internal::Types::Model
7
7
  field :from, -> { String }, optional: false, nullable: false
8
+
8
9
  field :to, -> { String }, optional: true, nullable: false
10
+
9
11
  field :form, -> { Pinnacle::Types::SendFormViaRcsRequestForm }, optional: false, nullable: false
12
+
10
13
  field :fallback, -> { Pinnacle::Types::SendFormViaRcsRequestFallback }, optional: true, nullable: false
14
+
11
15
  field :options, -> { Pinnacle::Types::SendFormOptions }, optional: true, nullable: false
12
16
  end
13
17
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  extend Pinnacle::Internal::Types::Union
8
8
 
9
9
  member -> { String }
10
+
10
11
  member -> { Pinnacle::Types::FormDefinition }
11
12
  end
12
13
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Send a form from a phone number. `from` must be an E.164 phone.
6
6
  class SendFormViaSmsParams < Internal::Types::Model
7
7
  field :from, -> { String }, optional: false, nullable: false
8
+
8
9
  field :to, -> { String }, optional: true, nullable: false
10
+
9
11
  field :form, -> { Pinnacle::Types::SendFormViaSmsRequestForm }, optional: false, nullable: false
12
+
10
13
  field :options, -> { Pinnacle::Types::SendFormOptions }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  extend Pinnacle::Internal::Types::Union
7
7
 
8
8
  member -> { String }
9
+
9
10
  member -> { Pinnacle::Types::FormDefinition }
10
11
  end
11
12
  end
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  # Configure how your RCS message is sent and tracked.
6
6
  class SendRichCardsOptions < Internal::Types::Model
7
7
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
8
+
8
9
  field :tracking, -> { Pinnacle::Types::Tracking }, optional: true, nullable: false
10
+
9
11
  field :transcode, -> { Internal::Types::Boolean }, optional: true, nullable: false
12
+
10
13
  field :validate, -> { Internal::Types::Boolean }, optional: true, nullable: false
14
+
11
15
  field :standalone_card, -> { Pinnacle::Types::RichStandaloneCardOptions }, optional: true, nullable: false
12
16
  end
13
17
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Configure how your RCS message is sent and tracked.
6
6
  class SendRichMessageOptions < Internal::Types::Model
7
7
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
8
+
8
9
  field :tracking, -> { Pinnacle::Types::Tracking }, optional: true, nullable: false
10
+
9
11
  field :transcode, -> { Internal::Types::Boolean }, optional: true, nullable: false
12
+
10
13
  field :validate, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Configure how your RCS message is sent and tracked.
6
6
  class SendRichMessageOptions4 < Internal::Types::Model
7
7
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
8
+
8
9
  field :tracking, -> { Pinnacle::Types::Tracking }, optional: true, nullable: false
10
+
9
11
  field :transcode, -> { Internal::Types::Boolean }, optional: true, nullable: false
12
+
10
13
  field :validate, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Details about how the message was segmented for sending.
6
6
  class SendSmsResponseSegments < Internal::Types::Model
7
7
  field :count, -> { Integer }, optional: false, nullable: false
8
+
8
9
  field :encoding, -> { Pinnacle::Types::SendSmsResponseSegmentsEncoding }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  # Response schema confirming the typing indicator was sent.
6
6
  class SendTypingIndicatorResponse < Internal::Types::Model
7
7
  field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
8
9
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
10
+
9
11
  field :recipient, -> { String }, optional: false, nullable: false
12
+
10
13
  field :started_at, -> { String }, optional: false, nullable: false, api_name: "startedAt"
14
+
11
15
  field :ended_at, -> { String }, optional: false, nullable: false, api_name: "endedAt"
12
16
  end
13
17
  end
@@ -4,10 +4,15 @@ module Pinnacle
4
4
  module Types
5
5
  class SentMmsDetails < Internal::Types::Model
6
6
  field :message_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "messageIds"
7
+
7
8
  field :segments, -> { Integer }, optional: false, nullable: false
9
+
8
10
  field :total_cost, -> { Integer }, optional: false, nullable: false, api_name: "totalCost"
11
+
9
12
  field :sender, -> { String }, optional: false, nullable: false
13
+
10
14
  field :recipient, -> { String }, optional: false, nullable: false
15
+
11
16
  field :status, -> { String }, optional: false, nullable: false
12
17
  end
13
18
  end
@@ -4,10 +4,15 @@ module Pinnacle
4
4
  module Types
5
5
  class SentRichMessage < Internal::Types::Model
6
6
  field :message_id, -> { String }, optional: false, nullable: false, api_name: "messageId"
7
+
7
8
  field :segments, -> { Integer }, optional: false, nullable: false
9
+
8
10
  field :total_cost, -> { Integer }, optional: false, nullable: false, api_name: "totalCost"
11
+
9
12
  field :sender, -> { String }, optional: false, nullable: false
13
+
10
14
  field :recipient, -> { String }, optional: false, nullable: false
15
+
11
16
  field :status, -> { String }, optional: false, nullable: false
12
17
  end
13
18
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  # a `FALLBACK_SENT` webhook event for the original RCS message.
8
8
  class SentRichMessageFallbackMms < Internal::Types::Model
9
9
  field :fallback_sent, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "fallbackSent"
10
+
10
11
  field :original_message_id, -> { String }, optional: false, nullable: false, api_name: "originalMessageId"
11
12
  end
12
13
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  # a `FALLBACK_SENT` webhook event for the original RCS message.
8
8
  class SentRichMessageFallbackSms < Internal::Types::Model
9
9
  field :fallback_sent, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "fallbackSent"
10
+
10
11
  field :original_message_id, -> { String }, optional: false, nullable: false, api_name: "originalMessageId"
11
12
  end
12
13
  end
@@ -4,10 +4,15 @@ module Pinnacle
4
4
  module Types
5
5
  class SentSmsDetails < Internal::Types::Model
6
6
  field :message_id, -> { String }, optional: false, nullable: false, api_name: "messageId"
7
+
7
8
  field :segments, -> { Pinnacle::Types::SendSmsResponseSegments }, optional: false, nullable: false
9
+
8
10
  field :total_cost, -> { Integer }, optional: false, nullable: false, api_name: "totalCost"
11
+
9
12
  field :sender, -> { String }, optional: false, nullable: false
13
+
10
14
  field :recipient, -> { String }, optional: false, nullable: false
15
+
11
16
  field :status, -> { String }, optional: false, nullable: false
12
17
  end
13
18
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class ShortenedUrl < Internal::Types::Model
6
6
  field :url, -> { String }, optional: false, nullable: false
7
+
7
8
  field :config, -> { Pinnacle::Types::PinnacleUrlConfig }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ class SilentAuthCheckResponse < Internal::Types::Model
6
+ field :request_id, -> { String }, optional: false, nullable: false, api_name: "requestId"
7
+
8
+ field :status, -> { Pinnacle::Types::SilentAuthCheckResponseStatus }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ module SilentAuthCheckResponseStatus
6
+ extend Pinnacle::Internal::Types::Enum
7
+
8
+ COMPLETED = "completed"
9
+ FAILED = "failed"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ class SilentAuthResponse < Internal::Types::Model
6
+ extend Pinnacle::Internal::Types::Union
7
+
8
+ discriminant :format
9
+
10
+ member -> { Pinnacle::Types::HostedSilentAuthResponse }, key: "HOSTED"
11
+
12
+ member -> { Pinnacle::Types::JsonSilentAuthResponse }, key: "JSON_"
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ class SimSwapResponse < Internal::Types::Model
6
+ field :request_id, -> { String }, optional: false, nullable: false, api_name: "requestId"
7
+
8
+ field :status, -> { Pinnacle::Types::NetworkInsightStatus }, optional: false, nullable: false
9
+
10
+ field :sim_swapped, -> { Internal::Types::Boolean }, optional: false, nullable: true, api_name: "simSwapped"
11
+
12
+ field :latest_sim_swap_at, -> { String }, optional: false, nullable: true, api_name: "latestSimSwapAt"
13
+ end
14
+ end
15
+ end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  # Send only `text` to simulate an inbound SMS; include `mediaUrls` to simulate an inbound MMS.
7
7
  class SimulateMessageInput < Internal::Types::Model
8
8
  field :text, -> { String }, optional: true, nullable: false
9
+
9
10
  field :media_urls, -> { Internal::Types::Array[String] }, optional: true, nullable: false, api_name: "mediaUrls"
10
11
  end
11
12
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Simulate a button press from a user.
6
6
  class SimulateUserButton < Internal::Types::Model
7
7
  field :from, -> { String }, optional: false, nullable: false
8
+
8
9
  field :to, -> { String }, optional: false, nullable: false
10
+
9
11
  field :button, -> { Pinnacle::Types::UserButtonPress }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Simulate an inbound message from a user.
6
6
  class SimulateUserMessage < Internal::Types::Model
7
7
  field :from, -> { String }, optional: false, nullable: false
8
+
8
9
  field :to, -> { String }, optional: false, nullable: false
10
+
9
11
  field :message, -> { Pinnacle::Types::SimulateMessageInput }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  extend Pinnacle::Internal::Types::Union
8
8
 
9
9
  member -> { Pinnacle::Types::SimulateUserMessage }
10
+
10
11
  member -> { Pinnacle::Types::SimulateUserButton }
11
12
  end
12
13
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Details about how the SMS content would be segmented for delivery.
6
6
  class SmsValidationResponseSegments < Internal::Types::Model
7
7
  field :gsm_7, -> { Pinnacle::Types::SmsValidationResponseSegmentsGsm7 }, optional: false, nullable: false, api_name: "gsm7"
8
+
8
9
  field :utf_16, -> { Pinnacle::Types::SmsValidationResponseSegmentsUtf16 }, optional: false, nullable: false, api_name: "utf16"
9
10
  end
10
11
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Segmentation details when your message is encoded with GSM-7.
6
6
  class SmsValidationResponseSegmentsGsm7 < Internal::Types::Model
7
7
  field :total_bytes, -> { Integer }, optional: false, nullable: false, api_name: "totalBytes"
8
+
8
9
  field :unsupported, -> { Internal::Types::Array[String] }, optional: false, nullable: false
10
+
9
11
  field :value, -> { Internal::Types::Array[String] }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Segmentation details when your message is encoded with UTF-16.
6
6
  class SmsValidationResponseSegmentsUtf16 < Internal::Types::Model
7
7
  field :total_bytes, -> { Integer }, optional: false, nullable: false, api_name: "totalBytes"
8
+
8
9
  field :value, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class SmsValidationResponseTotal < Internal::Types::Model
6
6
  field :gsm_7, -> { Integer }, optional: false, nullable: false, api_name: "gsm7"
7
+
7
8
  field :utf_16, -> { Integer }, optional: false, nullable: false, api_name: "utf16"
8
9
  end
9
10
  end
@@ -4,8 +4,11 @@ module Pinnacle
4
4
  module Types
5
5
  class SmsValidationResult < Internal::Types::Model
6
6
  field :is_over_segment_limit, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isOverSegmentLimit"
7
+
7
8
  field :segments, -> { Pinnacle::Types::SmsValidationResponseSegments }, optional: false, nullable: false
9
+
8
10
  field :total, -> { Pinnacle::Types::SmsValidationResponseTotal }, optional: false, nullable: false
11
+
9
12
  field :unit, -> { Integer }, optional: false, nullable: false
10
13
  end
11
14
  end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ # User-provided subscriber details to compare with the carrier record. Provide at least one non-empty field.
6
+ class SubscriberMatchAttributes < Internal::Types::Model
7
+ field :id_document, -> { String }, optional: true, nullable: false, api_name: "idDocument"
8
+
9
+ field :given_name, -> { String }, optional: true, nullable: false, api_name: "givenName"
10
+
11
+ field :family_name, -> { String }, optional: true, nullable: false, api_name: "familyName"
12
+
13
+ field :street_name, -> { String }, optional: true, nullable: false, api_name: "streetName"
14
+
15
+ field :street_number, -> { String }, optional: true, nullable: false, api_name: "streetNumber"
16
+
17
+ field :postal_code, -> { String }, optional: true, nullable: false, api_name: "postalCode"
18
+
19
+ field :locality, -> { String }, optional: true, nullable: false
20
+
21
+ field :region, -> { String }, optional: true, nullable: false
22
+
23
+ field :country, -> { String }, optional: true, nullable: false
24
+
25
+ field :street_number_suffix, -> { String }, optional: true, nullable: false, api_name: "streetNumberSuffix"
26
+
27
+ field :birthdate, -> { String }, optional: true, nullable: false
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ class SubscriberMatchResponse < Internal::Types::Model
6
+ field :request_id, -> { String }, optional: false, nullable: false, api_name: "requestId"
7
+
8
+ field :status, -> { Pinnacle::Types::NetworkInsightStatus }, optional: false, nullable: false
9
+
10
+ field :matches, -> { Pinnacle::Types::SubscriberMatchResponseMatches }, optional: false, nullable: false
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ # Match strength for each evaluated subscriber attribute.
6
+ #
7
+ # - `exact`: Carrier record matches the submitted value exactly.
8
+ # - `high`: Strong match with minor formatting or normalization differences.
9
+ # - `partial`: Some parts match, but the value is not a strong match.
10
+ # - `low`: Weak match.
11
+ # - `none`: Carrier record does not match the submitted value.
12
+ # - `unavailable`: Carrier could not evaluate this attribute.
13
+ # - `included-with-address-match`: Attribute was evaluated as part of the overall address match.
14
+ # - `unknown`: Carrier returned a match value Pinnacle does not recognize yet.
15
+ class SubscriberMatchResponseMatches < Internal::Types::Model
16
+ field :id_document, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "idDocument"
17
+
18
+ field :given_name, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "givenName"
19
+
20
+ field :family_name, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "familyName"
21
+
22
+ field :address, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false
23
+
24
+ field :street_name, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "streetName"
25
+
26
+ field :street_number, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "streetNumber"
27
+
28
+ field :postal_code, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "postalCode"
29
+
30
+ field :locality, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false
31
+
32
+ field :region, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false
33
+
34
+ field :country, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false
35
+
36
+ field :street_number_suffix, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false, api_name: "streetNumberSuffix"
37
+
38
+ field :birthdate, -> { Pinnacle::Types::SubscriberMatchResult }, optional: true, nullable: false
39
+ end
40
+ end
41
+ end