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
|
@@ -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
|
|
@@ -13,14 +13,14 @@ module Sentdm
|
|
|
13
13
|
# @!attribute error
|
|
14
14
|
# Error information
|
|
15
15
|
#
|
|
16
|
-
# @return [Sentdm::Models::
|
|
17
|
-
optional :error, -> { Sentdm::
|
|
16
|
+
# @return [Sentdm::Models::ErrorDetail, nil]
|
|
17
|
+
optional :error, -> { Sentdm::ErrorDetail }, nil?: true
|
|
18
18
|
|
|
19
19
|
# @!attribute meta
|
|
20
20
|
# Request and response metadata
|
|
21
21
|
#
|
|
22
|
-
# @return [Sentdm::Models::
|
|
23
|
-
optional :meta, -> { Sentdm::
|
|
22
|
+
# @return [Sentdm::Models::APIMeta, nil]
|
|
23
|
+
optional :meta, -> { Sentdm::APIMeta }
|
|
24
24
|
|
|
25
25
|
# @!attribute success
|
|
26
26
|
# Indicates whether the request was successful
|
|
@@ -33,9 +33,9 @@ module Sentdm
|
|
|
33
33
|
#
|
|
34
34
|
# @param data [Sentdm::Models::TemplateListResponse::Data, nil] A paginated list of templates.
|
|
35
35
|
#
|
|
36
|
-
# @param error [Sentdm::Models::
|
|
36
|
+
# @param error [Sentdm::Models::ErrorDetail, nil] Error information
|
|
37
37
|
#
|
|
38
|
-
# @param meta [Sentdm::Models::
|
|
38
|
+
# @param meta [Sentdm::Models::APIMeta] Request and response metadata
|
|
39
39
|
#
|
|
40
40
|
# @param success [Boolean] Indicates whether the request was successful
|
|
41
41
|
|
|
@@ -44,267 +44,21 @@ module Sentdm
|
|
|
44
44
|
# @!attribute pagination
|
|
45
45
|
# Pagination metadata for list responses
|
|
46
46
|
#
|
|
47
|
-
# @return [Sentdm::Models::
|
|
48
|
-
optional :pagination, -> { Sentdm::
|
|
47
|
+
# @return [Sentdm::Models::PaginationMeta, nil]
|
|
48
|
+
optional :pagination, -> { Sentdm::PaginationMeta }
|
|
49
49
|
|
|
50
50
|
# @!attribute templates
|
|
51
51
|
# The templates on this page.
|
|
52
52
|
#
|
|
53
|
-
# @return [Array<Sentdm::Models::
|
|
54
|
-
optional :templates,
|
|
55
|
-
-> { Sentdm::Internal::Type::ArrayOf[Sentdm::Models::TemplateListResponse::Data::Template] }
|
|
53
|
+
# @return [Array<Sentdm::Models::Template>, nil]
|
|
54
|
+
optional :templates, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Template] }
|
|
56
55
|
|
|
57
56
|
# @!method initialize(pagination: nil, templates: nil)
|
|
58
57
|
# A paginated list of templates.
|
|
59
58
|
#
|
|
60
|
-
# @param pagination [Sentdm::Models::
|
|
59
|
+
# @param pagination [Sentdm::Models::PaginationMeta] Pagination metadata for list responses
|
|
61
60
|
#
|
|
62
|
-
# @param templates [Array<Sentdm::Models::
|
|
63
|
-
|
|
64
|
-
# @see Sentdm::Models::TemplateListResponse::Data#pagination
|
|
65
|
-
class Pagination < Sentdm::Internal::Type::BaseModel
|
|
66
|
-
# @!attribute cursors
|
|
67
|
-
# @deprecated
|
|
68
|
-
#
|
|
69
|
-
# Cursor-based pagination. Never populated — see Cursors.
|
|
70
|
-
#
|
|
71
|
-
# @return [Sentdm::Models::TemplateListResponse::Data::Pagination::Cursors, nil]
|
|
72
|
-
optional :cursors, -> { Sentdm::Models::TemplateListResponse::Data::Pagination::Cursors }, nil?: true
|
|
73
|
-
|
|
74
|
-
# @!attribute has_more
|
|
75
|
-
# Whether there are more pages after this one
|
|
76
|
-
#
|
|
77
|
-
# @return [Boolean, nil]
|
|
78
|
-
optional :has_more, Sentdm::Internal::Type::Boolean
|
|
79
|
-
|
|
80
|
-
# @!attribute page
|
|
81
|
-
# Current page number (1-indexed)
|
|
82
|
-
#
|
|
83
|
-
# @return [Integer, nil]
|
|
84
|
-
optional :page, Integer
|
|
85
|
-
|
|
86
|
-
# @!attribute page_size
|
|
87
|
-
# Number of items per page
|
|
88
|
-
#
|
|
89
|
-
# @return [Integer, nil]
|
|
90
|
-
optional :page_size, Integer
|
|
91
|
-
|
|
92
|
-
# @!attribute total_count
|
|
93
|
-
# Total number of items across all pages
|
|
94
|
-
#
|
|
95
|
-
# @return [Integer, nil]
|
|
96
|
-
optional :total_count, Integer
|
|
97
|
-
|
|
98
|
-
# @!attribute total_pages
|
|
99
|
-
# Total number of pages
|
|
100
|
-
#
|
|
101
|
-
# @return [Integer, nil]
|
|
102
|
-
optional :total_pages, Integer
|
|
103
|
-
|
|
104
|
-
# @!method initialize(cursors: nil, has_more: nil, page: nil, page_size: nil, total_count: nil, total_pages: nil)
|
|
105
|
-
# Pagination metadata for list responses
|
|
106
|
-
#
|
|
107
|
-
# @param cursors [Sentdm::Models::TemplateListResponse::Data::Pagination::Cursors, nil] Cursor-based pagination. Never populated — see Cursors.
|
|
108
|
-
#
|
|
109
|
-
# @param has_more [Boolean] Whether there are more pages after this one
|
|
110
|
-
#
|
|
111
|
-
# @param page [Integer] Current page number (1-indexed)
|
|
112
|
-
#
|
|
113
|
-
# @param page_size [Integer] Number of items per page
|
|
114
|
-
#
|
|
115
|
-
# @param total_count [Integer] Total number of items across all pages
|
|
116
|
-
#
|
|
117
|
-
# @param total_pages [Integer] Total number of pages
|
|
118
|
-
|
|
119
|
-
# @deprecated
|
|
120
|
-
#
|
|
121
|
-
# @see Sentdm::Models::TemplateListResponse::Data::Pagination#cursors
|
|
122
|
-
class Cursors < Sentdm::Internal::Type::BaseModel
|
|
123
|
-
# @!attribute after
|
|
124
|
-
# Cursor to fetch the next page.
|
|
125
|
-
#
|
|
126
|
-
# @return [String, nil]
|
|
127
|
-
optional :after, String, nil?: true
|
|
128
|
-
|
|
129
|
-
# @!attribute before
|
|
130
|
-
# Cursor to fetch the previous page.
|
|
131
|
-
#
|
|
132
|
-
# @return [String, nil]
|
|
133
|
-
optional :before, String, nil?: true
|
|
134
|
-
|
|
135
|
-
# @!method initialize(after: nil, before: nil)
|
|
136
|
-
# Cursor-based pagination. Never populated — see Cursors.
|
|
137
|
-
#
|
|
138
|
-
# @param after [String, nil] Cursor to fetch the next page.
|
|
139
|
-
#
|
|
140
|
-
# @param before [String, nil] Cursor to fetch the previous page.
|
|
141
|
-
end
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
class Template < Sentdm::Internal::Type::BaseModel
|
|
145
|
-
# @!attribute customer_id
|
|
146
|
-
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
147
|
-
# Says whose resource this is, which the resource's own id does not.
|
|
148
|
-
#
|
|
149
|
-
# @return [String]
|
|
150
|
-
required :customer_id, String
|
|
151
|
-
|
|
152
|
-
# @!attribute id
|
|
153
|
-
# Unique template identifier
|
|
154
|
-
#
|
|
155
|
-
# @return [String, nil]
|
|
156
|
-
optional :id, String
|
|
157
|
-
|
|
158
|
-
# @!attribute category
|
|
159
|
-
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
160
|
-
#
|
|
161
|
-
# @return [String, nil]
|
|
162
|
-
optional :category, String
|
|
163
|
-
|
|
164
|
-
# @!attribute channels
|
|
165
|
-
# Supported channels: sms, whatsapp
|
|
166
|
-
#
|
|
167
|
-
# @return [Array<String>, nil]
|
|
168
|
-
optional :channels, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
169
|
-
|
|
170
|
-
# @!attribute created_at
|
|
171
|
-
# When the template was created
|
|
172
|
-
#
|
|
173
|
-
# @return [Time, nil]
|
|
174
|
-
optional :created_at, Time
|
|
175
|
-
|
|
176
|
-
# @!attribute is_published
|
|
177
|
-
# Whether the template is published and active
|
|
178
|
-
#
|
|
179
|
-
# @return [Boolean, nil]
|
|
180
|
-
optional :is_published, Sentdm::Internal::Type::Boolean
|
|
181
|
-
|
|
182
|
-
# @!attribute language
|
|
183
|
-
# Template language code (e.g., en_US)
|
|
184
|
-
#
|
|
185
|
-
# @return [String, nil]
|
|
186
|
-
optional :language, String
|
|
187
|
-
|
|
188
|
-
# @!attribute name
|
|
189
|
-
# Template display name
|
|
190
|
-
#
|
|
191
|
-
# @return [String, nil]
|
|
192
|
-
optional :name, String
|
|
193
|
-
|
|
194
|
-
# @!attribute status
|
|
195
|
-
# Template status: APPROVED, PENDING, REJECTED
|
|
196
|
-
#
|
|
197
|
-
# @return [String, nil]
|
|
198
|
-
optional :status, String
|
|
199
|
-
|
|
200
|
-
# @!attribute updated_at
|
|
201
|
-
# When the template was last updated
|
|
202
|
-
#
|
|
203
|
-
# @return [Time, nil]
|
|
204
|
-
optional :updated_at, Time, nil?: true
|
|
205
|
-
|
|
206
|
-
# @!attribute variables
|
|
207
|
-
# Template variables for personalization
|
|
208
|
-
#
|
|
209
|
-
# @return [Array<String>, nil]
|
|
210
|
-
optional :variables, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
211
|
-
|
|
212
|
-
# @!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)
|
|
213
|
-
# Some parameter documentations has been truncated, see
|
|
214
|
-
# {Sentdm::Models::TemplateListResponse::Data::Template} for more details.
|
|
215
|
-
#
|
|
216
|
-
# Template response for v3 API
|
|
217
|
-
#
|
|
218
|
-
# @param customer_id [String] Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
219
|
-
#
|
|
220
|
-
# @param id [String] Unique template identifier
|
|
221
|
-
#
|
|
222
|
-
# @param category [String] Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
223
|
-
#
|
|
224
|
-
# @param channels [Array<String>, nil] Supported channels: sms, whatsapp
|
|
225
|
-
#
|
|
226
|
-
# @param created_at [Time] When the template was created
|
|
227
|
-
#
|
|
228
|
-
# @param is_published [Boolean] Whether the template is published and active
|
|
229
|
-
#
|
|
230
|
-
# @param language [String] Template language code (e.g., en_US)
|
|
231
|
-
#
|
|
232
|
-
# @param name [String] Template display name
|
|
233
|
-
#
|
|
234
|
-
# @param status [String] Template status: APPROVED, PENDING, REJECTED
|
|
235
|
-
#
|
|
236
|
-
# @param updated_at [Time, nil] When the template was last updated
|
|
237
|
-
#
|
|
238
|
-
# @param variables [Array<String>, nil] Template variables for personalization
|
|
239
|
-
end
|
|
240
|
-
end
|
|
241
|
-
|
|
242
|
-
# @see Sentdm::Models::TemplateListResponse#error
|
|
243
|
-
class Error < Sentdm::Internal::Type::BaseModel
|
|
244
|
-
# @!attribute code
|
|
245
|
-
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
246
|
-
#
|
|
247
|
-
# @return [String, nil]
|
|
248
|
-
optional :code, String
|
|
249
|
-
|
|
250
|
-
# @!attribute details
|
|
251
|
-
# Additional validation error details (field-level errors)
|
|
252
|
-
#
|
|
253
|
-
# @return [Hash{Symbol=>Array<String>}, nil]
|
|
254
|
-
optional :details, Sentdm::Internal::Type::HashOf[Sentdm::Internal::Type::ArrayOf[String]], nil?: true
|
|
255
|
-
|
|
256
|
-
# @!attribute doc_url
|
|
257
|
-
# URL to documentation about this error
|
|
258
|
-
#
|
|
259
|
-
# @return [String, nil]
|
|
260
|
-
optional :doc_url, String, nil?: true
|
|
261
|
-
|
|
262
|
-
# @!attribute message
|
|
263
|
-
# Human-readable error message
|
|
264
|
-
#
|
|
265
|
-
# @return [String, nil]
|
|
266
|
-
optional :message, String
|
|
267
|
-
|
|
268
|
-
# @!method initialize(code: nil, details: nil, doc_url: nil, message: nil)
|
|
269
|
-
# Error information
|
|
270
|
-
#
|
|
271
|
-
# @param code [String] Machine-readable error code (e.g., "RESOURCE_001")
|
|
272
|
-
#
|
|
273
|
-
# @param details [Hash{Symbol=>Array<String>}, nil] Additional validation error details (field-level errors)
|
|
274
|
-
#
|
|
275
|
-
# @param doc_url [String, nil] URL to documentation about this error
|
|
276
|
-
#
|
|
277
|
-
# @param message [String] Human-readable error message
|
|
278
|
-
end
|
|
279
|
-
|
|
280
|
-
# @see Sentdm::Models::TemplateListResponse#meta
|
|
281
|
-
class Meta < Sentdm::Internal::Type::BaseModel
|
|
282
|
-
# @!attribute request_id
|
|
283
|
-
# Unique identifier for this request (for tracing and support)
|
|
284
|
-
#
|
|
285
|
-
# @return [String, nil]
|
|
286
|
-
optional :request_id, String
|
|
287
|
-
|
|
288
|
-
# @!attribute timestamp
|
|
289
|
-
# Server timestamp when the response was generated
|
|
290
|
-
#
|
|
291
|
-
# @return [Time, nil]
|
|
292
|
-
optional :timestamp, Time
|
|
293
|
-
|
|
294
|
-
# @!attribute version
|
|
295
|
-
# API version used for this request
|
|
296
|
-
#
|
|
297
|
-
# @return [String, nil]
|
|
298
|
-
optional :version, String
|
|
299
|
-
|
|
300
|
-
# @!method initialize(request_id: nil, timestamp: nil, version: nil)
|
|
301
|
-
# Request and response metadata
|
|
302
|
-
#
|
|
303
|
-
# @param request_id [String] Unique identifier for this request (for tracing and support)
|
|
304
|
-
#
|
|
305
|
-
# @param timestamp [Time] Server timestamp when the response was generated
|
|
306
|
-
#
|
|
307
|
-
# @param version [String] API version used for this request
|
|
61
|
+
# @param templates [Array<Sentdm::Models::Template>] The templates on this page.
|
|
308
62
|
end
|
|
309
63
|
end
|
|
310
64
|
end
|