sentdm 0.3.1 → 0.4.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 (214) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +9 -9
  4. data/lib/sentdm/client.rb +0 -1
  5. data/lib/sentdm/models/api_meta.rb +1 -9
  6. data/lib/sentdm/models/brand_data.rb +235 -198
  7. data/lib/sentdm/models/brand_with_kyc.rb +249 -214
  8. data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +0 -1
  9. data/lib/sentdm/models/contact_create_params.rb +13 -6
  10. data/lib/sentdm/models/contact_delete_params.rb +8 -1
  11. data/lib/sentdm/models/contact_list_params.rb +10 -2
  12. data/lib/sentdm/models/contact_retrieve_params.rb +7 -1
  13. data/lib/sentdm/models/contact_update_params.rb +13 -6
  14. data/lib/sentdm/models/me_retrieve_params.rb +7 -1
  15. data/lib/sentdm/models/me_retrieve_response.rb +152 -7
  16. data/lib/sentdm/models/message_retrieve_activities_params.rb +7 -1
  17. data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
  18. data/lib/sentdm/models/message_retrieve_status_params.rb +7 -1
  19. data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
  20. data/lib/sentdm/models/message_send_params.rb +17 -10
  21. data/lib/sentdm/models/mutation_request.rb +6 -6
  22. data/lib/sentdm/models/profile_complete_params.rb +13 -6
  23. data/lib/sentdm/models/profile_create_params.rb +192 -10
  24. data/lib/sentdm/models/profile_delete_params.rb +18 -18
  25. data/lib/sentdm/models/profile_detail.rb +144 -95
  26. data/lib/sentdm/models/profile_list_params.rb +7 -1
  27. data/lib/sentdm/models/profile_retrieve_params.rb +7 -1
  28. data/lib/sentdm/models/profile_update_params.rb +142 -22
  29. data/lib/sentdm/models/template_create_params.rb +17 -10
  30. data/lib/sentdm/models/template_delete_params.rb +13 -6
  31. data/lib/sentdm/models/template_list_params.rb +18 -2
  32. data/lib/sentdm/models/template_retrieve_params.rb +7 -1
  33. data/lib/sentdm/models/template_update_params.rb +17 -10
  34. data/lib/sentdm/models/template_variable.rb +7 -1
  35. data/lib/sentdm/models/user_invite_params.rb +13 -6
  36. data/lib/sentdm/models/user_list_params.rb +7 -1
  37. data/lib/sentdm/models/user_remove_params.rb +17 -17
  38. data/lib/sentdm/models/user_retrieve_params.rb +7 -1
  39. data/lib/sentdm/models/user_update_role_params.rb +15 -16
  40. data/lib/sentdm/models/webhook_create_params.rb +13 -6
  41. data/lib/sentdm/models/webhook_delete_params.rb +7 -1
  42. data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
  43. data/lib/sentdm/models/webhook_list_events_params.rb +7 -1
  44. data/lib/sentdm/models/webhook_list_params.rb +7 -1
  45. data/lib/sentdm/models/webhook_retrieve_params.rb +7 -1
  46. data/lib/sentdm/models/webhook_rotate_secret_params.rb +7 -1
  47. data/lib/sentdm/models/webhook_test_params.rb +13 -6
  48. data/lib/sentdm/models/webhook_toggle_status_params.rb +13 -6
  49. data/lib/sentdm/models/webhook_update_params.rb +13 -6
  50. data/lib/sentdm/models.rb +0 -12
  51. data/lib/sentdm/resources/brands/campaigns.rb +0 -129
  52. data/lib/sentdm/resources/brands.rb +0 -112
  53. data/lib/sentdm/resources/contacts.rb +43 -20
  54. data/lib/sentdm/resources/lookup.rb +0 -21
  55. data/lib/sentdm/resources/me.rb +24 -5
  56. data/lib/sentdm/resources/messages.rb +24 -8
  57. data/lib/sentdm/resources/profiles.rb +116 -32
  58. data/lib/sentdm/resources/templates.rb +47 -24
  59. data/lib/sentdm/resources/users.rb +40 -23
  60. data/lib/sentdm/resources/webhooks.rb +92 -34
  61. data/lib/sentdm/version.rb +1 -1
  62. data/lib/sentdm.rb +1 -14
  63. data/rbi/sentdm/client.rbi +0 -1
  64. data/rbi/sentdm/models/api_meta.rbi +4 -18
  65. data/rbi/sentdm/models/brand_data.rbi +326 -203
  66. data/rbi/sentdm/models/brand_with_kyc.rbi +334 -216
  67. data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +6 -8
  68. data/rbi/sentdm/models/contact_create_params.rbi +19 -10
  69. data/rbi/sentdm/models/contact_delete_params.rbi +9 -0
  70. data/rbi/sentdm/models/contact_list_params.rbi +11 -0
  71. data/rbi/sentdm/models/contact_retrieve_params.rbi +13 -2
  72. data/rbi/sentdm/models/contact_update_params.rbi +19 -10
  73. data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
  74. data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
  75. data/rbi/sentdm/models/message_retrieve_activities_params.rbi +13 -2
  76. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
  77. data/rbi/sentdm/models/message_retrieve_status_params.rbi +13 -2
  78. data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
  79. data/rbi/sentdm/models/message_send_params.rbi +22 -13
  80. data/rbi/sentdm/models/mutation_request.rbi +10 -10
  81. data/rbi/sentdm/models/profile_complete_params.rbi +19 -10
  82. data/rbi/sentdm/models/profile_create_params.rbi +323 -15
  83. data/rbi/sentdm/models/profile_delete_params.rbi +36 -24
  84. data/rbi/sentdm/models/profile_detail.rbi +184 -128
  85. data/rbi/sentdm/models/profile_list_params.rbi +16 -5
  86. data/rbi/sentdm/models/profile_retrieve_params.rbi +13 -2
  87. data/rbi/sentdm/models/profile_update_params.rbi +231 -30
  88. data/rbi/sentdm/models/template_create_params.rbi +22 -13
  89. data/rbi/sentdm/models/template_delete_params.rbi +19 -10
  90. data/rbi/sentdm/models/template_list_params.rbi +19 -0
  91. data/rbi/sentdm/models/template_retrieve_params.rbi +13 -2
  92. data/rbi/sentdm/models/template_update_params.rbi +22 -13
  93. data/rbi/sentdm/models/template_variable.rbi +6 -0
  94. data/rbi/sentdm/models/user_invite_params.rbi +19 -10
  95. data/rbi/sentdm/models/user_list_params.rbi +16 -5
  96. data/rbi/sentdm/models/user_remove_params.rbi +35 -23
  97. data/rbi/sentdm/models/user_retrieve_params.rbi +13 -2
  98. data/rbi/sentdm/models/user_update_role_params.rbi +23 -25
  99. data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
  100. data/rbi/sentdm/models/webhook_delete_params.rbi +13 -2
  101. data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
  102. data/rbi/sentdm/models/webhook_list_events_params.rbi +16 -1
  103. data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
  104. data/rbi/sentdm/models/webhook_retrieve_params.rbi +13 -2
  105. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +15 -1
  106. data/rbi/sentdm/models/webhook_test_params.rbi +19 -10
  107. data/rbi/sentdm/models/webhook_toggle_status_params.rbi +19 -10
  108. data/rbi/sentdm/models/webhook_update_params.rbi +19 -10
  109. data/rbi/sentdm/models.rbi +0 -12
  110. data/rbi/sentdm/resources/brands/campaigns.rbi +0 -95
  111. data/rbi/sentdm/resources/brands.rbi +0 -80
  112. data/rbi/sentdm/resources/contacts.rbi +37 -12
  113. data/rbi/sentdm/resources/lookup.rbi +0 -12
  114. data/rbi/sentdm/resources/me.rbi +25 -7
  115. data/rbi/sentdm/resources/messages.rbi +17 -4
  116. data/rbi/sentdm/resources/profiles.rbi +178 -38
  117. data/rbi/sentdm/resources/templates.rbi +47 -19
  118. data/rbi/sentdm/resources/users.rbi +47 -25
  119. data/rbi/sentdm/resources/webhooks.rbi +92 -20
  120. data/sig/sentdm/models/api_meta.rbs +2 -16
  121. data/sig/sentdm/models/brand_data.rbs +188 -142
  122. data/sig/sentdm/models/brand_with_kyc.rbs +184 -133
  123. data/sig/sentdm/models/contact_create_params.rbs +16 -5
  124. data/sig/sentdm/models/contact_delete_params.rbs +11 -1
  125. data/sig/sentdm/models/contact_list_params.rbs +8 -1
  126. data/sig/sentdm/models/contact_retrieve_params.rbs +12 -2
  127. data/sig/sentdm/models/contact_update_params.rbs +13 -6
  128. data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
  129. data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
  130. data/sig/sentdm/models/message_retrieve_activities_params.rbs +12 -2
  131. data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
  132. data/sig/sentdm/models/message_retrieve_status_params.rbs +12 -2
  133. data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
  134. data/sig/sentdm/models/message_send_params.rbs +15 -8
  135. data/sig/sentdm/models/mutation_request.rbs +5 -5
  136. data/sig/sentdm/models/profile_complete_params.rbs +13 -6
  137. data/sig/sentdm/models/profile_create_params.rbs +111 -7
  138. data/sig/sentdm/models/profile_delete_params.rbs +23 -13
  139. data/sig/sentdm/models/profile_detail.rbs +105 -84
  140. data/sig/sentdm/models/profile_list_params.rbs +14 -3
  141. data/sig/sentdm/models/profile_retrieve_params.rbs +8 -1
  142. data/sig/sentdm/models/profile_update_params.rbs +86 -17
  143. data/sig/sentdm/models/template_create_params.rbs +15 -8
  144. data/sig/sentdm/models/template_delete_params.rbs +16 -5
  145. data/sig/sentdm/models/template_list_params.rbs +13 -1
  146. data/sig/sentdm/models/template_retrieve_params.rbs +12 -2
  147. data/sig/sentdm/models/template_update_params.rbs +15 -8
  148. data/sig/sentdm/models/template_variable.rbs +5 -0
  149. data/sig/sentdm/models/user_invite_params.rbs +13 -6
  150. data/sig/sentdm/models/user_list_params.rbs +14 -3
  151. data/sig/sentdm/models/user_remove_params.rbs +23 -13
  152. data/sig/sentdm/models/user_retrieve_params.rbs +8 -1
  153. data/sig/sentdm/models/user_update_role_params.rbs +17 -17
  154. data/sig/sentdm/models/webhook_create_params.rbs +13 -6
  155. data/sig/sentdm/models/webhook_delete_params.rbs +12 -2
  156. data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
  157. data/sig/sentdm/models/webhook_list_events_params.rbs +13 -1
  158. data/sig/sentdm/models/webhook_list_params.rbs +13 -1
  159. data/sig/sentdm/models/webhook_retrieve_params.rbs +12 -2
  160. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -1
  161. data/sig/sentdm/models/webhook_test_params.rbs +13 -6
  162. data/sig/sentdm/models/webhook_toggle_status_params.rbs +17 -5
  163. data/sig/sentdm/models/webhook_update_params.rbs +13 -6
  164. data/sig/sentdm/models.rbs +0 -12
  165. data/sig/sentdm/resources/brands/campaigns.rbs +0 -29
  166. data/sig/sentdm/resources/brands.rbs +0 -25
  167. data/sig/sentdm/resources/contacts.rbs +7 -2
  168. data/sig/sentdm/resources/lookup.rbs +0 -5
  169. data/sig/sentdm/resources/me.rbs +1 -0
  170. data/sig/sentdm/resources/messages.rbs +4 -1
  171. data/sig/sentdm/resources/profiles.rbs +19 -8
  172. data/sig/sentdm/resources/templates.rbs +9 -3
  173. data/sig/sentdm/resources/users.rbs +10 -7
  174. data/sig/sentdm/resources/webhooks.rbs +18 -5
  175. metadata +1 -40
  176. data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
  177. data/lib/sentdm/models/brand_create_params.rb +0 -41
  178. data/lib/sentdm/models/brand_delete_params.rb +0 -34
  179. data/lib/sentdm/models/brand_list_params.rb +0 -14
  180. data/lib/sentdm/models/brand_list_response.rb +0 -43
  181. data/lib/sentdm/models/brand_update_params.rb +0 -48
  182. data/lib/sentdm/models/brands/campaign_create_params.rb +0 -50
  183. data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -43
  184. data/lib/sentdm/models/brands/campaign_list_params.rb +0 -22
  185. data/lib/sentdm/models/brands/campaign_list_response.rb +0 -47
  186. data/lib/sentdm/models/brands/campaign_update_params.rb +0 -57
  187. data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +0 -20
  188. data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +0 -104
  189. data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +0 -74
  190. data/rbi/sentdm/models/brand_create_params.rbi +0 -68
  191. data/rbi/sentdm/models/brand_delete_params.rbi +0 -68
  192. data/rbi/sentdm/models/brand_list_params.rbi +0 -27
  193. data/rbi/sentdm/models/brand_list_response.rbi +0 -71
  194. data/rbi/sentdm/models/brand_update_params.rbi +0 -74
  195. data/rbi/sentdm/models/brands/campaign_create_params.rbi +0 -79
  196. data/rbi/sentdm/models/brands/campaign_delete_params.rbi +0 -84
  197. data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -37
  198. data/rbi/sentdm/models/brands/campaign_list_response.rbi +0 -82
  199. data/rbi/sentdm/models/brands/campaign_update_params.rbi +0 -85
  200. data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +0 -38
  201. data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +0 -183
  202. data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
  203. data/sig/sentdm/models/brand_create_params.rbs +0 -36
  204. data/sig/sentdm/models/brand_delete_params.rbs +0 -36
  205. data/sig/sentdm/models/brand_list_params.rbs +0 -14
  206. data/sig/sentdm/models/brand_list_response.rbs +0 -39
  207. data/sig/sentdm/models/brand_update_params.rbs +0 -45
  208. data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -47
  209. data/sig/sentdm/models/brands/campaign_delete_params.rbs +0 -46
  210. data/sig/sentdm/models/brands/campaign_list_params.rbs +0 -25
  211. data/sig/sentdm/models/brands/campaign_list_response.rbs +0 -41
  212. data/sig/sentdm/models/brands/campaign_update_params.rbs +0 -52
  213. data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +0 -23
  214. data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +0 -102
