sentdm 0.28.0 → 0.30.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 (276) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +27 -1
  4. data/lib/sentdm/internal/type/base_model.rb +5 -5
  5. data/lib/sentdm/models/api_meta.rb +34 -0
  6. data/lib/sentdm/models/api_response_of_contact.rb +46 -0
  7. data/lib/sentdm/models/api_response_of_contact_message_summary.rb +43 -0
  8. data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +43 -0
  9. data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
  10. data/lib/sentdm/models/api_response_of_user.rb +43 -0
  11. data/lib/sentdm/models/api_response_template.rb +43 -0
  12. data/lib/sentdm/models/api_response_webhook.rb +43 -0
  13. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  14. data/lib/sentdm/models/brand_business_info.rb +114 -0
  15. data/lib/sentdm/models/brand_compliance_info.rb +59 -0
  16. data/lib/sentdm/models/brand_contact_info.rb +58 -0
  17. data/lib/sentdm/models/brands_brand_data.rb +34 -0
  18. data/lib/sentdm/models/contact_delete_params.rb +2 -16
  19. data/lib/sentdm/models/contact_list_response.rb +12 -295
  20. data/lib/sentdm/models/contact_message_summary.rb +76 -0
  21. data/lib/sentdm/models/contact_response.rb +139 -0
  22. data/lib/sentdm/models/conversation_messages_list.rb +245 -0
  23. data/lib/sentdm/models/error_detail.rb +42 -0
  24. data/lib/sentdm/models/inbound_message_event_payload.rb +17 -17
  25. data/lib/sentdm/models/me_retrieve_response.rb +43 -243
  26. data/lib/sentdm/models/message_event_payload.rb +11 -11
  27. data/lib/sentdm/models/message_retrieve_activities_response.rb +9 -159
  28. data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
  29. data/lib/sentdm/models/message_send_response.rb +6 -74
  30. data/lib/sentdm/models/mutation_request.rb +20 -0
  31. data/lib/sentdm/models/number_lookup_response.rb +6 -74
  32. data/lib/sentdm/models/pagination_meta.rb +84 -0
  33. data/lib/sentdm/models/payment_details.rb +40 -0
  34. data/lib/sentdm/models/profile_complete_response.rb +6 -74
  35. data/lib/sentdm/models/profile_create_params.rb +9 -345
  36. data/lib/sentdm/models/profile_delete_params.rb +2 -16
  37. data/lib/sentdm/models/profile_detail.rb +650 -0
  38. data/lib/sentdm/models/profile_list_response.rb +12 -815
  39. data/lib/sentdm/models/profile_settings.rb +85 -0
  40. data/lib/sentdm/models/profile_update_params.rb +9 -345
  41. data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +45 -0
  42. data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +45 -0
  43. data/lib/sentdm/models/profiles/brand_campaign.rb +247 -0
  44. data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -156
  45. data/lib/sentdm/models/profiles/campaign_data.rb +136 -0
  46. data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
  47. data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -156
  48. data/lib/sentdm/models/profiles/campaign_use_case.rb +71 -0
  49. data/lib/sentdm/models/profiles/campaign_use_case_data.rb +29 -0
  50. data/lib/sentdm/models/template.rb +102 -0
  51. data/lib/sentdm/models/template_event_payload.rb +18 -18
  52. data/lib/sentdm/models/template_list_response.rb +12 -258
  53. data/lib/sentdm/models/user_list_response.rb +12 -249
  54. data/lib/sentdm/models/user_remove_params.rb +2 -16
  55. data/lib/sentdm/models/user_response.rb +94 -0
  56. data/lib/sentdm/models/webhook_event_type.rb +45 -0
  57. data/lib/sentdm/models/webhook_list_event_types_response.rb +12 -203
  58. data/lib/sentdm/models/webhook_list_events_response.rb +9 -157
  59. data/lib/sentdm/models/webhook_list_response.rb +12 -276
  60. data/lib/sentdm/models/webhook_response.rb +120 -0
  61. data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
  62. data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
  63. data/lib/sentdm/models/webhook_test_response.rb +6 -74
  64. data/lib/sentdm/models.rb +52 -0
  65. data/lib/sentdm/resources/contacts.rb +8 -8
  66. data/lib/sentdm/resources/conversations.rb +4 -4
  67. data/lib/sentdm/resources/me.rb +11 -0
  68. data/lib/sentdm/resources/profiles/campaigns.rb +8 -8
  69. data/lib/sentdm/resources/profiles.rb +12 -12
  70. data/lib/sentdm/resources/templates.rb +6 -6
  71. data/lib/sentdm/resources/users.rb +6 -6
  72. data/lib/sentdm/resources/webhooks.rb +8 -8
  73. data/lib/sentdm/version.rb +1 -1
  74. data/lib/sentdm.rb +32 -22
  75. data/rbi/sentdm/models/api_meta.rbi +55 -0
  76. data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
  77. data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +79 -0
  78. data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +79 -0
  79. data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
  80. data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
  81. data/rbi/sentdm/models/api_response_template.rbi +74 -0
  82. data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
  83. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  84. data/rbi/sentdm/models/brand_business_info.rbi +162 -0
  85. data/rbi/sentdm/models/brand_compliance_info.rbi +76 -0
  86. data/rbi/sentdm/models/brand_contact_info.rbi +78 -0
  87. data/rbi/sentdm/models/brands_brand_data.rbi +65 -0
  88. data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
  89. data/rbi/sentdm/models/contact_list_response.rbi +16 -522
  90. data/rbi/sentdm/models/contact_message_summary.rbi +144 -0
  91. data/rbi/sentdm/models/contact_response.rbi +200 -0
  92. data/rbi/sentdm/models/conversation_messages_list.rbi +419 -0
  93. data/rbi/sentdm/models/error_detail.rbi +66 -0
  94. data/rbi/sentdm/models/inbound_message_event_payload.rbi +16 -22
  95. data/rbi/sentdm/models/me_retrieve_response.rbi +60 -367
  96. data/rbi/sentdm/models/message_event_payload.rbi +12 -15
  97. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +12 -325
  98. data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
  99. data/rbi/sentdm/models/message_send_response.rbi +8 -135
  100. data/rbi/sentdm/models/mutation_request.rbi +32 -0
  101. data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
  102. data/rbi/sentdm/models/pagination_meta.rbi +135 -0
  103. data/rbi/sentdm/models/payment_details.rbi +56 -0
  104. data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
  105. data/rbi/sentdm/models/profile_create_params.rbi +12 -546
  106. data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
  107. data/rbi/sentdm/models/profile_detail.rbi +918 -0
  108. data/rbi/sentdm/models/profile_list_response.rbi +16 -1347
  109. data/rbi/sentdm/models/profile_settings.rbi +102 -0
  110. data/rbi/sentdm/models/profile_update_params.rbi +12 -546
  111. data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +81 -0
  112. data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +76 -0
  113. data/rbi/sentdm/models/profiles/brand_campaign.rbi +299 -0
  114. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -218
  115. data/rbi/sentdm/models/profiles/campaign_data.rbi +158 -0
  116. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
  117. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -218
  118. data/rbi/sentdm/models/profiles/campaign_use_case.rbi +110 -0
  119. data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +51 -0
  120. data/rbi/sentdm/models/template.rbi +139 -0
  121. data/rbi/sentdm/models/template_event_payload.rbi +21 -27
  122. data/rbi/sentdm/models/template_list_response.rbi +16 -464
  123. data/rbi/sentdm/models/user_list_response.rbi +16 -444
  124. data/rbi/sentdm/models/user_remove_params.rbi +2 -19
  125. data/rbi/sentdm/models/user_response.rbi +131 -0
  126. data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
  127. data/rbi/sentdm/models/webhook_list_event_types_response.rbi +16 -414
  128. data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
  129. data/rbi/sentdm/models/webhook_list_response.rbi +16 -475
  130. data/rbi/sentdm/models/webhook_response.rbi +153 -0
  131. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
  132. data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
  133. data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
  134. data/rbi/sentdm/models.rbi +54 -0
  135. data/rbi/sentdm/resources/contacts.rbi +4 -4
  136. data/rbi/sentdm/resources/conversations.rbi +2 -2
  137. data/rbi/sentdm/resources/me.rbi +11 -0
  138. data/rbi/sentdm/resources/profiles/campaigns.rbi +5 -5
  139. data/rbi/sentdm/resources/profiles.rbi +9 -13
  140. data/rbi/sentdm/resources/templates.rbi +3 -3
  141. data/rbi/sentdm/resources/users.rbi +3 -3
  142. data/rbi/sentdm/resources/webhooks.rbi +4 -4
  143. data/sig/sentdm/models/api_meta.rbs +27 -0
  144. data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
  145. data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +39 -0
  146. data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +39 -0
  147. data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
  148. data/sig/sentdm/models/api_response_of_user.rbs +39 -0
  149. data/sig/sentdm/models/api_response_template.rbs +39 -0
  150. data/sig/sentdm/models/api_response_webhook.rbs +39 -0
  151. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  152. data/sig/sentdm/models/brand_business_info.rbs +89 -0
  153. data/sig/sentdm/models/brand_compliance_info.rbs +45 -0
  154. data/sig/sentdm/models/brand_contact_info.rbs +45 -0
  155. data/sig/sentdm/models/brands_brand_data.rbs +30 -0
  156. data/sig/sentdm/models/contact_delete_params.rbs +6 -10
  157. data/sig/sentdm/models/contact_list_response.rbs +20 -263
  158. data/sig/sentdm/models/contact_message_summary.rbs +84 -0
  159. data/sig/sentdm/models/contact_response.rbs +118 -0
  160. data/sig/sentdm/models/conversation_messages_list.rbs +240 -0
  161. data/sig/sentdm/models/error_detail.rbs +39 -0
  162. data/sig/sentdm/models/inbound_message_event_payload.rbs +10 -14
  163. data/sig/sentdm/models/me_retrieve_response.rbs +28 -176
  164. data/sig/sentdm/models/message_event_payload.rbs +5 -7
  165. data/sig/sentdm/models/message_retrieve_activities_response.rbs +14 -142
  166. data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
  167. data/sig/sentdm/models/message_send_response.rbs +9 -71
  168. data/sig/sentdm/models/mutation_request.rbs +15 -0
  169. data/sig/sentdm/models/number_lookup_response.rbs +9 -71
  170. data/sig/sentdm/models/pagination_meta.rbs +67 -0
  171. data/sig/sentdm/models/payment_details.rbs +30 -0
  172. data/sig/sentdm/models/profile_complete_response.rbs +9 -71
  173. data/sig/sentdm/models/profile_create_params.rbs +12 -263
  174. data/sig/sentdm/models/profile_delete_params.rbs +6 -10
  175. data/sig/sentdm/models/profile_detail.rbs +461 -0
  176. data/sig/sentdm/models/profile_list_response.rbs +20 -606
  177. data/sig/sentdm/models/profile_settings.rbs +50 -0
  178. data/sig/sentdm/models/profile_update_params.rbs +12 -263
  179. data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +41 -0
  180. data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +41 -0
  181. data/sig/sentdm/models/profiles/brand_campaign.rbs +194 -0
  182. data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -108
  183. data/sig/sentdm/models/profiles/campaign_data.rbs +87 -0
  184. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
  185. data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -108
  186. data/sig/sentdm/models/profiles/campaign_use_case.rbs +66 -0
  187. data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +27 -0
  188. data/sig/sentdm/models/template.rbs +84 -0
  189. data/sig/sentdm/models/template_event_payload.rbs +13 -17
  190. data/sig/sentdm/models/template_list_response.rbs +19 -230
  191. data/sig/sentdm/models/user_list_response.rbs +20 -224
  192. data/sig/sentdm/models/user_remove_params.rbs +6 -10
  193. data/sig/sentdm/models/user_response.rbs +79 -0
  194. data/sig/sentdm/models/webhook_event_type.rbs +51 -0
  195. data/sig/sentdm/models/webhook_list_event_types_response.rbs +20 -196
  196. data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
  197. data/sig/sentdm/models/webhook_list_response.rbs +20 -255
  198. data/sig/sentdm/models/webhook_response.rbs +110 -0
  199. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
  200. data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
  201. data/sig/sentdm/models/webhook_test_response.rbs +9 -71
  202. data/sig/sentdm/models.rbs +52 -0
  203. data/sig/sentdm/resources/contacts.rbs +4 -4
  204. data/sig/sentdm/resources/conversations.rbs +2 -2
  205. data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
  206. data/sig/sentdm/resources/profiles.rbs +9 -9
  207. data/sig/sentdm/resources/templates.rbs +3 -3
  208. data/sig/sentdm/resources/users.rbs +3 -3
  209. data/sig/sentdm/resources/webhooks.rbs +4 -4
  210. metadata +98 -68
  211. data/lib/sentdm/models/contact_create_response.rb +0 -249
  212. data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +0 -186
  213. data/lib/sentdm/models/contact_retrieve_response.rb +0 -249
  214. data/lib/sentdm/models/contact_update_response.rb +0 -249
  215. data/lib/sentdm/models/conversation_list_messages_response.rb +0 -436
  216. data/lib/sentdm/models/conversation_list_response.rb +0 -433
  217. data/lib/sentdm/models/profile_create_response.rb +0 -760
  218. data/lib/sentdm/models/profile_retrieve_response.rb +0 -762
  219. data/lib/sentdm/models/profile_update_response.rb +0 -760
  220. data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -420
  221. data/lib/sentdm/models/profiles/campaign_list_response.rb +0 -421
  222. data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -420
  223. data/lib/sentdm/models/template_create_response.rb +0 -209
  224. data/lib/sentdm/models/template_retrieve_response.rb +0 -209
  225. data/lib/sentdm/models/template_update_response.rb +0 -209
  226. data/lib/sentdm/models/user_invite_response.rb +0 -201
  227. data/lib/sentdm/models/user_retrieve_response.rb +0 -201
  228. data/lib/sentdm/models/user_update_role_response.rb +0 -201
  229. data/lib/sentdm/models/webhook_create_response.rb +0 -229
  230. data/lib/sentdm/models/webhook_retrieve_response.rb +0 -229
  231. data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -229
  232. data/lib/sentdm/models/webhook_update_response.rb +0 -229
  233. data/rbi/sentdm/models/contact_create_response.rbi +0 -407
  234. data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +0 -397
  235. data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -409
  236. data/rbi/sentdm/models/contact_update_response.rbi +0 -407
  237. data/rbi/sentdm/models/conversation_list_messages_response.rbi +0 -843
  238. data/rbi/sentdm/models/conversation_list_response.rbi +0 -819
  239. data/rbi/sentdm/models/profile_create_response.rbi +0 -1226
  240. data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1230
  241. data/rbi/sentdm/models/profile_update_response.rbi +0 -1226
  242. data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -674
  243. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +0 -667
  244. data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -674
  245. data/rbi/sentdm/models/template_create_response.rbi +0 -349
  246. data/rbi/sentdm/models/template_retrieve_response.rbi +0 -355
  247. data/rbi/sentdm/models/template_update_response.rbi +0 -349
  248. data/rbi/sentdm/models/user_invite_response.rbi +0 -336
  249. data/rbi/sentdm/models/user_retrieve_response.rbi +0 -336
  250. data/rbi/sentdm/models/user_update_role_response.rbi +0 -341
  251. data/rbi/sentdm/models/webhook_create_response.rbi +0 -361
  252. data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -363
  253. data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -379
  254. data/rbi/sentdm/models/webhook_update_response.rbi +0 -361
  255. data/sig/sentdm/models/contact_create_response.rbs +0 -216
  256. data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +0 -182
  257. data/sig/sentdm/models/contact_retrieve_response.rbs +0 -216
  258. data/sig/sentdm/models/contact_update_response.rbs +0 -216
  259. data/sig/sentdm/models/conversation_list_messages_response.rbs +0 -404
  260. data/sig/sentdm/models/conversation_list_response.rbs +0 -404
  261. data/sig/sentdm/models/profile_create_response.rbs +0 -559
  262. data/sig/sentdm/models/profile_retrieve_response.rbs +0 -559
  263. data/sig/sentdm/models/profile_update_response.rbs +0 -559
  264. data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -357
  265. data/sig/sentdm/models/profiles/campaign_list_response.rbs +0 -357
  266. data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -357
  267. data/sig/sentdm/models/template_create_response.rbs +0 -182
  268. data/sig/sentdm/models/template_retrieve_response.rbs +0 -182
  269. data/sig/sentdm/models/template_update_response.rbs +0 -182
  270. data/sig/sentdm/models/user_invite_response.rbs +0 -177
  271. data/sig/sentdm/models/user_retrieve_response.rbs +0 -177
  272. data/sig/sentdm/models/user_update_role_response.rbs +0 -177
  273. data/sig/sentdm/models/webhook_create_response.rbs +0 -208
  274. data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -208
  275. data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -208
  276. data/sig/sentdm/models/webhook_update_response.rbs +0 -208
