rcs 2.0.18 → 2.0.19

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 (439) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +6 -3
  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/campaigns/dlc/types/dlc_campaign_help_keywords.rb +1 -0
  21. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +2 -0
  22. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +1 -0
  23. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +1 -0
  24. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +1 -0
  25. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +5 -0
  26. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +1 -0
  27. data/lib/pinnacle/campaigns/dlc/types/list_dlc_campaigns_params.rb +4 -0
  28. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +10 -0
  29. data/lib/pinnacle/campaigns/rcs/types/list_rcs_campaigns_params.rb +4 -0
  30. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +7 -0
  31. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +1 -0
  32. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +1 -0
  33. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +1 -0
  34. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +1 -0
  35. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +2 -0
  36. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +1 -0
  37. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +1 -0
  38. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +1 -0
  39. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +1 -0
  40. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +12 -0
  41. data/lib/pinnacle/campaigns/toll_free/types/list_toll_free_campaigns_params.rb +4 -0
  42. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +1 -0
  43. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +1 -0
  44. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +2 -0
  45. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +1 -0
  46. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +1 -0
  47. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +9 -0
  48. data/lib/pinnacle/client.rb +2 -2
  49. data/lib/pinnacle/contacts/client.rb +0 -2
  50. data/lib/pinnacle/contacts/types/contacts_get_request.rb +1 -0
  51. data/lib/pinnacle/contacts/types/create_contact_params.rb +4 -0
  52. data/lib/pinnacle/contacts/types/list_contacts_params.rb +5 -0
  53. data/lib/pinnacle/contacts/types/update_contact_params.rb +4 -0
  54. data/lib/pinnacle/conversations/client.rb +0 -2
  55. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +8 -0
  56. data/lib/pinnacle/conversations/types/list_conversations_params.rb +6 -0
  57. data/lib/pinnacle/conversations/types/update_conversation_params.rb +1 -0
  58. data/lib/pinnacle/forms/client.rb +1 -1
  59. data/lib/pinnacle/forms/submissions/client.rb +1 -1
  60. data/lib/pinnacle/forms/submissions/types/list_form_submissions_params.rb +2 -0
  61. data/lib/pinnacle/forms/types/forms_send_response.rb +1 -0
  62. data/lib/pinnacle/forms/types/list_forms_params.rb +1 -0
  63. data/lib/pinnacle/forms/types/update_form_params.rb +7 -0
  64. data/lib/pinnacle/internal/http/raw_client.rb +3 -2
  65. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +14 -2
  66. data/lib/pinnacle/internal/iterators/item_iterator.rb +6 -0
  67. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +22 -2
  68. data/lib/pinnacle/internal/types/utils.rb +2 -2
  69. data/lib/pinnacle/messages/blast/types/blast_mms.rb +3 -0
  70. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +1 -0
  71. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +1 -0
  72. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +4 -0
  73. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +3 -0
  74. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +1 -0
  75. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +1 -0
  76. data/lib/pinnacle/messages/blast/types/blast_sms.rb +3 -0
  77. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +1 -0
  78. data/lib/pinnacle/messages/blasts/types/list_blasts_params.rb +4 -0
  79. data/lib/pinnacle/messages/mms/types/mms.rb +4 -0
  80. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +1 -0
  81. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +3 -0
  82. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +3 -0
  83. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +1 -0
  84. data/lib/pinnacle/messages/schedules/types/list_scheduled_messages_params.rb +4 -0
  85. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +1 -0
  86. data/lib/pinnacle/messages/sms/types/sms.rb +3 -0
  87. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +1 -0
  88. data/lib/pinnacle/messages/types/list_messages_params.rb +10 -0
  89. data/lib/pinnacle/messages/types/react_message_params.rb +2 -0
  90. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +2 -0
  91. data/lib/pinnacle/phone_numbers/types/list_phone_numbers_params.rb +1 -0
  92. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +1 -0
  93. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +2 -0
  94. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +2 -0
  95. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +2 -0
  96. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +3 -0
  97. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +4 -0
  98. data/lib/pinnacle/rcs/agents/types/list_agents_params.rb +3 -0
  99. data/lib/pinnacle/rcs/test/client.rb +2 -4
  100. data/lib/pinnacle/rcs/test/types/create_test_agent_request.rb +11 -0
  101. data/lib/pinnacle/rcs/test/types/test_agent_whitelist_request.rb +1 -0
  102. data/lib/pinnacle/rcs/test/types/test_get_whitelist_status_request.rb +1 -0
  103. data/lib/pinnacle/rcs/test/types/update_test_agent_request.rb +12 -0
  104. data/lib/pinnacle/rcs/types/rcs_capabilities_query.rb +1 -0
  105. data/lib/pinnacle/rcs/types/rcs_link_request.rb +2 -0
  106. data/lib/pinnacle/rcs/whitelisted_numbers/types/list_test_numbers_params.rb +4 -0
  107. data/lib/pinnacle/tools/contact_card/types/get_vcard_params.rb +1 -0
  108. data/lib/pinnacle/tools/contact_card/types/upsert_vcard_params.rb +16 -0
  109. data/lib/pinnacle/tools/file/types/upload_file_options.rb +1 -0
  110. data/lib/pinnacle/tools/file/types/upload_file_params.rb +3 -0
  111. data/lib/pinnacle/tools/url/client.rb +1 -1
  112. data/lib/pinnacle/tools/url/types/create_url_params.rb +1 -0
  113. data/lib/pinnacle/tools/url/types/list_links_params.rb +2 -0
  114. data/lib/pinnacle/tools/url/types/update_url_params.rb +2 -0
  115. data/lib/pinnacle/types/address_field.rb +3 -0
  116. data/lib/pinnacle/types/advanced_phone_information.rb +5 -0
  117. data/lib/pinnacle/types/advanced_phone_information_carrier.rb +3 -0
  118. data/lib/pinnacle/types/advanced_phone_information_contact.rb +9 -0
  119. data/lib/pinnacle/types/advanced_phone_information_location.rb +7 -0
  120. data/lib/pinnacle/types/advanced_phone_information_location_coordinates.rb +1 -0
  121. data/lib/pinnacle/types/advanced_phone_information_location_country.rb +2 -0
  122. data/lib/pinnacle/types/advanced_phone_information_type.rb +3 -0
  123. data/lib/pinnacle/types/agent.rb +1 -0
  124. data/lib/pinnacle/types/agent_email_entry.rb +1 -0
  125. data/lib/pinnacle/types/agent_phone_entry.rb +1 -0
  126. data/lib/pinnacle/types/agent_summary.rb +6 -0
  127. data/lib/pinnacle/types/agent_summary_carrier_launches.rb +5 -0
  128. data/lib/pinnacle/types/agent_summary_config.rb +11 -0
  129. data/lib/pinnacle/types/agent_summary_config_emails_item.rb +1 -0
  130. data/lib/pinnacle/types/agent_summary_config_phones_item.rb +1 -0
  131. data/lib/pinnacle/types/agent_summary_config_websites_item.rb +1 -0
  132. data/lib/pinnacle/types/agent_website_entry.rb +1 -0
  133. data/lib/pinnacle/types/attach_webhook_response_webhook.rb +4 -0
  134. data/lib/pinnacle/types/attach_webhook_result.rb +3 -0
  135. data/lib/pinnacle/types/attached_phone_number_result.rb +1 -0
  136. data/lib/pinnacle/types/audience_count_only.rb +3 -0
  137. data/lib/pinnacle/types/audience_summary.rb +4 -0
  138. data/lib/pinnacle/types/audience_with_pagination.rb +5 -0
  139. data/lib/pinnacle/types/autofill_campaign_params.rb +1 -0
  140. data/lib/pinnacle/types/autofill_dlc_campaign_response.rb +10 -0
  141. data/lib/pinnacle/types/autofill_dlc_response_keywords.rb +2 -0
  142. data/lib/pinnacle/types/autofill_dlc_response_keywords_help.rb +1 -0
  143. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_in.rb +1 -0
  144. data/lib/pinnacle/types/autofill_dlc_response_keywords_opt_out.rb +1 -0
  145. data/lib/pinnacle/types/autofill_dlc_response_links.rb +1 -0
  146. data/lib/pinnacle/types/autofill_dlc_response_options.rb +5 -0
  147. data/lib/pinnacle/types/autofill_dlc_response_use_case.rb +1 -0
  148. data/lib/pinnacle/types/bad_request_error_body.rb +1 -0
  149. data/lib/pinnacle/types/base_rich_message.rb +3 -0
  150. data/lib/pinnacle/types/basic_phone_information.rb +5 -0
  151. data/lib/pinnacle/types/basic_phone_information_location.rb +1 -0
  152. data/lib/pinnacle/types/basic_phone_information_location_country.rb +2 -0
  153. data/lib/pinnacle/types/blast_details.rb +5 -0
  154. data/lib/pinnacle/types/blast_summary.rb +7 -0
  155. data/lib/pinnacle/types/brand_status.rb +2 -0
  156. data/lib/pinnacle/types/button_clicked.rb +1 -0
  157. data/lib/pinnacle/types/button_clicked_data.rb +1 -0
  158. data/lib/pinnacle/types/button_clicked_data_button.rb +4 -0
  159. data/lib/pinnacle/types/button_clicked_data_button_raw.rb +1 -0
  160. data/lib/pinnacle/types/buy_response_capabilities.rb +2 -0
  161. data/lib/pinnacle/types/campaign_query.rb +1 -0
  162. data/lib/pinnacle/types/campaign_status_event.rb +5 -0
  163. data/lib/pinnacle/types/campaign_status_event_agent.rb +1 -0
  164. data/lib/pinnacle/types/campaign_status_event_brand.rb +1 -0
  165. data/lib/pinnacle/types/campaign_status_event_campaign.rb +1 -0
  166. data/lib/pinnacle/types/campaign_status_event_carrier_launches.rb +1 -0
  167. data/lib/pinnacle/types/campaign_status_event_carrier_launches_carriers.rb +3 -0
  168. data/lib/pinnacle/types/campaign_status_event_carrier_launches_verification.rb +1 -0
  169. data/lib/pinnacle/types/campaign_validation_response_errors_item.rb +2 -0
  170. data/lib/pinnacle/types/campaign_validation_result.rb +1 -0
  171. data/lib/pinnacle/types/carrier_launches.rb +1 -0
  172. data/lib/pinnacle/types/carrier_launches_carriers.rb +3 -0
  173. data/lib/pinnacle/types/carrier_launches_verification.rb +1 -0
  174. data/lib/pinnacle/types/checkbox_field.rb +2 -0
  175. data/lib/pinnacle/types/contact.rb +5 -0
  176. data/lib/pinnacle/types/conversation.rb +7 -0
  177. data/lib/pinnacle/types/conversation_by_participants_params.rb +1 -0
  178. data/lib/pinnacle/types/conversation_contact.rb +1 -0
  179. data/lib/pinnacle/types/conversation_list.rb +2 -0
  180. data/lib/pinnacle/types/conversation_sender.rb +1 -0
  181. data/lib/pinnacle/types/date_field.rb +2 -0
  182. data/lib/pinnacle/types/datetime_field.rb +2 -0
  183. data/lib/pinnacle/types/detach_webhook_result.rb +2 -0
  184. data/lib/pinnacle/types/detached_phone_number_result.rb +1 -0
  185. data/lib/pinnacle/types/dlc_campaign_status.rb +3 -0
  186. data/lib/pinnacle/types/dlc_campaign_summary.rb +6 -0
  187. data/lib/pinnacle/types/dlc_campaign_with_extended_brand_and_status.rb +13 -0
  188. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords.rb +2 -0
  189. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_help.rb +1 -0
  190. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +1 -0
  191. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +1 -0
  192. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_links.rb +1 -0
  193. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_options.rb +5 -0
  194. data/lib/pinnacle/types/dlc_with_extended_brand_and_status_use_case.rb +1 -0
  195. data/lib/pinnacle/types/enhanced_contact_item.rb +4 -0
  196. data/lib/pinnacle/types/extended_brand.rb +4 -0
  197. data/lib/pinnacle/types/extended_brand_with_vetting.rb +2 -0
  198. data/lib/pinnacle/types/extended_rcs_campaign.rb +14 -0
  199. data/lib/pinnacle/types/failed_sender.rb +1 -0
  200. data/lib/pinnacle/types/fallback_message.rb +2 -0
  201. data/lib/pinnacle/types/field_base.rb +3 -0
  202. data/lib/pinnacle/types/form.rb +12 -0
  203. data/lib/pinnacle/types/form_background.rb +3 -0
  204. data/lib/pinnacle/types/form_background_gradient.rb +1 -0
  205. data/lib/pinnacle/types/form_background_image.rb +3 -0
  206. data/lib/pinnacle/types/form_color_palette.rb +2 -0
  207. data/lib/pinnacle/types/form_definition.rb +5 -0
  208. data/lib/pinnacle/types/form_field.rb +15 -0
  209. data/lib/pinnacle/types/form_field_option.rb +1 -0
  210. data/lib/pinnacle/types/form_gradient.rb +2 -0
  211. data/lib/pinnacle/types/form_submission.rb +9 -0
  212. data/lib/pinnacle/types/form_submission_answer.rb +3 -0
  213. data/lib/pinnacle/types/form_submission_event.rb +4 -0
  214. data/lib/pinnacle/types/form_submission_event_conversation.rb +2 -0
  215. data/lib/pinnacle/types/form_submission_event_form.rb +2 -0
  216. data/lib/pinnacle/types/form_submission_event_submission.rb +7 -0
  217. data/lib/pinnacle/types/form_submitted_field.rb +3 -0
  218. data/lib/pinnacle/types/form_theme_override.rb +14 -0
  219. data/lib/pinnacle/types/form_theme_override_colors.rb +1 -0
  220. data/lib/pinnacle/types/get_conversation_params.rb +1 -0
  221. data/lib/pinnacle/types/get_dlc_campaign_status_response_updates.rb +2 -0
  222. data/lib/pinnacle/types/get_toll_free_campaign_status_response_updates.rb +2 -0
  223. data/lib/pinnacle/types/link_click_event.rb +48 -0
  224. data/lib/pinnacle/types/link_summary.rb +3 -0
  225. data/lib/pinnacle/types/list_agents_response.rb +2 -0
  226. data/lib/pinnacle/types/list_audiences_response.rb +2 -0
  227. data/lib/pinnacle/types/list_blasts_response.rb +2 -0
  228. data/lib/pinnacle/types/list_brands_response.rb +2 -0
  229. data/lib/pinnacle/types/list_contacts_response.rb +2 -0
  230. data/lib/pinnacle/types/list_dlc_campaigns_response.rb +2 -0
  231. data/lib/pinnacle/types/list_form_submissions_response.rb +2 -0
  232. data/lib/pinnacle/types/list_forms_response.rb +2 -0
  233. data/lib/pinnacle/types/list_links_response.rb +2 -0
  234. data/lib/pinnacle/types/list_messages_response.rb +2 -0
  235. data/lib/pinnacle/types/list_phone_numbers_response.rb +2 -0
  236. data/lib/pinnacle/types/list_rcs_campaigns_response.rb +2 -0
  237. data/lib/pinnacle/types/list_scheduled_messages_response.rb +2 -0
  238. data/lib/pinnacle/types/list_test_numbers_response.rb +2 -0
  239. data/lib/pinnacle/types/list_toll_free_campaigns_response.rb +2 -0
  240. data/lib/pinnacle/types/list_webhooks_response.rb +2 -0
  241. data/lib/pinnacle/types/location_share_action_data.rb +3 -0
  242. data/lib/pinnacle/types/message.rb +11 -0
  243. data/lib/pinnacle/types/message_content.rb +3 -0
  244. data/lib/pinnacle/types/message_event.rb +9 -0
  245. data/lib/pinnacle/types/message_event_content.rb +6 -0
  246. data/lib/pinnacle/types/message_event_conversation.rb +2 -0
  247. data/lib/pinnacle/types/message_event_fallback_message.rb +5 -0
  248. data/lib/pinnacle/types/message_event_mms_content.rb +2 -0
  249. data/lib/pinnacle/types/message_event_rcs_button_data.rb +2 -0
  250. data/lib/pinnacle/types/message_event_rcs_button_data_button.rb +4 -0
  251. data/lib/pinnacle/types/message_event_rcs_button_data_button_raw.rb +1 -0
  252. data/lib/pinnacle/types/message_event_rcs_cards_content.rb +2 -0
  253. data/lib/pinnacle/types/message_event_rcs_cards_content_cards_item.rb +3 -0
  254. data/lib/pinnacle/types/message_event_rcs_location_data.rb +2 -0
  255. data/lib/pinnacle/types/message_event_rcs_location_data_data.rb +3 -0
  256. data/lib/pinnacle/types/message_event_rcs_media_content.rb +2 -0
  257. data/lib/pinnacle/types/message_event_rcs_text_content.rb +2 -0
  258. data/lib/pinnacle/types/message_event_sms_content.rb +1 -0
  259. data/lib/pinnacle/types/message_list.rb +2 -0
  260. data/lib/pinnacle/types/message_schedule.rb +3 -0
  261. data/lib/pinnacle/types/message_summary.rb +16 -0
  262. data/lib/pinnacle/types/message_with_reactions.rb +1 -0
  263. data/lib/pinnacle/types/mms_content.rb +1 -0
  264. data/lib/pinnacle/types/mms_validation_response_segments.rb +2 -0
  265. data/lib/pinnacle/types/mms_validation_response_segments_value_item.rb +2 -0
  266. data/lib/pinnacle/types/mms_validation_result.rb +2 -0
  267. data/lib/pinnacle/types/number_field.rb +3 -0
  268. data/lib/pinnacle/types/number_format.rb +2 -0
  269. data/lib/pinnacle/types/optional_brand_info.rb +10 -0
  270. data/lib/pinnacle/types/optional_contact.rb +3 -0
  271. data/lib/pinnacle/types/optional_contacts.rb +3 -0
  272. data/lib/pinnacle/types/owned_phone_number.rb +5 -0
  273. data/lib/pinnacle/types/pagination.rb +3 -0
  274. data/lib/pinnacle/types/phone.rb +4 -0
  275. data/lib/pinnacle/types/phone_capabilities.rb +2 -0
  276. data/lib/pinnacle/types/phone_number_campaign_attach_failed_item.rb +1 -0
  277. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item.rb +1 -0
  278. data/lib/pinnacle/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +2 -0
  279. data/lib/pinnacle/types/phone_number_campaign_detach_failed_item.rb +1 -0
  280. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item.rb +1 -0
  281. data/lib/pinnacle/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +2 -0
  282. data/lib/pinnacle/types/phone_number_cost.rb +2 -0
  283. data/lib/pinnacle/types/phone_number_details.rb +4 -0
  284. data/lib/pinnacle/types/phone_number_region.rb +3 -0
  285. data/lib/pinnacle/types/phone_number_status.rb +2 -0
  286. data/lib/pinnacle/types/pinnacle_file_upload_metadata.rb +3 -0
  287. data/lib/pinnacle/types/pinnacle_url_config.rb +1 -0
  288. data/lib/pinnacle/types/purchased_number.rb +1 -0
  289. data/lib/pinnacle/types/range_field.rb +2 -0
  290. data/lib/pinnacle/types/rating_field.rb +1 -0
  291. data/lib/pinnacle/types/rcs_agent_details.rb +11 -0
  292. data/lib/pinnacle/types/rcs_agent_details_emails_item.rb +1 -0
  293. data/lib/pinnacle/types/rcs_agent_details_phones_item.rb +1 -0
  294. data/lib/pinnacle/types/rcs_agent_details_websites_item.rb +1 -0
  295. data/lib/pinnacle/types/rcs_agent_response.rb +4 -0
  296. data/lib/pinnacle/types/rcs_button_call.rb +2 -0
  297. data/lib/pinnacle/types/rcs_button_open_url.rb +3 -0
  298. data/lib/pinnacle/types/rcs_button_request_user_location.rb +1 -0
  299. data/lib/pinnacle/types/rcs_button_schedule_event.rb +5 -0
  300. data/lib/pinnacle/types/rcs_button_send_location.rb +3 -0
  301. data/lib/pinnacle/types/rcs_button_send_location_lat_long.rb +1 -0
  302. data/lib/pinnacle/types/rcs_button_trigger.rb +2 -0
  303. data/lib/pinnacle/types/rcs_campaign.rb +11 -0
  304. data/lib/pinnacle/types/rcs_campaign_schema_agent.rb +7 -0
  305. data/lib/pinnacle/types/rcs_campaign_schema_agent_emails_item.rb +1 -0
  306. data/lib/pinnacle/types/rcs_campaign_schema_agent_phones_item.rb +1 -0
  307. data/lib/pinnacle/types/rcs_campaign_schema_agent_websites_item.rb +1 -0
  308. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent.rb +7 -0
  309. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_emails_item.rb +1 -0
  310. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_phones_item.rb +1 -0
  311. data/lib/pinnacle/types/rcs_campaign_schema_extra_agent_websites_item.rb +1 -0
  312. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords.rb +2 -0
  313. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_help.rb +1 -0
  314. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_in.rb +1 -0
  315. data/lib/pinnacle/types/rcs_campaign_schema_extra_keywords_opt_out.rb +1 -0
  316. data/lib/pinnacle/types/rcs_campaign_schema_extra_links.rb +1 -0
  317. data/lib/pinnacle/types/rcs_campaign_schema_extra_traffic.rb +1 -0
  318. data/lib/pinnacle/types/rcs_campaign_schema_keywords.rb +2 -0
  319. data/lib/pinnacle/types/rcs_campaign_schema_keywords_help.rb +1 -0
  320. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_in.rb +1 -0
  321. data/lib/pinnacle/types/rcs_campaign_schema_keywords_opt_out.rb +1 -0
  322. data/lib/pinnacle/types/rcs_campaign_schema_links.rb +1 -0
  323. data/lib/pinnacle/types/rcs_campaign_schema_traffic.rb +1 -0
  324. data/lib/pinnacle/types/rcs_campaign_status.rb +2 -0
  325. data/lib/pinnacle/types/rcs_campaign_summary.rb +6 -0
  326. data/lib/pinnacle/types/rcs_capability.rb +1 -0
  327. data/lib/pinnacle/types/rcs_capability_actions.rb +5 -0
  328. data/lib/pinnacle/types/rcs_capability_cards.rb +1 -0
  329. data/lib/pinnacle/types/rcs_cards_content.rb +1 -0
  330. data/lib/pinnacle/types/rcs_cards_content_cards_item.rb +3 -0
  331. data/lib/pinnacle/types/rcs_content.rb +2 -0
  332. data/lib/pinnacle/types/rcs_link_result.rb +1 -0
  333. data/lib/pinnacle/types/rcs_media_content.rb +1 -0
  334. data/lib/pinnacle/types/rcs_media_details_content.rb +2 -0
  335. data/lib/pinnacle/types/rcs_validate_content.rb +2 -0
  336. data/lib/pinnacle/types/rcs_validate_content_media.rb +1 -0
  337. data/lib/pinnacle/types/rcs_validation_result.rb +3 -0
  338. data/lib/pinnacle/types/reaction_result.rb +1 -0
  339. data/lib/pinnacle/types/refreshed_file.rb +1 -0
  340. data/lib/pinnacle/types/rich_button.rb +5 -0
  341. data/lib/pinnacle/types/rich_card.rb +3 -0
  342. data/lib/pinnacle/types/rich_cards.rb +1 -0
  343. data/lib/pinnacle/types/rich_cards_message.rb +3 -0
  344. data/lib/pinnacle/types/rich_media_message.rb +1 -0
  345. data/lib/pinnacle/types/rich_message.rb +2 -0
  346. data/lib/pinnacle/types/rich_standalone_card_options.rb +1 -0
  347. data/lib/pinnacle/types/rich_text.rb +1 -0
  348. data/lib/pinnacle/types/scheduled_blast_details.rb +1 -0
  349. data/lib/pinnacle/types/scheduled_blast_response_config.rb +3 -0
  350. data/lib/pinnacle/types/scheduled_form_send_response_form.rb +1 -0
  351. data/lib/pinnacle/types/scheduled_form_send_response_submission.rb +1 -0
  352. data/lib/pinnacle/types/scheduled_form_send_result.rb +3 -0
  353. data/lib/pinnacle/types/scheduled_message.rb +1 -0
  354. data/lib/pinnacle/types/scheduled_message_summary.rb +8 -0
  355. data/lib/pinnacle/types/scheduled_send_response_config.rb +3 -0
  356. data/lib/pinnacle/types/select_field.rb +1 -0
  357. data/lib/pinnacle/types/send_form_options.rb +1 -0
  358. data/lib/pinnacle/types/send_form_params.rb +1 -0
  359. data/lib/pinnacle/types/send_form_result.rb +2 -0
  360. data/lib/pinnacle/types/send_form_via_rcs_params.rb +4 -0
  361. data/lib/pinnacle/types/send_form_via_rcs_request_form.rb +1 -0
  362. data/lib/pinnacle/types/send_form_via_sms_params.rb +3 -0
  363. data/lib/pinnacle/types/send_form_via_sms_request_form.rb +1 -0
  364. data/lib/pinnacle/types/send_rich_cards_options.rb +4 -0
  365. data/lib/pinnacle/types/send_rich_message_options.rb +3 -0
  366. data/lib/pinnacle/types/send_rich_message_options_4.rb +3 -0
  367. data/lib/pinnacle/types/send_sms_response_segments.rb +1 -0
  368. data/lib/pinnacle/types/send_typing_indicator_response.rb +4 -0
  369. data/lib/pinnacle/types/sent_mms_details.rb +5 -0
  370. data/lib/pinnacle/types/sent_rich_message.rb +5 -0
  371. data/lib/pinnacle/types/sent_rich_message_fallback_mms.rb +1 -0
  372. data/lib/pinnacle/types/sent_rich_message_fallback_sms.rb +1 -0
  373. data/lib/pinnacle/types/sent_sms_details.rb +5 -0
  374. data/lib/pinnacle/types/shortened_url.rb +1 -0
  375. data/lib/pinnacle/types/simulate_message_input.rb +1 -0
  376. data/lib/pinnacle/types/simulate_user_button.rb +2 -0
  377. data/lib/pinnacle/types/simulate_user_message.rb +2 -0
  378. data/lib/pinnacle/types/simulate_user_params.rb +1 -0
  379. data/lib/pinnacle/types/sms_validation_response_segments.rb +1 -0
  380. data/lib/pinnacle/types/sms_validation_response_segments_gsm_7.rb +2 -0
  381. data/lib/pinnacle/types/sms_validation_response_segments_utf_16.rb +1 -0
  382. data/lib/pinnacle/types/sms_validation_response_total.rb +1 -0
  383. data/lib/pinnacle/types/sms_validation_result.rb +3 -0
  384. data/lib/pinnacle/types/test_agent_response.rb +3 -0
  385. data/lib/pinnacle/types/text_field.rb +3 -0
  386. data/lib/pinnacle/types/textarea_field.rb +3 -0
  387. data/lib/pinnacle/types/time_field.rb +2 -0
  388. data/lib/pinnacle/types/toll_free_campaign.rb +8 -0
  389. data/lib/pinnacle/types/toll_free_campaign_schema_keywords.rb +1 -0
  390. data/lib/pinnacle/types/toll_free_campaign_schema_keywords_opt_in.rb +1 -0
  391. data/lib/pinnacle/types/toll_free_campaign_schema_links.rb +1 -0
  392. data/lib/pinnacle/types/toll_free_campaign_schema_opt_in.rb +2 -0
  393. data/lib/pinnacle/types/toll_free_campaign_schema_use_case.rb +1 -0
  394. data/lib/pinnacle/types/toll_free_campaign_status.rb +2 -0
  395. data/lib/pinnacle/types/toll_free_campaign_summary.rb +6 -0
  396. data/lib/pinnacle/types/toll_free_campaign_with_extended_brand_and_status.rb +10 -0
  397. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords.rb +1 -0
  398. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_keywords_opt_in.rb +1 -0
  399. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_links.rb +1 -0
  400. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_opt_in.rb +2 -0
  401. data/lib/pinnacle/types/toll_free_with_extended_brand_and_status_use_case.rb +1 -0
  402. data/lib/pinnacle/types/upload_results.rb +2 -0
  403. data/lib/pinnacle/types/user_button_press.rb +5 -0
  404. data/lib/pinnacle/types/user_button_press_call.rb +2 -0
  405. data/lib/pinnacle/types/user_button_press_open_url.rb +2 -0
  406. data/lib/pinnacle/types/user_button_press_request_user_location.rb +2 -0
  407. data/lib/pinnacle/types/user_button_press_request_user_location_location.rb +3 -0
  408. data/lib/pinnacle/types/user_button_press_schedule_event.rb +5 -0
  409. data/lib/pinnacle/types/user_button_press_send_location.rb +3 -0
  410. data/lib/pinnacle/types/user_button_press_send_location_lat_long.rb +1 -0
  411. data/lib/pinnacle/types/user_button_press_trigger.rb +2 -0
  412. data/lib/pinnacle/types/user_event.rb +2 -0
  413. data/lib/pinnacle/types/user_event_conversation.rb +2 -0
  414. data/lib/pinnacle/types/v_card_data_file.rb +1 -0
  415. data/lib/pinnacle/types/v_card_geo.rb +1 -0
  416. data/lib/pinnacle/types/v_card_name.rb +4 -0
  417. data/lib/pinnacle/types/v_card_organization.rb +1 -0
  418. data/lib/pinnacle/types/validate_campaign_params.rb +1 -0
  419. data/lib/pinnacle/types/validation_error_details.rb +2 -0
  420. data/lib/pinnacle/types/validation_results.rb +1 -0
  421. data/lib/pinnacle/types/vcard.rb +15 -0
  422. data/lib/pinnacle/types/vcard_address.rb +8 -0
  423. data/lib/pinnacle/types/vcard_email.rb +1 -0
  424. data/lib/pinnacle/types/vcard_phone.rb +1 -0
  425. data/lib/pinnacle/types/vcard_resource.rb +1 -0
  426. data/lib/pinnacle/types/vetting_feedback.rb +3 -0
  427. data/lib/pinnacle/types/vetting_history.rb +4 -0
  428. data/lib/pinnacle/types/webhook_summary.rb +6 -0
  429. data/lib/pinnacle/types/webhooks.rb +3 -0
  430. data/lib/pinnacle/types/whitelisted_number_summary.rb +3 -0
  431. data/lib/pinnacle/types/zod_error.rb +1 -0
  432. data/lib/pinnacle/version.rb +1 -1
  433. data/lib/pinnacle/webhooks/types/attach_webhook_params.rb +5 -0
  434. data/lib/pinnacle/webhooks/types/detach_webhook_params.rb +1 -0
  435. data/lib/pinnacle/webhooks/types/list_webhooks_params.rb +3 -0
  436. data/lib/pinnacle.rb +5 -0
  437. data/lib/rcs.rb +1 -637
  438. data/reference.md +2 -2
  439. metadata +3 -2
