sentdm 0.44.0 → 0.46.0

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 (484) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +11 -11
  4. data/lib/sentdm/client.rb +66 -0
  5. data/lib/sentdm/internal/sender_profiles_page.rb +140 -0
  6. data/lib/sentdm/internal/type/enum.rb +11 -11
  7. data/lib/sentdm/models/account.rb +173 -0
  8. data/lib/sentdm/models/account_channels.rb +39 -0
  9. data/lib/sentdm/models/account_profile.rb +86 -0
  10. data/lib/sentdm/models/account_rcs_channel.rb +26 -0
  11. data/lib/sentdm/models/account_sms_channel.rb +26 -0
  12. data/lib/sentdm/models/account_whatsapp_channel.rb +35 -0
  13. data/lib/sentdm/models/api_response_of_account.rb +48 -0
  14. data/lib/sentdm/models/api_response_of_cancelled_message.rb +43 -0
  15. data/lib/sentdm/models/api_response_of_channels_state.rb +48 -0
  16. data/lib/sentdm/models/api_response_of_compliance_requirements.rb +47 -0
  17. data/lib/sentdm/models/api_response_of_contacts_list.rb +42 -0
  18. data/lib/sentdm/models/api_response_of_message.rb +51 -0
  19. data/lib/sentdm/models/api_response_of_message_activities.rb +43 -0
  20. data/lib/sentdm/models/api_response_of_number_lookup_result.rb +43 -0
  21. data/lib/sentdm/models/api_response_of_profile_completion_accepted.rb +47 -0
  22. data/lib/sentdm/models/api_response_of_profile_completion_result.rb +47 -0
  23. data/lib/sentdm/models/api_response_of_profiles_list.rb +43 -0
  24. data/lib/sentdm/models/api_response_of_sender_profile.rb +54 -0
  25. data/lib/sentdm/models/api_response_of_sender_profiles_list.rb +42 -0
  26. data/lib/sentdm/models/api_response_of_templates_list.rb +42 -0
  27. data/lib/sentdm/models/api_response_of_users_list.rb +43 -0
  28. data/lib/sentdm/models/api_response_of_webhook_event_types_list.rb +43 -0
  29. data/lib/sentdm/models/api_response_of_webhook_events_list.rb +42 -0
  30. data/lib/sentdm/models/{webhook_rotate_secret_response.rb → api_response_of_webhook_secret.rb} +4 -17
  31. data/lib/sentdm/models/{webhook_test_response.rb → api_response_of_webhook_test.rb} +4 -23
  32. data/lib/sentdm/models/api_response_of_webhooks_list.rb +42 -0
  33. data/lib/sentdm/models/billing_contact.rb +35 -0
  34. data/lib/sentdm/models/brand_business.rb +96 -0
  35. data/lib/sentdm/models/brand_business_info.rb +3 -20
  36. data/lib/sentdm/models/brand_compliance.rb +75 -0
  37. data/lib/sentdm/models/brand_contact.rb +56 -0
  38. data/lib/sentdm/models/brand_with_kyc.rb +129 -0
  39. data/lib/sentdm/models/cancelled_message.rb +28 -0
  40. data/lib/sentdm/models/channel_event_payload.rb +3 -114
  41. data/lib/sentdm/models/channel_list_params.rb +20 -0
  42. data/lib/sentdm/models/channel_score.rb +35 -0
  43. data/lib/sentdm/models/channels/api_response_of_list_of_sms_market.rb +45 -0
  44. data/lib/sentdm/models/channels/api_response_of_rcs_agent.rb +60 -0
  45. data/lib/sentdm/models/channels/api_response_of_sms_market.rb +54 -0
  46. data/lib/sentdm/models/channels/api_response_of_whatsapp_channel.rb +47 -0
  47. data/lib/sentdm/models/channels/market_compliance.rb +409 -0
  48. data/lib/sentdm/models/channels/rc_create_params.rb +260 -0
  49. data/lib/sentdm/models/channels/rcs_address.rb +43 -0
  50. data/lib/sentdm/models/channels/rcs_agent.rb +278 -0
  51. data/lib/sentdm/models/channels/sms_create_params.rb +173 -0
  52. data/lib/sentdm/models/channels/sms_list_params.rb +22 -0
  53. data/lib/sentdm/models/channels/sms_market.rb +158 -0
  54. data/lib/sentdm/models/channels/sms_number.rb +41 -0
  55. data/lib/sentdm/models/channels/sms_number_request.rb +33 -0
  56. data/lib/sentdm/models/channels/sms_retrieve_params.rb +34 -0
  57. data/lib/sentdm/models/channels/sms_update_params.rb +64 -0
  58. data/lib/sentdm/models/channels/supplied_compliance.rb +89 -0
  59. data/lib/sentdm/models/channels/supplied_document.rb +35 -0
  60. data/lib/sentdm/models/channels/whatsapp_channel.rb +109 -0
  61. data/lib/sentdm/models/channels/whatsapp_create_params.rb +65 -0
  62. data/lib/sentdm/models/channels_state.rb +89 -0
  63. data/lib/sentdm/models/compliance_attachment_template.rb +36 -0
  64. data/lib/sentdm/models/compliance_requirement.rb +112 -0
  65. data/lib/sentdm/models/compliance_requirements.rb +98 -0
  66. data/lib/sentdm/models/compliance_retrieve_requirements_params.rb +52 -0
  67. data/lib/sentdm/models/compliance_setup_step.rb +78 -0
  68. data/lib/sentdm/models/contact_message_summary.rb +3 -34
  69. data/lib/sentdm/models/contacts_list.rb +26 -0
  70. data/lib/sentdm/models/conversation_messages_list.rb +3 -430
  71. data/lib/sentdm/models/entity_type.rb +18 -0
  72. data/lib/sentdm/models/inbound_media.rb +53 -0
  73. data/lib/sentdm/models/inbound_message_event_payload.rb +3 -53
  74. data/lib/sentdm/models/link_event.rb +79 -0
  75. data/lib/sentdm/models/link_event_payload.rb +211 -0
  76. data/lib/sentdm/models/message.rb +168 -0
  77. data/lib/sentdm/models/message_activities.rb +34 -0
  78. data/lib/sentdm/models/message_activity.rb +105 -0
  79. data/lib/sentdm/models/message_body.rb +79 -0
  80. data/lib/sentdm/models/message_button.rb +33 -0
  81. data/lib/sentdm/models/message_cancel_params.rb +32 -0
  82. data/lib/sentdm/models/message_channel_options.rb +43 -0
  83. data/lib/sentdm/models/message_event_payload.rb +3 -2
  84. data/lib/sentdm/models/message_header_media.rb +31 -0
  85. data/lib/sentdm/models/message_media.rb +74 -0
  86. data/lib/sentdm/models/message_recipient.rb +46 -0
  87. data/lib/sentdm/models/message_send_params.rb +6 -90
  88. data/lib/sentdm/models/message_send_response.rb +3 -95
  89. data/lib/sentdm/models/message_send_result.rb +55 -0
  90. data/lib/sentdm/models/message_status_event.rb +54 -0
  91. data/lib/sentdm/models/mms_market.rb +48 -0
  92. data/lib/sentdm/models/number_lookup_result.rb +63 -0
  93. data/lib/sentdm/models/pagination_cursors.rb +27 -0
  94. data/lib/sentdm/models/pagination_meta.rb +3 -27
  95. data/lib/sentdm/models/profile_completion_accepted.rb +20 -0
  96. data/lib/sentdm/models/profile_completion_result.rb +31 -0
  97. data/lib/sentdm/models/profile_detail.rb +6 -408
  98. data/lib/sentdm/models/profiles/brand_campaign.rb +3 -15
  99. data/lib/sentdm/models/profiles_list.rb +26 -0
  100. data/lib/sentdm/models/sender_profile.rb +138 -0
  101. data/lib/sentdm/models/sender_profile_billing.rb +21 -0
  102. data/lib/sentdm/models/sender_profile_billing_request.rb +33 -0
  103. data/lib/sentdm/models/sender_profile_channels.rb +90 -0
  104. data/lib/sentdm/models/sender_profile_create_params.rb +116 -0
  105. data/lib/sentdm/models/sender_profile_delete_params.rb +20 -0
  106. data/lib/sentdm/models/sender_profile_list_params.rb +30 -0
  107. data/lib/sentdm/models/sender_profile_rcs.rb +209 -0
  108. data/lib/sentdm/models/sender_profile_retrieve_params.rb +20 -0
  109. data/lib/sentdm/models/sender_profile_sms.rb +106 -0
  110. data/lib/sentdm/models/sender_profile_update_params.rb +71 -0
  111. data/lib/sentdm/models/sender_profile_whatsapp.rb +61 -0
  112. data/lib/sentdm/models/sender_profiles_list.rb +26 -0
  113. data/lib/sentdm/models/tcr_brand_identity_status.rb +17 -0
  114. data/lib/sentdm/models/tcr_brand_status.rb +16 -0
  115. data/lib/sentdm/models/tcr_campaign_status.rb +16 -0
  116. data/lib/sentdm/models/template_body.rb +3 -70
  117. data/lib/sentdm/models/template_create_params.rb +11 -1
  118. data/lib/sentdm/models/template_header.rb +3 -37
  119. data/lib/sentdm/models/template_header_location.rb +38 -0
  120. data/lib/sentdm/models/template_media_item.rb +34 -0
  121. data/lib/sentdm/models/template_mms_body_content.rb +49 -0
  122. data/lib/sentdm/models/template_ref.rb +51 -0
  123. data/lib/sentdm/models/template_variable.rb +3 -64
  124. data/lib/sentdm/models/template_variable_props.rb +65 -0
  125. data/lib/sentdm/models/templates_list.rb +26 -0
  126. data/lib/sentdm/models/users_list.rb +26 -0
  127. data/lib/sentdm/models/voice/call.rb +3 -54
  128. data/lib/sentdm/models/voice/call_leg.rb +58 -0
  129. data/lib/sentdm/models/webhook_create_params.rb +3 -25
  130. data/lib/sentdm/models/webhook_delivery.rb +160 -0
  131. data/lib/sentdm/models/webhook_event_types_list.rb +26 -0
  132. data/lib/sentdm/models/webhook_events_list.rb +26 -0
  133. data/lib/sentdm/models/webhook_response.rb +3 -28
  134. data/lib/sentdm/models/webhook_secret.rb +15 -0
  135. data/lib/sentdm/models/webhook_sender_profile.rb +29 -0
  136. data/lib/sentdm/models/webhook_sender_profile_config.rb +27 -0
  137. data/lib/sentdm/models/webhook_test.rb +21 -0
  138. data/lib/sentdm/models/webhook_update_params.rb +3 -25
  139. data/lib/sentdm/models/webhooks_list.rb +26 -0
  140. data/lib/sentdm/models.rb +188 -0
  141. data/lib/sentdm/resources/channels/rcs.rb +177 -0
  142. data/lib/sentdm/resources/channels/sms.rb +417 -0
  143. data/lib/sentdm/resources/channels/whatsapp.rb +106 -0
  144. data/lib/sentdm/resources/channels.rb +162 -0
  145. data/lib/sentdm/resources/compliance.rb +127 -0
  146. data/lib/sentdm/resources/conversations.rb +4 -4
  147. data/lib/sentdm/resources/me.rb +2 -2
  148. data/lib/sentdm/resources/messages.rb +73 -7
  149. data/lib/sentdm/resources/numbers.rb +2 -2
  150. data/lib/sentdm/resources/profiles.rb +4 -4
  151. data/lib/sentdm/resources/sender_profiles.rb +463 -0
  152. data/lib/sentdm/resources/templates.rb +5 -3
  153. data/lib/sentdm/resources/users.rb +2 -2
  154. data/lib/sentdm/resources/webhooks.rb +10 -10
  155. data/lib/sentdm/version.rb +1 -1
  156. data/lib/sentdm.rb +120 -11
  157. data/rbi/sentdm/client.rbi +64 -0
  158. data/rbi/sentdm/internal/sender_profiles_page.rbi +122 -0
  159. data/rbi/sentdm/models/account.rbi +242 -0
  160. data/rbi/sentdm/models/account_channels.rbi +66 -0
  161. data/rbi/sentdm/models/account_profile.rbi +116 -0
  162. data/rbi/sentdm/models/account_rcs_channel.rbi +45 -0
  163. data/rbi/sentdm/models/account_sms_channel.rbi +45 -0
  164. data/rbi/sentdm/models/account_whatsapp_channel.rbi +58 -0
  165. data/rbi/sentdm/models/api_response_of_account.rbi +78 -0
  166. data/rbi/sentdm/models/{webhook_rotate_secret_response.rbi → api_response_of_cancelled_message.rbi} +6 -41
  167. data/rbi/sentdm/models/api_response_of_channels_state.rbi +78 -0
  168. data/rbi/sentdm/models/api_response_of_compliance_requirements.rbi +81 -0
  169. data/rbi/sentdm/models/api_response_of_contacts_list.rbi +74 -0
  170. data/rbi/sentdm/models/api_response_of_message.rbi +84 -0
  171. data/rbi/sentdm/models/api_response_of_message_activities.rbi +77 -0
  172. data/rbi/sentdm/models/{webhook_test_response.rbi → api_response_of_number_lookup_result.rbi} +9 -43
  173. data/rbi/sentdm/models/api_response_of_profile_completion_accepted.rbi +83 -0
  174. data/rbi/sentdm/models/{profile_complete_response.rbi → api_response_of_profile_completion_result.rbi} +6 -52
  175. data/rbi/sentdm/models/api_response_of_profiles_list.rbi +74 -0
  176. data/rbi/sentdm/models/api_response_of_sender_profile.rbi +90 -0
  177. data/rbi/sentdm/models/api_response_of_sender_profiles_list.rbi +77 -0
  178. data/rbi/sentdm/models/api_response_of_templates_list.rbi +74 -0
  179. data/rbi/sentdm/models/api_response_of_users_list.rbi +74 -0
  180. data/rbi/sentdm/models/api_response_of_webhook_event_types_list.rbi +79 -0
  181. data/rbi/sentdm/models/api_response_of_webhook_events_list.rbi +77 -0
  182. data/rbi/sentdm/models/api_response_of_webhook_secret.rbi +74 -0
  183. data/rbi/sentdm/models/api_response_of_webhook_test.rbi +74 -0
  184. data/rbi/sentdm/models/api_response_of_webhooks_list.rbi +74 -0
  185. data/rbi/sentdm/models/billing_contact.rbi +49 -0
  186. data/rbi/sentdm/models/brand_business.rbi +115 -0
  187. data/rbi/sentdm/models/brand_business_info.rbi +3 -49
  188. data/rbi/sentdm/models/brand_compliance.rbi +108 -0
  189. data/rbi/sentdm/models/brand_contact.rbi +78 -0
  190. data/rbi/sentdm/models/brand_with_kyc.rbi +167 -0
  191. data/rbi/sentdm/models/cancelled_message.rbi +37 -0
  192. data/rbi/sentdm/models/channel_event_payload.rbi +4 -204
  193. data/rbi/sentdm/models/channel_list_params.rbi +38 -0
  194. data/rbi/sentdm/models/channel_score.rbi +56 -0
  195. data/rbi/sentdm/models/channels/api_response_of_list_of_sms_market.rbi +76 -0
  196. data/rbi/sentdm/models/channels/api_response_of_rcs_agent.rbi +103 -0
  197. data/rbi/sentdm/models/channels/api_response_of_sms_market.rbi +93 -0
  198. data/rbi/sentdm/models/channels/api_response_of_whatsapp_channel.rbi +85 -0
  199. data/rbi/sentdm/models/channels/market_compliance.rbi +770 -0
  200. data/rbi/sentdm/models/channels/rc_create_params.rbi +397 -0
  201. data/rbi/sentdm/models/channels/rcs_address.rbi +62 -0
  202. data/rbi/sentdm/models/channels/rcs_agent.rbi +320 -0
  203. data/rbi/sentdm/models/channels/sms_create_params.rbi +291 -0
  204. data/rbi/sentdm/models/channels/sms_list_params.rbi +40 -0
  205. data/rbi/sentdm/models/channels/sms_market.rbi +247 -0
  206. data/rbi/sentdm/models/channels/sms_number.rbi +60 -0
  207. data/rbi/sentdm/models/channels/sms_number_request.rbi +48 -0
  208. data/rbi/sentdm/models/channels/sms_retrieve_params.rbi +56 -0
  209. data/rbi/sentdm/models/channels/sms_update_params.rbi +93 -0
  210. data/rbi/sentdm/models/channels/supplied_compliance.rbi +140 -0
  211. data/rbi/sentdm/models/channels/supplied_document.rbi +57 -0
  212. data/rbi/sentdm/models/channels/whatsapp_channel.rbi +172 -0
  213. data/rbi/sentdm/models/channels/whatsapp_create_params.rbi +104 -0
  214. data/rbi/sentdm/models/channels_state.rbi +151 -0
  215. data/rbi/sentdm/models/compliance_attachment_template.rbi +56 -0
  216. data/rbi/sentdm/models/compliance_requirement.rbi +149 -0
  217. data/rbi/sentdm/models/compliance_requirements.rbi +165 -0
  218. data/rbi/sentdm/models/compliance_retrieve_requirements_params.rbi +79 -0
  219. data/rbi/sentdm/models/compliance_setup_step.rbi +115 -0
  220. data/rbi/sentdm/models/contact_message_summary.rbi +4 -69
  221. data/rbi/sentdm/models/contacts_list.rbi +50 -0
  222. data/rbi/sentdm/models/conversation_messages_list.rbi +4 -669
  223. data/rbi/sentdm/models/entity_type.rbi +23 -0
  224. data/rbi/sentdm/models/inbound_media.rbi +76 -0
  225. data/rbi/sentdm/models/inbound_message_event_payload.rbi +3 -85
  226. data/rbi/sentdm/models/link_event.rbi +128 -0
  227. data/rbi/sentdm/models/link_event_payload.rbi +279 -0
  228. data/rbi/sentdm/models/message.rbi +214 -0
  229. data/rbi/sentdm/models/message_activities.rbi +63 -0
  230. data/rbi/sentdm/models/message_activity.rbi +145 -0
  231. data/rbi/sentdm/models/message_body.rbi +104 -0
  232. data/rbi/sentdm/models/message_button.rbi +52 -0
  233. data/rbi/sentdm/models/message_cancel_params.rbi +59 -0
  234. data/rbi/sentdm/models/message_channel_options.rbi +65 -0
  235. data/rbi/sentdm/models/message_event_payload.rbi +4 -2
  236. data/rbi/sentdm/models/message_header_media.rbi +44 -0
  237. data/rbi/sentdm/models/message_media.rbi +95 -0
  238. data/rbi/sentdm/models/message_recipient.rbi +70 -0
  239. data/rbi/sentdm/models/message_send_params.rbi +7 -155
  240. data/rbi/sentdm/models/message_send_response.rbi +4 -163
  241. data/rbi/sentdm/models/message_send_result.rbi +85 -0
  242. data/rbi/sentdm/models/message_status_event.rbi +70 -0
  243. data/rbi/sentdm/models/mms_market.rbi +66 -0
  244. data/rbi/sentdm/models/number_lookup_result.rbi +89 -0
  245. data/rbi/sentdm/models/pagination_cursors.rbi +42 -0
  246. data/rbi/sentdm/models/pagination_meta.rbi +4 -43
  247. data/rbi/sentdm/models/profile_completion_accepted.rbi +33 -0
  248. data/rbi/sentdm/models/profile_completion_result.rbi +43 -0
  249. data/rbi/sentdm/models/profile_detail.rbi +8 -621
  250. data/rbi/sentdm/models/profiles/brand_campaign.rbi +3 -45
  251. data/rbi/sentdm/models/profiles_list.rbi +50 -0
  252. data/rbi/sentdm/models/sender_profile.rbi +204 -0
  253. data/rbi/sentdm/models/sender_profile_billing.rbi +34 -0
  254. data/rbi/sentdm/models/sender_profile_billing_request.rbi +46 -0
  255. data/rbi/sentdm/models/sender_profile_channels.rbi +163 -0
  256. data/rbi/sentdm/models/sender_profile_create_params.rbi +190 -0
  257. data/rbi/sentdm/models/sender_profile_delete_params.rbi +35 -0
  258. data/rbi/sentdm/models/sender_profile_list_params.rbi +57 -0
  259. data/rbi/sentdm/models/sender_profile_rcs.rbi +211 -0
  260. data/rbi/sentdm/models/sender_profile_retrieve_params.rbi +35 -0
  261. data/rbi/sentdm/models/sender_profile_sms.rbi +156 -0
  262. data/rbi/sentdm/models/sender_profile_update_params.rbi +96 -0
  263. data/rbi/sentdm/models/sender_profile_whatsapp.rbi +83 -0
  264. data/rbi/sentdm/models/sender_profiles_list.rbi +54 -0
  265. data/rbi/sentdm/models/tcr_brand_identity_status.rbi +27 -0
  266. data/rbi/sentdm/models/tcr_brand_status.rbi +20 -0
  267. data/rbi/sentdm/models/tcr_campaign_status.rbi +23 -0
  268. data/rbi/sentdm/models/template_body.rbi +6 -114
  269. data/rbi/sentdm/models/template_create_params.rbi +12 -0
  270. data/rbi/sentdm/models/template_header.rbi +4 -53
  271. data/rbi/sentdm/models/template_header_location.rbi +47 -0
  272. data/rbi/sentdm/models/template_media_item.rbi +51 -0
  273. data/rbi/sentdm/models/template_mms_body_content.rbi +73 -0
  274. data/rbi/sentdm/models/template_ref.rbi +79 -0
  275. data/rbi/sentdm/models/template_variable.rbi +4 -80
  276. data/rbi/sentdm/models/template_variable_props.rbi +81 -0
  277. data/rbi/sentdm/models/templates_list.rbi +50 -0
  278. data/rbi/sentdm/models/users_list.rbi +50 -0
  279. data/rbi/sentdm/models/voice/call.rbi +3 -86
  280. data/rbi/sentdm/models/voice/call_leg.rbi +90 -0
  281. data/rbi/sentdm/models/webhook_create_params.rbi +4 -49
  282. data/rbi/sentdm/models/webhook_delivery.rbi +211 -0
  283. data/rbi/sentdm/models/webhook_event_types_list.rbi +54 -0
  284. data/rbi/sentdm/models/webhook_events_list.rbi +52 -0
  285. data/rbi/sentdm/models/webhook_response.rbi +4 -50
  286. data/rbi/sentdm/models/webhook_secret.rbi +24 -0
  287. data/rbi/sentdm/models/webhook_sender_profile.rbi +46 -0
  288. data/rbi/sentdm/models/webhook_sender_profile_config.rbi +44 -0
  289. data/rbi/sentdm/models/webhook_test.rbi +32 -0
  290. data/rbi/sentdm/models/webhook_update_params.rbi +4 -49
  291. data/rbi/sentdm/models/webhooks_list.rbi +50 -0
  292. data/rbi/sentdm/models.rbi +197 -0
  293. data/rbi/sentdm/resources/channels/rcs.rbi +208 -0
  294. data/rbi/sentdm/resources/channels/sms.rbi +437 -0
  295. data/rbi/sentdm/resources/channels/whatsapp.rbi +108 -0
  296. data/rbi/sentdm/resources/channels.rbi +149 -0
  297. data/rbi/sentdm/resources/compliance.rbi +121 -0
  298. data/rbi/sentdm/resources/conversations.rbi +2 -10
  299. data/rbi/sentdm/resources/me.rbi +1 -1
  300. data/rbi/sentdm/resources/messages.rbi +66 -8
  301. data/rbi/sentdm/resources/numbers.rbi +1 -1
  302. data/rbi/sentdm/resources/profiles.rbi +2 -2
  303. data/rbi/sentdm/resources/sender_profiles.rbi +461 -0
  304. data/rbi/sentdm/resources/templates.rbi +7 -2
  305. data/rbi/sentdm/resources/users.rbi +1 -1
  306. data/rbi/sentdm/resources/webhooks.rbi +6 -12
  307. data/sig/sentdm/client.rbs +4 -0
  308. data/sig/sentdm/internal/sender_profiles_page.rbs +80 -0
  309. data/sig/sentdm/models/account.rbs +111 -0
  310. data/sig/sentdm/models/account_channels.rbs +38 -0
  311. data/sig/sentdm/models/account_profile.rbs +68 -0
  312. data/sig/sentdm/models/account_rcs_channel.rbs +17 -0
  313. data/sig/sentdm/models/account_sms_channel.rbs +17 -0
  314. data/sig/sentdm/models/account_whatsapp_channel.rbs +28 -0
  315. data/sig/sentdm/models/api_response_of_account.rbs +39 -0
  316. data/sig/sentdm/models/api_response_of_cancelled_message.rbs +39 -0
  317. data/sig/sentdm/models/api_response_of_channels_state.rbs +39 -0
  318. data/sig/sentdm/models/api_response_of_compliance_requirements.rbs +39 -0
  319. data/sig/sentdm/models/api_response_of_contacts_list.rbs +39 -0
  320. data/sig/sentdm/models/api_response_of_message.rbs +39 -0
  321. data/sig/sentdm/models/api_response_of_message_activities.rbs +39 -0
  322. data/sig/sentdm/models/api_response_of_number_lookup_result.rbs +39 -0
  323. data/sig/sentdm/models/api_response_of_profile_completion_accepted.rbs +39 -0
  324. data/sig/sentdm/models/api_response_of_profile_completion_result.rbs +39 -0
  325. data/sig/sentdm/models/api_response_of_profiles_list.rbs +39 -0
  326. data/sig/sentdm/models/api_response_of_sender_profile.rbs +39 -0
  327. data/sig/sentdm/models/api_response_of_sender_profiles_list.rbs +39 -0
  328. data/sig/sentdm/models/api_response_of_templates_list.rbs +39 -0
  329. data/sig/sentdm/models/api_response_of_users_list.rbs +39 -0
  330. data/sig/sentdm/models/api_response_of_webhook_event_types_list.rbs +39 -0
  331. data/sig/sentdm/models/api_response_of_webhook_events_list.rbs +39 -0
  332. data/sig/sentdm/models/api_response_of_webhook_secret.rbs +39 -0
  333. data/sig/sentdm/models/api_response_of_webhook_test.rbs +39 -0
  334. data/sig/sentdm/models/api_response_of_webhooks_list.rbs +39 -0
  335. data/sig/sentdm/models/billing_contact.rbs +30 -0
  336. data/sig/sentdm/models/brand_business.rbs +70 -0
  337. data/sig/sentdm/models/brand_business_info.rbs +4 -23
  338. data/sig/sentdm/models/brand_compliance.rbs +56 -0
  339. data/sig/sentdm/models/brand_contact.rbs +47 -0
  340. data/sig/sentdm/models/brand_with_kyc.rbs +93 -0
  341. data/sig/sentdm/models/cancelled_message.rbs +15 -0
  342. data/sig/sentdm/models/channel_event_payload.rbs +4 -56
  343. data/sig/sentdm/models/channel_list_params.rbs +25 -0
  344. data/sig/sentdm/models/channel_score.rbs +32 -0
  345. data/sig/sentdm/models/channels/api_response_of_list_of_sms_market.rbs +41 -0
  346. data/sig/sentdm/models/channels/api_response_of_rcs_agent.rbs +41 -0
  347. data/sig/sentdm/models/channels/api_response_of_sms_market.rbs +41 -0
  348. data/sig/sentdm/models/channels/api_response_of_whatsapp_channel.rbs +43 -0
  349. data/sig/sentdm/models/channels/market_compliance.rbs +338 -0
  350. data/sig/sentdm/models/channels/rc_create_params.rbs +242 -0
  351. data/sig/sentdm/models/channels/rcs_address.rbs +42 -0
  352. data/sig/sentdm/models/channels/rcs_agent.rbs +181 -0
  353. data/sig/sentdm/models/channels/sms_create_params.rbs +116 -0
  354. data/sig/sentdm/models/channels/sms_list_params.rbs +27 -0
  355. data/sig/sentdm/models/channels/sms_market.rbs +85 -0
  356. data/sig/sentdm/models/channels/sms_number.rbs +28 -0
  357. data/sig/sentdm/models/channels/sms_number_request.rbs +17 -0
  358. data/sig/sentdm/models/channels/sms_retrieve_params.rbs +36 -0
  359. data/sig/sentdm/models/channels/sms_update_params.rbs +63 -0
  360. data/sig/sentdm/models/channels/supplied_compliance.rbs +32 -0
  361. data/sig/sentdm/models/channels/supplied_document.rbs +30 -0
  362. data/sig/sentdm/models/channels/whatsapp_channel.rbs +78 -0
  363. data/sig/sentdm/models/channels/whatsapp_create_params.rbs +56 -0
  364. data/sig/sentdm/models/channels_state.rbs +55 -0
  365. data/sig/sentdm/models/compliance_attachment_template.rbs +26 -0
  366. data/sig/sentdm/models/compliance_requirement.rbs +76 -0
  367. data/sig/sentdm/models/compliance_requirements.rbs +66 -0
  368. data/sig/sentdm/models/compliance_retrieve_requirements_params.rbs +43 -0
  369. data/sig/sentdm/models/compliance_setup_step.rbs +62 -0
  370. data/sig/sentdm/models/contact_message_summary.rbs +6 -35
  371. data/sig/sentdm/models/contacts_list.rbs +31 -0
  372. data/sig/sentdm/models/conversation_messages_list.rbs +5 -312
  373. data/sig/sentdm/models/entity_type.rbs +22 -0
  374. data/sig/sentdm/models/inbound_media.rbs +35 -0
  375. data/sig/sentdm/models/inbound_message_event_payload.rbs +4 -36
  376. data/sig/sentdm/models/link_event.rbs +44 -0
  377. data/sig/sentdm/models/link_event_payload.rbs +106 -0
  378. data/sig/sentdm/models/message.rbs +130 -0
  379. data/sig/sentdm/models/message_activities.rbs +38 -0
  380. data/sig/sentdm/models/message_activity.rbs +66 -0
  381. data/sig/sentdm/models/message_body.rbs +52 -0
  382. data/sig/sentdm/models/message_button.rbs +34 -0
  383. data/sig/sentdm/models/message_cancel_params.rbs +38 -0
  384. data/sig/sentdm/models/message_channel_options.rbs +26 -0
  385. data/sig/sentdm/models/message_header_media.rbs +19 -0
  386. data/sig/sentdm/models/message_media.rbs +40 -0
  387. data/sig/sentdm/models/message_recipient.rbs +34 -0
  388. data/sig/sentdm/models/message_send_params.rbs +8 -54
  389. data/sig/sentdm/models/message_send_response.rbs +4 -77
  390. data/sig/sentdm/models/message_send_result.rbs +45 -0
  391. data/sig/sentdm/models/message_status_event.rbs +40 -0
  392. data/sig/sentdm/models/mms_market.rbs +35 -0
  393. data/sig/sentdm/models/number_lookup_result.rbs +64 -0
  394. data/sig/sentdm/models/pagination_cursors.rbs +15 -0
  395. data/sig/sentdm/models/pagination_meta.rbs +4 -16
  396. data/sig/sentdm/models/profile_completion_accepted.rbs +15 -0
  397. data/sig/sentdm/models/profile_completion_result.rbs +19 -0
  398. data/sig/sentdm/models/profile_detail.rbs +8 -315
  399. data/sig/sentdm/models/profiles/brand_campaign.rbs +4 -16
  400. data/sig/sentdm/models/profiles_list.rbs +31 -0
  401. data/sig/sentdm/models/sender_profile.rbs +76 -0
  402. data/sig/sentdm/models/sender_profile_billing.rbs +15 -0
  403. data/sig/sentdm/models/sender_profile_billing_request.rbs +15 -0
  404. data/sig/sentdm/models/sender_profile_channels.rbs +30 -0
  405. data/sig/sentdm/models/sender_profile_create_params.rbs +78 -0
  406. data/sig/sentdm/models/sender_profile_delete_params.rbs +20 -0
  407. data/sig/sentdm/models/sender_profile_list_params.rbs +32 -0
  408. data/sig/sentdm/models/sender_profile_rcs.rbs +150 -0
  409. data/sig/sentdm/models/sender_profile_retrieve_params.rbs +20 -0
  410. data/sig/sentdm/models/sender_profile_sms.rbs +40 -0
  411. data/sig/sentdm/models/sender_profile_update_params.rbs +62 -0
  412. data/sig/sentdm/models/sender_profile_whatsapp.rbs +16 -0
  413. data/sig/sentdm/models/sender_profiles_list.rbs +31 -0
  414. data/sig/sentdm/models/tcr_brand_identity_status.rbs +17 -0
  415. data/sig/sentdm/models/tcr_brand_status.rbs +15 -0
  416. data/sig/sentdm/models/tcr_campaign_status.rbs +15 -0
  417. data/sig/sentdm/models/template_body.rbs +4 -43
  418. data/sig/sentdm/models/template_create_params.rbs +5 -0
  419. data/sig/sentdm/models/template_header.rbs +4 -31
  420. data/sig/sentdm/models/template_header_location.rbs +30 -0
  421. data/sig/sentdm/models/template_media_item.rbs +17 -0
  422. data/sig/sentdm/models/template_mms_body_content.rbs +28 -0
  423. data/sig/sentdm/models/template_ref.rbs +26 -0
  424. data/sig/sentdm/models/template_variable.rbs +4 -51
  425. data/sig/sentdm/models/template_variable_props.rbs +50 -0
  426. data/sig/sentdm/models/templates_list.rbs +29 -0
  427. data/sig/sentdm/models/users_list.rbs +31 -0
  428. data/sig/sentdm/models/voice/call.rbs +4 -49
  429. data/sig/sentdm/models/voice/call_leg.rbs +50 -0
  430. data/sig/sentdm/models/webhook_create_params.rbs +4 -28
  431. data/sig/sentdm/models/webhook_delivery.rbs +99 -0
  432. data/sig/sentdm/models/webhook_event_types_list.rbs +31 -0
  433. data/sig/sentdm/models/webhook_events_list.rbs +31 -0
  434. data/sig/sentdm/models/webhook_response.rbs +4 -28
  435. data/sig/sentdm/models/webhook_secret.rbs +15 -0
  436. data/sig/sentdm/models/webhook_sender_profile.rbs +27 -0
  437. data/sig/sentdm/models/webhook_sender_profile_config.rbs +27 -0
  438. data/sig/sentdm/models/webhook_test.rbs +19 -0
  439. data/sig/sentdm/models/webhook_update_params.rbs +4 -28
  440. data/sig/sentdm/models/webhooks_list.rbs +31 -0
  441. data/sig/sentdm/models.rbs +188 -0
  442. data/sig/sentdm/resources/channels/rcs.rbs +41 -0
  443. data/sig/sentdm/resources/channels/sms.rbs +44 -0
  444. data/sig/sentdm/resources/channels/whatsapp.rbs +18 -0
  445. data/sig/sentdm/resources/channels.rbs +11 -0
  446. data/sig/sentdm/resources/compliance.rbs +15 -0
  447. data/sig/sentdm/resources/conversations.rbs +2 -2
  448. data/sig/sentdm/resources/me.rbs +1 -1
  449. data/sig/sentdm/resources/messages.rbs +12 -4
  450. data/sig/sentdm/resources/numbers.rbs +1 -1
  451. data/sig/sentdm/resources/profiles.rbs +2 -2
  452. data/sig/sentdm/resources/sender_profiles.rbs +44 -0
  453. data/sig/sentdm/resources/templates.rbs +1 -0
  454. data/sig/sentdm/resources/users.rbs +1 -1
  455. data/sig/sentdm/resources/webhooks.rbs +6 -6
  456. metadata +362 -35
  457. data/lib/sentdm/models/me_retrieve_response.rb +0 -409
  458. data/lib/sentdm/models/message_retrieve_activities_response.rb +0 -175
  459. data/lib/sentdm/models/message_retrieve_status_response.rb +0 -477
  460. data/lib/sentdm/models/number_lookup_response.rb +0 -104
  461. data/lib/sentdm/models/profile_complete_response.rb +0 -74
  462. data/lib/sentdm/models/profile_list_response.rb +0 -65
  463. data/lib/sentdm/models/user_list_response.rb +0 -65
  464. data/lib/sentdm/models/webhook_list_event_types_response.rb +0 -65
  465. data/lib/sentdm/models/webhook_list_events_response.rb +0 -445
  466. data/rbi/sentdm/models/me_retrieve_response.rbi +0 -705
  467. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +0 -319
  468. data/rbi/sentdm/models/message_retrieve_status_response.rbi +0 -765
  469. data/rbi/sentdm/models/number_lookup_response.rbi +0 -166
  470. data/rbi/sentdm/models/profile_list_response.rbi +0 -128
  471. data/rbi/sentdm/models/user_list_response.rbi +0 -128
  472. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +0 -142
  473. data/rbi/sentdm/models/webhook_list_events_response.rbi +0 -647
  474. data/sig/sentdm/models/me_retrieve_response.rbs +0 -306
  475. data/sig/sentdm/models/message_retrieve_activities_response.rbs +0 -137
  476. data/sig/sentdm/models/message_retrieve_status_response.rbs +0 -341
  477. data/sig/sentdm/models/number_lookup_response.rbs +0 -100
  478. data/sig/sentdm/models/profile_complete_response.rbs +0 -55
  479. data/sig/sentdm/models/profile_list_response.rbs +0 -67
  480. data/sig/sentdm/models/user_list_response.rbs +0 -67
  481. data/sig/sentdm/models/webhook_list_event_types_response.rbs +0 -67
  482. data/sig/sentdm/models/webhook_list_events_response.rbs +0 -243
  483. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +0 -51
  484. data/sig/sentdm/models/webhook_test_response.rbs +0 -55
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ # @see Sentdm::Resources::SenderProfiles#retrieve
6
+ class SenderProfileRetrieveParams < Sentdm::Internal::Type::BaseModel
7
+ extend Sentdm::Internal::Type::RequestParameters::Converter
8
+ include Sentdm::Internal::Type::RequestParameters
9
+
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,106 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SenderProfileSMS < Sentdm::Internal::Type::BaseModel
6
+ # @!attribute country
7
+ # ISO 3166-1 alpha-2 country the sender operates in, e.g. US.
8
+ #
9
+ # @return [String]
10
+ required :country, String
11
+
12
+ # @!attribute area_codes
13
+ # The area codes to put this sender in, in your own order of preference, e.g.
14
+ # ["415", "628"] for the US or ["20"] for London. Omit it and a number is claimed
15
+ # anywhere in the country.
16
+ #
17
+ # Ordered, and the order is the request. The claim tries each code in turn and
18
+ # stops at the first that yields a number. Nothing sorts the list and a code
19
+ # listed twice is refused.
20
+ #
21
+ # One to fifty entries, each the area code as digits: 415, with the trunk prefix
22
+ # as 020, or with the country's dialing prefix as +1415 (all are stored as the
23
+ # bare code). A dialing prefix from a different country than country is refused.
24
+ # Each code is checked against the country's numbering plan: it must start real
25
+ # local or mobile numbers there, so toll-free and premium ranges, service codes
26
+ # and another country's codes are refused with a reason.
27
+ #
28
+ # LOCAL senders in any country, and US TEN_DLC senders. No other sender type has a
29
+ # geographic area code, and the list is refused with one rather than accepted and
30
+ # dropped.
31
+ #
32
+ # Honoured exactly or not at all. Ask for 415 and you get a 415 number or you get
33
+ # none, never a neighbouring code you did not name. A miss leaves the market with
34
+ # no sender yet and the codes recorded on it, so it is filled when stock appears
35
+ # rather than filled now from somewhere else. Many countries outside North America
36
+ # require address or business documents before a local number can be bought, which
37
+ # can delay or prevent the fill.
38
+ #
39
+ # @return [Array<String>, nil]
40
+ optional :area_codes, Sentdm::Internal::Type::ArrayOf[String], nil?: true
41
+
42
+ # @!attribute number_type
43
+ # Sender type: LOCAL, MOBILE, TEN_DLC, TOLL_FREE, SHORT_CODE or ALPHANUMERIC.
44
+ # 10DLC is accepted as a synonym of TEN_DLC. Availability varies by country.
45
+ #
46
+ # @return [String, nil]
47
+ optional :number_type, String, nil?: true
48
+
49
+ # @!attribute numbers
50
+ # The numbers to assign, one entry per area code, e.g. [{"area_code": "212",
51
+ # "quantity": 2}, {"area_code": "415"}, {"quantity": 1}]: two numbers in 212, one
52
+ # in 415 and one in any area code. quantity defaults to 1, and an entry without
53
+ # area_code means any area code. Omit numbers for one number.
54
+ #
55
+ # Only with LOCAL or TEN_DLC, and not together with area_codes. Each area code is
56
+ # validated against country the same way area_codes is and may appear once, and at
57
+ # most one entry may leave area_code out. US TEN_DLC numbers are assigned when the
58
+ # campaign is approved, not at request time. Not available when the profile
59
+ # inherits the organization's campaign.
60
+ #
61
+ # @return [Array<Sentdm::Models::Channels::SMSNumberRequest>, nil]
62
+ optional :numbers,
63
+ -> {
64
+ Sentdm::Internal::Type::ArrayOf[Sentdm::Channels::SMSNumberRequest]
65
+ },
66
+ nil?: true
67
+
68
+ # @!attribute sender_value
69
+ # The sender's identity, where the caller chooses it rather than the carrier
70
+ # assigning it. Required when number_type is ALPHANUMERIC; omit for
71
+ # carrier-assigned types and one is provisioned.
72
+ #
73
+ # @return [String, nil]
74
+ optional :sender_value, String, nil?: true
75
+
76
+ # @!method initialize(country:, area_codes: nil, number_type: nil, numbers: nil, sender_value: nil)
77
+ # Some parameter documentations has been truncated, see
78
+ # {Sentdm::Models::SenderProfileSMS} for more details.
79
+ #
80
+ # One SMS market a profile sends in — a country and a sender type.
81
+ #
82
+ # A profile may have several. It is a tenant, not a market: a business sending to
83
+ # two countries is one customer of yours, and forcing it into two profiles would
84
+ # give it two API keys, two inboxes and two contact lists for one business. The
85
+ # platform already assumes many — CustomerChannelProviders is unique on (customer,
86
+ # channel, iso, number).
87
+ #
88
+ # No mode: a sender is the profile's own or it has none. Listing a market is the
89
+ # request for one.
90
+ #
91
+ # Also the discriminator for everything else: the compliance catalog is keyed on
92
+ # (country, number type), and that pair decides which fields brand accepts and
93
+ # what compliance is asked for.
94
+ #
95
+ # @param country [String] ISO 3166-1 alpha-2 country the sender operates in, e.g. US.
96
+ #
97
+ # @param area_codes [Array<String>, nil] The area codes to put this sender in, in your own order of preference, e.g. ["41
98
+ #
99
+ # @param number_type [String, nil] Sender type: LOCAL, MOBILE, TEN_DLC, TOLL_FREE, SHORT_CODE or
100
+ #
101
+ # @param numbers [Array<Sentdm::Models::Channels::SMSNumberRequest>, nil] The numbers to assign, one entry per area code, e.g.
102
+ #
103
+ # @param sender_value [String, nil] The sender's identity, where the caller chooses it rather than the carrier assig
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ # @see Sentdm::Resources::SenderProfiles#update
6
+ class SenderProfileUpdateParams < Sentdm::Internal::Type::BaseModel
7
+ extend Sentdm::Internal::Type::RequestParameters::Converter
8
+ include Sentdm::Internal::Type::RequestParameters
9
+
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!attribute description
16
+ #
17
+ # @return [String, nil]
18
+ optional :description, String, nil?: true
19
+
20
+ # @!attribute name
21
+ #
22
+ # @return [String, nil]
23
+ optional :name, String
24
+
25
+ # @!attribute notifications
26
+ # Who is notified about this profile's events: ORGANIZATION, SENDER_PROFILE, or
27
+ # ORGANIZATION_AND_SENDER_PROFILE. Cannot be cleared — a supplied value must be
28
+ # one of those.
29
+ #
30
+ # @return [String, nil]
31
+ optional :notifications, String, nil?: true
32
+
33
+ # @!attribute sandbox
34
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
35
+ # for testing integrations without actual execution
36
+ #
37
+ # @return [Boolean, nil]
38
+ optional :sandbox, Sentdm::Internal::Type::Boolean
39
+
40
+ # @!attribute short_name
41
+ #
42
+ # @return [String, nil]
43
+ optional :short_name, String, nil?: true
44
+
45
+ # @!attribute idempotency_key
46
+ #
47
+ # @return [String, nil]
48
+ optional :idempotency_key, String
49
+
50
+ # @!method initialize(id:, description: nil, name: nil, notifications: nil, sandbox: nil, short_name: nil, idempotency_key: nil, request_options: {})
51
+ # Some parameter documentations has been truncated, see
52
+ # {Sentdm::Models::SenderProfileUpdateParams} for more details.
53
+ #
54
+ # @param id [String]
55
+ #
56
+ # @param description [String, nil]
57
+ #
58
+ # @param name [String]
59
+ #
60
+ # @param notifications [String, nil] Who is notified about this profile's events: ORGANIZATION, SENDER_PROFILE, or
61
+ #
62
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
63
+ #
64
+ # @param short_name [String, nil]
65
+ #
66
+ # @param idempotency_key [String]
67
+ #
68
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SenderProfileWhatsapp < Sentdm::Internal::Type::BaseModel
6
+ # @!attribute phone_number_id
7
+ # The Meta phone-number id this profile sends from. Must already be registered
8
+ # under WabaId.
9
+ #
10
+ # Optional. Omit it to attach the account now and settle the number later: the
11
+ # channel reads as ACTION_NEEDED with CHANNEL_007, and the profile's WhatsApp
12
+ # messages fail until a number is named. They do not fall back to the
13
+ # organization's account. Nothing picks one on your behalf.
14
+ #
15
+ # @return [String, nil]
16
+ optional :phone_number_id, String, nil?: true
17
+
18
+ # @!attribute waba_id
19
+ # WhatsApp Business Account id — one of the accounts shared into your
20
+ # organization. Required: the organization holds one per client, and nothing but
21
+ # the caller says which belongs to this profile.
22
+ #
23
+ # @return [String, nil]
24
+ optional :waba_id, String, nil?: true
25
+
26
+ # @!method initialize(phone_number_id: nil, waba_id: nil)
27
+ # Some parameter documentations has been truncated, see
28
+ # {Sentdm::Models::SenderProfileWhatsapp} for more details.
29
+ #
30
+ # The profile's own WhatsApp Business Account, named by the two identifiers the
31
+ # organization cannot answer for you.
32
+ #
33
+ # No mode: a profile's WABA is its own or it has none. Sharing the organization's
34
+ # would mean sharing its inbox and its throughput, which makes the two
35
+ # indistinguishable to a recipient — so inheriting is not offered rather than
36
+ # refused.
37
+ #
38
+ # Everything derivable is derived. Whenever this block is present, the solution
39
+ # the account arrived through, the client business portfolio that owns it, the
40
+ # access token and that token's expiry are all resolved from the organization by
41
+ # IPartnerSolutionService.ResolveAccountCredentialsAsync — the first two off the
42
+ # org's shared-account listing, the token minted against the org's own solution.
43
+ # They were previously asked for and are no longer accepted: solution_id and
44
+ # owner_business_id are Meta's answer about provenance, so taking them from the
45
+ # caller let a request assert a partnership Meta disagreed with, and the listing
46
+ # has to be consulted regardless because it is what proves the account is one this
47
+ # organization may reach.
48
+ #
49
+ # No access token, and there never was one here: it is minted per client business
50
+ # portfolio and rotates roughly every sixty days, so a pasted value would be stale
51
+ # before it was useful. Asking a customer to mint a System User token in Meta
52
+ # Business Manager is skilled work in a console they were never meant to see, and
53
+ # it would say nothing about which solution the account came from or when it is
54
+ # revoked.
55
+ #
56
+ # @param phone_number_id [String, nil] The Meta phone-number id this profile sends from. Must already be registered und
57
+ #
58
+ # @param waba_id [String, nil] WhatsApp Business Account id — one of the accounts shared into your organization
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class SenderProfilesList < Sentdm::Internal::Type::BaseModel
6
+ # @!attribute pagination
7
+ # Pagination metadata for list responses
8
+ #
9
+ # @return [Sentdm::Models::PaginationMeta, nil]
10
+ optional :pagination, -> { Sentdm::PaginationMeta }
11
+
12
+ # @!attribute sender_profiles
13
+ # The sender_profiles on this page.
14
+ #
15
+ # @return [Array<Sentdm::Models::SenderProfile>, nil]
16
+ optional :sender_profiles, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::SenderProfile] }
17
+
18
+ # @!method initialize(pagination: nil, sender_profiles: nil)
19
+ # A paginated list of sender profiles.
20
+ #
21
+ # @param pagination [Sentdm::Models::PaginationMeta] Pagination metadata for list responses
22
+ #
23
+ # @param sender_profiles [Array<Sentdm::Models::SenderProfile>] The sender_profiles on this page.
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module TcrBrandIdentityStatus
6
+ extend Sentdm::Internal::Type::Enum
7
+
8
+ SELF_DECLARED = :SELF_DECLARED
9
+ UNVERIFIED = :UNVERIFIED
10
+ VERIFIED = :VERIFIED
11
+ VETTED_VERIFIED = :VETTED_VERIFIED
12
+
13
+ # @!method self.values
14
+ # @return [Array<Symbol>]
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module TcrBrandStatus
6
+ extend Sentdm::Internal::Type::Enum
7
+
8
+ ACTIVE = :ACTIVE
9
+ INACTIVE = :INACTIVE
10
+ SUSPENDED = :SUSPENDED
11
+
12
+ # @!method self.values
13
+ # @return [Array<Symbol>]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module TcrCampaignStatus
6
+ extend Sentdm::Internal::Type::Enum
7
+
8
+ SENT_CREATED = :SENT_CREATED
9
+ ACTIVE = :ACTIVE
10
+ EXPIRED = :EXPIRED
11
+
12
+ # @!method self.values
13
+ # @return [Array<Symbol>]
14
+ end
15
+ end
16
+ end
@@ -12,8 +12,8 @@ module Sentdm
12
12
  # MMS-specific copy, a subject or attachments. When present it replaces that body
