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
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  # Information about the button that was clicked.
6
6
  class MessageEventRcsButtonDataButton < Internal::Types::Model
7
7
  field :type, -> { Pinnacle::Types::MessageEventRcsButtonDataButtonType }, optional: true, nullable: false
8
+
8
9
  field :raw, -> { Pinnacle::Types::MessageEventRcsButtonDataButtonRaw }, optional: false, nullable: false
10
+
9
11
  field :payload, -> { String }, optional: true, nullable: false
12
+
10
13
  field :metadata, -> { String }, optional: true, nullable: false
14
+
11
15
  field :clicks, -> { Integer }, optional: false, nullable: false
12
16
  end
13
17
  end
@@ -8,6 +8,7 @@ module Pinnacle
8
8
  extend Pinnacle::Internal::Types::Union
9
9
 
10
10
  member -> { Pinnacle::Types::RichButton }
11
+
11
12
  member -> { String }
12
13
  end
13
14
  end
@@ -8,7 +8,9 @@ module Pinnacle
8
8
  # See [supported file types](https://app.pinnacle.sh/supported-file-types?type=RCS-CARD).
9
9
  class MessageEventRcsCardsContent < Internal::Types::Model
10
10
  field :id, -> { String }, optional: false, nullable: false
11
+
11
12
  field :cards, -> { Internal::Types::Array[Pinnacle::Types::MessageEventRcsCardsContentCardsItem] }, optional: false, nullable: false
13
+
12
14
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: false, nullable: false, api_name: "quickReplies"
13
15
  end
14
16
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Individual card containing title, optional media, and action buttons.
6
6
  class MessageEventRcsCardsContentCardsItem < Internal::Types::Model
7
7
  field :buttons, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: false, nullable: false
8
+
8
9
  field :media, -> { Pinnacle::Types::RcsMediaDetailsContent }, optional: true, nullable: false
10
+
9
11
  field :subtitle, -> { String }, optional: true, nullable: false
12
+
10
13
  field :title, -> { String }, optional: false, nullable: false
11
14
  end
12
15
  end
@@ -9,7 +9,9 @@ module Pinnacle
9
9
  # user chose to share. Use this data to process location-based requests or provide location-specific services.
10
10
  class MessageEventRcsLocationData < Internal::Types::Model
11
11
  field :id, -> { String }, optional: false, nullable: false
12
+
12
13
  field :data, -> { Pinnacle::Types::MessageEventRcsLocationDataData }, optional: false, nullable: false
14
+
13
15
  field :message_id, -> { String }, optional: true, nullable: false, api_name: "messageId"
14
16
  end
15
17
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Location data shared by the user.
6
6
  class MessageEventRcsLocationDataData < Internal::Types::Model
7
7
  field :address, -> { String }, optional: false, nullable: false
8
+
8
9
  field :latitude, -> { Integer }, optional: false, nullable: false
10
+
9
11
  field :longitude, -> { Integer }, optional: false, nullable: false
12
+
10
13
  field :text, -> { String }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -7,7 +7,9 @@ module Pinnacle
7
7
  # See [supported file types](https://app.pinnacle.sh/supported-file-types?type=RCS-MEDIA).
8
8
  class MessageEventRcsMediaContent < Internal::Types::Model
9
9
  field :id, -> { String }, optional: false, nullable: false
10
+
10
11
  field :media, -> { String }, optional: false, nullable: false
12
+
11
13
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: false, nullable: false, api_name: "quickReplies"
12
14
  end
13
15
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # RCS message containing longer text content with optional quick reply buttons.
6
6
  class MessageEventRcsTextContent < Internal::Types::Model
7
7
  field :id, -> { String }, optional: false, nullable: false
8
+
8
9
  field :quick_replies, -> { Internal::Types::Array[Pinnacle::Types::RichButton] }, optional: false, nullable: false, api_name: "quickReplies"
10
+
9
11
  field :text, -> { String }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # SMS message containing plain text only.
6
6
  class MessageEventSmsContent < Internal::Types::Model
7
7
  field :id, -> { String }, optional: false, nullable: false
8
+
8
9
  field :text, -> { String }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Paginated list of messages in a conversation.
6
6
  class MessageList < Internal::Types::Model
7
7
  field :messages, -> { Internal::Types::Array[Pinnacle::Types::MessageWithReactions] }, optional: false, nullable: false
