sentdm 0.4.0 → 0.5.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.
Files changed (149) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -27
  4. data/lib/sentdm/client.rb +5 -8
  5. data/lib/sentdm/internal/type/base_model.rb +5 -5
  6. data/lib/sentdm/models/{api_response_contact.rb → api_response_of_contact.rb} +4 -4
  7. data/lib/sentdm/models/base_dto.rb +30 -0
  8. data/lib/sentdm/models/billing_contact_info.rb +47 -0
  9. data/lib/sentdm/models/{brand_data.rb → brands_brand_data.rb} +17 -17
  10. data/lib/sentdm/models/contact_delete_params.rb +1 -1
  11. data/lib/sentdm/models/contact_list_response.rb +3 -3
  12. data/lib/sentdm/models/{contact.rb → contact_response.rb} +1 -1
  13. data/lib/sentdm/models/{mutation_request.rb → mutation_request_base.rb} +2 -2
  14. data/lib/sentdm/models/number_lookup_params.rb +26 -0
  15. data/lib/sentdm/models/number_lookup_response.rb +104 -0
  16. data/lib/sentdm/models/payment_details.rb +44 -0
  17. data/lib/sentdm/models/{profile_complete_params.rb → profile_complete_setup_params.rb} +3 -3
  18. data/lib/sentdm/models/{profile_complete_response.rb → profile_complete_setup_response.rb} +1 -1
  19. data/lib/sentdm/models/profile_create_params.rb +9 -91
  20. data/lib/sentdm/models/profile_delete_params.rb +1 -1
  21. data/lib/sentdm/models/profile_detail.rb +369 -3
  22. data/lib/sentdm/models/profile_update_params.rb +9 -91
  23. data/lib/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rb → profiles/api_response_of_tcr_campaign_with_use_cases.rb} +6 -5
  24. data/lib/sentdm/models/profiles/campaign_create_params.rb +57 -0
  25. data/lib/sentdm/models/{brands → profiles}/campaign_data.rb +28 -7
  26. data/lib/sentdm/models/profiles/campaign_delete_params.rb +50 -0
  27. data/lib/sentdm/models/profiles/campaign_list_params.rb +28 -0
  28. data/lib/sentdm/models/profiles/campaign_list_response.rb +47 -0
  29. data/lib/sentdm/models/profiles/campaign_update_params.rb +64 -0
  30. data/lib/sentdm/models/{brands → profiles}/messaging_use_case_us.rb +1 -1
  31. data/lib/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rb +15 -15
  32. data/lib/sentdm/models/template_definition.rb +255 -15
  33. data/lib/sentdm/models/user_remove_params.rb +1 -1
  34. data/lib/sentdm/models/webhook_rotate_secret_params.rb +1 -1
  35. data/lib/sentdm/models.rb +14 -26
  36. data/lib/sentdm/resources/contacts.rb +6 -6
  37. data/lib/sentdm/resources/numbers.rb +44 -0
  38. data/lib/sentdm/resources/profiles/campaigns.rb +160 -0
  39. data/lib/sentdm/resources/profiles.rb +16 -11
  40. data/lib/sentdm/version.rb +1 -1
  41. data/lib/sentdm.rb +22 -22
  42. data/rbi/sentdm/client.rbi +4 -6
  43. data/rbi/sentdm/models/{api_response_contact.rbi → api_response_of_contact.rbi} +6 -6
  44. data/rbi/sentdm/models/base_dto.rbi +49 -0
  45. data/rbi/sentdm/models/billing_contact_info.rbi +65 -0
  46. data/rbi/sentdm/models/{brand_data.rbi → brands_brand_data.rbi} +44 -27
  47. data/rbi/sentdm/models/contact_delete_params.rbi +1 -1
  48. data/rbi/sentdm/models/contact_list_response.rbi +4 -4
  49. data/rbi/sentdm/models/{contact.rbi → contact_response.rbi} +4 -2
  50. data/rbi/sentdm/models/{mutation_request.rbi → mutation_request_base.rbi} +2 -2
  51. data/rbi/sentdm/models/number_lookup_params.rbi +46 -0
  52. data/rbi/sentdm/models/number_lookup_response.rbi +166 -0
  53. data/rbi/sentdm/models/payment_details.rbi +59 -0
  54. data/rbi/sentdm/models/{profile_complete_params.rbi → profile_complete_setup_params.rbi} +2 -2
  55. data/rbi/sentdm/models/{profile_complete_response.rbi → profile_complete_setup_response.rbi} +1 -1
  56. data/rbi/sentdm/models/profile_create_params.rbi +12 -146
  57. data/rbi/sentdm/models/profile_delete_params.rbi +1 -1
  58. data/rbi/sentdm/models/profile_detail.rbi +562 -4
  59. data/rbi/sentdm/models/profile_update_params.rbi +12 -146
  60. data/rbi/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rbi → profiles/api_response_of_tcr_campaign_with_use_cases.rbi} +7 -7
  61. data/rbi/sentdm/models/profiles/campaign_create_params.rbi +88 -0
  62. data/rbi/sentdm/models/{brands → profiles}/campaign_data.rbi +51 -16
  63. data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +95 -0
  64. data/rbi/sentdm/models/profiles/campaign_list_params.rbi +51 -0
  65. data/rbi/sentdm/models/profiles/campaign_list_response.rbi +84 -0
  66. data/rbi/sentdm/models/profiles/campaign_update_params.rbi +94 -0
  67. data/rbi/sentdm/models/{brands → profiles}/messaging_use_case_us.rbi +20 -16
  68. data/rbi/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rbi +37 -29
  69. data/rbi/sentdm/models/template_definition.rbi +405 -74
  70. data/rbi/sentdm/models/user_remove_params.rbi +1 -1
  71. data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +1 -1
  72. data/rbi/sentdm/models.rbi +14 -26
  73. data/rbi/sentdm/resources/contacts.rbi +3 -3
  74. data/rbi/sentdm/resources/numbers.rbi +32 -0
  75. data/rbi/sentdm/resources/profiles/campaigns.rbi +127 -0
  76. data/rbi/sentdm/resources/profiles.rbi +11 -11
  77. data/sig/sentdm/client.rbs +2 -4
  78. data/sig/sentdm/models/{api_response_contact.rbs → api_response_of_contact.rbs} +6 -6
  79. data/sig/sentdm/models/base_dto.rbs +25 -0
  80. data/sig/sentdm/models/billing_contact_info.rbs +30 -0
  81. data/sig/sentdm/models/{brand_data.rbs → brands_brand_data.rbs} +19 -19
  82. data/sig/sentdm/models/contact_delete_params.rbs +1 -1
  83. data/sig/sentdm/models/contact_list_response.rbs +7 -5
  84. data/sig/sentdm/models/{contact.rbs → contact_response.rbs} +2 -2
  85. data/sig/sentdm/models/{mutation_request.rbs → mutation_request_base.rbs} +2 -2
  86. data/sig/sentdm/models/number_lookup_params.rbs +30 -0
  87. data/sig/sentdm/models/number_lookup_response.rbs +100 -0
  88. data/sig/sentdm/models/payment_details.rbs +30 -0
  89. data/sig/sentdm/models/{profile_complete_params.rbs → profile_complete_setup_params.rbs} +2 -2
  90. data/sig/sentdm/models/profile_complete_setup_response.rbs +5 -0
  91. data/sig/sentdm/models/profile_create_params.rbs +12 -66
  92. data/sig/sentdm/models/profile_delete_params.rbs +1 -1
  93. data/sig/sentdm/models/profile_detail.rbs +289 -4
  94. data/sig/sentdm/models/profile_update_params.rbs +12 -66
  95. data/sig/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbs +41 -0
  96. data/sig/sentdm/models/profiles/campaign_create_params.rbs +54 -0
  97. data/sig/sentdm/models/{brands → profiles}/campaign_data.rbs +27 -5
  98. data/sig/sentdm/models/profiles/campaign_delete_params.rbs +53 -0
  99. data/sig/sentdm/models/profiles/campaign_list_params.rbs +32 -0
  100. data/sig/sentdm/models/{brands/api_response_tcr_campaign_with_use_cases.rbs → profiles/campaign_list_response.rbs} +7 -7
  101. data/sig/sentdm/models/profiles/campaign_update_params.rbs +59 -0
  102. data/sig/sentdm/models/{brands → profiles}/messaging_use_case_us.rbs +2 -2
  103. data/sig/sentdm/models/{brands → profiles}/tcr_campaign_with_use_cases.rbs +29 -29
  104. data/sig/sentdm/models/template_definition.rbs +233 -20
  105. data/sig/sentdm/models/user_remove_params.rbs +1 -1
  106. data/sig/sentdm/models/webhook_rotate_secret_params.rbs +1 -1
  107. data/sig/sentdm/models.rbs +14 -20
  108. data/sig/sentdm/resources/contacts.rbs +3 -3
  109. data/sig/sentdm/resources/numbers.rbs +13 -0
  110. data/sig/sentdm/resources/profiles/campaigns.rbs +42 -0
  111. data/sig/sentdm/resources/profiles.rbs +9 -7
  112. metadata +67 -67
  113. data/lib/sentdm/models/brand_with_kyc.rb +0 -370
  114. data/lib/sentdm/models/brands/base_dto.rb +0 -32
  115. data/lib/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +0 -30
  116. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +0 -34
  117. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +0 -40
  118. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +0 -38
  119. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +0 -81
  120. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +0 -34
  121. data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +0 -39
  122. data/lib/sentdm/resources/brands/campaigns.rb +0 -16
  123. data/lib/sentdm/resources/brands.rb +0 -18
  124. data/lib/sentdm/resources/lookup.rb +0 -14
  125. data/rbi/sentdm/models/brand_with_kyc.rbi +0 -516
  126. data/rbi/sentdm/models/brands/base_dto.rbi +0 -53
  127. data/rbi/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +0 -52
  128. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +0 -56
  129. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +0 -76
  130. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +0 -79
  131. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +0 -104
  132. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +0 -60
  133. data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +0 -62
  134. data/rbi/sentdm/resources/brands/campaigns.rbi +0 -14
  135. data/rbi/sentdm/resources/brands.rbi +0 -15
  136. data/rbi/sentdm/resources/lookup.rbi +0 -12
  137. data/sig/sentdm/models/brand_with_kyc.rbs +0 -288
  138. data/sig/sentdm/models/brands/base_dto.rbs +0 -27
  139. data/sig/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +0 -27
  140. data/sig/sentdm/models/profile_complete_response.rbs +0 -5
  141. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +0 -24
  142. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +0 -30
  143. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +0 -38
  144. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +0 -75
  145. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +0 -32
  146. data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +0 -32
  147. data/sig/sentdm/resources/brands/campaigns.rbs +0 -9
  148. data/sig/sentdm/resources/brands.rbs +0 -9
  149. data/sig/sentdm/resources/lookup.rbs +0 -7