13
13
  # on MMS rather than adding to it.
14
14
  #
15
- # @return [Sentdm::Models::TemplateBody::Mms, nil]
16
- optional :mms, -> { Sentdm::TemplateBody::Mms }, nil?: true
15
+ # @return [Sentdm::Models::TemplateMmsBodyContent, nil]
16
+ optional :mms, -> { Sentdm::TemplateMmsBodyContent }, nil?: true
17
17
 
18
18
  # @!attribute multi_channel
19
19
  # The shared body, used for every channel. One half of the choice described above.
@@ -56,7 +56,7 @@ module Sentdm
56
56
  # channel. rcs is the one true override: it may accompany either strategy to vary
57
57
  # the copy, but cannot stand alone.
58
58
  #
59
- # @param mms [Sentdm::Models::TemplateBody::Mms, nil] MMS-specific content — subject, text and attachments.
59
+ # @param mms [Sentdm::Models::TemplateMmsBodyContent, nil] MMS-specific content — subject, text and attachments.
60
60
  #
61
61
  # @param multi_channel [Sentdm::Models::TemplateBodyContent, nil] The shared body, used for every channel. One half of the choice described above.
62
62
  #
@@ -65,73 +65,6 @@ module Sentdm
65
65
  # @param sms [Sentdm::Models::TemplateBodyContent, nil] The SMS body. It does not override multiChannel, it replaces it.
