sentdm 0.45.0 → 0.47.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 (483) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -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 +148 -0
  54. data/lib/sentdm/models/channels/sms_number.rb +52 -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_campaign.rb +10 -0
  59. data/lib/sentdm/models/channels/supplied_compliance.rb +115 -0
  60. data/lib/sentdm/models/channels/supplied_document.rb +35 -0
  61. data/lib/sentdm/models/channels/whatsapp_channel.rb +109 -0
  62. data/lib/sentdm/models/channels/whatsapp_create_params.rb +65 -0
  63. data/lib/sentdm/models/channels_state.rb +89 -0
  64. data/lib/sentdm/models/compliance_attachment_template.rb +36 -0
  65. data/lib/sentdm/models/compliance_requirement.rb +112 -0
  66. data/lib/sentdm/models/compliance_requirements.rb +98 -0
  67. data/lib/sentdm/models/compliance_retrieve_requirements_params.rb +52 -0
  68. data/lib/sentdm/models/compliance_setup_step.rb +78 -0
  69. data/lib/sentdm/models/contact_message_summary.rb +3 -34
  70. data/lib/sentdm/models/contacts_list.rb +26 -0
  71. data/lib/sentdm/models/conversation_messages_list.rb +3 -430
  72. data/lib/sentdm/models/entity_type.rb +18 -0
  73. data/lib/sentdm/models/inbound_media.rb +53 -0
  74. data/lib/sentdm/models/inbound_message_event_payload.rb +3 -53
  75. data/lib/sentdm/models/link_event.rb +79 -0
  76. data/lib/sentdm/models/link_event_payload.rb +211 -0
  77. data/lib/sentdm/models/message.rb +168 -0
  78. data/lib/sentdm/models/message_activities.rb +34 -0
  79. data/lib/sentdm/models/message_activity.rb +105 -0
  80. data/lib/sentdm/models/message_body.rb +79 -0
  81. data/lib/sentdm/models/message_button.rb +33 -0
  82. data/lib/sentdm/models/message_cancel_params.rb +32 -0
  83. data/lib/sentdm/models/message_channel_options.rb +43 -0
  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 +14 -16
  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_header.rb +3 -37
  118. data/lib/sentdm/models/template_header_location.rb +38 -0
  119. data/lib/sentdm/models/template_media_item.rb +34 -0
  120. data/lib/sentdm/models/template_mms_body_content.rb +49 -0
  121. data/lib/sentdm/models/template_ref.rb +51 -0
  122. data/lib/sentdm/models/template_variable.rb +3 -64
  123. data/lib/sentdm/models/template_variable_props.rb +65 -0
  124. data/lib/sentdm/models/templates_list.rb +26 -0
  125. data/lib/sentdm/models/users_list.rb +26 -0
  126. data/lib/sentdm/models/voice/call.rb +7 -57
  127. data/lib/sentdm/models/voice/call_leg.rb +58 -0
  128. data/lib/sentdm/models/webhook_create_params.rb +3 -25
  129. data/lib/sentdm/models/webhook_delivery.rb +160 -0
  130. data/lib/sentdm/models/webhook_event_types_list.rb +26 -0
  131. data/lib/sentdm/models/webhook_events_list.rb +26 -0
  132. data/lib/sentdm/models/webhook_response.rb +3 -28
  133. data/lib/sentdm/models/webhook_secret.rb +15 -0
  134. data/lib/sentdm/models/webhook_sender_profile.rb +29 -0
  135. data/lib/sentdm/models/webhook_sender_profile_config.rb +27 -0
  136. data/lib/sentdm/models/webhook_test.rb +21 -0
  137. data/lib/sentdm/models/webhook_update_params.rb +3 -25
  138. data/lib/sentdm/models/webhooks_list.rb +26 -0
  139. data/lib/sentdm/models.rb +188 -0
  140. data/lib/sentdm/resources/channels/rcs.rb +177 -0
  141. data/lib/sentdm/resources/channels/sms.rb +420 -0
  142. data/lib/sentdm/resources/channels/whatsapp.rb +106 -0
  143. data/lib/sentdm/resources/channels.rb +162 -0
  144. data/lib/sentdm/resources/compliance.rb +127 -0
  145. data/lib/sentdm/resources/conversations.rb +4 -4
  146. data/lib/sentdm/resources/me.rb +2 -2
  147. data/lib/sentdm/resources/messages.rb +71 -6
  148. data/lib/sentdm/resources/numbers.rb +2 -2
  149. data/lib/sentdm/resources/profiles/campaigns.rb +4 -1
  150. data/lib/sentdm/resources/profiles.rb +4 -4
  151. data/lib/sentdm/resources/sender_profiles.rb +465 -0
  152. data/lib/sentdm/resources/users.rb +2 -2
  153. data/lib/sentdm/resources/voice/calls/participants.rb +5 -5
  154. data/lib/sentdm/resources/webhooks.rb +10 -10
  155. data/lib/sentdm/version.rb +1 -1
  156. data/lib/sentdm.rb +121 -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 +235 -0
  206. data/rbi/sentdm/models/channels/sms_number.rbi +74 -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_campaign.rbi +13 -0
  211. data/rbi/sentdm/models/channels/supplied_compliance.rbi +180 -0
  212. data/rbi/sentdm/models/channels/supplied_document.rbi +57 -0
  213. data/rbi/sentdm/models/channels/whatsapp_channel.rbi +172 -0
  214. data/rbi/sentdm/models/channels/whatsapp_create_params.rbi +104 -0
  215. data/rbi/sentdm/models/channels_state.rbi +151 -0
  216. data/rbi/sentdm/models/compliance_attachment_template.rbi +56 -0
  217. data/rbi/sentdm/models/compliance_requirement.rbi +149 -0
  218. data/rbi/sentdm/models/compliance_requirements.rbi +165 -0
  219. data/rbi/sentdm/models/compliance_retrieve_requirements_params.rbi +79 -0
  220. data/rbi/sentdm/models/compliance_setup_step.rbi +115 -0
  221. data/rbi/sentdm/models/contact_message_summary.rbi +4 -69
  222. data/rbi/sentdm/models/contacts_list.rbi +50 -0
  223. data/rbi/sentdm/models/conversation_messages_list.rbi +4 -669
  224. data/rbi/sentdm/models/entity_type.rbi +23 -0
  225. data/rbi/sentdm/models/inbound_media.rbi +76 -0
  226. data/rbi/sentdm/models/inbound_message_event_payload.rbi +3 -85
  227. data/rbi/sentdm/models/link_event.rbi +128 -0
  228. data/rbi/sentdm/models/link_event_payload.rbi +279 -0
  229. data/rbi/sentdm/models/message.rbi +214 -0
  230. data/rbi/sentdm/models/message_activities.rbi +63 -0
  231. data/rbi/sentdm/models/message_activity.rbi +145 -0
  232. data/rbi/sentdm/models/message_body.rbi +104 -0
  233. data/rbi/sentdm/models/message_button.rbi +52 -0
  234. data/rbi/sentdm/models/message_cancel_params.rbi +59 -0
  235. data/rbi/sentdm/models/message_channel_options.rbi +65 -0
  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 +18 -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_header.rbi +4 -53
  270. data/rbi/sentdm/models/template_header_location.rbi +47 -0
  271. data/rbi/sentdm/models/template_media_item.rbi +51 -0
  272. data/rbi/sentdm/models/template_mms_body_content.rbi +73 -0
  273. data/rbi/sentdm/models/template_ref.rbi +79 -0
  274. data/rbi/sentdm/models/template_variable.rbi +4 -80
  275. data/rbi/sentdm/models/template_variable_props.rbi +81 -0
  276. data/rbi/sentdm/models/templates_list.rbi +50 -0
  277. data/rbi/sentdm/models/users_list.rbi +50 -0
  278. data/rbi/sentdm/models/voice/call.rbi +11 -92
  279. data/rbi/sentdm/models/voice/call_leg.rbi +90 -0
  280. data/rbi/sentdm/models/webhook_create_params.rbi +4 -49
  281. data/rbi/sentdm/models/webhook_delivery.rbi +211 -0
  282. data/rbi/sentdm/models/webhook_event_types_list.rbi +54 -0
  283. data/rbi/sentdm/models/webhook_events_list.rbi +52 -0
  284. data/rbi/sentdm/models/webhook_response.rbi +4 -50
  285. data/rbi/sentdm/models/webhook_secret.rbi +24 -0
  286. data/rbi/sentdm/models/webhook_sender_profile.rbi +46 -0
  287. data/rbi/sentdm/models/webhook_sender_profile_config.rbi +44 -0
  288. data/rbi/sentdm/models/webhook_test.rbi +32 -0
  289. data/rbi/sentdm/models/webhook_update_params.rbi +4 -49
  290. data/rbi/sentdm/models/webhooks_list.rbi +50 -0
  291. data/rbi/sentdm/models.rbi +197 -0
  292. data/rbi/sentdm/resources/channels/rcs.rbi +208 -0
  293. data/rbi/sentdm/resources/channels/sms.rbi +440 -0
  294. data/rbi/sentdm/resources/channels/whatsapp.rbi +108 -0
  295. data/rbi/sentdm/resources/channels.rbi +149 -0
  296. data/rbi/sentdm/resources/compliance.rbi +121 -0
  297. data/rbi/sentdm/resources/conversations.rbi +2 -10
  298. data/rbi/sentdm/resources/me.rbi +1 -1
  299. data/rbi/sentdm/resources/messages.rbi +64 -7
  300. data/rbi/sentdm/resources/numbers.rbi +1 -1
  301. data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -1
  302. data/rbi/sentdm/resources/profiles.rbi +2 -2
  303. data/rbi/sentdm/resources/sender_profiles.rbi +463 -0
  304. data/rbi/sentdm/resources/users.rbi +1 -1
  305. data/rbi/sentdm/resources/voice/calls/participants.rbi +5 -5
  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 +80 -0
  356. data/sig/sentdm/models/channels/sms_number.rbs +37 -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_campaign.rbs +9 -0
  361. data/sig/sentdm/models/channels/supplied_compliance.rbs +37 -0
  362. data/sig/sentdm/models/channels/supplied_document.rbs +30 -0
  363. data/sig/sentdm/models/channels/whatsapp_channel.rbs +78 -0
  364. data/sig/sentdm/models/channels/whatsapp_create_params.rbs +56 -0
  365. data/sig/sentdm/models/channels_state.rbs +55 -0
  366. data/sig/sentdm/models/compliance_attachment_template.rbs +26 -0
  367. data/sig/sentdm/models/compliance_requirement.rbs +76 -0
  368. data/sig/sentdm/models/compliance_requirements.rbs +66 -0
  369. data/sig/sentdm/models/compliance_retrieve_requirements_params.rbs +43 -0
  370. data/sig/sentdm/models/compliance_setup_step.rbs +62 -0
  371. data/sig/sentdm/models/contact_message_summary.rbs +6 -35
  372. data/sig/sentdm/models/contacts_list.rbs +31 -0
  373. data/sig/sentdm/models/conversation_messages_list.rbs +5 -312
  374. data/sig/sentdm/models/entity_type.rbs +22 -0
  375. data/sig/sentdm/models/inbound_media.rbs +35 -0
  376. data/sig/sentdm/models/inbound_message_event_payload.rbs +4 -36
  377. data/sig/sentdm/models/link_event.rbs +44 -0
  378. data/sig/sentdm/models/link_event_payload.rbs +106 -0
  379. data/sig/sentdm/models/message.rbs +130 -0
  380. data/sig/sentdm/models/message_activities.rbs +38 -0
  381. data/sig/sentdm/models/message_activity.rbs +66 -0
  382. data/sig/sentdm/models/message_body.rbs +52 -0
  383. data/sig/sentdm/models/message_button.rbs +34 -0
  384. data/sig/sentdm/models/message_cancel_params.rbs +38 -0
  385. data/sig/sentdm/models/message_channel_options.rbs +26 -0
  386. data/sig/sentdm/models/message_header_media.rbs +19 -0
  387. data/sig/sentdm/models/message_media.rbs +40 -0
  388. data/sig/sentdm/models/message_recipient.rbs +34 -0
  389. data/sig/sentdm/models/message_send_params.rbs +8 -54
  390. data/sig/sentdm/models/message_send_response.rbs +4 -77
  391. data/sig/sentdm/models/message_send_result.rbs +45 -0
  392. data/sig/sentdm/models/message_status_event.rbs +40 -0
  393. data/sig/sentdm/models/mms_market.rbs +35 -0
  394. data/sig/sentdm/models/number_lookup_result.rbs +64 -0
  395. data/sig/sentdm/models/pagination_cursors.rbs +15 -0
  396. data/sig/sentdm/models/pagination_meta.rbs +4 -16
  397. data/sig/sentdm/models/profile_completion_accepted.rbs +15 -0
  398. data/sig/sentdm/models/profile_completion_result.rbs +19 -0
  399. data/sig/sentdm/models/profile_detail.rbs +8 -315
  400. data/sig/sentdm/models/profiles/brand_campaign.rbs +11 -16
  401. data/sig/sentdm/models/profiles_list.rbs +31 -0
  402. data/sig/sentdm/models/sender_profile.rbs +76 -0
  403. data/sig/sentdm/models/sender_profile_billing.rbs +15 -0
  404. data/sig/sentdm/models/sender_profile_billing_request.rbs +15 -0
  405. data/sig/sentdm/models/sender_profile_channels.rbs +30 -0
  406. data/sig/sentdm/models/sender_profile_create_params.rbs +78 -0
  407. data/sig/sentdm/models/sender_profile_delete_params.rbs +20 -0
  408. data/sig/sentdm/models/sender_profile_list_params.rbs +32 -0
  409. data/sig/sentdm/models/sender_profile_rcs.rbs +150 -0
  410. data/sig/sentdm/models/sender_profile_retrieve_params.rbs +20 -0
  411. data/sig/sentdm/models/sender_profile_sms.rbs +40 -0
  412. data/sig/sentdm/models/sender_profile_update_params.rbs +62 -0
  413. data/sig/sentdm/models/sender_profile_whatsapp.rbs +16 -0
  414. data/sig/sentdm/models/sender_profiles_list.rbs +31 -0
  415. data/sig/sentdm/models/tcr_brand_identity_status.rbs +17 -0
  416. data/sig/sentdm/models/tcr_brand_status.rbs +15 -0
  417. data/sig/sentdm/models/tcr_campaign_status.rbs +15 -0
  418. data/sig/sentdm/models/template_body.rbs +4 -43
  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/users.rbs +1 -1
  454. data/sig/sentdm/resources/webhooks.rbs +6 -6
  455. metadata +365 -35
  456. data/lib/sentdm/models/me_retrieve_response.rb +0 -409
  457. data/lib/sentdm/models/message_retrieve_activities_response.rb +0 -175
  458. data/lib/sentdm/models/message_retrieve_status_response.rb +0 -477
  459. data/lib/sentdm/models/number_lookup_response.rb +0 -104
  460. data/lib/sentdm/models/profile_complete_response.rb +0 -74
  461. data/lib/sentdm/models/profile_list_response.rb +0 -65
  462. data/lib/sentdm/models/user_list_response.rb +0 -65
  463. data/lib/sentdm/models/webhook_list_event_types_response.rb +0 -65
  464. data/lib/sentdm/models/webhook_list_events_response.rb +0 -445
  465. data/rbi/sentdm/models/me_retrieve_response.rbi +0 -705
  466. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +0 -319
  467. data/rbi/sentdm/models/message_retrieve_status_response.rbi +0 -765
  468. data/rbi/sentdm/models/number_lookup_response.rbi +0 -166
  469. data/rbi/sentdm/models/profile_list_response.rbi +0 -128
  470. data/rbi/sentdm/models/user_list_response.rbi +0 -128
  471. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +0 -142
  472. data/rbi/sentdm/models/webhook_list_events_response.rbi +0 -647
  473. data/sig/sentdm/models/me_retrieve_response.rbs +0 -306
  474. data/sig/sentdm/models/message_retrieve_activities_response.rbs +0 -137
  475. data/sig/sentdm/models/message_retrieve_status_response.rbs +0 -341
  476. data/sig/sentdm/models/number_lookup_response.rbs +0 -100
  477. data/sig/sentdm/models/profile_complete_response.rbs +0 -55
  478. data/sig/sentdm/models/profile_list_response.rbs +0 -67
  479. data/sig/sentdm/models/user_list_response.rbs +0 -67
  480. data/sig/sentdm/models/webhook_list_event_types_response.rbs +0 -67
  481. data/sig/sentdm/models/webhook_list_events_response.rbs +0 -243
  482. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +0 -51
  483. data/sig/sentdm/models/webhook_test_response.rbs +0 -55
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Channels
6
+ class RcsAddress < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute city
8
+ #
9
+ # @return [String, nil]
10
+ optional :city, String, nil?: true
11
+
12
+ # @!attribute country
13
+ #
14
+ # @return [String, nil]
15
+ optional :country, String, nil?: true
16
+
17
+ # @!attribute postal_code
18
+ #
19
+ # @return [String, nil]
20
+ optional :postal_code, String, nil?: true
21
+
22
+ # @!attribute state
23
+ #
24
+ # @return [String, nil]
25
+ optional :state, String, nil?: true
26
+
27
+ # @!attribute street
28
+ #
29
+ # @return [String, nil]
30
+ optional :street, String, nil?: true
31
+
32
+ # @!method initialize(city: nil, country: nil, postal_code: nil, state: nil, street: nil)
33
+ # The registered address of the company behind the agent.
34
+ #
35
+ # @param city [String, nil]
36
+ # @param country [String, nil]
37
+ # @param postal_code [String, nil]
38
+ # @param state [String, nil]
39
+ # @param street [String, nil]
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,278 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Channels
6
+ class RcsAgent < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The agent record. Stable across the whole approval, and what support will ask
9
+ # for.
10
+ #
11
+ # Nullable and omitted when absent: a sender profile with RCS intent records the
12
+ # channel but has no agent until the order form is submitted, so no id exists to
13
+ # report. A zero GUID is not a valid id and is worse than the field being absent.
14
+ #
15
+ # @return [String, nil]
16
+ optional :id, String, nil?: true
17
+
18
+ # @!attribute agent_use_case
19
+ #
20
+ # @return [String, nil]
21
+ optional :agent_use_case, String, nil?: true
22
+
23
+ # @!attribute brand_color
24
+ #
25
+ # @return [String, nil]
26
+ optional :brand_color, String, nil?: true
27
+
28
+ # @!attribute brand_email
29
+ #
30
+ # @return [String, nil]
31
+ optional :brand_email, String, nil?: true
32
+
33
+ # @!attribute brand_name
34
+ #
35
+ # @return [String, nil]
36
+ optional :brand_name, String, nil?: true
37
+
38
+ # @!attribute brand_phone_number
39
+ #
40
+ # @return [String, nil]
41
+ optional :brand_phone_number, String, nil?: true
42
+
43
+ # @!attribute brief_company_description
44
+ #
45
+ # @return [String, nil]
46
+ optional :brief_company_description, String, nil?: true
47
+
48
+ # @!attribute company_ein
49
+ #
50
+ # @return [String, nil]
51
+ optional :company_ein, String, nil?: true
52
+
53
+ # @!attribute contact_name_and_title
54
+ #
55
+ # @return [String, nil]
56
+ optional :contact_name_and_title, String, nil?: true
57
+
58
+ # @!attribute created_at
59
+ # Omitted when no real agent record exists — the intent-only path has no creation
60
+ # timestamp.
61
+ #
62
+ # @return [Time, nil]
63
+ optional :created_at, Time, nil?: true
64
+
65
+ # @!attribute customer_support_email
66
+ #
67
+ # @return [String, nil]
68
+ optional :customer_support_email, String, nil?: true
69
+
70
+ # @!attribute customer_support_phone_number
71
+ #
72
+ # @return [String, nil]
73
+ optional :customer_support_phone_number, String, nil?: true
74
+
75
+ # @!attribute description
76
+ #
77
+ # @return [String, nil]
78
+ optional :description, String, nil?: true
79
+
80
+ # @!attribute display_name
81
+ #
82
+ # @return [String, nil]
83
+ optional :display_name, String, nil?: true
84
+
85
+ # @!attribute entity_type
86
+ #
87
+ # @return [String, nil]
88
+ optional :entity_type, String, nil?: true
89
+
90
+ # @!attribute help_message
91
+ #
92
+ # @return [String, nil]
93
+ optional :help_message, String, nil?: true
94
+
95
+ # @!attribute official_address
96
+ # The registered address of the company behind the agent.
97
+ #
98
+ # @return [Sentdm::Models::Channels::RcsAddress, nil]
99
+ optional :official_address, -> { Sentdm::Channels::RcsAddress }, nil?: true
100
+
101
+ # @!attribute opt_in_process_description
102
+ #
103
+ # @return [String, nil]
104
+ optional :opt_in_process_description, String, nil?: true
105
+
106
+ # @!attribute phone_number
107
+ # The number the agent sends from, derived from brand_phone_number.
108
+ #
109
+ # @return [String, nil]
110
+ optional :phone_number, String, nil?: true
111
+
112
+ # @!attribute privacy_policy_url
113
+ #
114
+ # @return [String, nil]
115
+ optional :privacy_policy_url, String, nil?: true
116
+
117
+ # @!attribute reason
118
+ # A sentence for reason_code, saying what to do where it is yours. Omitted while
119
+ # ACTIVE.
120
+ #
121
+ # @return [String, nil]
122
+ optional :reason, String, nil?: true
123
+
124
+ # @!attribute reason_code
125
+ # Why the agent is not ACTIVE, as a stable code: an ErrorCodes CHANNEL_xxx value
126
+ # such as CHANNEL_001 (something you owe) or CHANNEL_009 (under review). Switch on
127
+ # this rather than on reason. Omitted while ACTIVE. Read-only; when nothing more
128
+ # specific is known it is the generic reason for the status.
129
+ #
130
+ # @return [String, nil]
131
+ optional :reason_code, String, nil?: true
132
+
133
+ # @!attribute sample_messages
134
+ #
135
+ # @return [Array<String>, nil]
136
+ optional :sample_messages, Sentdm::Internal::Type::ArrayOf[String], nil?: true
137
+
138
+ # @!attribute start_message
139
+ #
140
+ # @return [String, nil]
141
+ optional :start_message, String, nil?: true
142
+
143
+ # @!attribute status
144
+ # Where the agent stands, in terms of who is holding it up — PROVISIONING,
145
+ # ACTION_NEEDED, PENDING_REVIEW or ACTIVE.
146
+ #
147
+ # Resolved from both of the provider's axes rather than reported raw: an agent
148
+ # whose resubmission we have asked for reads ACTION_NEEDED however its carrier
149
+ # status still reads, and an agent not yet handed over reads PROVISIONING rather
150
+ # than pending a review nobody has started.
151
+ #
152
+ # @return [Symbol, Sentdm::Models::Channels::RcsAgent::Status, nil]
153
+ optional :status, enum: -> { Sentdm::Channels::RcsAgent::Status }, nil?: true
154
+
155
+ # @!attribute stop_message
156
+ #
157
+ # @return [String, nil]
158
+ optional :stop_message, String, nil?: true
159
+
160
+ # @!attribute terms_and_conditions_url
161
+ #
162
+ # @return [String, nil]
163
+ optional :terms_and_conditions_url, String, nil?: true
164
+
165
+ # @!attribute website_url
166
+ #
167
+ # @return [String, nil]
168
+ optional :website_url, String, nil?: true
169
+
170
+ # @!method initialize(id: nil, agent_use_case: nil, brand_color: nil, brand_email: nil, brand_name: nil, brand_phone_number: nil, brief_company_description: nil, company_ein: nil, contact_name_and_title: nil, created_at: nil, customer_support_email: nil, customer_support_phone_number: nil, description: nil, display_name: nil, entity_type: nil, help_message: nil, official_address: nil, opt_in_process_description: nil, phone_number: nil, privacy_policy_url: nil, reason: nil, reason_code: nil, sample_messages: nil, start_message: nil, status: nil, stop_message: nil, terms_and_conditions_url: nil, website_url: nil)
171
+ # Some parameter documentations has been truncated, see
172
+ # {Sentdm::Models::Channels::RcsAgent} for more details.
173
+ #
174
+ # An RCS agent as its owner sees it: the order form back, plus where the
175
+ # submission stands.
176
+ #
177
+ # Not RcsSenderResponse. That one is the admin projection and carries the pipeline
178
+ # we track about a customer's request — internalStatus, statusReason, isLaunched —
179
+ # and the S3 keys behind the assets. None of that is the customer's to read: an
180
+ # internal status is a note to ourselves, and an S3 key is a storage detail that
181
+ # would become a contract the moment it was published.
182
+ #
183
+ # What is here is what the caller sent, in the names it sent them under, plus the
184
+ # three things only we can answer: the record's id, its status, and the number it
185
+ # sends from. So a read after a write shows the form as stored rather than as
186
+ # echoed.
187
+ #
188
+ # @param id [String, nil] The agent record. Stable across the whole approval, and what support will ask fo
189
+ #
190
+ # @param agent_use_case [String, nil]
191
+ #
192
+ # @param brand_color [String, nil]
193
+ #
194
+ # @param brand_email [String, nil]
195
+ #
196
+ # @param brand_name [String, nil]
197
+ #
198
+ # @param brand_phone_number [String, nil]
199
+ #
200
+ # @param brief_company_description [String, nil]
201
+ #
202
+ # @param company_ein [String, nil]
203
+ #
204
+ # @param contact_name_and_title [String, nil]
205
+ #
206
+ # @param created_at [Time, nil] Omitted when no real agent record exists — the intent-only path has no creation
207
+ #
208
+ # @param customer_support_email [String, nil]
209
+ #
210
+ # @param customer_support_phone_number [String, nil]
211
+ #
212
+ # @param description [String, nil]
213
+ #
214
+ # @param display_name [String, nil]
215
+ #
216
+ # @param entity_type [String, nil]
217
+ #
218
+ # @param help_message [String, nil]
219
+ #
220
+ # @param official_address [Sentdm::Models::Channels::RcsAddress, nil] The registered address of the company behind the agent.
221
+ #
222
+ # @param opt_in_process_description [String, nil]
223
+ #
224
+ # @param phone_number [String, nil] The number the agent sends from, derived from brand_phone_number.
225
+ #
226
+ # @param privacy_policy_url [String, nil]
227
+ #
228
+ # @param reason [String, nil] A sentence for reason_code, saying what to do where it is yours. Omitted while A
229
+ #
230
+ # @param reason_code [String, nil] Why the agent is not ACTIVE, as a stable code: an ErrorCodes CHANNEL_xxx value s
231
+ #
232
+ # @param sample_messages [Array<String>, nil]
233
+ #
234
+ # @param start_message [String, nil]
235
+ #
236
+ # @param status [Symbol, Sentdm::Models::Channels::RcsAgent::Status, nil] Where the agent stands, in terms of who is holding it up — PROVISIONING,
237
+ # ACTION\_
238
+ #
239
+ # @param stop_message [String, nil]
240
+ #
241
+ # @param terms_and_conditions_url [String, nil]
242
+ #
243
+ # @param website_url [String, nil]
244
+
245
+ # Where the agent stands, in terms of who is holding it up — PROVISIONING,
246
+ # ACTION_NEEDED, PENDING_REVIEW or ACTIVE.
247
+ #
248
+ # Resolved from both of the provider's axes rather than reported raw: an agent
249
+ # whose resubmission we have asked for reads ACTION_NEEDED however its carrier
250
+ # status still reads, and an agent not yet handed over reads PROVISIONING rather
251
+ # than pending a review nobody has started.
252
+ #
253
+ # @see Sentdm::Models::Channels::RcsAgent#status
254
+ module Status
255
+ extend Sentdm::Internal::Type::Enum
256
+
257
+ # We are working on it and there is nothing for you to do — a number is being procured, or a registration is being assembled. Minutes to hours.
258
+ PROVISIONING = :PROVISIONING
259
+
260
+ # **Waiting on you.** Something the market asks for has not been supplied, a regulator rejected what was, or we have asked you to correct and resubmit your identity data. Nothing progresses until you act. For an SMS market, `GET /v3/channels/sms/{country}/{type}` names what it wants and `PATCH` on the same path supplies it — compliance values, documents and numbers alike.
261
+ ACTION_NEEDED = :ACTION_NEEDED
262
+
263
+ # With a regulator or carrier — filed, or assembled and queued for us to file — and their answer is what moves it, to `ACTIVE` or back to `ACTION_NEEDED`. Nothing on your side changes it. Days for SMS, weeks for RCS.
264
+ PENDING_REVIEW = :PENDING_REVIEW
265
+
266
+ # Can carry traffic now. A channel a sender profile runs on its organization's reads `ACTIVE` too — it sends, which is what the field is about.
267
+ ACTIVE = :ACTIVE
268
+
269
+ # **It had a working sender and no longer does** — the number was released, or the campaign it carried lapsed. Distinct from `PROVISIONING`, which means it has never sent yet: the same absence of a sender, opposite news. Sends will fail until it returns to `ACTIVE`.
270
+ INACTIVE = :INACTIVE
271
+
272
+ # @!method self.values
273
+ # @return [Array<Symbol>]
274
+ end
275
+ end
276
+ end
277
+ end
278
+ end
@@ -0,0 +1,173 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Channels
6
+ # @see Sentdm::Resources::Channels::SMS#create
7
+ class SMSCreateParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute number_type
12
+ # Sender type. Decides the provisioning flow and what compliance is asked for.
13
+ #
14
+ # [Required] so the published document says so. The validator has always demanded
15
+ # it, but requiredness reached the schema by matching a rule to a property name —
16
+ # which works for country, whose wire name is its camel-cased C# name, and
17
+ # silently does not for number_type. A client generating a request from our
18
+ # OpenAPI therefore sent what the document called sufficient and was answered 400.
19
+ #
20
+ # @return [Symbol, Sentdm::Models::Channels::SMSCreateParams::NumberType]
21
+ required :number_type, enum: -> { Sentdm::Channels::SMSCreateParams::NumberType }
22
+
23
+ # @!attribute area_codes
24
+ # The area codes to put this sender in, in your own order of preference, e.g.
25
+ # ["415", "628"] for the US or ["20"] for London. Omit it and a number is claimed
26
+ # anywhere in the country.
27
+ #
28
+ # Ordered, and the order is the request. The claim tries each code in turn and
29
+ # stops at the first that yields a number. Nothing sorts the list and a code
30
+ # listed twice is refused.
31
+ #
32
+ # One to fifty entries, each the area code as digits: 415, with the trunk prefix
33
+ # as 020, or with the country's dialing prefix as +1415 (all are stored as the
34
+ # bare code). A dialing prefix from a different country than country is refused.
35
+ # Each code is checked against the country's numbering plan: it must start real
36
+ # local or mobile numbers there, so toll-free and premium ranges, service codes
37
+ # and another country's codes are refused with a reason.
38
+ #
39
+ # LOCAL senders in any country, and US TEN_DLC senders. No other sender type has a
40
+ # geographic area code, and the list is refused with one rather than accepted and
41
+ # dropped.
42
+ #
43
+ # Honoured exactly or not at all. Ask for 415 and you get a 415 number or you get
44
+ # none, never a neighbouring code you did not name. A miss leaves the market with
45
+ # no sender yet and the codes recorded on it, so it is filled when stock appears
46
+ # rather than filled now from somewhere else. Many countries outside North America
47
+ # require address or business documents before a local number can be bought, which
48
+ # can delay or prevent the fill.
49
+ #
50
+ # @return [Array<String>, nil]
51
+ optional :area_codes, Sentdm::Internal::Type::ArrayOf[String], nil?: true
52
+
53
+ # @!attribute compliance
54
+ # The compliance values a market registers with. `brand` and `campaign` apply to
55
+ # US `TEN_DLC`; other markets fill this map with the document keys their own
56
+ # requirements name.
57
+ #
58
+ # @return [Sentdm::Models::Channels::MarketCompliance, nil]
59
+ optional :compliance, -> { Sentdm::Channels::MarketCompliance }
60
+
61
+ # @!attribute country
62
+ # ISO 3166-1 alpha-2 country the sender operates in.
63
+ #
64
+ # @return [String, nil]
65
+ optional :country, String
66
+
67
+ # @!attribute numbers
68
+ # The numbers to assign, one entry per area code, e.g. [{"area_code": "212",
69
+ # "quantity": 2}, {"area_code": "415"}, {"quantity": 1}]: two numbers in 212, one
70
+ # in 415 and one in any area code. quantity defaults to 1, and an entry without
71
+ # area_code means any area code. Omit numbers for one number.
72
+ #
73
+ # Only with LOCAL or TEN_DLC, and not together with area_codes. Each area code is
74
+ # validated against country the same way area_codes is and may appear once, and at
75
+ # most one entry may leave area_code out. On a LOCAL market you already hold, this
76
+ # adds the numbers to it. US TEN_DLC numbers are assigned when the campaign is
77
+ # approved, not at request time. Not available when the profile inherits the
78
+ # organization's campaign.
79
+ #
80
+ # @return [Array<Sentdm::Models::Channels::SMSNumberRequest>, nil]
81
+ optional :numbers,
82
+ -> {
83
+ Sentdm::Internal::Type::ArrayOf[Sentdm::Channels::SMSNumberRequest]
84
+ },
85
+ nil?: true
86
+
87
+ # @!attribute sandbox
88
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
89
+ # for testing integrations without actual execution
90
+ #
91
+ # @return [Boolean, nil]
92
+ optional :sandbox, Sentdm::Internal::Type::Boolean
93
+
94
+ # @!attribute sender_value
95
+ # The sender's identity where the caller chooses it. Required when number_type is
96
+ # ALPHANUMERIC; optional for carrier-assigned types, which are procured
97
+ # afterwards.
98
+ #
99
+ # @return [String, nil]
100
+ optional :sender_value, String, nil?: true
101
+
102
+ # @!attribute idempotency_key
103
+ #
104
+ # @return [String, nil]
105
+ optional :idempotency_key, String
106
+
107
+ # @!attribute x_profile_id
108
+ #
109
+ # @return [String, nil]
110
+ optional :x_profile_id, String
111
+
112
+ # @!method initialize(number_type:, area_codes: nil, compliance: nil, country: nil, numbers: nil, sandbox: nil, sender_value: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
113
+ # Some parameter documentations has been truncated, see
114
+ # {Sentdm::Models::Channels::SMSCreateParams} for more details.
115
+ #
116
+ # @param number_type [Symbol, Sentdm::Models::Channels::SMSCreateParams::NumberType] Sender type. Decides the provisioning flow and what compliance is asked for.
117
+ #
118
+ # @param area_codes [Array<String>, nil] The area codes to put this sender in, in your own order of preference, e.g. ["41
119
+ #
120
+ # @param compliance [Sentdm::Models::Channels::MarketCompliance] The compliance values a market registers with. `brand` and `campaign` apply to U
121
+ #
122
+ # @param country [String] ISO 3166-1 alpha-2 country the sender operates in.
123
+ #
124
+ # @param numbers [Array<Sentdm::Models::Channels::SMSNumberRequest>, nil] The numbers to assign, one entry per area code, e.g.
125
+ #
126
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
127
+ #
128
+ # @param sender_value [String, nil] The sender's identity where the caller chooses it. Required when number_type is
129
+ #
130
+ # @param idempotency_key [String]
131
+ #
132
+ # @param x_profile_id [String]
133
+ #
134
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
135
+
136
+ # Sender type. Decides the provisioning flow and what compliance is asked for.
137
+ #
138
+ # [Required] so the published document says so. The validator has always demanded
139
+ # it, but requiredness reached the schema by matching a rule to a property name —
140
+ # which works for country, whose wire name is its camel-cased C# name, and
141
+ # silently does not for number_type. A client generating a request from our
142
+ # OpenAPI therefore sent what the document called sufficient and was answered 400.
143
+ module NumberType
144
+ extend Sentdm::Internal::Type::Enum
145
+
146
+ # A geographic number for the country. The ordinary choice: recognisable to recipients, and available almost everywhere.
147
+ LOCAL = :LOCAL
148
+
149
+ # A toll-free number. High throughput and no per-country registration, but US toll-free traffic goes through its own verification.
150
+ TOLL_FREE = :TOLL_FREE
151
+
152
+ # A short code — five or six digits, leased rather than provisioned. Highest throughput, longest lead time, and the most expensive.
153
+ SHORT_CODE = :SHORT_CODE
154
+
155
+ # A sender name rather than a number, up to 11 characters. Recipients cannot reply. Not available in every country, and several require it to be pre-registered with documents.
156
+ ALPHANUMERIC = :ALPHANUMERIC
157
+
158
+ # A US 10-digit long code registered with The Campaign Registry. The only sender type that registers with a compliance regime, so it is the only one whose market declares `compliance.brand` and `compliance.campaign`.
159
+ TEN_DLC = :TEN_DLC
160
+
161
+ # A mobile number. Where a country distinguishes it from a landline, some carriers treat mobile traffic differently.
162
+ MOBILE = :MOBILE
163
+
164
+ # The industry's spelling of `TEN_DLC`, accepted so an integrator can send the term it knows. Resolves to the same market.
165
+ NUMBER_TYPE_10_DLC = :"10DLC"
166
+
167
+ # @!method self.values
168
+ # @return [Array<Symbol>]
169
+ end
170
+ end
171
+ end
172
+ end
173
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Channels
6
+ # @see Sentdm::Resources::Channels::SMS#list
7
+ class SMSListParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute x_profile_id
12
+ #
13
+ # @return [String, nil]
14
+ optional :x_profile_id, String
15
+
16
+ # @!method initialize(x_profile_id: nil, request_options: {})
17
+ # @param x_profile_id [String]
18
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,148 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Channels
6
+ class SMSMarket < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute compliance
8
+ # What a market has been given: the identity it registers under, its programme,
9
+ # and any documents attached.
10
+ #
11
+ # What it does not carry is what the market asks for. That is the subject of GET
12
+ # /v3/compliance/requirements, and it is the same answer for every caller — a
13
+ # description of what a compliance regime wants, not a record of one customer's
14
+ # progress through it. It was reported here as well for a while, which put the
15
+ # same array in six response shapes and left a caller deciding which of two
16
+ # sources to believe.
17
+ #
18
+ # Present on a list read for markets that register (carrying brand and campaign),
19
+ # but with documents absent — documents are not fetched for a list, because a
20
+ # catalog lookup and a document read per market would multiply across a page.
21
+ # Absent documents is distinct from an empty list: absent says they were not
22
+ # fetched; empty says the market has been given none. The parent object is null
23
+ # only when the market registers with nobody and compliance was not computed —
24
+ # nothing to show at all.
25
+ #
26
+ # @return [Sentdm::Models::Channels::SuppliedCompliance, nil]
27
+ optional :compliance, -> { Sentdm::Channels::SuppliedCompliance }, nil?: true
28
+
29
+ # @!attribute country
30
+ #
31
+ # @return [String, nil]
32
+ optional :country, String, nil?: true
33
+
34
+ # @!attribute number_type
35
+ #
36
+ # @return [String, nil]
37
+ optional :number_type, String, nil?: true
38
+
39
+ # @!attribute numbers
40
+ # Every number this market holds or is still owed, each with its area code and its
41
+ # own status (ACTIVE once it can send, PROVISIONING while it is still to be
42
+ # assigned, INACTIVE once it could send and no longer can). One entry for a market
43
+ # holding one number. US 10DLC numbers are assigned when the campaign is approved,
44
+ # so they read as owed until then. Read-only.
45
+ #
46
+ # @return [Array<Sentdm::Models::Channels::SMSNumber>, nil]
47
+ optional :numbers, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Channels::SMSNumber] }
48
+
49
+ # @!attribute reason
50
+ # A sentence for reason_code: this market's own explanation, naming what is
51
+ # outstanding where that is you. Omitted while ACTIVE.
52
+ #
53
+ # @return [String, nil]
54
+ optional :reason, String, nil?: true
55
+
56
+ # @!attribute reason_code
57
+ # Why the market is not ACTIVE, as a stable code: an ErrorCodes CHANNEL_xxx value
58
+ # such as CHANNEL_001 (something you owe) or CHANNEL_009 (under review). Switch on
59
+ # this rather than on reason. Omitted while ACTIVE. Read-only; when nothing more
60
+ # specific is known it is the generic reason for the status.
61
+ #
62
+ # @return [String, nil]
63
+ optional :reason_code, String, nil?: true
64
+
65
+ # @!attribute status
66
+ # Where this market's sender stands, in terms of who is holding it up —
67
+ # PROVISIONING, ACTION_NEEDED, PENDING_REVIEW or ACTIVE. Read-only.
68
+ #
69
+ # Resolved rather than reported raw: a live sender reads ACTIVE whatever it still
70
+ # owes, a market with outstanding requirements or an open resubmission request
71
+ # reads ACTION_NEEDED, and a market that registers with a regime reads
72
+ # PENDING_REVIEW once its brand exists — filing to The Campaign Registry is ours
73
+ # to do and need not have happened yet, so a dedicated brand created through this
74
+ # API reads PENDING_REVIEW from the moment it is stored.
75
+ #
76
+ # Describes whether the market can send, not each number: a market holding several
77
+ # numbers reads ACTIVE as soon as one of them is, whatever the others are doing.
78
+ # Each number's own status is in numbers.
79
+ #
80
+ # @return [Symbol, Sentdm::Models::Channels::SMSMarket::Status, nil]
81
+ optional :status, enum: -> { Sentdm::Channels::SMSMarket::Status }, nil?: true
82
+
83
+ # @!method initialize(compliance: nil, country: nil, number_type: nil, numbers: nil, reason: nil, reason_code: nil, status: nil)
84
+ # Some parameter documentations has been truncated, see
85
+ # {Sentdm::Models::Channels::SMSMarket} for more details.
86
+ #
87
+ # One SMS market the profile sends in — its sender, where that sender stands, and
88
+ # what the market wants.
89
+ #
90
+ # A profile may send in several: it is a tenant, not a market. Each carries its
91
+ # own status, because a profile can be live in one country and mid-registration in
92
+ # another — and each carries what it still owes, rather than that being reported
93
+ # in a separate array a caller has to join on.
94
+ #
95
+ # @param compliance [Sentdm::Models::Channels::SuppliedCompliance, nil] What a market has been given: the identity it registers under, its programme, an
96
+ #
97
+ # @param country [String, nil]
98
+ #
99
+ # @param number_type [String, nil]
100
+ #
101
+ # @param numbers [Array<Sentdm::Models::Channels::SMSNumber>] Every number this market holds or is still owed, each with its area code and its
102
+ #
103
+ # @param reason [String, nil] A sentence for reason_code: this market's own explanation, naming what is outsta
104
+ #
105
+ # @param reason_code [String, nil] Why the market is not ACTIVE, as a stable code: an ErrorCodes CHANNEL_xxx value
106
+ #
107
+ # @param status [Symbol, Sentdm::Models::Channels::SMSMarket::Status, nil] Where this market's sender stands, in terms of who is holding it up — PROVISIONI
108
+
109
+ # Where this market's sender stands, in terms of who is holding it up —
110
+ # PROVISIONING, ACTION_NEEDED, PENDING_REVIEW or ACTIVE. Read-only.
111
+ #
112
+ # Resolved rather than reported raw: a live sender reads ACTIVE whatever it still
113
+ # owes, a market with outstanding requirements or an open resubmission request
114
+ # reads ACTION_NEEDED, and a market that registers with a regime reads
115
+ # PENDING_REVIEW once its brand exists — filing to The Campaign Registry is ours
116
+ # to do and need not have happened yet, so a dedicated brand created through this
117
+ # API reads PENDING_REVIEW from the moment it is stored.
118
+ #
119
+ # Describes whether the market can send, not each number: a market holding several
120
+ # numbers reads ACTIVE as soon as one of them is, whatever the others are doing.
121
+ # Each number's own status is in numbers.
122
+ #
123
+ # @see Sentdm::Models::Channels::SMSMarket#status
124
+ module Status
125
+ extend Sentdm::Internal::Type::Enum
126
+
127
+ # We are working on it and there is nothing for you to do — a number is being procured, or a registration is being assembled. Minutes to hours.
128
+ PROVISIONING = :PROVISIONING
129
+
130
+ # **Waiting on you.** Something the market asks for has not been supplied, a regulator rejected what was, or we have asked you to correct and resubmit your identity data. Nothing progresses until you act. For an SMS market, `GET /v3/channels/sms/{country}/{type}` names what it wants and `PATCH` on the same path supplies it — compliance values, documents and numbers alike.
131
+ ACTION_NEEDED = :ACTION_NEEDED
132
+
133
+ # With a regulator or carrier — filed, or assembled and queued for us to file — and their answer is what moves it, to `ACTIVE` or back to `ACTION_NEEDED`. Nothing on your side changes it. Days for SMS, weeks for RCS.
134
+ PENDING_REVIEW = :PENDING_REVIEW
135
+
136
+ # Can carry traffic now. A channel a sender profile runs on its organization's reads `ACTIVE` too — it sends, which is what the field is about.
137
+ ACTIVE = :ACTIVE
138
+
139
+ # **It had a working sender and no longer does** — the number was released, or the campaign it carried lapsed. Distinct from `PROVISIONING`, which means it has never sent yet: the same absence of a sender, opposite news. Sends will fail until it returns to `ACTIVE`.
140
+ INACTIVE = :INACTIVE
141
+
142
+ # @!method self.values
143
+ # @return [Array<Symbol>]
144
+ end
145
+ end
146
+ end
147
+ end
148
+ end