8
+
8
9
  field :has_more, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "hasMore"
10
+
9
11
  field :count, -> { Integer }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Define when and how your message should be sent.
6
6
  class MessageSchedule < 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: true, nullable: false
12
+
10
13
  field :end_date, -> { String }, optional: true, nullable: false, api_name: "endDate"
11
14
  end
12
15
  end
@@ -4,21 +4,37 @@ module Pinnacle
4
4
  module Types
5
5
  class MessageSummary < Internal::Types::Model
6
6
  field :id, -> { String }, optional: false, nullable: false
7
+
7
8
  field :status, -> { Pinnacle::Types::MessageSummaryStatus }, optional: false, nullable: false
9
+
8
10
  field :direction, -> { Pinnacle::Types::MessageSummaryDirection }, optional: false, nullable: false
11
+
9
12
  field :type, -> { Pinnacle::Types::MessageSummaryType }, optional: false, nullable: false
13
+
10
14
  field :method_, -> { Pinnacle::Types::MessageSummaryMethod }, optional: false, nullable: false, api_name: "method"
15
+
11
16
  field :num_segments, -> { Integer }, optional: false, nullable: false, api_name: "numSegments"
17
+
12
18
  field :cost, -> { Integer }, optional: false, nullable: true
19
+
13
20
  field :from, -> { String }, optional: false, nullable: true
21
+
14
22
  field :to, -> { String }, optional: false, nullable: true
23
+
15
24
  field :content, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
25
+
16
26
  field :error, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: true
27
+
17
28
  field :is_test, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isTest"
29
+
18
30
  field :blast_id, -> { String }, optional: false, nullable: true, api_name: "blastId"
31
+
19
32
  field :sent_at, -> { String }, optional: false, nullable: true, api_name: "sentAt"
33
+
20
34
  field :delivered_at, -> { String }, optional: false, nullable: true, api_name: "deliveredAt"
35
+
21
36
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
37
+
22
38
  field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
23
39
  end
24
40
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Message with additional conversation-specific fields including direction and reactions.
6
6
  class MessageWithReactions < Internal::Types::Model
7
7
  field :direction, -> { Pinnacle::Types::MessageWithReactionsDirection }, optional: false, nullable: false
8
+
8
9
  field :reactions, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Message with text and/or media files from a phone number.
6
6
  class MmsContent < Internal::Types::Model
7
7
  field :media_urls, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "mediaUrls"
8
+
8
9
  field :text, -> { String }, optional: true, nullable: false
9
10
  end
10
11
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Details about how the MMS content would be segmented for delivery.
6
6
  class MmsValidationResponseSegments < Internal::Types::Model
7
7
  field :count, -> { Integer }, optional: false, nullable: false
8
+
8
9
  field :unsupported_files, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "unsupportedFiles"
10
+
9
11
  field :value, -> { Internal::Types::Array[Pinnacle::Types::MmsValidationResponseSegmentsValueItem] }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -4,7 +4,9 @@ module Pinnacle
4
4
  module Types
5
5
  class MmsValidationResponseSegmentsValueItem < Internal::Types::Model
6
6
  field :files, -> { Internal::Types::Array[String] }, optional: false, nullable: false
7
+
7
8
  field :size, -> { Integer }, optional: false, nullable: false
9
+
8
10
  field :text, -> { String }, optional: false, nullable: false
9
11
  end
10
12
  end
@@ -4,7 +4,9 @@ module Pinnacle
4
4
  module Types
5
5
  class MmsValidationResult < Internal::Types::Model
6
6
  field :segments, -> { Pinnacle::Types::MmsValidationResponseSegments }, optional: false, nullable: false
7
+
7
8
  field :total, -> { Integer }, optional: false, nullable: false
9
+
8
10
  field :unit, -> { Integer }, optional: false, nullable: false
9
11
  end