@@ -22,23 +22,17 @@ module Sentdm
22
22
  attr_writer :data
23
23
 
24
24
  # Error information
25
- sig { returns(T.nilable(Sentdm::Models::MeRetrieveResponse::Error)) }
25
+ sig { returns(T.nilable(Sentdm::ErrorDetail)) }
26
26
  attr_reader :error
27
27
 
28
- sig do
29
- params(
30
- error: T.nilable(Sentdm::Models::MeRetrieveResponse::Error::OrHash)
31
- ).void
32
- end
28
+ sig { params(error: T.nilable(Sentdm::ErrorDetail::OrHash)).void }
33
29
  attr_writer :error
34
30
 
35
31
  # Request and response metadata
36
- sig { returns(T.nilable(Sentdm::Models::MeRetrieveResponse::Meta)) }
32
+ sig { returns(T.nilable(Sentdm::APIMeta)) }
37
33
  attr_reader :meta
38
34
 
39
- sig do
40
- params(meta: Sentdm::Models::MeRetrieveResponse::Meta::OrHash).void
41
- end
35
+ sig { params(meta: Sentdm::APIMeta::OrHash).void }
42
36
  attr_writer :meta
43
37
 
44
38
  # Indicates whether the request was successful
@@ -52,8 +46,8 @@ module Sentdm
52
46
  sig do
