sentdm 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/README.md +27 -1
- data/lib/sentdm/internal/type/base_model.rb +5 -5
- data/lib/sentdm/models/api_meta.rb +34 -0
- data/lib/sentdm/models/api_response_of_contact.rb +46 -0
- data/lib/sentdm/models/api_response_of_contact_message_summary.rb +43 -0
- data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
- data/lib/sentdm/models/api_response_of_user.rb +43 -0
- data/lib/sentdm/models/api_response_template.rb +43 -0
- data/lib/sentdm/models/api_response_webhook.rb +43 -0
- data/lib/sentdm/models/billing_contact_info.rb +47 -0
- data/lib/sentdm/models/brand_business_info.rb +114 -0
- data/lib/sentdm/models/brand_compliance_info.rb +59 -0
- data/lib/sentdm/models/brand_contact_info.rb +58 -0
- data/lib/sentdm/models/brands_brand_data.rb +34 -0
- data/lib/sentdm/models/contact_delete_params.rb +2 -16
- data/lib/sentdm/models/contact_list_response.rb +12 -295
- data/lib/sentdm/models/contact_message_summary.rb +76 -0
- data/lib/sentdm/models/contact_response.rb +139 -0
- data/lib/sentdm/models/conversation_messages_list.rb +245 -0
- data/lib/sentdm/models/error_detail.rb +42 -0
- data/lib/sentdm/models/me_retrieve_response.rb +12 -242
- data/lib/sentdm/models/message_retrieve_activities_response.rb +9 -159
- data/lib/sentdm/models/message_retrieve_status_response.rb +6 -74
- data/lib/sentdm/models/message_send_response.rb +6 -74
- data/lib/sentdm/models/mutation_request.rb +20 -0
- data/lib/sentdm/models/number_lookup_response.rb +6 -74
- data/lib/sentdm/models/pagination_meta.rb +84 -0
- data/lib/sentdm/models/payment_details.rb +40 -0
- data/lib/sentdm/models/profile_complete_response.rb +6 -74
- data/lib/sentdm/models/profile_create_params.rb +9 -345
- data/lib/sentdm/models/profile_delete_params.rb +2 -16
- data/lib/sentdm/models/profile_detail.rb +650 -0
- data/lib/sentdm/models/profile_list_response.rb +12 -815
- data/lib/sentdm/models/profile_settings.rb +85 -0
- data/lib/sentdm/models/profile_update_params.rb +9 -345
- data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +45 -0
- data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +45 -0
- data/lib/sentdm/models/profiles/brand_campaign.rb +247 -0
- data/lib/sentdm/models/profiles/campaign_create_params.rb +3 -156
- data/lib/sentdm/models/profiles/campaign_data.rb +136 -0
- data/lib/sentdm/models/profiles/campaign_delete_params.rb +2 -17
- data/lib/sentdm/models/profiles/campaign_update_params.rb +3 -156
- data/lib/sentdm/models/profiles/campaign_use_case.rb +71 -0
- data/lib/sentdm/models/profiles/campaign_use_case_data.rb +29 -0
- data/lib/sentdm/models/template.rb +102 -0
- data/lib/sentdm/models/template_list_response.rb +12 -258
- data/lib/sentdm/models/user_list_response.rb +12 -249
- data/lib/sentdm/models/user_remove_params.rb +2 -16
- data/lib/sentdm/models/user_response.rb +94 -0
- data/lib/sentdm/models/webhook_event_type.rb +45 -0
- data/lib/sentdm/models/webhook_list_event_types_response.rb +12 -203
- data/lib/sentdm/models/webhook_list_events_response.rb +9 -157
- data/lib/sentdm/models/webhook_list_response.rb +12 -276
- data/lib/sentdm/models/webhook_response.rb +120 -0
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +2 -17
- data/lib/sentdm/models/webhook_rotate_secret_response.rb +6 -74
- data/lib/sentdm/models/webhook_test_response.rb +6 -74
- data/lib/sentdm/models.rb +52 -0
- data/lib/sentdm/resources/contacts.rb +8 -8
- data/lib/sentdm/resources/conversations.rb +4 -4
- data/lib/sentdm/resources/profiles/campaigns.rb +8 -8
- data/lib/sentdm/resources/profiles.rb +12 -12
- data/lib/sentdm/resources/templates.rb +6 -6
- data/lib/sentdm/resources/users.rb +6 -6
- data/lib/sentdm/resources/webhooks.rb +8 -8
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +32 -22
- data/rbi/sentdm/models/api_meta.rbi +55 -0
- data/rbi/sentdm/models/api_response_of_contact.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +79 -0
- data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +79 -0
- data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
- data/rbi/sentdm/models/api_response_template.rbi +74 -0
- data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
- data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
- data/rbi/sentdm/models/brand_business_info.rbi +162 -0
- data/rbi/sentdm/models/brand_compliance_info.rbi +76 -0
- data/rbi/sentdm/models/brand_contact_info.rbi +78 -0
- data/rbi/sentdm/models/brands_brand_data.rbi +65 -0
- data/rbi/sentdm/models/contact_delete_params.rbi +2 -19
- data/rbi/sentdm/models/contact_list_response.rbi +16 -522
- data/rbi/sentdm/models/contact_message_summary.rbi +144 -0
- data/rbi/sentdm/models/contact_response.rbi +200 -0
- data/rbi/sentdm/models/conversation_messages_list.rbi +419 -0
- data/rbi/sentdm/models/error_detail.rbi +66 -0
- data/rbi/sentdm/models/me_retrieve_response.rbi +16 -367
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +12 -325
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +8 -148
- data/rbi/sentdm/models/message_send_response.rbi +8 -135
- data/rbi/sentdm/models/mutation_request.rbi +32 -0
- data/rbi/sentdm/models/number_lookup_response.rbi +8 -135
- data/rbi/sentdm/models/pagination_meta.rbi +135 -0
- data/rbi/sentdm/models/payment_details.rbi +56 -0
- data/rbi/sentdm/models/profile_complete_response.rbi +8 -137
- data/rbi/sentdm/models/profile_create_params.rbi +12 -546
- data/rbi/sentdm/models/profile_delete_params.rbi +2 -19
- data/rbi/sentdm/models/profile_detail.rbi +918 -0
- data/rbi/sentdm/models/profile_list_response.rbi +16 -1347
- data/rbi/sentdm/models/profile_settings.rbi +102 -0
- data/rbi/sentdm/models/profile_update_params.rbi +12 -546
- data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +81 -0
- data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +76 -0
- data/rbi/sentdm/models/profiles/brand_campaign.rbi +299 -0
- data/rbi/sentdm/models/profiles/campaign_create_params.rbi +4 -218
- data/rbi/sentdm/models/profiles/campaign_data.rbi +158 -0
- data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +1 -14
- data/rbi/sentdm/models/profiles/campaign_update_params.rbi +4 -218
- data/rbi/sentdm/models/profiles/campaign_use_case.rbi +110 -0
- data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +51 -0
- data/rbi/sentdm/models/template.rbi +139 -0
- data/rbi/sentdm/models/template_list_response.rbi +16 -464
- data/rbi/sentdm/models/user_list_response.rbi +16 -444
- data/rbi/sentdm/models/user_remove_params.rbi +2 -19
- data/rbi/sentdm/models/user_response.rbi +131 -0
- data/rbi/sentdm/models/webhook_event_type.rbi +74 -0
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +16 -414
- data/rbi/sentdm/models/webhook_list_events_response.rbi +12 -314
- data/rbi/sentdm/models/webhook_list_response.rbi +16 -475
- data/rbi/sentdm/models/webhook_response.rbi +153 -0
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -14
- data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +8 -148
- data/rbi/sentdm/models/webhook_test_response.rbi +8 -135
- data/rbi/sentdm/models.rbi +54 -0
- data/rbi/sentdm/resources/contacts.rbi +4 -4
- data/rbi/sentdm/resources/conversations.rbi +2 -2
- data/rbi/sentdm/resources/profiles/campaigns.rbi +5 -5
- data/rbi/sentdm/resources/profiles.rbi +9 -13
- data/rbi/sentdm/resources/templates.rbi +3 -3
- data/rbi/sentdm/resources/users.rbi +3 -3
- data/rbi/sentdm/resources/webhooks.rbi +4 -4
- data/sig/sentdm/models/api_meta.rbs +27 -0
- data/sig/sentdm/models/api_response_of_contact.rbs +39 -0
- data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +39 -0
- data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
- data/sig/sentdm/models/api_response_of_user.rbs +39 -0
- data/sig/sentdm/models/api_response_template.rbs +39 -0
- data/sig/sentdm/models/api_response_webhook.rbs +39 -0
- data/sig/sentdm/models/billing_contact_info.rbs +30 -0
- data/sig/sentdm/models/brand_business_info.rbs +89 -0
- data/sig/sentdm/models/brand_compliance_info.rbs +45 -0
- data/sig/sentdm/models/brand_contact_info.rbs +45 -0
- data/sig/sentdm/models/brands_brand_data.rbs +30 -0
- data/sig/sentdm/models/contact_delete_params.rbs +6 -10
- data/sig/sentdm/models/contact_list_response.rbs +20 -263
- data/sig/sentdm/models/contact_message_summary.rbs +84 -0
- data/sig/sentdm/models/contact_response.rbs +118 -0
- data/sig/sentdm/models/conversation_messages_list.rbs +240 -0
- data/sig/sentdm/models/error_detail.rbs +39 -0
- data/sig/sentdm/models/me_retrieve_response.rbs +18 -176
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +14 -142
- data/sig/sentdm/models/message_retrieve_status_response.rbs +9 -71
- data/sig/sentdm/models/message_send_response.rbs +9 -71
- data/sig/sentdm/models/mutation_request.rbs +15 -0
- data/sig/sentdm/models/number_lookup_response.rbs +9 -71
- data/sig/sentdm/models/pagination_meta.rbs +67 -0
- data/sig/sentdm/models/payment_details.rbs +30 -0
- data/sig/sentdm/models/profile_complete_response.rbs +9 -71
- data/sig/sentdm/models/profile_create_params.rbs +12 -263
- data/sig/sentdm/models/profile_delete_params.rbs +6 -10
- data/sig/sentdm/models/profile_detail.rbs +461 -0
- data/sig/sentdm/models/profile_list_response.rbs +20 -606
- data/sig/sentdm/models/profile_settings.rbs +50 -0
- data/sig/sentdm/models/profile_update_params.rbs +12 -263
- data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +41 -0
- data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +41 -0
- data/sig/sentdm/models/profiles/brand_campaign.rbs +194 -0
- data/sig/sentdm/models/profiles/campaign_create_params.rbs +4 -108
- data/sig/sentdm/models/profiles/campaign_data.rbs +87 -0
- data/sig/sentdm/models/profiles/campaign_delete_params.rbs +8 -15
- data/sig/sentdm/models/profiles/campaign_update_params.rbs +4 -108
- data/sig/sentdm/models/profiles/campaign_use_case.rbs +66 -0
- data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +27 -0
- data/sig/sentdm/models/template.rbs +84 -0
- data/sig/sentdm/models/template_list_response.rbs +19 -230
- data/sig/sentdm/models/user_list_response.rbs +20 -224
- data/sig/sentdm/models/user_remove_params.rbs +6 -10
- data/sig/sentdm/models/user_response.rbs +79 -0
- data/sig/sentdm/models/webhook_event_type.rbs +51 -0
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +20 -196
- data/sig/sentdm/models/webhook_list_events_response.rbs +14 -142
- data/sig/sentdm/models/webhook_list_response.rbs +20 -255
- data/sig/sentdm/models/webhook_response.rbs +110 -0
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +8 -17
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +9 -71
- data/sig/sentdm/models/webhook_test_response.rbs +9 -71
- data/sig/sentdm/models.rbs +52 -0
- data/sig/sentdm/resources/contacts.rbs +4 -4
- data/sig/sentdm/resources/conversations.rbs +2 -2
- data/sig/sentdm/resources/profiles/campaigns.rbs +5 -5
- data/sig/sentdm/resources/profiles.rbs +9 -9
- data/sig/sentdm/resources/templates.rbs +3 -3
- data/sig/sentdm/resources/users.rbs +3 -3
- data/sig/sentdm/resources/webhooks.rbs +4 -4
- metadata +98 -68
- data/lib/sentdm/models/contact_create_response.rb +0 -249
- data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +0 -186
- data/lib/sentdm/models/contact_retrieve_response.rb +0 -249
- data/lib/sentdm/models/contact_update_response.rb +0 -249
- data/lib/sentdm/models/conversation_list_messages_response.rb +0 -436
- data/lib/sentdm/models/conversation_list_response.rb +0 -433
- data/lib/sentdm/models/profile_create_response.rb +0 -760
- data/lib/sentdm/models/profile_retrieve_response.rb +0 -762
- data/lib/sentdm/models/profile_update_response.rb +0 -760
- data/lib/sentdm/models/profiles/campaign_create_response.rb +0 -420
- data/lib/sentdm/models/profiles/campaign_list_response.rb +0 -421
- data/lib/sentdm/models/profiles/campaign_update_response.rb +0 -420
- data/lib/sentdm/models/template_create_response.rb +0 -209
- data/lib/sentdm/models/template_retrieve_response.rb +0 -209
- data/lib/sentdm/models/template_update_response.rb +0 -209
- data/lib/sentdm/models/user_invite_response.rb +0 -201
- data/lib/sentdm/models/user_retrieve_response.rb +0 -201
- data/lib/sentdm/models/user_update_role_response.rb +0 -201
- data/lib/sentdm/models/webhook_create_response.rb +0 -229
- data/lib/sentdm/models/webhook_retrieve_response.rb +0 -229
- data/lib/sentdm/models/webhook_toggle_status_response.rb +0 -229
- data/lib/sentdm/models/webhook_update_response.rb +0 -229
- data/rbi/sentdm/models/contact_create_response.rbi +0 -407
- data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +0 -397
- data/rbi/sentdm/models/contact_retrieve_response.rbi +0 -409
- data/rbi/sentdm/models/contact_update_response.rbi +0 -407
- data/rbi/sentdm/models/conversation_list_messages_response.rbi +0 -843
- data/rbi/sentdm/models/conversation_list_response.rbi +0 -819
- data/rbi/sentdm/models/profile_create_response.rbi +0 -1226
- data/rbi/sentdm/models/profile_retrieve_response.rbi +0 -1230
- data/rbi/sentdm/models/profile_update_response.rbi +0 -1226
- data/rbi/sentdm/models/profiles/campaign_create_response.rbi +0 -674
- data/rbi/sentdm/models/profiles/campaign_list_response.rbi +0 -667
- data/rbi/sentdm/models/profiles/campaign_update_response.rbi +0 -674
- data/rbi/sentdm/models/template_create_response.rbi +0 -349
- data/rbi/sentdm/models/template_retrieve_response.rbi +0 -355
- data/rbi/sentdm/models/template_update_response.rbi +0 -349
- data/rbi/sentdm/models/user_invite_response.rbi +0 -336
- data/rbi/sentdm/models/user_retrieve_response.rbi +0 -336
- data/rbi/sentdm/models/user_update_role_response.rbi +0 -341
- data/rbi/sentdm/models/webhook_create_response.rbi +0 -361
- data/rbi/sentdm/models/webhook_retrieve_response.rbi +0 -363
- data/rbi/sentdm/models/webhook_toggle_status_response.rbi +0 -379
- data/rbi/sentdm/models/webhook_update_response.rbi +0 -361
- data/sig/sentdm/models/contact_create_response.rbs +0 -216
- data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +0 -182
- data/sig/sentdm/models/contact_retrieve_response.rbs +0 -216
- data/sig/sentdm/models/contact_update_response.rbs +0 -216
- data/sig/sentdm/models/conversation_list_messages_response.rbs +0 -404
- data/sig/sentdm/models/conversation_list_response.rbs +0 -404
- data/sig/sentdm/models/profile_create_response.rbs +0 -559
- data/sig/sentdm/models/profile_retrieve_response.rbs +0 -559
- data/sig/sentdm/models/profile_update_response.rbs +0 -559
- data/sig/sentdm/models/profiles/campaign_create_response.rbs +0 -357
- data/sig/sentdm/models/profiles/campaign_list_response.rbs +0 -357
- data/sig/sentdm/models/profiles/campaign_update_response.rbs +0 -357
- data/sig/sentdm/models/template_create_response.rbs +0 -182
- data/sig/sentdm/models/template_retrieve_response.rbs +0 -182
- data/sig/sentdm/models/template_update_response.rbs +0 -182
- data/sig/sentdm/models/user_invite_response.rbs +0 -177
- data/sig/sentdm/models/user_retrieve_response.rbs +0 -177
- data/sig/sentdm/models/user_update_role_response.rbs +0 -177
- data/sig/sentdm/models/webhook_create_response.rbs +0 -208
- data/sig/sentdm/models/webhook_retrieve_response.rbs +0 -208
- data/sig/sentdm/models/webhook_toggle_status_response.rbs +0 -208
- data/sig/sentdm/models/webhook_update_response.rbs +0 -208
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Profiles
|
|
6
|
+
class APIResponseOfListOfBrandCampaign < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Sentdm::Profiles::APIResponseOfListOfBrandCampaign,
|
|
11
|
+
Sentdm::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# The response data (null if error)
|
|
16
|
+
sig { returns(T.nilable(T::Array[Sentdm::Profiles::BrandCampaign])) }
|
|
17
|
+
attr_accessor :data
|
|
18
|
+
|
|
19
|
+
# Error information
|
|
20
|
+
sig { returns(T.nilable(Sentdm::ErrorDetail)) }
|
|
21
|
+
attr_reader :error
|
|
22
|
+
|
|
23
|
+
sig { params(error: T.nilable(Sentdm::ErrorDetail::OrHash)).void }
|
|
24
|
+
attr_writer :error
|
|
25
|
+
|
|
26
|
+
# Request and response metadata
|
|
27
|
+
sig { returns(T.nilable(Sentdm::APIMeta)) }
|
|
28
|
+
attr_reader :meta
|
|
29
|
+
|
|
30
|
+
sig { params(meta: Sentdm::APIMeta::OrHash).void }
|
|
31
|
+
attr_writer :meta
|
|
32
|
+
|
|
33
|
+
# Indicates whether the request was successful
|
|
34
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
35
|
+
attr_reader :success
|
|
36
|
+
|
|
37
|
+
sig { params(success: T::Boolean).void }
|
|
38
|
+
attr_writer :success
|
|
39
|
+
|
|
40
|
+
# Standard API response envelope for all v3 endpoints
|
|
41
|
+
sig do
|
|
42
|
+
params(
|
|
43
|
+
data: T.nilable(T::Array[Sentdm::Profiles::BrandCampaign::OrHash]),
|
|
44
|
+
error: T.nilable(Sentdm::ErrorDetail::OrHash),
|
|
45
|
+
meta: Sentdm::APIMeta::OrHash,
|
|
46
|
+
success: T::Boolean
|
|
47
|
+
).returns(T.attached_class)
|
|
48
|
+
end
|
|
49
|
+
def self.new(
|
|
50
|
+
# The response data (null if error)
|
|
51
|
+
data: nil,
|
|
52
|
+
# Error information
|
|
53
|
+
error: nil,
|
|
54
|
+
# Request and response metadata
|
|
55
|
+
meta: nil,
|
|
56
|
+
# Indicates whether the request was successful
|
|
57
|
+
success: nil
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
sig do
|
|
62
|
+
override.returns(
|
|
63
|
+
{
|
|
64
|
+
data: T.nilable(T::Array[Sentdm::Profiles::BrandCampaign]),
|
|
65
|
+
error: T.nilable(Sentdm::ErrorDetail),
|
|
66
|
+
meta: Sentdm::APIMeta,
|
|
67
|
+
success: T::Boolean
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
def to_hash
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Profiles
|
|
6
|
+
class BrandCampaign < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Sentdm::Profiles::BrandCampaign, Sentdm::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
sig { returns(T.nilable(String)) }
|
|
13
|
+
attr_reader :id
|
|
14
|
+
|
|
15
|
+
sig { params(id: String).void }
|
|
16
|
+
attr_writer :id
|
|
17
|
+
|
|
18
|
+
sig { returns(T.nilable(Time)) }
|
|
19
|
+
attr_accessor :billed_date
|
|
20
|
+
|
|
21
|
+
sig { returns(T.nilable(String)) }
|
|
22
|
+
attr_accessor :brand_id
|
|
23
|
+
|
|
24
|
+
sig { returns(T.nilable(Float)) }
|
|
25
|
+
attr_accessor :cost
|
|
26
|
+
|
|
27
|
+
sig { returns(T.nilable(Time)) }
|
|
28
|
+
attr_reader :created_at
|
|
29
|
+
|
|
30
|
+
sig { params(created_at: Time).void }
|
|
31
|
+
attr_writer :created_at
|
|
32
|
+
|
|
33
|
+
sig { returns(T.nilable(String)) }
|
|
34
|
+
attr_reader :customer_id
|
|
35
|
+
|
|
36
|
+
sig { params(customer_id: String).void }
|
|
37
|
+
attr_writer :customer_id
|
|
38
|
+
|
|
39
|
+
# True once every carrier has completed its DCA election and the campaign is
|
|
40
|
+
# operationally ready for traffic.
|
|
41
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
42
|
+
attr_accessor :dca_elections_complete
|
|
43
|
+
|
|
44
|
+
sig { returns(T.nilable(Time)) }
|
|
45
|
+
attr_accessor :dca_elections_completed_at
|
|
46
|
+
|
|
47
|
+
sig { returns(T.nilable(String)) }
|
|
48
|
+
attr_reader :description
|
|
49
|
+
|
|
50
|
+
sig { params(description: String).void }
|
|
51
|
+
attr_writer :description
|
|
52
|
+
|
|
53
|
+
# True when the one-time campaign submission fee has already been charged.
|
|
54
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
55
|
+
attr_reader :has_submission_transaction
|
|
56
|
+
|
|
57
|
+
sig { params(has_submission_transaction: T::Boolean).void }
|
|
58
|
+
attr_writer :has_submission_transaction
|
|
59
|
+
|
|
60
|
+
sig { returns(T.nilable(String)) }
|
|
61
|
+
attr_accessor :help_keywords
|
|
62
|
+
|
|
63
|
+
sig { returns(T.nilable(String)) }
|
|
64
|
+
attr_accessor :help_message
|
|
65
|
+
|
|
66
|
+
sig { returns(T.nilable(String)) }
|
|
67
|
+
attr_accessor :message_flow
|
|
68
|
+
|
|
69
|
+
sig { returns(T.nilable(String)) }
|
|
70
|
+
attr_reader :name
|
|
71
|
+
|
|
72
|
+
sig { params(name: String).void }
|
|
73
|
+
attr_writer :name
|
|
74
|
+
|
|
75
|
+
sig { returns(T.nilable(String)) }
|
|
76
|
+
attr_accessor :optin_keywords
|
|
77
|
+
|
|
78
|
+
sig { returns(T.nilable(String)) }
|
|
79
|
+
attr_accessor :optin_message
|
|
80
|
+
|
|
81
|
+
sig { returns(T.nilable(String)) }
|
|
82
|
+
attr_accessor :optout_keywords
|
|
83
|
+
|
|
84
|
+
sig { returns(T.nilable(String)) }
|
|
85
|
+
attr_accessor :optout_message
|
|
86
|
+
|
|
87
|
+
sig { returns(T.nilable(String)) }
|
|
88
|
+
attr_accessor :privacy_policy_link
|
|
89
|
+
|
|
90
|
+
sig do
|
|
91
|
+
returns(
|
|
92
|
+
T.nilable(Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol)
|
|
93
|
+
)
|
|
94
|
+
end
|
|
95
|
+
attr_accessor :status
|
|
96
|
+
|
|
97
|
+
sig { returns(T.nilable(Time)) }
|
|
98
|
+
attr_accessor :submitted_at
|
|
99
|
+
|
|
100
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
101
|
+
attr_reader :submitted_to_tcr
|
|
102
|
+
|
|
103
|
+
sig { params(submitted_to_tcr: T::Boolean).void }
|
|
104
|
+
attr_writer :submitted_to_tcr
|
|
105
|
+
|
|
106
|
+
# The Campaign Registry identifier, once the campaign has been accepted.
|
|
107
|
+
sig { returns(T.nilable(String)) }
|
|
108
|
+
attr_accessor :tcr_campaign_id
|
|
109
|
+
|
|
110
|
+
# Surfaced so customers can see why a submission did not reach the registry.
|
|
111
|
+
sig { returns(T.nilable(String)) }
|
|
112
|
+
attr_accessor :tcr_sync_error
|
|
113
|
+
|
|
114
|
+
sig { returns(T.nilable(String)) }
|
|
115
|
+
attr_accessor :terms_and_conditions_link
|
|
116
|
+
|
|
117
|
+
# Campaign type (for example KYC or App).
|
|
118
|
+
sig { returns(T.nilable(String)) }
|
|
119
|
+
attr_reader :type
|
|
120
|
+
|
|
121
|
+
sig { params(type: String).void }
|
|
122
|
+
attr_writer :type
|
|
123
|
+
|
|
124
|
+
sig { returns(T.nilable(Time)) }
|
|
125
|
+
attr_accessor :updated_at
|
|
126
|
+
|
|
127
|
+
sig { returns(T.nilable(T::Array[Sentdm::Profiles::CampaignUseCase])) }
|
|
128
|
+
attr_reader :use_cases
|
|
129
|
+
|
|
130
|
+
sig do
|
|
131
|
+
params(
|
|
132
|
+
use_cases: T::Array[Sentdm::Profiles::CampaignUseCase::OrHash]
|
|
133
|
+
).void
|
|
134
|
+
end
|
|
135
|
+
attr_writer :use_cases
|
|
136
|
+
|
|
137
|
+
# Expected messaging volume for this campaign — customer-supplied on
|
|
138
|
+
# create/update, and the input to both the TCR usecase classification (LOW_VOLUME
|
|
139
|
+
# vs MIXED/specific) and the campaign fee tier. Surfaced so customers can read
|
|
140
|
+
# back the value they set.
|
|
141
|
+
sig { returns(T.nilable(String)) }
|
|
142
|
+
attr_accessor :volume
|
|
143
|
+
|
|
144
|
+
# A 10DLC campaign registered for a brand.
|
|
145
|
+
sig do
|
|
146
|
+
params(
|
|
147
|
+
id: String,
|
|
148
|
+
billed_date: T.nilable(Time),
|
|
149
|
+
brand_id: T.nilable(String),
|
|
150
|
+
cost: T.nilable(Float),
|
|
151
|
+
created_at: Time,
|
|
152
|
+
customer_id: String,
|
|
153
|
+
dca_elections_complete: T.nilable(T::Boolean),
|
|
154
|
+
dca_elections_completed_at: T.nilable(Time),
|
|
155
|
+
description: String,
|
|
156
|
+
has_submission_transaction: T::Boolean,
|
|
157
|
+
help_keywords: T.nilable(String),
|
|
158
|
+
help_message: T.nilable(String),
|
|
159
|
+
message_flow: T.nilable(String),
|
|
160
|
+
name: String,
|
|
161
|
+
optin_keywords: T.nilable(String),
|
|
162
|
+
optin_message: T.nilable(String),
|
|
163
|
+
optout_keywords: T.nilable(String),
|
|
164
|
+
optout_message: T.nilable(String),
|
|
165
|
+
privacy_policy_link: T.nilable(String),
|
|
166
|
+
status:
|
|
167
|
+
T.nilable(Sentdm::Profiles::BrandCampaign::Status::OrSymbol),
|
|
168
|
+
submitted_at: T.nilable(Time),
|
|
169
|
+
submitted_to_tcr: T::Boolean,
|
|
170
|
+
tcr_campaign_id: T.nilable(String),
|
|
171
|
+
tcr_sync_error: T.nilable(String),
|
|
172
|
+
terms_and_conditions_link: T.nilable(String),
|
|
173
|
+
type: String,
|
|
174
|
+
updated_at: T.nilable(Time),
|
|
175
|
+
use_cases: T::Array[Sentdm::Profiles::CampaignUseCase::OrHash],
|
|
176
|
+
volume: T.nilable(String)
|
|
177
|
+
).returns(T.attached_class)
|
|
178
|
+
end
|
|
179
|
+
def self.new(
|
|
180
|
+
id: nil,
|
|
181
|
+
billed_date: nil,
|
|
182
|
+
brand_id: nil,
|
|
183
|
+
cost: nil,
|
|
184
|
+
created_at: nil,
|
|
185
|
+
customer_id: nil,
|
|
186
|
+
# True once every carrier has completed its DCA election and the campaign is
|
|
187
|
+
# operationally ready for traffic.
|
|
188
|
+
dca_elections_complete: nil,
|
|
189
|
+
dca_elections_completed_at: nil,
|
|
190
|
+
description: nil,
|
|
191
|
+
# True when the one-time campaign submission fee has already been charged.
|
|
192
|
+
has_submission_transaction: nil,
|
|
193
|
+
help_keywords: nil,
|
|
194
|
+
help_message: nil,
|
|
195
|
+
message_flow: nil,
|
|
196
|
+
name: nil,
|
|
197
|
+
optin_keywords: nil,
|
|
198
|
+
optin_message: nil,
|
|
199
|
+
optout_keywords: nil,
|
|
200
|
+
optout_message: nil,
|
|
201
|
+
privacy_policy_link: nil,
|
|
202
|
+
status: nil,
|
|
203
|
+
submitted_at: nil,
|
|
204
|
+
submitted_to_tcr: nil,
|
|
205
|
+
# The Campaign Registry identifier, once the campaign has been accepted.
|
|
206
|
+
tcr_campaign_id: nil,
|
|
207
|
+
# Surfaced so customers can see why a submission did not reach the registry.
|
|
208
|
+
tcr_sync_error: nil,
|
|
209
|
+
terms_and_conditions_link: nil,
|
|
210
|
+
# Campaign type (for example KYC or App).
|
|
211
|
+
type: nil,
|
|
212
|
+
updated_at: nil,
|
|
213
|
+
use_cases: nil,
|
|
214
|
+
# Expected messaging volume for this campaign — customer-supplied on
|
|
215
|
+
# create/update, and the input to both the TCR usecase classification (LOW_VOLUME
|
|
216
|
+
# vs MIXED/specific) and the campaign fee tier. Surfaced so customers can read
|
|
217
|
+
# back the value they set.
|
|
218
|
+
volume: nil
|
|
219
|
+
)
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
sig do
|
|
223
|
+
override.returns(
|
|
224
|
+
{
|
|
225
|
+
id: String,
|
|
226
|
+
billed_date: T.nilable(Time),
|
|
227
|
+
brand_id: T.nilable(String),
|
|
228
|
+
cost: T.nilable(Float),
|
|
229
|
+
created_at: Time,
|
|
230
|
+
customer_id: String,
|
|
231
|
+
dca_elections_complete: T.nilable(T::Boolean),
|
|
232
|
+
dca_elections_completed_at: T.nilable(Time),
|
|
233
|
+
description: String,
|
|
234
|
+
has_submission_transaction: T::Boolean,
|
|
235
|
+
help_keywords: T.nilable(String),
|
|
236
|
+
help_message: T.nilable(String),
|
|
237
|
+
message_flow: T.nilable(String),
|
|
238
|
+
name: String,
|
|
239
|
+
optin_keywords: T.nilable(String),
|
|
240
|
+
optin_message: T.nilable(String),
|
|
241
|
+
optout_keywords: T.nilable(String),
|
|
242
|
+
optout_message: T.nilable(String),
|
|
243
|
+
privacy_policy_link: T.nilable(String),
|
|
244
|
+
status:
|
|
245
|
+
T.nilable(
|
|
246
|
+
Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol
|
|
247
|
+
),
|
|
248
|
+
submitted_at: T.nilable(Time),
|
|
249
|
+
submitted_to_tcr: T::Boolean,
|
|
250
|
+
tcr_campaign_id: T.nilable(String),
|
|
251
|
+
tcr_sync_error: T.nilable(String),
|
|
252
|
+
terms_and_conditions_link: T.nilable(String),
|
|
253
|
+
type: String,
|
|
254
|
+
updated_at: T.nilable(Time),
|
|
255
|
+
use_cases: T::Array[Sentdm::Profiles::CampaignUseCase],
|
|
256
|
+
volume: T.nilable(String)
|
|
257
|
+
}
|
|
258
|
+
)
|
|
259
|
+
end
|
|
260
|
+
def to_hash
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
module Status
|
|
264
|
+
extend Sentdm::Internal::Type::Enum
|
|
265
|
+
|
|
266
|
+
TaggedSymbol =
|
|
267
|
+
T.type_alias do
|
|
268
|
+
T.all(Symbol, Sentdm::Profiles::BrandCampaign::Status)
|
|
269
|
+
end
|
|
270
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
271
|
+
|
|
272
|
+
SENT_CREATED =
|
|
273
|
+
T.let(
|
|
274
|
+
:SENT_CREATED,
|
|
275
|
+
Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol
|
|
276
|
+
)
|
|
277
|
+
ACTIVE =
|
|
278
|
+
T.let(
|
|
279
|
+
:ACTIVE,
|
|
280
|
+
Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol
|
|
281
|
+
)
|
|
282
|
+
EXPIRED =
|
|
283
|
+
T.let(
|
|
284
|
+
:EXPIRED,
|
|
285
|
+
Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol
|
|
286
|
+
)
|
|
287
|
+
|
|
288
|
+
sig do
|
|
289
|
+
override.returns(
|
|
290
|
+
T::Array[Sentdm::Profiles::BrandCampaign::Status::TaggedSymbol]
|
|
291
|
+
)
|
|
292
|
+
end
|
|
293
|
+
def self.values
|
|
294
|
+
end
|
|
295
|
+
end
|
|
296
|
+
end
|
|
297
|
+
end
|
|
298
|
+
end
|
|
299
|
+
end
|
|
@@ -19,14 +19,10 @@ module Sentdm
|
|
|
19
19
|
attr_accessor :profile_id
|
|
20
20
|
|
|
21
21
|
# Campaign data for create or update operation
|
|
22
|
-
sig { returns(Sentdm::Profiles::
|
|
22
|
+
sig { returns(Sentdm::Profiles::CampaignData) }
|
|
23
23
|
attr_reader :campaign
|
|
24
24
|
|
|
25
|
-
sig
|
|
26
|
-
params(
|
|
27
|
-
campaign: Sentdm::Profiles::CampaignCreateParams::Campaign::OrHash
|
|
28
|
-
).void
|
|
29
|
-
end
|
|
25
|
+
sig { params(campaign: Sentdm::Profiles::CampaignData::OrHash).void }
|
|
30
26
|
attr_writer :campaign
|
|
31
27
|
|
|
32
28
|
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
@@ -52,7 +48,7 @@ module Sentdm
|
|
|
52
48
|
sig do
|
|
53
49
|
params(
|
|
54
50
|
profile_id: String,
|
|
55
|
-
campaign: Sentdm::Profiles::
|
|
51
|
+
campaign: Sentdm::Profiles::CampaignData::OrHash,
|
|
56
52
|
sandbox: T::Boolean,
|
|
57
53
|
idempotency_key: String,
|
|
58
54
|
x_profile_id: String,
|
|
@@ -76,7 +72,7 @@ module Sentdm
|
|
|
76
72
|
override.returns(
|
|
77
73
|
{
|
|
78
74
|
profile_id: String,
|
|
79
|
-
campaign: Sentdm::Profiles::
|
|
75
|
+
campaign: Sentdm::Profiles::CampaignData,
|
|
80
76
|
sandbox: T::Boolean,
|
|
81
77
|
idempotency_key: String,
|
|
82
78
|
x_profile_id: String,
|
|
@@ -86,216 +82,6 @@ module Sentdm
|
|
|
86
82
|
end
|
|
87
83
|
def to_hash
|
|
88
84
|
end
|
|
89
|
-
|
|
90
|
-
class Campaign < Sentdm::Internal::Type::BaseModel
|
|
91
|
-
OrHash =
|
|
92
|
-
T.type_alias do
|
|
93
|
-
T.any(
|
|
94
|
-
Sentdm::Profiles::CampaignCreateParams::Campaign,
|
|
95
|
-
Sentdm::Internal::AnyHash
|
|
96
|
-
)
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
# Campaign description
|
|
100
|
-
sig { returns(String) }
|
|
101
|
-
attr_accessor :description
|
|
102
|
-
|
|
103
|
-
# Campaign name
|
|
104
|
-
sig { returns(String) }
|
|
105
|
-
attr_accessor :name
|
|
106
|
-
|
|
107
|
-
# Campaign type (e.g., "KYC", "App").
|
|
108
|
-
#
|
|
109
|
-
# Still required of a caller, and consulted by nothing. It named the signup path
|
|
110
|
-
# that produced the campaign, was written to a column no query filters on, no TCR
|
|
111
|
-
# payload carries and no fee or status decision reads, and is now defaulted at the
|
|
112
|
-
# entity instead. It stays required so that a request which was valid before is
|
|
113
|
-
# still valid — dropping it would be the client-visible change, not keeping it.
|
|
114
|
-
sig { returns(String) }
|
|
115
|
-
attr_accessor :type
|
|
116
|
-
|
|
117
|
-
# List of use cases with sample messages
|
|
118
|
-
sig do
|
|
119
|
-
returns(
|
|
120
|
-
T::Array[
|
|
121
|
-
Sentdm::Profiles::CampaignCreateParams::Campaign::UseCase
|
|
122
|
-
]
|
|
123
|
-
)
|
|
124
|
-
end
|
|
125
|
-
attr_accessor :use_cases
|
|
126
|
-
|
|
127
|
-
# Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
|
|
128
|
-
sig { returns(T.nilable(String)) }
|
|
129
|
-
attr_accessor :help_keywords
|
|
130
|
-
|
|
131
|
-
# Message sent when user requests help
|
|
132
|
-
sig { returns(T.nilable(String)) }
|
|
133
|
-
attr_accessor :help_message
|
|
134
|
-
|
|
135
|
-
# Description of how messages flow in the campaign
|
|
136
|
-
sig { returns(T.nilable(String)) }
|
|
137
|
-
attr_accessor :message_flow
|
|
138
|
-
|
|
139
|
-
# Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
|
|
140
|
-
sig { returns(T.nilable(String)) }
|
|
141
|
-
attr_accessor :optin_keywords
|
|
142
|
-
|
|
143
|
-
# Message sent when user opts in
|
|
144
|
-
sig { returns(T.nilable(String)) }
|
|
145
|
-
attr_accessor :optin_message
|
|
146
|
-
|
|
147
|
-
# Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
|
|
148
|
-
sig { returns(T.nilable(String)) }
|
|
149
|
-
attr_accessor :optout_keywords
|
|
150
|
-
|
|
151
|
-
# Message sent when user opts out
|
|
152
|
-
sig { returns(T.nilable(String)) }
|
|
153
|
-
attr_accessor :optout_message
|
|
154
|
-
|
|
155
|
-
# URL to privacy policy
|
|
156
|
-
sig { returns(T.nilable(String)) }
|
|
157
|
-
attr_accessor :privacy_policy_link
|
|
158
|
-
|
|
159
|
-
# URL to terms and conditions
|
|
160
|
-
sig { returns(T.nilable(String)) }
|
|
161
|
-
attr_accessor :terms_and_conditions_link
|
|
162
|
-
|
|
163
|
-
# Expected messaging volume for this campaign. Numeric string (e.g. "1999",
|
|
164
|
-
# "5000"). Values below 2000 bill at the low-volume tier.
|
|
165
|
-
sig { returns(T.nilable(String)) }
|
|
166
|
-
attr_accessor :volume
|
|
167
|
-
|
|
168
|
-
# Campaign data for create or update operation
|
|
169
|
-
sig do
|
|
170
|
-
params(
|
|
171
|
-
description: String,
|
|
172
|
-
name: String,
|
|
173
|
-
type: String,
|
|
174
|
-
use_cases:
|
|
175
|
-
T::Array[
|
|
176
|
-
Sentdm::Profiles::CampaignCreateParams::Campaign::UseCase::OrHash
|
|
177
|
-
],
|
|
178
|
-
help_keywords: T.nilable(String),
|
|
179
|
-
help_message: T.nilable(String),
|
|
180
|
-
message_flow: T.nilable(String),
|
|
181
|
-
optin_keywords: T.nilable(String),
|
|
182
|
-
optin_message: T.nilable(String),
|
|
183
|
-
optout_keywords: T.nilable(String),
|
|
184
|
-
optout_message: T.nilable(String),
|
|
185
|
-
privacy_policy_link: T.nilable(String),
|
|
186
|
-
terms_and_conditions_link: T.nilable(String),
|
|
187
|
-
volume: T.nilable(String)
|
|
188
|
-
).returns(T.attached_class)
|
|
189
|
-
end
|
|
190
|
-
def self.new(
|
|
191
|
-
# Campaign description
|
|
192
|
-
description:,
|
|
193
|
-
# Campaign name
|
|
194
|
-
name:,
|
|
195
|
-
# Campaign type (e.g., "KYC", "App").
|
|
196
|
-
#
|
|
197
|
-
# Still required of a caller, and consulted by nothing. It named the signup path
|
|
198
|
-
# that produced the campaign, was written to a column no query filters on, no TCR
|
|
199
|
-
# payload carries and no fee or status decision reads, and is now defaulted at the
|
|
200
|
-
# entity instead. It stays required so that a request which was valid before is
|
|
201
|
-
# still valid — dropping it would be the client-visible change, not keeping it.
|
|
202
|
-
type:,
|
|
203
|
-
# List of use cases with sample messages
|
|
204
|
-
use_cases:,
|
|
205
|
-
# Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
|
|
206
|
-
help_keywords: nil,
|
|
207
|
-
# Message sent when user requests help
|
|
208
|
-
help_message: nil,
|
|
209
|
-
# Description of how messages flow in the campaign
|
|
210
|
-
message_flow: nil,
|
|
211
|
-
# Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
|
|
212
|
-
optin_keywords: nil,
|
|
213
|
-
# Message sent when user opts in
|
|
214
|
-
optin_message: nil,
|
|
215
|
-
# Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
|
|
216
|
-
optout_keywords: nil,
|
|
217
|
-
# Message sent when user opts out
|
|
218
|
-
optout_message: nil,
|
|
219
|
-
# URL to privacy policy
|
|
220
|
-
privacy_policy_link: nil,
|
|
221
|
-
# URL to terms and conditions
|
|
222
|
-
terms_and_conditions_link: nil,
|
|
223
|
-
# Expected messaging volume for this campaign. Numeric string (e.g. "1999",
|
|
224
|
-
# "5000"). Values below 2000 bill at the low-volume tier.
|
|
225
|
-
volume: nil
|
|
226
|
-
)
|
|
227
|
-
end
|
|
228
|
-
|
|
229
|
-
sig do
|
|
230
|
-
override.returns(
|
|
231
|
-
{
|
|
232
|
-
description: String,
|
|
233
|
-
name: String,
|
|
234
|
-
type: String,
|
|
235
|
-
use_cases:
|
|
236
|
-
T::Array[
|
|
237
|
-
Sentdm::Profiles::CampaignCreateParams::Campaign::UseCase
|
|
238
|
-
],
|
|
239
|
-
help_keywords: T.nilable(String),
|
|
240
|
-
help_message: T.nilable(String),
|
|
241
|
-
message_flow: T.nilable(String),
|
|
242
|
-
optin_keywords: T.nilable(String),
|
|
243
|
-
optin_message: T.nilable(String),
|
|
244
|
-
optout_keywords: T.nilable(String),
|
|
245
|
-
optout_message: T.nilable(String),
|
|
246
|
-
privacy_policy_link: T.nilable(String),
|
|
247
|
-
terms_and_conditions_link: T.nilable(String),
|
|
248
|
-
volume: T.nilable(String)
|
|
249
|
-
}
|
|
250
|
-
)
|
|
251
|
-
end
|
|
252
|
-
def to_hash
|
|
253
|
-
end
|
|
254
|
-
|
|
255
|
-
class UseCase < Sentdm::Internal::Type::BaseModel
|
|
256
|
-
OrHash =
|
|
257
|
-
T.type_alias do
|
|
258
|
-
T.any(
|
|
259
|
-
Sentdm::Profiles::CampaignCreateParams::Campaign::UseCase,
|
|
260
|
-
Sentdm::Internal::AnyHash
|
|
261
|
-
)
|
|
262
|
-
end
|
|
263
|
-
|
|
264
|
-
sig { returns(Sentdm::Profiles::MessagingUseCaseUs::OrSymbol) }
|
|
265
|
-
attr_accessor :messaging_use_case_us
|
|
266
|
-
|
|
267
|
-
# Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
268
|
-
sig { returns(T::Array[String]) }
|
|
269
|
-
attr_accessor :sample_messages
|
|
270
|
-
|
|
271
|
-
# Campaign use case with sample messages
|
|
272
|
-
sig do
|
|
273
|
-
params(
|
|
274
|
-
messaging_use_case_us:
|
|
275
|
-
Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
|
|
276
|
-
sample_messages: T::Array[String]
|
|
277
|
-
).returns(T.attached_class)
|
|
278
|
-
end
|
|
279
|
-
def self.new(
|
|
280
|
-
messaging_use_case_us:,
|
|
281
|
-
# Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
282
|
-
sample_messages:
|
|
283
|
-
)
|
|
284
|
-
end
|
|
285
|
-
|
|
286
|
-
sig do
|
|
287
|
-
override.returns(
|
|
288
|
-
{
|
|
289
|
-
messaging_use_case_us:
|
|
290
|
-
Sentdm::Profiles::MessagingUseCaseUs::OrSymbol,
|
|
291
|
-
sample_messages: T::Array[String]
|
|
292
|
-
}
|
|
293
|
-
)
|
|
294
|
-
end
|
|
295
|
-
def to_hash
|
|
296
|
-
end
|
|
297
|
-
end
|
|
298
|
-
end
|
|
299
85
|
end
|
|
300
86
|
end
|
|
301
87
|
end
|