@@ -24,19 +24,24 @@ module Sentdm
24
24
  # @return [Boolean, nil]
25
25
  optional :opt_out, Sentdm::Internal::Type::Boolean, nil?: true
26
26
 
27
- # @!attribute test_mode
28
- # Test mode flag - when true, the operation is simulated without side effects
29
- # Useful for testing integrations without actual execution
27
+ # @!attribute sandbox
28
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
29
+ # for testing integrations without actual execution
30
30
  #
31
31
  # @return [Boolean, nil]
32
- optional :test_mode, Sentdm::Internal::Type::Boolean
32
+ optional :sandbox, Sentdm::Internal::Type::Boolean
33
33
 
34
34
  # @!attribute idempotency_key
35
35
  #
36
36
  # @return [String, nil]
37
37
  optional :idempotency_key, String
38
38
 
39
- # @!method initialize(id:, default_channel: nil, opt_out: nil, test_mode: nil, idempotency_key: nil, request_options: {})
39
+ # @!attribute x_profile_id
40
+ #
41
+ # @return [String, nil]
42
+ optional :x_profile_id, String
43
+
44
+ # @!method initialize(id:, default_channel: nil, opt_out: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
40
45
  # Some parameter documentations has been truncated, see
41
46
  # {Sentdm::Models::ContactUpdateParams} for more details.