66
66
  #
67
67
  # @param whatsapp [Sentdm::Models::TemplateBodyContent, nil] The WhatsApp body. It does not override multiChannel, it replaces it.
68
-
69
- # @see Sentdm::Models::TemplateBody#mms
70
- class Mms < Sentdm::Models::TemplateBodyContent
71
- # @!attribute media
72
- # Attachments carried by every send on this template, in order. A per-send
73
- # media_urls on the request replaces this list rather than adding to it, so a
74
- # template can hold a default creative and a caller can still send something
75
- # recipient-specific.
76
- #
77
- # @return [Array<Sentdm::Models::TemplateBody::Mms::Media>, nil]
78
- optional :media, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateBody::Mms::Media] }, nil?: true
79
-
80
- # @!attribute subject
81
- # MMS subject line. Optional — most handsets render it above the body, some ignore
82
- # it entirely. Deliberately its own field rather than riding TemplateHeader: the
83
- # header is authored once and shared across every channel, and carries Meta's
84
- # 60-character cap plus its no-newline, no-emoji text rules, none of which
85
- # describe an MMS subject.
86
- #
87
- # @return [String, nil]
88
- optional :subject, String, nil?: true
89
-
90
- # @!method initialize(media: nil, subject: nil)
91
- # Some parameter documentations has been truncated, see
92
- # {Sentdm::Models::TemplateBody::Mms} for more details.
93
- #
94
- # MMS-specific content — subject, text and attachments.
95
- #
96
- # Like Rcs, an override that cannot stand on its own: a template still needs a
97
- # MultiChannel body or the Sms + Whatsapp pair to be deliverable at all. Without
98
- # this slot MMS renders the shared or SMS body, so it is only needed for
99
- # MMS-specific copy, a subject or attachments. When present it replaces that body
100
- # on MMS rather than adding to it.
101
- #
102
- # @param media [Array<Sentdm::Models::TemplateBody::Mms::Media>, nil] Attachments carried by every send on this template, in order. A per-send media_u
103
- #
104
- # @param subject [String, nil] MMS subject line. Optional — most handsets render it above the body, some ignore
105
-
106
- class Media < Sentdm::Internal::Type::BaseModel
107
- # @!attribute media_type
108
- # One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
109
- # fetched object, not this field. It exists so an authoring UI can render the
110
- # right preview and so a reviewer can see what was intended.
111
- #
112
- # @return [String, nil]
113
- optional :media_type, String, api_name: :mediaType, nil?: true
114
-
115
- # @!attribute url
116
- # Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
117
- # it has to stay reachable and unauthenticated for the life of the send —
118
- # including retries and a DLQ replay — which is why a presigned URL is not a valid
119
- # value here.
120
- #
121
- # @return [String, nil]
122
- optional :url, String
123
-
124
- # @!method initialize(media_type: nil, url: nil)
125
- # Some parameter documentations has been truncated, see
126
- # {Sentdm::Models::TemplateBody::Mms::Media} for more details.
127
- #
128
- # One attachment on an MMS template body.
129
- #
130
- # @param media_type [String, nil] One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
131
- #
132
- # @param url [String] Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so i
133
- end
134
- end
135
68
  end
