sentdm 0.3.0 → 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 (217) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +18 -9
  4. data/lib/sentdm/client.rb +7 -0
  5. data/lib/sentdm/internal/util.rb +31 -0
  6. data/lib/sentdm/models/api_meta.rb +1 -9
  7. data/lib/sentdm/models/brand_data.rb +235 -198
  8. data/lib/sentdm/models/brand_with_kyc.rb +249 -214
  9. data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +0 -1
  10. data/lib/sentdm/models/contact_create_params.rb +13 -6
  11. data/lib/sentdm/models/contact_delete_params.rb +15 -1
  12. data/lib/sentdm/models/contact_list_params.rb +10 -2
  13. data/lib/sentdm/models/contact_retrieve_params.rb +13 -1
  14. data/lib/sentdm/models/contact_update_params.rb +20 -6
  15. data/lib/sentdm/models/me_retrieve_params.rb +7 -1
  16. data/lib/sentdm/models/me_retrieve_response.rb +152 -7
  17. data/lib/sentdm/models/message_retrieve_activities_params.rb +13 -1
  18. data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
  19. data/lib/sentdm/models/message_retrieve_status_params.rb +13 -1
  20. data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
  21. data/lib/sentdm/models/message_send_params.rb +17 -10
  22. data/lib/sentdm/models/mutation_request.rb +6 -6
  23. data/lib/sentdm/models/profile_complete_params.rb +20 -6
  24. data/lib/sentdm/models/profile_create_params.rb +192 -10
  25. data/lib/sentdm/models/profile_delete_params.rb +21 -14
  26. data/lib/sentdm/models/profile_detail.rb +144 -95
  27. data/lib/sentdm/models/profile_list_params.rb +7 -1
  28. data/lib/sentdm/models/profile_retrieve_params.rb +13 -1
  29. data/lib/sentdm/models/profile_update_params.rb +146 -19
  30. data/lib/sentdm/models/template_create_params.rb +17 -10
  31. data/lib/sentdm/models/template_delete_params.rb +20 -6
  32. data/lib/sentdm/models/template_list_params.rb +18 -2
  33. data/lib/sentdm/models/template_retrieve_params.rb +13 -1
  34. data/lib/sentdm/models/template_update_params.rb +24 -10
  35. data/lib/sentdm/models/template_variable.rb +7 -1
  36. data/lib/sentdm/models/user_invite_params.rb +13 -6
  37. data/lib/sentdm/models/user_list_params.rb +7 -1
  38. data/lib/sentdm/models/user_remove_params.rb +20 -13
  39. data/lib/sentdm/models/user_retrieve_params.rb +13 -1
  40. data/lib/sentdm/models/user_update_role_params.rb +19 -13
  41. data/lib/sentdm/models/webhook_create_params.rb +13 -6
  42. data/lib/sentdm/models/webhook_delete_params.rb +13 -1
  43. data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
  44. data/lib/sentdm/models/webhook_list_events_params.rb +13 -1
  45. data/lib/sentdm/models/webhook_list_params.rb +7 -1
  46. data/lib/sentdm/models/webhook_retrieve_params.rb +13 -1
  47. data/lib/sentdm/models/webhook_rotate_secret_params.rb +13 -1
  48. data/lib/sentdm/models/webhook_test_params.rb +20 -6
  49. data/lib/sentdm/models/webhook_toggle_status_params.rb +20 -6
  50. data/lib/sentdm/models/webhook_update_params.rb +20 -6
  51. data/lib/sentdm/models.rb +0 -12
  52. data/lib/sentdm/resources/brands/campaigns.rb +0 -128
  53. data/lib/sentdm/resources/brands.rb +0 -110
  54. data/lib/sentdm/resources/contacts.rb +44 -19
  55. data/lib/sentdm/resources/lookup.rb +0 -21
  56. data/lib/sentdm/resources/me.rb +25 -5
  57. data/lib/sentdm/resources/messages.rb +25 -8
  58. data/lib/sentdm/resources/profiles.rb +117 -32
  59. data/lib/sentdm/resources/templates.rb +48 -23
  60. data/lib/sentdm/resources/users.rb +41 -23
  61. data/lib/sentdm/resources/webhooks.rb +93 -32
  62. data/lib/sentdm/version.rb +1 -1
  63. data/lib/sentdm.rb +1 -14
  64. data/rbi/sentdm/client.rbi +7 -0
  65. data/rbi/sentdm/internal/util.rbi +20 -0
  66. data/rbi/sentdm/models/api_meta.rbi +4 -18
  67. data/rbi/sentdm/models/brand_data.rbi +326 -203
  68. data/rbi/sentdm/models/brand_with_kyc.rbi +334 -216
  69. data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +6 -8
  70. data/rbi/sentdm/models/contact_create_params.rbi +19 -10
  71. data/rbi/sentdm/models/contact_delete_params.rbi +15 -0
  72. data/rbi/sentdm/models/contact_list_params.rbi +11 -0
  73. data/rbi/sentdm/models/contact_retrieve_params.rbi +24 -5
  74. data/rbi/sentdm/models/contact_update_params.rbi +25 -10
  75. data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
  76. data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
  77. data/rbi/sentdm/models/message_retrieve_activities_params.rbi +24 -5
  78. data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
  79. data/rbi/sentdm/models/message_retrieve_status_params.rbi +24 -5
  80. data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
  81. data/rbi/sentdm/models/message_send_params.rbi +22 -13
  82. data/rbi/sentdm/models/mutation_request.rbi +10 -10
  83. data/rbi/sentdm/models/profile_complete_params.rbi +25 -10
  84. data/rbi/sentdm/models/profile_create_params.rbi +323 -15
  85. data/rbi/sentdm/models/profile_delete_params.rbi +38 -20
  86. data/rbi/sentdm/models/profile_detail.rbi +184 -128
  87. data/rbi/sentdm/models/profile_list_params.rbi +16 -5
  88. data/rbi/sentdm/models/profile_retrieve_params.rbi +24 -5
  89. data/rbi/sentdm/models/profile_update_params.rbi +233 -26
  90. data/rbi/sentdm/models/template_create_params.rbi +22 -13
  91. data/rbi/sentdm/models/template_delete_params.rbi +25 -10
  92. data/rbi/sentdm/models/template_list_params.rbi +19 -0
  93. data/rbi/sentdm/models/template_retrieve_params.rbi +24 -5
  94. data/rbi/sentdm/models/template_update_params.rbi +28 -13
  95. data/rbi/sentdm/models/template_variable.rbi +6 -0
  96. data/rbi/sentdm/models/user_invite_params.rbi +19 -10
  97. data/rbi/sentdm/models/user_list_params.rbi +16 -5
  98. data/rbi/sentdm/models/user_remove_params.rbi +37 -19
  99. data/rbi/sentdm/models/user_retrieve_params.rbi +24 -5
  100. data/rbi/sentdm/models/user_update_role_params.rbi +25 -21
  101. data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
  102. data/rbi/sentdm/models/webhook_delete_params.rbi +24 -5
  103. data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
  104. data/rbi/sentdm/models/webhook_list_events_params.rbi +21 -1
  105. data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
  106. data/rbi/sentdm/models/webhook_retrieve_params.rbi +24 -5
  107. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +20 -1
  108. data/rbi/sentdm/models/webhook_test_params.rbi +25 -10
  109. data/rbi/sentdm/models/webhook_toggle_status_params.rbi +25 -10
  110. data/rbi/sentdm/models/webhook_update_params.rbi +25 -10
  111. data/rbi/sentdm/models.rbi +0 -12
  112. data/rbi/sentdm/resources/brands/campaigns.rbi +0 -94
  113. data/rbi/sentdm/resources/brands.rbi +0 -78
  114. data/rbi/sentdm/resources/contacts.rbi +38 -12
  115. data/rbi/sentdm/resources/lookup.rbi +0 -12
  116. data/rbi/sentdm/resources/me.rbi +26 -7
  117. data/rbi/sentdm/resources/messages.rbi +18 -4
  118. data/rbi/sentdm/resources/profiles.rbi +179 -38
  119. data/rbi/sentdm/resources/templates.rbi +48 -19
  120. data/rbi/sentdm/resources/users.rbi +48 -25
  121. data/rbi/sentdm/resources/webhooks.rbi +93 -20
  122. data/sig/sentdm/internal/util.rbs +10 -0
  123. data/sig/sentdm/models/api_meta.rbs +2 -16
  124. data/sig/sentdm/models/brand_data.rbs +188 -142
  125. data/sig/sentdm/models/brand_with_kyc.rbs +184 -133
  126. data/sig/sentdm/models/contact_create_params.rbs +16 -5
  127. data/sig/sentdm/models/contact_delete_params.rbs +15 -1
  128. data/sig/sentdm/models/contact_list_params.rbs +8 -1
  129. data/sig/sentdm/models/contact_retrieve_params.rbs +18 -3
  130. data/sig/sentdm/models/contact_update_params.rbs +18 -6
  131. data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
  132. data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
  133. data/sig/sentdm/models/message_retrieve_activities_params.rbs +18 -3
  134. data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
  135. data/sig/sentdm/models/message_retrieve_status_params.rbs +18 -3
  136. data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
  137. data/sig/sentdm/models/message_send_params.rbs +15 -8
  138. data/sig/sentdm/models/mutation_request.rbs +5 -5
  139. data/sig/sentdm/models/profile_complete_params.rbs +21 -5
  140. data/sig/sentdm/models/profile_create_params.rbs +111 -7
  141. data/sig/sentdm/models/profile_delete_params.rbs +23 -9
  142. data/sig/sentdm/models/profile_detail.rbs +105 -84
  143. data/sig/sentdm/models/profile_list_params.rbs +14 -3
  144. data/sig/sentdm/models/profile_retrieve_params.rbs +18 -3
  145. data/sig/sentdm/models/profile_update_params.rbs +87 -13
  146. data/sig/sentdm/models/template_create_params.rbs +15 -8
  147. data/sig/sentdm/models/template_delete_params.rbs +20 -5
  148. data/sig/sentdm/models/template_list_params.rbs +13 -1
  149. data/sig/sentdm/models/template_retrieve_params.rbs +18 -3
  150. data/sig/sentdm/models/template_update_params.rbs +20 -8
  151. data/sig/sentdm/models/template_variable.rbs +5 -0
  152. data/sig/sentdm/models/user_invite_params.rbs +13 -6
  153. data/sig/sentdm/models/user_list_params.rbs +14 -3
  154. data/sig/sentdm/models/user_remove_params.rbs +23 -9
  155. data/sig/sentdm/models/user_retrieve_params.rbs +18 -3
  156. data/sig/sentdm/models/user_update_role_params.rbs +18 -13
  157. data/sig/sentdm/models/webhook_create_params.rbs +13 -6
  158. data/sig/sentdm/models/webhook_delete_params.rbs +18 -3
  159. data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
  160. data/sig/sentdm/models/webhook_list_events_params.rbs +17 -1
  161. data/sig/sentdm/models/webhook_list_params.rbs +13 -1
  162. data/sig/sentdm/models/webhook_retrieve_params.rbs +18 -3
  163. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +16 -1
  164. data/sig/sentdm/models/webhook_test_params.rbs +21 -5
  165. data/sig/sentdm/models/webhook_toggle_status_params.rbs +21 -5
  166. data/sig/sentdm/models/webhook_update_params.rbs +18 -6
  167. data/sig/sentdm/models.rbs +0 -12
  168. data/sig/sentdm/resources/brands/campaigns.rbs +0 -29
  169. data/sig/sentdm/resources/brands.rbs +0 -25
  170. data/sig/sentdm/resources/contacts.rbs +7 -2
  171. data/sig/sentdm/resources/lookup.rbs +0 -5
  172. data/sig/sentdm/resources/me.rbs +1 -0
  173. data/sig/sentdm/resources/messages.rbs +4 -1
  174. data/sig/sentdm/resources/profiles.rbs +19 -8
  175. data/sig/sentdm/resources/templates.rbs +9 -3
  176. data/sig/sentdm/resources/users.rbs +10 -7
  177. data/sig/sentdm/resources/webhooks.rbs +18 -5
  178. metadata +2 -41
  179. data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
  180. data/lib/sentdm/models/brand_create_params.rb +0 -41
  181. data/lib/sentdm/models/brand_delete_params.rb +0 -27
  182. data/lib/sentdm/models/brand_list_params.rb +0 -14
  183. data/lib/sentdm/models/brand_list_response.rb +0 -43
  184. data/lib/sentdm/models/brand_update_params.rb +0 -41
  185. data/lib/sentdm/models/brands/campaign_create_params.rb +0 -43
  186. data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -36
  187. data/lib/sentdm/models/brands/campaign_list_params.rb +0 -16
  188. data/lib/sentdm/models/brands/campaign_list_response.rb +0 -47
  189. data/lib/sentdm/models/brands/campaign_update_params.rb +0 -50
  190. data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +0 -14
  191. data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +0 -104
  192. data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +0 -74
  193. data/rbi/sentdm/models/brand_create_params.rbi +0 -68
  194. data/rbi/sentdm/models/brand_delete_params.rbi +0 -62
  195. data/rbi/sentdm/models/brand_list_params.rbi +0 -27
  196. data/rbi/sentdm/models/brand_list_response.rbi +0 -71
  197. data/rbi/sentdm/models/brand_update_params.rbi +0 -68
  198. data/rbi/sentdm/models/brands/campaign_create_params.rbi +0 -73
  199. data/rbi/sentdm/models/brands/campaign_delete_params.rbi +0 -78
  200. data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -29
  201. data/rbi/sentdm/models/brands/campaign_list_response.rbi +0 -82
  202. data/rbi/sentdm/models/brands/campaign_update_params.rbi +0 -79
  203. data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +0 -30
  204. data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +0 -183
  205. data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
  206. data/sig/sentdm/models/brand_create_params.rbs +0 -36
  207. data/sig/sentdm/models/brand_delete_params.rbs +0 -32
  208. data/sig/sentdm/models/brand_list_params.rbs +0 -14
  209. data/sig/sentdm/models/brand_list_response.rbs +0 -39
  210. data/sig/sentdm/models/brand_update_params.rbs +0 -36
  211. data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -42
  212. data/sig/sentdm/models/brands/campaign_delete_params.rbs +0 -38
  213. data/sig/sentdm/models/brands/campaign_list_params.rbs +0 -17
  214. data/sig/sentdm/models/brands/campaign_list_response.rbs +0 -41
  215. data/sig/sentdm/models/brands/campaign_update_params.rbs +0 -47
  216. data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +0 -15
  217. data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +0 -102