@@ -7,8 +7,11 @@ module Pinnacle
7
7
  # Control how your MMS is processed and delivered.
8
8
  class SendMmsOptions < Internal::Types::Model
9
9
  field :multiple_messages, -> { Internal::Types::Boolean }, optional: false, nullable: false
10
+
10
11
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
12
+
11
13
  field :tracking, -> { Pinnacle::Types::Tracking }, optional: true, nullable: false
14
+
12
15
  field :validate, -> { Internal::Types::Boolean }, optional: false, nullable: false
13
16
  end
14
17
  end
@@ -8,8 +8,11 @@ module Pinnacle
8
8
  extend Pinnacle::Internal::Types::Union
9
9
 
10
10
  member -> { Pinnacle::Types::SentRichMessage }
11
+
11
12
  member -> { Pinnacle::Types::ScheduledMessage }
13
+
12
14
  member -> { Pinnacle::Types::SentRichMessageFallbackSms }
15
+
13
16
  member -> { Pinnacle::Types::SentRichMessageFallbackMms }
14
17
  end
15
18
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  module Types
7
7
  class SendTypingIndicatorSchema < Internal::Types::Model
8
8
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
9
+
9
10
  field :to, -> { String }, optional: false, nullable: false
10
11
  end
11
12
  end
@@ -6,9 +6,13 @@ module Pinnacle
6
6
  module Types