10
12
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ module NetworkInsightStatus
6
+ extend Pinnacle::Internal::Types::Enum
7
+
8
+ AVAILABLE = "available"
9
+ UNAVAILABLE = "unavailable"
10
+ UNSUPPORTED = "unsupported"
11
+ FAILED = "failed"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ module NetworkRequestId
6
+ # NetworkRequestId is an alias for String
7
+
8
+ # @option str [String]
9
+ #
10
+ # @return [untyped]
11
+ def self.load(str)
12
+ ::JSON.parse(str)
13
+ end
14
+
15
+ # @option value [untyped]
16
+ #
17
+ # @return [String]
18
+ def self.dump(value)
19
+ ::JSON.generate(value)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ # Result from the original check, or null while the request is still pending or no result is available.
6
+ class NetworkRequestResult < Internal::Types::Model
7
+ extend Pinnacle::Internal::Types::Union
8
+
9
+ member -> { Pinnacle::Types::SimSwapResponse }
10
+
11
+ member -> { Pinnacle::Types::SubscriberMatchResponse }
12
+
13
+ member -> { Pinnacle::Types::SilentAuthCheckResponse }
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ module NetworkRequestStatus
6
+ extend Pinnacle::Internal::Types::Enum
7
+
8
+ STARTED = "started"
9
+ CHALLENGE_ISSUED = "challenge-issued"
10
+ COMPLETED = "completed"
11
+ FAILED = "failed"
12
+ EXPIRED = "expired"
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ class NetworkRequestSummary < Internal::Types::Model
6
+ field :request_id, -> { String }, optional: false, nullable: false, api_name: "requestId"
7
+
8
+ field :type, -> { Pinnacle::Types::NetworkRequestType }, optional: false, nullable: false
9
+
10
+ field :status, -> { Pinnacle::Types::NetworkRequestStatus }, optional: false, nullable: false
11
+
12
+ field :client_ref, -> { String }, optional: false, nullable: true, api_name: "clientRef"
13
+
14
+ field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
15
+
16
+ field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
17
+
18
+ field :completed_at, -> { String }, optional: false, nullable: true, api_name: "completedAt"
19
+
20
+ field :expires_at, -> { String }, optional: false, nullable: true, api_name: "expiresAt"
21
+
22
+ field :error_message, -> { String }, optional: false, nullable: true, api_name: "errorMessage"
23
+
24
+ field :result, -> { Pinnacle::Types::NetworkRequestResult }, optional: false, nullable: true
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pinnacle
4
+ module Types
5
+ module NetworkRequestType
6
+ extend Pinnacle::Internal::Types::Enum
7
+
8
+ SILENT_AUTH = "silent-auth"
9
+ SIM_SWAP = "sim-swap"
10
+ SUBSCRIBER_MATCH = "subscriber-match"
11
+ end
12
+ end
13
+ end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Numeric input with optional `min` / `max` bounds and `step` granularity.
6
6
  class NumberField < Internal::Types::Model
7
7
  field :placeholder, -> { String }, optional: true, nullable: false
8
+
8
9
  field :min, -> { Integer }, optional: true, nullable: false
10
+
9
11
  field :max, -> { Integer }, optional: true, nullable: false
12
+
10
13
  field :step, -> { Integer }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  # Provides flexibility for display, storage, and integration requirements.
7
7
  class NumberFormat < Internal::Types::Model
8
8
  field :international, -> { String }, optional: false, nullable: false
9
+
9
10
  field :national, -> { String }, optional: false, nullable: false
11
+
10
12
  field :raw, -> { String }, optional: false, nullable: false
11
13
  end
12
14
  end
@@ -4,15 +4,25 @@ module Pinnacle
4
4
  module Types
5
5
  class OptionalBrandInfo < Internal::Types::Model
6
6
  field :address, -> { String }, optional: true, nullable: false
7
+
7
8
  field :contact, -> { Pinnacle::Types::OptionalContacts }, optional: true, nullable: false
9
+
8
10
  field :dba, -> { String }, optional: true, nullable: false
11
+
9
12
  field :description, -> { String }, optional: true, nullable: false
13
+
10
14
  field :ein, -> { String }, optional: true, nullable: false
15
+
11
16
  field :email, -> { String }, optional: true, nullable: false
17
+
12
18
  field :name, -> { String }, optional: true, nullable: false
19
+
13
20
  field :sector, -> { Pinnacle::Types::CompanySectorEnum }, optional: true, nullable: false
21
+
14
22
  field :type, -> { Pinnacle::Types::CompanyTypeEnum }, optional: true, nullable: false
23
+
15
24
  field :entity_type, -> { Pinnacle::Types::CompanyEntityTypeEnum }, optional: true, nullable: false, api_name: "entityType"
25
+
16
26
  field :website, -> { String }, optional: true, nullable: false