@@ -75,7 +75,7 @@ module Sentdm
75
75
  sig do
76
76
  returns(
77
77
  T.nilable(
78
- Sentdm::Brands::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
78
+ Sentdm::Brands::TcrCampaignWithUseCases::SharingStatus::OrSymbol
79
79
  )
80
80
  )
81
81
  end
@@ -83,9 +83,7 @@ module Sentdm
83
83
 
84
84
  sig do
85
85
  returns(
86
- T.nilable(
87
- Sentdm::Brands::TcrCampaignWithUseCases::Status::TaggedSymbol
88
- )
86
+ T.nilable(Sentdm::Brands::TcrCampaignWithUseCases::Status::OrSymbol)
89
87
  )
90
88
  end
91
89
  attr_accessor :status
@@ -230,11 +228,11 @@ module Sentdm
230
228
  reseller_id: T.nilable(String),
231
229
  sharing_status:
232
230
  T.nilable(
233
- Sentdm::Brands::TcrCampaignWithUseCases::SharingStatus::TaggedSymbol
231
+ Sentdm::Brands::TcrCampaignWithUseCases::SharingStatus::OrSymbol
234
232
  ),
235
233
  status:
236
234
  T.nilable(
237
- Sentdm::Brands::TcrCampaignWithUseCases::Status::TaggedSymbol
235
+ Sentdm::Brands::TcrCampaignWithUseCases::Status::OrSymbol
238
236
  ),