42
47
  #
@@ -46,10 +51,12 @@ module Sentdm
46
51
  #
47
52
  # @param opt_out [Boolean, nil] Whether the contact has opted out of messaging
48
53
  #
49
- # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
54
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
50
55
  #
51
56
  # @param idempotency_key [String]
52
57
  #
58
+ # @param x_profile_id [String]
59
+ #
53
60
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
54
61
  end
55
62
  end
@@ -7,7 +7,13 @@ module Sentdm
7
7
  extend Sentdm::Internal::Type::RequestParameters::Converter
8
8
  include Sentdm::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute x_profile_id
11
+ #
12
+ # @return [String, nil]
13
+ optional :x_profile_id, String
14
+
15
+ # @!method initialize(x_profile_id: nil, request_options: {})
16
+ # @param x_profile_id [String]
11
17
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
12
18
  end
13
19
  end
@@ -42,11 +42,17 @@ module Sentdm
42
42
  # @see Sentdm::Models::MeRetrieveResponse#data
43
43
  class Data < Sentdm::Internal::Type::BaseModel
44
44
  # @!attribute id
45
- # Customer ID (organization or profile)
45
+ # Customer ID (organization, account, or profile)
46
46
  #
47
47
  # @return [String, nil]
48
48
  optional :id, String