136
69
  end
137
70
  end
@@ -41,6 +41,14 @@ module Sentdm
41
41
  # @return [String, nil]
42
42
  optional :language, String, nil?: true
43
43
 
44
+ # @!attribute name
45
+ # Template display name (optional). When omitted or blank, a name is generated
46
+ # from the template's content. It can be changed afterwards with PUT
47
+ # /v3/templates/{id}.
48
+ #
49
+ # @return [String, nil]
50
+ optional :name, String, nil?: true
51
+
44
52
  # @!attribute sandbox
45
53
  # Sandbox flag - when true, the operation is simulated without side effects Useful
46
54
  # for testing integrations without actual execution
@@ -64,7 +72,7 @@ module Sentdm
64
72
  # @return [String, nil]
65
73
  optional :x_profile_id, String
66
74
 
67
- # @!method initialize(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
75
+ # @!method initialize(auto_create_for_sp: nil, category: nil, creation_source: nil, definition: nil, language: nil, name: nil, sandbox: nil, submit_for_review: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
68
76
  # Some parameter documentations has been truncated, see
69
77
  # {Sentdm::Models::TemplateCreateParams} for more details.
70
78
  #
@@ -78,6 +86,8 @@ module Sentdm
78
86
  #
79
87
  # @param language [String, nil] Template language code (e.g., en_US) (optional, auto-detected if not provided)
