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,409 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class ContactRetrieveResponse < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Sentdm::Models::ContactRetrieveResponse,
|
|
10
|
+
Sentdm::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Contact response for v3 API Uses snake_case for JSON property names
|
|
15
|
+
sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Data)) }
|
|
16
|
+
attr_reader :data
|
|
17
|
+
|
|
18
|
+
sig do
|
|
19
|
+
params(
|
|
20
|
+
data: T.nilable(Sentdm::Models::ContactRetrieveResponse::Data::OrHash)
|
|
21
|
+
).void
|
|
22
|
+
end
|
|
23
|
+
attr_writer :data
|
|
24
|
+
|
|
25
|
+
# Error information
|
|
26
|
+
sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Error)) }
|
|
27
|
+
attr_reader :error
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
error:
|
|
32
|
+
T.nilable(Sentdm::Models::ContactRetrieveResponse::Error::OrHash)
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :error
|
|
36
|
+
|
|
37
|
+
# Request and response metadata
|
|
38
|
+
sig { returns(T.nilable(Sentdm::Models::ContactRetrieveResponse::Meta)) }
|
|
39
|
+
attr_reader :meta
|
|
40
|
+
|
|
41
|
+
sig do
|
|
42
|
+
params(meta: Sentdm::Models::ContactRetrieveResponse::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:
|
|
57
|
+
T.nilable(Sentdm::Models::ContactRetrieveResponse::Data::OrHash),
|
|
58
|
+
error:
|
|
59
|
+
T.nilable(Sentdm::Models::ContactRetrieveResponse::Error::OrHash),
|
|
60
|
+
meta: Sentdm::Models::ContactRetrieveResponse::Meta::OrHash,
|
|
61
|
+
success: T::Boolean
|
|
62
|
+
).returns(T.attached_class)
|
|
63
|
+
end
|
|
64
|
+
def self.new(
|
|
65
|
+
# Contact response for v3 API Uses snake_case for JSON property names
|
|
66
|
+
data: nil,
|
|
67
|
+
# Error information
|
|
68
|
+
error: nil,
|
|
69
|
+
# Request and response metadata
|
|
70
|
+
meta: nil,
|
|
71
|
+
# Indicates whether the request was successful
|
|
72
|
+
success: nil
|
|
73
|
+
)
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
sig do
|
|
77
|
+
override.returns(
|
|
78
|
+
{
|
|
79
|
+
data: T.nilable(Sentdm::Models::ContactRetrieveResponse::Data),
|
|
80
|
+
error: T.nilable(Sentdm::Models::ContactRetrieveResponse::Error),
|
|
81
|
+
meta: Sentdm::Models::ContactRetrieveResponse::Meta,
|
|
82
|
+
success: T::Boolean
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
end
|
|
86
|
+
def to_hash
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
class Data < Sentdm::Internal::Type::BaseModel
|
|
90
|
+
OrHash =
|
|
91
|
+
T.type_alias do
|
|
92
|
+
T.any(
|
|
93
|
+
Sentdm::Models::ContactRetrieveResponse::Data,
|
|
94
|
+
Sentdm::Internal::AnyHash
|
|
95
|
+
)
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# Unique identifier for the contact
|
|
99
|
+
sig { returns(T.nilable(String)) }
|
|
100
|
+
attr_reader :id
|
|
101
|
+
|
|
102
|
+
sig { params(id: String).void }
|
|
103
|
+
attr_writer :id
|
|
104
|
+
|
|
105
|
+
# Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
|
|
106
|
+
sig { returns(T.nilable(String)) }
|
|
107
|
+
attr_reader :available_channels
|
|
108
|
+
|
|
109
|
+
sig { params(available_channels: String).void }
|
|
110
|
+
attr_writer :available_channels
|
|
111
|
+
|
|
112
|
+
# Country calling code (e.g., 1 for US/Canada)
|
|
113
|
+
sig { returns(T.nilable(String)) }
|
|
114
|
+
attr_reader :country_code
|
|
115
|
+
|
|
116
|
+
sig { params(country_code: String).void }
|
|
117
|
+
attr_writer :country_code
|
|
118
|
+
|
|
119
|
+
# When the contact was created
|
|
120
|
+
sig { returns(T.nilable(Time)) }
|
|
121
|
+
attr_reader :created_at
|
|
122
|
+
|
|
123
|
+
sig { params(created_at: Time).void }
|
|
124
|
+
attr_writer :created_at
|
|
125
|
+
|
|
126
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
127
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
128
|
+
sig { returns(T.nilable(String)) }
|
|
129
|
+
attr_reader :customer_id
|
|
130
|
+
|
|
131
|
+
sig { params(customer_id: String).void }
|
|
132
|
+
attr_writer :customer_id
|
|
133
|
+
|
|
134
|
+
# Default messaging channel to use (e.g., "sms" or "whatsapp")
|
|
135
|
+
sig { returns(T.nilable(String)) }
|
|
136
|
+
attr_reader :default_channel
|
|
137
|
+
|
|
138
|
+
sig { params(default_channel: String).void }
|
|
139
|
+
attr_writer :default_channel
|
|
140
|
+
|
|
141
|
+
# Phone number in E.164 format (e.g., +1234567890)
|
|
142
|
+
sig { returns(T.nilable(String)) }
|
|
143
|
+
attr_reader :format_e164
|
|
144
|
+
|
|
145
|
+
sig { params(format_e164: String).void }
|
|
146
|
+
attr_writer :format_e164
|
|
147
|
+
|
|
148
|
+
# Phone number in international format (e.g., +1 234-567-890)
|
|
149
|
+
sig { returns(T.nilable(String)) }
|
|
150
|
+
attr_reader :format_international
|
|
151
|
+
|
|
152
|
+
sig { params(format_international: String).void }
|
|
153
|
+
attr_writer :format_international
|
|
154
|
+
|
|
155
|
+
# Phone number in national format (e.g., (234) 567-890)
|
|
156
|
+
sig { returns(T.nilable(String)) }
|
|
157
|
+
attr_reader :format_national
|
|
158
|
+
|
|
159
|
+
sig { params(format_national: String).void }
|
|
160
|
+
attr_writer :format_national
|
|
161
|
+
|
|
162
|
+
# Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
|
|
163
|
+
sig { returns(T.nilable(String)) }
|
|
164
|
+
attr_reader :format_rfc
|
|
165
|
+
|
|
166
|
+
sig { params(format_rfc: String).void }
|
|
167
|
+
attr_writer :format_rfc
|
|
168
|
+
|
|
169
|
+
# Always false. Contacts are no longer shared or inherited between sender profiles
|
|
170
|
+
# — a profile sees only the contacts it owns. Retained so existing v3 clients
|
|
171
|
+
# reading is_inherited keep deserializing; it carries no information.
|
|
172
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
173
|
+
attr_reader :is_inherited
|
|
174
|
+
|
|
175
|
+
sig { params(is_inherited: T::Boolean).void }
|
|
176
|
+
attr_writer :is_inherited
|
|
177
|
+
|
|
178
|
+
# Whether the contact has opted out of messaging. Single source of truth — opt-out
|
|
179
|
+
# is per-contact, not per-channel.
|
|
180
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
181
|
+
attr_reader :opt_out
|
|
182
|
+
|
|
183
|
+
sig { params(opt_out: T::Boolean).void }
|
|
184
|
+
attr_writer :opt_out
|
|
185
|
+
|
|
186
|
+
# Phone number in original format
|
|
187
|
+
sig { returns(T.nilable(String)) }
|
|
188
|
+
attr_reader :phone_number
|
|
189
|
+
|
|
190
|
+
sig { params(phone_number: String).void }
|
|
191
|
+
attr_writer :phone_number
|
|
192
|
+
|
|
193
|
+
# ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
|
|
194
|
+
sig { returns(T.nilable(String)) }
|
|
195
|
+
attr_reader :region_code
|
|
196
|
+
|
|
197
|
+
sig { params(region_code: String).void }
|
|
198
|
+
attr_writer :region_code
|
|
199
|
+
|
|
200
|
+
# When the contact was last updated
|
|
201
|
+
sig { returns(T.nilable(Time)) }
|
|
202
|
+
attr_accessor :updated_at
|
|
203
|
+
|
|
204
|
+
# Contact response for v3 API Uses snake_case for JSON property names
|
|
205
|
+
sig do
|
|
206
|
+
params(
|
|
207
|
+
id: String,
|
|
208
|
+
available_channels: String,
|
|
209
|
+
country_code: String,
|
|
210
|
+
created_at: Time,
|
|
211
|
+
customer_id: String,
|
|
212
|
+
default_channel: String,
|
|
213
|
+
format_e164: String,
|
|
214
|
+
format_international: String,
|
|
215
|
+
format_national: String,
|
|
216
|
+
format_rfc: String,
|
|
217
|
+
is_inherited: T::Boolean,
|
|
218
|
+
opt_out: T::Boolean,
|
|
219
|
+
phone_number: String,
|
|
220
|
+
region_code: String,
|
|
221
|
+
updated_at: T.nilable(Time)
|
|
222
|
+
).returns(T.attached_class)
|
|
223
|
+
end
|
|
224
|
+
def self.new(
|
|
225
|
+
# Unique identifier for the contact
|
|
226
|
+
id: nil,
|
|
227
|
+
# Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
|
|
228
|
+
available_channels: nil,
|
|
229
|
+
# Country calling code (e.g., 1 for US/Canada)
|
|
230
|
+
country_code: nil,
|
|
231
|
+
# When the contact was created
|
|
232
|
+
created_at: nil,
|
|
233
|
+
# Which customer owns this — the key's own, or the profile named in x-profile-id.
|
|
234
|
+
# Says whose resource this is, which the resource's own id does not.
|
|
235
|
+
customer_id: nil,
|
|
236
|
+
# Default messaging channel to use (e.g., "sms" or "whatsapp")
|
|
237
|
+
default_channel: nil,
|
|
238
|
+
# Phone number in E.164 format (e.g., +1234567890)
|
|
239
|
+
format_e164: nil,
|
|
240
|
+
# Phone number in international format (e.g., +1 234-567-890)
|
|
241
|
+
format_international: nil,
|
|
242
|
+
# Phone number in national format (e.g., (234) 567-890)
|
|
243
|
+
format_national: nil,
|
|
244
|
+
# Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
|
|
245
|
+
format_rfc: nil,
|
|
246
|
+
# Always false. Contacts are no longer shared or inherited between sender profiles
|
|
247
|
+
# — a profile sees only the contacts it owns. Retained so existing v3 clients
|
|
248
|
+
# reading is_inherited keep deserializing; it carries no information.
|
|
249
|
+
is_inherited: nil,
|
|
250
|
+
# Whether the contact has opted out of messaging. Single source of truth — opt-out
|
|
251
|
+
# is per-contact, not per-channel.
|
|
252
|
+
opt_out: nil,
|
|
253
|
+
# Phone number in original format
|
|
254
|
+
phone_number: nil,
|
|
255
|
+
# ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
|
|
256
|
+
region_code: nil,
|
|
257
|
+
# When the contact was last updated
|
|
258
|
+
updated_at: nil
|
|
259
|
+
)
|
|
260
|
+
end
|
|
261
|
+
|
|
262
|
+
sig do
|
|
263
|
+
override.returns(
|
|
264
|
+
{
|
|
265
|
+
id: String,
|
|
266
|
+
available_channels: String,
|
|
267
|
+
country_code: String,
|
|
268
|
+
created_at: Time,
|
|
269
|
+
customer_id: String,
|
|
270
|
+
default_channel: String,
|
|
271
|
+
format_e164: String,
|
|
272
|
+
format_international: String,
|
|
273
|
+
format_national: String,
|
|
274
|
+
format_rfc: String,
|
|
275
|
+
is_inherited: T::Boolean,
|
|
276
|
+
opt_out: T::Boolean,
|
|
277
|
+
phone_number: String,
|
|
278
|
+
region_code: String,
|
|
279
|
+
updated_at: T.nilable(Time)
|
|
280
|
+
}
|
|
281
|
+
)
|
|
282
|
+
end
|
|
283
|
+
def to_hash
|
|
284
|
+
end
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
class Error < Sentdm::Internal::Type::BaseModel
|
|
288
|
+
OrHash =
|
|
289
|
+
T.type_alias do
|
|
290
|
+
T.any(
|
|
291
|
+
Sentdm::Models::ContactRetrieveResponse::Error,
|
|
292
|
+
Sentdm::Internal::AnyHash
|
|
293
|
+
)
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
297
|
+
sig { returns(T.nilable(String)) }
|
|
298
|
+
attr_reader :code
|
|
299
|
+
|
|
300
|
+
sig { params(code: String).void }
|
|
301
|
+
attr_writer :code
|
|
302
|
+
|
|
303
|
+
# Additional validation error details (field-level errors)
|
|
304
|
+
sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
|
|
305
|
+
attr_accessor :details
|
|
306
|
+
|
|
307
|
+
# URL to documentation about this error
|
|
308
|
+
sig { returns(T.nilable(String)) }
|
|
309
|
+
attr_accessor :doc_url
|
|
310
|
+
|
|
311
|
+
# Human-readable error message
|
|
312
|
+
sig { returns(T.nilable(String)) }
|
|
313
|
+
attr_reader :message
|
|
314
|
+
|
|
315
|
+
sig { params(message: String).void }
|
|
316
|
+
attr_writer :message
|
|
317
|
+
|
|
318
|
+
# Error information
|
|
319
|
+
sig do
|
|
320
|
+
params(
|
|
321
|
+
code: String,
|
|
322
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
323
|
+
doc_url: T.nilable(String),
|
|
324
|
+
message: String
|
|
325
|
+
).returns(T.attached_class)
|
|
326
|
+
end
|
|
327
|
+
def self.new(
|
|
328
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
329
|
+
code: nil,
|
|
330
|
+
# Additional validation error details (field-level errors)
|
|
331
|
+
details: nil,
|
|
332
|
+
# URL to documentation about this error
|
|
333
|
+
doc_url: nil,
|
|
334
|
+
# Human-readable error message
|
|
335
|
+
message: nil
|
|
336
|
+
)
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
sig do
|
|
340
|
+
override.returns(
|
|
341
|
+
{
|
|
342
|
+
code: String,
|
|
343
|
+
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
344
|
+
doc_url: T.nilable(String),
|
|
345
|
+
message: String
|
|
346
|
+
}
|
|
347
|
+
)
|
|
348
|
+
end
|
|
349
|
+
def to_hash
|
|
350
|
+
end
|
|
351
|
+
end
|
|
352
|
+
|
|
353
|
+
class Meta < Sentdm::Internal::Type::BaseModel
|
|
354
|
+
OrHash =
|
|
355
|
+
T.type_alias do
|
|
356
|
+
T.any(
|
|
357
|
+
Sentdm::Models::ContactRetrieveResponse::Meta,
|
|
358
|
+
Sentdm::Internal::AnyHash
|
|
359
|
+
)
|
|
360
|
+
end
|
|
361
|
+
|
|
362
|
+
# Unique identifier for this request (for tracing and support)
|
|
363
|
+
sig { returns(T.nilable(String)) }
|
|
364
|
+
attr_reader :request_id
|
|
365
|
+
|
|
366
|
+
sig { params(request_id: String).void }
|
|
367
|
+
attr_writer :request_id
|
|
368
|
+
|
|
369
|
+
# Server timestamp when the response was generated
|
|
370
|
+
sig { returns(T.nilable(Time)) }
|
|
371
|
+
attr_reader :timestamp
|
|
372
|
+
|
|
373
|
+
sig { params(timestamp: Time).void }
|
|
374
|
+
attr_writer :timestamp
|
|
375
|
+
|
|
376
|
+
# API version used for this request
|
|
377
|
+
sig { returns(T.nilable(String)) }
|
|
378
|
+
attr_reader :version
|
|
379
|
+
|
|
380
|
+
sig { params(version: String).void }
|
|
381
|
+
attr_writer :version
|
|
382
|
+
|
|
383
|
+
# Request and response metadata
|
|
384
|
+
sig do
|
|
385
|
+
params(request_id: String, timestamp: Time, version: String).returns(
|
|
386
|
+
T.attached_class
|
|
387
|
+
)
|
|
388
|
+
end
|
|
389
|
+
def self.new(
|
|
390
|
+
# Unique identifier for this request (for tracing and support)
|
|
391
|
+
request_id: nil,
|
|
392
|
+
# Server timestamp when the response was generated
|
|
393
|
+
timestamp: nil,
|
|
394
|
+
# API version used for this request
|
|
395
|
+
version: nil
|
|
396
|
+
)
|
|
397
|
+
end
|
|
398
|
+
|
|
399
|
+
sig do
|
|
400
|
+
override.returns(
|
|
401
|
+
{ request_id: String, timestamp: Time, version: String }
|
|
402
|
+
)
|
|
403
|
+
end
|
|
404
|
+
def to_hash
|
|
405
|
+
end
|
|
406
|
+
end
|
|
407
|
+
end
|
|
408
|
+
end
|
|
409
|
+
end
|