@@ -2,13 +2,14 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Brands
6
- class APIResponseTcrCampaignWithUseCases < Sentdm::Internal::Type::BaseModel
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#create
7
+ class APIResponseOfTcrCampaignWithUseCases < Sentdm::Internal::Type::BaseModel
7
8
  # @!attribute data
8
9
  # The response data (null if error)
9
10
  #
10
- # @return [Sentdm::Models::Brands::TcrCampaignWithUseCases, nil]
11
- optional :data, -> { Sentdm::Brands::TcrCampaignWithUseCases }, nil?: true
11
+ # @return [Sentdm::Models::Profiles::TcrCampaignWithUseCases, nil]
12
+ optional :data, -> { Sentdm::Profiles::TcrCampaignWithUseCases }, nil?: true
12
13
 
13
14
  # @!attribute error
14
15
  # Error details (null if successful)
@@ -31,7 +32,7 @@ module Sentdm
31
32
  # @!method initialize(data: nil, error: nil, meta: nil, success: nil)
32
33
  # Standard API response envelope for all v3 endpoints
33
34
  #
34
- # @param data [Sentdm::Models::Brands::TcrCampaignWithUseCases, nil] The response data (null if error)
35
+ # @param data [Sentdm::Models::Profiles::TcrCampaignWithUseCases, nil] The response data (null if error)
35
36
  #