7
7
  class ListScheduledMessagesParams < Internal::Types::Model
8
8
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
9
+
9
10
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
11
+
10
12
  field :status, -> { Pinnacle::Messages::Schedules::Types::ListScheduledMessagesRequestStatus }, optional: true, nullable: false
13
+
11
14
  field :schedule_type, -> { Pinnacle::Messages::Schedules::Types::ListScheduledMessagesRequestScheduleType }, optional: true, nullable: false, api_name: "scheduleType"
15
+
12
16
  field :content, -> { String }, optional: true, nullable: false
13
17
  end
14
18
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  # Additional settings to customize SMS delivery.
8
8
  class SendSmsOptions < Internal::Types::Model
9
9
  field :schedule, -> { Pinnacle::Types::MessageSchedule }, optional: true, nullable: false
10
+
10
11
  field :tracking, -> { Pinnacle::Types::Tracking }, optional: true, nullable: false
11
12
  end
12
13
  end
@@ -6,8 +6,11 @@ module Pinnacle
6
6
  module Types
7
7
  class Sms < Internal::Types::Model
8
8
  field :from, -> { String }, optional: false, nullable: false
9
+
9
10
  field :options, -> { Pinnacle::Messages::Sms::Types::SendSmsOptions }, optional: true, nullable: false
