rcs 2.0.5 → 2.0.8

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