rcs 2.0.5 → 2.0.7

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 (819) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +12 -0
  3. data/.fernignore +7 -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/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 +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 +450 -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 -456
  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 -177
  460. data/lib/rcs/audiences/types/audiences_get_response.rb +0 -58
  461. data/lib/rcs/brands/client.rb +0 -605
  462. data/lib/rcs/brands/types/autofill_brand_options.rb +0 -61
  463. data/lib/rcs/brands/types/upsert_brand_schema_contact.rb +0 -86
  464. data/lib/rcs/brands/types/upsert_brand_schema_entity_type.rb +0 -16
  465. data/lib/rcs/brands/types/upsert_brand_schema_sector.rb +0 -28
  466. data/lib/rcs/brands/types/upsert_brand_schema_type.rb +0 -16
  467. data/lib/rcs/campaigns/client.rb +0 -44
  468. data/lib/rcs/campaigns/dlc/client.rb +0 -492
  469. data/lib/rcs/campaigns/dlc/types/dlc_campaign_help_keywords.rb +0 -74
  470. data/lib/rcs/campaigns/dlc/types/dlc_campaign_keywords.rb +0 -99
  471. data/lib/rcs/campaigns/dlc/types/dlc_campaign_links.rb +0 -74
  472. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_in_keywords.rb +0 -74
  473. data/lib/rcs/campaigns/dlc/types/dlc_campaign_opt_out_keywords.rb +0 -74
  474. data/lib/rcs/campaigns/dlc/types/dlc_campaign_options.rb +0 -110
  475. data/lib/rcs/campaigns/dlc/types/dlc_campaign_use_case.rb +0 -76
  476. data/lib/rcs/campaigns/rcs/client.rb +0 -566
  477. data/lib/rcs/campaigns/rcs/types/rcs_agent.rb +0 -152
  478. data/lib/rcs/campaigns/rcs/types/rcs_agent_email.rb +0 -73
  479. data/lib/rcs/campaigns/rcs/types/rcs_agent_phone.rb +0 -73
  480. data/lib/rcs/campaigns/rcs/types/rcs_agent_website.rb +0 -73
  481. data/lib/rcs/campaigns/rcs/types/rcs_autofill_response.rb +0 -246
  482. data/lib/rcs/campaigns/rcs/types/rcs_campaign_help_keywords.rb +0 -77
  483. data/lib/rcs/campaigns/rcs/types/rcs_campaign_keywords.rb +0 -98
  484. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_in_keywords.rb +0 -87
  485. data/lib/rcs/campaigns/rcs/types/rcs_campaign_opt_out_keywords.rb +0 -83
  486. data/lib/rcs/campaigns/rcs/types/rcs_campaign_traffic.rb +0 -76
  487. data/lib/rcs/campaigns/rcs/types/rcs_links.rb +0 -74
  488. data/lib/rcs/campaigns/rcs/types/rcs_use_case.rb +0 -75
  489. data/lib/rcs/campaigns/toll_free/client.rb +0 -478
  490. data/lib/rcs/campaigns/toll_free/types/toll_free_autofill_response.rb +0 -172
  491. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_help_keywords.rb +0 -66
  492. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_keywords.rb +0 -86
  493. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_links.rb +0 -74
  494. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in.rb +0 -86
  495. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_opt_in_keywords.rb +0 -78
  496. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_options.rb +0 -64
  497. data/lib/rcs/campaigns/toll_free/types/toll_free_campaign_use_case.rb +0 -75
  498. data/lib/rcs/contacts/client.rb +0 -277
  499. data/lib/rcs/conversations/client.rb +0 -401
  500. data/lib/rcs/conversations/types/conversations_list_messages_request_direction.rb +0 -12
  501. data/lib/rcs/conversations/types/conversations_list_messages_request_sort_order.rb +0 -12
  502. data/lib/rcs/conversations/types/conversations_list_messages_request_status.rb +0 -17
  503. data/lib/rcs/conversations/types/conversations_list_messages_request_type.rb +0 -13
  504. data/lib/rcs/messages/blast/client.rb +0 -425
  505. data/lib/rcs/messages/blast/types/blast_mms_options.rb +0 -82
  506. data/lib/rcs/messages/blast/types/blast_mms_response.rb +0 -60
  507. data/lib/rcs/messages/blast/types/blast_rcs_options.rb +0 -118
  508. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card.rb +0 -82
  509. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_image_alignment.rb +0 -16
  510. data/lib/rcs/messages/blast/types/blast_rcs_request_options_standalone_card_orientation.rb +0 -15
  511. data/lib/rcs/messages/blast/types/blast_rcs_response.rb +0 -60
  512. data/lib/rcs/messages/blast/types/blast_sms_options.rb +0 -70
  513. data/lib/rcs/messages/blast/types/blast_sms_response.rb +0 -60
  514. data/lib/rcs/messages/client.rb +0 -189
  515. data/lib/rcs/messages/mms/client.rb +0 -216
  516. data/lib/rcs/messages/mms/types/mms_send_response.rb +0 -60
  517. data/lib/rcs/messages/mms/types/send_mms_options.rb +0 -108
  518. data/lib/rcs/messages/rcs/client.rb +0 -286
  519. data/lib/rcs/messages/rcs/types/send_rich_message_response.rb +0 -60
  520. data/lib/rcs/messages/rcs/types/send_typing_indicator_schema_options.rb +0 -66
  521. data/lib/rcs/messages/schedule/client.rb +0 -103
  522. data/lib/rcs/messages/sms/client.rb +0 -198
  523. data/lib/rcs/messages/sms/types/send_sms_options.rb +0 -81
  524. data/lib/rcs/messages/sms/types/sms_send_response.rb +0 -60
  525. data/lib/rcs/messages/types/react_message_options.rb +0 -71
  526. data/lib/rcs/phone_numbers/campaign/client.rb +0 -197
  527. data/lib/rcs/phone_numbers/client.rb +0 -345
  528. data/lib/rcs/phone_numbers/types/enhanced_contact_info.rb +0 -62
  529. data/lib/rcs/phone_numbers/types/phone_details_schema_level.rb +0 -16
  530. data/lib/rcs/phone_numbers/types/phone_numbers_get_response.rb +0 -58
  531. data/lib/rcs/phone_numbers/types/retrieve_phone_number_details_options.rb +0 -93
  532. data/lib/rcs/phone_numbers/types/search_phone_number_by_digits.rb +0 -81
  533. data/lib/rcs/phone_numbers/types/search_phone_number_by_location.rb +0 -96
  534. data/lib/rcs/phone_numbers/types/search_phone_number_options.rb +0 -62
  535. data/lib/rcs/phone_numbers/webhook/client.rb +0 -193
  536. data/lib/rcs/rcs/client.rb +0 -332
  537. data/lib/rcs/status/client.rb +0 -30
  538. data/lib/rcs/status/get/client.rb +0 -383
  539. data/lib/rcs/tools/client.rb +0 -44
  540. data/lib/rcs/tools/contact_card/client.rb +0 -295
  541. data/lib/rcs/tools/contact_card/types/get_v_card_schema_options.rb +0 -67
  542. data/lib/rcs/tools/file/client.rb +0 -228
  543. data/lib/rcs/tools/file/types/download_options.rb +0 -66
  544. data/lib/rcs/tools/file/types/upload_file_options.rb +0 -88
  545. data/lib/rcs/tools/url/client.rb +0 -247
  546. data/lib/rcs/types/advanced_phone_information.rb +0 -147
  547. data/lib/rcs/types/advanced_phone_information_carrier.rb +0 -90
  548. data/lib/rcs/types/advanced_phone_information_contact.rb +0 -146
  549. data/lib/rcs/types/advanced_phone_information_location.rb +0 -142
  550. data/lib/rcs/types/advanced_phone_information_location_coordinates.rb +0 -73
  551. data/lib/rcs/types/advanced_phone_information_location_country.rb +0 -77
  552. data/lib/rcs/types/advanced_phone_information_type.rb +0 -97
  553. data/lib/rcs/types/advanced_phone_information_type_recommendation.rb +0 -15
  554. data/lib/rcs/types/agent.rb +0 -68
  555. data/lib/rcs/types/attach_webhook_by_id_params.rb +0 -77
  556. data/lib/rcs/types/attach_webhook_params.rb +0 -60
  557. data/lib/rcs/types/attach_webhook_response_webhook.rb +0 -88
  558. data/lib/rcs/types/attached_phone_number_result.rb +0 -75
  559. data/lib/rcs/types/audience_count_only.rb +0 -87
  560. data/lib/rcs/types/audience_with_pagination.rb +0 -114
  561. data/lib/rcs/types/autofill_campaign_params.rb +0 -81
  562. data/lib/rcs/types/autofill_dlc_campaign_response.rb +0 -173
  563. data/lib/rcs/types/autofill_dlc_response_keywords.rb +0 -93
  564. data/lib/rcs/types/autofill_dlc_response_keywords_help.rb +0 -70
  565. data/lib/rcs/types/autofill_dlc_response_keywords_opt_in.rb +0 -70
  566. data/lib/rcs/types/autofill_dlc_response_keywords_opt_out.rb +0 -70
  567. data/lib/rcs/types/autofill_dlc_response_links.rb +0 -70
  568. data/lib/rcs/types/autofill_dlc_response_options.rb +0 -106
  569. data/lib/rcs/types/autofill_dlc_response_use_case.rb +0 -72
  570. data/lib/rcs/types/bad_request_error_body.rb +0 -56
  571. data/lib/rcs/types/base_rich_message.rb +0 -82
  572. data/lib/rcs/types/basic_phone_information.rb +0 -127
  573. data/lib/rcs/types/basic_phone_information_contact.rb +0 -58
  574. data/lib/rcs/types/basic_phone_information_location.rb +0 -74
  575. data/lib/rcs/types/basic_phone_information_location_country.rb +0 -75
  576. data/lib/rcs/types/blast_details.rb +0 -110
  577. data/lib/rcs/types/brand_status.rb +0 -94
  578. data/lib/rcs/types/brand_status_enum.rb +0 -21
  579. data/lib/rcs/types/button_clicked.rb +0 -56
  580. data/lib/rcs/types/button_clicked_data.rb +0 -80
  581. data/lib/rcs/types/button_clicked_data_button.rb +0 -118
  582. data/lib/rcs/types/button_clicked_data_button_raw.rb +0 -58
  583. data/lib/rcs/types/button_clicked_data_button_type.rb +0 -15
  584. data/lib/rcs/types/buy_response_capabilities.rb +0 -77
  585. data/lib/rcs/types/campaign_enum.rb +0 -15
  586. data/lib/rcs/types/campaign_query.rb +0 -77
  587. data/lib/rcs/types/campaign_submission_result.rb +0 -57
  588. data/lib/rcs/types/campaign_validation_response_errors_item.rb +0 -76
  589. data/lib/rcs/types/campaign_validation_result.rb +0 -71
  590. data/lib/rcs/types/company_entity_type_enum.rb +0 -14
  591. data/lib/rcs/types/company_sector_enum.rb +0 -26
  592. data/lib/rcs/types/company_type_enum.rb +0 -14
  593. data/lib/rcs/types/configured_webhook.rb +0 -85
  594. data/lib/rcs/types/contact.rb +0 -107
  595. data/lib/rcs/types/contact_id.rb +0 -59
  596. data/lib/rcs/types/conversation.rb +0 -154
  597. data/lib/rcs/types/conversation_by_id_params.rb +0 -62
  598. data/lib/rcs/types/conversation_by_participants_params.rb +0 -72
  599. data/lib/rcs/types/conversation_contact.rb +0 -70
  600. data/lib/rcs/types/conversation_list.rb +0 -79
  601. data/lib/rcs/types/conversation_sender.rb +0 -60
  602. data/lib/rcs/types/create_and_attach_webhook_by_url_params.rb +0 -88
  603. data/lib/rcs/types/create_url_options.rb +0 -63
  604. data/lib/rcs/types/delete_audience_response.rb +0 -57
  605. data/lib/rcs/types/detached_phone_number_result.rb +0 -75
  606. data/lib/rcs/types/detached_webhook_info.rb +0 -76
  607. data/lib/rcs/types/detailed_phone_number_enum.rb +0 -25
  608. data/lib/rcs/types/dlc_assignment_status_enum.rb +0 -19
  609. data/lib/rcs/types/dlc_campaign_status.rb +0 -109
  610. data/lib/rcs/types/dlc_campaign_use_case_enum.rb +0 -35
  611. data/lib/rcs/types/dlc_campaign_with_extended_brand_and_status.rb +0 -224
  612. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords.rb +0 -94
  613. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_help.rb +0 -72
  614. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_in.rb +0 -72
  615. data/lib/rcs/types/dlc_with_extended_brand_and_status_keywords_opt_out.rb +0 -72
  616. data/lib/rcs/types/dlc_with_extended_brand_and_status_links.rb +0 -70
  617. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_brand_tier.rb +0 -15
  618. data/lib/rcs/types/dlc_with_extended_brand_and_status_mno_tcr_tier.rb +0 -22
  619. data/lib/rcs/types/dlc_with_extended_brand_and_status_options.rb +0 -106
  620. data/lib/rcs/types/dlc_with_extended_brand_and_status_use_case.rb +0 -72
  621. data/lib/rcs/types/enhanced_contact.rb +0 -9
  622. data/lib/rcs/types/enhanced_contact_item.rb +0 -104
  623. data/lib/rcs/types/error.rb +0 -61
  624. data/lib/rcs/types/extended_brand.rb +0 -215
  625. data/lib/rcs/types/extended_brand_with_vetting.rb +0 -247
  626. data/lib/rcs/types/extended_rcs_campaign.rb +0 -267
  627. data/lib/rcs/types/get_conversation_params.rb +0 -57
  628. data/lib/rcs/types/get_dlc_campaign_status_response_updates.rb +0 -96
  629. data/lib/rcs/types/get_toll_free_campaign_status_response_updates.rb +0 -92
  630. data/lib/rcs/types/link_click_event.rb +0 -449
  631. data/lib/rcs/types/location_share_action.rb +0 -63
  632. data/lib/rcs/types/location_share_action_data.rb +0 -89
  633. data/lib/rcs/types/message.rb +0 -176
  634. data/lib/rcs/types/message_content.rb +0 -85
  635. data/lib/rcs/types/message_event.rb +0 -143
  636. data/lib/rcs/types/message_event_content.rb +0 -127
  637. data/lib/rcs/types/message_event_conversation.rb +0 -82
  638. data/lib/rcs/types/message_event_direction.rb +0 -11
  639. data/lib/rcs/types/message_event_mms_content.rb +0 -94
  640. data/lib/rcs/types/message_event_rcs_button_data.rb +0 -104
  641. data/lib/rcs/types/message_event_rcs_cards_content.rb +0 -103
  642. data/lib/rcs/types/message_event_rcs_cards_content_cards_item.rb +0 -96
  643. data/lib/rcs/types/message_event_rcs_location_data.rb +0 -91
  644. data/lib/rcs/types/message_event_rcs_media_content.rb +0 -96
  645. data/lib/rcs/types/message_event_rcs_text_content.rb +0 -94
  646. data/lib/rcs/types/message_event_sms_content.rb +0 -81
  647. data/lib/rcs/types/message_list.rb +0 -79
  648. data/lib/rcs/types/message_method_enum.rb +0 -12
  649. data/lib/rcs/types/message_protocol_enum.rb +0 -12
  650. data/lib/rcs/types/message_schedule.rb +0 -121
  651. data/lib/rcs/types/message_status_enum.rb +0 -17
  652. data/lib/rcs/types/message_volume_enum.rb +0 -20
  653. data/lib/rcs/types/message_with_reaction.rb +0 -197
  654. data/lib/rcs/types/message_with_reaction_direction.rb +0 -11
  655. data/lib/rcs/types/messaging_profile_enum.rb +0 -11
  656. data/lib/rcs/types/mms_content.rb +0 -74
  657. data/lib/rcs/types/mms_validation_response_segments.rb +0 -85
  658. data/lib/rcs/types/mms_validation_response_segments_value_item.rb +0 -75
  659. data/lib/rcs/types/mms_validation_result.rb +0 -82
  660. data/lib/rcs/types/not_found_error_body.rb +0 -59
  661. data/lib/rcs/types/number_format.rb +0 -79
  662. data/lib/rcs/types/opt_in_method_enum.rb +0 -13
  663. data/lib/rcs/types/optional_brand_info.rb +0 -154
  664. data/lib/rcs/types/optional_contact.rb +0 -83
  665. data/lib/rcs/types/optional_contacts.rb +0 -84
  666. data/lib/rcs/types/pagination.rb +0 -81
  667. data/lib/rcs/types/phone.rb +0 -101
  668. data/lib/rcs/types/phone_capabilities.rb +0 -75
  669. data/lib/rcs/types/phone_enum.rb +0 -13
  670. data/lib/rcs/types/phone_feature_enum.rb +0 -18
  671. data/lib/rcs/types/phone_number_campaign_attach_failed_item.rb +0 -67
  672. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item.rb +0 -75
  673. data/lib/rcs/types/phone_number_campaign_attach_phone_numbers_item_campaign.rb +0 -82
  674. data/lib/rcs/types/phone_number_campaign_detach_failed_item.rb +0 -67
  675. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item.rb +0 -75
  676. data/lib/rcs/types/phone_number_campaign_detach_phone_numbers_item_campaign.rb +0 -82
  677. data/lib/rcs/types/phone_number_cost.rb +0 -75
  678. data/lib/rcs/types/phone_number_details.rb +0 -110
  679. data/lib/rcs/types/phone_number_enum.rb +0 -18
  680. data/lib/rcs/types/phone_number_region.rb +0 -91
  681. data/lib/rcs/types/phone_number_status.rb +0 -90
  682. data/lib/rcs/types/phone_number_status_enum.rb +0 -16
  683. data/lib/rcs/types/pinnacle_file_upload_metadata.rb +0 -100
  684. data/lib/rcs/types/pinnacle_url_config.rb +0 -71
  685. data/lib/rcs/types/profile_status_enum.rb +0 -17
  686. data/lib/rcs/types/purchased_number.rb +0 -75
  687. data/lib/rcs/types/rcs_button_call.rb +0 -77
  688. data/lib/rcs/types/rcs_button_open_url.rb +0 -104
  689. data/lib/rcs/types/rcs_button_open_url_webview_mode.rb +0 -19
  690. data/lib/rcs/types/rcs_button_request_user_location.rb +0 -70
  691. data/lib/rcs/types/rcs_button_schedule_event.rb +0 -106
  692. data/lib/rcs/types/rcs_button_send_location.rb +0 -94
  693. data/lib/rcs/types/rcs_button_send_location_lat_long.rb +0 -68
  694. data/lib/rcs/types/rcs_button_trigger.rb +0 -80
  695. data/lib/rcs/types/rcs_campaign.rb +0 -234
  696. data/lib/rcs/types/rcs_campaign_schema_agent.rb +0 -134
  697. data/lib/rcs/types/rcs_campaign_schema_agent_emails_item.rb +0 -69
  698. data/lib/rcs/types/rcs_campaign_schema_agent_phones_item.rb +0 -69
  699. data/lib/rcs/types/rcs_campaign_schema_agent_websites_item.rb +0 -69
  700. data/lib/rcs/types/rcs_campaign_schema_extra_agent.rb +0 -134
  701. data/lib/rcs/types/rcs_campaign_schema_extra_agent_emails_item.rb +0 -70
  702. data/lib/rcs/types/rcs_campaign_schema_extra_agent_phones_item.rb +0 -70
  703. data/lib/rcs/types/rcs_campaign_schema_extra_agent_websites_item.rb +0 -71
  704. data/lib/rcs/types/rcs_campaign_schema_extra_keywords.rb +0 -94
  705. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_help.rb +0 -71
  706. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_in.rb +0 -73
  707. data/lib/rcs/types/rcs_campaign_schema_extra_keywords_opt_out.rb +0 -73
  708. data/lib/rcs/types/rcs_campaign_schema_extra_links.rb +0 -70
  709. data/lib/rcs/types/rcs_campaign_schema_extra_traffic.rb +0 -72
  710. data/lib/rcs/types/rcs_campaign_schema_extra_use_case.rb +0 -71
  711. data/lib/rcs/types/rcs_campaign_schema_keywords.rb +0 -94
  712. data/lib/rcs/types/rcs_campaign_schema_keywords_help.rb +0 -71
  713. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_in.rb +0 -73
  714. data/lib/rcs/types/rcs_campaign_schema_keywords_opt_out.rb +0 -73
  715. data/lib/rcs/types/rcs_campaign_schema_links.rb +0 -70
  716. data/lib/rcs/types/rcs_campaign_schema_traffic.rb +0 -72
  717. data/lib/rcs/types/rcs_campaign_schema_use_case.rb +0 -71
  718. data/lib/rcs/types/rcs_campaign_status.rb +0 -88
  719. data/lib/rcs/types/rcs_campaign_use_case_enum.rb +0 -23
  720. data/lib/rcs/types/rcs_capabilities_result.rb +0 -7
  721. data/lib/rcs/types/rcs_capability.rb +0 -82
  722. data/lib/rcs/types/rcs_capability_actions.rb +0 -105
  723. data/lib/rcs/types/rcs_capability_cards.rb +0 -67
  724. data/lib/rcs/types/rcs_cards_content.rb +0 -83
  725. data/lib/rcs/types/rcs_cards_content_cards_item.rb +0 -98
  726. data/lib/rcs/types/rcs_content.rb +0 -72
  727. data/lib/rcs/types/rcs_link_result.rb +0 -75
  728. data/lib/rcs/types/rcs_media_content.rb +0 -83
  729. data/lib/rcs/types/rcs_media_details_content.rb +0 -77
  730. data/lib/rcs/types/rcs_messaging_type_enum.rb +0 -17
  731. data/lib/rcs/types/rcs_validate_content.rb +0 -70
  732. data/lib/rcs/types/rcs_validate_content_media.rb +0 -75
  733. data/lib/rcs/types/rcs_validation_result.rb +0 -83
  734. data/lib/rcs/types/rcs_whitelist_response.rb +0 -58
  735. data/lib/rcs/types/reaction_result.rb +0 -71
  736. data/lib/rcs/types/refreshed_file.rb +0 -67
  737. data/lib/rcs/types/rich_button.rb +0 -148
  738. data/lib/rcs/types/rich_card.rb +0 -92
  739. data/lib/rcs/types/rich_cards.rb +0 -83
  740. data/lib/rcs/types/rich_cards_message.rb +0 -114
  741. data/lib/rcs/types/rich_media_message.rb +0 -112
  742. data/lib/rcs/types/rich_message.rb +0 -70
  743. data/lib/rcs/types/rich_standalone_card_options.rb +0 -80
  744. data/lib/rcs/types/rich_text.rb +0 -74
  745. data/lib/rcs/types/rich_text_message.rb +0 -108
  746. data/lib/rcs/types/schedule_cancel_result.rb +0 -58
  747. data/lib/rcs/types/scheduled_blast_details.rb +0 -76
  748. data/lib/rcs/types/scheduled_blast_response_config.rb +0 -89
  749. data/lib/rcs/types/scheduled_message.rb +0 -75
  750. data/lib/rcs/types/scheduled_send_response_config.rb +0 -89
  751. data/lib/rcs/types/send_rcs_card_options_standalone_card_image_alignment.rb +0 -12
  752. data/lib/rcs/types/send_rcs_card_options_standalone_card_orientation.rb +0 -11
  753. data/lib/rcs/types/send_rich_cards_options.rb +0 -136
  754. data/lib/rcs/types/send_rich_message_options.rb +0 -111
  755. data/lib/rcs/types/send_sms_response_segments.rb +0 -69
  756. data/lib/rcs/types/send_sms_response_segments_encoding.rb +0 -11
  757. data/lib/rcs/types/send_typing_indicator_response.rb +0 -100
  758. data/lib/rcs/types/sent_mms_details.rb +0 -118
  759. data/lib/rcs/types/sent_rich_message.rb +0 -104
  760. data/lib/rcs/types/sent_sms_details.rb +0 -110
  761. data/lib/rcs/types/shortened_url.rb +0 -77
  762. data/lib/rcs/types/shortened_url_with_click_data.rb +0 -90
  763. data/lib/rcs/types/sms_content.rb +0 -58
  764. data/lib/rcs/types/sms_validation_response_segments.rb +0 -80
  765. data/lib/rcs/types/sms_validation_response_segments_gsm_7.rb +0 -75
  766. data/lib/rcs/types/sms_validation_response_segments_utf_16.rb +0 -68
  767. data/lib/rcs/types/sms_validation_response_total.rb +0 -75
  768. data/lib/rcs/types/sms_validation_result.rb +0 -102
  769. data/lib/rcs/types/sub_use_case_enum.rb +0 -19
  770. data/lib/rcs/types/submission_results.rb +0 -57
  771. data/lib/rcs/types/successful_conversation_update.rb +0 -58
  772. data/lib/rcs/types/toll_free_campaign.rb +0 -160
  773. data/lib/rcs/types/toll_free_campaign_schema_keywords.rb +0 -82
  774. data/lib/rcs/types/toll_free_campaign_schema_keywords_help.rb +0 -62
  775. data/lib/rcs/types/toll_free_campaign_schema_keywords_opt_in.rb +0 -74
  776. data/lib/rcs/types/toll_free_campaign_schema_links.rb +0 -70
  777. data/lib/rcs/types/toll_free_campaign_schema_opt_in.rb +0 -78
  778. data/lib/rcs/types/toll_free_campaign_schema_options.rb +0 -60
  779. data/lib/rcs/types/toll_free_campaign_schema_use_case.rb +0 -71
  780. data/lib/rcs/types/toll_free_campaign_status.rb +0 -93
  781. data/lib/rcs/types/toll_free_campaign_use_case_enum.rb +0 -52
  782. data/lib/rcs/types/toll_free_campaign_with_extended_brand_and_status.rb +0 -195
  783. data/lib/rcs/types/toll_free_status_enum.rb +0 -20
  784. data/lib/rcs/types/tracking.rb +0 -17
  785. data/lib/rcs/types/updated_contact_id.rb +0 -59
  786. data/lib/rcs/types/upload_results.rb +0 -80
  787. data/lib/rcs/types/user_event.rb +0 -83
  788. data/lib/rcs/types/user_event_conversation.rb +0 -78
  789. data/lib/rcs/types/v_card_address_schema_type_item.rb +0 -15
  790. data/lib/rcs/types/v_card_data.rb +0 -239
  791. data/lib/rcs/types/v_card_data_file.rb +0 -74
  792. data/lib/rcs/types/v_card_data_file_metadata.rb +0 -62
  793. data/lib/rcs/types/v_card_email_schema_type_item.rb +0 -21
  794. data/lib/rcs/types/v_card_geo.rb +0 -70
  795. data/lib/rcs/types/v_card_name.rb +0 -98
  796. data/lib/rcs/types/v_card_organization.rb +0 -70
  797. data/lib/rcs/types/v_card_phone_schema_type_item.rb +0 -21
  798. data/lib/rcs/types/validate_campaign_params.rb +0 -81
  799. data/lib/rcs/types/validation_error_details.rb +0 -76
  800. data/lib/rcs/types/validation_results.rb +0 -71
  801. data/lib/rcs/types/vcard.rb +0 -217
  802. data/lib/rcs/types/vcard_address.rb +0 -130
  803. data/lib/rcs/types/vcard_content.rb +0 -225
  804. data/lib/rcs/types/vcard_email.rb +0 -70
  805. data/lib/rcs/types/vcard_phone.rb +0 -70
  806. data/lib/rcs/types/vcard_resource.rb +0 -73
  807. data/lib/rcs/types/vetting_feedback.rb +0 -81
  808. data/lib/rcs/types/vetting_history.rb +0 -98
  809. data/lib/rcs/types/vetting_history_vetting_status.rb +0 -13
  810. data/lib/rcs/types/vetting_results.rb +0 -57
  811. data/lib/rcs/types/webhook_event_enum.rb +0 -14
  812. data/lib/rcs/types/webhook_result.rb +0 -64
  813. data/lib/rcs/types/webhooks.rb +0 -77
  814. data/lib/rcs/types/zod_error.rb +0 -73
  815. data/lib/rcs/webhooks/client.rb +0 -97
  816. data/lib/rcs.rb +0 -124
  817. data/lib/requests.rb +0 -163
  818. data/lib/types_export.rb +0 -334
  819. /data/lib/{environment.rb → pinnacle/environment.rb} +0 -0