80
88
  #
89
+ # @param name [String, nil] Template display name (optional). When omitted or blank, a name is generated fro
90
+ #
81
91
  # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
82
92
  #
83
93
  # @param submit_for_review [Boolean] Whether to submit the template for review after creation (default: false)
@@ -32,8 +32,8 @@ module Sentdm
32
32
  # for Sent: a preview, and the default a StaticResource header falls back to at
33
33
  # send.
34
34
  #
35
- # @return [Sentdm::Models::TemplateHeader::Location, nil]
36
- optional :location, -> { Sentdm::TemplateHeader::Location }, nil?: true
35
+ # @return [Sentdm::Models::TemplateHeaderLocation, nil]
36
+ optional :location, -> { Sentdm::TemplateHeaderLocation }, nil?: true
37
37
 
38
38
  # @!attribute static_resource
39
39
  # Whether the asset registered at creation is reused when a caller omits the
@@ -80,47 +80,13 @@ module Sentdm
80
80
  #
81
81
  # @param example_url [String, nil] Request-only. The s.dm URL of the asset Meta's reviewers see — https://s.dm/s/{I
82
82
  #
83
- # @param location [Sentdm::Models::TemplateHeader::Location, nil] The map pin a location header drops. Meta wants none of this at creation — the c
83
+ # @param location [Sentdm::Models::TemplateHeaderLocation, nil] The map pin a location header drops. Meta wants none of this at creation — the c
84
84
  #