239
237
  submitted_at: T.nilable(Time),
240
238
  submitted_to_tcr: T::Boolean,
@@ -349,7 +347,7 @@ module Sentdm
349
347
  attr_writer :customer_id
350
348
 
351
349
  sig do
352
- returns(T.nilable(Sentdm::Brands::MessagingUseCaseUs::TaggedSymbol))
350
+ returns(T.nilable(Sentdm::Brands::MessagingUseCaseUs::OrSymbol))
353
351
  end
354
352
  attr_reader :messaging_use_case_us
355
353
 
@@ -390,7 +388,7 @@ module Sentdm
390
388
  campaign_id: String,
391
389
  customer_id: String,
392
390
  messaging_use_case_us:
393
- Sentdm::Brands::MessagingUseCaseUs::TaggedSymbol,
391
+ Sentdm::Brands::MessagingUseCaseUs::OrSymbol,
394
392
  sample_messages: T::Array[String]
395
393
  }
396
394
  )
@@ -18,13 +18,13 @@ module Sentdm
18
18
  sig { params(phone_number: String).void }
19
19
  attr_writer :phone_number
20
20
 
21
- # Test mode flag - when true, the operation is simulated without side effects
22
- # Useful for testing integrations without actual execution
21
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
22
+ # for testing integrations without actual execution
23
23
  sig { returns(T.nilable(T::Boolean)) }