11
+
10
12
  field :text, -> { String }, optional: false, nullable: false
13
+
11
14
  field :to, -> { String }, optional: false, nullable: false
12
15
  end
13
16
  end
@@ -8,6 +8,7 @@ module Pinnacle
8
8
  extend Pinnacle::Internal::Types::Union
9
9
 
10
10
  member -> { Pinnacle::Types::SentSmsDetails }
11
+
11
12
  member -> { Pinnacle::Types::ScheduledMessage }
12
13
  end
13
14
  end
@@ -5,15 +5,25 @@ module Pinnacle
5
5
  module Types
6
6
  class ListMessagesParams < Internal::Types::Model
7
7
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
8
+
8
9
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
10
+
9
11
  field :direction, -> { Pinnacle::Messages::Types::ListMessagesRequestDirection }, optional: true, nullable: false
12
+
10
13
  field :status, -> { Pinnacle::Messages::Types::ListMessagesRequestStatus }, optional: true, nullable: false
14
+
11
15
  field :type, -> { Pinnacle::Messages::Types::ListMessagesRequestType }, optional: true, nullable: false
16
+
12
17
  field :method_, -> { Pinnacle::Messages::Types::ListMessagesRequestMethod }, optional: true, nullable: false, api_name: "method"
18
+
13
19
  field :from, -> { String }, optional: true, nullable: false