@@ -1,478 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../../requests"
4
- require_relative "../../types/autofill_campaign_params"
5
- require_relative "types/toll_free_autofill_response"
6
- require_relative "../../types/toll_free_campaign_with_extended_brand_and_status"
7
- require_relative "../../types/campaign_submission_result"
8
- require_relative "types/toll_free_campaign_keywords"
9
- require_relative "types/toll_free_campaign_links"
10
- require_relative "../../types/message_volume_enum"
11
- require_relative "types/toll_free_campaign_opt_in"
12
- require_relative "types/toll_free_campaign_options"
13
- require_relative "types/toll_free_campaign_use_case"
14
- require_relative "../../types/validate_campaign_params"
15
- require_relative "../../types/campaign_validation_result"
16
- require "async"
17
-
18
- module Pinnacle
19
- module Campaigns
20
- class TollFreeClient
21
- # @return [Pinnacle::RequestClient]
22
- attr_reader :request_client
23
-
24
- # @param request_client [Pinnacle::RequestClient]
25
- # @return [Pinnacle::Campaigns::TollFreeClient]
26
- def initialize(request_client:)
27
- @request_client = request_client
28
- end
29
-
30
- # Generate campaign details based off existing campaign and the brand it's
31
- # connected to.
32
- #
33
- # @param request [Hash] Request of type Pinnacle::Types::AutofillCampaignParams, as a Hash
34
- # * :additional_info (String)
35
- # * :campaign_id (String)
36
- # @param request_options [Pinnacle::RequestOptions]
37
- # @return [Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse]
38
- # @example
39
- # api = Pinnacle::Client.new(
40
- # base_url: "https://api.example.com",
41
- # environment: Pinnacle::Environment::DEFAULT,
42
- # api_key: "YOUR_API_KEY"
43
- # )
44
- # api.campaigns.toll_free.autofill(request: { additional_info: "Please autofill missing campaign fields using my brand profile", campaign_id: "dlc_1234567890" })
45
- def autofill(request:, request_options: nil)
46
- response = @request_client.conn.post do |req|
47
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
48
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
49
- req.headers = {
50
- **(req.headers || {}),
51
- **@request_client.get_headers,
52
- **(request_options&.additional_headers || {})
53
- }.compact
54
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
55
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
56
- end
57
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
58
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/autofill"
59
- end
60
- Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse.from_json(json_object: response.body)
61
- end
62
-
63
- # Retrieve Toll-Free campaign.
64
- #
65
- # @param campaign_id [String] Unique identifier of toll-free campaign. Must begin with the prefix `tf_`.
66
- # @param request_options [Pinnacle::RequestOptions]
67
- # @return [Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus]
68
- # @example
69
- # api = Pinnacle::Client.new(
70
- # base_url: "https://api.example.com",
71
- # environment: Pinnacle::Environment::DEFAULT,
72
- # api_key: "YOUR_API_KEY"
73
- # )
74
- # api.campaigns.toll_free.get(campaign_id: "tf_1234567890")
75
- def get(campaign_id:, request_options: nil)
76
- response = @request_client.conn.get do |req|
77
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
78
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
79
- req.headers = {
80
- **(req.headers || {}),
81
- **@request_client.get_headers,
82
- **(request_options&.additional_headers || {})
83
- }.compact
84
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
85
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
86
- end
87
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
88
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
89
- end
90
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/#{campaign_id}"
91
- end
92
- Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
93
- end
94
-
95
- # Submit your toll-free campaign for approval and activation with carriers.
96
- #
97
- # @param campaign_id [String] Unique identifier of the toll-free campaign to submit. Must begin with the
98
- # prefix `tf_`.
99
- # @param request_options [Pinnacle::RequestOptions]
100
- # @return [Pinnacle::Types::CampaignSubmissionResult]
101
- # @example
102
- # api = Pinnacle::Client.new(
103
- # base_url: "https://api.example.com",
104
- # environment: Pinnacle::Environment::DEFAULT,
105
- # api_key: "YOUR_API_KEY"
106
- # )
107
- # api.campaigns.toll_free.submit(campaign_id: "tf_1234567890")
108
- def submit(campaign_id:, request_options: nil)
109
- response = @request_client.conn.post do |req|
110
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
111
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
112
- req.headers = {
113
- **(req.headers || {}),
114
- **@request_client.get_headers,
115
- **(request_options&.additional_headers || {})
116
- }.compact
117
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
118
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
119
- end
120
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
121
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
122
- end
123
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/submit/#{campaign_id}"
124
- end
125
- Pinnacle::Types::CampaignSubmissionResult.from_json(json_object: response.body)
126
- end
127
-
128
- # Create a new toll-free campaign or updates an existing one.<br>
129
- # Omit campaignId to create a campaign.
130
- #
131
- # @param brand [String] Brand id. This identifier is a string that always begins with the prefix `b_`,
132
- # for example: `b_1234567890`.
133
- # @param campaign_id [String] Unique identifier for the campaign. This identifier is a string that always
134
- # begins with the prefix `tf_`, for example: `tf_1234567890`.
135
- # @param keywords [Hash] Keyword response configuration.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignKeywords, as a Hash
136
- # * :help (Hash)
137
- # * :message (String)
138
- # * :opt_in (Hash)
139
- # * :message (String)
140
- # * :keywords (Array<String>)
141
- # @param links [Hash] Legal documentation links.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignLinks, as a Hash
142
- # * :privacy_policy (String)
143
- # * :terms_of_service (String)
144
- # @param monthly_volume [Pinnacle::Types::MessageVolumeEnum]
145
- # @param name [String] Display name of the campaign.
146
- # @param opt_in [Hash] Opt-in keyword settings.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignOptIn, as a Hash
147
- # * :method_ (Pinnacle::Types::OptInMethodEnum)
148
- # * :url (String)
149
- # * :workflow_description (String)
150
- # @param options [Hash] Campaign configuration options.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignOptions, as a Hash
151
- # * :age_gated (Boolean)
152
- # @param production_message_content [String] Explain message that would be sent.
153
- # @param use_case [Hash] Use case classification for the campaign.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignUseCase, as a Hash
154
- # * :summary (String)
155
- # * :value (Pinnacle::Types::TollFreeCampaignUseCaseEnum)
156
- # @param request_options [Pinnacle::RequestOptions]
157
- # @return [Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus]
158
- # @example
159
- # api = Pinnacle::Client.new(
160
- # base_url: "https://api.example.com",
161
- # environment: Pinnacle::Environment::DEFAULT,
162
- # api_key: "YOUR_API_KEY"
163
- # )
164
- # api.campaigns.toll_free.upsert(
165
- # brand: "b_1234567890",
166
- # campaign_id: "tf_1234567890",
167
- # keywords: { help: { message: "Email founders@trypinnacle.app for support." }, opt_in: { message: "Welcome back to Pinnacle!<br>
168
- # 🔔 You're now subscribed to Pinnacle and will continue receiving important updates and news. Feel free to contact this us at any time for help.<br>
169
- # Reply STOP to opt out and HELP for support. Message & rates may apply.
170
- # ", keywords: ["START", "SUBSCRIBE"] } },
171
- # links: { privacy_policy: "https://www.pinnacle.sh/privacy", terms_of_service: "https://www.pinnacle.sh/terms" },
172
- # monthly_volume: ONE_000,
173
- # name: "Pinnacle",
174
- # opt_in: { method_: DIGITAL, url: "https://www.pinnacle.sh/", workflow_description: "Visit https://www.pinnacle.sh/" },
175
- # options: { age_gated: false },
176
- # production_message_content: "Join the Pinnacle workshop tomorrow and send your first RCS!",
177
- # use_case: { summary: "Alerts clients about any Pinnacle hosted workshops.", value: WORKSHOP_ALERTS }
178
- # )
179
- def upsert(brand: nil, campaign_id: nil, keywords: nil, links: nil, monthly_volume: nil, name: nil, opt_in: nil,
180
- options: nil, production_message_content: nil, use_case: nil, request_options: nil)
181
- response = @request_client.conn.post do |req|
182
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
183
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
184
- req.headers = {
185
- **(req.headers || {}),
186
- **@request_client.get_headers,
187
- **(request_options&.additional_headers || {})
188
- }.compact
189
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
190
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
191
- end
192
- req.body = {
193
- **(request_options&.additional_body_parameters || {}),
194
- brand: brand,
195
- campaignId: campaign_id,
196
- keywords: keywords,
197
- links: links,
198
- monthlyVolume: monthly_volume,
199
- name: name,
200
- optIn: opt_in,
201
- options: options,
202
- productionMessageContent: production_message_content,
203
- useCase: use_case
204
- }.compact
205
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free"
206
- end
207
- Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
208
- end
209
-
210
- # Validate your toll-free campaign configuration against carrier requirements and
211
- # compliance rules.
212
- #
213
- # @param request [Hash] Request of type Pinnacle::Types::ValidateCampaignParams, as a Hash
214
- # * :additional_info (String)
215
- # * :campaign_id (String)
216
- # @param request_options [Pinnacle::RequestOptions]
217
- # @return [Pinnacle::Types::CampaignValidationResult]
218
- # @example
219
- # api = Pinnacle::Client.new(
220
- # base_url: "https://api.example.com",
221
- # environment: Pinnacle::Environment::DEFAULT,
222
- # api_key: "YOUR_API_KEY"
223
- # )
224
- # api.campaigns.toll_free.validate(request: { additional_info: "Please validate this DLC campaign for 10DLC compliance", campaign_id: "dlc_1234567890" })
225
- def validate(request:, request_options: nil)
226
- response = @request_client.conn.post do |req|
227
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
228
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
229
- req.headers = {
230
- **(req.headers || {}),
231
- **@request_client.get_headers,
232
- **(request_options&.additional_headers || {})
233
- }.compact
234
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
235
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
236
- end
237
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
238
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/validate"
239
- end
240
- Pinnacle::Types::CampaignValidationResult.from_json(json_object: response.body)
241
- end
242
- end
243
-
244
- class AsyncTollFreeClient
245
- # @return [Pinnacle::AsyncRequestClient]
246
- attr_reader :request_client
247
-
248
- # @param request_client [Pinnacle::AsyncRequestClient]
249
- # @return [Pinnacle::Campaigns::AsyncTollFreeClient]
250
- def initialize(request_client:)
251
- @request_client = request_client
252
- end
253
-
254
- # Generate campaign details based off existing campaign and the brand it's
255
- # connected to.
256
- #
257
- # @param request [Hash] Request of type Pinnacle::Types::AutofillCampaignParams, as a Hash
258
- # * :additional_info (String)
259
- # * :campaign_id (String)
260
- # @param request_options [Pinnacle::RequestOptions]
261
- # @return [Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse]
262
- # @example
263
- # api = Pinnacle::Client.new(
264
- # base_url: "https://api.example.com",
265
- # environment: Pinnacle::Environment::DEFAULT,
266
- # api_key: "YOUR_API_KEY"
267
- # )
268
- # api.campaigns.toll_free.autofill(request: { additional_info: "Please autofill missing campaign fields using my brand profile", campaign_id: "dlc_1234567890" })
269
- def autofill(request:, request_options: nil)
270
- Async do
271
- response = @request_client.conn.post do |req|
272
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
273
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
274
- req.headers = {
275
- **(req.headers || {}),
276
- **@request_client.get_headers,
277
- **(request_options&.additional_headers || {})
278
- }.compact
279
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
280
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
281
- end
282
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
283
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/autofill"
284
- end
285
- Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse.from_json(json_object: response.body)
286
- end
287
- end
288
-
289
- # Retrieve Toll-Free campaign.
290
- #
291
- # @param campaign_id [String] Unique identifier of toll-free campaign. Must begin with the prefix `tf_`.
292
- # @param request_options [Pinnacle::RequestOptions]
293
- # @return [Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus]
294
- # @example
295
- # api = Pinnacle::Client.new(
296
- # base_url: "https://api.example.com",
297
- # environment: Pinnacle::Environment::DEFAULT,
298
- # api_key: "YOUR_API_KEY"
299
- # )
300
- # api.campaigns.toll_free.get(campaign_id: "tf_1234567890")
301
- def get(campaign_id:, request_options: nil)
302
- Async do
303
- response = @request_client.conn.get do |req|
304
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
305
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
306
- req.headers = {
307
- **(req.headers || {}),
308
- **@request_client.get_headers,
309
- **(request_options&.additional_headers || {})
310
- }.compact
311
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
312
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
313
- end
314
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
315
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
316
- end
317
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/#{campaign_id}"
318
- end
319
- Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
320
- end
321
- end
322
-
323
- # Submit your toll-free campaign for approval and activation with carriers.
324
- #
325
- # @param campaign_id [String] Unique identifier of the toll-free campaign to submit. Must begin with the
326
- # prefix `tf_`.
327
- # @param request_options [Pinnacle::RequestOptions]
328
- # @return [Pinnacle::Types::CampaignSubmissionResult]
329
- # @example
330
- # api = Pinnacle::Client.new(
331
- # base_url: "https://api.example.com",
332
- # environment: Pinnacle::Environment::DEFAULT,
333
- # api_key: "YOUR_API_KEY"
334
- # )
335
- # api.campaigns.toll_free.submit(campaign_id: "tf_1234567890")
336
- def submit(campaign_id:, request_options: nil)
337
- Async do
338
- response = @request_client.conn.post do |req|
339
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
340
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
341
- req.headers = {
342
- **(req.headers || {}),
343
- **@request_client.get_headers,
344
- **(request_options&.additional_headers || {})
345
- }.compact
346
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
347
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
348
- end
349
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
350
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
351
- end
352
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/submit/#{campaign_id}"
353
- end
354
- Pinnacle::Types::CampaignSubmissionResult.from_json(json_object: response.body)
355
- end
356
- end
357
-
358
- # Create a new toll-free campaign or updates an existing one.<br>
359
- # Omit campaignId to create a campaign.
360
- #
361
- # @param brand [String] Brand id. This identifier is a string that always begins with the prefix `b_`,
362
- # for example: `b_1234567890`.
363
- # @param campaign_id [String] Unique identifier for the campaign. This identifier is a string that always
364
- # begins with the prefix `tf_`, for example: `tf_1234567890`.
365
- # @param keywords [Hash] Keyword response configuration.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignKeywords, as a Hash
366
- # * :help (Hash)
367
- # * :message (String)
368
- # * :opt_in (Hash)
369
- # * :message (String)
370
- # * :keywords (Array<String>)
371
- # @param links [Hash] Legal documentation links.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignLinks, as a Hash
372
- # * :privacy_policy (String)
373
- # * :terms_of_service (String)
374
- # @param monthly_volume [Pinnacle::Types::MessageVolumeEnum]
375
- # @param name [String] Display name of the campaign.
376
- # @param opt_in [Hash] Opt-in keyword settings.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignOptIn, as a Hash
377
- # * :method_ (Pinnacle::Types::OptInMethodEnum)
378
- # * :url (String)
379
- # * :workflow_description (String)
380
- # @param options [Hash] Campaign configuration options.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignOptions, as a Hash
381
- # * :age_gated (Boolean)
382
- # @param production_message_content [String] Explain message that would be sent.
383
- # @param use_case [Hash] Use case classification for the campaign.Request of type Pinnacle::Campaigns::TollFree::Types::TollFreeCampaignUseCase, as a Hash
384
- # * :summary (String)
385
- # * :value (Pinnacle::Types::TollFreeCampaignUseCaseEnum)
386
- # @param request_options [Pinnacle::RequestOptions]
387
- # @return [Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus]
388
- # @example
389
- # api = Pinnacle::Client.new(
390
- # base_url: "https://api.example.com",
391
- # environment: Pinnacle::Environment::DEFAULT,
392
- # api_key: "YOUR_API_KEY"
393
- # )
394
- # api.campaigns.toll_free.upsert(
395
- # brand: "b_1234567890",
396
- # campaign_id: "tf_1234567890",
397
- # keywords: { help: { message: "Email founders@trypinnacle.app for support." }, opt_in: { message: "Welcome back to Pinnacle!<br>
398
- # 🔔 You're now subscribed to Pinnacle and will continue receiving important updates and news. Feel free to contact this us at any time for help.<br>
399
- # Reply STOP to opt out and HELP for support. Message & rates may apply.
400
- # ", keywords: ["START", "SUBSCRIBE"] } },
401
- # links: { privacy_policy: "https://www.pinnacle.sh/privacy", terms_of_service: "https://www.pinnacle.sh/terms" },
402
- # monthly_volume: ONE_000,
403
- # name: "Pinnacle",
404
- # opt_in: { method_: DIGITAL, url: "https://www.pinnacle.sh/", workflow_description: "Visit https://www.pinnacle.sh/" },
405
- # options: { age_gated: false },
406
- # production_message_content: "Join the Pinnacle workshop tomorrow and send your first RCS!",
407
- # use_case: { summary: "Alerts clients about any Pinnacle hosted workshops.", value: WORKSHOP_ALERTS }
408
- # )
409
- def upsert(brand: nil, campaign_id: nil, keywords: nil, links: nil, monthly_volume: nil, name: nil, opt_in: nil,
410
- options: nil, production_message_content: nil, use_case: nil, request_options: nil)
411
- Async do
412
- response = @request_client.conn.post do |req|
413
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
414
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
415
- req.headers = {
416
- **(req.headers || {}),
417
- **@request_client.get_headers,
418
- **(request_options&.additional_headers || {})
419
- }.compact
420
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
421
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
422
- end
423
- req.body = {
424
- **(request_options&.additional_body_parameters || {}),
425
- brand: brand,
426
- campaignId: campaign_id,
427
- keywords: keywords,
428
- links: links,
429
- monthlyVolume: monthly_volume,
430
- name: name,
431
- optIn: opt_in,
432
- options: options,
433
- productionMessageContent: production_message_content,
434
- useCase: use_case
435
- }.compact
436
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free"
437
- end
438
- Pinnacle::Types::TollFreeCampaignWithExtendedBrandAndStatus.from_json(json_object: response.body)
439
- end
440
- end
441
-
442
- # Validate your toll-free campaign configuration against carrier requirements and
443
- # compliance rules.
444
- #
445
- # @param request [Hash] Request of type Pinnacle::Types::ValidateCampaignParams, as a Hash
446
- # * :additional_info (String)
447
- # * :campaign_id (String)
448
- # @param request_options [Pinnacle::RequestOptions]
449
- # @return [Pinnacle::Types::CampaignValidationResult]
450
- # @example
451
- # api = Pinnacle::Client.new(
452
- # base_url: "https://api.example.com",
453
- # environment: Pinnacle::Environment::DEFAULT,
454
- # api_key: "YOUR_API_KEY"
455
- # )
456
- # api.campaigns.toll_free.validate(request: { additional_info: "Please validate this DLC campaign for 10DLC compliance", campaign_id: "dlc_1234567890" })
457
- def validate(request:, request_options: nil)
458
- Async do
459
- response = @request_client.conn.post do |req|
460
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
461
- req.headers["PINNACLE-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
462
- req.headers = {
463
- **(req.headers || {}),
464
- **@request_client.get_headers,
465
- **(request_options&.additional_headers || {})
466
- }.compact
467
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
468
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
469
- end
470
- req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
471
- req.url "#{@request_client.get_url(request_options: request_options)}/campaigns/toll-free/validate"
472
- end
473
- Pinnacle::Types::CampaignValidationResult.from_json(json_object: response.body)
474
- end
475
- end
476
- end
477
- end
478
- end
@@ -1,172 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../../types/toll_free_campaign_schema_keywords"
4
- require_relative "../../../types/toll_free_campaign_schema_links"
5
- require_relative "../../../types/message_volume_enum"
6
- require_relative "../../../types/toll_free_campaign_schema_opt_in"
7
- require_relative "../../../types/toll_free_campaign_schema_options"
8
- require_relative "../../../types/toll_free_campaign_schema_use_case"
9
- require "ostruct"
10
- require "json"
11
-
12
- module Pinnacle
13
- module Campaigns
14
- module TollFree
15
- module Types
16
- class TollFreeAutofillResponse
17
- # @return [String]
18
- attr_reader :brand
19
- # @return [String] Unique identifier for the campaign. Must begin with the prefix `tf_`.
20
- attr_reader :campaign_id
21
- # @return [Pinnacle::Types::TollFreeCampaignSchemaKeywords] Keyword response configuration.
22
- attr_reader :keywords
23
- # @return [Pinnacle::Types::TollFreeCampaignSchemaLinks] Legal documentation links.
24
- attr_reader :links
25
- # @return [Pinnacle::Types::MessageVolumeEnum]
26
- attr_reader :monthly_volume
27
- # @return [String] Display name of the campaign.
28
- attr_reader :name
29
- # @return [Pinnacle::Types::TollFreeCampaignSchemaOptIn] Opt-in keyword settings.
30
- attr_reader :opt_in
31
- # @return [Pinnacle::Types::TollFreeCampaignSchemaOptions] Campaign configuration options.
32
- attr_reader :options
33
- # @return [String] Explain message that would be sent.
34
- attr_reader :production_message_content
35
- # @return [Pinnacle::Types::TollFreeCampaignSchemaUseCase] Use case classification for the campaign.
36
- attr_reader :use_case
37
- # @return [OpenStruct] Additional properties unmapped to the current class definition
38
- attr_reader :additional_properties
39
- # @return [Object]
40
- attr_reader :_field_set
41
- protected :_field_set
42
-
43
- OMIT = Object.new
44
-
45
- # @param brand [String]
46
- # @param campaign_id [String] Unique identifier for the campaign. Must begin with the prefix `tf_`.
47
- # @param keywords [Pinnacle::Types::TollFreeCampaignSchemaKeywords] Keyword response configuration.
48
- # @param links [Pinnacle::Types::TollFreeCampaignSchemaLinks] Legal documentation links.
49
- # @param monthly_volume [Pinnacle::Types::MessageVolumeEnum]
50
- # @param name [String] Display name of the campaign.
51
- # @param opt_in [Pinnacle::Types::TollFreeCampaignSchemaOptIn] Opt-in keyword settings.
52
- # @param options [Pinnacle::Types::TollFreeCampaignSchemaOptions] Campaign configuration options.
53
- # @param production_message_content [String] Explain message that would be sent.
54
- # @param use_case [Pinnacle::Types::TollFreeCampaignSchemaUseCase] Use case classification for the campaign.
55
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
56
- # @return [Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse]
57
- def initialize(brand: OMIT, campaign_id: OMIT, keywords: OMIT, links: OMIT, monthly_volume: OMIT, name: OMIT,
58
- opt_in: OMIT, options: OMIT, production_message_content: OMIT, use_case: OMIT, additional_properties: nil)
59
- @brand = brand if brand != OMIT
60
- @campaign_id = campaign_id if campaign_id != OMIT
61
- @keywords = keywords if keywords != OMIT
62
- @links = links if links != OMIT
63
- @monthly_volume = monthly_volume if monthly_volume != OMIT
64
- @name = name if name != OMIT
65
- @opt_in = opt_in if opt_in != OMIT
66
- @options = options if options != OMIT
67
- @production_message_content = production_message_content if production_message_content != OMIT
68
- @use_case = use_case if use_case != OMIT
69
- @additional_properties = additional_properties
70
- @_field_set = {
71
- "brand": brand,
72
- "campaignId": campaign_id,
73
- "keywords": keywords,
74
- "links": links,
75
- "monthlyVolume": monthly_volume,
76
- "name": name,
77
- "optIn": opt_in,
78
- "options": options,
79
- "productionMessageContent": production_message_content,
80
- "useCase": use_case
81
- }.reject do |_k, v|
82
- v == OMIT
83
- end
84
- end
85
-
86
- # Deserialize a JSON object to an instance of TollFreeAutofillResponse
87
- #
88
- # @param json_object [String]
89
- # @return [Pinnacle::Campaigns::TollFree::Types::TollFreeAutofillResponse]
90
- def self.from_json(json_object:)
91
- struct = JSON.parse(json_object, object_class: OpenStruct)
92
- parsed_json = JSON.parse(json_object)
93
- brand = parsed_json["brand"]
94
- campaign_id = parsed_json["campaignId"]
95
- if parsed_json["keywords"].nil?
96
- keywords = nil
97
- else
98
- keywords = parsed_json["keywords"].to_json
99
- keywords = Pinnacle::Types::TollFreeCampaignSchemaKeywords.from_json(json_object: keywords)
100
- end
101
- if parsed_json["links"].nil?
102
- links = nil
103
- else
104
- links = parsed_json["links"].to_json
105
- links = Pinnacle::Types::TollFreeCampaignSchemaLinks.from_json(json_object: links)
106
- end
107
- monthly_volume = parsed_json["monthlyVolume"]
108
- name = parsed_json["name"]
109
- if parsed_json["optIn"].nil?
110
- opt_in = nil
111
- else
112
- opt_in = parsed_json["optIn"].to_json
113
- opt_in = Pinnacle::Types::TollFreeCampaignSchemaOptIn.from_json(json_object: opt_in)
114
- end
115
- if parsed_json["options"].nil?
116
- options = nil
117
- else
118
- options = parsed_json["options"].to_json
119
- options = Pinnacle::Types::TollFreeCampaignSchemaOptions.from_json(json_object: options)
120
- end
121
- production_message_content = parsed_json["productionMessageContent"]
122
- if parsed_json["useCase"].nil?
123
- use_case = nil
124
- else
125
- use_case = parsed_json["useCase"].to_json
126
- use_case = Pinnacle::Types::TollFreeCampaignSchemaUseCase.from_json(json_object: use_case)
127
- end
128
- new(
129
- brand: brand,
130
- campaign_id: campaign_id,
131
- keywords: keywords,
132
- links: links,
133
- monthly_volume: monthly_volume,
134
- name: name,
135
- opt_in: opt_in,
136
- options: options,
137
- production_message_content: production_message_content,
138
- use_case: use_case,
139
- additional_properties: struct
140
- )
141
- end
142
-
143
- # Serialize an instance of TollFreeAutofillResponse to a JSON object
144
- #
145
- # @return [String]
146
- def to_json(*_args)
147
- @_field_set&.to_json
148
- end
149
-
150
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
151
- # hash and check each fields type against the current object's property
152
- # definitions.
153
- #
154
- # @param obj [Object]
155
- # @return [Void]
156
- def self.validate_raw(obj:)
157
- obj.brand&.is_a?(String) != false || raise("Passed value for field obj.brand is not the expected type, validation failed.")
158
- obj.campaign_id&.is_a?(String) != false || raise("Passed value for field obj.campaign_id is not the expected type, validation failed.")
159
- obj.keywords.nil? || Pinnacle::Types::TollFreeCampaignSchemaKeywords.validate_raw(obj: obj.keywords)
160
- obj.links.nil? || Pinnacle::Types::TollFreeCampaignSchemaLinks.validate_raw(obj: obj.links)
161
- obj.monthly_volume&.is_a?(Pinnacle::Types::MessageVolumeEnum) != false || raise("Passed value for field obj.monthly_volume is not the expected type, validation failed.")
162
- obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
163
- obj.opt_in.nil? || Pinnacle::Types::TollFreeCampaignSchemaOptIn.validate_raw(obj: obj.opt_in)
164
- obj.options.nil? || Pinnacle::Types::TollFreeCampaignSchemaOptions.validate_raw(obj: obj.options)
165
- obj.production_message_content&.is_a?(String) != false || raise("Passed value for field obj.production_message_content is not the expected type, validation failed.")
166
- obj.use_case.nil? || Pinnacle::Types::TollFreeCampaignSchemaUseCase.validate_raw(obj: obj.use_case)
167
- end
168
- end
169
- end
170
- end
171
- end
172
- end