24
- attr_reader :test_mode
24
+ attr_reader :sandbox
25
25
 
26
- sig { params(test_mode: T::Boolean).void }
27
- attr_writer :test_mode
26
+ sig { params(sandbox: T::Boolean).void }
27
+ attr_writer :sandbox
28
28
 
29
29
  sig { returns(T.nilable(String)) }
30
30
  attr_reader :idempotency_key
@@ -32,21 +32,29 @@ module Sentdm
32
32
  sig { params(idempotency_key: String).void }
33
33
  attr_writer :idempotency_key
34
34
 
35
+ sig { returns(T.nilable(String)) }
36
+ attr_reader :x_profile_id
37
+
38
+ sig { params(x_profile_id: String).void }
39
+ attr_writer :x_profile_id
40
+
35
41
  sig do
36
42
  params(
37
43
  phone_number: String,
38
- test_mode: T::Boolean,
44
+ sandbox: T::Boolean,
39
45
  idempotency_key: String,
46
+ x_profile_id: String,
40
47
  request_options: Sentdm::RequestOptions::OrHash
41
48
  ).returns(T.attached_class)
42
49
  end
43
50
  def self.new(
44
51
  # Phone number of the contact to create
45
52
  phone_number: nil,
46
- # Test mode flag - when true, the operation is simulated without side effects
47
- # Useful for testing integrations without actual execution
48
- test_mode: nil,
53
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
54
+ # for testing integrations without actual execution
55
+ sandbox: nil,
49
56
  idempotency_key: nil,
57
+ x_profile_id: nil,
50
58
  request_options: {}
51
59
  )