36
37
  # @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
37
38
  #
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#create
7
+ class CampaignCreateParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute profile_id
12
+ #
13
+ # @return [String]
14
+ required :profile_id, String
15
+
16
+ # @!attribute campaign
17
+ # Campaign data
18
+ #
19
+ # @return [Sentdm::Models::Profiles::CampaignData]
20
+ required :campaign, -> { Sentdm::Profiles::CampaignData }
21
+
22
+ # @!attribute sandbox
23
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
24
+ # for testing integrations without actual execution
25
+ #
26
+ # @return [Boolean, nil]
27
+ optional :sandbox, Sentdm::Internal::Type::Boolean
28
+
29
+ # @!attribute idempotency_key
30
+ #
31
+ # @return [String, nil]
32
+ optional :idempotency_key, String
33
+
34
+ # @!attribute x_profile_id
35
+ #
36
+ # @return [String, nil]
37
+ optional :x_profile_id, String
38
+
39
+ # @!method initialize(profile_id:, campaign:, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
40
+ # Some parameter documentations has been truncated, see
41
+ # {Sentdm::Models::Profiles::CampaignCreateParams} for more details.
42
+ #
43
+ # @param profile_id [String]
44
+ #
45
+ # @param campaign [Sentdm::Models::Profiles::CampaignData] Campaign data
46
+ #
47
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
48
+ #
49
+ # @param idempotency_key [String]
50
+ #
51
+ # @param x_profile_id [String]
52
+ #
53
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
54
+ end
55
+ end
56
+ end
57
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Brands
5
+ module Profiles
6
6
  class CampaignData < Sentdm::Internal::Type::BaseModel