17
27
  end
18
28
  end
@@ -4,8 +4,11 @@ module Pinnacle
4
4
  module Types
5
5
  class OptionalContact < Internal::Types::Model
6
6
  field :description, -> { String }, optional: true, nullable: false
7
+
7
8
  field :email, -> { String }, optional: true, nullable: false
9
+
8
10
  field :name, -> { String }, optional: true, nullable: false
11
+
9
12
  field :tags, -> { Internal::Types::Array[String] }, optional: true, nullable: false
10
13
  end
11
14
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Contact information for the primary brand representative.
6
6
  class OptionalContacts < Internal::Types::Model
7
7
  field :email, -> { String }, optional: true, nullable: false
8
+
8
9
  field :name, -> { String }, optional: true, nullable: false
10
+
9
11
  field :phone, -> { String }, optional: true, nullable: false
12
+
10
13
  field :title, -> { String }, optional: true, nullable: false
11
14
  end
12
15
  end
@@ -4,10 +4,15 @@ module Pinnacle
4
4
  module Types
5
5
  class OwnedPhoneNumber < Internal::Types::Model
6
6
  field :number, -> { String }, optional: false, nullable: false
7
+
7
8
  field :sms, -> { Internal::Types::Boolean }, optional: false, nullable: false
9
+
8
10
  field :mms, -> { Internal::Types::Boolean }, optional: false, nullable: false
11
+
9
12
  field :voice, -> { Internal::Types::Boolean }, optional: false, nullable: false
13
+
10
14
  field :is_sandbox, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isSandbox"
15
+
11
16
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
12
17
  end
13
18
  end
@@ -4,8 +4,11 @@ module Pinnacle
4
4
  module Types
5
5
  class Pagination < Internal::Types::Model
6
6
  field :page, -> { Integer }, optional: false, nullable: false
7
+
7
8
  field :limit, -> { Integer }, optional: false, nullable: false
9
+
8
10
  field :total, -> { Integer }, optional: false, nullable: false
11
+
9
12
  field :has_more, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "hasMore"
10
13
  end
11
14
  end
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  # Information about a phone number sender in a conversation.
6
6
  class Phone < Internal::Types::Model
7
7
  field :capabilities, -> { Pinnacle::Types::PhoneCapabilities }, optional: false, nullable: false
8
+
8
9
  field :created_at, -> { String }, optional: false, nullable: false, api_name: "createdAt"
10
+
9
11
  field :is_sandbox, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isSandbox"
12
+
10
13
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
14
+
11
15
  field :updated_at, -> { String }, optional: false, nullable: false, api_name: "updatedAt"
12
16
  end
13
17
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Represents the communication capabilities available for a phone number.
6
6
  class PhoneCapabilities < Internal::Types::Model
7
7
  field :mms, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+
8
9
  field :sms, -> { Internal::Types::Boolean }, optional: false, nullable: false
10
+
9
11
  field :voice, -> { Internal::Types::Boolean }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class PhoneNumberCampaignAttachFailedItem < Internal::Types::Model
6
6
  field :number, -> { String }, optional: false, nullable: false
7
+
7
8
  field :error, -> { String }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class PhoneNumberCampaignAttachPhoneNumbersItem < Internal::Types::Model
6
6
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
7
+
7
8
  field :campaign, -> { Pinnacle::Types::PhoneNumberCampaignAttachPhoneNumbersItemCampaign }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Campaign that the phone is now attached to.
6
6
  class PhoneNumberCampaignAttachPhoneNumbersItemCampaign < Internal::Types::Model
7
7
  field :id, -> { String }, optional: false, nullable: false
8
+
8
9
  field :name, -> { String }, optional: false, nullable: false
10
+
9
11
  field :type, -> { Pinnacle::Types::MessagingProfileEnum }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class PhoneNumberCampaignDetachFailedItem < Internal::Types::Model
6
6
  field :number, -> { String }, optional: false, nullable: false
7
+
7
8
  field :error, -> { String }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class PhoneNumberCampaignDetachPhoneNumbersItem < Internal::Types::Model
6
6
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
7
+
7
8
  field :campaign, -> { Pinnacle::Types::PhoneNumberCampaignDetachPhoneNumbersItemCampaign }, optional: false, nullable: false
8
9
  end
