rcs 2.0.3 → 2.0.5.pre.rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (817) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +12 -0
  3. data/.fernignore +6 -0
  4. data/.rubocop.yml +60 -0
  5. data/README.md +121 -0
  6. data/Rakefile +20 -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/base_client.rb +75 -0
  18. data/lib/pinnacle/brands/client.rb +245 -0
  19. data/lib/pinnacle/brands/types/autofill_brand_options.rb +11 -0
  20. data/lib/pinnacle/brands/types/autofill_brand_params.rb +14 -0
  21. data/lib/pinnacle/brands/types/brands_get_request.rb +12 -0
  22. data/lib/pinnacle/brands/types/upsert_brand_params.rb +22 -0
  23. data/lib/pinnacle/brands/types/upsert_brand_schema_contact.rb +15 -0
  24. data/lib/pinnacle/brands/types/upsert_brand_schema_entity_type.rb +17 -0
  25. data/lib/pinnacle/brands/types/upsert_brand_schema_sector.rb +29 -0
  26. data/lib/pinnacle/brands/types/upsert_brand_schema_type.rb +17 -0
  27. data/lib/pinnacle/brands/types/vet_brand_params.rb +14 -0
  28. data/lib/pinnacle/campaigns/client.rb +29 -0
  29. data/lib/pinnacle/campaigns/dlc/client.rb +201 -0
  30. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_help_keywords.rb +15 -0
  31. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_keywords.rb +16 -0
  32. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_links.rb +15 -0
  33. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +15 -0
  34. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +15 -0
  35. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_options.rb +19 -0
  36. data/lib/pinnacle/campaigns/dlc/types/dlc_campaign_use_case.rb +15 -0
  37. data/lib/pinnacle/campaigns/dlc/types/upsert_dlc_campaign_params.rb +23 -0
  38. data/lib/pinnacle/campaigns/rcs/client.rb +199 -0
  39. data/lib/pinnacle/campaigns/rcs/types/rcs_agent.rb +21 -0
  40. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_email.rb +14 -0
  41. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_phone.rb +14 -0
  42. data/lib/pinnacle/campaigns/rcs/types/rcs_agent_website.rb +14 -0
  43. data/lib/pinnacle/campaigns/rcs/types/rcs_autofill_response.rb +13 -0
  44. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_help_keywords.rb +14 -0
  45. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_keywords.rb +15 -0
  46. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +14 -0
  47. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +14 -0
  48. data/lib/pinnacle/campaigns/rcs/types/rcs_campaign_traffic.rb +14 -0
  49. data/lib/pinnacle/campaigns/rcs/types/rcs_links.rb +15 -0
  50. data/lib/pinnacle/campaigns/rcs/types/rcs_use_case.rb +15 -0
  51. data/lib/pinnacle/campaigns/rcs/types/upsert_rcs_campaign_params.rb +28 -0
  52. data/lib/pinnacle/campaigns/toll_free/client.rb +201 -0
  53. data/lib/pinnacle/campaigns/toll_free/types/toll_free_autofill_response.rb +13 -0
  54. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +14 -0
  55. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_keywords.rb +15 -0
  56. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_links.rb +15 -0
  57. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +16 -0
  58. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +15 -0
  59. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_options.rb +14 -0
  60. data/lib/pinnacle/campaigns/toll_free/types/toll_free_campaign_use_case.rb +15 -0
  61. data/lib/pinnacle/campaigns/toll_free/types/upsert_toll_free_campaign_params.rb +22 -0
  62. data/lib/pinnacle/client.rb +26 -0
  63. data/lib/pinnacle/contacts/client.rb +130 -0
  64. data/lib/pinnacle/contacts/types/contacts_get_request.rb +12 -0
  65. data/lib/pinnacle/contacts/types/create_contact_params.rb +15 -0
  66. data/lib/pinnacle/contacts/types/update_contact_params.rb +15 -0
  67. data/lib/pinnacle/conversations/client.rb +175 -0
  68. data/lib/pinnacle/conversations/types/conversations_list_messages_request.rb +19 -0
  69. data/lib/pinnacle/conversations/types/conversations_list_messages_request_direction.rb +14 -0
  70. data/lib/pinnacle/conversations/types/conversations_list_messages_request_sort_order.rb +14 -0
  71. data/lib/pinnacle/conversations/types/conversations_list_messages_request_status.rb +19 -0
  72. data/lib/pinnacle/conversations/types/conversations_list_messages_request_type.rb +15 -0
  73. data/lib/pinnacle/conversations/types/list_conversations_params.rb +17 -0
  74. data/lib/pinnacle/conversations/types/update_conversation_params.rb +12 -0
  75. data/lib/pinnacle/errors/api_error.rb +8 -0
  76. data/lib/pinnacle/errors/client_error.rb +17 -0
  77. data/lib/pinnacle/errors/redirect_error.rb +8 -0
  78. data/lib/pinnacle/errors/response_error.rb +42 -0
  79. data/lib/pinnacle/errors/server_error.rb +11 -0
  80. data/lib/pinnacle/errors/timeout_error.rb +8 -0
  81. data/lib/pinnacle/internal/errors/constraint_error.rb +10 -0
  82. data/lib/pinnacle/internal/errors/type_error.rb +10 -0
  83. data/lib/pinnacle/internal/http/base_request.rb +31 -0
  84. data/lib/pinnacle/internal/http/raw_client.rb +116 -0
  85. data/lib/pinnacle/internal/iterators/cursor_item_iterator.rb +28 -0
  86. data/lib/pinnacle/internal/iterators/cursor_page_iterator.rb +51 -0
  87. data/lib/pinnacle/internal/iterators/item_iterator.rb +59 -0
  88. data/lib/pinnacle/internal/iterators/offset_item_iterator.rb +30 -0
  89. data/lib/pinnacle/internal/iterators/offset_page_iterator.rb +83 -0
  90. data/lib/pinnacle/internal/json/request.rb +39 -0
  91. data/lib/pinnacle/internal/json/serializable.rb +25 -0
  92. data/lib/pinnacle/internal/multipart/multipart_encoder.rb +141 -0
  93. data/lib/pinnacle/internal/multipart/multipart_form_data.rb +78 -0
  94. data/lib/pinnacle/internal/multipart/multipart_form_data_part.rb +51 -0
  95. data/lib/pinnacle/internal/multipart/multipart_request.rb +38 -0
  96. data/lib/pinnacle/internal/types/array.rb +47 -0
  97. data/lib/pinnacle/internal/types/boolean.rb +34 -0
  98. data/lib/pinnacle/internal/types/enum.rb +56 -0
  99. data/lib/pinnacle/internal/types/hash.rb +36 -0
  100. data/lib/pinnacle/internal/types/model/field.rb +38 -0
  101. data/lib/pinnacle/internal/types/model.rb +208 -0
  102. data/lib/pinnacle/internal/types/type.rb +35 -0
  103. data/lib/pinnacle/internal/types/union.rb +161 -0
  104. data/lib/pinnacle/internal/types/unknown.rb +15 -0
  105. data/lib/pinnacle/internal/types/utils.rb +116 -0
  106. data/lib/pinnacle/messages/blast/client.rb +143 -0
  107. data/lib/pinnacle/messages/blast/types/blast_mms.rb +16 -0
  108. data/lib/pinnacle/messages/blast/types/blast_mms_options.rb +15 -0
  109. data/lib/pinnacle/messages/blast/types/blast_mms_response.rb +16 -0
  110. data/lib/pinnacle/messages/blast/types/blast_rcs.rb +16 -0
  111. data/lib/pinnacle/messages/blast/types/blast_rcs_options.rb +17 -0
  112. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card.rb +20 -0
  113. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +16 -0
  114. data/lib/pinnacle/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +16 -0
  115. data/lib/pinnacle/messages/blast/types/blast_rcs_response.rb +16 -0
  116. data/lib/pinnacle/messages/blast/types/blast_sms.rb +16 -0
  117. data/lib/pinnacle/messages/blast/types/blast_sms_options.rb +14 -0
  118. data/lib/pinnacle/messages/blast/types/blast_sms_response.rb +16 -0
  119. data/lib/pinnacle/messages/client.rb +110 -0
  120. data/lib/pinnacle/messages/mms/client.rb +87 -0
  121. data/lib/pinnacle/messages/mms/types/mms.rb +17 -0
  122. data/lib/pinnacle/messages/mms/types/mms_send_response.rb +16 -0
  123. data/lib/pinnacle/messages/mms/types/send_mms_options.rb +17 -0
  124. data/lib/pinnacle/messages/rcs/client.rb +140 -0
  125. data/lib/pinnacle/messages/rcs/types/send_rich_message_response.rb +16 -0
  126. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema.rb +15 -0
  127. data/lib/pinnacle/messages/rcs/types/send_typing_indicator_schema_options.rb +14 -0
  128. data/lib/pinnacle/messages/schedule/client.rb +53 -0
  129. data/lib/pinnacle/messages/sms/client.rb +87 -0
  130. data/lib/pinnacle/messages/sms/types/send_sms_options.rb +15 -0
  131. data/lib/pinnacle/messages/sms/types/sms.rb +16 -0
  132. data/lib/pinnacle/messages/sms/types/sms_send_response.rb +16 -0
  133. data/lib/pinnacle/messages/types/react_message_options.rb +11 -0
  134. data/lib/pinnacle/messages/types/react_message_params.rb +13 -0
  135. data/lib/pinnacle/phone_numbers/campaign/client.rb +90 -0
  136. data/lib/pinnacle/phone_numbers/campaign/types/attach_campaign_params.rb +15 -0
  137. data/lib/pinnacle/phone_numbers/campaign/types/detach_campaign_params.rb +13 -0
  138. data/lib/pinnacle/phone_numbers/client.rb +133 -0
  139. data/lib/pinnacle/phone_numbers/types/buy_phone_number_params.rb +11 -0
  140. data/lib/pinnacle/phone_numbers/types/enhanced_contact_info.rb +12 -0
  141. data/lib/pinnacle/phone_numbers/types/phone_details_schema_level.rb +14 -0
  142. data/lib/pinnacle/phone_numbers/types/phone_numbers_get_response.rb +14 -0
  143. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_options.rb +14 -0
  144. data/lib/pinnacle/phone_numbers/types/retrieve_phone_number_details_params.rb +13 -0
  145. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_digits.rb +14 -0
  146. data/lib/pinnacle/phone_numbers/types/search_phone_number_by_location.rb +17 -0
  147. data/lib/pinnacle/phone_numbers/types/search_phone_number_options.rb +12 -0
  148. data/lib/pinnacle/phone_numbers/types/search_phone_number_params.rb +15 -0
  149. data/lib/pinnacle/phone_numbers/webhook/client.rb +90 -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 +24 -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 +449 -0
  453. data/reference.md +5956 -0
  454. data/wiremock/docker-compose.test.yml +14 -0
  455. data/wiremock/wiremock-mappings.json +1 -0
  456. metadata +468 -454
  457. data/lib/gemconfig.rb +0 -14
  458. data/lib/rcs/audiences/client.rb +0 -347
  459. data/lib/rcs/audiences/contacts/client.rb +0 -173
  460. data/lib/rcs/audiences/types/audiences_get_response.rb +0 -58
  461. data/lib/rcs/brands/client.rb +0 -656
  462. data/lib/rcs/brands/types/autofill_brand_options.rb +0 -61
  463. data/lib/rcs/brands/types/brand_contact.rb +0 -84
  464. data/lib/rcs/campaigns/client.rb +0 -44
  465. data/lib/rcs/campaigns/dlc/client.rb +0 -490
  466. data/lib/rcs/campaigns/dlc/types/dlc_campaign_help_keywords.rb +0 -74
  467. data/lib/rcs/campaigns/dlc/types/dlc_campaign_keywords.rb +0 -99
  468. data/lib/rcs/campaigns/dlc/types/dlc_campaign_links.rb +0 -74
  469. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +0 -74
  470. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +0 -74
  471. data/lib/rcs/campaigns/dlc/types/dlc_campaign_options.rb +0 -110
  472. data/lib/rcs/campaigns/dlc/types/dlc_campaign_use_case.rb +0 -76
  473. data/lib/rcs/campaigns/rcs/client.rb +0 -564
  474. data/lib/rcs/campaigns/rcs/types/rcs_agent.rb +0 -146
  475. data/lib/rcs/campaigns/rcs/types/rcs_agent_email.rb +0 -73
  476. data/lib/rcs/campaigns/rcs/types/rcs_agent_phone.rb +0 -73
  477. data/lib/rcs/campaigns/rcs/types/rcs_agent_website.rb +0 -73
  478. data/lib/rcs/campaigns/rcs/types/rcs_autofill_response.rb +0 -246
  479. data/lib/rcs/campaigns/rcs/types/rcs_campaign_help_keywords.rb +0 -77
  480. data/lib/rcs/campaigns/rcs/types/rcs_campaign_keywords.rb +0 -98
  481. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +0 -87
  482. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +0 -83
  483. data/lib/rcs/campaigns/rcs/types/rcs_campaign_traffic.rb +0 -76
  484. data/lib/rcs/campaigns/rcs/types/rcs_links.rb +0 -74
  485. data/lib/rcs/campaigns/rcs/types/rcs_use_case.rb +0 -75
  486. data/lib/rcs/campaigns/toll_free/client.rb +0 -478
  487. data/lib/rcs/campaigns/toll_free/types/toll_free_autofill_response.rb +0 -172
  488. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +0 -66
  489. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_keywords.rb +0 -86
  490. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_links.rb +0 -74
  491. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +0 -86
  492. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +0 -78
  493. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_options.rb +0 -64
  494. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_use_case.rb +0 -75
  495. data/lib/rcs/contacts/client.rb +0 -277
  496. data/lib/rcs/conversations/client.rb +0 -401
  497. data/lib/rcs/conversations/types/conversations_list_messages_request_direction.rb +0 -12
  498. data/lib/rcs/conversations/types/conversations_list_messages_request_sort_order.rb +0 -12
  499. data/lib/rcs/conversations/types/conversations_list_messages_request_status.rb +0 -17
  500. data/lib/rcs/conversations/types/conversations_list_messages_request_type.rb +0 -13
  501. data/lib/rcs/messages/blast/client.rb +0 -419
  502. data/lib/rcs/messages/blast/types/blast_mms_options.rb +0 -82
  503. data/lib/rcs/messages/blast/types/blast_mms_response.rb +0 -60
  504. data/lib/rcs/messages/blast/types/blast_rcs_options.rb +0 -118
  505. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card.rb +0 -82
  506. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +0 -16
  507. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +0 -15
  508. data/lib/rcs/messages/blast/types/blast_rcs_response.rb +0 -60
  509. data/lib/rcs/messages/blast/types/blast_sms_options.rb +0 -70
  510. data/lib/rcs/messages/blast/types/blast_sms_response.rb +0 -60
  511. data/lib/rcs/messages/client.rb +0 -189
  512. data/lib/rcs/messages/mms/client.rb +0 -216
  513. data/lib/rcs/messages/mms/types/mms_send_response.rb +0 -60
  514. data/lib/rcs/messages/mms/types/send_mms_options.rb +0 -108
  515. data/lib/rcs/messages/rcs/client.rb +0 -286
  516. data/lib/rcs/messages/rcs/types/send_rich_message_response.rb +0 -60
  517. data/lib/rcs/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -66
  518. data/lib/rcs/messages/schedule/client.rb +0 -103
  519. data/lib/rcs/messages/sms/client.rb +0 -198
  520. data/lib/rcs/messages/sms/types/send_sms_options.rb +0 -81
  521. data/lib/rcs/messages/sms/types/sms_send_response.rb +0 -60
  522. data/lib/rcs/messages/types/react_message_options.rb +0 -71
  523. data/lib/rcs/phone_numbers/campaign/client.rb +0 -193
  524. data/lib/rcs/phone_numbers/client.rb +0 -345
  525. data/lib/rcs/phone_numbers/types/enhanced_contact_info.rb +0 -62
  526. data/lib/rcs/phone_numbers/types/phone_details_schema_level.rb +0 -16
  527. data/lib/rcs/phone_numbers/types/phone_numbers_get_response.rb +0 -58
  528. data/lib/rcs/phone_numbers/types/retrieve_phone_number_details_options.rb +0 -93
  529. data/lib/rcs/phone_numbers/types/search_phone_number_by_digits.rb +0 -81
  530. data/lib/rcs/phone_numbers/types/search_phone_number_by_location.rb +0 -96
  531. data/lib/rcs/phone_numbers/types/search_phone_number_options.rb +0 -62
  532. data/lib/rcs/phone_numbers/webhook/client.rb +0 -193
  533. data/lib/rcs/rcs/client.rb +0 -330
  534. data/lib/rcs/status/client.rb +0 -30
  535. data/lib/rcs/status/get/client.rb +0 -383
  536. data/lib/rcs/tools/client.rb +0 -44
  537. data/lib/rcs/tools/contact_card/client.rb +0 -295
  538. data/lib/rcs/tools/contact_card/types/get_v_card_schema_options.rb +0 -67
  539. data/lib/rcs/tools/file/client.rb +0 -228
  540. data/lib/rcs/tools/file/types/download_options.rb +0 -66
  541. data/lib/rcs/tools/file/types/upload_file_options.rb +0 -88
  542. data/lib/rcs/tools/url/client.rb +0 -247
  543. data/lib/rcs/types/advanced_phone_information.rb +0 -147
  544. data/lib/rcs/types/advanced_phone_information_carrier.rb +0 -90
  545. data/lib/rcs/types/advanced_phone_information_contact.rb +0 -146
  546. data/lib/rcs/types/advanced_phone_information_location.rb +0 -142
  547. data/lib/rcs/types/advanced_phone_information_location_coordinates.rb +0 -73
  548. data/lib/rcs/types/advanced_phone_information_location_country.rb +0 -77
  549. data/lib/rcs/types/advanced_phone_information_type.rb +0 -97
  550. data/lib/rcs/types/advanced_phone_information_type_recommendation.rb +0 -15
  551. data/lib/rcs/types/agent.rb +0 -68
  552. data/lib/rcs/types/attach_webhook_by_id_params.rb +0 -77
  553. data/lib/rcs/types/attach_webhook_params.rb +0 -60
  554. data/lib/rcs/types/attach_webhook_response_webhook.rb +0 -88
  555. data/lib/rcs/types/attached_phone_number_result.rb +0 -75
  556. data/lib/rcs/types/audience_count_only.rb +0 -87
  557. data/lib/rcs/types/audience_with_pagination.rb +0 -114
  558. data/lib/rcs/types/autofill_campaign_params.rb +0 -81
  559. data/lib/rcs/types/autofill_dlc_campaign_response.rb +0 -173
  560. data/lib/rcs/types/autofill_dlc_response_keywords.rb +0 -93
  561. data/lib/rcs/types/autofill_dlc_response_keywords_help.rb +0 -70
  562. data/lib/rcs/types/autofill_dlc_response_keywords_opt_in.rb +0 -70
  563. data/lib/rcs/types/autofill_dlc_response_keywords_opt_out.rb +0 -70
  564. data/lib/rcs/types/autofill_dlc_response_links.rb +0 -70
  565. data/lib/rcs/types/autofill_dlc_response_options.rb +0 -106
  566. data/lib/rcs/types/autofill_dlc_response_use_case.rb +0 -72
  567. data/lib/rcs/types/bad_request_error_body.rb +0 -56
  568. data/lib/rcs/types/base_rich_message.rb +0 -82
  569. data/lib/rcs/types/basic_phone_information.rb +0 -127
  570. data/lib/rcs/types/basic_phone_information_contact.rb +0 -58
  571. data/lib/rcs/types/basic_phone_information_location.rb +0 -74
  572. data/lib/rcs/types/basic_phone_information_location_country.rb +0 -75
  573. data/lib/rcs/types/blast_details.rb +0 -110
  574. data/lib/rcs/types/brand_status.rb +0 -94
  575. data/lib/rcs/types/brand_status_enum.rb +0 -21
  576. data/lib/rcs/types/button_clicked.rb +0 -56
  577. data/lib/rcs/types/button_clicked_data.rb +0 -80
  578. data/lib/rcs/types/button_clicked_data_button.rb +0 -118
  579. data/lib/rcs/types/button_clicked_data_button_raw.rb +0 -58
  580. data/lib/rcs/types/button_clicked_data_button_type.rb +0 -15
  581. data/lib/rcs/types/buy_response_capabilities.rb +0 -77
  582. data/lib/rcs/types/campaign_enum.rb +0 -15
  583. data/lib/rcs/types/campaign_query.rb +0 -77
  584. data/lib/rcs/types/campaign_submission_result.rb +0 -57
  585. data/lib/rcs/types/campaign_validation_response_errors_item.rb +0 -76
  586. data/lib/rcs/types/campaign_validation_result.rb +0 -71
  587. data/lib/rcs/types/company_entity_type_enum.rb +0 -14
  588. data/lib/rcs/types/company_sector_enum.rb +0 -26
  589. data/lib/rcs/types/company_type_enum.rb +0 -14
  590. data/lib/rcs/types/configured_webhook.rb +0 -85
  591. data/lib/rcs/types/contact.rb +0 -107
  592. data/lib/rcs/types/contact_id.rb +0 -59
  593. data/lib/rcs/types/conversation.rb +0 -154
  594. data/lib/rcs/types/conversation_by_id_params.rb +0 -62
  595. data/lib/rcs/types/conversation_by_participants_params.rb +0 -72
  596. data/lib/rcs/types/conversation_contact.rb +0 -70
  597. data/lib/rcs/types/conversation_list.rb +0 -79
  598. data/lib/rcs/types/conversation_sender.rb +0 -60
  599. data/lib/rcs/types/create_and_attach_webhook_by_url_params.rb +0 -88
  600. data/lib/rcs/types/create_url_options.rb +0 -63
  601. data/lib/rcs/types/delete_audience_response.rb +0 -57
  602. data/lib/rcs/types/detached_phone_number_result.rb +0 -75
  603. data/lib/rcs/types/detached_webhook_info.rb +0 -76
  604. data/lib/rcs/types/detailed_phone_number_enum.rb +0 -25
  605. data/lib/rcs/types/dlc_assignment_status_enum.rb +0 -19
  606. data/lib/rcs/types/dlc_campaign_status.rb +0 -109
  607. data/lib/rcs/types/dlc_campaign_use_case_enum.rb +0 -35
  608. data/lib/rcs/types/dlc_campaign_with_extended_brand_and_status.rb +0 -224
  609. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords.rb +0 -94
  610. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_help.rb +0 -72
  611. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +0 -72
  612. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +0 -72
  613. data/lib/rcs/types/dlc_with_extended_brand_and_status_links.rb +0 -70
  614. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +0 -15
  615. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +0 -22
  616. data/lib/rcs/types/dlc_with_extended_brand_and_status_options.rb +0 -106
  617. data/lib/rcs/types/dlc_with_extended_brand_and_status_use_case.rb +0 -72
  618. data/lib/rcs/types/enhanced_contact.rb +0 -9
  619. data/lib/rcs/types/enhanced_contact_item.rb +0 -104
  620. data/lib/rcs/types/error.rb +0 -61
  621. data/lib/rcs/types/extended_brand.rb +0 -215
  622. data/lib/rcs/types/extended_brand_with_vetting.rb +0 -247
  623. data/lib/rcs/types/extended_rcs_campaign.rb +0 -267
  624. data/lib/rcs/types/get_conversation_params.rb +0 -57
  625. data/lib/rcs/types/get_dlc_campaign_status_response_updates.rb +0 -96
  626. data/lib/rcs/types/get_toll_free_campaign_status_response_updates.rb +0 -92
  627. data/lib/rcs/types/link_click_event.rb +0 -449
  628. data/lib/rcs/types/location_share_action.rb +0 -63
  629. data/lib/rcs/types/location_share_action_data.rb +0 -89
  630. data/lib/rcs/types/message.rb +0 -176
  631. data/lib/rcs/types/message_content.rb +0 -85
  632. data/lib/rcs/types/message_event.rb +0 -143
  633. data/lib/rcs/types/message_event_content.rb +0 -127
  634. data/lib/rcs/types/message_event_conversation.rb +0 -82
  635. data/lib/rcs/types/message_event_direction.rb +0 -11
  636. data/lib/rcs/types/message_event_mms_content.rb +0 -94
  637. data/lib/rcs/types/message_event_rcs_button_data.rb +0 -104
  638. data/lib/rcs/types/message_event_rcs_cards_content.rb +0 -99
  639. data/lib/rcs/types/message_event_rcs_cards_content_cards_item.rb +0 -94
  640. data/lib/rcs/types/message_event_rcs_location_data.rb +0 -91
  641. data/lib/rcs/types/message_event_rcs_media_content.rb +0 -94
  642. data/lib/rcs/types/message_event_rcs_text_content.rb +0 -92
  643. data/lib/rcs/types/message_event_sms_content.rb +0 -81
  644. data/lib/rcs/types/message_list.rb +0 -79
  645. data/lib/rcs/types/message_method_enum.rb +0 -12
  646. data/lib/rcs/types/message_protocol_enum.rb +0 -12
  647. data/lib/rcs/types/message_schedule.rb +0 -121
  648. data/lib/rcs/types/message_status_enum.rb +0 -17
  649. data/lib/rcs/types/message_volume_enum.rb +0 -20
  650. data/lib/rcs/types/message_with_reaction.rb +0 -197
  651. data/lib/rcs/types/message_with_reaction_direction.rb +0 -11
  652. data/lib/rcs/types/messaging_profile_enum.rb +0 -11
  653. data/lib/rcs/types/mms_content.rb +0 -74
  654. data/lib/rcs/types/mms_validation_response_segments.rb +0 -85
  655. data/lib/rcs/types/mms_validation_response_segments_value_item.rb +0 -75
  656. data/lib/rcs/types/mms_validation_result.rb +0 -82
  657. data/lib/rcs/types/not_found_error_body.rb +0 -59
  658. data/lib/rcs/types/number_format.rb +0 -79
  659. data/lib/rcs/types/opt_in_method_enum.rb +0 -13
  660. data/lib/rcs/types/optional_brand_info.rb +0 -154
  661. data/lib/rcs/types/optional_contact.rb +0 -83
  662. data/lib/rcs/types/optional_contacts.rb +0 -84
  663. data/lib/rcs/types/pagination.rb +0 -81
  664. data/lib/rcs/types/phone.rb +0 -101
  665. data/lib/rcs/types/phone_capabilities.rb +0 -75
  666. data/lib/rcs/types/phone_enum.rb +0 -13
  667. data/lib/rcs/types/phone_feature_enum.rb +0 -18
  668. data/lib/rcs/types/phone_number_campaign_attach_failed_item.rb +0 -67
  669. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item.rb +0 -75
  670. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +0 -82
  671. data/lib/rcs/types/phone_number_campaign_detach_failed_item.rb +0 -67
  672. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item.rb +0 -75
  673. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +0 -82
  674. data/lib/rcs/types/phone_number_cost.rb +0 -75
  675. data/lib/rcs/types/phone_number_details.rb +0 -110
  676. data/lib/rcs/types/phone_number_enum.rb +0 -18
  677. data/lib/rcs/types/phone_number_region.rb +0 -91
  678. data/lib/rcs/types/phone_number_status.rb +0 -90
  679. data/lib/rcs/types/phone_number_status_enum.rb +0 -16
  680. data/lib/rcs/types/pinnacle_file_upload_metadata.rb +0 -100
  681. data/lib/rcs/types/pinnacle_url_config.rb +0 -71
  682. data/lib/rcs/types/profile_status_enum.rb +0 -17
  683. data/lib/rcs/types/purchased_number.rb +0 -75
  684. data/lib/rcs/types/rcs_button_call.rb +0 -77
  685. data/lib/rcs/types/rcs_button_open_url.rb +0 -104
  686. data/lib/rcs/types/rcs_button_open_url_webview_mode.rb +0 -19
  687. data/lib/rcs/types/rcs_button_request_user_location.rb +0 -70
  688. data/lib/rcs/types/rcs_button_schedule_event.rb +0 -106
  689. data/lib/rcs/types/rcs_button_send_location.rb +0 -94
  690. data/lib/rcs/types/rcs_button_send_location_lat_long.rb +0 -68
  691. data/lib/rcs/types/rcs_button_trigger.rb +0 -80
  692. data/lib/rcs/types/rcs_campaign.rb +0 -234
  693. data/lib/rcs/types/rcs_campaign_schema_agent.rb +0 -134
  694. data/lib/rcs/types/rcs_campaign_schema_agent_emails_item.rb +0 -69
  695. data/lib/rcs/types/rcs_campaign_schema_agent_phones_item.rb +0 -69
  696. data/lib/rcs/types/rcs_campaign_schema_agent_websites_item.rb +0 -69
  697. data/lib/rcs/types/rcs_campaign_schema_extra_agent.rb +0 -134
  698. data/lib/rcs/types/rcs_campaign_schema_extra_agent_emails_item.rb +0 -70
  699. data/lib/rcs/types/rcs_campaign_schema_extra_agent_phones_item.rb +0 -70
  700. data/lib/rcs/types/rcs_campaign_schema_extra_agent_websites_item.rb +0 -71
  701. data/lib/rcs/types/rcs_campaign_schema_extra_keywords.rb +0 -94
  702. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_help.rb +0 -71
  703. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_in.rb +0 -73
  704. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_out.rb +0 -73
  705. data/lib/rcs/types/rcs_campaign_schema_extra_links.rb +0 -70
  706. data/lib/rcs/types/rcs_campaign_schema_extra_traffic.rb +0 -72
  707. data/lib/rcs/types/rcs_campaign_schema_extra_use_case.rb +0 -71
  708. data/lib/rcs/types/rcs_campaign_schema_keywords.rb +0 -94
  709. data/lib/rcs/types/rcs_campaign_schema_keywords_help.rb +0 -71
  710. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_in.rb +0 -73
  711. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_out.rb +0 -73
  712. data/lib/rcs/types/rcs_campaign_schema_links.rb +0 -70
  713. data/lib/rcs/types/rcs_campaign_schema_traffic.rb +0 -72
  714. data/lib/rcs/types/rcs_campaign_schema_use_case.rb +0 -71
  715. data/lib/rcs/types/rcs_campaign_status.rb +0 -88
  716. data/lib/rcs/types/rcs_campaign_use_case_enum.rb +0 -23
  717. data/lib/rcs/types/rcs_capabilities_result.rb +0 -7
  718. data/lib/rcs/types/rcs_capability.rb +0 -82
  719. data/lib/rcs/types/rcs_capability_actions.rb +0 -105
  720. data/lib/rcs/types/rcs_capability_cards.rb +0 -67
  721. data/lib/rcs/types/rcs_cards_content.rb +0 -79
  722. data/lib/rcs/types/rcs_cards_content_cards_item.rb +0 -96
  723. data/lib/rcs/types/rcs_content.rb +0 -72
  724. data/lib/rcs/types/rcs_link_result.rb +0 -75
  725. data/lib/rcs/types/rcs_media_content.rb +0 -81
  726. data/lib/rcs/types/rcs_media_details_content.rb +0 -77
  727. data/lib/rcs/types/rcs_messaging_type_enum.rb +0 -17
  728. data/lib/rcs/types/rcs_validate_content.rb +0 -70
  729. data/lib/rcs/types/rcs_validate_content_media.rb +0 -75
  730. data/lib/rcs/types/rcs_validation_result.rb +0 -83
  731. data/lib/rcs/types/rcs_whitelist_response.rb +0 -58
  732. data/lib/rcs/types/reaction_result.rb +0 -71
  733. data/lib/rcs/types/refreshed_file.rb +0 -67
  734. data/lib/rcs/types/rich_button.rb +0 -148
  735. data/lib/rcs/types/rich_card.rb +0 -90
  736. data/lib/rcs/types/rich_cards.rb +0 -79
  737. data/lib/rcs/types/rich_cards_message.rb +0 -110
  738. data/lib/rcs/types/rich_media_message.rb +0 -110
  739. data/lib/rcs/types/rich_message.rb +0 -70
  740. data/lib/rcs/types/rich_standalone_card_options.rb +0 -80
  741. data/lib/rcs/types/rich_text.rb +0 -72
  742. data/lib/rcs/types/rich_text_message.rb +0 -106
  743. data/lib/rcs/types/schedule_cancel_result.rb +0 -58
  744. data/lib/rcs/types/scheduled_blast_details.rb +0 -76
  745. data/lib/rcs/types/scheduled_blast_response_config.rb +0 -89
  746. data/lib/rcs/types/scheduled_message.rb +0 -75
  747. data/lib/rcs/types/scheduled_send_response_config.rb +0 -89
  748. data/lib/rcs/types/send_rcs_card_options_standalone_card_image_alignment.rb +0 -12
  749. data/lib/rcs/types/send_rcs_card_options_standalone_card_orientation.rb +0 -11
  750. data/lib/rcs/types/send_rich_cards_options.rb +0 -136
  751. data/lib/rcs/types/send_rich_message_options.rb +0 -111
  752. data/lib/rcs/types/send_sms_response_segments.rb +0 -69
  753. data/lib/rcs/types/send_sms_response_segments_encoding.rb +0 -11
  754. data/lib/rcs/types/send_typing_indicator_response.rb +0 -100
  755. data/lib/rcs/types/sent_mms_details.rb +0 -118
  756. data/lib/rcs/types/sent_rich_message.rb +0 -104
  757. data/lib/rcs/types/sent_sms_details.rb +0 -110
  758. data/lib/rcs/types/shortened_url.rb +0 -77
  759. data/lib/rcs/types/shortened_url_with_click_data.rb +0 -90
  760. data/lib/rcs/types/sms_content.rb +0 -58
  761. data/lib/rcs/types/sms_validation_response_segments.rb +0 -80
  762. data/lib/rcs/types/sms_validation_response_segments_gsm_7.rb +0 -75
  763. data/lib/rcs/types/sms_validation_response_segments_utf_16.rb +0 -68
  764. data/lib/rcs/types/sms_validation_response_total.rb +0 -75
  765. data/lib/rcs/types/sms_validation_result.rb +0 -102
  766. data/lib/rcs/types/sub_use_case_enum.rb +0 -19
  767. data/lib/rcs/types/submission_results.rb +0 -57
  768. data/lib/rcs/types/successful_conversation_update.rb +0 -58
  769. data/lib/rcs/types/toll_free_campaign.rb +0 -160
  770. data/lib/rcs/types/toll_free_campaign_schema_keywords.rb +0 -82
  771. data/lib/rcs/types/toll_free_campaign_schema_keywords_help.rb +0 -62
  772. data/lib/rcs/types/toll_free_campaign_schema_keywords_opt_in.rb +0 -74
  773. data/lib/rcs/types/toll_free_campaign_schema_links.rb +0 -70
  774. data/lib/rcs/types/toll_free_campaign_schema_opt_in.rb +0 -78
  775. data/lib/rcs/types/toll_free_campaign_schema_options.rb +0 -60
  776. data/lib/rcs/types/toll_free_campaign_schema_use_case.rb +0 -71
  777. data/lib/rcs/types/toll_free_campaign_status.rb +0 -93
  778. data/lib/rcs/types/toll_free_campaign_use_case_enum.rb +0 -52
  779. data/lib/rcs/types/toll_free_campaign_with_extended_brand_and_status.rb +0 -195
  780. data/lib/rcs/types/toll_free_status_enum.rb +0 -20
  781. data/lib/rcs/types/tracking.rb +0 -17
  782. data/lib/rcs/types/updated_contact_id.rb +0 -59
  783. data/lib/rcs/types/upload_results.rb +0 -80
  784. data/lib/rcs/types/upsert_contact.rb +0 -84
  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 -93
  814. data/lib/rcs.rb +0 -124
  815. data/lib/requests.rb +0 -163
  816. data/lib/types_export.rb +0 -332
  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