sentdm 0.26.0 → 0.28.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 +40 -0
- data/README.md +1 -27
- data/lib/sentdm/client.rb +71 -8
- data/lib/sentdm/internal/type/base_model.rb +5 -5
- data/lib/sentdm/models/contact_create_response.rb +249 -0
- data/lib/sentdm/models/contact_delete_params.rb +16 -2
- data/lib/sentdm/models/contact_list_response.rb +299 -16
- data/lib/sentdm/models/contact_retrieve_message_summary_response.rb +186 -0
- data/lib/sentdm/models/contact_retrieve_response.rb +249 -0
- data/lib/sentdm/models/contact_update_response.rb +249 -0
- data/lib/sentdm/models/conversation_list_messages_response.rb +436 -0
- data/lib/sentdm/models/conversation_list_response.rb +433 -0
- data/lib/sentdm/models/inbound_message_event.rb +52 -0
- data/lib/sentdm/models/inbound_message_event_payload.rb +81 -0
- data/lib/sentdm/models/me_retrieve_response.rb +242 -12
- data/lib/sentdm/models/message_event.rb +53 -0
- data/lib/sentdm/models/message_event_payload.rb +92 -0
- data/lib/sentdm/models/message_retrieve_activities_response.rb +165 -7
- data/lib/sentdm/models/message_retrieve_status_response.rb +74 -6
- data/lib/sentdm/models/message_send_response.rb +113 -28
- data/lib/sentdm/models/number_lookup_response.rb +74 -6
- data/lib/sentdm/models/profile_complete_response.rb +74 -6
- data/lib/sentdm/models/profile_create_params.rb +378 -26
- data/lib/sentdm/models/profile_create_response.rb +760 -0
- data/lib/sentdm/models/profile_delete_params.rb +16 -2
- data/lib/sentdm/models/profile_list_response.rb +825 -14
- data/lib/sentdm/models/profile_retrieve_response.rb +762 -0
- data/lib/sentdm/models/profile_update_params.rb +391 -24
- data/lib/sentdm/models/profile_update_response.rb +760 -0
- data/lib/sentdm/models/profiles/campaign_create_params.rb +156 -3
- data/lib/sentdm/models/profiles/campaign_create_response.rb +420 -0
- data/lib/sentdm/models/profiles/campaign_delete_params.rb +17 -2
- data/lib/sentdm/models/profiles/campaign_list_response.rb +421 -0
- data/lib/sentdm/models/profiles/campaign_update_params.rb +156 -3
- data/lib/sentdm/models/profiles/campaign_update_response.rb +420 -0
- data/lib/sentdm/models/template_create_response.rb +209 -0
- data/lib/sentdm/models/template_event.rb +52 -0
- data/lib/sentdm/models/template_event_payload.rb +88 -0
- data/lib/sentdm/models/template_list_params.rb +9 -2
- data/lib/sentdm/models/template_list_response.rb +262 -16
- data/lib/sentdm/models/template_retrieve_response.rb +209 -0
- data/lib/sentdm/models/template_update_response.rb +209 -0
- data/lib/sentdm/models/user_invite_response.rb +201 -0
- data/lib/sentdm/models/user_list_response.rb +259 -14
- data/lib/sentdm/models/user_remove_params.rb +16 -2
- data/lib/sentdm/models/user_retrieve_response.rb +201 -0
- data/lib/sentdm/models/user_update_role_response.rb +201 -0
- data/lib/sentdm/models/webhook_create_response.rb +229 -0
- data/lib/sentdm/models/webhook_list_event_types_response.rb +213 -13
- data/lib/sentdm/models/webhook_list_events_response.rb +207 -16
- data/lib/sentdm/models/webhook_list_response.rb +280 -15
- data/lib/sentdm/models/webhook_retrieve_response.rb +229 -0
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +17 -2
- data/lib/sentdm/models/webhook_rotate_secret_response.rb +74 -6
- data/lib/sentdm/models/webhook_test_response.rb +74 -6
- data/lib/sentdm/models/webhook_toggle_status_response.rb +229 -0
- data/lib/sentdm/models/webhook_update_response.rb +229 -0
- data/lib/sentdm/models.rb +11 -51
- data/lib/sentdm/resources/contacts.rb +30 -13
- data/lib/sentdm/resources/conversations.rb +12 -4
- data/lib/sentdm/resources/me.rb +6 -1
- data/lib/sentdm/resources/messages.rb +17 -5
- data/lib/sentdm/resources/numbers.rb +6 -1
- data/lib/sentdm/resources/profiles/campaigns.rb +47 -9
- data/lib/sentdm/resources/profiles.rb +137 -61
- data/lib/sentdm/resources/templates.rb +14 -8
- data/lib/sentdm/resources/users.rb +15 -10
- data/lib/sentdm/resources/webhooks.rb +19 -9
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +28 -32
- data/rbi/sentdm/client.rbi +71 -8
- data/rbi/sentdm/models/contact_create_response.rbi +407 -0
- data/rbi/sentdm/models/contact_delete_params.rbi +19 -2
- data/rbi/sentdm/models/contact_list_response.rbi +527 -21
- data/rbi/sentdm/models/contact_retrieve_message_summary_response.rbi +397 -0
- data/rbi/sentdm/models/contact_retrieve_response.rbi +409 -0
- data/rbi/sentdm/models/contact_update_response.rbi +407 -0
- data/rbi/sentdm/models/conversation_list_messages_response.rbi +843 -0
- data/rbi/sentdm/models/conversation_list_response.rbi +819 -0
- data/rbi/sentdm/models/inbound_message_event.rbi +88 -0
- data/rbi/sentdm/models/inbound_message_event_payload.rbi +122 -0
- data/rbi/sentdm/models/me_retrieve_response.rbi +367 -16
- data/rbi/sentdm/models/message_event.rbi +86 -0
- data/rbi/sentdm/models/message_event_payload.rbi +132 -0
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +335 -11
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +148 -8
- data/rbi/sentdm/models/message_send_response.rbi +178 -32
- data/rbi/sentdm/models/number_lookup_response.rbi +135 -8
- data/rbi/sentdm/models/profile_complete_response.rbi +137 -8
- data/rbi/sentdm/models/profile_create_params.rbi +592 -42
- data/rbi/sentdm/models/profile_create_response.rbi +1226 -0
- data/rbi/sentdm/models/profile_delete_params.rbi +19 -2
- data/rbi/sentdm/models/profile_list_response.rbi +1366 -18
- data/rbi/sentdm/models/profile_retrieve_response.rbi +1230 -0
- data/rbi/sentdm/models/profile_update_params.rbi +610 -30
- data/rbi/sentdm/models/profile_update_response.rbi +1226 -0
- data/rbi/sentdm/models/profiles/campaign_create_params.rbi +218 -4
- data/rbi/sentdm/models/profiles/campaign_create_response.rbi +674 -0
- data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +14 -1
- data/rbi/sentdm/models/profiles/campaign_list_response.rbi +667 -0
- data/rbi/sentdm/models/profiles/campaign_update_params.rbi +218 -4
- data/rbi/sentdm/models/profiles/campaign_update_response.rbi +674 -0
- data/rbi/sentdm/models/template_create_response.rbi +349 -0
- data/rbi/sentdm/models/template_event.rbi +84 -0
- data/rbi/sentdm/models/template_event_payload.rbi +131 -0
- data/rbi/sentdm/models/template_list_params.rbi +10 -2
- data/rbi/sentdm/models/template_list_response.rbi +469 -21
- data/rbi/sentdm/models/template_retrieve_response.rbi +355 -0
- data/rbi/sentdm/models/template_update_response.rbi +349 -0
- data/rbi/sentdm/models/user_invite_response.rbi +336 -0
- data/rbi/sentdm/models/user_list_response.rbi +463 -18
- data/rbi/sentdm/models/user_remove_params.rbi +19 -2
- data/rbi/sentdm/models/user_retrieve_response.rbi +336 -0
- data/rbi/sentdm/models/user_update_role_response.rbi +341 -0
- data/rbi/sentdm/models/webhook_create_response.rbi +361 -0
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +433 -16
- data/rbi/sentdm/models/webhook_list_events_response.rbi +379 -19
- data/rbi/sentdm/models/webhook_list_response.rbi +480 -19
- data/rbi/sentdm/models/webhook_retrieve_response.rbi +363 -0
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +14 -1
- data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +148 -8
- data/rbi/sentdm/models/webhook_test_response.rbi +135 -8
- data/rbi/sentdm/models/webhook_toggle_status_response.rbi +379 -0
- data/rbi/sentdm/models/webhook_update_response.rbi +361 -0
- data/rbi/sentdm/models.rbi +11 -53
- data/rbi/sentdm/resources/contacts.rbi +24 -9
- data/rbi/sentdm/resources/conversations.rbi +10 -2
- data/rbi/sentdm/resources/me.rbi +6 -1
- data/rbi/sentdm/resources/messages.rbi +17 -5
- data/rbi/sentdm/resources/numbers.rbi +6 -1
- data/rbi/sentdm/resources/profiles/campaigns.rbi +36 -6
- data/rbi/sentdm/resources/profiles.rbi +177 -68
- data/rbi/sentdm/resources/templates.rbi +15 -5
- data/rbi/sentdm/resources/users.rbi +12 -6
- data/rbi/sentdm/resources/webhooks.rbi +15 -5
- data/sig/sentdm/models/contact_create_response.rbs +216 -0
- data/sig/sentdm/models/contact_delete_params.rbs +10 -6
- data/sig/sentdm/models/contact_list_response.rbs +263 -20
- data/sig/sentdm/models/contact_retrieve_message_summary_response.rbs +182 -0
- data/sig/sentdm/models/contact_retrieve_response.rbs +216 -0
- data/sig/sentdm/models/contact_update_response.rbs +216 -0
- data/sig/sentdm/models/conversation_list_messages_response.rbs +404 -0
- data/sig/sentdm/models/conversation_list_response.rbs +404 -0
- data/sig/sentdm/models/inbound_message_event.rbs +39 -0
- data/sig/sentdm/models/inbound_message_event_payload.rbs +69 -0
- data/sig/sentdm/models/me_retrieve_response.rbs +176 -18
- data/sig/sentdm/models/message_event.rbs +39 -0
- data/sig/sentdm/models/message_event_payload.rbs +72 -0
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +147 -12
- data/sig/sentdm/models/message_retrieve_status_response.rbs +71 -9
- data/sig/sentdm/models/message_send_response.rbs +71 -9
- data/sig/sentdm/models/number_lookup_response.rbs +71 -9
- data/sig/sentdm/models/profile_complete_response.rbs +71 -9
- data/sig/sentdm/models/profile_create_params.rbs +271 -24
- data/sig/sentdm/models/profile_create_response.rbs +559 -0
- data/sig/sentdm/models/profile_delete_params.rbs +10 -6
- data/sig/sentdm/models/profile_list_response.rbs +615 -15
- data/sig/sentdm/models/profile_retrieve_response.rbs +559 -0
- data/sig/sentdm/models/profile_update_params.rbs +263 -12
- data/sig/sentdm/models/profile_update_response.rbs +559 -0
- data/sig/sentdm/models/profiles/campaign_create_params.rbs +108 -4
- data/sig/sentdm/models/profiles/campaign_create_response.rbs +357 -0
- data/sig/sentdm/models/profiles/campaign_delete_params.rbs +15 -8
- data/sig/sentdm/models/profiles/campaign_list_response.rbs +357 -0
- data/sig/sentdm/models/profiles/campaign_update_params.rbs +108 -4
- data/sig/sentdm/models/profiles/campaign_update_response.rbs +357 -0
- data/sig/sentdm/models/template_create_response.rbs +182 -0
- data/sig/sentdm/models/template_event.rbs +39 -0
- data/sig/sentdm/models/template_event_payload.rbs +76 -0
- data/sig/sentdm/models/template_list_response.rbs +230 -19
- data/sig/sentdm/models/template_retrieve_response.rbs +182 -0
- data/sig/sentdm/models/template_update_response.rbs +182 -0
- data/sig/sentdm/models/user_invite_response.rbs +177 -0
- data/sig/sentdm/models/user_list_response.rbs +233 -15
- data/sig/sentdm/models/user_remove_params.rbs +10 -6
- data/sig/sentdm/models/user_retrieve_response.rbs +177 -0
- data/sig/sentdm/models/user_update_role_response.rbs +177 -0
- data/sig/sentdm/models/webhook_create_response.rbs +208 -0
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +203 -15
- data/sig/sentdm/models/webhook_list_events_response.rbs +160 -19
- data/sig/sentdm/models/webhook_list_response.rbs +255 -20
- data/sig/sentdm/models/webhook_retrieve_response.rbs +208 -0
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +17 -8
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +71 -9
- data/sig/sentdm/models/webhook_test_response.rbs +71 -9
- data/sig/sentdm/models/webhook_toggle_status_response.rbs +208 -0
- data/sig/sentdm/models/webhook_update_response.rbs +208 -0
- data/sig/sentdm/models.rbs +11 -51
- 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 +11 -11
- 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 +86 -98
- data/lib/sentdm/models/api_meta.rb +0 -34
- data/lib/sentdm/models/api_response_of_contact.rb +0 -46
- data/lib/sentdm/models/api_response_of_contact_message_summary.rb +0 -43
- data/lib/sentdm/models/api_response_of_conversation_messages_list.rb +0 -43
- data/lib/sentdm/models/api_response_of_profile_detail.rb +0 -43
- data/lib/sentdm/models/api_response_of_user.rb +0 -43
- data/lib/sentdm/models/api_response_template.rb +0 -43
- data/lib/sentdm/models/api_response_webhook.rb +0 -43
- data/lib/sentdm/models/billing_contact_info.rb +0 -47
- data/lib/sentdm/models/brand_business_info.rb +0 -114
- data/lib/sentdm/models/brand_compliance_info.rb +0 -67
- data/lib/sentdm/models/brand_contact_info.rb +0 -58
- data/lib/sentdm/models/brands_brand_data.rb +0 -34
- data/lib/sentdm/models/contact_message_summary.rb +0 -76
- data/lib/sentdm/models/contact_response.rb +0 -126
- data/lib/sentdm/models/conversation_messages_list.rb +0 -245
- data/lib/sentdm/models/error_detail.rb +0 -42
- data/lib/sentdm/models/mutation_request.rb +0 -20
- data/lib/sentdm/models/pagination_meta.rb +0 -80
- data/lib/sentdm/models/payment_details.rb +0 -44
- data/lib/sentdm/models/profile_detail.rb +0 -597
- data/lib/sentdm/models/profile_settings.rb +0 -66
- data/lib/sentdm/models/profiles/api_response_of_brand_campaign.rb +0 -45
- data/lib/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rb +0 -45
- data/lib/sentdm/models/profiles/brand_campaign.rb +0 -247
- data/lib/sentdm/models/profiles/campaign_data.rb +0 -130
- data/lib/sentdm/models/profiles/campaign_use_case.rb +0 -71
- data/lib/sentdm/models/profiles/campaign_use_case_data.rb +0 -29
- data/lib/sentdm/models/template.rb +0 -90
- data/lib/sentdm/models/user_response.rb +0 -82
- data/lib/sentdm/models/webhook_event_type.rb +0 -45
- data/lib/sentdm/models/webhook_response.rb +0 -95
- data/rbi/sentdm/models/api_meta.rbi +0 -55
- data/rbi/sentdm/models/api_response_of_contact.rbi +0 -74
- data/rbi/sentdm/models/api_response_of_contact_message_summary.rbi +0 -79
- data/rbi/sentdm/models/api_response_of_conversation_messages_list.rbi +0 -79
- data/rbi/sentdm/models/api_response_of_profile_detail.rbi +0 -74
- data/rbi/sentdm/models/api_response_of_user.rbi +0 -74
- data/rbi/sentdm/models/api_response_template.rbi +0 -74
- data/rbi/sentdm/models/api_response_webhook.rbi +0 -74
- data/rbi/sentdm/models/billing_contact_info.rbi +0 -65
- data/rbi/sentdm/models/brand_business_info.rbi +0 -162
- data/rbi/sentdm/models/brand_compliance_info.rbi +0 -84
- data/rbi/sentdm/models/brand_contact_info.rbi +0 -78
- data/rbi/sentdm/models/brands_brand_data.rbi +0 -65
- data/rbi/sentdm/models/contact_message_summary.rbi +0 -144
- data/rbi/sentdm/models/contact_response.rbi +0 -183
- data/rbi/sentdm/models/conversation_messages_list.rbi +0 -419
- data/rbi/sentdm/models/error_detail.rbi +0 -66
- data/rbi/sentdm/models/mutation_request.rbi +0 -32
- data/rbi/sentdm/models/pagination_meta.rbi +0 -135
- data/rbi/sentdm/models/payment_details.rbi +0 -59
- data/rbi/sentdm/models/profile_detail.rbi +0 -866
- data/rbi/sentdm/models/profile_settings.rbi +0 -86
- data/rbi/sentdm/models/profiles/api_response_of_brand_campaign.rbi +0 -81
- data/rbi/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbi +0 -76
- data/rbi/sentdm/models/profiles/brand_campaign.rbi +0 -299
- data/rbi/sentdm/models/profiles/campaign_data.rbi +0 -146
- data/rbi/sentdm/models/profiles/campaign_use_case.rbi +0 -110
- data/rbi/sentdm/models/profiles/campaign_use_case_data.rbi +0 -51
- data/rbi/sentdm/models/template.rbi +0 -129
- data/rbi/sentdm/models/user_response.rbi +0 -118
- data/rbi/sentdm/models/webhook_event_type.rbi +0 -74
- data/rbi/sentdm/models/webhook_response.rbi +0 -140
- data/sig/sentdm/models/api_meta.rbs +0 -27
- data/sig/sentdm/models/api_response_of_contact.rbs +0 -39
- data/sig/sentdm/models/api_response_of_contact_message_summary.rbs +0 -39
- data/sig/sentdm/models/api_response_of_conversation_messages_list.rbs +0 -39
- data/sig/sentdm/models/api_response_of_profile_detail.rbs +0 -39
- data/sig/sentdm/models/api_response_of_user.rbs +0 -39
- data/sig/sentdm/models/api_response_template.rbs +0 -39
- data/sig/sentdm/models/api_response_webhook.rbs +0 -39
- data/sig/sentdm/models/billing_contact_info.rbs +0 -30
- data/sig/sentdm/models/brand_business_info.rbs +0 -89
- data/sig/sentdm/models/brand_compliance_info.rbs +0 -50
- data/sig/sentdm/models/brand_contact_info.rbs +0 -45
- data/sig/sentdm/models/brands_brand_data.rbs +0 -30
- data/sig/sentdm/models/contact_message_summary.rbs +0 -84
- data/sig/sentdm/models/contact_response.rbs +0 -111
- data/sig/sentdm/models/conversation_messages_list.rbs +0 -240
- data/sig/sentdm/models/error_detail.rbs +0 -39
- data/sig/sentdm/models/mutation_request.rbs +0 -15
- data/sig/sentdm/models/pagination_meta.rbs +0 -67
- data/sig/sentdm/models/payment_details.rbs +0 -30
- data/sig/sentdm/models/profile_detail.rbs +0 -469
- data/sig/sentdm/models/profile_settings.rbs +0 -50
- data/sig/sentdm/models/profiles/api_response_of_brand_campaign.rbs +0 -41
- data/sig/sentdm/models/profiles/api_response_of_list_of_brand_campaign.rbs +0 -41
- data/sig/sentdm/models/profiles/brand_campaign.rbs +0 -194
- data/sig/sentdm/models/profiles/campaign_data.rbs +0 -87
- data/sig/sentdm/models/profiles/campaign_use_case.rbs +0 -66
- data/sig/sentdm/models/profiles/campaign_use_case_data.rbs +0 -27
- data/sig/sentdm/models/template.rbs +0 -79
- data/sig/sentdm/models/user_response.rbs +0 -72
- data/sig/sentdm/models/webhook_event_type.rbs +0 -51
- data/sig/sentdm/models/webhook_response.rbs +0 -103
|
@@ -0,0 +1,355 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class TemplateRetrieveResponse < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Sentdm::Models::TemplateRetrieveResponse,
|
|
10
|
+
Sentdm::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Template response for v3 API
|
|
15
|
+
sig { returns(T.nilable(Sentdm::Models::TemplateRetrieveResponse::Data)) }
|
|
16
|
+
attr_reader :data
|
|
17
|
+
|
|
18
|
+
sig do
|
|
19
|
+
params(
|
|
20
|
+
data:
|
|
21
|
+
T.nilable(Sentdm::Models::TemplateRetrieveResponse::Data::OrHash)
|
|
22
|
+
).void
|
|
23
|
+
end
|
|
24
|
+
attr_writer :data
|
|
25
|
+
|
|
26
|
+
# Error information
|
|
27
|
+
sig do
|
|
28
|
+
returns(T.nilable(Sentdm::Models::TemplateRetrieveResponse::Error))
|
|
29
|
+
end
|
|
30
|
+
attr_reader :error
|
|
31
|
+
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
error:
|
|
35
|
+
T.nilable(Sentdm::Models::TemplateRetrieveResponse::Error::OrHash)
|
|
36
|
+
).void
|
|
37
|
+
end
|
|
38
|
+
attr_writer :error
|
|
39
|
+
|
|
40
|
+
# Request and response metadata
|
|
41
|
+
sig { returns(T.nilable(Sentdm::Models::TemplateRetrieveResponse::Meta)) }
|
|
42
|
+
attr_reader :meta
|
|
43
|
+
|
|
44
|
+
sig do
|
|
45
|
+
params(
|
|
46
|
+
meta: Sentdm::Models::TemplateRetrieveResponse::Meta::OrHash
|
|
47
|
+
).void
|
|
48
|
+
end
|
|
49
|
+
attr_writer :meta
|
|
50
|
+
|
|
51
|
+
# Indicates whether the request was successful
|
|
52
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
53
|
+
attr_reader :success
|
|
54
|
+
|
|
55
|
+
sig { params(success: T::Boolean).void }
|
|
56
|
+
attr_writer :success
|
|
57
|
+
|
|
58
|
+
# Standard API response envelope for all v3 endpoints
|
|
59
|
+
sig do
|
|
60
|
+
params(
|
|
61
|
+
data:
|
|
62
|
+
T.nilable(Sentdm::Models::TemplateRetrieveResponse::Data::OrHash),
|
|
63
|
+
error:
|
|
64
|
+
T.nilable(Sentdm::Models::TemplateRetrieveResponse::Error::OrHash),
|
|
65
|
+
meta: Sentdm::Models::TemplateRetrieveResponse::Meta::OrHash,
|
|
66
|
+
success: T::Boolean
|
|
67
|
+
).returns(T.attached_class)
|
|
68
|
+
end
|
|
69
|
+
def self.new(
|
|
70
|
+
# Template response for v3 API
|
|
71
|
+
data: nil,
|
|
72
|
+
# Error information
|
|
73
|
+
error: nil,
|
|
74
|
+
# Request and response metadata
|
|
75
|
+
meta: nil,
|
|
76
|
+
# Indicates whether the request was successful
|
|
77
|
+
success: nil
|
|
78
|
+
)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
sig do
|
|
82
|
+
override.returns(
|
|
83
|
+
{
|
|
84
|
+
data: T.nilable(Sentdm::Models::TemplateRetrieveResponse::Data),
|
|
85
|
+
error: T.nilable(Sentdm::Models::TemplateRetrieveResponse::Error),
|
|
86
|
+
meta: Sentdm::Models::TemplateRetrieveResponse::Meta,
|
|
87
|
+
success: T::Boolean
|
|
88
|
+
}
|
|
89
|
+
)
|
|
90
|
+
end
|
|
91
|
+
def to_hash
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
class Data < Sentdm::Internal::Type::BaseModel
|
|
95
|
+
OrHash =
|
|
96
|
+
T.type_alias do
|
|
97
|
+
T.any(
|
|
98
|
+
Sentdm::Models::TemplateRetrieveResponse::Data,
|
|
99
|
+
Sentdm::Internal::AnyHash
|
|
100
|
+
)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
104
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
105
|
+
sig { returns(String) }
|
|
106
|
+
attr_accessor :customer_id
|
|
107
|
+
|
|
108
|
+
# Unique template identifier
|
|
109
|
+
sig { returns(T.nilable(String)) }
|
|
110
|
+
attr_reader :id
|
|
111
|
+
|
|
112
|
+
sig { params(id: String).void }
|
|
113
|
+
attr_writer :id
|
|
114
|
+
|
|
115
|
+
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
116
|
+
sig { returns(T.nilable(String)) }
|
|
117
|
+
attr_reader :category
|
|
118
|
+
|
|
119
|
+
sig { params(category: String).void }
|
|
120
|
+
attr_writer :category
|
|
121
|
+
|
|
122
|
+
# Supported channels: sms, whatsapp
|
|
123
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
124
|
+
attr_accessor :channels
|
|
125
|
+
|
|
126
|
+
# When the template was created
|
|
127
|
+
sig { returns(T.nilable(Time)) }
|
|
128
|
+
attr_reader :created_at
|
|
129
|
+
|
|
130
|
+
sig { params(created_at: Time).void }
|
|
131
|
+
attr_writer :created_at
|
|
132
|
+
|
|
133
|
+
# Whether the template is published and active
|
|
134
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
135
|
+
attr_reader :is_published
|
|
136
|
+
|
|
137
|
+
sig { params(is_published: T::Boolean).void }
|
|
138
|
+
attr_writer :is_published
|
|
139
|
+
|
|
140
|
+
# Template language code (e.g., en_US)
|
|
141
|
+
sig { returns(T.nilable(String)) }
|
|
142
|
+
attr_reader :language
|
|
143
|
+
|
|
144
|
+
sig { params(language: String).void }
|
|
145
|
+
attr_writer :language
|
|
146
|
+
|
|
147
|
+
# Template display name
|
|
148
|
+
sig { returns(T.nilable(String)) }
|
|
149
|
+
attr_reader :name
|
|
150
|
+
|
|
151
|
+
sig { params(name: String).void }
|
|
152
|
+
attr_writer :name
|
|
153
|
+
|
|
154
|
+
# Template status: APPROVED, PENDING, REJECTED
|
|
155
|
+
sig { returns(T.nilable(String)) }
|
|
156
|
+
attr_reader :status
|
|
157
|
+
|
|
158
|
+
sig { params(status: String).void }
|
|
159
|
+
attr_writer :status
|
|
160
|
+
|
|
161
|
+
# When the template was last updated
|
|
162
|
+
sig { returns(T.nilable(Time)) }
|
|
163
|
+
attr_accessor :updated_at
|
|
164
|
+
|
|
165
|
+
# Template variables for personalization
|
|
166
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
167
|
+
attr_accessor :variables
|
|
168
|
+
|
|
169
|
+
# Template response for v3 API
|
|
170
|
+
sig do
|
|
171
|
+
params(
|
|
172
|
+
customer_id: String,
|
|
173
|
+
id: String,
|
|
174
|
+
category: String,
|
|
175
|
+
channels: T.nilable(T::Array[String]),
|
|
176
|
+
created_at: Time,
|
|
177
|
+
is_published: T::Boolean,
|
|
178
|
+
language: String,
|
|
179
|
+
name: String,
|
|
180
|
+
status: String,
|
|
181
|
+
updated_at: T.nilable(Time),
|
|
182
|
+
variables: T.nilable(T::Array[String])
|
|
183
|
+
).returns(T.attached_class)
|
|
184
|
+
end
|
|
185
|
+
def self.new(
|
|
186
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
187
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
188
|
+
customer_id:,
|
|
189
|
+
# Unique template identifier
|
|
190
|
+
id: nil,
|
|
191
|
+
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
192
|
+
category: nil,
|
|
193
|
+
# Supported channels: sms, whatsapp
|
|
194
|
+
channels: nil,
|
|
195
|
+
# When the template was created
|
|
196
|
+
created_at: nil,
|
|
197
|
+
# Whether the template is published and active
|
|
198
|
+
is_published: nil,
|
|
199
|
+
# Template language code (e.g., en_US)
|
|
200
|
+
language: nil,
|
|
201
|
+
# Template display name
|
|
202
|
+
name: nil,
|
|
203
|
+
# Template status: APPROVED, PENDING, REJECTED
|
|
204
|
+
status: nil,
|
|
205
|
+
# When the template was last updated
|
|
206
|
+
updated_at: nil,
|
|
207
|
+
# Template variables for personalization
|
|
208
|
+
variables: nil
|
|
209
|
+
)
|
|
210
|
+
end
|
|
211
|
+
|
|
212
|
+
sig do
|
|
213
|
+
override.returns(
|
|
214
|
+
{
|
|
215
|
+
customer_id: String,
|
|
216
|
+
id: String,
|
|
217
|
+
category: String,
|
|
218
|
+
channels: T.nilable(T::Array[String]),
|
|
219
|
+
created_at: Time,
|
|
220
|
+
is_published: T::Boolean,
|
|
221
|
+
language: String,
|
|
222
|
+
name: String,
|
|
223
|
+
status: String,
|
|
224
|
+
updated_at: T.nilable(Time),
|
|
225
|
+
variables: T.nilable(T::Array[String])
|
|
226
|
+
}
|
|
227
|
+
)
|
|
228
|
+
end
|
|
229
|
+
def to_hash
|
|
230
|
+
end
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
class Error < Sentdm::Internal::Type::BaseModel
|
|
234
|
+
OrHash =
|
|
235
|
+
T.type_alias do
|
|
236
|
+
T.any(
|
|
237
|
+
Sentdm::Models::TemplateRetrieveResponse::Error,
|
|
238
|
+
Sentdm::Internal::AnyHash
|
|
239
|
+
)
|
|
240
|
+
end
|
|
241
|
+
|
|
242
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
243
|
+
sig { returns(T.nilable(String)) }
|
|
244
|
+
attr_reader :code
|
|
245
|
+
|
|
246
|
+
sig { params(code: String).void }
|
|
247
|
+
attr_writer :code
|
|
248
|
+
|
|
249
|
+
# Additional validation error details (field-level errors)
|
|
250
|
+
sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
|
|
251
|
+
attr_accessor :details
|
|
252
|
+
|
|
253
|
+
# URL to documentation about this error
|
|
254
|
+
sig { returns(T.nilable(String)) }
|
|
255
|
+
attr_accessor :doc_url
|
|
256
|
+
|
|
257
|
+
# Human-readable error message
|
|
258
|
+
sig { returns(T.nilable(String)) }
|
|
259
|
+
attr_reader :message
|
|
260
|
+
|
|
261
|
+
sig { params(message: String).void }
|
|
262
|
+
attr_writer :message
|
|
263
|
+
|
|
264
|
+
# Error information
|
|
265
|
+
sig do
|
|
266
|
+
params(
|
|
267
|
+
code: String,
|
|
268
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
269
|
+
doc_url: T.nilable(String),
|
|
270
|
+
message: String
|
|
271
|
+
).returns(T.attached_class)
|
|
272
|
+
end
|
|
273
|
+
def self.new(
|
|
274
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
275
|
+
code: nil,
|
|
276
|
+
# Additional validation error details (field-level errors)
|
|
277
|
+
details: nil,
|
|
278
|
+
# URL to documentation about this error
|
|
279
|
+
doc_url: nil,
|
|
280
|
+
# Human-readable error message
|
|
281
|
+
message: nil
|
|
282
|
+
)
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
sig do
|
|
286
|
+
override.returns(
|
|
287
|
+
{
|
|
288
|
+
code: String,
|
|
289
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
290
|
+
doc_url: T.nilable(String),
|
|
291
|
+
message: String
|
|
292
|
+
}
|
|
293
|
+
)
|
|
294
|
+
end
|
|
295
|
+
def to_hash
|
|
296
|
+
end
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
class Meta < Sentdm::Internal::Type::BaseModel
|
|
300
|
+
OrHash =
|
|
301
|
+
T.type_alias do
|
|
302
|
+
T.any(
|
|
303
|
+
Sentdm::Models::TemplateRetrieveResponse::Meta,
|
|
304
|
+
Sentdm::Internal::AnyHash
|
|
305
|
+
)
|
|
306
|
+
end
|
|
307
|
+
|
|
308
|
+
# Unique identifier for this request (for tracing and support)
|
|
309
|
+
sig { returns(T.nilable(String)) }
|
|
310
|
+
attr_reader :request_id
|
|
311
|
+
|
|
312
|
+
sig { params(request_id: String).void }
|
|
313
|
+
attr_writer :request_id
|
|
314
|
+
|
|
315
|
+
# Server timestamp when the response was generated
|
|
316
|
+
sig { returns(T.nilable(Time)) }
|
|
317
|
+
attr_reader :timestamp
|
|
318
|
+
|
|
319
|
+
sig { params(timestamp: Time).void }
|
|
320
|
+
attr_writer :timestamp
|
|
321
|
+
|
|
322
|
+
# API version used for this request
|
|
323
|
+
sig { returns(T.nilable(String)) }
|
|
324
|
+
attr_reader :version
|
|
325
|
+
|
|
326
|
+
sig { params(version: String).void }
|
|
327
|
+
attr_writer :version
|
|
328
|
+
|
|
329
|
+
# Request and response metadata
|
|
330
|
+
sig do
|
|
331
|
+
params(request_id: String, timestamp: Time, version: String).returns(
|
|
332
|
+
T.attached_class
|
|
333
|
+
)
|
|
334
|
+
end
|
|
335
|
+
def self.new(
|
|
336
|
+
# Unique identifier for this request (for tracing and support)
|
|
337
|
+
request_id: nil,
|
|
338
|
+
# Server timestamp when the response was generated
|
|
339
|
+
timestamp: nil,
|
|
340
|
+
# API version used for this request
|
|
341
|
+
version: nil
|
|
342
|
+
)
|
|
343
|
+
end
|
|
344
|
+
|
|
345
|
+
sig do
|
|
346
|
+
override.returns(
|
|
347
|
+
{ request_id: String, timestamp: Time, version: String }
|
|
348
|
+
)
|
|
349
|
+
end
|
|
350
|
+
def to_hash
|
|
351
|
+
end
|
|
352
|
+
end
|
|
353
|
+
end
|
|
354
|
+
end
|
|
355
|
+
end
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class TemplateUpdateResponse < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Sentdm::Models::TemplateUpdateResponse,
|
|
10
|
+
Sentdm::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Template response for v3 API
|
|
15
|
+
sig { returns(T.nilable(Sentdm::Models::TemplateUpdateResponse::Data)) }
|
|
16
|
+
attr_reader :data
|
|
17
|
+
|
|
18
|
+
sig do
|
|
19
|
+
params(
|
|
20
|
+
data: T.nilable(Sentdm::Models::TemplateUpdateResponse::Data::OrHash)
|
|
21
|
+
).void
|
|
22
|
+
end
|
|
23
|
+
attr_writer :data
|
|
24
|
+
|
|
25
|
+
# Error information
|
|
26
|
+
sig { returns(T.nilable(Sentdm::Models::TemplateUpdateResponse::Error)) }
|
|
27
|
+
attr_reader :error
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
error:
|
|
32
|
+
T.nilable(Sentdm::Models::TemplateUpdateResponse::Error::OrHash)
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :error
|
|
36
|
+
|
|
37
|
+
# Request and response metadata
|
|
38
|
+
sig { returns(T.nilable(Sentdm::Models::TemplateUpdateResponse::Meta)) }
|
|
39
|
+
attr_reader :meta
|
|
40
|
+
|
|
41
|
+
sig do
|
|
42
|
+
params(meta: Sentdm::Models::TemplateUpdateResponse::Meta::OrHash).void
|
|
43
|
+
end
|
|
44
|
+
attr_writer :meta
|
|
45
|
+
|
|
46
|
+
# Indicates whether the request was successful
|
|
47
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
48
|
+
attr_reader :success
|
|
49
|
+
|
|
50
|
+
sig { params(success: T::Boolean).void }
|
|
51
|
+
attr_writer :success
|
|
52
|
+
|
|
53
|
+
# Standard API response envelope for all v3 endpoints
|
|
54
|
+
sig do
|
|
55
|
+
params(
|
|
56
|
+
data: T.nilable(Sentdm::Models::TemplateUpdateResponse::Data::OrHash),
|
|
57
|
+
error:
|
|
58
|
+
T.nilable(Sentdm::Models::TemplateUpdateResponse::Error::OrHash),
|
|
59
|
+
meta: Sentdm::Models::TemplateUpdateResponse::Meta::OrHash,
|
|
60
|
+
success: T::Boolean
|
|
61
|
+
).returns(T.attached_class)
|
|
62
|
+
end
|
|
63
|
+
def self.new(
|
|
64
|
+
# Template response for v3 API
|
|
65
|
+
data: nil,
|
|
66
|
+
# Error information
|
|
67
|
+
error: nil,
|
|
68
|
+
# Request and response metadata
|
|
69
|
+
meta: nil,
|
|
70
|
+
# Indicates whether the request was successful
|
|
71
|
+
success: nil
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
sig do
|
|
76
|
+
override.returns(
|
|
77
|
+
{
|
|
78
|
+
data: T.nilable(Sentdm::Models::TemplateUpdateResponse::Data),
|
|
79
|
+
error: T.nilable(Sentdm::Models::TemplateUpdateResponse::Error),
|
|
80
|
+
meta: Sentdm::Models::TemplateUpdateResponse::Meta,
|
|
81
|
+
success: T::Boolean
|
|
82
|
+
}
|
|
83
|
+
)
|
|
84
|
+
end
|
|
85
|
+
def to_hash
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
class Data < Sentdm::Internal::Type::BaseModel
|
|
89
|
+
OrHash =
|
|
90
|
+
T.type_alias do
|
|
91
|
+
T.any(
|
|
92
|
+
Sentdm::Models::TemplateUpdateResponse::Data,
|
|
93
|
+
Sentdm::Internal::AnyHash
|
|
94
|
+
)
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
98
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
99
|
+
sig { returns(String) }
|
|
100
|
+
attr_accessor :customer_id
|
|
101
|
+
|
|
102
|
+
# Unique template identifier
|
|
103
|
+
sig { returns(T.nilable(String)) }
|
|
104
|
+
attr_reader :id
|
|
105
|
+
|
|
106
|
+
sig { params(id: String).void }
|
|
107
|
+
attr_writer :id
|
|
108
|
+
|
|
109
|
+
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
110
|
+
sig { returns(T.nilable(String)) }
|
|
111
|
+
attr_reader :category
|
|
112
|
+
|
|
113
|
+
sig { params(category: String).void }
|
|
114
|
+
attr_writer :category
|
|
115
|
+
|
|
116
|
+
# Supported channels: sms, whatsapp
|
|
117
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
118
|
+
attr_accessor :channels
|
|
119
|
+
|
|
120
|
+
# When the template was created
|
|
121
|
+
sig { returns(T.nilable(Time)) }
|
|
122
|
+
attr_reader :created_at
|
|
123
|
+
|
|
124
|
+
sig { params(created_at: Time).void }
|
|
125
|
+
attr_writer :created_at
|
|
126
|
+
|
|
127
|
+
# Whether the template is published and active
|
|
128
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
129
|
+
attr_reader :is_published
|
|
130
|
+
|
|
131
|
+
sig { params(is_published: T::Boolean).void }
|
|
132
|
+
attr_writer :is_published
|
|
133
|
+
|
|
134
|
+
# Template language code (e.g., en_US)
|
|
135
|
+
sig { returns(T.nilable(String)) }
|
|
136
|
+
attr_reader :language
|
|
137
|
+
|
|
138
|
+
sig { params(language: String).void }
|
|
139
|
+
attr_writer :language
|
|
140
|
+
|
|
141
|
+
# Template display name
|
|
142
|
+
sig { returns(T.nilable(String)) }
|
|
143
|
+
attr_reader :name
|
|
144
|
+
|
|
145
|
+
sig { params(name: String).void }
|
|
146
|
+
attr_writer :name
|
|
147
|
+
|
|
148
|
+
# Template status: APPROVED, PENDING, REJECTED
|
|
149
|
+
sig { returns(T.nilable(String)) }
|
|
150
|
+
attr_reader :status
|
|
151
|
+
|
|
152
|
+
sig { params(status: String).void }
|
|
153
|
+
attr_writer :status
|
|
154
|
+
|
|
155
|
+
# When the template was last updated
|
|
156
|
+
sig { returns(T.nilable(Time)) }
|
|
157
|
+
attr_accessor :updated_at
|
|
158
|
+
|
|
159
|
+
# Template variables for personalization
|
|
160
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
161
|
+
attr_accessor :variables
|
|
162
|
+
|
|
163
|
+
# Template response for v3 API
|
|
164
|
+
sig do
|
|
165
|
+
params(
|
|
166
|
+
customer_id: String,
|
|
167
|
+
id: String,
|
|
168
|
+
category: String,
|
|
169
|
+
channels: T.nilable(T::Array[String]),
|
|
170
|
+
created_at: Time,
|
|
171
|
+
is_published: T::Boolean,
|
|
172
|
+
language: String,
|
|
173
|
+
name: String,
|
|
174
|
+
status: String,
|
|
175
|
+
updated_at: T.nilable(Time),
|
|
176
|
+
variables: T.nilable(T::Array[String])
|
|
177
|
+
).returns(T.attached_class)
|
|
178
|
+
end
|
|
179
|
+
def self.new(
|
|
180
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
181
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
182
|
+
customer_id:,
|
|
183
|
+
# Unique template identifier
|
|
184
|
+
id: nil,
|
|
185
|
+
# Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
186
|
+
category: nil,
|
|
187
|
+
# Supported channels: sms, whatsapp
|
|
188
|
+
channels: nil,
|
|
189
|
+
# When the template was created
|
|
190
|
+
created_at: nil,
|
|
191
|
+
# Whether the template is published and active
|
|
192
|
+
is_published: nil,
|
|
193
|
+
# Template language code (e.g., en_US)
|
|
194
|
+
language: nil,
|
|
195
|
+
# Template display name
|
|
196
|
+
name: nil,
|
|
197
|
+
# Template status: APPROVED, PENDING, REJECTED
|
|
198
|
+
status: nil,
|
|
199
|
+
# When the template was last updated
|
|
200
|
+
updated_at: nil,
|
|
201
|
+
# Template variables for personalization
|
|
202
|
+
variables: nil
|
|
203
|
+
)
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
sig do
|
|
207
|
+
override.returns(
|
|
208
|
+
{
|
|
209
|
+
customer_id: String,
|
|
210
|
+
id: String,
|
|
211
|
+
category: String,
|
|
212
|
+
channels: T.nilable(T::Array[String]),
|
|
213
|
+
created_at: Time,
|
|
214
|
+
is_published: T::Boolean,
|
|
215
|
+
language: String,
|
|
216
|
+
name: String,
|
|
217
|
+
status: String,
|
|
218
|
+
updated_at: T.nilable(Time),
|
|
219
|
+
variables: T.nilable(T::Array[String])
|
|
220
|
+
}
|
|
221
|
+
)
|
|
222
|
+
end
|
|
223
|
+
def to_hash
|
|
224
|
+
end
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
class Error < Sentdm::Internal::Type::BaseModel
|
|
228
|
+
OrHash =
|
|
229
|
+
T.type_alias do
|
|
230
|
+
T.any(
|
|
231
|
+
Sentdm::Models::TemplateUpdateResponse::Error,
|
|
232
|
+
Sentdm::Internal::AnyHash
|
|
233
|
+
)
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
237
|
+
sig { returns(T.nilable(String)) }
|
|
238
|
+
attr_reader :code
|
|
239
|
+
|
|
240
|
+
sig { params(code: String).void }
|
|
241
|
+
attr_writer :code
|
|
242
|
+
|
|
243
|
+
# Additional validation error details (field-level errors)
|
|
244
|
+
sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
|
|
245
|
+
attr_accessor :details
|
|
246
|
+
|
|
247
|
+
# URL to documentation about this error
|
|
248
|
+
sig { returns(T.nilable(String)) }
|
|
249
|
+
attr_accessor :doc_url
|
|
250
|
+
|
|
251
|
+
# Human-readable error message
|
|
252
|
+
sig { returns(T.nilable(String)) }
|
|
253
|
+
attr_reader :message
|
|
254
|
+
|
|
255
|
+
sig { params(message: String).void }
|
|
256
|
+
attr_writer :message
|
|
257
|
+
|
|
258
|
+
# Error information
|
|
259
|
+
sig do
|
|
260
|
+
params(
|
|
261
|
+
code: String,
|
|
262
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
263
|
+
doc_url: T.nilable(String),
|
|
264
|
+
message: String
|
|
265
|
+
).returns(T.attached_class)
|
|
266
|
+
end
|
|
267
|
+
def self.new(
|
|
268
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
269
|
+
code: nil,
|
|
270
|
+
# Additional validation error details (field-level errors)
|
|
271
|
+
details: nil,
|
|
272
|
+
# URL to documentation about this error
|
|
273
|
+
doc_url: nil,
|
|
274
|
+
# Human-readable error message
|
|
275
|
+
message: nil
|
|
276
|
+
)
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
sig do
|
|
280
|
+
override.returns(
|
|
281
|
+
{
|
|
282
|
+
code: String,
|
|
283
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
284
|
+
doc_url: T.nilable(String),
|
|
285
|
+
message: String
|
|
286
|
+
}
|
|
287
|
+
)
|
|
288
|
+
end
|
|
289
|
+
def to_hash
|
|
290
|
+
end
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
class Meta < Sentdm::Internal::Type::BaseModel
|
|
294
|
+
OrHash =
|
|
295
|
+
T.type_alias do
|
|
296
|
+
T.any(
|
|
297
|
+
Sentdm::Models::TemplateUpdateResponse::Meta,
|
|
298
|
+
Sentdm::Internal::AnyHash
|
|
299
|
+
)
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
# Unique identifier for this request (for tracing and support)
|
|
303
|
+
sig { returns(T.nilable(String)) }
|
|
304
|
+
attr_reader :request_id
|
|
305
|
+
|
|
306
|
+
sig { params(request_id: String).void }
|
|
307
|
+
attr_writer :request_id
|
|
308
|
+
|
|
309
|
+
# Server timestamp when the response was generated
|
|
310
|
+
sig { returns(T.nilable(Time)) }
|
|
311
|
+
attr_reader :timestamp
|
|
312
|
+
|
|
313
|
+
sig { params(timestamp: Time).void }
|
|
314
|
+
attr_writer :timestamp
|
|
315
|
+
|
|
316
|
+
# API version used for this request
|
|
317
|
+
sig { returns(T.nilable(String)) }
|
|
318
|
+
attr_reader :version
|
|
319
|
+
|
|
320
|
+
sig { params(version: String).void }
|
|
321
|
+
attr_writer :version
|
|
322
|
+
|
|
323
|
+
# Request and response metadata
|
|
324
|
+
sig do
|
|
325
|
+
params(request_id: String, timestamp: Time, version: String).returns(
|
|
326
|
+
T.attached_class
|
|
327
|
+
)
|
|
328
|
+
end
|
|
329
|
+
def self.new(
|
|
330
|
+
# Unique identifier for this request (for tracing and support)
|
|
331
|
+
request_id: nil,
|
|
332
|
+
# Server timestamp when the response was generated
|
|
333
|
+
timestamp: nil,
|
|
334
|
+
# API version used for this request
|
|
335
|
+
version: nil
|
|
336
|
+
)
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
sig do
|
|
340
|
+
override.returns(
|
|
341
|
+
{ request_id: String, timestamp: Time, version: String }
|
|
342
|
+
)
|
|
343
|
+
end
|
|
344
|
+
def to_hash
|
|
345
|
+
end
|
|
346
|
+
end
|
|
347
|
+
end
|
|
348
|
+
end
|
|
349
|
+
end
|