sentdm 0.28.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -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/inbound_message_event_payload.rb +17 -17
- data/lib/sentdm/models/me_retrieve_response.rb +43 -243
- data/lib/sentdm/models/message_event_payload.rb +11 -11
- 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_event_payload.rb +18 -18
- 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/me.rb +11 -0
- 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/inbound_message_event_payload.rbi +16 -22
- data/rbi/sentdm/models/me_retrieve_response.rbi +60 -367
- data/rbi/sentdm/models/message_event_payload.rbi +12 -15
- 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_event_payload.rbi +21 -27
- 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/me.rbi +11 -0
- 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/inbound_message_event_payload.rbs +10 -14
- data/sig/sentdm/models/me_retrieve_response.rbs +28 -176
- data/sig/sentdm/models/message_event_payload.rbs +5 -7
- 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_event_payload.rbs +13 -17
- 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
|
@@ -21,8 +21,8 @@ module Sentdm
|
|
|
21
21
|
# @!attribute campaign
|
|
22
22
|
# Campaign data for create or update operation
|
|
23
23
|
#
|
|
24
|
-
# @return [Sentdm::Models::Profiles::
|
|
25
|
-
required :campaign, -> { Sentdm::Profiles::
|
|
24
|
+
# @return [Sentdm::Models::Profiles::CampaignData]
|
|
25
|
+
required :campaign, -> { Sentdm::Profiles::CampaignData }
|
|
26
26
|
|
|
27
27
|
# @!attribute sandbox
|
|
28
28
|
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
@@ -49,7 +49,7 @@ module Sentdm
|
|
|
49
49
|
#
|
|
50
50
|
# @param campaign_id [String]
|
|
51
51
|
#
|
|
52
|
-
# @param campaign [Sentdm::Models::Profiles::
|
|
52
|
+
# @param campaign [Sentdm::Models::Profiles::CampaignData] Campaign data for create or update operation
|
|
53
53
|
#
|
|
54
54
|
# @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
|
|
55
55
|
#
|
|
@@ -58,159 +58,6 @@ module Sentdm
|
|
|
58
58
|
# @param x_profile_id [String]
|
|
59
59
|
#
|
|
60
60
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
|
|
61
|
-
|
|
62
|
-
class Campaign < Sentdm::Internal::Type::BaseModel
|
|
63
|
-
# @!attribute description
|
|
64
|
-
# Campaign description
|
|
65
|
-
#
|
|
66
|
-
# @return [String]
|
|
67
|
-
required :description, String
|
|
68
|
-
|
|
69
|
-
# @!attribute name
|
|
70
|
-
# Campaign name
|
|
71
|
-
#
|
|
72
|
-
# @return [String]
|
|
73
|
-
required :name, String
|
|
74
|
-
|
|
75
|
-
# @!attribute type
|
|
76
|
-
# Campaign type (e.g., "KYC", "App").
|
|
77
|
-
#
|
|
78
|
-
# Still required of a caller, and consulted by nothing. It named the signup path
|
|
79
|
-
# that produced the campaign, was written to a column no query filters on, no TCR
|
|
80
|
-
# payload carries and no fee or status decision reads, and is now defaulted at the
|
|
81
|
-
# entity instead. It stays required so that a request which was valid before is
|
|
82
|
-
# still valid — dropping it would be the client-visible change, not keeping it.
|
|
83
|
-
#
|
|
84
|
-
# @return [String]
|
|
85
|
-
required :type, String
|
|
86
|
-
|
|
87
|
-
# @!attribute use_cases
|
|
88
|
-
# List of use cases with sample messages
|
|
89
|
-
#
|
|
90
|
-
# @return [Array<Sentdm::Models::Profiles::CampaignUpdateParams::Campaign::UseCase>]
|
|
91
|
-
required :use_cases,
|
|
92
|
-
-> {
|
|
93
|
-
Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::CampaignUpdateParams::Campaign::UseCase]
|
|
94
|
-
},
|
|
95
|
-
api_name: :useCases
|
|
96
|
-
|
|
97
|
-
# @!attribute help_keywords
|
|
98
|
-
# Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
|
|
99
|
-
#
|
|
100
|
-
# @return [String, nil]
|
|
101
|
-
optional :help_keywords, String, api_name: :helpKeywords, nil?: true
|
|
102
|
-
|
|
103
|
-
# @!attribute help_message
|
|
104
|
-
# Message sent when user requests help
|
|
105
|
-
#
|
|
106
|
-
# @return [String, nil]
|
|
107
|
-
optional :help_message, String, api_name: :helpMessage, nil?: true
|
|
108
|
-
|
|
109
|
-
# @!attribute message_flow
|
|
110
|
-
# Description of how messages flow in the campaign
|
|
111
|
-
#
|
|
112
|
-
# @return [String, nil]
|
|
113
|
-
optional :message_flow, String, api_name: :messageFlow, nil?: true
|
|
114
|
-
|
|
115
|
-
# @!attribute optin_keywords
|
|
116
|
-
# Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
|
|
117
|
-
#
|
|
118
|
-
# @return [String, nil]
|
|
119
|
-
optional :optin_keywords, String, api_name: :optinKeywords, nil?: true
|
|
120
|
-
|
|
121
|
-
# @!attribute optin_message
|
|
122
|
-
# Message sent when user opts in
|
|
123
|
-
#
|
|
124
|
-
# @return [String, nil]
|
|
125
|
-
optional :optin_message, String, api_name: :optinMessage, nil?: true
|
|
126
|
-
|
|
127
|
-
# @!attribute optout_keywords
|
|
128
|
-
# Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
|
|
129
|
-
#
|
|
130
|
-
# @return [String, nil]
|
|
131
|
-
optional :optout_keywords, String, api_name: :optoutKeywords, nil?: true
|
|
132
|
-
|
|
133
|
-
# @!attribute optout_message
|
|
134
|
-
# Message sent when user opts out
|
|
135
|
-
#
|
|
136
|
-
# @return [String, nil]
|
|
137
|
-
optional :optout_message, String, api_name: :optoutMessage, nil?: true
|
|
138
|
-
|
|
139
|
-
# @!attribute privacy_policy_link
|
|
140
|
-
# URL to privacy policy
|
|
141
|
-
#
|
|
142
|
-
# @return [String, nil]
|
|
143
|
-
optional :privacy_policy_link, String, api_name: :privacyPolicyLink, nil?: true
|
|
144
|
-
|
|
145
|
-
# @!attribute terms_and_conditions_link
|
|
146
|
-
# URL to terms and conditions
|
|
147
|
-
#
|
|
148
|
-
# @return [String, nil]
|
|
149
|
-
optional :terms_and_conditions_link, String, api_name: :termsAndConditionsLink, nil?: true
|
|
150
|
-
|
|
151
|
-
# @!attribute volume
|
|
152
|
-
# Expected messaging volume for this campaign. Numeric string (e.g. "1999",
|
|
153
|
-
# "5000"). Values below 2000 bill at the low-volume tier.
|
|
154
|
-
#
|
|
155
|
-
# @return [String, nil]
|
|
156
|
-
optional :volume, String, nil?: true
|
|
157
|
-
|
|
158
|
-
# @!method initialize(description:, name:, type:, use_cases:, help_keywords: nil, help_message: nil, message_flow: nil, optin_keywords: nil, optin_message: nil, optout_keywords: nil, optout_message: nil, privacy_policy_link: nil, terms_and_conditions_link: nil, volume: nil)
|
|
159
|
-
# Some parameter documentations has been truncated, see
|
|
160
|
-
# {Sentdm::Models::Profiles::CampaignUpdateParams::Campaign} for more details.
|
|
161
|
-
#
|
|
162
|
-
# Campaign data for create or update operation
|
|
163
|
-
#
|
|
164
|
-
# @param description [String] Campaign description
|
|
165
|
-
#
|
|
166
|
-
# @param name [String] Campaign name
|
|
167
|
-
#
|
|
168
|
-
# @param type [String] Campaign type (e.g., "KYC", "App").
|
|
169
|
-
#
|
|
170
|
-
# @param use_cases [Array<Sentdm::Models::Profiles::CampaignUpdateParams::Campaign::UseCase>] List of use cases with sample messages
|
|
171
|
-
#
|
|
172
|
-
# @param help_keywords [String, nil] Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
|
|
173
|
-
#
|
|
174
|
-
# @param help_message [String, nil] Message sent when user requests help
|
|
175
|
-
#
|
|
176
|
-
# @param message_flow [String, nil] Description of how messages flow in the campaign
|
|
177
|
-
#
|
|
178
|
-
# @param optin_keywords [String, nil] Comma-separated keywords that trigger opt-in (e.g., "YES, START, SUBSCRIBE")
|
|
179
|
-
#
|
|
180
|
-
# @param optin_message [String, nil] Message sent when user opts in
|
|
181
|
-
#
|
|
182
|
-
# @param optout_keywords [String, nil] Comma-separated keywords that trigger opt-out (e.g., "STOP, UNSUBSCRIBE, END")
|
|
183
|
-
#
|
|
184
|
-
# @param optout_message [String, nil] Message sent when user opts out
|
|
185
|
-
#
|
|
186
|
-
# @param privacy_policy_link [String, nil] URL to privacy policy
|
|
187
|
-
#
|
|
188
|
-
# @param terms_and_conditions_link [String, nil] URL to terms and conditions
|
|
189
|
-
#
|
|
190
|
-
# @param volume [String, nil] Expected messaging volume for this campaign. Numeric string (e.g. "1999", "5000"
|
|
191
|
-
|
|
192
|
-
class UseCase < Sentdm::Internal::Type::BaseModel
|
|
193
|
-
# @!attribute messaging_use_case_us
|
|
194
|
-
#
|
|
195
|
-
# @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
|
|
196
|
-
required :messaging_use_case_us,
|
|
197
|
-
enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
|
|
198
|
-
api_name: :messagingUseCaseUs
|
|
199
|
-
|
|
200
|
-
# @!attribute sample_messages
|
|
201
|
-
# Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
202
|
-
#
|
|
203
|
-
# @return [Array<String>]
|
|
204
|
-
required :sample_messages, Sentdm::Internal::Type::ArrayOf[String], api_name: :sampleMessages
|
|
205
|
-
|
|
206
|
-
# @!method initialize(messaging_use_case_us:, sample_messages:)
|
|
207
|
-
# Campaign use case with sample messages
|
|
208
|
-
#
|
|
209
|
-
# @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
|
|
210
|
-
#
|
|
211
|
-
# @param sample_messages [Array<String>] Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
212
|
-
end
|
|
213
|
-
end
|
|
214
61
|
end
|
|
215
62
|
end
|
|
216
63
|
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Profiles
|
|
6
|
+
class CampaignUseCase < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute id
|
|
8
|
+
#
|
|
9
|
+
# @return [String, nil]
|
|
10
|
+
optional :id, String
|
|
11
|
+
|
|
12
|
+
# @!attribute campaign_id
|
|
13
|
+
#
|
|
14
|
+
# @return [String, nil]
|
|
15
|
+
optional :campaign_id, String, api_name: :campaignId
|
|
16
|
+
|
|
17
|
+
# @!attribute created_at
|
|
18
|
+
#
|
|
19
|
+
# @return [Time, nil]
|
|
20
|
+
optional :created_at, Time, api_name: :createdAt
|
|
21
|
+
|
|
22
|
+
# @!attribute customer_id
|
|
23
|
+
#
|
|
24
|
+
# @return [String, nil]
|
|
25
|
+
optional :customer_id, String, api_name: :customerId
|
|
26
|
+
|
|
27
|
+
# @!attribute messaging_use_case_us
|
|
28
|
+
#
|
|
29
|
+
# @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs, nil]
|
|
30
|
+
optional :messaging_use_case_us,
|
|
31
|
+
enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
|
|
32
|
+
api_name: :messagingUseCaseUs
|
|
33
|
+
|
|
34
|
+
# @!attribute sample_messages
|
|
35
|
+
# Sample messages submitted to the registry for this use case.
|
|
36
|
+
#
|
|
37
|
+
# @return [Array<String>, nil]
|
|
38
|
+
optional :sample_messages, Sentdm::Internal::Type::ArrayOf[String], api_name: :sampleMessages
|
|
39
|
+
|
|
40
|
+
# @!attribute updated_at
|
|
41
|
+
#
|
|
42
|
+
# @return [Time, nil]
|
|
43
|
+
optional :updated_at, Time, api_name: :updatedAt, nil?: true
|
|
44
|
+
|
|
45
|
+
# @!method initialize(id: nil, campaign_id: nil, created_at: nil, customer_id: nil, messaging_use_case_us: nil, sample_messages: nil, updated_at: nil)
|
|
46
|
+
# Customer-facing use-case representation for the public v3 campaign contract.
|
|
47
|
+
# Exists for the same reason as BrandCampaignV3Response: nesting the
|
|
48
|
+
# TcrCampaignUseCase database entity in a public response means any column added
|
|
49
|
+
# to that table silently becomes part of the customer-facing contract. This DTO is
|
|
50
|
+
# an explicit allowlist, so a new column stays invisible until it is added here on
|
|
51
|
+
# purpose. This mirrors exactly the fields the entity already serialized, so it
|
|
52
|
+
# removes nothing from the current response shape. It only closes the future-leak
|
|
53
|
+
# path.
|
|
54
|
+
#
|
|
55
|
+
# @param id [String]
|
|
56
|
+
#
|
|
57
|
+
# @param campaign_id [String]
|
|
58
|
+
#
|
|
59
|
+
# @param created_at [Time]
|
|
60
|
+
#
|
|
61
|
+
# @param customer_id [String]
|
|
62
|
+
#
|
|
63
|
+
# @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
|
|
64
|
+
#
|
|
65
|
+
# @param sample_messages [Array<String>] Sample messages submitted to the registry for this use case.
|
|
66
|
+
#
|
|
67
|
+
# @param updated_at [Time, nil]
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Profiles
|
|
6
|
+
class CampaignUseCaseData < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute messaging_use_case_us
|
|
8
|
+
#
|
|
9
|
+
# @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
|
|
10
|
+
required :messaging_use_case_us,
|
|
11
|
+
enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
|
|
12
|
+
api_name: :messagingUseCaseUs
|
|
13
|
+
|
|
14
|
+
# @!attribute sample_messages
|
|
15
|
+
# Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
16
|
+
#
|
|
17
|
+
# @return [Array<String>]
|
|
18
|
+
required :sample_messages, Sentdm::Internal::Type::ArrayOf[String], api_name: :sampleMessages
|
|
19
|
+
|
|
20
|
+
# @!method initialize(messaging_use_case_us:, sample_messages:)
|
|
21
|
+
# Campaign use case with sample messages
|
|
22
|
+
#
|
|
23
|
+
# @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
|
|
24
|
+
#
|
|
25
|
+
# @param sample_messages [Array<String>] Sample messages for this use case (1-5 messages, max 1024 characters each)
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class Template < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute customer_id
|
|
7
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
8
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
9
|
+
#
|
|
10
|
+
# @return [String]
|
|
11
|
+
required :customer_id, String
|
|
12
|
+
|
|
13
|
+
# @!attribute id
|
|
14
|
+
# Unique template identifier
|
|
15
|
+
#
|
|
16
|
+
# @return [String, nil]
|
|
17
|
+
optional :id, String
|
|
18
|
+
|
|
19
|
+
# @!attribute category
|
|
20
|
+
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
21
|
+
#
|
|
22
|
+
# @return [String, nil]
|
|
23
|
+
optional :category, String
|
|
24
|
+
|
|
25
|
+
# @!attribute channels
|
|
26
|
+
# Supported channels: sms, whatsapp
|
|
27
|
+
#
|
|
28
|
+
# @return [Array<String>, nil]
|
|
29
|
+
optional :channels, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
30
|
+
|
|
31
|
+
# @!attribute created_at
|
|
32
|
+
# When the template was created
|
|
33
|
+
#
|
|
34
|
+
# @return [Time, nil]
|
|
35
|
+
optional :created_at, Time
|
|
36
|
+
|
|
37
|
+
# @!attribute is_published
|
|
38
|
+
# Whether the template is published and active
|
|
39
|
+
#
|
|
40
|
+
# @return [Boolean, nil]
|
|
41
|
+
optional :is_published, Sentdm::Internal::Type::Boolean
|
|
42
|
+
|
|
43
|
+
# @!attribute language
|
|
44
|
+
# Template language code (e.g., en_US)
|
|
45
|
+
#
|
|
46
|
+
# @return [String, nil]
|
|
47
|
+
optional :language, String
|
|
48
|
+
|
|
49
|
+
# @!attribute name
|
|
50
|
+
# Template display name
|
|
51
|
+
#
|
|
52
|
+
# @return [String, nil]
|
|
53
|
+
optional :name, String
|
|
54
|
+
|
|
55
|
+
# @!attribute status
|
|
56
|
+
# Template status: APPROVED, PENDING, REJECTED
|
|
57
|
+
#
|
|
58
|
+
# @return [String, nil]
|
|
59
|
+
optional :status, String
|
|
60
|
+
|
|
61
|
+
# @!attribute updated_at
|
|
62
|
+
# When the template was last updated
|
|
63
|
+
#
|
|
64
|
+
# @return [Time, nil]
|
|
65
|
+
optional :updated_at, Time, nil?: true
|
|
66
|
+
|
|
67
|
+
# @!attribute variables
|
|
68
|
+
# Template variables for personalization
|
|
69
|
+
#
|
|
70
|
+
# @return [Array<String>, nil]
|
|
71
|
+
optional :variables, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
72
|
+
|
|
73
|
+
# @!method initialize(customer_id:, id: nil, category: nil, channels: nil, created_at: nil, is_published: nil, language: nil, name: nil, status: nil, updated_at: nil, variables: nil)
|
|
74
|
+
# Some parameter documentations has been truncated, see {Sentdm::Models::Template}
|
|
75
|
+
# for more details.
|
|
76
|
+
#
|
|
77
|
+
# Template response for v3 API
|
|
78
|
+
#
|
|
79
|
+
# @param customer_id [String] Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
80
|
+
#
|
|
81
|
+
# @param id [String] Unique template identifier
|
|
82
|
+
#
|
|
83
|
+
# @param category [String] Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
84
|
+
#
|
|
85
|
+
# @param channels [Array<String>, nil] Supported channels: sms, whatsapp
|
|
86
|
+
#
|
|
87
|
+
# @param created_at [Time] When the template was created
|
|
88
|
+
#
|
|
89
|
+
# @param is_published [Boolean] Whether the template is published and active
|
|
90
|
+
#
|
|
91
|
+
# @param language [String] Template language code (e.g., en_US)
|
|
92
|
+
#
|
|
93
|
+
# @param name [String] Template display name
|
|
94
|
+
#
|
|
95
|
+
# @param status [String] Template status: APPROVED, PENDING, REJECTED
|
|
96
|
+
#
|
|
97
|
+
# @param updated_at [Time, nil] When the template was last updated
|
|
98
|
+
#
|
|
99
|
+
# @param variables [Array<String>, nil] Template variables for personalization
|
|
100
|
+
end
|
|
101
|
+
end
|
|
102
|
+
end
|
|
@@ -3,6 +3,19 @@
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Models
|
|
5
5
|
class TemplateEventPayload < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute status
|
|
7
|
+
# The review status the template just reached, for example APPROVED or REJECTED.
|
|
8
|
+
#
|
|
9
|
+
# @return [String]
|
|
10
|
+
required :status, String
|
|
11
|
+
|
|
12
|
+
# @!attribute whatsapp_template_id
|
|
13
|
+
# The template's identifier with Meta, assigned when the template is submitted for
|
|
14
|
+
# review.
|
|
15
|
+
#
|
|
16
|
+
# @return [String]
|
|
17
|
+
required :whatsapp_template_id, String
|
|
18
|
+
|
|
6
19
|
# @!attribute account_id
|
|
7
20
|
# The account the template belongs to.
|
|
8
21
|
#
|
|
@@ -34,12 +47,6 @@ module Sentdm
|
|
|
34
47
|
# @return [String, nil]
|
|
35
48
|
optional :reason, String, nil?: true
|
|
36
49
|
|
|
37
|
-
# @!attribute status
|
|
38
|
-
# The review status the template just reached, for example APPROVED or REJECTED.
|
|
39
|
-
#
|
|
40
|
-
# @return [String, nil]
|
|
41
|
-
optional :status, String
|
|
42
|
-
|
|
43
50
|
# @!attribute template_id
|
|
44
51
|
# The template in Sent.
|
|
45
52
|
#
|
|
@@ -52,20 +59,17 @@ module Sentdm
|
|
|
52
59
|
# @return [String, nil]
|
|
53
60
|
optional :template_name, String
|
|
54
61
|
|
|
55
|
-
# @!
|
|
56
|
-
# The template's identifier with Meta, assigned when the template is submitted for
|
|
57
|
-
# review.
|
|
58
|
-
#
|
|
59
|
-
# @return [String, nil]
|
|
60
|
-
optional :whatsapp_template_id, String
|
|
61
|
-
|
|
62
|
-
# @!method initialize(account_id: nil, category: nil, channel: nil, language: nil, reason: nil, status: nil, template_id: nil, template_name: nil, whatsapp_template_id: nil)
|
|
62
|
+
# @!method initialize(status:, whatsapp_template_id:, account_id: nil, category: nil, channel: nil, language: nil, reason: nil, template_id: nil, template_name: nil)
|
|
63
63
|
# Some parameter documentations has been truncated, see
|
|
64
64
|
# {Sentdm::Models::TemplateEventPayload} for more details.
|
|
65
65
|
#
|
|
66
66
|
# Body of a template status event. Delivered when a template's review outcome
|
|
67
67
|
# changes, so you can react without polling.
|
|
68
68
|
#
|
|
69
|
+
# @param status [String] The review status the template just reached, for example APPROVED or
|
|
70
|
+
#
|
|
71
|
+
# @param whatsapp_template_id [String] The template's identifier with Meta, assigned when the template is submitted for
|
|
72
|
+
#
|
|
69
73
|
# @param account_id [String] The account the template belongs to.
|
|
70
74
|
#
|
|
71
75
|
# @param category [String] The template's category, for example UTILITY, MARKETING, or
|
|
@@ -76,13 +80,9 @@ module Sentdm
|
|
|
76
80
|
#
|
|
77
81
|
# @param reason [String, nil] Why the template reached Status, when a reason was given. Populated on a
|
|
78
82
|
#
|
|
79
|
-
# @param status [String] The review status the template just reached, for example APPROVED or
|
|
80
|
-
#
|
|
81
83
|
# @param template_id [String] The template in Sent.
|
|
82
84
|
#
|
|
83
85
|
# @param template_name [String] The template's display name.
|
|
84
|
-
#
|
|
85
|
-
# @param whatsapp_template_id [String] The template's identifier with Meta, assigned when the template is submitted for
|
|
86
86
|
end
|
|
87
87
|
end
|
|
88
88
|
end
|