52
60
  end
@@ -55,8 +63,9 @@ module Sentdm
55
63
  override.returns(
56
64
  {
57
65
  phone_number: String,
58
- test_mode: T::Boolean,
66
+ sandbox: T::Boolean,
59
67
  idempotency_key: String,
68
+ x_profile_id: String,
60
69
  request_options: Sentdm::RequestOptions
61
70
  }
62
71
  )
@@ -11,6 +11,9 @@ module Sentdm
11
11
  T.any(Sentdm::ContactDeleteParams, Sentdm::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
14
17
  # Request to delete/dissociate a contact
15
18
  sig { returns(Sentdm::ContactDeleteParams::Body) }
16
19
  attr_reader :body
@@ -18,15 +21,25 @@ module Sentdm
18
21
  sig { params(body: Sentdm::ContactDeleteParams::Body::OrHash).void }
19
22
  attr_writer :body
20
23
 
24
+ sig { returns(T.nilable(String)) }
25
+ attr_reader :x_profile_id
26
+
27
+ sig { params(x_profile_id: String).void }
28
+ attr_writer :x_profile_id
29
+
21
30
  sig do
22
31
  params(
32
+ id: String,
23
33
  body: Sentdm::ContactDeleteParams::Body::OrHash,
34
+ x_profile_id: String,
24
35
  request_options: Sentdm::RequestOptions::OrHash
25
36
  ).returns(T.attached_class)
26
37
  end
27
38
  def self.new(
39
+ id:,
28
40
  # Request to delete/dissociate a contact
29
41
  body:,
42
+ x_profile_id: nil,
30
43
  request_options: {}
31
44
  )
32
45
  end
@@ -34,7 +47,9 @@ module Sentdm
34
47
  sig do
35
48
  override.returns(
36
49
  {
50
+ id: String,
37
51
  body: Sentdm::ContactDeleteParams::Body,
52
+ x_profile_id: String,
38
53
  request_options: Sentdm::RequestOptions
39
54
  }
40
55
  )
@@ -15,6 +15,7 @@ module Sentdm
15
15
  sig { returns(Integer) }
16
16
  attr_accessor :page
17
17
 
18
+ # Number of items per page
18
19
  sig { returns(Integer) }
19
20
  attr_accessor :page_size
20
21
 
@@ -30,6 +31,12 @@ module Sentdm
30
31
  sig { returns(T.nilable(String)) }
31
32
  attr_accessor :search
32
33
 
34
+ sig { returns(T.nilable(String)) }
35
+ attr_reader :x_profile_id
36
+
37
+ sig { params(x_profile_id: String).void }
38
+ attr_writer :x_profile_id
39
+
33
40
  sig do
34
41
  params(
35
42
  page: Integer,
@@ -37,12 +44,14 @@ module Sentdm
37
44
  channel: T.nilable(String),
38
45
  phone: T.nilable(String),
39
46
  search: T.nilable(String),
47
+ x_profile_id: String,
40
48
  request_options: Sentdm::RequestOptions::OrHash
41
49
  ).returns(T.attached_class)
42
50
  end
43
51
  def self.new(
44
52
  # Page number (1-indexed)
45
53
  page:,
54
+ # Number of items per page
46
55
  page_size:,
47
56
  # Optional channel filter (sms, whatsapp)
48
57
  channel: nil,
@@ -50,6 +59,7 @@ module Sentdm
50
59
  phone: nil,
51
60
  # Optional search term for filtering contacts
52
61
  search: nil,
62
+ x_profile_id: nil,
53
63
  request_options: {}
54
64
  )
55
65
  end
@@ -62,6 +72,7 @@ module Sentdm
62
72
  channel: T.nilable(String),
63
73
  phone: T.nilable(String),
64
74
  search: T.nilable(String),
75
+ x_profile_id: String,
65
76
  request_options: Sentdm::RequestOptions
66
77
  }