7
7
  # @!attribute description
8
8
  # Campaign description
@@ -25,11 +25,9 @@ module Sentdm
25
25
  # @!attribute use_cases
26
26
  # List of use cases with sample messages
27
27
  #
28
- # @return [Array<Sentdm::Models::Brands::SentDmServicesEndpointsCustomerApIv3ContractsRequestsCampaignsCampaignUseCaseData>]
28
+ # @return [Array<Sentdm::Models::Profiles::CampaignData::UseCase>]
29
29
  required :use_cases,
30
- -> {
31
- Sentdm::Internal::Type::ArrayOf[Sentdm::Brands::SentDmServicesEndpointsCustomerApIv3ContractsRequestsCampaignsCampaignUseCaseData]
32
- },
30
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::CampaignData::UseCase] },
33
31
  api_name: :useCases
34
32
 
35
33
  # @!attribute help_keywords
@@ -88,7 +86,7 @@ module Sentdm
88
86
 
89
87
  # @!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)
90
88
  # Some parameter documentations has been truncated, see
91
- # {Sentdm::Models::Brands::CampaignData} for more details.
89
+ # {Sentdm::Models::Profiles::CampaignData} for more details.
92
90
  #
93
91
  # Campaign data for create or update operation
94
92
  #
@@ -98,7 +96,7 @@ module Sentdm
98
96
  #
99
97
  # @param type [String] Campaign type (e.g., "KYC", "App")
100
98
  #
101
- # @param use_cases [Array<Sentdm::Models::Brands::SentDmServicesEndpointsCustomerApIv3ContractsRequestsCampaignsCampaignUseCaseData>] List of use cases with sample messages
99
+ # @param use_cases [Array<Sentdm::Models::Profiles::CampaignData::UseCase>] List of use cases with sample messages
102
100
  #
103
101
  # @param help_keywords [String, nil] Comma-separated keywords that trigger help message (e.g., "HELP, INFO, SUPPORT")
104
102
  #
@@ -117,6 +115,29 @@ module Sentdm
117
115
  # @param privacy_policy_link [String, nil] URL to privacy policy
118
116
  #
119
117
  # @param terms_and_conditions_link [String, nil] URL to terms and conditions