53
47
  params(
54
48
  data: T.nilable(Sentdm::Models::MeRetrieveResponse::Data::OrHash),
55
- error: T.nilable(Sentdm::Models::MeRetrieveResponse::Error::OrHash),
56
- meta: Sentdm::Models::MeRetrieveResponse::Meta::OrHash,
49
+ error: T.nilable(Sentdm::ErrorDetail::OrHash),
50
+ meta: Sentdm::APIMeta::OrHash,
57
51
  success: T::Boolean
58
52
  ).returns(T.attached_class)
59
53
  end
@@ -75,8 +69,8 @@ module Sentdm
75
69
  override.returns(
76
70
  {
77
71
  data: T.nilable(Sentdm::Models::MeRetrieveResponse::Data),
78
- error: T.nilable(Sentdm::Models::MeRetrieveResponse::Error),
79
- meta: Sentdm::Models::MeRetrieveResponse::Meta,
72
+ error: T.nilable(Sentdm::ErrorDetail),
73
+ meta: Sentdm::APIMeta,
80
74
  success: T::Boolean
81
75
  }
82
76
  )
@@ -165,19 +159,34 @@ module Sentdm
165
159
  end
166
160
  attr_writer :profiles
167
161
 
162
+ # The SMS sender this account sends from in the United States, in E.164 form. Null
163
+ # when the account has no US SMS sender.
164
+ #
165
+ # The same value as channels.sms.phone_number, published under both names on
166
+ # purpose: sending_phone_number is what this value is already called on GET
167
+ # /v3/profiles, so the same key answers the same question whichever of the two
168
+ # endpoints you ask. Neither name is preferred over the other and neither is
169
+ # deprecated.
170
+ #
171
+ # The same value, not the same presence: this key is always written, including as
172
+ # null, whereas channels.sms.phone_number is left out entirely when there is no
173
+ # sender.
174
+ sig { returns(T.nilable(String)) }
175
+ attr_accessor :sending_phone_number
176
+
177
+ # The account that holds sending_phone_number in number inventory: normally this
178
+ # account itself, and a different account when the number is held elsewhere. Null
179
+ # when there is no US sender, or when the sender is not a number drawn from
180
+ # inventory — an alphanumeric sender ID or a short code.
181
+ sig { returns(T.nilable(String)) }
182
+ attr_accessor :sending_phone_number_profile_id
183
+
168
184
  # Profile configuration settings