85
85
  # @param static_resource [Boolean] Whether the asset registered at creation is reused when a caller omits the heade
86
86
  #
87
87
  # @param type [String, nil] The kind of header. One of:
88
88
  #
89
89
  # @param variables [Array<Sentdm::Models::TemplateVariable>, nil] List of variables used in the header template
90
-
91
- # @see Sentdm::Models::TemplateHeader#location
92
- class Location < Sentdm::Internal::Type::BaseModel
93
- # @!attribute address
94
- #
95
- # @return [String]
96
- required :address, String
97
-
98
- # @!attribute latitude
99
- #
100
- # @return [String]
101
- required :latitude, String
102
-
103
- # @!attribute longitude
104
- #
105
- # @return [String]
106
- required :longitude, String
107
-
108
- # @!attribute name
109
- #
110
- # @return [String]
111
- required :name, String
112
-
113
- # @!method initialize(address:, latitude:, longitude:, name:)
114
- # The map pin a location header drops. Meta wants none of this at creation — the
115
- # component is just {"type":"header","format":"location"} — so these values exist
116
- # for Sent: a preview, and the default a StaticResource header falls back to at
117
- # send.
118
- #
119
- # @param address [String]
120
- # @param latitude [String]
121
- # @param longitude [String]
122
- # @param name [String]
123
- end
124
90
  end
