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
|
@@ -36,13 +36,12 @@ module Sentdm
|
|
|
36
36
|
|
|
37
37
|
# Billing contact information for a profile. Required when billing_model is
|
|
38
38
|
# "profile" or "profile_and_organization".
|
|
39
|
-
sig { returns(T.nilable(Sentdm::
|
|
39
|
+
sig { returns(T.nilable(Sentdm::BillingContactInfo)) }
|
|
40
40
|
attr_reader :billing_contact
|
|
41
41
|
|
|
42
42
|
sig do
|
|
43
43
|
params(
|
|
44
|
-
billing_contact:
|
|
45
|
-
T.nilable(Sentdm::ProfileUpdateParams::BillingContact::OrHash)
|
|
44
|
+
billing_contact: T.nilable(Sentdm::BillingContactInfo::OrHash)
|
|
46
45
|
).void
|
|
47
46
|
end
|
|
48
47
|
attr_writer :billing_contact
|
|
@@ -58,14 +57,10 @@ module Sentdm
|
|
|
58
57
|
attr_accessor :billing_model
|
|
59
58
|
|
|
60
59
|
# Brand and KYC data grouped into contact, business, and compliance sections
|
|
61
|
-
sig { returns(T.nilable(Sentdm::
|
|
60
|
+
sig { returns(T.nilable(Sentdm::BrandsBrandData)) }
|
|
62
61
|
attr_reader :brand
|
|
63
62
|
|
|
64
|
-
sig
|
|
65
|
-
params(
|
|
66
|
-
brand: T.nilable(Sentdm::ProfileUpdateParams::Brand::OrHash)
|
|
67
|
-
).void
|
|
68
|
-
end
|
|
63
|
+
sig { params(brand: T.nilable(Sentdm::BrandsBrandData::OrHash)).void }
|
|
69
64
|
attr_writer :brand
|
|
70
65
|
|
|
71
66
|
# Profile description (optional)
|
|
@@ -97,14 +92,11 @@ module Sentdm
|
|
|
97
92
|
# Payment card details for this profile (optional). Accepted when billing_model is
|
|
98
93
|
# "profile" or "profile_and_organization". Not persisted on our servers —
|
|
99
94
|
# forwarded to the payment processor.
|
|
100
|
-
sig { returns(T.nilable(Sentdm::
|
|
95
|
+
sig { returns(T.nilable(Sentdm::PaymentDetails)) }
|
|
101
96
|
attr_reader :payment_details
|
|
102
97
|
|
|
103
98
|
sig do
|
|
104
|
-
params(
|
|
105
|
-
payment_details:
|
|
106
|
-
T.nilable(Sentdm::ProfileUpdateParams::PaymentDetails::OrHash)
|
|
107
|
-
).void
|
|
99
|
+
params(payment_details: T.nilable(Sentdm::PaymentDetails::OrHash)).void
|
|
108
100
|
end
|
|
109
101
|
attr_writer :payment_details
|
|
110
102
|
|
|
@@ -173,10 +165,9 @@ module Sentdm
|
|
|
173
165
|
allow_contact_sharing: T.nilable(T::Boolean),
|
|
174
166
|
allow_number_change_during_onboarding: T.nilable(T::Boolean),
|
|
175
167
|
allow_template_sharing: T.nilable(T::Boolean),
|
|
176
|
-
billing_contact:
|
|
177
|
-
T.nilable(Sentdm::ProfileUpdateParams::BillingContact::OrHash),
|
|
168
|
+
billing_contact: T.nilable(Sentdm::BillingContactInfo::OrHash),
|
|
178
169
|
billing_model: T.nilable(String),
|
|
179
|
-
brand: T.nilable(Sentdm::
|
|
170
|
+
brand: T.nilable(Sentdm::BrandsBrandData::OrHash),
|
|
180
171
|
description: T.nilable(String),
|
|
181
172
|
icon: T.nilable(String),
|
|
182
173
|
inherit_contacts: T.nilable(T::Boolean),
|
|
@@ -184,8 +175,7 @@ module Sentdm
|
|
|
184
175
|
inherit_tcr_campaign: T.nilable(T::Boolean),
|
|
185
176
|
inherit_templates: T.nilable(T::Boolean),
|
|
186
177
|
name: T.nilable(String),
|
|
187
|
-
payment_details:
|
|
188
|
-
T.nilable(Sentdm::ProfileUpdateParams::PaymentDetails::OrHash),
|
|
178
|
+
payment_details: T.nilable(Sentdm::PaymentDetails::OrHash),
|
|
189
179
|
sandbox: T::Boolean,
|
|
190
180
|
sending_phone_number: T.nilable(String),
|
|
191
181
|
sending_phone_number_profile_id: T.nilable(String),
|
|
@@ -287,10 +277,9 @@ module Sentdm
|
|
|
287
277
|
allow_contact_sharing: T.nilable(T::Boolean),
|
|
288
278
|
allow_number_change_during_onboarding: T.nilable(T::Boolean),
|
|
289
279
|
allow_template_sharing: T.nilable(T::Boolean),
|
|
290
|
-
billing_contact:
|
|
291
|
-
T.nilable(Sentdm::ProfileUpdateParams::BillingContact),
|
|
280
|
+
billing_contact: T.nilable(Sentdm::BillingContactInfo),
|
|
292
281
|
billing_model: T.nilable(String),
|
|
293
|
-
brand: T.nilable(Sentdm::
|
|
282
|
+
brand: T.nilable(Sentdm::BrandsBrandData),
|
|
294
283
|
description: T.nilable(String),
|
|
295
284
|
icon: T.nilable(String),
|
|
296
285
|
inherit_contacts: T.nilable(T::Boolean),
|
|
@@ -298,8 +287,7 @@ module Sentdm
|
|
|
298
287
|
inherit_tcr_campaign: T.nilable(T::Boolean),
|
|
299
288
|
inherit_templates: T.nilable(T::Boolean),
|
|
300
289
|
name: T.nilable(String),
|
|
301
|
-
payment_details:
|
|
302
|
-
T.nilable(Sentdm::ProfileUpdateParams::PaymentDetails),
|
|
290
|
+
payment_details: T.nilable(Sentdm::PaymentDetails),
|
|
303
291
|
sandbox: T::Boolean,
|
|
304
292
|
sending_phone_number: T.nilable(String),
|
|
305
293
|
sending_phone_number_profile_id: T.nilable(String),
|
|
@@ -314,528 +302,6 @@ module Sentdm
|
|
|
314
302
|
end
|
|
315
303
|
def to_hash
|
|
316
304
|
end
|
|
317
|
-
|
|
318
|
-
class BillingContact < Sentdm::Internal::Type::BaseModel
|
|
319
|
-
OrHash =
|
|
320
|
-
T.type_alias do
|
|
321
|
-
T.any(
|
|
322
|
-
Sentdm::ProfileUpdateParams::BillingContact,
|
|
323
|
-
Sentdm::Internal::AnyHash
|
|
324
|
-
)
|
|
325
|
-
end
|
|
326
|
-
|
|
327
|
-
# Email address where invoices will be sent (required)
|
|
328
|
-
sig { returns(String) }
|
|
329
|
-
attr_accessor :email
|
|
330
|
-
|
|
331
|
-
# Full name of the billing contact or company (required)
|
|
332
|
-
sig { returns(String) }
|
|
333
|
-
attr_accessor :name
|
|
334
|
-
|
|
335
|
-
# Billing address (optional). Free-form text including street, city, state, postal
|
|
336
|
-
# code, and country.
|
|
337
|
-
sig { returns(T.nilable(String)) }
|
|
338
|
-
attr_accessor :address
|
|
339
|
-
|
|
340
|
-
# Phone number for the billing contact (optional)
|
|
341
|
-
sig { returns(T.nilable(String)) }
|
|
342
|
-
attr_accessor :phone
|
|
343
|
-
|
|
344
|
-
# Billing contact information for a profile. Required when billing_model is
|
|
345
|
-
# "profile" or "profile_and_organization".
|
|
346
|
-
sig do
|
|
347
|
-
params(
|
|
348
|
-
email: String,
|
|
349
|
-
name: String,
|
|
350
|
-
address: T.nilable(String),
|
|
351
|
-
phone: T.nilable(String)
|
|
352
|
-
).returns(T.attached_class)
|
|
353
|
-
end
|
|
354
|
-
def self.new(
|
|
355
|
-
# Email address where invoices will be sent (required)
|
|
356
|
-
email:,
|
|
357
|
-
# Full name of the billing contact or company (required)
|
|
358
|
-
name:,
|
|
359
|
-
# Billing address (optional). Free-form text including street, city, state, postal
|
|
360
|
-
# code, and country.
|
|
361
|
-
address: nil,
|
|
362
|
-
# Phone number for the billing contact (optional)
|
|
363
|
-
phone: nil
|
|
364
|
-
)
|
|
365
|
-
end
|
|
366
|
-
|
|
367
|
-
sig do
|
|
368
|
-
override.returns(
|
|
369
|
-
{
|
|
370
|
-
email: String,
|
|
371
|
-
name: String,
|
|
372
|
-
address: T.nilable(String),
|
|
373
|
-
phone: T.nilable(String)
|
|
374
|
-
}
|
|
375
|
-
)
|
|
376
|
-
end
|
|
377
|
-
def to_hash
|
|
378
|
-
end
|
|
379
|
-
end
|
|
380
|
-
|
|
381
|
-
class Brand < Sentdm::Internal::Type::BaseModel
|
|
382
|
-
OrHash =
|
|
383
|
-
T.type_alias do
|
|
384
|
-
T.any(Sentdm::ProfileUpdateParams::Brand, Sentdm::Internal::AnyHash)
|
|
385
|
-
end
|
|
386
|
-
|
|
387
|
-
# Compliance and TCR information for brand registration
|
|
388
|
-
sig { returns(Sentdm::ProfileUpdateParams::Brand::Compliance) }
|
|
389
|
-
attr_reader :compliance
|
|
390
|
-
|
|
391
|
-
sig do
|
|
392
|
-
params(
|
|
393
|
-
compliance: Sentdm::ProfileUpdateParams::Brand::Compliance::OrHash
|
|
394
|
-
).void
|
|
395
|
-
end
|
|
396
|
-
attr_writer :compliance
|
|
397
|
-
|
|
398
|
-
# Contact information for brand KYC
|
|
399
|
-
sig { returns(Sentdm::ProfileUpdateParams::Brand::Contact) }
|
|
400
|
-
attr_reader :contact
|
|
401
|
-
|
|
402
|
-
sig do
|
|
403
|
-
params(
|
|
404
|
-
contact: Sentdm::ProfileUpdateParams::Brand::Contact::OrHash
|
|
405
|
-
).void
|
|
406
|
-
end
|
|
407
|
-
attr_writer :contact
|
|
408
|
-
|
|
409
|
-
# Business details and address for brand KYC
|
|
410
|
-
sig { returns(T.nilable(Sentdm::ProfileUpdateParams::Brand::Business)) }
|
|
411
|
-
attr_reader :business
|
|
412
|
-
|
|
413
|
-
sig do
|
|
414
|
-
params(
|
|
415
|
-
business:
|
|
416
|
-
T.nilable(Sentdm::ProfileUpdateParams::Brand::Business::OrHash)
|
|
417
|
-
).void
|
|
418
|
-
end
|
|
419
|
-
attr_writer :business
|
|
420
|
-
|
|
421
|
-
# Brand and KYC data grouped into contact, business, and compliance sections
|
|
422
|
-
sig do
|
|
423
|
-
params(
|
|
424
|
-
compliance: Sentdm::ProfileUpdateParams::Brand::Compliance::OrHash,
|
|
425
|
-
contact: Sentdm::ProfileUpdateParams::Brand::Contact::OrHash,
|
|
426
|
-
business:
|
|
427
|
-
T.nilable(Sentdm::ProfileUpdateParams::Brand::Business::OrHash)
|
|
428
|
-
).returns(T.attached_class)
|
|
429
|
-
end
|
|
430
|
-
def self.new(
|
|
431
|
-
# Compliance and TCR information for brand registration
|
|
432
|
-
compliance:,
|
|
433
|
-
# Contact information for brand KYC
|
|
434
|
-
contact:,
|
|
435
|
-
# Business details and address for brand KYC
|
|
436
|
-
business: nil
|
|
437
|
-
)
|
|
438
|
-
end
|
|
439
|
-
|
|
440
|
-
sig do
|
|
441
|
-
override.returns(
|
|
442
|
-
{
|
|
443
|
-
compliance: Sentdm::ProfileUpdateParams::Brand::Compliance,
|
|
444
|
-
contact: Sentdm::ProfileUpdateParams::Brand::Contact,
|
|
445
|
-
business: T.nilable(Sentdm::ProfileUpdateParams::Brand::Business)
|
|
446
|
-
}
|
|
447
|
-
)
|
|
448
|
-
end
|
|
449
|
-
def to_hash
|
|
450
|
-
end
|
|
451
|
-
|
|
452
|
-
class Compliance < Sentdm::Internal::Type::BaseModel
|
|
453
|
-
OrHash =
|
|
454
|
-
T.type_alias do
|
|
455
|
-
T.any(
|
|
456
|
-
Sentdm::ProfileUpdateParams::Brand::Compliance,
|
|
457
|
-
Sentdm::Internal::AnyHash
|
|
458
|
-
)
|
|
459
|
-
end
|
|
460
|
-
|
|
461
|
-
sig { returns(Sentdm::TcrBrandRelationship::OrSymbol) }
|
|
462
|
-
attr_accessor :brand_relationship
|
|
463
|
-
|
|
464
|
-
sig { returns(Sentdm::TcrVertical::OrSymbol) }
|
|
465
|
-
attr_accessor :vertical
|
|
466
|
-
|
|
467
|
-
# List of destination countries for messaging
|
|
468
|
-
sig { returns(T.nilable(T::Array[Sentdm::DestinationCountry])) }
|
|
469
|
-
attr_accessor :destination_countries
|
|
470
|
-
|
|
471
|
-
# Whether this is a TCR (Campaign Registry) application
|
|
472
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
473
|
-
attr_accessor :is_tcr_application
|
|
474
|
-
|
|
475
|
-
# Additional notes about the business or use case
|
|
476
|
-
sig { returns(T.nilable(String)) }
|
|
477
|
-
attr_accessor :notes
|
|
478
|
-
|
|
479
|
-
# Phone number prefix for messaging (e.g., "+1")
|
|
480
|
-
sig { returns(T.nilable(String)) }
|
|
481
|
-
attr_accessor :phone_number_prefix
|
|
482
|
-
|
|
483
|
-
# Compliance and TCR information for brand registration
|
|
484
|
-
sig do
|
|
485
|
-
params(
|
|
486
|
-
brand_relationship: Sentdm::TcrBrandRelationship::OrSymbol,
|
|
487
|
-
vertical: Sentdm::TcrVertical::OrSymbol,
|
|
488
|
-
destination_countries:
|
|
489
|
-
T.nilable(T::Array[Sentdm::DestinationCountry::OrHash]),
|
|
490
|
-
is_tcr_application: T.nilable(T::Boolean),
|
|
491
|
-
notes: T.nilable(String),
|
|
492
|
-
phone_number_prefix: T.nilable(String)
|
|
493
|
-
).returns(T.attached_class)
|
|
494
|
-
end
|
|
495
|
-
def self.new(
|
|
496
|
-
brand_relationship:,
|
|
497
|
-
vertical:,
|
|
498
|
-
# List of destination countries for messaging
|
|
499
|
-
destination_countries: nil,
|
|
500
|
-
# Whether this is a TCR (Campaign Registry) application
|
|
501
|
-
is_tcr_application: nil,
|
|
502
|
-
# Additional notes about the business or use case
|
|
503
|
-
notes: nil,
|
|
504
|
-
# Phone number prefix for messaging (e.g., "+1")
|
|
505
|
-
phone_number_prefix: nil
|
|
506
|
-
)
|
|
507
|
-
end
|
|
508
|
-
|
|
509
|
-
sig do
|
|
510
|
-
override.returns(
|
|
511
|
-
{
|
|
512
|
-
brand_relationship: Sentdm::TcrBrandRelationship::OrSymbol,
|
|
513
|
-
vertical: Sentdm::TcrVertical::OrSymbol,
|
|
514
|
-
destination_countries:
|
|
515
|
-
T.nilable(T::Array[Sentdm::DestinationCountry]),
|
|
516
|
-
is_tcr_application: T.nilable(T::Boolean),
|
|
517
|
-
notes: T.nilable(String),
|
|
518
|
-
phone_number_prefix: T.nilable(String)
|
|
519
|
-
}
|
|
520
|
-
)
|
|
521
|
-
end
|
|
522
|
-
def to_hash
|
|
523
|
-
end
|
|
524
|
-
end
|
|
525
|
-
|
|
526
|
-
class Contact < Sentdm::Internal::Type::BaseModel
|
|
527
|
-
OrHash =
|
|
528
|
-
T.type_alias do
|
|
529
|
-
T.any(
|
|
530
|
-
Sentdm::ProfileUpdateParams::Brand::Contact,
|
|
531
|
-
Sentdm::Internal::AnyHash
|
|
532
|
-
)
|
|
533
|
-
end
|
|
534
|
-
|
|
535
|
-
# Primary contact name (required)
|
|
536
|
-
sig { returns(String) }
|
|
537
|
-
attr_accessor :name
|
|
538
|
-
|
|
539
|
-
# Business/brand name
|
|
540
|
-
sig { returns(T.nilable(String)) }
|
|
541
|
-
attr_accessor :business_name
|
|
542
|
-
|
|
543
|
-
# Contact email address
|
|
544
|
-
sig { returns(T.nilable(String)) }
|
|
545
|
-
attr_accessor :email
|
|
546
|
-
|
|
547
|
-
# Contact phone number in E.164 format
|
|
548
|
-
sig { returns(T.nilable(String)) }
|
|
549
|
-
attr_accessor :phone
|
|
550
|
-
|
|
551
|
-
# Contact phone country code (e.g., "1" for US)
|
|
552
|
-
sig { returns(T.nilable(String)) }
|
|
553
|
-
attr_accessor :phone_country_code
|
|
554
|
-
|
|
555
|
-
# Contact's role in the business
|
|
556
|
-
sig { returns(T.nilable(String)) }
|
|
557
|
-
attr_accessor :role
|
|
558
|
-
|
|
559
|
-
# Contact information for brand KYC
|
|
560
|
-
sig do
|
|
561
|
-
params(
|
|
562
|
-
name: String,
|
|
563
|
-
business_name: T.nilable(String),
|
|
564
|
-
email: T.nilable(String),
|
|
565
|
-
phone: T.nilable(String),
|
|
566
|
-
phone_country_code: T.nilable(String),
|
|
567
|
-
role: T.nilable(String)
|
|
568
|
-
).returns(T.attached_class)
|
|
569
|
-
end
|
|
570
|
-
def self.new(
|
|
571
|
-
# Primary contact name (required)
|
|
572
|
-
name:,
|
|
573
|
-
# Business/brand name
|
|
574
|
-
business_name: nil,
|
|
575
|
-
# Contact email address
|
|
576
|
-
email: nil,
|
|
577
|
-
# Contact phone number in E.164 format
|
|
578
|
-
phone: nil,
|
|
579
|
-
# Contact phone country code (e.g., "1" for US)
|
|
580
|
-
phone_country_code: nil,
|
|
581
|
-
# Contact's role in the business
|
|
582
|
-
role: nil
|
|
583
|
-
)
|
|
584
|
-
end
|
|
585
|
-
|
|
586
|
-
sig do
|
|
587
|
-
override.returns(
|
|
588
|
-
{
|
|
589
|
-
name: String,
|
|
590
|
-
business_name: T.nilable(String),
|
|
591
|
-
email: T.nilable(String),
|
|
592
|
-
phone: T.nilable(String),
|
|
593
|
-
phone_country_code: T.nilable(String),
|
|
594
|
-
role: T.nilable(String)
|
|
595
|
-
}
|
|
596
|
-
)
|
|
597
|
-
end
|
|
598
|
-
def to_hash
|
|
599
|
-
end
|
|
600
|
-
end
|
|
601
|
-
|
|
602
|
-
class Business < Sentdm::Internal::Type::BaseModel
|
|
603
|
-
OrHash =
|
|
604
|
-
T.type_alias do
|
|
605
|
-
T.any(
|
|
606
|
-
Sentdm::ProfileUpdateParams::Brand::Business,
|
|
607
|
-
Sentdm::Internal::AnyHash
|
|
608
|
-
)
|
|
609
|
-
end
|
|
610
|
-
|
|
611
|
-
# City
|
|
612
|
-
sig { returns(T.nilable(String)) }
|
|
613
|
-
attr_accessor :city
|
|
614
|
-
|
|
615
|
-
# Country code (e.g., US, CA)
|
|
616
|
-
sig { returns(T.nilable(String)) }
|
|
617
|
-
attr_accessor :country
|
|
618
|
-
|
|
619
|
-
# Country where the business is registered
|
|
620
|
-
sig { returns(T.nilable(String)) }
|
|
621
|
-
attr_accessor :country_of_registration
|
|
622
|
-
|
|
623
|
-
sig do
|
|
624
|
-
returns(
|
|
625
|
-
T.nilable(
|
|
626
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::OrSymbol
|
|
627
|
-
)
|
|
628
|
-
)
|
|
629
|
-
end
|
|
630
|
-
attr_accessor :entity_type
|
|
631
|
-
|
|
632
|
-
# Legal business name
|
|
633
|
-
sig { returns(T.nilable(String)) }
|
|
634
|
-
attr_accessor :legal_name
|
|
635
|
-
|
|
636
|
-
# Postal/ZIP code
|
|
637
|
-
sig { returns(T.nilable(String)) }
|
|
638
|
-
attr_accessor :postal_code
|
|
639
|
-
|
|
640
|
-
# State/province code
|
|
641
|
-
sig { returns(T.nilable(String)) }
|
|
642
|
-
attr_accessor :state
|
|
643
|
-
|
|
644
|
-
# Street address
|
|
645
|
-
sig { returns(T.nilable(String)) }
|
|
646
|
-
attr_accessor :street
|
|
647
|
-
|
|
648
|
-
# Tax ID/EIN number
|
|
649
|
-
sig { returns(T.nilable(String)) }
|
|
650
|
-
attr_accessor :tax_id
|
|
651
|
-
|
|
652
|
-
# Type of tax ID (e.g., us_ein, ca_bn)
|
|
653
|
-
sig { returns(T.nilable(String)) }
|
|
654
|
-
attr_accessor :tax_id_type
|
|
655
|
-
|
|
656
|
-
# Business website URL
|
|
657
|
-
sig { returns(T.nilable(String)) }
|
|
658
|
-
attr_accessor :url
|
|
659
|
-
|
|
660
|
-
# Business details and address for brand KYC
|
|
661
|
-
sig do
|
|
662
|
-
params(
|
|
663
|
-
city: T.nilable(String),
|
|
664
|
-
country: T.nilable(String),
|
|
665
|
-
country_of_registration: T.nilable(String),
|
|
666
|
-
entity_type:
|
|
667
|
-
T.nilable(
|
|
668
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::OrSymbol
|
|
669
|
-
),
|
|
670
|
-
legal_name: T.nilable(String),
|
|
671
|
-
postal_code: T.nilable(String),
|
|
672
|
-
state: T.nilable(String),
|
|
673
|
-
street: T.nilable(String),
|
|
674
|
-
tax_id: T.nilable(String),
|
|
675
|
-
tax_id_type: T.nilable(String),
|
|
676
|
-
url: T.nilable(String)
|
|
677
|
-
).returns(T.attached_class)
|
|
678
|
-
end
|
|
679
|
-
def self.new(
|
|
680
|
-
# City
|
|
681
|
-
city: nil,
|
|
682
|
-
# Country code (e.g., US, CA)
|
|
683
|
-
country: nil,
|
|
684
|
-
# Country where the business is registered
|
|
685
|
-
country_of_registration: nil,
|
|
686
|
-
entity_type: nil,
|
|
687
|
-
# Legal business name
|
|
688
|
-
legal_name: nil,
|
|
689
|
-
# Postal/ZIP code
|
|
690
|
-
postal_code: nil,
|
|
691
|
-
# State/province code
|
|
692
|
-
state: nil,
|
|
693
|
-
# Street address
|
|
694
|
-
street: nil,
|
|
695
|
-
# Tax ID/EIN number
|
|
696
|
-
tax_id: nil,
|
|
697
|
-
# Type of tax ID (e.g., us_ein, ca_bn)
|
|
698
|
-
tax_id_type: nil,
|
|
699
|
-
# Business website URL
|
|
700
|
-
url: nil
|
|
701
|
-
)
|
|
702
|
-
end
|
|
703
|
-
|
|
704
|
-
sig do
|
|
705
|
-
override.returns(
|
|
706
|
-
{
|
|
707
|
-
city: T.nilable(String),
|
|
708
|
-
country: T.nilable(String),
|
|
709
|
-
country_of_registration: T.nilable(String),
|
|
710
|
-
entity_type:
|
|
711
|
-
T.nilable(
|
|
712
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::OrSymbol
|
|
713
|
-
),
|
|
714
|
-
legal_name: T.nilable(String),
|
|
715
|
-
postal_code: T.nilable(String),
|
|
716
|
-
state: T.nilable(String),
|
|
717
|
-
street: T.nilable(String),
|
|
718
|
-
tax_id: T.nilable(String),
|
|
719
|
-
tax_id_type: T.nilable(String),
|
|
720
|
-
url: T.nilable(String)
|
|
721
|
-
}
|
|
722
|
-
)
|
|
723
|
-
end
|
|
724
|
-
def to_hash
|
|
725
|
-
end
|
|
726
|
-
|
|
727
|
-
module EntityType
|
|
728
|
-
extend Sentdm::Internal::Type::Enum
|
|
729
|
-
|
|
730
|
-
TaggedSymbol =
|
|
731
|
-
T.type_alias do
|
|
732
|
-
T.all(
|
|
733
|
-
Symbol,
|
|
734
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType
|
|
735
|
-
)
|
|
736
|
-
end
|
|
737
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
738
|
-
|
|
739
|
-
PRIVATE_PROFIT =
|
|
740
|
-
T.let(
|
|
741
|
-
:PRIVATE_PROFIT,
|
|
742
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
743
|
-
)
|
|
744
|
-
PUBLIC_PROFIT =
|
|
745
|
-
T.let(
|
|
746
|
-
:PUBLIC_PROFIT,
|
|
747
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
748
|
-
)
|
|
749
|
-
NON_PROFIT =
|
|
750
|
-
T.let(
|
|
751
|
-
:NON_PROFIT,
|
|
752
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
753
|
-
)
|
|
754
|
-
SOLE_PROPRIETOR =
|
|
755
|
-
T.let(
|
|
756
|
-
:SOLE_PROPRIETOR,
|
|
757
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
758
|
-
)
|
|
759
|
-
GOVERNMENT =
|
|
760
|
-
T.let(
|
|
761
|
-
:GOVERNMENT,
|
|
762
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
763
|
-
)
|
|
764
|
-
|
|
765
|
-
sig do
|
|
766
|
-
override.returns(
|
|
767
|
-
T::Array[
|
|
768
|
-
Sentdm::ProfileUpdateParams::Brand::Business::EntityType::TaggedSymbol
|
|
769
|
-
]
|
|
770
|
-
)
|
|
771
|
-
end
|
|
772
|
-
def self.values
|
|
773
|
-
end
|
|
774
|
-
end
|
|
775
|
-
end
|
|
776
|
-
end
|
|
777
|
-
|
|
778
|
-
class PaymentDetails < Sentdm::Internal::Type::BaseModel
|
|
779
|
-
OrHash =
|
|
780
|
-
T.type_alias do
|
|
781
|
-
T.any(
|
|
782
|
-
Sentdm::ProfileUpdateParams::PaymentDetails,
|
|
783
|
-
Sentdm::Internal::AnyHash
|
|
784
|
-
)
|
|
785
|
-
end
|
|
786
|
-
|
|
787
|
-
# Card number (digits only, 13–19 characters)
|
|
788
|
-
sig { returns(String) }
|
|
789
|
-
attr_accessor :card_number
|
|
790
|
-
|
|
791
|
-
# Card security code (3–4 digits)
|
|
792
|
-
sig { returns(String) }
|
|
793
|
-
attr_accessor :cvc
|
|
794
|
-
|
|
795
|
-
# Card expiry date in MM/YY format (e.g. "09/27")
|
|
796
|
-
sig { returns(String) }
|
|
797
|
-
attr_accessor :expiry
|
|
798
|
-
|
|
799
|
-
# Billing ZIP / postal code associated with the card
|
|
800
|
-
sig { returns(String) }
|
|
801
|
-
attr_accessor :zip_code
|
|
802
|
-
|
|
803
|
-
# Payment card details for this profile (optional). Accepted when billing_model is
|
|
804
|
-
# "profile" or "profile_and_organization". Not persisted on our servers —
|
|
805
|
-
# forwarded to the payment processor.
|
|
806
|
-
sig do
|
|
807
|
-
params(
|
|
808
|
-
card_number: String,
|
|
809
|
-
cvc: String,
|
|
810
|
-
expiry: String,
|
|
811
|
-
zip_code: String
|
|
812
|
-
).returns(T.attached_class)
|
|
813
|
-
end
|
|
814
|
-
def self.new(
|
|
815
|
-
# Card number (digits only, 13–19 characters)
|
|
816
|
-
card_number:,
|
|
817
|
-
# Card security code (3–4 digits)
|
|
818
|
-
cvc:,
|
|
819
|
-
# Card expiry date in MM/YY format (e.g. "09/27")
|
|
820
|
-
expiry:,
|
|
821
|
-
# Billing ZIP / postal code associated with the card
|
|
822
|
-
zip_code:
|
|
823
|
-
)
|
|
824
|
-
end
|
|
825
|
-
|
|
826
|
-
sig do
|
|
827
|
-
override.returns(
|
|
828
|
-
{
|
|
829
|
-
card_number: String,
|
|
830
|
-
cvc: String,
|
|
831
|
-
expiry: String,
|
|
832
|
-
zip_code: String
|
|
833
|
-
}
|
|
834
|
-
)
|
|
835
|
-
end
|
|
836
|
-
def to_hash
|
|
837
|
-
end
|
|
838
|
-
end
|
|
839
305
|
end
|
|
840
306
|
end
|
|
841
307
|
end
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Profiles
|
|
6
|
+
class APIResponseOfBrandCampaign < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Sentdm::Profiles::APIResponseOfBrandCampaign,
|
|
11
|
+
Sentdm::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# A 10DLC campaign registered for a brand.
|
|
16
|
+
sig { returns(T.nilable(Sentdm::Profiles::BrandCampaign)) }
|
|
17
|
+
attr_reader :data
|
|
18
|
+
|
|
19
|
+
sig do
|
|
20
|
+
params(data: T.nilable(Sentdm::Profiles::BrandCampaign::OrHash)).void
|
|
21
|
+
end
|
|
22
|
+
attr_writer :data
|
|
23
|
+
|
|
24
|
+
# Error information
|
|
25
|
+
sig { returns(T.nilable(Sentdm::ErrorDetail)) }
|
|
26
|
+
attr_reader :error
|
|
27
|
+
|
|
28
|
+
sig { params(error: T.nilable(Sentdm::ErrorDetail::OrHash)).void }
|
|
29
|
+
attr_writer :error
|
|
30
|
+
|
|
31
|
+
# Request and response metadata
|
|
32
|
+
sig { returns(T.nilable(Sentdm::APIMeta)) }
|
|
33
|
+
attr_reader :meta
|
|
34
|
+
|
|
35
|
+
sig { params(meta: Sentdm::APIMeta::OrHash).void }
|
|
36
|
+
attr_writer :meta
|
|
37
|
+
|
|
38
|
+
# Indicates whether the request was successful
|
|
39
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
40
|
+
attr_reader :success
|
|
41
|
+
|
|
42
|
+
sig { params(success: T::Boolean).void }
|
|
43
|
+
attr_writer :success
|
|
44
|
+
|
|
45
|
+
# Standard API response envelope for all v3 endpoints
|
|
46
|
+
sig do
|
|
47
|
+
params(
|
|
48
|
+
data: T.nilable(Sentdm::Profiles::BrandCampaign::OrHash),
|
|
49
|
+
error: T.nilable(Sentdm::ErrorDetail::OrHash),
|
|
50
|
+
meta: Sentdm::APIMeta::OrHash,
|
|
51
|
+
success: T::Boolean
|
|
52
|
+
).returns(T.attached_class)
|
|
53
|
+
end
|
|
54
|
+
def self.new(
|
|
55
|
+
# A 10DLC campaign registered for a brand.
|
|
56
|
+
data: nil,
|
|
57
|
+
# Error information
|
|
58
|
+
error: nil,
|
|
59
|
+
# Request and response metadata
|
|
60
|
+
meta: nil,
|
|
61
|
+
# Indicates whether the request was successful
|
|
62
|
+
success: nil
|
|
63
|
+
)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
sig do
|
|
67
|
+
override.returns(
|
|
68
|
+
{
|
|
69
|
+
data: T.nilable(Sentdm::Profiles::BrandCampaign),
|
|
70
|
+
error: T.nilable(Sentdm::ErrorDetail),
|
|
71
|
+
meta: Sentdm::APIMeta,
|
|
72
|
+
success: T::Boolean
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
end
|
|
76
|
+
def to_hash
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
end
|