20
+
14
21
  field :to, -> { String }, optional: true, nullable: false
22
+
15
23
  field :content, -> { String }, optional: true, nullable: false
24
+
16
25
  field :date_from, -> { String }, optional: true, nullable: false, api_name: "dateFrom"
26
+
17
27
  field :date_to, -> { String }, optional: true, nullable: false, api_name: "dateTo"
18
28
  end
19
29
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  module Types
6
6
  class ReactMessageParams < Internal::Types::Model
7
7
  field :message_id, -> { String }, optional: false, nullable: false, api_name: "messageId"
8
+
8
9
  field :options, -> { Pinnacle::Messages::Types::ReactMessageOptions }, optional: true, nullable: false
10
+
9
11
  field :reaction, -> { String }, optional: false, nullable: true
10
12
  end
11
13
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  module Types
7
7
  class AttachCampaignParams < Internal::Types::Model
8
8
  field :phones, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
+
9
10
  field :campaign_type, -> { Pinnacle::Types::MessagingProfileEnum }, optional: false, nullable: false, api_name: "campaignType"
11
+
10
12
  field :campaign_id, -> { String }, optional: false, nullable: false, api_name: "campaignId"
11
13
  end
12
14
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  module Types
6
6
  class ListPhoneNumbersParams < Internal::Types::Model