169
- sig do
170
- returns(T.nilable(Sentdm::Models::MeRetrieveResponse::Data::Settings))
171
- end
185
+ sig { returns(T.nilable(Sentdm::ProfileSettings)) }
172
186
  attr_reader :settings
173
187
 
174
188
  sig do
175
- params(
176
- settings:
177
- T.nilable(
178
- Sentdm::Models::MeRetrieveResponse::Data::Settings::OrHash
179
- )
180
- ).void
189
+ params(settings: T.nilable(Sentdm::ProfileSettings::OrHash)).void
181
190
  end
182
191
  attr_writer :settings
183
192
 
@@ -216,10 +225,9 @@ module Sentdm
216
225
  T::Array[
217
226
  Sentdm::Models::MeRetrieveResponse::Data::Profile::OrHash
218
227
  ],
219
- settings:
220
- T.nilable(
221
- Sentdm::Models::MeRetrieveResponse::Data::Settings::OrHash
222
- ),
228
+ sending_phone_number: T.nilable(String),
229
+ sending_phone_number_profile_id: T.nilable(String),
230
+ settings: T.nilable(Sentdm::ProfileSettings::OrHash),
223
231
  short_name: T.nilable(String),
224
232
  status: T.nilable(String),
225
233
  type: String
@@ -246,6 +254,24 @@ module Sentdm
246
254
  # List of profiles (populated for organization type, empty for user and profile