9
10
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Campaign that the phone is now detached from.
6
6
  class PhoneNumberCampaignDetachPhoneNumbersItemCampaign < Internal::Types::Model
7
7
  field :id, -> { String }, optional: false, nullable: false
8
+
8
9
  field :name, -> { String }, optional: false, nullable: false
10
+
9
11
  field :type, -> { Pinnacle::Types::MessagingProfileEnum }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Pricing details for the phone number.
6
6
  class PhoneNumberCost < Internal::Types::Model
7
7
  field :monthly, -> { Integer }, optional: false, nullable: false
8
+
8
9
  field :upfront, -> { Integer }, optional: false, nullable: false
10
+
9
11
  field :currency, -> { String }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -6,9 +6,13 @@ module Pinnacle
6
6
  # Includes all essential data required for acquisition and operational planning.
7
7
  class PhoneNumberDetails < Internal::Types::Model
8
8
  field :number, -> { String }, optional: false, nullable: false
9
+
9
10
  field :phone_type, -> { Pinnacle::Types::PhoneEnum }, optional: false, nullable: false
11
+
10
12
  field :cost, -> { Pinnacle::Types::PhoneNumberCost }, optional: false, nullable: false
13
+
11
14
  field :features, -> { Internal::Types::Array[Pinnacle::Types::PhoneFeatureEnum] }, optional: false, nullable: false
15
+
12
16
  field :region, -> { Pinnacle::Types::PhoneNumberRegion }, optional: false, nullable: false
13
17
  end
14
18
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Geographic and routing information for the phone number.
6
6
  class PhoneNumberRegion < Internal::Types::Model
7
7
  field :country, -> { String }, optional: false, nullable: false
8
+
8
9
  field :state, -> { String }, optional: true, nullable: false
10
+
9
11
  field :city, -> { String }, optional: true, nullable: false
12
+
10
13
  field :rate_center, -> { String }, optional: true, nullable: false, api_name: "rateCenter"
11
14
  end
12
15
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Response for get phone number status.
6
6
  class PhoneNumberStatus < Internal::Types::Model
7
7
  field :errors, -> { Internal::Types::Array[String] }, optional: false, nullable: false
8
+
8
9
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
10
+
9
11
  field :status, -> { Pinnacle::Types::PhoneNumberStatusEnum }, optional: false, nullable: false
10
12
  end
11
13
  end
@@ -4,8 +4,11 @@ module Pinnacle
4
4
  module Types
5
5
  class PinnacleFileUploadMetadata < Internal::Types::Model
6
6
  field :file_name, -> { String }, optional: false, nullable: false, api_name: "fileName"
7
+
7
8
  field :content_type, -> { String }, optional: false, nullable: false, api_name: "contentType"
9
+
8
10
  field :expires_at, -> { String }, optional: false, nullable: true, api_name: "expiresAt"
11
+
9
12
  field :delete_at, -> { String }, optional: true, nullable: false, api_name: "deleteAt"
10
13
  end
11
14
  end
@@ -4,6 +4,7 @@ module Pinnacle
4
4
  module Types
5
5
  class PinnacleUrlConfig < Internal::Types::Model
6
6
  field :to, -> { String }, optional: false, nullable: false
7
+
7
8
  field :expires_at, -> { String }, optional: false, nullable: true, api_name: "expiresAt"
8
9
  end
9
10
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  # Includes all communication capabilities currently enabled for immediate use.
7
7
  class PurchasedNumber < Internal::Types::Model
8
8
  field :number, -> { String }, optional: false, nullable: false
9
+
9
10
  field :capabilities, -> { Pinnacle::Types::BuyResponseCapabilities }, optional: false, nullable: false
10
11
  end
11
12
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Slider input. `min`/`max` define the bounds, `step` the granularity.
6
6
  class RangeField < Internal::Types::Model
7
7
  field :min, -> { Integer }, optional: true, nullable: false
8
+
8
9
  field :max, -> { Integer }, optional: true, nullable: false
10
+
9
11
  field :step, -> { Integer }, optional: true, nullable: false
10
12
  end
11
13
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Star rating 1..`max`. Submitted value is the selected integer.
6
6
  class RatingField < Internal::Types::Model
7
7
  field :min, -> { Integer }, optional: true, nullable: false
8
+
8
9
  field :max, -> { Integer }, optional: true, nullable: false
9
10
  end
10
11
  end