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,295 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../../requests"
4
- require_relative "types/get_v_card_schema_options"
5
- require_relative "../../types/v_card_data"
6
- require_relative "../../types/v_card_name"
7
- require_relative "../../types/vcard_address"
8
- require_relative "../../types/vcard_phone"
9
- require_relative "../../types/vcard_email"
10
- require_relative "../../types/v_card_geo"
11
- require_relative "../../types/v_card_organization"
12
- require_relative "../../types/vcard_resource"
13
- require "async"
14
-
15
- module Pinnacle
16
- module Tools
17
- class ContactCardClient
18
- # @return [Pinnacle::RequestClient]
19
- attr_reader :request_client
20
-
21
- # @param request_client [Pinnacle::RequestClient]
22
- # @return [Pinnacle::Tools::ContactCardClient]
23
- def initialize(request_client:)
24
- @request_client = request_client
25
- end
26
-
27
- # Retrieve contact information as a vCard and get a presigned URL to download the
28
- # file. Contact cards can be sent [via MMS](/api-reference/messages/send-mms) as a
29
- # media file.
30
- #
31
- # @param id [String] The unique identifier of the contact. This identifier is a string that always
32
- # begins with the prefix `cc_`, for example: `cc_1234567890`.
33
- # @param options [Hash] Request of type Pinnacle::Tools::ContactCard::Types::GetVCardSchemaOptions, as a Hash
34
- # * :expires_at (String)
35
- # @param request_options [Pinnacle::RequestOptions]
36
- # @return [Pinnacle::Types::VCardData]
37
- # @example
38
- # api = Pinnacle::Client.new(
39
- # base_url: "https://api.example.com",
40
- # environment: Pinnacle::Environment::DEFAULT,
41
- # api_key: "YOUR_API_KEY"
42
- # )
43
- # api.tools.contact_card.get(id: "cc_1234567890")
44
- def get(id:, options: nil, request_options: nil)
45
- response = @request_client.conn.post do |req|
46
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
47
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
48
- req.headers = {
49
- **(req.headers || {}),
50
- **@request_client.get_headers,
51
- **(request_options&.additional_headers || {})
52
- }.compact
53
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
54
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
55
- end
56
- req.body = { **(request_options&.additional_body_parameters || {}), id: id, options: options }.compact
57
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/contact-card"
58
- end
59
- Pinnacle::Types::VCardData.from_json(json_object: response.body)
60
- end
61
-
62
- # Create a new contact card or updates an existing one with full vCard data.
63
- # Contact cards can be sent [via MMS](/api-reference/messages/send-mms) as a media
64
- # file.
65
- #
66
- # @param id [String] The unique identifier of the contact. This identifier is a string that always
67
- # begins with the prefix `cc_`, for example: `cc_1234567890`.
68
- # @param formatted_name [String] Full display name for the vCard.
69
- # @param name [Hash] Structured name components.Request of type Pinnacle::Types::VCardName, as a Hash
70
- # * :family_name (String)
71
- # * :given_name (String)
72
- # * :additional_names (Array<String>)
73
- # * :honorific_prefixes (Array<String>)
74
- # * :honorific_suffixes (Array<String>)
75
- # @param nickname [Array<String>] Nicknames or aliases.
76
- # @param birthday [String] Birthday in ISO 8601 date format (YYYY-MM-DD).
77
- # @param addresses [Array<Hash>] Physical addresses.Request of type Array<Pinnacle::Types::VcardAddress>, as a Hash
78
- # * :country_name (String)
79
- # * :extended_address (String)
80
- # * :fulladdress (String)
81
- # * :locality (String)
82
- # * :postal_code (String)
83
- # * :post_office_box (String)
84
- # * :region (String)
85
- # * :street_address (String)
86
- # * :type (Array<Pinnacle::Types::VCardAddressSchemaTypeItem>)
87
- # @param url [String] Website URL.
88
- # @param phones [Array<Hash>] Phone numbers.Request of type Array<Pinnacle::Types::VcardPhone>, as a Hash
89
- # * :type (Array<Pinnacle::Types::VCardPhoneSchemaTypeItem>)
90
- # * :value (String)
91
- # @param emails [Array<Hash>] Email addresses.Request of type Array<Pinnacle::Types::VcardEmail>, as a Hash
92
- # * :type (Array<Pinnacle::Types::VCardEmailSchemaTypeItem>)
93
- # * :value (String)
94
- # @param timezone [String] Timezone (e.g., "America/New_York").
95
- # @param geo [Hash] Geographic coordinates.Request of type Pinnacle::Types::VCardGeo, as a Hash
96
- # * :latitude (Float)
97
- # * :longitude (Float)
98
- # @param title [String] Job title or position.
99
- # @param role [String] Role or function within the organization.
100
- # @param organization [Hash] Organization or company information.Request of type Pinnacle::Types::VCardOrganization, as a Hash
101
- # * :name (String)
102
- # * :units (Array<String>)
103
- # @param categories [Array<String>] Categories or tags for organizing contacts.
104
- # @param note [String] Additional notes or comments.
105
- # @param photo [String] Contact's photo
106
- # @param request_options [Pinnacle::RequestOptions]
107
- # @return [Pinnacle::Types::VcardResource]
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.tools.contact_card.upsert(photo: "https://fastly.picsum.photos/id/853/200/200.jpg?hmac=f4LF-tVBBnJb9PQAVEO8GCTGWgLUnxQLw44rUofE6mQ")
115
- def upsert(id: nil, formatted_name: nil, name: nil, nickname: nil, birthday: nil, addresses: nil, url: nil,
116
- phones: nil, emails: nil, timezone: nil, geo: nil, title: nil, role: nil, organization: nil, categories: nil, note: nil, photo: nil, request_options: nil)
117
- response = @request_client.conn.post do |req|
118
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
119
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
120
- req.headers = {
121
- **(req.headers || {}),
122
- **@request_client.get_headers,
123
- **(request_options&.additional_headers || {})
124
- }.compact
125
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
126
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
127
- end
128
- req.body = {
129
- **(request_options&.additional_body_parameters || {}),
130
- id: id,
131
- formattedName: formatted_name,
132
- name: name,
133
- nickname: nickname,
134
- birthday: birthday,
135
- addresses: addresses,
136
- url: url,
137
- phones: phones,
138
- emails: emails,
139
- timezone: timezone,
140
- geo: geo,
141
- title: title,
142
- role: role,
143
- organization: organization,
144
- categories: categories,
145
- note: note,
146
- photo: photo
147
- }.compact
148
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/contact-card/upsert"
149
- end
150
- Pinnacle::Types::VcardResource.from_json(json_object: response.body)
151
- end
152
- end
153
-
154
- class AsyncContactCardClient
155
- # @return [Pinnacle::AsyncRequestClient]
156
- attr_reader :request_client
157
-
158
- # @param request_client [Pinnacle::AsyncRequestClient]
159
- # @return [Pinnacle::Tools::AsyncContactCardClient]
160
- def initialize(request_client:)
161
- @request_client = request_client
162
- end
163
-
164
- # Retrieve contact information as a vCard and get a presigned URL to download the
165
- # file. Contact cards can be sent [via MMS](/api-reference/messages/send-mms) as a
166
- # media file.
167
- #
168
- # @param id [String] The unique identifier of the contact. This identifier is a string that always
169
- # begins with the prefix `cc_`, for example: `cc_1234567890`.
170
- # @param options [Hash] Request of type Pinnacle::Tools::ContactCard::Types::GetVCardSchemaOptions, as a Hash
171
- # * :expires_at (String)
172
- # @param request_options [Pinnacle::RequestOptions]
173
- # @return [Pinnacle::Types::VCardData]
174
- # @example
175
- # api = Pinnacle::Client.new(
176
- # base_url: "https://api.example.com",
177
- # environment: Pinnacle::Environment::DEFAULT,
178
- # api_key: "YOUR_API_KEY"
179
- # )
180
- # api.tools.contact_card.get(id: "cc_1234567890")
181
- def get(id:, options: nil, request_options: nil)
182
- Async do
183
- response = @request_client.conn.post do |req|
184
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
185
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
186
- req.headers = {
187
- **(req.headers || {}),
188
- **@request_client.get_headers,
189
- **(request_options&.additional_headers || {})
190
- }.compact
191
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
192
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
193
- end
194
- req.body = { **(request_options&.additional_body_parameters || {}), id: id, options: options }.compact
195
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/contact-card"
196
- end
197
- Pinnacle::Types::VCardData.from_json(json_object: response.body)
198
- end
199
- end
200
-
201
- # Create a new contact card or updates an existing one with full vCard data.
202
- # Contact cards can be sent [via MMS](/api-reference/messages/send-mms) as a media
203
- # file.
204
- #
205
- # @param id [String] The unique identifier of the contact. This identifier is a string that always
206
- # begins with the prefix `cc_`, for example: `cc_1234567890`.
207
- # @param formatted_name [String] Full display name for the vCard.
208
- # @param name [Hash] Structured name components.Request of type Pinnacle::Types::VCardName, as a Hash
209
- # * :family_name (String)
210
- # * :given_name (String)
211
- # * :additional_names (Array<String>)
212
- # * :honorific_prefixes (Array<String>)
213
- # * :honorific_suffixes (Array<String>)
214
- # @param nickname [Array<String>] Nicknames or aliases.
215
- # @param birthday [String] Birthday in ISO 8601 date format (YYYY-MM-DD).
216
- # @param addresses [Array<Hash>] Physical addresses.Request of type Array<Pinnacle::Types::VcardAddress>, as a Hash
217
- # * :country_name (String)
218
- # * :extended_address (String)
219
- # * :fulladdress (String)
220
- # * :locality (String)
221
- # * :postal_code (String)
222
- # * :post_office_box (String)
223
- # * :region (String)
224
- # * :street_address (String)
225
- # * :type (Array<Pinnacle::Types::VCardAddressSchemaTypeItem>)
226
- # @param url [String] Website URL.
227
- # @param phones [Array<Hash>] Phone numbers.Request of type Array<Pinnacle::Types::VcardPhone>, as a Hash
228
- # * :type (Array<Pinnacle::Types::VCardPhoneSchemaTypeItem>)
229
- # * :value (String)
230
- # @param emails [Array<Hash>] Email addresses.Request of type Array<Pinnacle::Types::VcardEmail>, as a Hash
231
- # * :type (Array<Pinnacle::Types::VCardEmailSchemaTypeItem>)
232
- # * :value (String)
233
- # @param timezone [String] Timezone (e.g., "America/New_York").
234
- # @param geo [Hash] Geographic coordinates.Request of type Pinnacle::Types::VCardGeo, as a Hash
235
- # * :latitude (Float)
236
- # * :longitude (Float)
237
- # @param title [String] Job title or position.
238
- # @param role [String] Role or function within the organization.
239
- # @param organization [Hash] Organization or company information.Request of type Pinnacle::Types::VCardOrganization, as a Hash
240
- # * :name (String)
241
- # * :units (Array<String>)
242
- # @param categories [Array<String>] Categories or tags for organizing contacts.
243
- # @param note [String] Additional notes or comments.
244
- # @param photo [String] Contact's photo
245
- # @param request_options [Pinnacle::RequestOptions]
246
- # @return [Pinnacle::Types::VcardResource]
247
- # @example
248
- # api = Pinnacle::Client.new(
249
- # base_url: "https://api.example.com",
250
- # environment: Pinnacle::Environment::DEFAULT,
251
- # api_key: "YOUR_API_KEY"
252
- # )
253
- # api.tools.contact_card.upsert(photo: "https://fastly.picsum.photos/id/853/200/200.jpg?hmac=f4LF-tVBBnJb9PQAVEO8GCTGWgLUnxQLw44rUofE6mQ")
254
- def upsert(id: nil, formatted_name: nil, name: nil, nickname: nil, birthday: nil, addresses: nil, url: nil,
255
- phones: nil, emails: nil, timezone: nil, geo: nil, title: nil, role: nil, organization: nil, categories: nil, note: nil, photo: nil, request_options: nil)
256
- Async do
257
- response = @request_client.conn.post do |req|
258
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
259
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
260
- req.headers = {
261
- **(req.headers || {}),
262
- **@request_client.get_headers,
263
- **(request_options&.additional_headers || {})
264
- }.compact
265
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
266
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
267
- end
268
- req.body = {
269
- **(request_options&.additional_body_parameters || {}),
270
- id: id,
271
- formattedName: formatted_name,
272
- name: name,
273
- nickname: nickname,
274
- birthday: birthday,
275
- addresses: addresses,
276
- url: url,
277
- phones: phones,
278
- emails: emails,
279
- timezone: timezone,
280
- geo: geo,
281
- title: title,
282
- role: role,
283
- organization: organization,
284
- categories: categories,
285
- note: note,
286
- photo: photo
287
- }.compact
288
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/contact-card/upsert"
289
- end
290
- Pinnacle::Types::VcardResource.from_json(json_object: response.body)
291
- end
292
- end
293
- end
294
- end
295
- end
@@ -1,67 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "ostruct"
4
- require "json"
5
-
6
- module Pinnacle
7
- module Tools
8
- module ContactCard
9
- module Types
10
- class GetVCardSchemaOptions
11
- # @return [String] Set an expiration date for your download URL in IS0 8610 format. <br>
12
- # If this field is not provided, the expiration time is defaulted to one hour
13
- # after retrieval.
14
- attr_reader :expires_at
15
- # @return [OpenStruct] Additional properties unmapped to the current class definition
16
- attr_reader :additional_properties
17
- # @return [Object]
18
- attr_reader :_field_set
19
- protected :_field_set
20
-
21
- OMIT = Object.new
22
-
23
- # @param expires_at [String] Set an expiration date for your download URL in IS0 8610 format. <br>
24
- # If this field is not provided, the expiration time is defaulted to one hour
25
- # after retrieval.
26
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
- # @return [Pinnacle::Tools::ContactCard::Types::GetVCardSchemaOptions]
28
- def initialize(expires_at: OMIT, additional_properties: nil)
29
- @expires_at = expires_at if expires_at != OMIT
30
- @additional_properties = additional_properties
31
- @_field_set = { "expiresAt": expires_at }.reject do |_k, v|
32
- v == OMIT
33
- end
34
- end
35
-
36
- # Deserialize a JSON object to an instance of GetVCardSchemaOptions
37
- #
38
- # @param json_object [String]
39
- # @return [Pinnacle::Tools::ContactCard::Types::GetVCardSchemaOptions]
40
- def self.from_json(json_object:)
41
- struct = JSON.parse(json_object, object_class: OpenStruct)
42
- parsed_json = JSON.parse(json_object)
43
- expires_at = parsed_json["expiresAt"]
44
- new(expires_at: expires_at, additional_properties: struct)
45
- end
46
-
47
- # Serialize an instance of GetVCardSchemaOptions to a JSON object
48
- #
49
- # @return [String]
50
- def to_json(*_args)
51
- @_field_set&.to_json
52
- end
53
-
54
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
55
- # hash and check each fields type against the current object's property
56
- # definitions.
57
- #
58
- # @param obj [Object]
59
- # @return [Void]
60
- def self.validate_raw(obj:)
61
- obj.expires_at&.is_a?(String) != false || raise("Passed value for field obj.expires_at is not the expected type, validation failed.")
62
- end
63
- end
64
- end
65
- end
66
- end
67
- end
@@ -1,228 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../../requests"
4
- require_relative "types/upload_file_options"
5
- require_relative "../../types/upload_results"
6
- require_relative "../../types/refreshed_file"
7
- require "json"
8
- require "async"
9
-
10
- module Pinnacle
11
- module Tools
12
- class FileClient
13
- # @return [Pinnacle::RequestClient]
14
- attr_reader :request_client
15
-
16
- # @param request_client [Pinnacle::RequestClient]
17
- # @return [Pinnacle::Tools::FileClient]
18
- def initialize(request_client:)
19
- @request_client = request_client
20
- end
21
-
22
- # Generate presigned URLs that let you upload files directly to our storage and
23
- # allow your users to download them securely.
24
- #
25
- # @param content_type [String] MIME type of your file. <br>
26
- # Supported file types:
27
- # - Audio: mp3, mp4, mpeg, ogg, aac, webm, wav, 3gpp, amr
28
- # - Video: mp4, mpeg, quicktime, webm, 3gpp, H.264, m4v
29
- # - Image: jpeg, png, gif, bmp, tiff, webp
30
- # - Documents: pdf, csv, rtf, calendar, vcard
31
- # @param size [Integer] Size of your file in bytes. Should be less than 100 MB.
32
- # @param name [String] Name of your file.
33
- # @param options [Hash] Additional configurations for your file.Request of type Pinnacle::Tools::File::Types::UploadFileOptions, as a Hash
34
- # * :delete_at (String)
35
- # * :download (Hash)
36
- # * :expires_at (String)
37
- # @param request_options [Pinnacle::RequestOptions]
38
- # @return [Pinnacle::Types::UploadResults]
39
- # @example
40
- # api = Pinnacle::Client.new(
41
- # base_url: "https://api.example.com",
42
- # environment: Pinnacle::Environment::DEFAULT,
43
- # api_key: "YOUR_API_KEY"
44
- # )
45
- # api.tools.file.upload(
46
- # content_type: "image/jpeg",
47
- # size: 1024,
48
- # name: "test.jpg",
49
- # options: { delete_at: "2025-12-31T23:59:59Z", download: { expires_at: "2025-06-30T12:00:00.000Z" } }
50
- # )
51
- def upload(content_type:, size:, name: nil, options: nil, request_options: nil)
52
- response = @request_client.conn.post do |req|
53
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
54
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
55
- req.headers = {
56
- **(req.headers || {}),
57
- **@request_client.get_headers,
58
- **(request_options&.additional_headers || {})
59
- }.compact
60
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
61
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
62
- end
63
- req.body = {
64
- **(request_options&.additional_body_parameters || {}),
65
- contentType: content_type,
66
- size: size,
67
- name: name,
68
- options: options
69
- }.compact
70
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/files/upload"
71
- end
72
- Pinnacle::Types::UploadResults.from_json(json_object: response.body)
73
- end
74
-
75
- # Refresh expiring presigned URLs for Pinnacle-hosted files to extend their access
76
- # time.
77
- # <Callout type="info">
78
- # This only works for presigned download URLs. At this moment, you cannot
79
- # refresh a presigned upload URL, generate a new one instead.
80
- # </Callout>
81
- #
82
- # @param urls [Array<String>] Array of file URLs to refresh for extended access. Provided URLs must be
83
- # presigned URLs (i.e.
84
- # `https://server.trypinnacle.app/storage/v1/object/sign/...`). Invalid or
85
- # external URLs will be returned unchanged in the response.
86
- # @param request_options [Pinnacle::RequestOptions]
87
- # @return [Array<Pinnacle::Types::RefreshedFile>]
88
- # @example
89
- # api = Pinnacle::Client.new(
90
- # base_url: "https://api.example.com",
91
- # environment: Pinnacle::Environment::DEFAULT,
92
- # api_key: "YOUR_API_KEY"
93
- # )
94
- # api.tools.file.refresh(urls: ["https://server.trypinnacle.app/storage/v1/object/sign/vault/3/test.jpg?token=oldtoken", "https://server.trypinnacle.app/storage/v1/object/sign/vault/3/document.pdf?token=oldtoken2", "invalid/url", "https://google.com"])
95
- def refresh(urls:, request_options: nil)
96
- response = @request_client.conn.post do |req|
97
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
98
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
99
- req.headers = {
100
- **(req.headers || {}),
101
- **@request_client.get_headers,
102
- **(request_options&.additional_headers || {})
103
- }.compact
104
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
105
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
106
- end
107
- req.body = { **(request_options&.additional_body_parameters || {}), urls: urls }.compact
108
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/files/refresh"
109
- end
110
- parsed_json = JSON.parse(response.body)
111
- parsed_json&.map do |item|
112
- item = item.to_json
113
- Pinnacle::Types::RefreshedFile.from_json(json_object: item)
114
- end
115
- end
116
- end
117
-
118
- class AsyncFileClient
119
- # @return [Pinnacle::AsyncRequestClient]
120
- attr_reader :request_client
121
-
122
- # @param request_client [Pinnacle::AsyncRequestClient]
123
- # @return [Pinnacle::Tools::AsyncFileClient]
124
- def initialize(request_client:)
125
- @request_client = request_client
126
- end
127
-
128
- # Generate presigned URLs that let you upload files directly to our storage and
129
- # allow your users to download them securely.
130
- #
131
- # @param content_type [String] MIME type of your file. <br>
132
- # Supported file types:
133
- # - Audio: mp3, mp4, mpeg, ogg, aac, webm, wav, 3gpp, amr
134
- # - Video: mp4, mpeg, quicktime, webm, 3gpp, H.264, m4v
135
- # - Image: jpeg, png, gif, bmp, tiff, webp
136
- # - Documents: pdf, csv, rtf, calendar, vcard
137
- # @param size [Integer] Size of your file in bytes. Should be less than 100 MB.
138
- # @param name [String] Name of your file.
139
- # @param options [Hash] Additional configurations for your file.Request of type Pinnacle::Tools::File::Types::UploadFileOptions, as a Hash
140
- # * :delete_at (String)
141
- # * :download (Hash)
142
- # * :expires_at (String)
143
- # @param request_options [Pinnacle::RequestOptions]
144
- # @return [Pinnacle::Types::UploadResults]
145
- # @example
146
- # api = Pinnacle::Client.new(
147
- # base_url: "https://api.example.com",
148
- # environment: Pinnacle::Environment::DEFAULT,
149
- # api_key: "YOUR_API_KEY"
150
- # )
151
- # api.tools.file.upload(
152
- # content_type: "image/jpeg",
153
- # size: 1024,
154
- # name: "test.jpg",
155
- # options: { delete_at: "2025-12-31T23:59:59Z", download: { expires_at: "2025-06-30T12:00:00.000Z" } }
156
- # )
157
- def upload(content_type:, size:, name: nil, options: nil, request_options: nil)
158
- Async do
159
- response = @request_client.conn.post do |req|
160
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
161
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
162
- req.headers = {
163
- **(req.headers || {}),
164
- **@request_client.get_headers,
165
- **(request_options&.additional_headers || {})
166
- }.compact
167
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
168
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
169
- end
170
- req.body = {
171
- **(request_options&.additional_body_parameters || {}),
172
- contentType: content_type,
173
- size: size,
174
- name: name,
175
- options: options
176
- }.compact
177
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/files/upload"
178
- end
179
- Pinnacle::Types::UploadResults.from_json(json_object: response.body)
180
- end
181
- end
182
-
183
- # Refresh expiring presigned URLs for Pinnacle-hosted files to extend their access
184
- # time.
185
- # <Callout type="info">
186
- # This only works for presigned download URLs. At this moment, you cannot
187
- # refresh a presigned upload URL, generate a new one instead.
188
- # </Callout>
189
- #
190
- # @param urls [Array<String>] Array of file URLs to refresh for extended access. Provided URLs must be
191
- # presigned URLs (i.e.
192
- # `https://server.trypinnacle.app/storage/v1/object/sign/...`). Invalid or
193
- # external URLs will be returned unchanged in the response.
194
- # @param request_options [Pinnacle::RequestOptions]
195
- # @return [Array<Pinnacle::Types::RefreshedFile>]
196
- # @example
197
- # api = Pinnacle::Client.new(
198
- # base_url: "https://api.example.com",
199
- # environment: Pinnacle::Environment::DEFAULT,
200
- # api_key: "YOUR_API_KEY"
201
- # )
202
- # api.tools.file.refresh(urls: ["https://server.trypinnacle.app/storage/v1/object/sign/vault/3/test.jpg?token=oldtoken", "https://server.trypinnacle.app/storage/v1/object/sign/vault/3/document.pdf?token=oldtoken2", "invalid/url", "https://google.com"])
203
- def refresh(urls:, request_options: nil)
204
- Async do
205
- response = @request_client.conn.post do |req|
206
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
207
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
208
- req.headers = {
209
- **(req.headers || {}),
210
- **@request_client.get_headers,
211
- **(request_options&.additional_headers || {})
212
- }.compact
213
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
214
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
215
- end
216
- req.body = { **(request_options&.additional_body_parameters || {}), urls: urls }.compact
217
- req.url "#{@request_client.get_url(request_options: request_options)}/tools/files/refresh"
218
- end
219
- parsed_json = JSON.parse(response.body)
220
- parsed_json&.map do |item|
221
- item = item.to_json
222
- Pinnacle::Types::RefreshedFile.from_json(json_object: item)
223
- end
224
- end
225
- end
226
- end
227
- end
228
- end
@@ -1,66 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "ostruct"
4
- require "json"
5
-
6
- module Pinnacle
7
- module Tools
8
- module File
9
- module Types
10
- # Configure download settings for your uploaded file.
11
- class DownloadOptions
12
- # @return [String] Set an expiration date for file download access.<br>
13
- # If this field is not provided, then a short permalink is generated instead.
14
- attr_reader :expires_at
15
- # @return [OpenStruct] Additional properties unmapped to the current class definition
16
- attr_reader :additional_properties
17
- # @return [Object]
18
- attr_reader :_field_set
19
- protected :_field_set
20
-
21
- OMIT = Object.new
22
-
23
- # @param expires_at [String] Set an expiration date for file download access.<br>
24
- # If this field is not provided, then a short permalink is generated instead.
25
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
- # @return [Pinnacle::Tools::File::Types::DownloadOptions]
27
- def initialize(expires_at: OMIT, additional_properties: nil)
28
- @expires_at = expires_at if expires_at != OMIT
29
- @additional_properties = additional_properties
30
- @_field_set = { "expiresAt": expires_at }.reject do |_k, v|
31
- v == OMIT
32
- end
33
- end
34
-
35
- # Deserialize a JSON object to an instance of DownloadOptions
36
- #
37
- # @param json_object [String]
38
- # @return [Pinnacle::Tools::File::Types::DownloadOptions]
39
- def self.from_json(json_object:)
40
- struct = JSON.parse(json_object, object_class: OpenStruct)
41
- parsed_json = JSON.parse(json_object)
42
- expires_at = parsed_json["expiresAt"]
43
- new(expires_at: expires_at, additional_properties: struct)
44
- end
45
-
46
- # Serialize an instance of DownloadOptions to a JSON object
47
- #
48
- # @return [String]
49
- def to_json(*_args)
50
- @_field_set&.to_json
51
- end
52
-
53
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
54
- # hash and check each fields type against the current object's property
55
- # definitions.
56
- #
57
- # @param obj [Object]
58
- # @return [Void]
59
- def self.validate_raw(obj:)
60
- obj.expires_at&.is_a?(String) != false || raise("Passed value for field obj.expires_at is not the expected type, validation failed.")
61
- end
62
- end
63
- end
64
- end
65
- end
66
- end