247
255
  # types)
248
256
  profiles: nil,
257
+ # The SMS sender this account sends from in the United States, in E.164 form. Null
258
+ # when the account has no US SMS sender.
259
+ #
260
+ # The same value as channels.sms.phone_number, published under both names on
261
+ # purpose: sending_phone_number is what this value is already called on GET
262
+ # /v3/profiles, so the same key answers the same question whichever of the two
263
+ # endpoints you ask. Neither name is preferred over the other and neither is
264
+ # deprecated.
265
+ #
266
+ # The same value, not the same presence: this key is always written, including as
267
+ # null, whereas channels.sms.phone_number is left out entirely when there is no
268
+ # sender.
269
+ sending_phone_number: nil,
270
+ # The account that holds sending_phone_number in number inventory: normally this
271
+ # account itself, and a different account when the number is held elsewhere. Null
272
+ # when there is no US sender, or when the sender is not a number drawn from
273
+ # inventory — an alphanumeric sender ID or a short code.
274
+ sending_phone_number_profile_id: nil,
249
275
  # Profile configuration settings
250
276
  settings: nil,
251
277
  # Short name / abbreviation (only for profile type)
@@ -272,8 +298,9 @@ module Sentdm
272
298
  organization_id: T.nilable(String),
273
299
  profiles:
274
300
  T::Array[Sentdm::Models::MeRetrieveResponse::Data::Profile],
275
- settings:
276
- T.nilable(Sentdm::Models::MeRetrieveResponse::Data::Settings),
301
+ sending_phone_number: T.nilable(String),
302
+ sending_phone_number_profile_id: T.nilable(String),
303
+ settings: T.nilable(Sentdm::ProfileSettings),
277
304
  short_name: T.nilable(String),
278
305
  status: T.nilable(String),
279
306
  type: String
@@ -568,21 +595,10 @@ module Sentdm
568
595
  attr_accessor :role
569
596
 
570
597
  # Profile configuration settings
571
- sig do
572
- returns(
573
- T.nilable(
574
- Sentdm::Models::MeRetrieveResponse::Data::Profile::Settings
575
- )
576
- )
577
- end
598
+ sig { returns(T.nilable(Sentdm::ProfileSettings)) }
578
599
  attr_reader :settings
579
600
 
580
- sig do
581
- params(
582
- settings:
583
- Sentdm::Models::MeRetrieveResponse::Data::Profile::Settings::OrHash
584
- ).void
585
- end
601
+ sig { params(settings: Sentdm::ProfileSettings::OrHash).void }
586
602
  attr_writer :settings
587
603
 
588
604
  # Profile short name (abbreviation)
@@ -602,8 +618,7 @@ module Sentdm
602
618
  icon: T.nilable(String),
603
619
  name: String,
604
620
  role: T.nilable(String),
605
- settings:
606
- Sentdm::Models::MeRetrieveResponse::Data::Profile::Settings::OrHash,
621
+ settings: Sentdm::ProfileSettings::OrHash,
607
622
  short_name: T.nilable(String),
608
623
  status: T.nilable(String)
609
624
  ).returns(T.attached_class)
@@ -640,8 +655,7 @@ module Sentdm
640
655
  icon: T.nilable(String),
641
656
  name: String,
642
657
  role: T.nilable(String),
643
- settings:
644
- Sentdm::Models::MeRetrieveResponse::Data::Profile::Settings,
658
+ settings: Sentdm::ProfileSettings,
645
659
  short_name: T.nilable(String),
646
660
  status: T.nilable(String)