49
49
 
50
+ # @!attribute channels
51
+ # Messaging channel configuration
52
+ #
53
+ # @return [Sentdm::Models::MeRetrieveResponse::Data::Channels, nil]
54
+ optional :channels, -> { Sentdm::Models::MeRetrieveResponse::Data::Channels }
55
+
50
56
  # @!attribute created_at
51
57
  # When the account was created
52
58
  #
@@ -59,6 +65,12 @@ module Sentdm
59
65
  # @return [String, nil]
60
66
  optional :description, String, nil?: true
61
67
 
68
+ # @!attribute email
69
+ # Contact email address
70
+ #
71
+ # @return [String, nil]
72
+ optional :email, String, nil?: true
73
+
62
74
  # @!attribute icon
63
75
  # Account icon URL
64
76
  #
@@ -71,13 +83,19 @@ module Sentdm
71
83
  # @return [String, nil]
72
84
  optional :name, String
73
85
 
86
+ # @!attribute organization_id
87
+ # Organization ID (only for profile type — the parent organization)
88
+ #
89
+ # @return [String, nil]
90
+ optional :organization_id, String, nil?: true
91
+
74
92
  # @!attribute profiles
75
- # List of profiles (only for organization type)
93
+ # List of profiles (populated for organization type, empty for user and profile
94
+ # types)
76
95
  #
77
96
  # @return [Array<Sentdm::Models::MeRetrieveResponse::Data::Profile>, nil]
