sentdm 0.27.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 +13 -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/me_retrieve_response.rb +242 -12
- 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_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 +162 -13
- 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 +0 -52
- 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 +11 -1
- data/lib/sentdm/resources/numbers.rb +6 -1
- data/lib/sentdm/resources/profiles/campaigns.rb +47 -9
- data/lib/sentdm/resources/profiles.rb +134 -58
- data/lib/sentdm/resources/templates.rb +14 -8
- data/lib/sentdm/resources/users.rb +12 -7
- data/lib/sentdm/resources/webhooks.rb +19 -9
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +22 -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/me_retrieve_response.rbi +367 -16
- 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_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 +319 -15
- 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 +0 -54
- 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 +11 -1
- data/rbi/sentdm/resources/numbers.rbi +6 -1
- data/rbi/sentdm/resources/profiles/campaigns.rbi +36 -6
- data/rbi/sentdm/resources/profiles.rbi +174 -66
- data/rbi/sentdm/resources/templates.rbi +15 -5
- data/rbi/sentdm/resources/users.rbi +9 -4
- 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/me_retrieve_response.rbs +176 -18
- 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_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 +142 -14
- 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 +0 -52
- 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 +68 -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 -605
- 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 -872
- 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
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
+
# Inbound and outbound messages, grouped by the person they are with.
|
|
6
|
+
#
|
|
7
|
+
# A conversation is the thread for one contact across every channel — a reply by
|
|
8
|
+
# SMS and one by WhatsApp belong to the same conversation, because they are the
|
|
9
|
+
# same person talking to you.
|
|
10
|
+
#
|
|
11
|
+
# Read-only. Sending is **Messages**; a reply arrives here and through your
|
|
12
|
+
# webhooks.
|
|
5
13
|
class Conversations
|
|
6
14
|
# Some parameter documentations has been truncated, see
|
|
7
15
|
# {Sentdm::Models::ConversationListParams} for more details.
|
|
@@ -19,7 +27,7 @@ module Sentdm
|
|
|
19
27
|
#
|
|
20
28
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
21
29
|
#
|
|
22
|
-
# @return [Sentdm::Models::
|
|
30
|
+
# @return [Sentdm::Models::ConversationListResponse]
|
|
23
31
|
#
|
|
24
32
|
# @see Sentdm::Models::ConversationListParams
|
|
25
33
|
def list(params)
|
|
@@ -31,7 +39,7 @@ module Sentdm
|
|
|
31
39
|
path: "v3/conversations",
|
|
32
40
|
query: query,
|
|
33
41
|
headers: parsed.except(*query_params).transform_keys(x_profile_id: "x-profile-id"),
|
|
34
|
-
model: Sentdm::
|
|
42
|
+
model: Sentdm::Models::ConversationListResponse,
|
|
35
43
|
options: options
|
|
36
44
|
)
|
|
37
45
|
end
|
|
@@ -54,7 +62,7 @@ module Sentdm
|
|
|
54
62
|
#
|
|
55
63
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
56
64
|
#
|
|
57
|
-
# @return [Sentdm::Models::
|
|
65
|
+
# @return [Sentdm::Models::ConversationListMessagesResponse]
|
|
58
66
|
#
|
|
59
67
|
# @see Sentdm::Models::ConversationListMessagesParams
|
|
60
68
|
def list_messages(id, params)
|
|
@@ -66,7 +74,7 @@ module Sentdm
|
|
|
66
74
|
path: ["v3/conversations/%1$s", id],
|
|
67
75
|
query: query,
|
|
68
76
|
headers: parsed.except(*query_params).transform_keys(x_profile_id: "x-profile-id"),
|
|
69
|
-
model: Sentdm::
|
|
77
|
+
model: Sentdm::Models::ConversationListMessagesResponse,
|
|
70
78
|
options: options
|
|
71
79
|
)
|
|
72
80
|
end
|
data/lib/sentdm/resources/me.rb
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
-
#
|
|
5
|
+
# Who the current key is.
|
|
6
|
+
#
|
|
7
|
+
# `GET /v3/me` answers with the account the key authenticates as, which is the
|
|
8
|
+
# quickest way to tell a live key from a test one, an organization key from a
|
|
9
|
+
# sender profile's, and to confirm `x-profile-id` resolved to the profile you
|
|
10
|
+
# meant.
|
|
6
11
|
class Me
|
|
7
12
|
# Some parameter documentations has been truncated, see
|
|
8
13
|
# {Sentdm::Models::MeRetrieveParams} for more details.
|
|
@@ -2,7 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
-
# Send and
|
|
5
|
+
# Send a message and follow what happened to it.
|
|
6
|
+
#
|
|
7
|
+
# One endpoint sends on any channel: pass `channel: "sent"` and we pick between
|
|
8
|
+
# SMS, WhatsApp and RCS per recipient using your routing rules, or name a channel
|
|
9
|
+
# to pin it. A send is accepted asynchronously — `POST /v3/messages` returns an
|
|
10
|
+
# id, and delivery is reported through `GET /v3/messages/{id}`, its activities, or
|
|
11
|
+
# a webhook.
|
|
12
|
+
#
|
|
13
|
+
# **A message needs a sender.** What you can send, where, and at what cost is
|
|
14
|
+
# decided by the markets under **Channels** — so a recipient in a country you hold
|
|
15
|
+
# no sender for is refused here rather than queued.
|
|
6
16
|
class Messages
|
|
7
17
|
# Some parameter documentations has been truncated, see
|
|
8
18
|
# {Sentdm::Models::MessageRetrieveActivitiesParams} for more details.
|
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
-
#
|
|
5
|
+
# What a phone number actually is, before you send to it.
|
|
6
|
+
#
|
|
7
|
+
# A lookup returns the number's country, line type and carrier, which is what
|
|
8
|
+
# decides whether it is reachable on a channel and what it costs. Worth doing on
|
|
9
|
+
# import rather than on send: a landline in a contact list is a message that can
|
|
10
|
+
# never be delivered.
|
|
6
11
|
class Numbers
|
|
7
12
|
# Some parameter documentations has been truncated, see
|
|
8
13
|
# {Sentdm::Models::NumberLookupParams} for more details.
|
|
@@ -3,11 +3,25 @@
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
5
|
class Profiles
|
|
6
|
-
#
|
|
6
|
+
# **Deprecated — use Sender Profiles.**
|
|
7
|
+
#
|
|
8
|
+
# The original profile resource, kept because it has live callers. It still works,
|
|
9
|
+
# and its replacement is `/v3/sender-profiles`, which takes the identity and the
|
|
10
|
+
# campaign in one call instead of across three.
|
|
11
|
+
#
|
|
12
|
+
# New integrations should not start here.
|
|
7
13
|
class Campaigns
|
|
14
|
+
# @deprecated
|
|
15
|
+
#
|
|
8
16
|
# Some parameter documentations has been truncated, see
|
|
9
17
|
# {Sentdm::Models::Profiles::CampaignCreateParams} for more details.
|
|
10
18
|
#
|
|
19
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
20
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
21
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
22
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
23
|
+
# explicitly.
|
|
24
|
+
#
|
|
11
25
|
# Creates a new campaign scoped under the brand of the specified profile. Each
|
|
12
26
|
# campaign must include at least one use case with sample messages.
|
|
13
27
|
#
|
|
@@ -15,7 +29,7 @@ module Sentdm
|
|
|
15
29
|
#
|
|
16
30
|
# @param profile_id [String] Path param: Profile ID from route
|
|
17
31
|
#
|
|
18
|
-
# @param campaign [Sentdm::Models::Profiles::
|
|
32
|
+
# @param campaign [Sentdm::Models::Profiles::CampaignCreateParams::Campaign] Body param: Campaign data for create or update operation
|
|
19
33
|
#
|
|
20
34
|
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
21
35
|
#
|
|
@@ -25,7 +39,7 @@ module Sentdm
|
|
|
25
39
|
#
|
|
26
40
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
27
41
|
#
|
|
28
|
-
# @return [Sentdm::Models::Profiles::
|
|
42
|
+
# @return [Sentdm::Models::Profiles::CampaignCreateResponse]
|
|
29
43
|
#
|
|
30
44
|
# @see Sentdm::Models::Profiles::CampaignCreateParams
|
|
31
45
|
def create(profile_id, params)
|
|
@@ -36,14 +50,22 @@ module Sentdm
|
|
|
36
50
|
path: ["v3/profiles/%1$s/campaigns", profile_id],
|
|
37
51
|
headers: parsed.slice(*header_params.keys).transform_keys(header_params),
|
|
38
52
|
body: parsed.except(*header_params.keys),
|
|
39
|
-
model: Sentdm::Profiles::
|
|
53
|
+
model: Sentdm::Models::Profiles::CampaignCreateResponse,
|
|
40
54
|
options: options
|
|
41
55
|
)
|
|
42
56
|
end
|
|
43
57
|
|
|
58
|
+
# @deprecated
|
|
59
|
+
#
|
|
44
60
|
# Some parameter documentations has been truncated, see
|
|
45
61
|
# {Sentdm::Models::Profiles::CampaignUpdateParams} for more details.
|
|
46
62
|
#
|
|
63
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
64
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
65
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
66
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
67
|
+
# explicitly.
|
|
68
|
+
#
|
|
47
69
|
# Updates an existing campaign under the brand of the specified profile. Cannot
|
|
48
70
|
# update campaigns that have already been submitted to TCR.
|
|
49
71
|
#
|
|
@@ -53,7 +75,7 @@ module Sentdm
|
|
|
53
75
|
#
|
|
54
76
|
# @param profile_id [String] Path param: Profile ID from route
|
|
55
77
|
#
|
|
56
|
-
# @param campaign [Sentdm::Models::Profiles::
|
|
78
|
+
# @param campaign [Sentdm::Models::Profiles::CampaignUpdateParams::Campaign] Body param: Campaign data for create or update operation
|
|
57
79
|
#
|
|
58
80
|
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
59
81
|
#
|
|
@@ -63,7 +85,7 @@ module Sentdm
|
|
|
63
85
|
#
|
|
64
86
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
65
87
|
#
|
|
66
|
-
# @return [Sentdm::Models::Profiles::
|
|
88
|
+
# @return [Sentdm::Models::Profiles::CampaignUpdateResponse]
|
|
67
89
|
#
|
|
68
90
|
# @see Sentdm::Models::Profiles::CampaignUpdateParams
|
|
69
91
|
def update(campaign_id, params)
|
|
@@ -78,14 +100,22 @@ module Sentdm
|
|
|
78
100
|
path: ["v3/profiles/%1$s/campaigns/%2$s", profile_id, campaign_id],
|
|
79
101
|
headers: parsed.slice(*header_params.keys).transform_keys(header_params),
|
|
80
102
|
body: parsed.except(*header_params.keys),
|
|
81
|
-
model: Sentdm::Profiles::
|
|
103
|
+
model: Sentdm::Models::Profiles::CampaignUpdateResponse,
|
|
82
104
|
options: options
|
|
83
105
|
)
|
|
84
106
|
end
|
|
85
107
|
|
|
108
|
+
# @deprecated
|
|
109
|
+
#
|
|
86
110
|
# Some parameter documentations has been truncated, see
|
|
87
111
|
# {Sentdm::Models::Profiles::CampaignListParams} for more details.
|
|
88
112
|
#
|
|
113
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
114
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
115
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
116
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
117
|
+
# explicitly.
|
|
118
|
+
#
|
|
89
119
|
# Retrieves all campaigns linked to the profile's brand, including use cases and
|
|
90
120
|
# sample messages. Returns inherited campaigns if inherit_tcr_campaign=true.
|
|
91
121
|
#
|
|
@@ -97,7 +127,7 @@ module Sentdm
|
|
|
97
127
|
#
|
|
98
128
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
99
129
|
#
|
|
100
|
-
# @return [Sentdm::Models::Profiles::
|
|
130
|
+
# @return [Sentdm::Models::Profiles::CampaignListResponse]
|
|
101
131
|
#
|
|
102
132
|
# @see Sentdm::Models::Profiles::CampaignListParams
|
|
103
133
|
def list(profile_id, params = {})
|
|
@@ -106,14 +136,22 @@ module Sentdm
|
|
|
106
136
|
method: :get,
|
|
107
137
|
path: ["v3/profiles/%1$s/campaigns", profile_id],
|
|
108
138
|
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
109
|
-
model: Sentdm::Profiles::
|
|
139
|
+
model: Sentdm::Models::Profiles::CampaignListResponse,
|
|
110
140
|
options: options
|
|
111
141
|
)
|
|
112
142
|
end
|
|
113
143
|
|
|
144
|
+
# @deprecated
|
|
145
|
+
#
|
|
114
146
|
# Some parameter documentations has been truncated, see
|
|
115
147
|
# {Sentdm::Models::Profiles::CampaignDeleteParams} for more details.
|
|
116
148
|
#
|
|
149
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
150
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
151
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
152
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
153
|
+
# explicitly.
|
|
154
|
+
#
|
|
117
155
|
# Deletes a campaign by ID from the brand of the specified profile. The profile
|
|
118
156
|
# must belong to the authenticated organization.
|
|
119
157
|
#
|
|
@@ -2,38 +2,50 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
-
#
|
|
5
|
+
# **Deprecated — use Sender Profiles.**
|
|
6
|
+
#
|
|
7
|
+
# The original profile resource, kept because it has live callers. It still works,
|
|
8
|
+
# and its replacement is `/v3/sender-profiles`, which takes the identity and the
|
|
9
|
+
# campaign in one call instead of across three.
|
|
10
|
+
#
|
|
11
|
+
# New integrations should not start here.
|
|
6
12
|
class Profiles
|
|
7
|
-
#
|
|
13
|
+
# **Deprecated — use Sender Profiles.**
|
|
14
|
+
#
|
|
15
|
+
# The original profile resource, kept because it has live callers. It still works,
|
|
16
|
+
# and its replacement is `/v3/sender-profiles`, which takes the identity and the
|
|
17
|
+
# campaign in one call instead of across three.
|
|
18
|
+
#
|
|
19
|
+
# New integrations should not start here.
|
|
8
20
|
# @return [Sentdm::Resources::Profiles::Campaigns]
|
|
9
21
|
attr_reader :campaigns
|
|
10
22
|
|
|
23
|
+
# @deprecated
|
|
24
|
+
#
|
|
11
25
|
# Some parameter documentations has been truncated, see
|
|
12
26
|
# {Sentdm::Models::ProfileCreateParams} for more details.
|
|
13
27
|
#
|
|
28
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
29
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
30
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
31
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
32
|
+
# explicitly.
|
|
33
|
+
#
|
|
14
34
|
# Creates a new sender profile within an organization. Profiles represent
|
|
15
35
|
# different brands, departments, or use cases, each with their own messaging
|
|
16
36
|
# configuration and settings. Requires admin role in the organization.
|
|
17
37
|
#
|
|
18
38
|
# ## WhatsApp Business Account
|
|
19
39
|
#
|
|
20
|
-
# Every profile
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
#
|
|
24
|
-
# `
|
|
25
|
-
#
|
|
26
|
-
# Signup. This is the recommended path for most use cases.
|
|
27
|
-
#
|
|
28
|
-
# **2. Direct credentials** — Provide a `whatsapp_business_account` object with
|
|
29
|
-
# `waba_id`, `phone_number_id`, and `access_token`. Use this when the profile
|
|
30
|
-
# needs its own independent WhatsApp Business Account. Obtain these from Meta
|
|
31
|
-
# Business Manager by creating a System User with `whatsapp_business_messaging`
|
|
32
|
-
# and `whatsapp_business_management` permissions.
|
|
40
|
+
# Every profile owns its own WhatsApp Business Account — accounts are never shared
|
|
41
|
+
# between profiles or inherited from the organization. Provide a
|
|
42
|
+
# `whatsapp_business_account` object with `waba_id`, `phone_number_id`, and
|
|
43
|
+
# `access_token`. Obtain these from Meta Business Manager by creating a System
|
|
44
|
+
# User with `whatsapp_business_messaging` and `whatsapp_business_management`
|
|
45
|
+
# permissions.
|
|
33
46
|
#
|
|
34
|
-
#
|
|
35
|
-
#
|
|
36
|
-
# HTTP 422.
|
|
47
|
+
# Omit the field and the profile is created without WhatsApp, staying incomplete
|
|
48
|
+
# until it has an account of its own.
|
|
37
49
|
#
|
|
38
50
|
# ## Brand
|
|
39
51
|
#
|
|
@@ -50,31 +62,31 @@ module Sentdm
|
|
|
50
62
|
#
|
|
51
63
|
# @overload create(allow_contact_sharing: nil, allow_template_sharing: nil, billing_contact: nil, billing_model: nil, brand: nil, description: nil, icon: nil, inherit_contacts: nil, inherit_tcr_brand: nil, inherit_tcr_campaign: nil, inherit_templates: nil, name: nil, payment_details: nil, sandbox: nil, short_name: nil, whatsapp_business_account: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
52
64
|
#
|
|
53
|
-
# @param allow_contact_sharing [Boolean] Body param:
|
|
65
|
+
# @param allow_contact_sharing [Boolean, nil] Body param: Deprecated. Accepted and ignored. Contact and template sharing betwe
|
|
54
66
|
#
|
|
55
|
-
# @param allow_template_sharing [Boolean] Body param
|
|
67
|
+
# @param allow_template_sharing [Boolean, nil] Body param
|
|
56
68
|
#
|
|
57
|
-
# @param billing_contact [Sentdm::Models::
|
|
69
|
+
# @param billing_contact [Sentdm::Models::ProfileCreateParams::BillingContact, nil] Body param: Billing contact information for a profile.
|
|
58
70
|
#
|
|
59
71
|
# @param billing_model [String, nil] Body param: Billing model: profile, organization, or profile_and_organization (d
|
|
60
72
|
#
|
|
61
|
-
# @param brand [Sentdm::Models::
|
|
73
|
+
# @param brand [Sentdm::Models::ProfileCreateParams::Brand, nil] Body param: Brand and KYC data grouped into contact, business, and compliance se
|
|
62
74
|
#
|
|
63
75
|
# @param description [String, nil] Body param: Profile description (optional)
|
|
64
76
|
#
|
|
65
77
|
# @param icon [String, nil] Body param: Profile icon URL (optional)
|
|
66
78
|
#
|
|
67
|
-
# @param inherit_contacts [Boolean, nil] Body param
|
|
79
|
+
# @param inherit_contacts [Boolean, nil] Body param
|
|
68
80
|
#
|
|
69
81
|
# @param inherit_tcr_brand [Boolean, nil] Body param: Whether this profile inherits TCR brand from organization (default:
|
|
70
82
|
#
|
|
71
83
|
# @param inherit_tcr_campaign [Boolean, nil] Body param: Whether this profile inherits TCR campaign from organization (defaul
|
|
72
84
|
#
|
|
73
|
-
# @param inherit_templates [Boolean, nil] Body param
|
|
85
|
+
# @param inherit_templates [Boolean, nil] Body param
|
|
74
86
|
#
|
|
75
87
|
# @param name [String] Body param: Profile name (required)
|
|
76
88
|
#
|
|
77
|
-
# @param payment_details [Sentdm::Models::PaymentDetails, nil] Body param: Payment card details for
|
|
89
|
+
# @param payment_details [Sentdm::Models::ProfileCreateParams::PaymentDetails, nil] Body param: Payment card details for this profile (optional).
|
|
78
90
|
#
|
|
79
91
|
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
80
92
|
#
|
|
@@ -88,7 +100,7 @@ module Sentdm
|
|
|
88
100
|
#
|
|
89
101
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
90
102
|
#
|
|
91
|
-
# @return [Sentdm::Models::
|
|
103
|
+
# @return [Sentdm::Models::ProfileCreateResponse]
|
|
92
104
|
#
|
|
93
105
|
# @see Sentdm::Models::ProfileCreateParams
|
|
94
106
|
def create(params = {})
|
|
@@ -99,14 +111,22 @@ module Sentdm
|
|
|
99
111
|
path: "v3/profiles",
|
|
100
112
|
headers: parsed.slice(*header_params.keys).transform_keys(header_params),
|
|
101
113
|
body: parsed.except(*header_params.keys),
|
|
102
|
-
model: Sentdm::
|
|
114
|
+
model: Sentdm::Models::ProfileCreateResponse,
|
|
103
115
|
options: options
|
|
104
116
|
)
|
|
105
117
|
end
|
|
106
118
|
|
|
119
|
+
# @deprecated
|
|
120
|
+
#
|
|
107
121
|
# Some parameter documentations has been truncated, see
|
|
108
122
|
# {Sentdm::Models::ProfileRetrieveParams} for more details.
|
|
109
123
|
#
|
|
124
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
125
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
126
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
127
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
128
|
+
# explicitly.
|
|
129
|
+
#
|
|
110
130
|
# Retrieves detailed information about a specific sender profile within an
|
|
111
131
|
# organization, including brand and KYC information if a brand has been
|
|
112
132
|
# configured.
|
|
@@ -119,7 +139,7 @@ module Sentdm
|
|
|
119
139
|
#
|
|
120
140
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
121
141
|
#
|
|
122
|
-
# @return [Sentdm::Models::
|
|
142
|
+
# @return [Sentdm::Models::ProfileRetrieveResponse]
|
|
123
143
|
#
|
|
124
144
|
# @see Sentdm::Models::ProfileRetrieveParams
|
|
125
145
|
def retrieve(profile_id, params = {})
|
|
@@ -128,14 +148,22 @@ module Sentdm
|
|
|
128
148
|
method: :get,
|
|
129
149
|
path: ["v3/profiles/%1$s", profile_id],
|
|
130
150
|
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
131
|
-
model: Sentdm::
|
|
151
|
+
model: Sentdm::Models::ProfileRetrieveResponse,
|
|
132
152
|
options: options
|
|
133
153
|
)
|
|
134
154
|
end
|
|
135
155
|
|
|
156
|
+
# @deprecated
|
|
157
|
+
#
|
|
136
158
|
# Some parameter documentations has been truncated, see
|
|
137
159
|
# {Sentdm::Models::ProfileUpdateParams} for more details.
|
|
138
160
|
#
|
|
161
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
162
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
163
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
164
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
165
|
+
# explicitly.
|
|
166
|
+
#
|
|
139
167
|
# Updates a profile's configuration and settings. Requires admin role in the
|
|
140
168
|
# organization. Only provided fields will be updated (partial update).
|
|
141
169
|
#
|
|
@@ -155,45 +183,59 @@ module Sentdm
|
|
|
155
183
|
# and are forwarded directly to the payment processor. Providing `payment_details`
|
|
156
184
|
# when `billing_model` is `"organization"` is not allowed.
|
|
157
185
|
#
|
|
186
|
+
# ## Deprecated fields
|
|
187
|
+
#
|
|
188
|
+
# `sending_phone_number_profile_id` and `sending_whatsapp_number_profile_id` are
|
|
189
|
+
# **accepted and ignored**. Sender borrowing is gone: a profile cannot send from
|
|
190
|
+
# another profile's number, because two profiles behind one sender makes an
|
|
191
|
+
# inbound reply and a delivery receipt ambiguous about whose they are.
|
|
192
|
+
#
|
|
193
|
+
# Sending either **changes nothing and still returns `200`** — they are kept on
|
|
194
|
+
# the contract so an existing integration keeps working. Reads carry both keys too
|
|
195
|
+
# and always answer `null`, which is how you can confirm the value did not take.
|
|
196
|
+
#
|
|
197
|
+
# Give the profile a sender of its own instead — `POST /v3/channels/sms` or
|
|
198
|
+
# `POST /v3/channels/whatsapp`, sent with the `x-profile-id` header naming it.
|
|
199
|
+
#
|
|
158
200
|
# @overload update(profile_id, allow_contact_sharing: nil, allow_number_change_during_onboarding: nil, allow_template_sharing: nil, billing_contact: nil, billing_model: nil, brand: nil, description: nil, icon: nil, inherit_contacts: nil, inherit_tcr_brand: nil, inherit_tcr_campaign: nil, inherit_templates: nil, name: nil, payment_details: nil, sandbox: nil, sending_phone_number: nil, sending_phone_number_profile_id: nil, sending_whatsapp_number_profile_id: nil, short_name: nil, whatsapp_phone_number: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
159
201
|
#
|
|
160
202
|
# @param profile_id [String] Path param: Profile ID from route parameter
|
|
161
203
|
#
|
|
162
|
-
# @param allow_contact_sharing [Boolean, nil] Body param:
|
|
204
|
+
# @param allow_contact_sharing [Boolean, nil] Body param: Deprecated. Accepted and ignored. Contact and template sharing betwe
|
|
163
205
|
#
|
|
164
206
|
# @param allow_number_change_during_onboarding [Boolean, nil] Body param: Whether number changes are allowed during onboarding (optional)
|
|
165
207
|
#
|
|
166
|
-
# @param allow_template_sharing [Boolean, nil] Body param
|
|
208
|
+
# @param allow_template_sharing [Boolean, nil] Body param
|
|
167
209
|
#
|
|
168
|
-
# @param billing_contact [Sentdm::Models::
|
|
210
|
+
# @param billing_contact [Sentdm::Models::ProfileUpdateParams::BillingContact, nil] Body param: Billing contact information for a profile.
|
|
169
211
|
#
|
|
170
212
|
# @param billing_model [String, nil] Body param: Billing model: profile, organization, or profile_and_organization (o
|
|
171
213
|
#
|
|
172
|
-
# @param brand [Sentdm::Models::
|
|
214
|
+
# @param brand [Sentdm::Models::ProfileUpdateParams::Brand, nil] Body param: Brand and KYC data grouped into contact, business, and compliance se
|
|
173
215
|
#
|
|
174
216
|
# @param description [String, nil] Body param: Profile description (optional)
|
|
175
217
|
#
|
|
176
218
|
# @param icon [String, nil] Body param: Profile icon URL (optional)
|
|
177
219
|
#
|
|
178
|
-
# @param inherit_contacts [Boolean, nil] Body param
|
|
220
|
+
# @param inherit_contacts [Boolean, nil] Body param
|
|
179
221
|
#
|
|
180
222
|
# @param inherit_tcr_brand [Boolean, nil] Body param: Whether this profile inherits TCR brand from organization (optional)
|
|
181
223
|
#
|
|
182
224
|
# @param inherit_tcr_campaign [Boolean, nil] Body param: Whether this profile inherits TCR campaign from organization (option
|
|
183
225
|
#
|
|
184
|
-
# @param inherit_templates [Boolean, nil] Body param
|
|
226
|
+
# @param inherit_templates [Boolean, nil] Body param
|
|
185
227
|
#
|
|
186
228
|
# @param name [String, nil] Body param: Profile name (optional)
|
|
187
229
|
#
|
|
188
|
-
# @param payment_details [Sentdm::Models::PaymentDetails, nil] Body param: Payment card details for
|
|
230
|
+
# @param payment_details [Sentdm::Models::ProfileUpdateParams::PaymentDetails, nil] Body param: Payment card details for this profile (optional).
|
|
189
231
|
#
|
|
190
232
|
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
191
233
|
#
|
|
192
234
|
# @param sending_phone_number [String, nil] Body param: Direct phone number for SMS sending (optional)
|
|
193
235
|
#
|
|
194
|
-
# @param sending_phone_number_profile_id [String, nil] Body param:
|
|
236
|
+
# @param sending_phone_number_profile_id [String, nil] Body param: Deprecated. Accepted and ignored. Sender borrowing is gone: a profil
|
|
195
237
|
#
|
|
196
|
-
# @param sending_whatsapp_number_profile_id [String, nil] Body param
|
|
238
|
+
# @param sending_whatsapp_number_profile_id [String, nil] Body param
|
|
197
239
|
#
|
|
198
240
|
# @param short_name [String, nil] Body param: Profile short name/abbreviation (optional). Must be 3–11 characters,
|
|
199
241
|
#
|
|
@@ -205,7 +247,7 @@ module Sentdm
|
|
|
205
247
|
#
|
|
206
248
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
207
249
|
#
|
|
208
|
-
# @return [Sentdm::Models::
|
|
250
|
+
# @return [Sentdm::Models::ProfileUpdateResponse]
|
|
209
251
|
#
|
|
210
252
|
# @see Sentdm::Models::ProfileUpdateParams
|
|
211
253
|
def update(profile_id, params = {})
|
|
@@ -216,14 +258,22 @@ module Sentdm
|
|
|
216
258
|
path: ["v3/profiles/%1$s", profile_id],
|
|
217
259
|
headers: parsed.slice(*header_params.keys).transform_keys(header_params),
|
|
218
260
|
body: parsed.except(*header_params.keys),
|
|
219
|
-
model: Sentdm::
|
|
261
|
+
model: Sentdm::Models::ProfileUpdateResponse,
|
|
220
262
|
options: options
|
|
221
263
|
)
|
|
222
264
|
end
|
|
223
265
|
|
|
266
|
+
# @deprecated
|
|
267
|
+
#
|
|
224
268
|
# Some parameter documentations has been truncated, see
|
|
225
269
|
# {Sentdm::Models::ProfileListParams} for more details.
|
|
226
270
|
#
|
|
271
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
272
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
273
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
274
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
275
|
+
# explicitly.
|
|
276
|
+
#
|
|
227
277
|
# Retrieves all sender profiles within an organization, including brand
|
|
228
278
|
# information for each profile. Profiles represent different brands, departments,
|
|
229
279
|
# or use cases within an organization, each with their own messaging
|
|
@@ -249,11 +299,22 @@ module Sentdm
|
|
|
249
299
|
)
|
|
250
300
|
end
|
|
251
301
|
|
|
302
|
+
# @deprecated
|
|
303
|
+
#
|
|
252
304
|
# Some parameter documentations has been truncated, see
|
|
253
305
|
# {Sentdm::Models::ProfileDeleteParams} for more details.
|
|
254
306
|
#
|
|
307
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
308
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
309
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
310
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
311
|
+
# explicitly.
|
|
312
|
+
#
|
|
255
313
|
# Soft deletes a sender profile. The profile will be marked as deleted but data is
|
|
256
|
-
# retained.
|
|
314
|
+
# retained. Anything it still held is released first: phone numbers return to our
|
|
315
|
+
# inventory and can go to whoever asks next, its own WhatsApp account is
|
|
316
|
+
# deregistered, and its routing rules stop being used. Requires admin role in the
|
|
317
|
+
# organization.
|
|
257
318
|
#
|
|
258
319
|
# @overload delete(profile_id, sandbox: nil, x_profile_id: nil, request_options: {})
|
|
259
320
|
#
|
|
@@ -281,18 +342,32 @@ module Sentdm
|
|
|
281
342
|
)
|
|
282
343
|
end
|
|
283
344
|
|
|
345
|
+
# @deprecated
|
|
346
|
+
#
|
|
284
347
|
# Some parameter documentations has been truncated, see
|
|
285
348
|
# {Sentdm::Models::ProfileCompleteParams} for more details.
|
|
286
349
|
#
|
|
350
|
+
# **Deprecated.** This endpoint is replaced by `/v3/sender-profiles` and will be
|
|
351
|
+
# removed in a future release. It still behaves exactly as before, so nothing
|
|
352
|
+
# needs to change today — but new integrations should use `/v3/sender-profiles`,
|
|
353
|
+
# which models a profile's markets, compliance, brand, campaigns and billing
|
|
354
|
+
# explicitly.
|
|
355
|
+
#
|
|
287
356
|
# Final step in the profile compliance workflow. Validates all prerequisites (KYC,
|
|
288
357
|
# brand, campaigns, required documents), connects the profile to the SMS and
|
|
289
|
-
# WhatsApp channels, and
|
|
290
|
-
#
|
|
291
|
-
# profile is already
|
|
292
|
-
# it returns 202 and calls the provided webhook URL
|
|
293
|
-
# finishes.
|
|
358
|
+
# WhatsApp channels, and marks it onboarded. Prerequisites are always validated
|
|
359
|
+
# first: if any fail the call returns 400 naming every unmet one, and nothing is
|
|
360
|
+
# started. If they pass and the profile is already onboarded, the call returns 200
|
|
361
|
+
# and does nothing. Otherwise it returns 202 and calls the provided webhook URL
|
|
362
|
+
# when background processing finishes.
|
|
363
|
+
#
|
|
364
|
+
# Callable with the organization's API key or the profile's own key. The key's
|
|
365
|
+
# user must be an admin or owner of the profile, or of the organization it belongs
|
|
366
|
+
# to.
|
|
294
367
|
#
|
|
295
|
-
# Prerequisites
|
|
368
|
+
# Prerequisites (all but the last are checked before the already-onboarded
|
|
369
|
+
# short-circuit, matching the previous contract; the last is checked after it, so
|
|
370
|
+
# a profile that is already onboarded is never rejected by it):
|
|
296
371
|
#
|
|
297
372
|
# - Profile must have a name, short name, and description (short name max 50
|
|
298
373
|
# characters, description max 5000)
|
|
@@ -303,17 +378,18 @@ module Sentdm
|
|
|
303
378
|
# - TCR applications must have at least one campaign, own or inherited
|
|
304
379
|
# - Destination countries marked as main must have their required compliance
|
|
305
380
|
# documents uploaded
|
|
306
|
-
#
|
|
307
|
-
#
|
|
308
|
-
#
|
|
309
|
-
#
|
|
310
|
-
#
|
|
311
|
-
# -
|
|
312
|
-
#
|
|
313
|
-
# -
|
|
314
|
-
#
|
|
315
|
-
#
|
|
316
|
-
#
|
|
381
|
+
# - TCR applications must state whether they inherit the organization's TCR brand
|
|
382
|
+
# and campaign
|
|
383
|
+
#
|
|
384
|
+
# Outcome:
|
|
385
|
+
#
|
|
386
|
+
# - Once the prerequisites pass and background processing succeeds, the profile's
|
|
387
|
+
# conversionFlowStatus becomes ONBOARDED and its public status reads `approved`
|
|
388
|
+
# - A profile with no WhatsApp channel, or one still awaiting TCR registration or
|
|
389
|
+
# country documents, is onboarded like any other. Those are answered by the
|
|
390
|
+
# brand and campaign records, not by a status on the profile
|
|
391
|
+
# - If background processing fails, the profile keeps the status it already had
|
|
392
|
+
# and the webhook reports the reason
|
|
317
393
|
#
|
|
318
394
|
# @overload complete(profile_id, web_hook_url:, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
319
395
|
#
|