647
661
  }
@@ -649,327 +663,6 @@ module Sentdm
649
663
  end
650
664
  def to_hash
651
665
  end
652
-
653
- class Settings < Sentdm::Internal::Type::BaseModel
654
- OrHash =
655
- T.type_alias do
656
- T.any(
657
- Sentdm::Models::MeRetrieveResponse::Data::Profile::Settings,
658
- Sentdm::Internal::AnyHash
659
- )
660
- end
661
-
662
- # Always false. A profile no longer shares contacts with sibling profiles — it
663
- # sees only what it owns. Retained so existing v3 clients reading
664
- # allow_contact_sharing keep deserializing; it carries no information.
665
- sig { returns(T.nilable(T::Boolean)) }
666
- attr_accessor :allow_contact_sharing
667
-
668
- # Always false. A profile no longer shares templates with sibling profiles.
669
- # Retained so existing v3 clients reading allow_template_sharing keep
670
- # deserializing; it carries no information.
671
- sig { returns(T.nilable(T::Boolean)) }
672
- attr_accessor :allow_template_sharing
673
-
674
- # Billing model: profile, organization, or profile_and_organization
675
- sig { returns(T.nilable(String)) }
676
- attr_accessor :billing_model
677
-
678
- # Always false. A profile no longer inherits its organization's contacts. Retained
679
- # so existing v3 clients reading inherit_contacts keep deserializing; it carries
680
- # no information.
681
- sig { returns(T.nilable(T::Boolean)) }
682
- attr_accessor :inherit_contacts
683
-
684
- # Whether this profile inherits TCR brand from the organization
685
- sig { returns(T.nilable(T::Boolean)) }
686
- attr_accessor :inherit_tcr_brand
687
-
688
- # Whether this profile inherits TCR campaign from the organization
689
- sig { returns(T.nilable(T::Boolean)) }
690
- attr_accessor :inherit_tcr_campaign
691
-
692
- # Always false. A profile no longer inherits its organization's templates.
693
- # Retained so existing v3 clients reading inherit_templates keep deserializing; it
694
- # carries no information.
695
- sig { returns(T.nilable(T::Boolean)) }
696
- attr_accessor :inherit_templates
697
-
698
- # Profile configuration settings
699
- sig do
700
- params(
701
- allow_contact_sharing: T.nilable(T::Boolean),
702
- allow_template_sharing: T.nilable(T::Boolean),
703
- billing_model: T.nilable(String),
704
- inherit_contacts: T.nilable(T::Boolean),
705
- inherit_tcr_brand: T.nilable(T::Boolean),
706
- inherit_tcr_campaign: T.nilable(T::Boolean),
707
- inherit_templates: T.nilable(T::Boolean)
708
- ).returns(T.attached_class)
709
- end
710
- def self.new(
711
- # Always false. A profile no longer shares contacts with sibling profiles — it
712
- # sees only what it owns. Retained so existing v3 clients reading
713
- # allow_contact_sharing keep deserializing; it carries no information.
714
- allow_contact_sharing: nil,
715
- # Always false. A profile no longer shares templates with sibling profiles.
716
- # Retained so existing v3 clients reading allow_template_sharing keep
717
- # deserializing; it carries no information.
718
- allow_template_sharing: nil,
719
- # Billing model: profile, organization, or profile_and_organization
720
- billing_model: nil,
721
- # Always false. A profile no longer inherits its organization's contacts. Retained
722
- # so existing v3 clients reading inherit_contacts keep deserializing; it carries
723
- # no information.
724
- inherit_contacts: nil,
725
- # Whether this profile inherits TCR brand from the organization
726
- inherit_tcr_brand: nil,
727
- # Whether this profile inherits TCR campaign from the organization
728
- inherit_tcr_campaign: nil,
729
- # Always false. A profile no longer inherits its organization's templates.
730
- # Retained so existing v3 clients reading inherit_templates keep deserializing; it
731
- # carries no information.
732
- inherit_templates: nil
733
- )
734
- end
735
-
736
- sig do
737
- override.returns(
738
- {
739
- allow_contact_sharing: T.nilable(T::Boolean),
740
- allow_template_sharing: T.nilable(T::Boolean),
741
- billing_model: T.nilable(String),
742
- inherit_contacts: T.nilable(T::Boolean),
743
- inherit_tcr_brand: T.nilable(T::Boolean),
744
- inherit_tcr_campaign: T.nilable(T::Boolean),
745
- inherit_templates: T.nilable(T::Boolean)
746
- }
747
- )
748
- end
749
- def to_hash
750
- end
751
- end
752
- end
753
-
754
- class Settings < Sentdm::Internal::Type::BaseModel
755
- OrHash =
756
- T.type_alias do
757
- T.any(
758
- Sentdm::Models::MeRetrieveResponse::Data::Settings,
759
- Sentdm::Internal::AnyHash
760
- )
761
- end
762
-
763
- # Always false. A profile no longer shares contacts with sibling profiles — it
764
- # sees only what it owns. Retained so existing v3 clients reading
765
- # allow_contact_sharing keep deserializing; it carries no information.
766
- sig { returns(T.nilable(T::Boolean)) }
767
- attr_accessor :allow_contact_sharing
768
-
769
- # Always false. A profile no longer shares templates with sibling profiles.
770
- # Retained so existing v3 clients reading allow_template_sharing keep
771
- # deserializing; it carries no information.
772
- sig { returns(T.nilable(T::Boolean)) }
773
- attr_accessor :allow_template_sharing
774
-
775
- # Billing model: profile, organization, or profile_and_organization
776
- sig { returns(T.nilable(String)) }
777
- attr_accessor :billing_model
778
-
779
- # Always false. A profile no longer inherits its organization's contacts. Retained
780
- # so existing v3 clients reading inherit_contacts keep deserializing; it carries
781
- # no information.
782
- sig { returns(T.nilable(T::Boolean)) }
783
- attr_accessor :inherit_contacts
784
-
785
- # Whether this profile inherits TCR brand from the organization
786
- sig { returns(T.nilable(T::Boolean)) }
787
- attr_accessor :inherit_tcr_brand
788
-
789
- # Whether this profile inherits TCR campaign from the organization
790
- sig { returns(T.nilable(T::Boolean)) }
791
- attr_accessor :inherit_tcr_campaign
792
-
793
- # Always false. A profile no longer inherits its organization's templates.
794
- # Retained so existing v3 clients reading inherit_templates keep deserializing; it
795
- # carries no information.
796
- sig { returns(T.nilable(T::Boolean)) }
797
- attr_accessor :inherit_templates
798
-
799
- # Profile configuration settings
800
- sig do
801
- params(
802
- allow_contact_sharing: T.nilable(T::Boolean),
803
- allow_template_sharing: T.nilable(T::Boolean),
804
- billing_model: T.nilable(String),
805
- inherit_contacts: T.nilable(T::Boolean),
806
- inherit_tcr_brand: T.nilable(T::Boolean),
807
- inherit_tcr_campaign: T.nilable(T::Boolean),
808
- inherit_templates: T.nilable(T::Boolean)
809
- ).returns(T.attached_class)
810
- end
811
- def self.new(
812
- # Always false. A profile no longer shares contacts with sibling profiles — it
813
- # sees only what it owns. Retained so existing v3 clients reading
814
- # allow_contact_sharing keep deserializing; it carries no information.
815
- allow_contact_sharing: nil,
816
- # Always false. A profile no longer shares templates with sibling profiles.
817
- # Retained so existing v3 clients reading allow_template_sharing keep
818
- # deserializing; it carries no information.
819
- allow_template_sharing: nil,
820
- # Billing model: profile, organization, or profile_and_organization
821
- billing_model: nil,
822
- # Always false. A profile no longer inherits its organization's contacts. Retained
823
- # so existing v3 clients reading inherit_contacts keep deserializing; it carries
824
- # no information.
825
- inherit_contacts: nil,
826
- # Whether this profile inherits TCR brand from the organization
827
- inherit_tcr_brand: nil,
828
- # Whether this profile inherits TCR campaign from the organization
829
- inherit_tcr_campaign: nil,
830
- # Always false. A profile no longer inherits its organization's templates.
831
- # Retained so existing v3 clients reading inherit_templates keep deserializing; it
832
- # carries no information.
833
- inherit_templates: nil
834
- )
835
- end
836
-
837
- sig do
838
- override.returns(
839
- {
840
- allow_contact_sharing: T.nilable(T::Boolean),
841
- allow_template_sharing: T.nilable(T::Boolean),
842
- billing_model: T.nilable(String),
843
- inherit_contacts: T.nilable(T::Boolean),
844
- inherit_tcr_brand: T.nilable(T::Boolean),
845
- inherit_tcr_campaign: T.nilable(T::Boolean),
846
- inherit_templates: T.nilable(T::Boolean)
847
- }
848
- )
849
- end
850
- def to_hash
851
- end
852
- end
853
- end
854
-
855
- class Error < Sentdm::Internal::Type::BaseModel
856
- OrHash =
857
- T.type_alias do
858
- T.any(
859
- Sentdm::Models::MeRetrieveResponse::Error,
860
- Sentdm::Internal::AnyHash
861
- )
862
- end
863
-
864
- # Machine-readable error code (e.g., "RESOURCE_001")
865
- sig { returns(T.nilable(String)) }
866
- attr_reader :code
867
-
868
- sig { params(code: String).void }
869
- attr_writer :code
870
-
871
- # Additional validation error details (field-level errors)
872
- sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
873
- attr_accessor :details
874
-
875
- # URL to documentation about this error
876
- sig { returns(T.nilable(String)) }
877
- attr_accessor :doc_url
878
-
879
- # Human-readable error message
880
- sig { returns(T.nilable(String)) }
881
- attr_reader :message
882
-
883
- sig { params(message: String).void }
884
- attr_writer :message
885
-
886
- # Error information
887
- sig do
888
- params(
889
- code: String,
890
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
891
- doc_url: T.nilable(String),
892
- message: String
893
- ).returns(T.attached_class)
894
- end
895
- def self.new(
896
- # Machine-readable error code (e.g., "RESOURCE_001")
897
- code: nil,
898
- # Additional validation error details (field-level errors)
899
- details: nil,
900
- # URL to documentation about this error
901
- doc_url: nil,
902
- # Human-readable error message
903
- message: nil
904
- )
905
- end
906
-
907
- sig do
908
- override.returns(
909
- {
910
- code: String,
911
- details: T.nilable(T::Hash[Symbol, T::Array[String]]),
912
- doc_url: T.nilable(String),
913
- message: String
914
- }
915
- )
916
- end
917
- def to_hash
918
- end
919
- end
920
-
921
- class Meta < Sentdm::Internal::Type::BaseModel
922
- OrHash =
923
- T.type_alias do
924
- T.any(
925
- Sentdm::Models::MeRetrieveResponse::Meta,
926
- Sentdm::Internal::AnyHash
927
- )
928
- end
929
-
930
- # Unique identifier for this request (for tracing and support)
931
- sig { returns(T.nilable(String)) }
932
- attr_reader :request_id
933
-
934
- sig { params(request_id: String).void }
935
- attr_writer :request_id
936
-
937
- # Server timestamp when the response was generated
938
- sig { returns(T.nilable(Time)) }
939
- attr_reader :timestamp
940
-
941
- sig { params(timestamp: Time).void }
942
- attr_writer :timestamp
943
-
944
- # API version used for this request
945
- sig { returns(T.nilable(String)) }
946
- attr_reader :version
947
-
948
- sig { params(version: String).void }
949
- attr_writer :version
950
-
951
- # Request and response metadata
952
- sig do
953
- params(request_id: String, timestamp: Time, version: String).returns(
954
- T.attached_class
955
- )
956
- end
957
- def self.new(
958
- # Unique identifier for this request (for tracing and support)
959
- request_id: nil,
960
- # Server timestamp when the response was generated
961
- timestamp: nil,
962
- # API version used for this request
963
- version: nil
964
- )
965
- end
966
-
967
- sig do
968
- override.returns(
969
- { request_id: String, timestamp: Time, version: String }
970
- )
971
- end
972
- def to_hash
973
666
  end