118
+
119
+ class UseCase < Sentdm::Internal::Type::BaseModel
120
+ # @!attribute messaging_use_case_us
121
+ # US messaging use case category
122
+ #
123
+ # @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
124
+ required :messaging_use_case_us,
125
+ enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
126
+ api_name: :messagingUseCaseUs
127
+
128
+ # @!attribute sample_messages
129
+ # Sample messages for this use case (1-5 messages, max 1024 characters each)
130
+ #
131
+ # @return [Array<String>]
132
+ required :sample_messages, Sentdm::Internal::Type::ArrayOf[String], api_name: :sampleMessages
133
+
134
+ # @!method initialize(messaging_use_case_us:, sample_messages:)
135
+ # Campaign use case with sample messages
136
+ #
137
+ # @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs] US messaging use case category
138
+ #
139
+ # @param sample_messages [Array<String>] Sample messages for this use case (1-5 messages, max 1024 characters each)
140
+ end
120
141
  end
121
142
  end
122
143
  end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#delete
7
+ class CampaignDeleteParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute profile_id
12
+ #
13
+ # @return [String]
14
+ required :profile_id, String
15
+
16
+ # @!attribute campaign_id
17
+ #
18
+ # @return [String]
19
+ required :campaign_id, String
20
+
21
+ # @!attribute body
22
+ # Request to delete a campaign from a brand
23
+ #
24
+ # @return [Sentdm::Models::Profiles::CampaignDeleteParams::Body]
25
+ required :body, -> { Sentdm::Profiles::CampaignDeleteParams::Body }
26
+
27
+ # @!attribute x_profile_id
28
+ #
29
+ # @return [String, nil]
30
+ optional :x_profile_id, String
31
+
32
+ # @!method initialize(profile_id:, campaign_id:, body:, x_profile_id: nil, request_options: {})
33
+ # @param profile_id [String]
34
+ #
35
+ # @param campaign_id [String]
36
+ #
37
+ # @param body [Sentdm::Models::Profiles::CampaignDeleteParams::Body] Request to delete a campaign from a brand
38
+ #
39
+ # @param x_profile_id [String]
40
+ #
41
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
42
+
43
+ class Body < Sentdm::Models::MutationRequestBase
44
+ # @!method initialize
45
+ # Request to delete a campaign from a brand
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#list
7
+ class CampaignListParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute profile_id
12
+ #
13
+ # @return [String]
14
+ required :profile_id, String
15
+
16
+ # @!attribute x_profile_id
17
+ #
18
+ # @return [String, nil]
19
+ optional :x_profile_id, String
20
+
21
+ # @!method initialize(profile_id:, x_profile_id: nil, request_options: {})
22
+ # @param profile_id [String]
23
+ # @param x_profile_id [String]
24
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#list
7
+ class CampaignListResponse < Sentdm::Internal::Type::BaseModel
8
+ # @!attribute data
9
+ # The response data (null if error)
10
+ #
11
+ # @return [Array<Sentdm::Models::Profiles::TcrCampaignWithUseCases>, nil]
12
+ optional :data,
13
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::TcrCampaignWithUseCases] },
14
+ nil?: true
15
+
16
+ # @!attribute error
17
+ # Error details (null if successful)
18
+ #
19
+ # @return [Sentdm::Models::APIError, nil]
20
+ optional :error, -> { Sentdm::APIError }, nil?: true
21
+
22
+ # @!attribute meta
23
+ # Metadata about the request and response
24
+ #
25
+ # @return [Sentdm::Models::APIMeta, nil]
26
+ optional :meta, -> { Sentdm::APIMeta }
27
+
28
+ # @!attribute success
29
+ # Indicates whether the request was successful
30
+ #
31
+ # @return [Boolean, nil]
32
+ optional :success, Sentdm::Internal::Type::Boolean
33
+
34
+ # @!method initialize(data: nil, error: nil, meta: nil, success: nil)
35
+ # Standard API response envelope for all v3 endpoints
36
+ #
37
+ # @param data [Array<Sentdm::Models::Profiles::TcrCampaignWithUseCases>, nil] The response data (null if error)
38
+ #
39
+ # @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
40
+ #
41
+ # @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
42
+ #
43
+ # @param success [Boolean] Indicates whether the request was successful
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,64 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Profiles
6
+ # @see Sentdm::Resources::Profiles::Campaigns#update
7
+ class CampaignUpdateParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute profile_id
12
+ #
13
+ # @return [String]
14
+ required :profile_id, String
15
+
16
+ # @!attribute campaign_id
17
+ #
18
+ # @return [String]
19
+ required :campaign_id, String
20
+
21
+ # @!attribute campaign
22
+ # Campaign data
23
+ #
24
+ # @return [Sentdm::Models::Profiles::CampaignData]
25
+ required :campaign, -> { Sentdm::Profiles::CampaignData }
26
+
27
+ # @!attribute sandbox
28
+ # Sandbox flag - when true, the operation is simulated without side effects Useful
29
+ # for testing integrations without actual execution
30
+ #
31
+ # @return [Boolean, nil]
32
+ optional :sandbox, Sentdm::Internal::Type::Boolean
33
+
34
+ # @!attribute idempotency_key
35
+ #
36
+ # @return [String, nil]
37
+ optional :idempotency_key, String
38
+
39
+ # @!attribute x_profile_id
40
+ #
41
+ # @return [String, nil]
42
+ optional :x_profile_id, String
43
+
44
+ # @!method initialize(profile_id:, campaign_id:, campaign:, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
45
+ # Some parameter documentations has been truncated, see
46
+ # {Sentdm::Models::Profiles::CampaignUpdateParams} for more details.
47
+ #
48
+ # @param profile_id [String]
49
+ #
50
+ # @param campaign_id [String]
51
+ #
52
+ # @param campaign [Sentdm::Models::Profiles::CampaignData] Campaign data
53
+ #
54
+ # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
55
+ #
56
+ # @param idempotency_key [String]
57
+ #
58
+ # @param x_profile_id [String]
59
+ #
60
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
61
+ end
62
+ end
63
+ end
64
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Brands
5
+ module Profiles
6
6
  module MessagingUseCaseUs