78
97
  optional :profiles,
79
- -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Models::MeRetrieveResponse::Data::Profile] },
80
- nil?: true
98
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Models::MeRetrieveResponse::Data::Profile] }
81
99
 
82
100
  # @!attribute settings
83
101
  # Profile settings (only for profile type)
@@ -85,6 +103,12 @@ module Sentdm
85
103
  # @return [Sentdm::Models::ProfileSettings, nil]
86
104
  optional :settings, -> { Sentdm::ProfileSettings }, nil?: true
87
105
 
106
+ # @!attribute short_name
107
+ # Short name / abbreviation (only for profile type)
108
+ #
109
+ # @return [String, nil]
110
+ optional :short_name, String, nil?: true
111
+
88
112
  # @!attribute status
89
113
  # Profile status (only for profile type): incomplete, pending_review, approved,
90
114
  # etc.
@@ -92,27 +116,148 @@ module Sentdm
92
116
  # @return [String, nil]
93
117
  optional :status, String, nil?: true
94
118
 
95
- # @!method initialize(id: nil, created_at: nil, description: nil, icon: nil, name: nil, profiles: nil, settings: nil, status: nil)
119
+ # @!attribute type
120
+ # Account type: "organization" (has profiles), "user" (no profiles), or "profile"
121
+ # (child of an organization)
122
+ #
123
+ # @return [String, nil]
124
+ optional :type, String
125
+
126
+ # @!method initialize(id: nil, channels: nil, created_at: nil, description: nil, email: nil, icon: nil, name: nil, organization_id: nil, profiles: nil, settings: nil, short_name: nil, status: nil, type: nil)
96
127
  # Some parameter documentations has been truncated, see
97
128
  # {Sentdm::Models::MeRetrieveResponse::Data} for more details.
98
129
  #
99
130
  # The response data (null if error)
100
131
  #
101
- # @param id [String] Customer ID (organization or profile)
132
+ # @param id [String] Customer ID (organization, account, or profile)
133
+ #
134
+ # @param channels [Sentdm::Models::MeRetrieveResponse::Data::Channels] Messaging channel configuration
102
135
  #
103
136
  # @param created_at [Time] When the account was created
104
137
  #
105
138
  # @param description [String, nil] Account description
106
139
  #
140
+ # @param email [String, nil] Contact email address
141
+ #
107
142
  # @param icon [String, nil] Account icon URL
108
143
  #
109
144
  # @param name [String] Account name
110
145
  #
111
- # @param profiles [Array<Sentdm::Models::MeRetrieveResponse::Data::Profile>, nil] List of profiles (only for organization type)
146
+ # @param organization_id [String, nil] Organization ID (only for profile type — the parent organization)
147
+ #
148
+ # @param profiles [Array<Sentdm::Models::MeRetrieveResponse::Data::Profile>] List of profiles (populated for organization type, empty for user and profile ty
112
149
  #
113
150
  # @param settings [Sentdm::Models::ProfileSettings, nil] Profile settings (only for profile type)
114
151
  #
152
+ # @param short_name [String, nil] Short name / abbreviation (only for profile type)
153
+ #
115
154
  # @param status [String, nil] Profile status (only for profile type): incomplete, pending_review, approved, et