974
667
  end
975
668
  end
@@ -8,6 +8,12 @@ module Sentdm
8
8
  T.any(Sentdm::MessageEventPayload, Sentdm::Internal::AnyHash)
9
9
  end
10
10
 
11
+ # The status the message just reached, for example SENT, DELIVERED, or FAILED.
12
+ # Sent means dispatched and delivered means confirmed, so treat them as distinct
13
+ # outcomes.
14
+ sig { returns(String) }
15
+ attr_accessor :message_status
16
+
11
17
  # The account the message belongs to.
12
18
  sig { returns(T.nilable(String)) }
13
19
  attr_reader :account_id
@@ -35,15 +41,6 @@ module Sentdm
35
41
  sig { params(message_id: String).void }
36
42
  attr_writer :message_id
37
43
 
38
- # The status the message just reached, for example SENT, DELIVERED, or FAILED.
39
- # Sent means dispatched and delivered means confirmed, so treat them as distinct
40
- # outcomes.
41
- sig { returns(T.nilable(String)) }
42
- attr_reader :message_status
43
-
44
- sig { params(message_status: String).void }
45
- attr_writer :message_status
46
-
47
44
  # The recipient's number in E.164 format.
48
45
  sig { returns(T.nilable(String)) }
49
46
  attr_reader :outbound_number