7
7
  extend Sentdm::Internal::Type::Enum
8
8
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Brands
6
- class TcrCampaignWithUseCases < Sentdm::Models::Brands::BaseDto
5
+ module Profiles
6
+ class TcrCampaignWithUseCases < Sentdm::Models::BaseDto
7
7
  # @!attribute billed_date
8
8
  #
9
9
  # @return [Time, nil]
@@ -91,16 +91,16 @@ module Sentdm
91
91
 
92
92
  # @!attribute sharing_status
93
93
  #
94
- # @return [Symbol, Sentdm::Models::Brands::TcrCampaignWithUseCases::SharingStatus, nil]
94
+ # @return [Symbol, Sentdm::Models::Profiles::TcrCampaignWithUseCases::SharingStatus, nil]
95
95
  optional :sharing_status,
96
- enum: -> { Sentdm::Brands::TcrCampaignWithUseCases::SharingStatus },
96
+ enum: -> { Sentdm::Profiles::TcrCampaignWithUseCases::SharingStatus },
97
97
  api_name: :sharingStatus,
98
98
  nil?: true
99
99
 
100
100
  # @!attribute status
101
101
  #
102
- # @return [Symbol, Sentdm::Models::Brands::TcrCampaignWithUseCases::Status, nil]
103
- optional :status, enum: -> { Sentdm::Brands::TcrCampaignWithUseCases::Status }, nil?: true
102
+ # @return [Symbol, Sentdm::Models::Profiles::TcrCampaignWithUseCases::Status, nil]
103
+ optional :status, enum: -> { Sentdm::Profiles::TcrCampaignWithUseCases::Status }, nil?: true
104
104
 
105
105
  # @!attribute submitted_at
106
106
  #
@@ -144,9 +144,9 @@ module Sentdm
144
144
 
145
145
  # @!attribute use_cases
146
146
  #
147
- # @return [Array<Sentdm::Models::Brands::TcrCampaignWithUseCases::UseCase>, nil]
147
+ # @return [Array<Sentdm::Models::Profiles::TcrCampaignWithUseCases::UseCase>, nil]
148
148
  optional :use_cases,