67
78
  )
@@ -11,15 +11,34 @@ module Sentdm
11
11
  T.any(Sentdm::ContactRetrieveParams, Sentdm::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_reader :x_profile_id
19
+
20
+ sig { params(x_profile_id: String).void }
21
+ attr_writer :x_profile_id
22
+
14
23
  sig do
15
- params(request_options: Sentdm::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
24
+ params(
25
+ id: String,
26
+ x_profile_id: String,
27
+ request_options: Sentdm::RequestOptions::OrHash
28
+ ).returns(T.attached_class)
18
29
  end
19
- def self.new(request_options: {})
30
+ def self.new(id:, x_profile_id: nil, request_options: {})
20
31
  end
21
32
 
22
- sig { override.returns({ request_options: Sentdm::RequestOptions }) }
33
+ sig do
34
+ override.returns(
35
+ {
36
+ id: String,
37
+ x_profile_id: String,
38
+ request_options: Sentdm::RequestOptions
39
+ }
40
+ )
41
+ end
23
42
  def to_hash
24
43
  end
25
44
  end
@@ -11,6 +11,9 @@ module Sentdm
11
11
  T.any(Sentdm::ContactUpdateParams, Sentdm::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
14
17
  # Default messaging channel: "sms" or "whatsapp"
15
18
  sig { returns(T.nilable(String)) }
16
19
  attr_accessor :default_channel
@@ -19,13 +22,13 @@ module Sentdm
19
22
  sig { returns(T.nilable(T::Boolean)) }
20
23
  attr_accessor :opt_out
21
24
 
22
- # Test mode flag - when true, the operation is simulated without side effects
23
- # Useful for testing integrations without actual execution
25
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
26
+ # for testing integrations without actual execution
24
27
  sig { returns(T.nilable(T::Boolean)) }
25
- attr_reader :test_mode
28
+ attr_reader :sandbox
26
29
 
27
- sig { params(test_mode: T::Boolean).void }
28
- attr_writer :test_mode
30
+ sig { params(sandbox: T::Boolean).void }
31
+ attr_writer :sandbox
29
32
 
30
33
  sig { returns(T.nilable(String)) }
31
34
  attr_reader :idempotency_key
@@ -33,24 +36,34 @@ module Sentdm
33
36
  sig { params(idempotency_key: String).void }
34
37
  attr_writer :idempotency_key
35
38
 
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :x_profile_id
41
+
42
+ sig { params(x_profile_id: String).void }
43
+ attr_writer :x_profile_id
44
+
36
45
  sig do
37
46
  params(
47
+ id: String,
38
48
  default_channel: T.nilable(String),
39
49
  opt_out: T.nilable(T::Boolean),
40
- test_mode: T::Boolean,
50
+ sandbox: T::Boolean,
41
51
  idempotency_key: String,
52
+ x_profile_id: String,
42
53
  request_options: Sentdm::RequestOptions::OrHash
43
54
  ).returns(T.attached_class)
44
55
  end
45
56
  def self.new(
57
+ id:,
46
58
  # Default messaging channel: "sms" or "whatsapp"
47
59
  default_channel: nil,
48
60
  # Whether the contact has opted out of messaging
49
61
  opt_out: nil,
50
- # Test mode flag - when true, the operation is simulated without side effects
51
- # Useful for testing integrations without actual execution
52
- test_mode: nil,
62
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
63
+ # for testing integrations without actual execution
64
+ sandbox: nil,
53
65
  idempotency_key: nil,
66
+ x_profile_id: nil,
54
67
  request_options: {}
55
68
  )
56
69
  end
@@ -58,10 +71,12 @@ module Sentdm
58
71
  sig do
59
72
  override.returns(
60
73
  {
74
+ id: String,
61
75
  default_channel: T.nilable(String),
62
76
  opt_out: T.nilable(T::Boolean),
63
- test_mode: T::Boolean,
77
+ sandbox: T::Boolean,
64
78
  idempotency_key: String,
79
+ x_profile_id: String,
65
80
  request_options: Sentdm::RequestOptions
66
81
  }
67
82
  )
@@ -11,15 +11,26 @@ module Sentdm
11
11
  T.any(Sentdm::MeRetrieveParams, Sentdm::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(T.nilable(String)) }
15
+ attr_reader :x_profile_id
16
+
17
+ sig { params(x_profile_id: String).void }
18
+ attr_writer :x_profile_id
19
+
14
20
  sig do
15
- params(request_options: Sentdm::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
21
+ params(
22
+ x_profile_id: String,
23
+ request_options: Sentdm::RequestOptions::OrHash
24
+ ).returns(T.attached_class)
18
25
  end
19
- def self.new(request_options: {})
26
+ def self.new(x_profile_id: nil, request_options: {})
20
27
  end
21
28
 
22
- sig { override.returns({ request_options: Sentdm::RequestOptions }) }
29
+ sig do
30
+ override.returns(
31
+ { x_profile_id: String, request_options: Sentdm::RequestOptions }
32
+ )
33
+ end
23
34
  def to_hash
24
35
  end
25
36
  end