155
+ #
156
+ # @param type [String] Account type: "organization" (has profiles), "user" (no profiles), or "profile"
157
+
158
+ # @see Sentdm::Models::MeRetrieveResponse::Data#channels
159
+ class Channels < Sentdm::Internal::Type::BaseModel
160
+ # @!attribute rcs
161
+ # RCS channel (provider: vibes)
162
+ #
163
+ # @return [Sentdm::Models::MeRetrieveResponse::Data::Channels::Rcs, nil]
164
+ optional :rcs, -> { Sentdm::Models::MeRetrieveResponse::Data::Channels::Rcs }
165
+
166
+ # @!attribute sms
167
+ # SMS channel (providers: telnyx, sinch)
168
+ #
169
+ # @return [Sentdm::Models::MeRetrieveResponse::Data::Channels::SMS, nil]
170
+ optional :sms, -> { Sentdm::Models::MeRetrieveResponse::Data::Channels::SMS }
171
+
172
+ # @!attribute whatsapp
173
+ # WhatsApp Business channel (provider: meta)
174
+ #
175
+ # @return [Sentdm::Models::MeRetrieveResponse::Data::Channels::Whatsapp, nil]
176
+ optional :whatsapp, -> { Sentdm::Models::MeRetrieveResponse::Data::Channels::Whatsapp }
177
+
178
+ # @!method initialize(rcs: nil, sms: nil, whatsapp: nil)
179
+ # Messaging channel configuration
180
+ #
181
+ # @param rcs [Sentdm::Models::MeRetrieveResponse::Data::Channels::Rcs] RCS channel (provider: vibes)
182
+ #
183
+ # @param sms [Sentdm::Models::MeRetrieveResponse::Data::Channels::SMS] SMS channel (providers: telnyx, sinch)
184
+ #
185
+ # @param whatsapp [Sentdm::Models::MeRetrieveResponse::Data::Channels::Whatsapp] WhatsApp Business channel (provider: meta)
186
+
187
+ # @see Sentdm::Models::MeRetrieveResponse::Data::Channels#rcs
188
+ class Rcs < Sentdm::Internal::Type::BaseModel
189
+ # @!attribute configured
190
+ # Whether RCS is configured for this account
191
+ #
192
+ # @return [Boolean, nil]
193
+ optional :configured, Sentdm::Internal::Type::Boolean
194
+
195
+ # @!attribute phone_number
196
+ # RCS-enabled phone number in E.164 format
197
+ #
198
+ # @return [String, nil]
199
+ optional :phone_number, String, nil?: true
200
+
201
+ # @!method initialize(configured: nil, phone_number: nil)
202
+ # RCS channel (provider: vibes)
203
+ #
204
+ # @param configured [Boolean] Whether RCS is configured for this account
205
+ #
206
+ # @param phone_number [String, nil] RCS-enabled phone number in E.164 format
207
+ end
208
+
209
+ # @see Sentdm::Models::MeRetrieveResponse::Data::Channels#sms
210
+ class SMS < Sentdm::Internal::Type::BaseModel
211
+ # @!attribute configured
212
+ # Whether SMS is configured for this account
213
+ #
214
+ # @return [Boolean, nil]
215
+ optional :configured, Sentdm::Internal::Type::Boolean
216
+
217
+ # @!attribute phone_number
218
+ # Sending phone number in E.164 format
219
+ #
220
+ # @return [String, nil]
221
+ optional :phone_number, String, nil?: true
222
+
223
+ # @!method initialize(configured: nil, phone_number: nil)
224
+ # SMS channel (providers: telnyx, sinch)
225
+ #
226
+ # @param configured [Boolean] Whether SMS is configured for this account
227
+ #
228
+ # @param phone_number [String, nil] Sending phone number in E.164 format
229
+ end
230
+
231
+ # @see Sentdm::Models::MeRetrieveResponse::Data::Channels#whatsapp
232
+ class Whatsapp < Sentdm::Internal::Type::BaseModel
233
+ # @!attribute business_name
234
+ # WhatsApp Business display name
235
+ #
236
+ # @return [String, nil]
237
+ optional :business_name, String, nil?: true
238
+
239
+ # @!attribute configured
240
+ # Whether WhatsApp is configured for this account
241
+ #
242
+ # @return [Boolean, nil]
243
+ optional :configured, Sentdm::Internal::Type::Boolean
244
+
245
+ # @!attribute phone_number
246
+ # WhatsApp phone number in E.164 format
247
+ #
248
+ # @return [String, nil]
249
+ optional :phone_number, String, nil?: true
250
+
251
+ # @!method initialize(business_name: nil, configured: nil, phone_number: nil)
252
+ # WhatsApp Business channel (provider: meta)
253
+ #
254
+ # @param business_name [String, nil] WhatsApp Business display name
255
+ #
256
+ # @param configured [Boolean] Whether WhatsApp is configured for this account
257
+ #
258
+ # @param phone_number [String, nil] WhatsApp phone number in E.164 format
259
+ end
260
+ end
116
261
 
117
262
  class Profile < Sentdm::Internal::Type::BaseModel
118
263
  # @!attribute id
@@ -12,8 +12,14 @@ module Sentdm
12
12
  # @return [String]
13
13
  required :id, String
14
14
 
15
- # @!method initialize(id:, request_options: {})
15
+ # @!attribute x_profile_id
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_profile_id, String
19
+
20
+ # @!method initialize(id:, x_profile_id: nil, request_options: {})
16
21
  # @param id [String]
22
+ # @param x_profile_id [String]
17
23
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
18
24
  end
19
25
  end
@@ -62,11 +62,12 @@ module Sentdm
62
62
  # @param message_id [String] The message ID these activities belong to
63
63
 
64
64
  class Activity < Sentdm::Internal::Type::BaseModel
65
- # @!attribute content
66
- # Additional content or payload for the activity (e.g., channel response)
65
+ # @!attribute active_contact_price
66
+ # Active contact markup applied on top of the channel cost, formatted to 4 decimal
67
+ # places.
67
68
  #
68
69
  # @return [String, nil]