149
- -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Brands::TcrCampaignWithUseCases::UseCase] },
149
+ -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Profiles::TcrCampaignWithUseCases::UseCase] },
150
150
  api_name: :useCases
151
151
 
152
152
  # @!method initialize(billed_date: nil, brand_id: nil, cost: nil, csp_id: nil, customer_id: nil, description: nil, help_keywords: nil, help_message: nil, kyc_submission_form_id: nil, message_flow: nil, name: nil, optin_keywords: nil, optin_message: nil, optout_keywords: nil, optout_message: nil, privacy_policy_link: nil, reseller_id: nil, sharing_status: nil, status: nil, submitted_at: nil, submitted_to_tcr: nil, tcr_campaign_id: nil, tcr_sync_error: nil, telnyx_campaign_id: nil, terms_and_conditions_link: nil, type: nil, upstream_cnp_id: nil, use_cases: nil)
@@ -167,8 +167,8 @@ module Sentdm
167
167
  # @param optout_message [String, nil]
168
168
  # @param privacy_policy_link [String, nil]
169
169
  # @param reseller_id [String, nil]
170
- # @param sharing_status [Symbol, Sentdm::Models::Brands::TcrCampaignWithUseCases::SharingStatus, nil]
171
- # @param status [Symbol, Sentdm::Models::Brands::TcrCampaignWithUseCases::Status, nil]
170
+ # @param sharing_status [Symbol, Sentdm::Models::Profiles::TcrCampaignWithUseCases::SharingStatus, nil]
171
+ # @param status [Symbol, Sentdm::Models::Profiles::TcrCampaignWithUseCases::Status, nil]
172
172
  # @param submitted_at [Time, nil]
173
173
  # @param submitted_to_tcr [Boolean]
174
174
  # @param tcr_campaign_id [String, nil]
@@ -177,7 +177,7 @@ module Sentdm
177
177
  # @param terms_and_conditions_link [String, nil]
178
178
  # @param type [String]
179
179
  # @param upstream_cnp_id [String, nil]
180
- # @param use_cases [Array<Sentdm::Models::Brands::TcrCampaignWithUseCases::UseCase>]
180
+ # @param use_cases [Array<Sentdm::Models::Profiles::TcrCampaignWithUseCases::UseCase>]
181
181
 
182
182
  module SharingStatus
183
183
  extend Sentdm::Internal::Type::Enum
@@ -201,7 +201,7 @@ module Sentdm
201
201
  # @return [Array<Symbol>]
202
202
  end
203
203
 
204
- class UseCase < Sentdm::Models::Brands::BaseDto
204
+ class UseCase < Sentdm::Models::BaseDto
205
205
  # @!attribute campaign_id
206
206
  #
207
207
  # @return [String, nil]
@@ -214,9 +214,9 @@ module Sentdm
214
214
 
215
215
  # @!attribute messaging_use_case_us
216
216
  #
217
- # @return [Symbol, Sentdm::Models::Brands::MessagingUseCaseUs, nil]
217
+ # @return [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs, nil]
218
218
  optional :messaging_use_case_us,
219
- enum: -> { Sentdm::Brands::MessagingUseCaseUs },
219
+ enum: -> { Sentdm::Profiles::MessagingUseCaseUs },
220
220
  api_name: :messagingUseCaseUs
221
221
 
222
222
  # @!attribute sample_messages
@@ -227,7 +227,7 @@ module Sentdm
227
227
  # @!method initialize(campaign_id: nil, customer_id: nil, messaging_use_case_us: nil, sample_messages: nil)
228
228
  # @param campaign_id [String]
229
229
  # @param customer_id [String]
230
- # @param messaging_use_case_us [Symbol, Sentdm::Models::Brands::MessagingUseCaseUs]
230
+ # @param messaging_use_case_us [Symbol, Sentdm::Models::Profiles::MessagingUseCaseUs]
231
231
  # @param sample_messages [Array<String>]
232
232
  end
233
233
  end