7
7
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
8
+
8
9
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
9
10
  end
10
11
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  extend Pinnacle::Internal::Types::Union
8
8
 
9
9
  member -> { Pinnacle::Types::BasicPhoneInformation }
10
+
10
11
  member -> { Pinnacle::Types::AdvancedPhoneInformation }
11
12
  end
12
13
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  # Customize your lookup with additional options.
7
7
  class RetrievePhoneNumberDetailsOptions < Internal::Types::Model
8
8
  field :force, -> { Internal::Types::Boolean }, optional: true, nullable: false
9
+
9
10
  field :risk, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
+
10
12
  field :enhanced_contact_info, -> { Pinnacle::PhoneNumbers::Types::EnhancedContactInfo }, optional: true, nullable: false
11
13
  end
12
14
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  module Types
6
6
  class RetrievePhoneNumberDetailsParams < Internal::Types::Model
7
7
  field :phone, -> { String }, optional: false, nullable: false
8
+
8
9
  field :level, -> { Pinnacle::PhoneNumbers::Types::PhoneDetailsSchemaLevel }, optional: false, nullable: false
10
+
9
11
  field :options, -> { Pinnacle::PhoneNumbers::Types::RetrievePhoneNumberDetailsOptions }, optional: true, nullable: false
10
12
  end
11
13
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  # Filter your search by digit pattern.
7
7
  class SearchPhoneNumberByDigits < Internal::Types::Model
8
8
  field :contains, -> { String }, optional: true, nullable: false
9
+
9
10
  field :ends_with, -> { String }, optional: true, nullable: false, api_name: "endsWith"
11
+
10
12
  field :starts_with, -> { String }, optional: true, nullable: false, api_name: "startsWith"
11
13
  end
12
14
  end
@@ -8,8 +8,11 @@ module Pinnacle
8
8
  # Toll-free numbers ignore city and state filters.
9
9
  class SearchPhoneNumberByLocation < Internal::Types::Model
10
10
  field :city, -> { String }, optional: true, nullable: false
11
+
11
12
  field :country_code, -> { String }, optional: true, nullable: false, api_name: "countryCode"
13
+
12
14
  field :national_destination_code, -> { String }, optional: true, nullable: false, api_name: "nationalDestinationCode"
15
+
13
16
  field :state, -> { String }, optional: true, nullable: false
14
17
  end
15
18
  end
@@ -5,9 +5,13 @@ module Pinnacle
5
5
  module Types
6
6
  class SearchPhoneNumberParams < Internal::Types::Model
7
7
  field :features, -> { Internal::Types::Array[Pinnacle::Types::PhoneFeatureEnum] }, optional: true, nullable: false
8
+
8
9
  field :location, -> { Pinnacle::PhoneNumbers::Types::SearchPhoneNumberByLocation }, optional: true, nullable: false
10
+
9
11
  field :number, -> { Pinnacle::PhoneNumbers::Types::SearchPhoneNumberByDigits }, optional: true, nullable: false
12
+
10
13
  field :options, -> { Pinnacle::PhoneNumbers::Types::SearchPhoneNumberOptions }, optional: true, nullable: false
14
+
11
15
  field :type, -> { Internal::Types::Array[Pinnacle::Types::PhoneEnum] }, optional: false, nullable: false
12
16
  end
13
17
  end
@@ -6,8 +6,11 @@ module Pinnacle
6
6
  module Types
7
7
  class ListAgentsParams < Internal::Types::Model
8
8
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
9
+
9
10
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
11
+
10
12
  field :agent_type, -> { Pinnacle::Rcs::Agents::Types::ListAgentsRequestAgentType }, optional: true, nullable: false, api_name: "agentType"
13
+
11
14
  field :name, -> { String }, optional: true, nullable: false
12
15
  end
13
16
  end
@@ -109,7 +109,7 @@ module Pinnacle
109
109
  def update_agent(request_options: {}, **params)
110
110
  params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
111
111
  request_data = Pinnacle::Rcs::Test::Types::UpdateTestAgentRequest.new(params).to_h
112
- non_body_param_names = ["agentId"]
112
+ non_body_param_names = %w[agentId]
113
113
  body = request_data.except(*non_body_param_names)
114
114
 
