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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +9 -9
- data/lib/sentdm/client.rb +0 -1
- data/lib/sentdm/models/api_meta.rb +1 -9
- data/lib/sentdm/models/brand_data.rb +235 -198
- data/lib/sentdm/models/brand_with_kyc.rb +249 -214
- data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +0 -1
- data/lib/sentdm/models/contact_create_params.rb +13 -6
- data/lib/sentdm/models/contact_delete_params.rb +8 -1
- data/lib/sentdm/models/contact_list_params.rb +10 -2
- data/lib/sentdm/models/contact_retrieve_params.rb +7 -1
- data/lib/sentdm/models/contact_update_params.rb +13 -6
- data/lib/sentdm/models/me_retrieve_params.rb +7 -1
- data/lib/sentdm/models/me_retrieve_response.rb +152 -7
- data/lib/sentdm/models/message_retrieve_activities_params.rb +7 -1
- data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
- data/lib/sentdm/models/message_retrieve_status_params.rb +7 -1
- data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
- data/lib/sentdm/models/message_send_params.rb +17 -10
- data/lib/sentdm/models/mutation_request.rb +6 -6
- data/lib/sentdm/models/profile_complete_params.rb +13 -6
- data/lib/sentdm/models/profile_create_params.rb +192 -10
- data/lib/sentdm/models/profile_delete_params.rb +18 -18
- data/lib/sentdm/models/profile_detail.rb +144 -95
- data/lib/sentdm/models/profile_list_params.rb +7 -1
- data/lib/sentdm/models/profile_retrieve_params.rb +7 -1
- data/lib/sentdm/models/profile_update_params.rb +142 -22
- data/lib/sentdm/models/template_create_params.rb +17 -10
- data/lib/sentdm/models/template_delete_params.rb +13 -6
- data/lib/sentdm/models/template_list_params.rb +18 -2
- data/lib/sentdm/models/template_retrieve_params.rb +7 -1
- data/lib/sentdm/models/template_update_params.rb +17 -10
- data/lib/sentdm/models/template_variable.rb +7 -1
- data/lib/sentdm/models/user_invite_params.rb +13 -6
- data/lib/sentdm/models/user_list_params.rb +7 -1
- data/lib/sentdm/models/user_remove_params.rb +17 -17
- data/lib/sentdm/models/user_retrieve_params.rb +7 -1
- data/lib/sentdm/models/user_update_role_params.rb +15 -16
- data/lib/sentdm/models/webhook_create_params.rb +13 -6
- data/lib/sentdm/models/webhook_delete_params.rb +7 -1
- data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
- data/lib/sentdm/models/webhook_list_events_params.rb +7 -1
- data/lib/sentdm/models/webhook_list_params.rb +7 -1
- data/lib/sentdm/models/webhook_retrieve_params.rb +7 -1
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +7 -1
- data/lib/sentdm/models/webhook_test_params.rb +13 -6
- data/lib/sentdm/models/webhook_toggle_status_params.rb +13 -6
- data/lib/sentdm/models/webhook_update_params.rb +13 -6
- data/lib/sentdm/models.rb +0 -12
- data/lib/sentdm/resources/brands/campaigns.rb +0 -129
- data/lib/sentdm/resources/brands.rb +0 -112
- data/lib/sentdm/resources/contacts.rb +43 -20
- data/lib/sentdm/resources/lookup.rb +0 -21
- data/lib/sentdm/resources/me.rb +24 -5
- data/lib/sentdm/resources/messages.rb +24 -8
- data/lib/sentdm/resources/profiles.rb +116 -32
- data/lib/sentdm/resources/templates.rb +47 -24
- data/lib/sentdm/resources/users.rb +40 -23
- data/lib/sentdm/resources/webhooks.rb +92 -34
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +1 -14
- data/rbi/sentdm/client.rbi +0 -1
- data/rbi/sentdm/models/api_meta.rbi +4 -18
- data/rbi/sentdm/models/brand_data.rbi +326 -203
- data/rbi/sentdm/models/brand_with_kyc.rbi +334 -216
- data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +6 -8
- data/rbi/sentdm/models/contact_create_params.rbi +19 -10
- data/rbi/sentdm/models/contact_delete_params.rbi +9 -0
- data/rbi/sentdm/models/contact_list_params.rbi +11 -0
- data/rbi/sentdm/models/contact_retrieve_params.rbi +13 -2
- data/rbi/sentdm/models/contact_update_params.rbi +19 -10
- data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
- data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
- data/rbi/sentdm/models/message_retrieve_activities_params.rbi +13 -2
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
- data/rbi/sentdm/models/message_retrieve_status_params.rbi +13 -2
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
- data/rbi/sentdm/models/message_send_params.rbi +22 -13
- data/rbi/sentdm/models/mutation_request.rbi +10 -10
- data/rbi/sentdm/models/profile_complete_params.rbi +19 -10
- data/rbi/sentdm/models/profile_create_params.rbi +323 -15
- data/rbi/sentdm/models/profile_delete_params.rbi +36 -24
- data/rbi/sentdm/models/profile_detail.rbi +184 -128
- data/rbi/sentdm/models/profile_list_params.rbi +16 -5
- data/rbi/sentdm/models/profile_retrieve_params.rbi +13 -2
- data/rbi/sentdm/models/profile_update_params.rbi +231 -30
- data/rbi/sentdm/models/template_create_params.rbi +22 -13
- data/rbi/sentdm/models/template_delete_params.rbi +19 -10
- data/rbi/sentdm/models/template_list_params.rbi +19 -0
- data/rbi/sentdm/models/template_retrieve_params.rbi +13 -2
- data/rbi/sentdm/models/template_update_params.rbi +22 -13
- data/rbi/sentdm/models/template_variable.rbi +6 -0
- data/rbi/sentdm/models/user_invite_params.rbi +19 -10
- data/rbi/sentdm/models/user_list_params.rbi +16 -5
- data/rbi/sentdm/models/user_remove_params.rbi +35 -23
- data/rbi/sentdm/models/user_retrieve_params.rbi +13 -2
- data/rbi/sentdm/models/user_update_role_params.rbi +23 -25
- data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
- data/rbi/sentdm/models/webhook_delete_params.rbi +13 -2
- data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
- data/rbi/sentdm/models/webhook_list_events_params.rbi +16 -1
- data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
- data/rbi/sentdm/models/webhook_retrieve_params.rbi +13 -2
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +15 -1
- data/rbi/sentdm/models/webhook_test_params.rbi +19 -10
- data/rbi/sentdm/models/webhook_toggle_status_params.rbi +19 -10
- data/rbi/sentdm/models/webhook_update_params.rbi +19 -10
- data/rbi/sentdm/models.rbi +0 -12
- data/rbi/sentdm/resources/brands/campaigns.rbi +0 -95
- data/rbi/sentdm/resources/brands.rbi +0 -80
- data/rbi/sentdm/resources/contacts.rbi +37 -12
- data/rbi/sentdm/resources/lookup.rbi +0 -12
- data/rbi/sentdm/resources/me.rbi +25 -7
- data/rbi/sentdm/resources/messages.rbi +17 -4
- data/rbi/sentdm/resources/profiles.rbi +178 -38
- data/rbi/sentdm/resources/templates.rbi +47 -19
- data/rbi/sentdm/resources/users.rbi +47 -25
- data/rbi/sentdm/resources/webhooks.rbi +92 -20
- data/sig/sentdm/models/api_meta.rbs +2 -16
- data/sig/sentdm/models/brand_data.rbs +188 -142
- data/sig/sentdm/models/brand_with_kyc.rbs +184 -133
- data/sig/sentdm/models/contact_create_params.rbs +16 -5
- data/sig/sentdm/models/contact_delete_params.rbs +11 -1
- data/sig/sentdm/models/contact_list_params.rbs +8 -1
- data/sig/sentdm/models/contact_retrieve_params.rbs +12 -2
- data/sig/sentdm/models/contact_update_params.rbs +13 -6
- data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
- data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
- data/sig/sentdm/models/message_retrieve_activities_params.rbs +12 -2
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
- data/sig/sentdm/models/message_retrieve_status_params.rbs +12 -2
- data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
- data/sig/sentdm/models/message_send_params.rbs +15 -8
- data/sig/sentdm/models/mutation_request.rbs +5 -5
- data/sig/sentdm/models/profile_complete_params.rbs +13 -6
- data/sig/sentdm/models/profile_create_params.rbs +111 -7
- data/sig/sentdm/models/profile_delete_params.rbs +23 -13
- data/sig/sentdm/models/profile_detail.rbs +105 -84
- data/sig/sentdm/models/profile_list_params.rbs +14 -3
- data/sig/sentdm/models/profile_retrieve_params.rbs +8 -1
- data/sig/sentdm/models/profile_update_params.rbs +86 -17
- data/sig/sentdm/models/template_create_params.rbs +15 -8
- data/sig/sentdm/models/template_delete_params.rbs +16 -5
- data/sig/sentdm/models/template_list_params.rbs +13 -1
- data/sig/sentdm/models/template_retrieve_params.rbs +12 -2
- data/sig/sentdm/models/template_update_params.rbs +15 -8
- data/sig/sentdm/models/template_variable.rbs +5 -0
- data/sig/sentdm/models/user_invite_params.rbs +13 -6
- data/sig/sentdm/models/user_list_params.rbs +14 -3
- data/sig/sentdm/models/user_remove_params.rbs +23 -13
- data/sig/sentdm/models/user_retrieve_params.rbs +8 -1
- data/sig/sentdm/models/user_update_role_params.rbs +17 -17
- data/sig/sentdm/models/webhook_create_params.rbs +13 -6
- data/sig/sentdm/models/webhook_delete_params.rbs +12 -2
- data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
- data/sig/sentdm/models/webhook_list_events_params.rbs +13 -1
- data/sig/sentdm/models/webhook_list_params.rbs +13 -1
- data/sig/sentdm/models/webhook_retrieve_params.rbs +12 -2
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -1
- data/sig/sentdm/models/webhook_test_params.rbs +13 -6
- data/sig/sentdm/models/webhook_toggle_status_params.rbs +17 -5
- data/sig/sentdm/models/webhook_update_params.rbs +13 -6
- data/sig/sentdm/models.rbs +0 -12
- data/sig/sentdm/resources/brands/campaigns.rbs +0 -29
- data/sig/sentdm/resources/brands.rbs +0 -25
- data/sig/sentdm/resources/contacts.rbs +7 -2
- data/sig/sentdm/resources/lookup.rbs +0 -5
- data/sig/sentdm/resources/me.rbs +1 -0
- data/sig/sentdm/resources/messages.rbs +4 -1
- data/sig/sentdm/resources/profiles.rbs +19 -8
- data/sig/sentdm/resources/templates.rbs +9 -3
- data/sig/sentdm/resources/users.rbs +10 -7
- data/sig/sentdm/resources/webhooks.rbs +18 -5
- metadata +1 -40
- data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
- data/lib/sentdm/models/brand_create_params.rb +0 -41
- data/lib/sentdm/models/brand_delete_params.rb +0 -34
- data/lib/sentdm/models/brand_list_params.rb +0 -14
- data/lib/sentdm/models/brand_list_response.rb +0 -43
- data/lib/sentdm/models/brand_update_params.rb +0 -48
- data/lib/sentdm/models/brands/campaign_create_params.rb +0 -50
- data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -43
- data/lib/sentdm/models/brands/campaign_list_params.rb +0 -22
- data/lib/sentdm/models/brands/campaign_list_response.rb +0 -47
- data/lib/sentdm/models/brands/campaign_update_params.rb +0 -57
- data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +0 -20
- data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +0 -104
- data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +0 -74
- data/rbi/sentdm/models/brand_create_params.rbi +0 -68
- data/rbi/sentdm/models/brand_delete_params.rbi +0 -68
- data/rbi/sentdm/models/brand_list_params.rbi +0 -27
- data/rbi/sentdm/models/brand_list_response.rbi +0 -71
- data/rbi/sentdm/models/brand_update_params.rbi +0 -74
- data/rbi/sentdm/models/brands/campaign_create_params.rbi +0 -79
- data/rbi/sentdm/models/brands/campaign_delete_params.rbi +0 -84
- data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -37
- data/rbi/sentdm/models/brands/campaign_list_response.rbi +0 -82
- data/rbi/sentdm/models/brands/campaign_update_params.rbi +0 -85
- data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +0 -38
- data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +0 -183
- data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
- data/sig/sentdm/models/brand_create_params.rbs +0 -36
- data/sig/sentdm/models/brand_delete_params.rbs +0 -36
- data/sig/sentdm/models/brand_list_params.rbs +0 -14
- data/sig/sentdm/models/brand_list_response.rbs +0 -39
- data/sig/sentdm/models/brand_update_params.rbs +0 -45
- data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -47
- data/sig/sentdm/models/brands/campaign_delete_params.rbs +0 -46
- data/sig/sentdm/models/brands/campaign_list_params.rbs +0 -25
- data/sig/sentdm/models/brands/campaign_list_response.rbs +0 -41
- data/sig/sentdm/models/brands/campaign_update_params.rbs +0 -52
- data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +0 -23
- data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +0 -102
|
@@ -20,13 +20,13 @@ module Sentdm
|
|
|
20
20
|
sig { params(event_type: String).void }
|
|
21
21
|
attr_writer :event_type
|
|
22
22
|
|
|
23
|
-
#
|
|
24
|
-
#
|
|
23
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
24
|
+
# for testing integrations without actual execution
|
|
25
25
|
sig { returns(T.nilable(T::Boolean)) }
|
|
26
|
-
attr_reader :
|
|
26
|
+
attr_reader :sandbox
|
|
27
27
|
|
|
28
|
-
sig { params(
|
|
29
|
-
attr_writer :
|
|
28
|
+
sig { params(sandbox: T::Boolean).void }
|
|
29
|
+
attr_writer :sandbox
|
|
30
30
|
|
|
31
31
|
sig { returns(T.nilable(String)) }
|
|
32
32
|
attr_reader :idempotency_key
|
|
@@ -34,22 +34,30 @@ module Sentdm
|
|
|
34
34
|
sig { params(idempotency_key: String).void }
|
|
35
35
|
attr_writer :idempotency_key
|
|
36
36
|
|
|
37
|
+
sig { returns(T.nilable(String)) }
|
|
38
|
+
attr_reader :x_profile_id
|
|
39
|
+
|
|
40
|
+
sig { params(x_profile_id: String).void }
|
|
41
|
+
attr_writer :x_profile_id
|
|
42
|
+
|
|
37
43
|
sig do
|
|
38
44
|
params(
|
|
39
45
|
id: String,
|
|
40
46
|
event_type: String,
|
|
41
|
-
|
|
47
|
+
sandbox: T::Boolean,
|
|
42
48
|
idempotency_key: String,
|
|
49
|
+
x_profile_id: String,
|
|
43
50
|
request_options: Sentdm::RequestOptions::OrHash
|
|
44
51
|
).returns(T.attached_class)
|
|
45
52
|
end
|
|
46
53
|
def self.new(
|
|
47
54
|
id:,
|
|
48
55
|
event_type: nil,
|
|
49
|
-
#
|
|
50
|
-
#
|
|
51
|
-
|
|
56
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
57
|
+
# for testing integrations without actual execution
|
|
58
|
+
sandbox: nil,
|
|
52
59
|
idempotency_key: nil,
|
|
60
|
+
x_profile_id: nil,
|
|
53
61
|
request_options: {}
|
|
54
62
|
)
|
|
55
63
|
end
|
|
@@ -59,8 +67,9 @@ module Sentdm
|
|
|
59
67
|
{
|
|
60
68
|
id: String,
|
|
61
69
|
event_type: String,
|
|
62
|
-
|
|
70
|
+
sandbox: T::Boolean,
|
|
63
71
|
idempotency_key: String,
|
|
72
|
+
x_profile_id: String,
|
|
64
73
|
request_options: Sentdm::RequestOptions
|
|
65
74
|
}
|
|
66
75
|
)
|
|
@@ -20,13 +20,13 @@ module Sentdm
|
|
|
20
20
|
sig { params(is_active: T::Boolean).void }
|
|
21
21
|
attr_writer :is_active
|
|
22
22
|
|
|
23
|
-
#
|
|
24
|
-
#
|
|
23
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
24
|
+
# for testing integrations without actual execution
|
|
25
25
|
sig { returns(T.nilable(T::Boolean)) }
|
|
26
|
-
attr_reader :
|
|
26
|
+
attr_reader :sandbox
|
|
27
27
|
|
|
28
|
-
sig { params(
|
|
29
|
-
attr_writer :
|
|
28
|
+
sig { params(sandbox: T::Boolean).void }
|
|
29
|
+
attr_writer :sandbox
|
|
30
30
|
|
|
31
31
|
sig { returns(T.nilable(String)) }
|
|
32
32
|
attr_reader :idempotency_key
|
|
@@ -34,22 +34,30 @@ module Sentdm
|
|
|
34
34
|
sig { params(idempotency_key: String).void }
|
|
35
35
|
attr_writer :idempotency_key
|
|
36
36
|
|
|
37
|
+
sig { returns(T.nilable(String)) }
|
|
38
|
+
attr_reader :x_profile_id
|
|
39
|
+
|
|
40
|
+
sig { params(x_profile_id: String).void }
|
|
41
|
+
attr_writer :x_profile_id
|
|
42
|
+
|
|
37
43
|
sig do
|
|
38
44
|
params(
|
|
39
45
|
id: String,
|
|
40
46
|
is_active: T::Boolean,
|
|
41
|
-
|
|
47
|
+
sandbox: T::Boolean,
|
|
42
48
|
idempotency_key: String,
|
|
49
|
+
x_profile_id: String,
|
|
43
50
|
request_options: Sentdm::RequestOptions::OrHash
|
|
44
51
|
).returns(T.attached_class)
|
|
45
52
|
end
|
|
46
53
|
def self.new(
|
|
47
54
|
id:,
|
|
48
55
|
is_active: nil,
|
|
49
|
-
#
|
|
50
|
-
#
|
|
51
|
-
|
|
56
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
57
|
+
# for testing integrations without actual execution
|
|
58
|
+
sandbox: nil,
|
|
52
59
|
idempotency_key: nil,
|
|
60
|
+
x_profile_id: nil,
|
|
53
61
|
request_options: {}
|
|
54
62
|
)
|
|
55
63
|
end
|
|
@@ -59,8 +67,9 @@ module Sentdm
|
|
|
59
67
|
{
|
|
60
68
|
id: String,
|
|
61
69
|
is_active: T::Boolean,
|
|
62
|
-
|
|
70
|
+
sandbox: T::Boolean,
|
|
63
71
|
idempotency_key: String,
|
|
72
|
+
x_profile_id: String,
|
|
64
73
|
request_options: Sentdm::RequestOptions
|
|
65
74
|
}
|
|
66
75
|
)
|
|
@@ -38,13 +38,13 @@ module Sentdm
|
|
|
38
38
|
sig { params(retry_count: Integer).void }
|
|
39
39
|
attr_writer :retry_count
|
|
40
40
|
|
|
41
|
-
#
|
|
42
|
-
#
|
|
41
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
42
|
+
# for testing integrations without actual execution
|
|
43
43
|
sig { returns(T.nilable(T::Boolean)) }
|
|
44
|
-
attr_reader :
|
|
44
|
+
attr_reader :sandbox
|
|
45
45
|
|
|
46
|
-
sig { params(
|
|
47
|
-
attr_writer :
|
|
46
|
+
sig { params(sandbox: T::Boolean).void }
|
|
47
|
+
attr_writer :sandbox
|
|
48
48
|
|
|
49
49
|
sig { returns(T.nilable(Integer)) }
|
|
50
50
|
attr_reader :timeout_seconds
|
|
@@ -58,6 +58,12 @@ module Sentdm
|
|
|
58
58
|
sig { params(idempotency_key: String).void }
|
|
59
59
|
attr_writer :idempotency_key
|
|
60
60
|
|
|
61
|
+
sig { returns(T.nilable(String)) }
|
|
62
|
+
attr_reader :x_profile_id
|
|
63
|
+
|
|
64
|
+
sig { params(x_profile_id: String).void }
|
|
65
|
+
attr_writer :x_profile_id
|
|
66
|
+
|
|
61
67
|
sig do
|
|
62
68
|
params(
|
|
63
69
|
id: String,
|
|
@@ -65,9 +71,10 @@ module Sentdm
|
|
|
65
71
|
endpoint_url: String,
|
|
66
72
|
event_types: T::Array[String],
|
|
67
73
|
retry_count: Integer,
|
|
68
|
-
|
|
74
|
+
sandbox: T::Boolean,
|
|
69
75
|
timeout_seconds: Integer,
|
|
70
76
|
idempotency_key: String,
|
|
77
|
+
x_profile_id: String,
|
|
71
78
|
request_options: Sentdm::RequestOptions::OrHash
|
|
72
79
|
).returns(T.attached_class)
|
|
73
80
|
end
|
|
@@ -77,11 +84,12 @@ module Sentdm
|
|
|
77
84
|
endpoint_url: nil,
|
|
78
85
|
event_types: nil,
|
|
79
86
|
retry_count: nil,
|
|
80
|
-
#
|
|
81
|
-
#
|
|
82
|
-
|
|
87
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
88
|
+
# for testing integrations without actual execution
|
|
89
|
+
sandbox: nil,
|
|
83
90
|
timeout_seconds: nil,
|
|
84
91
|
idempotency_key: nil,
|
|
92
|
+
x_profile_id: nil,
|
|
85
93
|
request_options: {}
|
|
86
94
|
)
|
|
87
95
|
end
|
|
@@ -94,9 +102,10 @@ module Sentdm
|
|
|
94
102
|
endpoint_url: String,
|
|
95
103
|
event_types: T::Array[String],
|
|
96
104
|
retry_count: Integer,
|
|
97
|
-
|
|
105
|
+
sandbox: T::Boolean,
|
|
98
106
|
timeout_seconds: Integer,
|
|
99
107
|
idempotency_key: String,
|
|
108
|
+
x_profile_id: String,
|
|
100
109
|
request_options: Sentdm::RequestOptions
|
|
101
110
|
}
|
|
102
111
|
)
|
data/rbi/sentdm/models.rbi
CHANGED
|
@@ -5,8 +5,6 @@ module Sentdm
|
|
|
5
5
|
|
|
6
6
|
APIMeta = Sentdm::Models::APIMeta
|
|
7
7
|
|
|
8
|
-
APIResponseBrandWithKYC = Sentdm::Models::APIResponseBrandWithKYC
|
|
9
|
-
|
|
10
8
|
APIResponseContact = Sentdm::Models::APIResponseContact
|
|
11
9
|
|
|
12
10
|
APIResponseOfProfileDetail = Sentdm::Models::APIResponseOfProfileDetail
|
|
@@ -17,18 +15,10 @@ module Sentdm
|
|
|
17
15
|
|
|
18
16
|
APIResponseWebhook = Sentdm::Models::APIResponseWebhook
|
|
19
17
|
|
|
20
|
-
BrandCreateParams = Sentdm::Models::BrandCreateParams
|
|
21
|
-
|
|
22
18
|
BrandData = Sentdm::Models::BrandData
|
|
23
19
|
|
|
24
|
-
BrandDeleteParams = Sentdm::Models::BrandDeleteParams
|
|
25
|
-
|
|
26
|
-
BrandListParams = Sentdm::Models::BrandListParams
|
|
27
|
-
|
|
28
20
|
Brands = Sentdm::Models::Brands
|
|
29
21
|
|
|
30
|
-
BrandUpdateParams = Sentdm::Models::BrandUpdateParams
|
|
31
|
-
|
|
32
22
|
BrandWithKYC = Sentdm::Models::BrandWithKYC
|
|
33
23
|
|
|
34
24
|
Contact = Sentdm::Models::Contact
|
|
@@ -45,8 +35,6 @@ module Sentdm
|
|
|
45
35
|
|
|
46
36
|
DestinationCountry = Sentdm::Models::DestinationCountry
|
|
47
37
|
|
|
48
|
-
LookupRetrievePhoneInfoParams = Sentdm::Models::LookupRetrievePhoneInfoParams
|
|
49
|
-
|
|
50
38
|
MeRetrieveParams = Sentdm::Models::MeRetrieveParams
|
|
51
39
|
|
|
52
40
|
MessageRetrieveActivitiesParams =
|
|
@@ -3,102 +3,7 @@
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
5
|
class Brands
|
|
6
|
-
# Register and manage 10DLC brands for SMS compliance
|
|
7
6
|
class Campaigns
|
|
8
|
-
# Creates a new campaign scoped under a specific brand. The campaign is linked to
|
|
9
|
-
# the specified brand. Each campaign must include at least one use case with
|
|
10
|
-
# sample messages.
|
|
11
|
-
sig do
|
|
12
|
-
params(
|
|
13
|
-
brand_id: String,
|
|
14
|
-
campaign: Sentdm::Brands::CampaignData::OrHash,
|
|
15
|
-
test_mode: T::Boolean,
|
|
16
|
-
idempotency_key: String,
|
|
17
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
18
|
-
).returns(Sentdm::Brands::APIResponseTcrCampaignWithUseCases)
|
|
19
|
-
end
|
|
20
|
-
def create(
|
|
21
|
-
# Path param: Brand ID from route
|
|
22
|
-
brand_id,
|
|
23
|
-
# Body param: Campaign data
|
|
24
|
-
campaign:,
|
|
25
|
-
# Body param: Test mode flag - when true, the operation is simulated without side
|
|
26
|
-
# effects Useful for testing integrations without actual execution
|
|
27
|
-
test_mode: nil,
|
|
28
|
-
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
29
|
-
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
30
|
-
# hours per key per customer.
|
|
31
|
-
idempotency_key: nil,
|
|
32
|
-
request_options: {}
|
|
33
|
-
)
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
# Updates an existing campaign scoped under a specific brand. Cannot update
|
|
37
|
-
# campaigns that have already been submitted to TCR.
|
|
38
|
-
sig do
|
|
39
|
-
params(
|
|
40
|
-
campaign_id: String,
|
|
41
|
-
brand_id: String,
|
|
42
|
-
campaign: Sentdm::Brands::CampaignData::OrHash,
|
|
43
|
-
test_mode: T::Boolean,
|
|
44
|
-
idempotency_key: String,
|
|
45
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
46
|
-
).returns(Sentdm::Brands::APIResponseTcrCampaignWithUseCases)
|
|
47
|
-
end
|
|
48
|
-
def update(
|
|
49
|
-
# Path param: Campaign ID from route
|
|
50
|
-
campaign_id,
|
|
51
|
-
# Path param: Brand ID from route
|
|
52
|
-
brand_id:,
|
|
53
|
-
# Body param: Campaign data
|
|
54
|
-
campaign:,
|
|
55
|
-
# Body param: Test mode flag - when true, the operation is simulated without side
|
|
56
|
-
# effects Useful for testing integrations without actual execution
|
|
57
|
-
test_mode: nil,
|
|
58
|
-
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
59
|
-
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
60
|
-
# hours per key per customer.
|
|
61
|
-
idempotency_key: nil,
|
|
62
|
-
request_options: {}
|
|
63
|
-
)
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
# Retrieves all campaigns linked to a specific brand, including their use cases
|
|
67
|
-
# and sample messages.
|
|
68
|
-
sig do
|
|
69
|
-
params(
|
|
70
|
-
brand_id: String,
|
|
71
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
72
|
-
).returns(Sentdm::Models::Brands::CampaignListResponse)
|
|
73
|
-
end
|
|
74
|
-
def list(
|
|
75
|
-
# Brand ID from route
|
|
76
|
-
brand_id,
|
|
77
|
-
request_options: {}
|
|
78
|
-
)
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
# Deletes a campaign by ID within a specific brand. The brand must belong to the
|
|
82
|
-
# authenticated customer.
|
|
83
|
-
sig do
|
|
84
|
-
params(
|
|
85
|
-
campaign_id: String,
|
|
86
|
-
brand_id: String,
|
|
87
|
-
body: Sentdm::Brands::CampaignDeleteParams::Body::OrHash,
|
|
88
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
89
|
-
).void
|
|
90
|
-
end
|
|
91
|
-
def delete(
|
|
92
|
-
# Path param: Campaign ID from route parameter
|
|
93
|
-
campaign_id,
|
|
94
|
-
# Path param: Brand ID from route parameter
|
|
95
|
-
brand_id:,
|
|
96
|
-
# Body param: Request to delete a campaign from a brand
|
|
97
|
-
body:,
|
|
98
|
-
request_options: {}
|
|
99
|
-
)
|
|
100
|
-
end
|
|
101
|
-
|
|
102
7
|
# @api private
|
|
103
8
|
sig { params(client: Sentdm::Client).returns(T.attached_class) }
|
|
104
9
|
def self.new(client:)
|
|
@@ -2,90 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
-
# Register and manage 10DLC brands for SMS compliance
|
|
6
5
|
class Brands
|
|
7
|
-
# Register and manage 10DLC brands for SMS compliance
|
|
8
6
|
sig { returns(Sentdm::Resources::Brands::Campaigns) }
|
|
9
7
|
attr_reader :campaigns
|
|
10
8
|
|
|
11
|
-
# Creates a new brand and associated information. This endpoint automatically sets
|
|
12
|
-
# inheritTcrBrand=false when a brand is created.
|
|
13
|
-
sig do
|
|
14
|
-
params(
|
|
15
|
-
brand: Sentdm::BrandData::OrHash,
|
|
16
|
-
test_mode: T::Boolean,
|
|
17
|
-
idempotency_key: String,
|
|
18
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
19
|
-
).returns(Sentdm::APIResponseBrandWithKYC)
|
|
20
|
-
end
|
|
21
|
-
def create(
|
|
22
|
-
# Body param: Brand and KYC information
|
|
23
|
-
brand:,
|
|
24
|
-
# Body param: Test mode flag - when true, the operation is simulated without side
|
|
25
|
-
# effects Useful for testing integrations without actual execution
|
|
26
|
-
test_mode: nil,
|
|
27
|
-
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
28
|
-
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
29
|
-
# hours per key per customer.
|
|
30
|
-
idempotency_key: nil,
|
|
31
|
-
request_options: {}
|
|
32
|
-
)
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
# Updates an existing brand and its associated information. Cannot update brands
|
|
36
|
-
# that have already been submitted to TCR or inherited brands.
|
|
37
|
-
sig do
|
|
38
|
-
params(
|
|
39
|
-
brand_id: String,
|
|
40
|
-
brand: Sentdm::BrandData::OrHash,
|
|
41
|
-
test_mode: T::Boolean,
|
|
42
|
-
idempotency_key: String,
|
|
43
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
44
|
-
).returns(Sentdm::APIResponseBrandWithKYC)
|
|
45
|
-
end
|
|
46
|
-
def update(
|
|
47
|
-
# Path param: Brand ID from route
|
|
48
|
-
brand_id,
|
|
49
|
-
# Body param: Brand and KYC information
|
|
50
|
-
brand:,
|
|
51
|
-
# Body param: Test mode flag - when true, the operation is simulated without side
|
|
52
|
-
# effects Useful for testing integrations without actual execution
|
|
53
|
-
test_mode: nil,
|
|
54
|
-
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
55
|
-
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
56
|
-
# hours per key per customer.
|
|
57
|
-
idempotency_key: nil,
|
|
58
|
-
request_options: {}
|
|
59
|
-
)
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
# Retrieves all brands for the authenticated customer with information in a
|
|
63
|
-
# flattened structure. Includes inherited brands if inheritTcrBrand=true.
|
|
64
|
-
sig do
|
|
65
|
-
params(request_options: Sentdm::RequestOptions::OrHash).returns(
|
|
66
|
-
Sentdm::Models::BrandListResponse
|
|
67
|
-
)
|
|
68
|
-
end
|
|
69
|
-
def list(request_options: {})
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
# Delete a brand by ID. The brand must belong to the authenticated customer.
|
|
73
|
-
sig do
|
|
74
|
-
params(
|
|
75
|
-
brand_id: String,
|
|
76
|
-
body: Sentdm::BrandDeleteParams::Body::OrHash,
|
|
77
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
78
|
-
).void
|
|
79
|
-
end
|
|
80
|
-
def delete(
|
|
81
|
-
# Brand ID from route parameter
|
|
82
|
-
brand_id,
|
|
83
|
-
# Request to delete a brand
|
|
84
|
-
body:,
|
|
85
|
-
request_options: {}
|
|
86
|
-
)
|
|
87
|
-
end
|
|
88
|
-
|
|
89
9
|
# @api private
|
|
90
10
|
sig { params(client: Sentdm::Client).returns(T.attached_class) }
|
|
91
11
|
def self.new(client:)
|
|
@@ -9,21 +9,26 @@ module Sentdm
|
|
|
9
9
|
sig do
|
|
10
10
|
params(
|
|
11
11
|
phone_number: String,
|
|
12
|
-
|
|
12
|
+
sandbox: T::Boolean,
|
|
13
13
|
idempotency_key: String,
|
|
14
|
+
x_profile_id: String,
|
|
14
15
|
request_options: Sentdm::RequestOptions::OrHash
|
|
15
16
|
).returns(Sentdm::APIResponseContact)
|
|
16
17
|
end
|
|
17
18
|
def create(
|
|
18
19
|
# Body param: Phone number of the contact to create
|
|
19
20
|
phone_number: nil,
|
|
20
|
-
# Body param:
|
|
21
|
+
# Body param: Sandbox flag - when true, the operation is simulated without side
|
|
21
22
|
# effects Useful for testing integrations without actual execution
|
|
22
|
-
|
|
23
|
+
sandbox: nil,
|
|
23
24
|
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
24
25
|
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
25
26
|
# hours per key per customer.
|
|
26
27
|
idempotency_key: nil,
|
|
28
|
+
# Header param: Profile UUID to scope the request to a child profile. Only
|
|
29
|
+
# organization API keys can use this header. The profile must belong to the
|
|
30
|
+
# calling organization.
|
|
31
|
+
x_profile_id: nil,
|
|
27
32
|
request_options: {}
|
|
28
33
|
)
|
|
29
34
|
end
|
|
@@ -34,12 +39,16 @@ module Sentdm
|
|
|
34
39
|
sig do
|
|
35
40
|
params(
|
|
36
41
|
id: String,
|
|
42
|
+
x_profile_id: String,
|
|
37
43
|
request_options: Sentdm::RequestOptions::OrHash
|
|
38
44
|
).returns(Sentdm::APIResponseContact)
|
|
39
45
|
end
|
|
40
46
|
def retrieve(
|
|
41
47
|
# Contact ID from route parameter
|
|
42
48
|
id,
|
|
49
|
+
# Profile UUID to scope the request to a child profile. Only organization API keys
|
|
50
|
+
# can use this header. The profile must belong to the calling organization.
|
|
51
|
+
x_profile_id: nil,
|
|
43
52
|
request_options: {}
|
|
44
53
|
)
|
|
45
54
|
end
|
|
@@ -51,8 +60,9 @@ module Sentdm
|
|
|
51
60
|
id: String,
|
|
52
61
|
default_channel: T.nilable(String),
|
|
53
62
|
opt_out: T.nilable(T::Boolean),
|
|
54
|
-
|
|
63
|
+
sandbox: T::Boolean,
|
|
55
64
|
idempotency_key: String,
|
|
65
|
+
x_profile_id: String,
|
|
56
66
|
request_options: Sentdm::RequestOptions::OrHash
|
|
57
67
|
).returns(Sentdm::APIResponseContact)
|
|
58
68
|
end
|
|
@@ -63,13 +73,17 @@ module Sentdm
|
|
|
63
73
|
default_channel: nil,
|
|
64
74
|
# Body param: Whether the contact has opted out of messaging
|
|
65
75
|
opt_out: nil,
|
|
66
|
-
# Body param:
|
|
76
|
+
# Body param: Sandbox flag - when true, the operation is simulated without side
|
|
67
77
|
# effects Useful for testing integrations without actual execution
|
|
68
|
-
|
|
78
|
+
sandbox: nil,
|
|
69
79
|
# Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
70
80
|
# alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
71
81
|
# hours per key per customer.
|
|
72
82
|
idempotency_key: nil,
|
|
83
|
+
# Header param: Profile UUID to scope the request to a child profile. Only
|
|
84
|
+
# organization API keys can use this header. The profile must belong to the
|
|
85
|
+
# calling organization.
|
|
86
|
+
x_profile_id: nil,
|
|
73
87
|
request_options: {}
|
|
74
88
|
)
|
|
75
89
|
end
|
|
@@ -83,19 +97,25 @@ module Sentdm
|
|
|
83
97
|
channel: T.nilable(String),
|
|
84
98
|
phone: T.nilable(String),
|
|
85
99
|
search: T.nilable(String),
|
|
100
|
+
x_profile_id: String,
|
|
86
101
|
request_options: Sentdm::RequestOptions::OrHash
|
|
87
102
|
).returns(Sentdm::Models::ContactListResponse)
|
|
88
103
|
end
|
|
89
104
|
def list(
|
|
90
|
-
# Page number (1-indexed)
|
|
105
|
+
# Query param: Page number (1-indexed)
|
|
91
106
|
page:,
|
|
107
|
+
# Query param: Number of items per page
|
|
92
108
|
page_size:,
|
|
93
|
-
# Optional channel filter (sms, whatsapp)
|
|
109
|
+
# Query param: Optional channel filter (sms, whatsapp)
|
|
94
110
|
channel: nil,
|
|
95
|
-
# Optional phone number filter (alternative to list view)
|
|
111
|
+
# Query param: Optional phone number filter (alternative to list view)
|
|
96
112
|
phone: nil,
|
|
97
|
-
# Optional search term for filtering contacts
|
|
113
|
+
# Query param: Optional search term for filtering contacts
|
|
98
114
|
search: nil,
|
|
115
|
+
# Header param: Profile UUID to scope the request to a child profile. Only
|
|
116
|
+
# organization API keys can use this header. The profile must belong to the
|
|
117
|
+
# calling organization.
|
|
118
|
+
x_profile_id: nil,
|
|
99
119
|
request_options: {}
|
|
100
120
|
)
|
|
101
121
|
end
|
|
@@ -106,14 +126,19 @@ module Sentdm
|
|
|
106
126
|
params(
|
|
107
127
|
id: String,
|
|
108
128
|
body: Sentdm::ContactDeleteParams::Body::OrHash,
|
|
129
|
+
x_profile_id: String,
|
|
109
130
|
request_options: Sentdm::RequestOptions::OrHash
|
|
110
131
|
).void
|
|
111
132
|
end
|
|
112
133
|
def delete(
|
|
113
|
-
# Contact ID from route parameter
|
|
134
|
+
# Path param: Contact ID from route parameter
|
|
114
135
|
id,
|
|
115
|
-
# Request to delete/dissociate a contact
|
|
136
|
+
# Body param: Request to delete/dissociate a contact
|
|
116
137
|
body:,
|
|
138
|
+
# Header param: Profile UUID to scope the request to a child profile. Only
|
|
139
|
+
# organization API keys can use this header. The profile must belong to the
|
|
140
|
+
# calling organization.
|
|
141
|
+
x_profile_id: nil,
|
|
117
142
|
request_options: {}
|
|
118
143
|
)
|
|
119
144
|
end
|
|
@@ -3,18 +3,6 @@
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
5
|
class Lookup
|
|
6
|
-
# Validates a phone number and retrieves formatting, country, and timezone
|
|
7
|
-
# information from the internal index. Provider-agnostic and works for all
|
|
8
|
-
# customers.
|
|
9
|
-
sig do
|
|
10
|
-
params(
|
|
11
|
-
phone_number: String,
|
|
12
|
-
request_options: Sentdm::RequestOptions::OrHash
|
|
13
|
-
).returns(Sentdm::Models::LookupRetrievePhoneInfoResponse)
|
|
14
|
-
end
|
|
15
|
-
def retrieve_phone_info(phone_number, request_options: {})
|
|
16
|
-
end
|
|
17
|
-
|
|
18
6
|
# @api private
|
|
19
7
|
sig { params(client: Sentdm::Client).returns(T.attached_class) }
|
|
20
8
|
def self.new(client:)
|
data/rbi/sentdm/resources/me.rbi
CHANGED
|
@@ -4,15 +4,33 @@ module Sentdm
|
|
|
4
4
|
module Resources
|
|
5
5
|
# Retrieve account details
|
|
6
6
|
class Me
|
|
7
|
-
# Returns the account associated with the API key.
|
|
8
|
-
#
|
|
9
|
-
#
|
|
7
|
+
# Returns the account associated with the provided API key. The response includes
|
|
8
|
+
# account identity, contact information, messaging channel configuration, and —
|
|
9
|
+
# depending on the account type — either a list of child profiles or the profile's
|
|
10
|
+
# own settings.
|
|
11
|
+
#
|
|
12
|
+
# **Account types:**
|
|
13
|
+
#
|
|
14
|
+
# - `organization` — Has child profiles. The `profiles` array is populated.
|
|
15
|
+
# - `user` — Standalone account with no profiles.
|
|
16
|
+
# - `profile` — Child of an organization. Includes `organization_id`,
|
|
17
|
+
# `short_name`, `status`, and `settings`.
|
|
18
|
+
#
|
|
19
|
+
# **Channels:** The `channels` object always includes `sms`, `whatsapp`, and
|
|
20
|
+
# `rcs`. Each channel has a `configured` boolean. Configured channels expose
|
|
21
|
+
# additional details such as `phone_number`.
|
|
10
22
|
sig do
|
|
11
|
-
params(
|
|
12
|
-
|
|
13
|
-
|
|
23
|
+
params(
|
|
24
|
+
x_profile_id: String,
|
|
25
|
+
request_options: Sentdm::RequestOptions::OrHash
|
|
26
|
+
).returns(Sentdm::Models::MeRetrieveResponse)
|
|
14
27
|
end
|
|
15
|
-
def retrieve(
|
|
28
|
+
def retrieve(
|
|
29
|
+
# Profile UUID to scope the request to a child profile. Only organization API keys
|
|
30
|
+
# can use this header. The profile must belong to the calling organization.
|
|
31
|
+
x_profile_id: nil,
|
|
32
|
+
request_options: {}
|
|
33
|
+
)
|
|
16
34
|
end
|
|
17
35
|
|
|
18
36
|
# @api private
|