69
- optional :content, String, nil?: true
70
+ optional :active_contact_price, String, nil?: true
70
71
 
71
72
  # @!attribute description
72
73
  # Human-readable description of the activity
@@ -74,6 +75,13 @@ module Sentdm
74
75
  # @return [String, nil]
75
76
  optional :description, String
76
77
 
78
+ # @!attribute price
79
+ # Channel cost for this activity (e.g., SMS/WhatsApp provider cost), formatted to
80
+ # 4 decimal places.
81
+ #
82
+ # @return [String, nil]
83
+ optional :price, String, nil?: true
84
+
77
85
  # @!attribute status
78
86
  # Activity status (e.g., ACCEPTED, PROCESSED, SENT, DELIVERED, FAILED)
79
87
  #
@@ -86,13 +94,19 @@ module Sentdm
86
94
  # @return [Time, nil]
87
95
  optional :timestamp, Time
88
96
 
89
- # @!method initialize(content: nil, description: nil, status: nil, timestamp: nil)
97
+ # @!method initialize(active_contact_price: nil, description: nil, price: nil, status: nil, timestamp: nil)
98
+ # Some parameter documentations has been truncated, see
99
+ # {Sentdm::Models::MessageRetrieveActivitiesResponse::Data::Activity} for more
100
+ # details.
101
+ #
90
102
  # A single message activity event for v3 API
91
103
  #
92
- # @param content [String, nil] Additional content or payload for the activity (e.g., channel response)
104
+ # @param active_contact_price [String, nil] Active contact markup applied on top of the channel cost, formatted to 4 decimal
93
105
  #
94
106
  # @param description [String] Human-readable description of the activity
95
107
  #
108
+ # @param price [String, nil] Channel cost for this activity (e.g., SMS/WhatsApp provider cost), formatted to
109
+ #
96
110
  # @param status [String] Activity status (e.g., ACCEPTED, PROCESSED, SENT, DELIVERED, FAILED)
97
111
  #
98
112
  # @param timestamp [Time] When this activity occurred
@@ -12,8 +12,14 @@ module Sentdm
12
12
  # @return [String]
13
13
  required :id, String
14
14
 
15
- # @!method initialize(id:, request_options: {})
15
+ # @!attribute x_profile_id
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_profile_id, String
19
+
20
+ # @!method initialize(id:, x_profile_id: nil, request_options: {})
16
21
  # @param id [String]
22
+ # @param x_profile_id [String]
17
23
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
18
24
  end
19
25
  end
@@ -46,6 +46,11 @@ module Sentdm
46
46
  # @return [String, nil]
47
47
  optional :id, String
48
48
 
49
+ # @!attribute active_contact_price
50
+ #
51
+ # @return [Float, nil]
52
+ optional :active_contact_price, Float, nil?: true
53
+
49
54
  # @!attribute channel
50
55
  #
51
56
  # @return [String, nil]
@@ -122,7 +127,7 @@ module Sentdm
122
127
  # @return [String, nil]
123
128
  optional :template_name, String
124
129
 
125
- # @!method initialize(id: nil, channel: nil, contact_id: nil, created_at: nil, customer_id: nil, events: nil, message_body: nil, phone: nil, phone_international: nil, price: nil, region_code: nil, status: nil, template_category: nil, template_id: nil, template_name: nil)
130
+ # @!method initialize(id: nil, active_contact_price: nil, channel: nil, contact_id: nil, created_at: nil, customer_id: nil, events: nil, message_body: nil, phone: nil, phone_international: nil, price: nil, region_code: nil, status: nil, template_category: nil, template_id: nil, template_name: nil)
126
131
  # Some parameter documentations has been truncated, see
127
132
  # {Sentdm::Models::MessageRetrieveStatusResponse::Data} for more details.
128
133
  #
@@ -130,6 +135,8 @@ module Sentdm
130
135
  #
131
136
  # @param id [String]
132
137
  #
138
+ # @param active_contact_price [Float, nil]
139
+ #
133
140
  # @param channel [String]
134
141
  #
135
142
  # @param contact_id [String]
@@ -15,19 +15,19 @@ module Sentdm
15
15
  # @return [Array<String>, nil]
16
16
  optional :channel, Sentdm::Internal::Type::ArrayOf[String], nil?: true
17
17
 
18
+ # @!attribute sandbox
19
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
20
+ # for testing integrations without actual execution
21
+ #
22
+ # @return [Boolean, nil]
23
+ optional :sandbox, Sentdm::Internal::Type::Boolean
24
+
18
25
  # @!attribute template
19
26
  # Template reference (by id or name, with optional parameters)
20
27
  #
21
28
  # @return [Sentdm::Models::MessageSendParams::Template, nil]