@@ -72,11 +69,11 @@ module Sentdm
72
69
  # status.
73
70
  sig do
74
71
  params(
72
+ message_status: String,
75
73
  account_id: String,
76
74
  agent_id: T.nilable(String),
77
75
  channel: String,
78
76
  message_id: String,
79
- message_status: String,
80
77
  outbound_number: String,
81
78
  template_id: T.nilable(String),
82
79
  template_name: T.nilable(String),
@@ -84,6 +81,10 @@ module Sentdm
84
81
  ).returns(T.attached_class)
85
82
  end
86
83
  def self.new(
84
+ # The status the message just reached, for example SENT, DELIVERED, or FAILED.
85
+ # Sent means dispatched and delivered means confirmed, so treat them as distinct
86
+ # outcomes.
87
+ message_status:,
87
88
  # The account the message belongs to.
88
89
  account_id: nil,
89
90
  # The agent attributed to the send, when the send was attributed to one.
@@ -94,10 +95,6 @@ module Sentdm
94
95
  # The message this event describes. Stable across every event in the message's
95
96
  # lifecycle, so use it to correlate them.
96
97
  message_id: nil,
97
- # The status the message just reached, for example SENT, DELIVERED, or FAILED.
98
- # Sent means dispatched and delivered means confirmed, so treat them as distinct
99
- # outcomes.
100
- message_status: nil,
101
98
  # The recipient's number in E.164 format.
102
99
  outbound_number: nil,
103
100
  # The template the message was sent from, when it was sent from one.
@@ -113,11 +110,11 @@ module Sentdm
113
110
  sig do
114
111
  override.returns(
115
112
  {
113
+ message_status: String,
116
114
  account_id: String,
117
115
  agent_id: T.nilable(String),
118
116
  channel: String,
119
117
  message_id: String,
120
- message_status: String,
121
118
  outbound_number: String,
122
119
  template_id: T.nilable(String),
123
120
  template_name: T.nilable(String),