125
91
  end
126
92
  end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class TemplateHeaderLocation < Sentdm::Internal::Type::BaseModel
6
+ # @!attribute address
7
+ #
8
+ # @return [String]
9
+ required :address, String
10
+
11
+ # @!attribute latitude
12
+ #
13
+ # @return [String]
14
+ required :latitude, String
15
+
16
+ # @!attribute longitude
17
+ #
18
+ # @return [String]
19
+ required :longitude, String
20
+
21
+ # @!attribute name
22
+ #
23
+ # @return [String]
24
+ required :name, String
25
+
26
+ # @!method initialize(address:, latitude:, longitude:, name:)
27
+ # The map pin a location header drops. Meta wants none of this at creation — the
28
+ # component is just {"type":"header","format":"location"} — so these values exist
29
+ # for Sent: a preview, and the default a StaticResource header falls back to at
30
+ # send.
31
+ #
32
+ # @param address [String]
33
+ # @param latitude [String]
34
+ # @param longitude [String]
35
+ # @param name [String]
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class TemplateMediaItem < Sentdm::Internal::Type::BaseModel
6
+ # @!attribute media_type
7
+ # One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
8
+ # fetched object, not this field. It exists so an authoring UI can render the
9
+ # right preview and so a reviewer can see what was intended.
10
+ #
11
+ # @return [String, nil]
12
+ optional :media_type, String, api_name: :mediaType, nil?: true
13
+
14
+ # @!attribute url
15
+ # Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
16
+ # it has to stay reachable and unauthenticated for the life of the send —
17
+ # including retries and a DLQ replay — which is why a presigned URL is not a valid
18
+ # value here.
19
+ #
20
+ # @return [String, nil]
21
+ optional :url, String
22
+
23
+ # @!method initialize(media_type: nil, url: nil)
24
+ # Some parameter documentations has been truncated, see
25
+ # {Sentdm::Models::TemplateMediaItem} for more details.
26
+ #
27
+ # One attachment on an MMS template body.
28
+ #
29
+ # @param media_type [String, nil] One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
30
+ #
31
+ # @param url [String] Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so i
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ class TemplateMmsBodyContent < Sentdm::Models::TemplateBodyContent
6
+ # @!attribute media
7
+ # Attachments carried by every send on this template, in order. A per-send
8
+ # media_urls on the request replaces this list rather than adding to it, so a
9
+ # template can hold a default creative and a caller can still send something
10
+ # recipient-specific.
11
+ #
12
+ # @return [Array<Sentdm::Models::TemplateMediaItem>, nil]
13
+ optional :media, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::TemplateMediaItem] }, nil?: true
14
+
15
+ # @!attribute subject
16
+ # MMS subject line. Optional — most handsets render it above the body, some ignore
17
+ # it entirely. Deliberately its own field rather than riding TemplateHeader: the
18
+ # header is authored once and shared across every channel, and carries Meta's
19
+ # 60-character cap plus its no-newline, no-emoji text rules, none of which
20
+ # describe an MMS subject.
21
+ #
22
+ # @return [String, nil]
23
+ optional :subject, String, nil?: true
24
+
25
+ # @!method initialize(media: nil, subject: nil)
26
+ # Some parameter documentations has been truncated, see
27
+ # {Sentdm::Models::TemplateMmsBodyContent} for more details.
28
+ #
29
+ # MMS-specific body content.
30
+ #
31
+ # Why MMS needs its own type when the other channels share one: it is the only
32
+ # channel with a subject line and the only one with attachments. Every other
33
+ # channel's body is text and variables, which is exactly what TemplateBodyContent
34
+ # already is. Putting Subject and Media on the shared type instead would give sms,
35
+ # whatsapp and rcs two members none of them can ever use.
36
+ #
37
+ # Derives from TemplateBodyContent so that every existing consumer of a body slot
38
+ # — MessageUtils.ConvertVariableToReadable,
39
+ # TemplateDefinition.GetRequiredVariables,
40
+ # TemplateDefinitionValidator.ApplyBodyContentRules — reads it with no change. The
41
+ # two extra members are what the MMS strategy and the provider request need on
42
+ # top.
43
+ #
44
+ # @param media [Array<Sentdm::Models::TemplateMediaItem>, nil] Attachments carried by every send on this template, in order. A per-send media_u
45
+ #
46
+ # @param subject [String, nil] MMS subject line. Optional — most handsets render it above the body, some ignore
47
+ end
48
+ end
49
+ end