22
29
  optional :template, -> { Sentdm::MessageSendParams::Template }
23
30
 
24
- # @!attribute test_mode
25
- # Test mode flag - when true, the operation is simulated without side effects
26
- # Useful for testing integrations without actual execution
27
- #
28
- # @return [Boolean, nil]
29
- optional :test_mode, Sentdm::Internal::Type::Boolean
30
-
31
31
  # @!attribute to
32
32
  # List of recipient phone numbers in E.164 format (multi-recipient fan-out)
33
33
  #
@@ -39,20 +39,27 @@ module Sentdm
39
39
  # @return [String, nil]
40
40
  optional :idempotency_key, String
41
41
 
42
- # @!method initialize(channel: nil, template: nil, test_mode: nil, to: nil, idempotency_key: nil, request_options: {})
42
+ # @!attribute x_profile_id
43
+ #
44
+ # @return [String, nil]
45
+ optional :x_profile_id, String
46
+
47
+ # @!method initialize(channel: nil, sandbox: nil, template: nil, to: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
43
48
  # Some parameter documentations has been truncated, see
44
49
  # {Sentdm::Models::MessageSendParams} for more details.
45
50
  #
46
51
  # @param channel [Array<String>, nil] Channels to broadcast on, e.g. ["whatsapp", "sms"].
47
52
  #
48
- # @param template [Sentdm::Models::MessageSendParams::Template] Template reference (by id or name, with optional parameters)
53
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
49
54
  #
50
- # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
55
+ # @param template [Sentdm::Models::MessageSendParams::Template] Template reference (by id or name, with optional parameters)
51
56
  #
52
57
  # @param to [Array<String>] List of recipient phone numbers in E.164 format (multi-recipient fan-out)
53
58
  #
54
59
  # @param idempotency_key [String]
55
60
  #
61
+ # @param x_profile_id [String]
62
+ #
56
63
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
57
64
 
58
65
  class Template < Sentdm::Internal::Type::BaseModel
@@ -3,18 +3,18 @@
3
3
  module Sentdm
4
4
  module Models
5
5
  class MutationRequest < Sentdm::Internal::Type::BaseModel
6
- # @!attribute test_mode
7
- # Test mode flag - when true, the operation is simulated without side effects
8
- # Useful for testing integrations without actual execution
6
+ # @!attribute sandbox
7
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
8
+ # for testing integrations without actual execution
9
9
  #
10
10
  # @return [Boolean, nil]
11
- optional :test_mode, Sentdm::Internal::Type::Boolean
11
+ optional :sandbox, Sentdm::Internal::Type::Boolean
12
12
 
13
- # @!method initialize(test_mode: nil)
13
+ # @!method initialize(sandbox: nil)
14
14
  # Some parameter documentations has been truncated, see
15
15
  # {Sentdm::Models::MutationRequest} for more details.
16
16
  #
17
- # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
17
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
18
18
  end
19
19
  end
20
20
  end
@@ -18,19 +18,24 @@ module Sentdm
18
18
  # @return [String]
19
19
  required :web_hook_url, String, api_name: :webHookUrl
20
20
 
21
- # @!attribute test_mode
22
- # Test mode flag - when true, the operation is simulated without side effects
23
- # Useful for testing integrations without actual execution
21
+ # @!attribute sandbox
22
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
23
+ # for testing integrations without actual execution
24
24
  #
25
25
  # @return [Boolean, nil]
26
- optional :test_mode, Sentdm::Internal::Type::Boolean
26
+ optional :sandbox, Sentdm::Internal::Type::Boolean
27
27
 
28
28
  # @!attribute idempotency_key
29
29
  #
30
30
  # @return [String, nil]
31
31
  optional :idempotency_key, String
32
32
 
33
- # @!method initialize(profile_id:, web_hook_url:, test_mode: nil, idempotency_key: nil, request_options: {})
33
+ # @!attribute x_profile_id
34
+ #
35
+ # @return [String, nil]
36
+ optional :x_profile_id, String
37
+
38
+ # @!method initialize(profile_id:, web_hook_url:, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
34
39
  # Some parameter documentations has been truncated, see
35
40
  # {Sentdm::Models::ProfileCompleteParams} for more details.
36
41
  #
@@ -38,10 +43,12 @@ module Sentdm
38
43
  #
39
44
  # @param web_hook_url [String] Webhook URL to call when profile completion finishes (success or failure)
40
45
  #
41
- # @param test_mode [Boolean] Test mode flag - when true, the operation is simulated without side effects
46
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
42
47
  #
43
48
  # @param idempotency_key [String]
44
49
  #
50
+ # @param x_profile_id [String]
51
+ #
45
52
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
46
53
  end
47
54
  end