115
115
  request = Pinnacle::Internal::JSON::Request.new(
@@ -180,7 +180,7 @@ module Pinnacle
180
180
  def whitelist_number(request_options: {}, **params)
181
181
  params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
182
182
  request_data = Pinnacle::Rcs::Test::Types::TestAgentWhitelistRequest.new(params).to_h
183
- non_body_param_names = ["agentId"]
183
+ non_body_param_names = %w[agentId]
184
184
  body = request_data.except(*non_body_param_names)
185
185
 
186
186
  request = Pinnacle::Internal::JSON::Request.new(
@@ -244,10 +244,8 @@ module Pinnacle
244
244
  # @return [Pinnacle::Types::TestAgentWhitelistResponse]
245
245
  def get_whitelist_status(request_options: {}, **params)
246
246
  params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
247
- query_param_names = %i[phone_number]
248
247
  query_params = {}
249
248
  query_params["phoneNumber"] = params[:phone_number] if params.key?(:phone_number)
250
- params = params.except(*query_param_names)
251
249
 
252
250
  request = Pinnacle::Internal::JSON::Request.new(
253
251
  base_url: request_options[:base_url],
@@ -6,16 +6,27 @@ module Pinnacle
6
6
  module Types
7
7
  class CreateTestAgentRequest < Internal::Types::Model
8
8
  field :display_name, -> { String }, optional: false, nullable: false, api_name: "displayName"
9
+
9
10
  field :description, -> { String }, optional: false, nullable: false
11
+
10
12
  field :logo_url, -> { String }, optional: false, nullable: false, api_name: "logoUrl"
13
+
11
14
  field :hero_url, -> { String }, optional: false, nullable: false, api_name: "heroUrl"
15
+
12
16
  field :phone_numbers, -> { Internal::Types::Array[Pinnacle::Types::AgentPhoneEntry] }, optional: false, nullable: false, api_name: "phoneNumbers"
17
+
13
18
  field :emails, -> { Internal::Types::Array[Pinnacle::Types::AgentEmailEntry] }, optional: false, nullable: false
19
+
14
20
  field :websites, -> { Internal::Types::Array[Pinnacle::Types::AgentWebsiteEntry] }, optional: false, nullable: false
21
+
15
22
  field :privacy_url, -> { String }, optional: false, nullable: false, api_name: "privacyUrl"
23
+
16
24
  field :terms_url, -> { String }, optional: false, nullable: false, api_name: "termsUrl"
25
+
17
26
  field :color, -> { String }, optional: false, nullable: false
27
+
18
28
  field :is_conversational, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isConversational"
29
+
19
30
  field :agent_use_case, -> { Pinnacle::Types::AgentUseCase }, optional: true, nullable: false, api_name: "agentUseCase"
20
31
  end
21
32
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  module Types
7
7
  class TestAgentWhitelistRequest < Internal::Types::Model
8
8
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
9
+
9
10
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
10
11
  end
11
12
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  module Types
7
7
  class TestGetWhitelistStatusRequest < Internal::Types::Model
8
8
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
9
+
9
10
  field :phone_number, -> { String }, optional: false, nullable: false, api_name: "phoneNumber"
10
11
  end
11
12
  end
@@ -6,17 +6,29 @@ module Pinnacle
6
6
  module Types
7
7
  class UpdateTestAgentRequest < Internal::Types::Model
8
8
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
9
+
9
10
  field :display_name, -> { String }, optional: true, nullable: false, api_name: "displayName"
11
+
10
12
  field :description, -> { String }, optional: true, nullable: false
13
+
11
14
  field :logo_url, -> { String }, optional: true, nullable: false, api_name: "logoUrl"
15
+
12
16
  field :hero_url, -> { String }, optional: true, nullable: false, api_name: "heroUrl"
17
+
13
18
  field :phone_numbers, -> { Internal::Types::Array[Pinnacle::Types::AgentPhoneEntry] }, optional: true, nullable: false, api_name: "phoneNumbers"
19
+
14
20
  field :emails, -> { Internal::Types::Array[Pinnacle::Types::AgentEmailEntry] }, optional: true, nullable: false
21
+
15
22
  field :websites, -> { Internal::Types::Array[Pinnacle::Types::AgentWebsiteEntry] }, optional: true, nullable: false
23
+
16
24
  field :privacy_url, -> { String }, optional: true, nullable: false, api_name: "privacyUrl"
25
+
17
26
  field :terms_url, -> { String }, optional: true, nullable: false, api_name: "termsUrl"
27
+
18
28
  field :color, -> { String }, optional: true, nullable: false
29
+
19
30
  field :is_conversational, -> { Internal::Types::Boolean }, optional: true, nullable: false, api_name: "isConversational"
31
+
20
32
  field :agent_use_case, -> { Pinnacle::Types::AgentUseCase }, optional: true, nullable: false, api_name: "agentUseCase"
21
33
  end
22
34
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  module Types
6
6
  class RcsCapabilitiesQuery < Internal::Types::Model
7
7
  field :phone_numbers, -> { Internal::Types::Array[String] }, optional: false, nullable: false, api_name: "phoneNumbers"
8
+
8
9
  field :agent_id, -> { String }, optional: true, nullable: false, api_name: "agentId"
9
10
  end
10
11
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  module Types
6
6
  class RcsLinkRequest < Internal::Types::Model
7
7
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
8
+
8
9
  field :phone_number, -> { String }, optional: true, nullable: false, api_name: "phoneNumber"
10
+
9
11
  field :body, -> { String }, optional: true, nullable: false
10
12
  end
11
13
  end
@@ -6,9 +6,13 @@ module Pinnacle
6
6
  module Types
7
7
  class ListTestNumbersParams < Internal::Types::Model
8
8
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
9
+
9
10
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
11
+
10
12
  field :agent_id, -> { String }, optional: true, nullable: false, api_name: "agentId"
13
+
11
14
  field :number, -> { String }, optional: true, nullable: false
15
+
12
16
  field :status, -> { Pinnacle::Rcs::WhitelistedNumbers::Types::ListTestNumbersRequestStatus }, optional: true, nullable: false
13
17
  end
14
18
  end
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  module Types
7
7
  class GetVcardParams < Internal::Types::Model
8
8
  field :id, -> { String }, optional: false, nullable: false
9
+
9
10
  field :options, -> { Pinnacle::Tools::ContactCard::Types::GetVCardSchemaOptions }, optional: true, nullable: false
10
11
  end
11
12
  end
@@ -6,21 +6,37 @@ module Pinnacle
6
6
  module Types
7
7
  class UpsertVcardParams < Internal::Types::Model
8
8
  field :photo, -> { String }, optional: true, nullable: false
9
+
9
10
  field :id, -> { String }, optional: true, nullable: false
11
+
10
12
  field :formatted_name, -> { String }, optional: true, nullable: false, api_name: "formattedName"
13
+
11
14
  field :name, -> { Pinnacle::Types::VCardName }, optional: true, nullable: false
15
+
12
16
  field :nickname, -> { Internal::Types::Array[String] }, optional: true, nullable: false
17
+
13
18
  field :birthday, -> { String }, optional: true, nullable: false
19
+
14
20
  field :addresses, -> { Internal::Types::Array[Pinnacle::Types::VcardAddress] }, optional: true, nullable: false
21
+
15
22
  field :url, -> { String }, optional: true, nullable: false
23
+
16
24
  field :phones, -> { Internal::Types::Array[Pinnacle::Types::VcardPhone] }, optional: true, nullable: false
25
+
17
26
  field :emails, -> { Internal::Types::Array[Pinnacle::Types::VcardEmail] }, optional: true, nullable: false
27
+
18
28
  field :timezone, -> { String }, optional: true, nullable: false
29
+
19
30
  field :geo, -> { Pinnacle::Types::VCardGeo }, optional: true, nullable: false
31
+
20
32
  field :title, -> { String }, optional: true, nullable: false
33
+
21
34
  field :role, -> { String }, optional: true, nullable: false
35
+
22
36
  field :organization, -> { Pinnacle::Types::VCardOrganization }, optional: true, nullable: false
37
+
23
38
  field :categories, -> { Internal::Types::Array[String] }, optional: true, nullable: false
39
+
24
40
  field :note, -> { String }, optional: true, nullable: false
25
41
  end
26
42
  end
@@ -7,6 +7,7 @@ module Pinnacle
7
7
  # Additional configurations for your file.
8
8
  class UploadFileOptions < Internal::Types::Model
9
9
  field :delete_at, -> { String }, optional: true, nullable: false, api_name: "deleteAt"
10
+
10
11
  field :download, -> { Pinnacle::Tools::File::Types::DownloadOptions }, optional: true, nullable: false
11
12
  end
12
13
  end
@@ -6,8 +6,11 @@ module Pinnacle
6
6
  module Types
7
7
  class UploadFileParams < Internal::Types::Model
8
8
  field :content_type, -> { String }, optional: false, nullable: false, api_name: "contentType"
9
+
9
10
  field :size, -> { Integer }, optional: false, nullable: false
11
+
10
12
  field :name, -> { String }, optional: true, nullable: false
13
+
11
14
  field :options, -> { Pinnacle::Tools::File::Types::UploadFileOptions }, optional: true, nullable: false
12
15
  end
13
16
  end
@@ -95,7 +95,7 @@ module Pinnacle
95
95
  def update(request_options: {}, **params)
96
96
  params = Pinnacle::Internal::Types::Utils.normalize_keys(params)
97
97
  request_data = Pinnacle::Tools::Url::Types::UpdateUrlParams.new(params).to_h
98
- non_body_param_names = ["linkId"]
98
+ non_body_param_names = %w[linkId]
99
99
  body = request_data.except(*non_body_param_names)
100
100
 
101
101
  request = Pinnacle::Internal::JSON::Request.new(
@@ -6,6 +6,7 @@ module Pinnacle
6
6
  module Types
7
7
  class CreateUrlParams < Internal::Types::Model
8
8
  field :url, -> { String }, optional: false, nullable: false
9
+
9
10
  field :options, -> { Pinnacle::Types::CreateUrlOptions }, optional: true, nullable: false
10
11
  end
11
12
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  module Types
7
7
  class ListLinksParams < Internal::Types::Model
8
8
  field :page_index, -> { Integer }, optional: true, nullable: false, api_name: "pageIndex"
9
+
9
10
  field :page_size, -> { Integer }, optional: true, nullable: false, api_name: "pageSize"
11
+
10
12
  field :endpoint, -> { String }, optional: true, nullable: false
11
13
  end
12
14
  end
@@ -6,7 +6,9 @@ module Pinnacle
6
6
  module Types
7
7
  class UpdateUrlParams < Internal::Types::Model
8
8
  field :link_id, -> { String }, optional: false, nullable: false, api_name: "linkId"
9
+
9
10
  field :url, -> { String }, optional: true, nullable: false
11
+
10
12
  field :options, -> { Pinnacle::Types::CreateUrlOptions }, optional: true, nullable: false
11
13
  end
12
14
  end
@@ -6,8 +6,11 @@ module Pinnacle
6
6
  # pattern); the place lookup happens entirely in the browser and is purely for suggestion UX.
7
7
  class AddressField < Internal::Types::Model
8
8
  field :placeholder, -> { String }, optional: true, nullable: false
9
+
9
10
  field :pattern, -> { String }, optional: true, nullable: false
11
+
10
12
  field :min_length, -> { Integer }, optional: true, nullable: false
13
+
11
14
  field :max_length, -> { Integer }, optional: true, nullable: false
12
15
  end
13
16
  end
@@ -7,10 +7,15 @@ module Pinnacle
7
7
  # Provides comprehensive insights for risk assessment, compliance, and advanced usage scenarios.
8
8
  class AdvancedPhoneInformation < Internal::Types::Model
9
9
  field :is_valid, -> { Internal::Types::Boolean }, optional: false, nullable: false, api_name: "isValid"
10
+
10
11
  field :type, -> { Pinnacle::Types::AdvancedPhoneInformationType }, optional: false, nullable: false
12
+
11
13
  field :formats, -> { Pinnacle::Types::NumberFormat }, optional: false, nullable: false
14
+
12
15
  field :location, -> { Pinnacle::Types::AdvancedPhoneInformationLocation }, optional: false, nullable: false
16
+
13
17
  field :carrier, -> { Pinnacle::Types::AdvancedPhoneInformationCarrier }, optional: false, nullable: false
18
+
14
19
  field :contact, -> { Pinnacle::Types::AdvancedPhoneInformationContact }, optional: false, nullable: true
15
20
  end
16
21
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Detailed carrier information.
6
6
  class AdvancedPhoneInformationCarrier < Internal::Types::Model
7
7
  field :name, -> { String }, optional: false, nullable: false
8
+
8
9
  field :normalized_carrier, -> { String }, optional: false, nullable: false, api_name: "normalizedCarrier"
10
+
9
11
  field :mcc, -> { String }, optional: false, nullable: false
12
+
10
13
  field :mnc, -> { String }, optional: false, nullable: false
11
14
  end
12
15
  end
@@ -5,14 +5,23 @@ module Pinnacle
5
5
  # Enhanced contact information associated with the phone number.
6
6
  class AdvancedPhoneInformationContact < Internal::Types::Model
7
7
  field :first_name, -> { String }, optional: true, nullable: false, api_name: "firstName"
8
+
8
9
  field :last_name, -> { String }, optional: true, nullable: false, api_name: "lastName"
10
+
9
11
  field :email_address, -> { String }, optional: true, nullable: false, api_name: "emailAddress"
12
+
10
13
  field :street, -> { String }, optional: true, nullable: false
14
+
11
15
  field :unit, -> { String }, optional: true, nullable: false
16
+
12
17
  field :place, -> { String }, optional: true, nullable: false
18
+
13
19
  field :zip, -> { String }, optional: true, nullable: false
20
+
14
21
  field :state, -> { String }, optional: true, nullable: false
22
+
15
23
  field :country, -> { String }, optional: true, nullable: false
24
+
16
25
  field :profiles, -> { Internal::Types::Array[Pinnacle::Types::EnhancedContactItem] }, optional: true, nullable: false
17
26
  end
18
27
  end
@@ -6,12 +6,19 @@ module Pinnacle
6
6
  # and timezone information for accurate localization.
7
7
  class AdvancedPhoneInformationLocation < Internal::Types::Model
8
8
  field :country, -> { Pinnacle::Types::AdvancedPhoneInformationLocationCountry }, optional: false, nullable: false
9
+
9
10
  field :city, -> { String }, optional: false, nullable: true
11
+
10
12
  field :state, -> { String }, optional: false, nullable: true
13
+
11
14
  field :zip, -> { String }, optional: false, nullable: true
15
+
12
16
  field :metro_code, -> { String }, optional: false, nullable: true, api_name: "metroCode"
17
+
13
18
  field :county, -> { String }, optional: false, nullable: true
19
+
14
20
  field :coordinates, -> { Pinnacle::Types::AdvancedPhoneInformationLocationCoordinates }, optional: false, nullable: false
21
+
15
22
  field :time_zone, -> { String }, optional: false, nullable: true, api_name: "timeZone"
16
23
  end
17
24
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Coordinates provide the precise latitude and longitude values for the phone number’s registered location.
6
6
  class AdvancedPhoneInformationLocationCoordinates < Internal::Types::Model
7
7
  field :latitude, -> { Integer }, optional: false, nullable: true
8
+
8
9
  field :longitude, -> { Integer }, optional: false, nullable: true
9
10
  end
10
11
  end
@@ -5,7 +5,9 @@ module Pinnacle
5
5
  # Complete country identification and metadata.
6
6
  class AdvancedPhoneInformationLocationCountry < Internal::Types::Model
7
7
  field :name, -> { String }, optional: false, nullable: false
8
+
8
9
  field :code, -> { String }, optional: false, nullable: false
10
+
9
11
  field :code_3, -> { String }, optional: false, nullable: false, api_name: "code3"
10
12
  end
11
13
  end
@@ -5,8 +5,11 @@ module Pinnacle
5
5
  # Detailed classification including fraud risk and security recommendations.
6
6
  class AdvancedPhoneInformationType < Internal::Types::Model
7
7
  field :value, -> { Pinnacle::Types::DetailedPhoneNumberEnum }, optional: false, nullable: false
8
+
8
9
  field :description, -> { String }, optional: false, nullable: false
10
+
9
11
  field :details, -> { String }, optional: false, nullable: false
12
+
10
13
  field :recommendation, -> { Pinnacle::Types::AdvancedPhoneInformationTypeRecommendation }, optional: false, nullable: false
11
14
  end
12
15
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # Information about an RCS agent sender in a conversation.
6
6
  class Agent < Internal::Types::Model
7
7
  field :agent_id, -> { String }, optional: false, nullable: false, api_name: "agentId"
8
+
8
9
  field :agent_name, -> { String }, optional: false, nullable: false, api_name: "agentName"
9
10
  end
10
11
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # An email contact entry for the RCS agent's contact information.
6
6
  class AgentEmailEntry < Internal::Types::Model
7
7
  field :address, -> { String }, optional: false, nullable: false
8
+
8
9
  field :label, -> { String }, optional: false, nullable: false
9
10
  end
10
11
  end
@@ -5,6 +5,7 @@ module Pinnacle
5
5
  # A phone number contact entry for the RCS agent's contact information.
6
6
  class AgentPhoneEntry < Internal::Types::Model
7
7
  field :number, -> { String }, optional: false, nullable: false
8
+
8
9
  field :label, -> { String }, optional: false, nullable: false
9
10
  end
10
11
  end