sentdm 0.3.0 → 0.4.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 +24 -0
- data/README.md +18 -9
- data/lib/sentdm/client.rb +7 -0
- data/lib/sentdm/internal/util.rb +31 -0
- data/lib/sentdm/models/api_meta.rb +1 -9
- data/lib/sentdm/models/brand_data.rb +235 -198
- data/lib/sentdm/models/brand_with_kyc.rb +249 -214
- data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +0 -1
- data/lib/sentdm/models/contact_create_params.rb +13 -6
- data/lib/sentdm/models/contact_delete_params.rb +15 -1
- data/lib/sentdm/models/contact_list_params.rb +10 -2
- data/lib/sentdm/models/contact_retrieve_params.rb +13 -1
- data/lib/sentdm/models/contact_update_params.rb +20 -6
- data/lib/sentdm/models/me_retrieve_params.rb +7 -1
- data/lib/sentdm/models/me_retrieve_response.rb +152 -7
- data/lib/sentdm/models/message_retrieve_activities_params.rb +13 -1
- data/lib/sentdm/models/message_retrieve_activities_response.rb +19 -5
- data/lib/sentdm/models/message_retrieve_status_params.rb +13 -1
- data/lib/sentdm/models/message_retrieve_status_response.rb +8 -1
- data/lib/sentdm/models/message_send_params.rb +17 -10
- data/lib/sentdm/models/mutation_request.rb +6 -6
- data/lib/sentdm/models/profile_complete_params.rb +20 -6
- data/lib/sentdm/models/profile_create_params.rb +192 -10
- data/lib/sentdm/models/profile_delete_params.rb +21 -14
- data/lib/sentdm/models/profile_detail.rb +144 -95
- data/lib/sentdm/models/profile_list_params.rb +7 -1
- data/lib/sentdm/models/profile_retrieve_params.rb +13 -1
- data/lib/sentdm/models/profile_update_params.rb +146 -19
- data/lib/sentdm/models/template_create_params.rb +17 -10
- data/lib/sentdm/models/template_delete_params.rb +20 -6
- data/lib/sentdm/models/template_list_params.rb +18 -2
- data/lib/sentdm/models/template_retrieve_params.rb +13 -1
- data/lib/sentdm/models/template_update_params.rb +24 -10
- data/lib/sentdm/models/template_variable.rb +7 -1
- data/lib/sentdm/models/user_invite_params.rb +13 -6
- data/lib/sentdm/models/user_list_params.rb +7 -1
- data/lib/sentdm/models/user_remove_params.rb +20 -13
- data/lib/sentdm/models/user_retrieve_params.rb +13 -1
- data/lib/sentdm/models/user_update_role_params.rb +19 -13
- data/lib/sentdm/models/webhook_create_params.rb +13 -6
- data/lib/sentdm/models/webhook_delete_params.rb +13 -1
- data/lib/sentdm/models/webhook_list_event_types_params.rb +7 -1
- data/lib/sentdm/models/webhook_list_events_params.rb +13 -1
- data/lib/sentdm/models/webhook_list_params.rb +7 -1
- data/lib/sentdm/models/webhook_retrieve_params.rb +13 -1
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +13 -1
- data/lib/sentdm/models/webhook_test_params.rb +20 -6
- data/lib/sentdm/models/webhook_toggle_status_params.rb +20 -6
- data/lib/sentdm/models/webhook_update_params.rb +20 -6
- data/lib/sentdm/models.rb +0 -12
- data/lib/sentdm/resources/brands/campaigns.rb +0 -128
- data/lib/sentdm/resources/brands.rb +0 -110
- data/lib/sentdm/resources/contacts.rb +44 -19
- data/lib/sentdm/resources/lookup.rb +0 -21
- data/lib/sentdm/resources/me.rb +25 -5
- data/lib/sentdm/resources/messages.rb +25 -8
- data/lib/sentdm/resources/profiles.rb +117 -32
- data/lib/sentdm/resources/templates.rb +48 -23
- data/lib/sentdm/resources/users.rb +41 -23
- data/lib/sentdm/resources/webhooks.rb +93 -32
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +1 -14
- data/rbi/sentdm/client.rbi +7 -0
- data/rbi/sentdm/internal/util.rbi +20 -0
- data/rbi/sentdm/models/api_meta.rbi +4 -18
- data/rbi/sentdm/models/brand_data.rbi +326 -203
- data/rbi/sentdm/models/brand_with_kyc.rbi +334 -216
- data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +6 -8
- data/rbi/sentdm/models/contact_create_params.rbi +19 -10
- data/rbi/sentdm/models/contact_delete_params.rbi +15 -0
- data/rbi/sentdm/models/contact_list_params.rbi +11 -0
- data/rbi/sentdm/models/contact_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/contact_update_params.rbi +25 -10
- data/rbi/sentdm/models/me_retrieve_params.rbi +16 -5
- data/rbi/sentdm/models/me_retrieve_response.rbi +316 -16
- data/rbi/sentdm/models/message_retrieve_activities_params.rbi +24 -5
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +18 -6
- data/rbi/sentdm/models/message_retrieve_status_params.rbi +24 -5
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +6 -0
- data/rbi/sentdm/models/message_send_params.rbi +22 -13
- data/rbi/sentdm/models/mutation_request.rbi +10 -10
- data/rbi/sentdm/models/profile_complete_params.rbi +25 -10
- data/rbi/sentdm/models/profile_create_params.rbi +323 -15
- data/rbi/sentdm/models/profile_delete_params.rbi +38 -20
- data/rbi/sentdm/models/profile_detail.rbi +184 -128
- data/rbi/sentdm/models/profile_list_params.rbi +16 -5
- data/rbi/sentdm/models/profile_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/profile_update_params.rbi +233 -26
- data/rbi/sentdm/models/template_create_params.rbi +22 -13
- data/rbi/sentdm/models/template_delete_params.rbi +25 -10
- data/rbi/sentdm/models/template_list_params.rbi +19 -0
- data/rbi/sentdm/models/template_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/template_update_params.rbi +28 -13
- data/rbi/sentdm/models/template_variable.rbi +6 -0
- data/rbi/sentdm/models/user_invite_params.rbi +19 -10
- data/rbi/sentdm/models/user_list_params.rbi +16 -5
- data/rbi/sentdm/models/user_remove_params.rbi +37 -19
- data/rbi/sentdm/models/user_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/user_update_role_params.rbi +25 -21
- data/rbi/sentdm/models/webhook_create_params.rbi +19 -10
- data/rbi/sentdm/models/webhook_delete_params.rbi +24 -5
- data/rbi/sentdm/models/webhook_list_event_types_params.rbi +16 -5
- data/rbi/sentdm/models/webhook_list_events_params.rbi +21 -1
- data/rbi/sentdm/models/webhook_list_params.rbi +9 -0
- data/rbi/sentdm/models/webhook_retrieve_params.rbi +24 -5
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +20 -1
- data/rbi/sentdm/models/webhook_test_params.rbi +25 -10
- data/rbi/sentdm/models/webhook_toggle_status_params.rbi +25 -10
- data/rbi/sentdm/models/webhook_update_params.rbi +25 -10
- data/rbi/sentdm/models.rbi +0 -12
- data/rbi/sentdm/resources/brands/campaigns.rbi +0 -94
- data/rbi/sentdm/resources/brands.rbi +0 -78
- data/rbi/sentdm/resources/contacts.rbi +38 -12
- data/rbi/sentdm/resources/lookup.rbi +0 -12
- data/rbi/sentdm/resources/me.rbi +26 -7
- data/rbi/sentdm/resources/messages.rbi +18 -4
- data/rbi/sentdm/resources/profiles.rbi +179 -38
- data/rbi/sentdm/resources/templates.rbi +48 -19
- data/rbi/sentdm/resources/users.rbi +48 -25
- data/rbi/sentdm/resources/webhooks.rbi +93 -20
- data/sig/sentdm/internal/util.rbs +10 -0
- data/sig/sentdm/models/api_meta.rbs +2 -16
- data/sig/sentdm/models/brand_data.rbs +188 -142
- data/sig/sentdm/models/brand_with_kyc.rbs +184 -133
- data/sig/sentdm/models/contact_create_params.rbs +16 -5
- data/sig/sentdm/models/contact_delete_params.rbs +15 -1
- data/sig/sentdm/models/contact_list_params.rbs +8 -1
- data/sig/sentdm/models/contact_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/contact_update_params.rbs +18 -6
- data/sig/sentdm/models/me_retrieve_params.rbs +14 -3
- data/sig/sentdm/models/me_retrieve_response.rbs +134 -7
- data/sig/sentdm/models/message_retrieve_activities_params.rbs +18 -3
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +9 -4
- data/sig/sentdm/models/message_retrieve_status_params.rbs +18 -3
- data/sig/sentdm/models/message_retrieve_status_response.rbs +5 -0
- data/sig/sentdm/models/message_send_params.rbs +15 -8
- data/sig/sentdm/models/mutation_request.rbs +5 -5
- data/sig/sentdm/models/profile_complete_params.rbs +21 -5
- data/sig/sentdm/models/profile_create_params.rbs +111 -7
- data/sig/sentdm/models/profile_delete_params.rbs +23 -9
- data/sig/sentdm/models/profile_detail.rbs +105 -84
- data/sig/sentdm/models/profile_list_params.rbs +14 -3
- data/sig/sentdm/models/profile_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/profile_update_params.rbs +87 -13
- data/sig/sentdm/models/template_create_params.rbs +15 -8
- data/sig/sentdm/models/template_delete_params.rbs +20 -5
- data/sig/sentdm/models/template_list_params.rbs +13 -1
- data/sig/sentdm/models/template_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/template_update_params.rbs +20 -8
- data/sig/sentdm/models/template_variable.rbs +5 -0
- data/sig/sentdm/models/user_invite_params.rbs +13 -6
- data/sig/sentdm/models/user_list_params.rbs +14 -3
- data/sig/sentdm/models/user_remove_params.rbs +23 -9
- data/sig/sentdm/models/user_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/user_update_role_params.rbs +18 -13
- data/sig/sentdm/models/webhook_create_params.rbs +13 -6
- data/sig/sentdm/models/webhook_delete_params.rbs +18 -3
- data/sig/sentdm/models/webhook_list_event_types_params.rbs +13 -3
- data/sig/sentdm/models/webhook_list_events_params.rbs +17 -1
- data/sig/sentdm/models/webhook_list_params.rbs +13 -1
- data/sig/sentdm/models/webhook_retrieve_params.rbs +18 -3
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +16 -1
- data/sig/sentdm/models/webhook_test_params.rbs +21 -5
- data/sig/sentdm/models/webhook_toggle_status_params.rbs +21 -5
- data/sig/sentdm/models/webhook_update_params.rbs +18 -6
- data/sig/sentdm/models.rbs +0 -12
- data/sig/sentdm/resources/brands/campaigns.rbs +0 -29
- data/sig/sentdm/resources/brands.rbs +0 -25
- data/sig/sentdm/resources/contacts.rbs +7 -2
- data/sig/sentdm/resources/lookup.rbs +0 -5
- data/sig/sentdm/resources/me.rbs +1 -0
- data/sig/sentdm/resources/messages.rbs +4 -1
- data/sig/sentdm/resources/profiles.rbs +19 -8
- data/sig/sentdm/resources/templates.rbs +9 -3
- data/sig/sentdm/resources/users.rbs +10 -7
- data/sig/sentdm/resources/webhooks.rbs +18 -5
- metadata +2 -41
- data/lib/sentdm/models/api_response_brand_with_kyc.rb +0 -43
- data/lib/sentdm/models/brand_create_params.rb +0 -41
- data/lib/sentdm/models/brand_delete_params.rb +0 -27
- data/lib/sentdm/models/brand_list_params.rb +0 -14
- data/lib/sentdm/models/brand_list_response.rb +0 -43
- data/lib/sentdm/models/brand_update_params.rb +0 -41
- data/lib/sentdm/models/brands/campaign_create_params.rb +0 -43
- data/lib/sentdm/models/brands/campaign_delete_params.rb +0 -36
- data/lib/sentdm/models/brands/campaign_list_params.rb +0 -16
- data/lib/sentdm/models/brands/campaign_list_response.rb +0 -47
- data/lib/sentdm/models/brands/campaign_update_params.rb +0 -50
- data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +0 -14
- data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +0 -104
- data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +0 -74
- data/rbi/sentdm/models/brand_create_params.rbi +0 -68
- data/rbi/sentdm/models/brand_delete_params.rbi +0 -62
- data/rbi/sentdm/models/brand_list_params.rbi +0 -27
- data/rbi/sentdm/models/brand_list_response.rbi +0 -71
- data/rbi/sentdm/models/brand_update_params.rbi +0 -68
- data/rbi/sentdm/models/brands/campaign_create_params.rbi +0 -73
- data/rbi/sentdm/models/brands/campaign_delete_params.rbi +0 -78
- data/rbi/sentdm/models/brands/campaign_list_params.rbi +0 -29
- data/rbi/sentdm/models/brands/campaign_list_response.rbi +0 -82
- data/rbi/sentdm/models/brands/campaign_update_params.rbi +0 -79
- data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +0 -30
- data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +0 -183
- data/sig/sentdm/models/api_response_brand_with_kyc.rbs +0 -39
- data/sig/sentdm/models/brand_create_params.rbs +0 -36
- data/sig/sentdm/models/brand_delete_params.rbs +0 -32
- data/sig/sentdm/models/brand_list_params.rbs +0 -14
- data/sig/sentdm/models/brand_list_response.rbs +0 -39
- data/sig/sentdm/models/brand_update_params.rbs +0 -36
- data/sig/sentdm/models/brands/campaign_create_params.rbs +0 -42
- data/sig/sentdm/models/brands/campaign_delete_params.rbs +0 -38
- data/sig/sentdm/models/brands/campaign_list_params.rbs +0 -17
- data/sig/sentdm/models/brands/campaign_list_response.rbs +0 -41
- data/sig/sentdm/models/brands/campaign_update_params.rbs +0 -47
- data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +0 -15
- data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +0 -102
|
@@ -2,32 +2,46 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
+
# Invite, update, and manage organization users and roles
|
|
5
6
|
class Users
|
|
7
|
+
# Some parameter documentations has been truncated, see
|
|
8
|
+
# {Sentdm::Models::UserRetrieveParams} for more details.
|
|
9
|
+
#
|
|
6
10
|
# Retrieves detailed information about a specific user in an organization or
|
|
7
11
|
# profile. Requires developer role or higher.
|
|
8
12
|
#
|
|
9
|
-
# @overload retrieve(user_id, request_options: {})
|
|
13
|
+
# @overload retrieve(user_id, x_profile_id: nil, request_options: {})
|
|
10
14
|
#
|
|
11
15
|
# @param user_id [String]
|
|
16
|
+
#
|
|
17
|
+
# @param x_profile_id [String] Profile UUID to scope the request to a child profile. Only organization API keys
|
|
18
|
+
#
|
|
12
19
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
13
20
|
#
|
|
14
21
|
# @return [Sentdm::Models::APIResponseOfUser]
|
|
15
22
|
#
|
|
16
23
|
# @see Sentdm::Models::UserRetrieveParams
|
|
17
24
|
def retrieve(user_id, params = {})
|
|
25
|
+
parsed, options = Sentdm::UserRetrieveParams.dump_request(params)
|
|
18
26
|
@client.request(
|
|
19
27
|
method: :get,
|
|
20
28
|
path: ["v3/users/%1$s", user_id],
|
|
29
|
+
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
21
30
|
model: Sentdm::APIResponseOfUser,
|
|
22
|
-
options:
|
|
31
|
+
options: options
|
|
23
32
|
)
|
|
24
33
|
end
|
|
25
34
|
|
|
35
|
+
# Some parameter documentations has been truncated, see
|
|
36
|
+
# {Sentdm::Models::UserListParams} for more details.
|
|
37
|
+
#
|
|
26
38
|
# Retrieves all users who have access to the organization or profile identified by
|
|
27
39
|
# the API key, including their roles and status. Shows invited users (pending
|
|
28
40
|
# acceptance) and active users. Requires developer role or higher.
|
|
29
41
|
#
|
|
30
|
-
# @overload list(request_options: {})
|
|
42
|
+
# @overload list(x_profile_id: nil, request_options: {})
|
|
43
|
+
#
|
|
44
|
+
# @param x_profile_id [String] Profile UUID to scope the request to a child profile. Only organization API keys
|
|
31
45
|
#
|
|
32
46
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
33
47
|
#
|
|
@@ -35,11 +49,13 @@ module Sentdm
|
|
|
35
49
|
#
|
|
36
50
|
# @see Sentdm::Models::UserListParams
|
|
37
51
|
def list(params = {})
|
|
52
|
+
parsed, options = Sentdm::UserListParams.dump_request(params)
|
|
38
53
|
@client.request(
|
|
39
54
|
method: :get,
|
|
40
55
|
path: "v3/users",
|
|
56
|
+
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
41
57
|
model: Sentdm::Models::UserListResponse,
|
|
42
|
-
options:
|
|
58
|
+
options: options
|
|
43
59
|
)
|
|
44
60
|
end
|
|
45
61
|
|
|
@@ -50,7 +66,7 @@ module Sentdm
|
|
|
50
66
|
# specific role. Requires admin role. The user will receive an invitation email
|
|
51
67
|
# with a token to accept. Invitation tokens expire after 7 days.
|
|
52
68
|
#
|
|
53
|
-
# @overload invite(email: nil, name: nil, role: nil,
|
|
69
|
+
# @overload invite(email: nil, name: nil, role: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
54
70
|
#
|
|
55
71
|
# @param email [String] Body param: User email address (required)
|
|
56
72
|
#
|
|
@@ -58,10 +74,12 @@ module Sentdm
|
|
|
58
74
|
#
|
|
59
75
|
# @param role [String] Body param: User role: admin, billing, or developer (required)
|
|
60
76
|
#
|
|
61
|
-
# @param
|
|
77
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
62
78
|
#
|
|
63
79
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
64
80
|
#
|
|
81
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
82
|
+
#
|
|
65
83
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
66
84
|
#
|
|
67
85
|
# @return [Sentdm::Models::APIResponseOfUser]
|
|
@@ -69,7 +87,7 @@ module Sentdm
|
|
|
69
87
|
# @see Sentdm::Models::UserInviteParams
|
|
70
88
|
def invite(params = {})
|
|
71
89
|
parsed, options = Sentdm::UserInviteParams.dump_request(params)
|
|
72
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
90
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
73
91
|
@client.request(
|
|
74
92
|
method: :post,
|
|
75
93
|
path: "v3/users",
|
|
@@ -86,26 +104,26 @@ module Sentdm
|
|
|
86
104
|
# Removes a user's access to an organization or profile. Requires admin role. You
|
|
87
105
|
# cannot remove yourself or remove the last admin.
|
|
88
106
|
#
|
|
89
|
-
# @overload remove(
|
|
107
|
+
# @overload remove(user_id, body:, x_profile_id: nil, request_options: {})
|
|
90
108
|
#
|
|
91
|
-
# @param
|
|
109
|
+
# @param user_id [String] Path param
|
|
92
110
|
#
|
|
93
|
-
# @param
|
|
111
|
+
# @param body [Sentdm::Models::UserRemoveParams::Body] Body param: Request to remove a user from an organization
|
|
94
112
|
#
|
|
95
|
-
# @param
|
|
113
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
96
114
|
#
|
|
97
115
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
98
116
|
#
|
|
99
117
|
# @return [nil]
|
|
100
118
|
#
|
|
101
119
|
# @see Sentdm::Models::UserRemoveParams
|
|
102
|
-
def remove(
|
|
120
|
+
def remove(user_id, params)
|
|
103
121
|
parsed, options = Sentdm::UserRemoveParams.dump_request(params)
|
|
104
122
|
@client.request(
|
|
105
123
|
method: :delete,
|
|
106
|
-
path: ["v3/users/%1$s",
|
|
107
|
-
headers:
|
|
108
|
-
body: parsed,
|
|
124
|
+
path: ["v3/users/%1$s", user_id],
|
|
125
|
+
headers: parsed.except(:body).transform_keys(x_profile_id: "x-profile-id"),
|
|
126
|
+
body: parsed[:body],
|
|
109
127
|
model: NilClass,
|
|
110
128
|
options: options
|
|
111
129
|
)
|
|
@@ -117,29 +135,29 @@ module Sentdm
|
|
|
117
135
|
# Updates a user's role in the organization or profile. Requires admin role. You
|
|
118
136
|
# cannot change your own role or demote the last admin.
|
|
119
137
|
#
|
|
120
|
-
# @overload update_role(
|
|
138
|
+
# @overload update_role(user_id, role: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
121
139
|
#
|
|
122
|
-
# @param
|
|
140
|
+
# @param user_id [String] Path param
|
|
123
141
|
#
|
|
124
142
|
# @param role [String] Body param: User role: admin, billing, or developer (required)
|
|
125
143
|
#
|
|
126
|
-
# @param
|
|
127
|
-
#
|
|
128
|
-
# @param body_user_id [String] Body param: User ID from route parameter
|
|
144
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
129
145
|
#
|
|
130
146
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
131
147
|
#
|
|
148
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
149
|
+
#
|
|
132
150
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
133
151
|
#
|
|
134
152
|
# @return [Sentdm::Models::APIResponseOfUser]
|
|
135
153
|
#
|
|
136
154
|
# @see Sentdm::Models::UserUpdateRoleParams
|
|
137
|
-
def update_role(
|
|
155
|
+
def update_role(user_id, params = {})
|
|
138
156
|
parsed, options = Sentdm::UserUpdateRoleParams.dump_request(params)
|
|
139
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
157
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
140
158
|
@client.request(
|
|
141
159
|
method: :patch,
|
|
142
|
-
path: ["v3/users/%1$s",
|
|
160
|
+
path: ["v3/users/%1$s", user_id],
|
|
143
161
|
headers: parsed.slice(*header_params.keys).transform_keys(header_params),
|
|
144
162
|
body: parsed.except(*header_params.keys),
|
|
145
163
|
model: Sentdm::APIResponseOfUser,
|
|
@@ -2,13 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
module Sentdm
|
|
4
4
|
module Resources
|
|
5
|
+
# Configure webhook endpoints for real-time event delivery
|
|
5
6
|
class Webhooks
|
|
6
7
|
# Some parameter documentations has been truncated, see
|
|
7
8
|
# {Sentdm::Models::WebhookCreateParams} for more details.
|
|
8
9
|
#
|
|
9
10
|
# Creates a new webhook endpoint for the authenticated customer.
|
|
10
11
|
#
|
|
11
|
-
# @overload create(display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil,
|
|
12
|
+
# @overload create(display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil, sandbox: nil, timeout_seconds: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
12
13
|
#
|
|
13
14
|
# @param display_name [String] Body param
|
|
14
15
|
#
|
|
@@ -18,12 +19,14 @@ module Sentdm
|
|
|
18
19
|
#
|
|
19
20
|
# @param retry_count [Integer] Body param
|
|
20
21
|
#
|
|
21
|
-
# @param
|
|
22
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
22
23
|
#
|
|
23
24
|
# @param timeout_seconds [Integer] Body param
|
|
24
25
|
#
|
|
25
26
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
26
27
|
#
|
|
28
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
29
|
+
#
|
|
27
30
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
28
31
|
#
|
|
29
32
|
# @return [Sentdm::Models::APIResponseWebhook]
|
|
@@ -31,7 +34,7 @@ module Sentdm
|
|
|
31
34
|
# @see Sentdm::Models::WebhookCreateParams
|
|
32
35
|
def create(params = {})
|
|
33
36
|
parsed, options = Sentdm::WebhookCreateParams.dump_request(params)
|
|
34
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
37
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
35
38
|
@client.request(
|
|
36
39
|
method: :post,
|
|
37
40
|
path: "v3/webhooks",
|
|
@@ -42,22 +45,30 @@ module Sentdm
|
|
|
42
45
|
)
|
|
43
46
|
end
|
|
44
47
|
|
|
48
|
+
# Some parameter documentations has been truncated, see
|
|
49
|
+
# {Sentdm::Models::WebhookRetrieveParams} for more details.
|
|
50
|
+
#
|
|
45
51
|
# Retrieves a single webhook by ID for the authenticated customer.
|
|
46
52
|
#
|
|
47
|
-
# @overload retrieve(id, request_options: {})
|
|
53
|
+
# @overload retrieve(id, x_profile_id: nil, request_options: {})
|
|
48
54
|
#
|
|
49
55
|
# @param id [String]
|
|
56
|
+
#
|
|
57
|
+
# @param x_profile_id [String] Profile UUID to scope the request to a child profile. Only organization API keys
|
|
58
|
+
#
|
|
50
59
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
51
60
|
#
|
|
52
61
|
# @return [Sentdm::Models::APIResponseWebhook]
|
|
53
62
|
#
|
|
54
63
|
# @see Sentdm::Models::WebhookRetrieveParams
|
|
55
64
|
def retrieve(id, params = {})
|
|
65
|
+
parsed, options = Sentdm::WebhookRetrieveParams.dump_request(params)
|
|
56
66
|
@client.request(
|
|
57
67
|
method: :get,
|
|
58
68
|
path: ["v3/webhooks/%1$s", id],
|
|
69
|
+
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
59
70
|
model: Sentdm::APIResponseWebhook,
|
|
60
|
-
options:
|
|
71
|
+
options: options
|
|
61
72
|
)
|
|
62
73
|
end
|
|
63
74
|
|
|
@@ -66,7 +77,7 @@ module Sentdm
|
|
|
66
77
|
#
|
|
67
78
|
# Updates an existing webhook for the authenticated customer.
|
|
68
79
|
#
|
|
69
|
-
# @overload update(id, display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil,
|
|
80
|
+
# @overload update(id, display_name: nil, endpoint_url: nil, event_types: nil, retry_count: nil, sandbox: nil, timeout_seconds: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
70
81
|
#
|
|
71
82
|
# @param id [String] Path param
|
|
72
83
|
#
|
|
@@ -78,12 +89,14 @@ module Sentdm
|
|
|
78
89
|
#
|
|
79
90
|
# @param retry_count [Integer] Body param
|
|
80
91
|
#
|
|
81
|
-
# @param
|
|
92
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
82
93
|
#
|
|
83
94
|
# @param timeout_seconds [Integer] Body param
|
|
84
95
|
#
|
|
85
96
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
86
97
|
#
|
|
98
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
99
|
+
#
|
|
87
100
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
88
101
|
#
|
|
89
102
|
# @return [Sentdm::Models::APIResponseWebhook]
|
|
@@ -91,7 +104,7 @@ module Sentdm
|
|
|
91
104
|
# @see Sentdm::Models::WebhookUpdateParams
|
|
92
105
|
def update(id, params = {})
|
|
93
106
|
parsed, options = Sentdm::WebhookUpdateParams.dump_request(params)
|
|
94
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
107
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
95
108
|
@client.request(
|
|
96
109
|
method: :put,
|
|
97
110
|
path: ["v3/webhooks/%1$s", id],
|
|
@@ -102,52 +115,77 @@ module Sentdm
|
|
|
102
115
|
)
|
|
103
116
|
end
|
|
104
117
|
|
|
118
|
+
# Some parameter documentations has been truncated, see
|
|
119
|
+
# {Sentdm::Models::WebhookListParams} for more details.
|
|
120
|
+
#
|
|
105
121
|
# Retrieves a paginated list of webhooks for the authenticated customer.
|
|
106
122
|
#
|
|
107
|
-
# @overload list(page:, page_size:, is_active: nil, search: nil, request_options: {})
|
|
123
|
+
# @overload list(page:, page_size:, is_active: nil, search: nil, x_profile_id: nil, request_options: {})
|
|
124
|
+
#
|
|
125
|
+
# @param page [Integer] Query param
|
|
126
|
+
#
|
|
127
|
+
# @param page_size [Integer] Query param
|
|
128
|
+
#
|
|
129
|
+
# @param is_active [Boolean, nil] Query param
|
|
130
|
+
#
|
|
131
|
+
# @param search [String, nil] Query param
|
|
132
|
+
#
|
|
133
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
108
134
|
#
|
|
109
|
-
# @param page [Integer]
|
|
110
|
-
# @param page_size [Integer]
|
|
111
|
-
# @param is_active [Boolean, nil]
|
|
112
|
-
# @param search [String, nil]
|
|
113
135
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
114
136
|
#
|
|
115
137
|
# @return [Sentdm::Models::WebhookListResponse]
|
|
116
138
|
#
|
|
117
139
|
# @see Sentdm::Models::WebhookListParams
|
|
118
140
|
def list(params)
|
|
141
|
+
query_params = [:page, :page_size, :is_active, :search]
|
|
119
142
|
parsed, options = Sentdm::WebhookListParams.dump_request(params)
|
|
143
|
+
query = Sentdm::Internal::Util.encode_query_params(parsed.slice(*query_params))
|
|
120
144
|
@client.request(
|
|
121
145
|
method: :get,
|
|
122
146
|
path: "v3/webhooks",
|
|
123
|
-
query:
|
|
147
|
+
query: query,
|
|
148
|
+
headers: parsed.except(*query_params).transform_keys(x_profile_id: "x-profile-id"),
|
|
124
149
|
model: Sentdm::Models::WebhookListResponse,
|
|
125
150
|
options: options
|
|
126
151
|
)
|
|
127
152
|
end
|
|
128
153
|
|
|
154
|
+
# Some parameter documentations has been truncated, see
|
|
155
|
+
# {Sentdm::Models::WebhookDeleteParams} for more details.
|
|
156
|
+
#
|
|
129
157
|
# Deletes a webhook for the authenticated customer.
|
|
130
158
|
#
|
|
131
|
-
# @overload delete(id, request_options: {})
|
|
159
|
+
# @overload delete(id, x_profile_id: nil, request_options: {})
|
|
132
160
|
#
|
|
133
161
|
# @param id [String]
|
|
162
|
+
#
|
|
163
|
+
# @param x_profile_id [String] Profile UUID to scope the request to a child profile. Only organization API keys
|
|
164
|
+
#
|
|
134
165
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
135
166
|
#
|
|
136
167
|
# @return [nil]
|
|
137
168
|
#
|
|
138
169
|
# @see Sentdm::Models::WebhookDeleteParams
|
|
139
170
|
def delete(id, params = {})
|
|
171
|
+
parsed, options = Sentdm::WebhookDeleteParams.dump_request(params)
|
|
140
172
|
@client.request(
|
|
141
173
|
method: :delete,
|
|
142
174
|
path: ["v3/webhooks/%1$s", id],
|
|
175
|
+
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
143
176
|
model: NilClass,
|
|
144
|
-
options:
|
|
177
|
+
options: options
|
|
145
178
|
)
|
|
146
179
|
end
|
|
147
180
|
|
|
181
|
+
# Some parameter documentations has been truncated, see
|
|
182
|
+
# {Sentdm::Models::WebhookListEventTypesParams} for more details.
|
|
183
|
+
#
|
|
148
184
|
# Retrieves all available webhook event types that can be subscribed to.
|
|
149
185
|
#
|
|
150
|
-
# @overload list_event_types(request_options: {})
|
|
186
|
+
# @overload list_event_types(x_profile_id: nil, request_options: {})
|
|
187
|
+
#
|
|
188
|
+
# @param x_profile_id [String] Profile UUID to scope the request to a child profile. Only organization API keys
|
|
151
189
|
#
|
|
152
190
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
153
191
|
#
|
|
@@ -155,33 +193,47 @@ module Sentdm
|
|
|
155
193
|
#
|
|
156
194
|
# @see Sentdm::Models::WebhookListEventTypesParams
|
|
157
195
|
def list_event_types(params = {})
|
|
196
|
+
parsed, options = Sentdm::WebhookListEventTypesParams.dump_request(params)
|
|
158
197
|
@client.request(
|
|
159
198
|
method: :get,
|
|
160
199
|
path: "v3/webhooks/event-types",
|
|
200
|
+
headers: parsed.transform_keys(x_profile_id: "x-profile-id"),
|
|
161
201
|
model: Sentdm::Models::WebhookListEventTypesResponse,
|
|
162
|
-
options:
|
|
202
|
+
options: options
|
|
163
203
|
)
|
|
164
204
|
end
|
|
165
205
|
|
|
206
|
+
# Some parameter documentations has been truncated, see
|
|
207
|
+
# {Sentdm::Models::WebhookListEventsParams} for more details.
|
|
208
|
+
#
|
|
166
209
|
# Retrieves a paginated list of delivery events for the specified webhook.
|
|
167
210
|
#
|
|
168
|
-
# @overload list_events(id, page:, page_size:, search: nil, request_options: {})
|
|
211
|
+
# @overload list_events(id, page:, page_size:, search: nil, x_profile_id: nil, request_options: {})
|
|
212
|
+
#
|
|
213
|
+
# @param id [String] Path param
|
|
214
|
+
#
|
|
215
|
+
# @param page [Integer] Query param
|
|
216
|
+
#
|
|
217
|
+
# @param page_size [Integer] Query param
|
|
218
|
+
#
|
|
219
|
+
# @param search [String, nil] Query param
|
|
220
|
+
#
|
|
221
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
169
222
|
#
|
|
170
|
-
# @param id [String]
|
|
171
|
-
# @param page [Integer]
|
|
172
|
-
# @param page_size [Integer]
|
|
173
|
-
# @param search [String, nil]
|
|
174
223
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
175
224
|
#
|
|
176
225
|
# @return [Sentdm::Models::WebhookListEventsResponse]
|
|
177
226
|
#
|
|
178
227
|
# @see Sentdm::Models::WebhookListEventsParams
|
|
179
228
|
def list_events(id, params)
|
|
229
|
+
query_params = [:page, :page_size, :search]
|
|
180
230
|
parsed, options = Sentdm::WebhookListEventsParams.dump_request(params)
|
|
231
|
+
query = Sentdm::Internal::Util.encode_query_params(parsed.slice(*query_params))
|
|
181
232
|
@client.request(
|
|
182
233
|
method: :get,
|
|
183
234
|
path: ["v3/webhooks/%1$s/events", id],
|
|
184
|
-
query:
|
|
235
|
+
query: query,
|
|
236
|
+
headers: parsed.except(*query_params).transform_keys(x_profile_id: "x-profile-id"),
|
|
185
237
|
model: Sentdm::Models::WebhookListEventsResponse,
|
|
186
238
|
options: options
|
|
187
239
|
)
|
|
@@ -193,7 +245,7 @@ module Sentdm
|
|
|
193
245
|
# Generates a new signing secret for the specified webhook. The old secret is
|
|
194
246
|
# immediately invalidated.
|
|
195
247
|
#
|
|
196
|
-
# @overload rotate_secret(id, body:, idempotency_key: nil, request_options: {})
|
|
248
|
+
# @overload rotate_secret(id, body:, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
197
249
|
#
|
|
198
250
|
# @param id [String] Path param
|
|
199
251
|
#
|
|
@@ -201,6 +253,8 @@ module Sentdm
|
|
|
201
253
|
#
|
|
202
254
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
203
255
|
#
|
|
256
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
257
|
+
#
|
|
204
258
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
205
259
|
#
|
|
206
260
|
# @return [Sentdm::Models::WebhookRotateSecretResponse]
|
|
@@ -211,7 +265,10 @@ module Sentdm
|
|
|
211
265
|
@client.request(
|
|
212
266
|
method: :post,
|
|
213
267
|
path: ["v3/webhooks/%1$s/rotate-secret", id],
|
|
214
|
-
headers: parsed.except(:body).transform_keys(
|
|
268
|
+
headers: parsed.except(:body).transform_keys(
|
|
269
|
+
idempotency_key: "idempotency-key",
|
|
270
|
+
x_profile_id: "x-profile-id"
|
|
271
|
+
),
|
|
215
272
|
body: parsed[:body],
|
|
216
273
|
model: Sentdm::Models::WebhookRotateSecretResponse,
|
|
217
274
|
options: options
|
|
@@ -223,16 +280,18 @@ module Sentdm
|
|
|
223
280
|
#
|
|
224
281
|
# Sends a test event to the specified webhook endpoint to verify connectivity.
|
|
225
282
|
#
|
|
226
|
-
# @overload test_(id, event_type: nil,
|
|
283
|
+
# @overload test_(id, event_type: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
227
284
|
#
|
|
228
285
|
# @param id [String] Path param
|
|
229
286
|
#
|
|
230
287
|
# @param event_type [String] Body param
|
|
231
288
|
#
|
|
232
|
-
# @param
|
|
289
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
233
290
|
#
|
|
234
291
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
235
292
|
#
|
|
293
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
294
|
+
#
|
|
236
295
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
237
296
|
#
|
|
238
297
|
# @return [Sentdm::Models::WebhookTestResponse]
|
|
@@ -240,7 +299,7 @@ module Sentdm
|
|
|
240
299
|
# @see Sentdm::Models::WebhookTestParams
|
|
241
300
|
def test_(id, params = {})
|
|
242
301
|
parsed, options = Sentdm::WebhookTestParams.dump_request(params)
|
|
243
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
302
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
244
303
|
@client.request(
|
|
245
304
|
method: :post,
|
|
246
305
|
path: ["v3/webhooks/%1$s/test", id],
|
|
@@ -256,16 +315,18 @@ module Sentdm
|
|
|
256
315
|
#
|
|
257
316
|
# Activates or deactivates a webhook for the authenticated customer.
|
|
258
317
|
#
|
|
259
|
-
# @overload toggle_status(id, is_active: nil,
|
|
318
|
+
# @overload toggle_status(id, is_active: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
|
|
260
319
|
#
|
|
261
320
|
# @param id [String] Path param
|
|
262
321
|
#
|
|
263
322
|
# @param is_active [Boolean] Body param
|
|
264
323
|
#
|
|
265
|
-
# @param
|
|
324
|
+
# @param sandbox [Boolean] Body param: Sandbox flag - when true, the operation is simulated without side ef
|
|
266
325
|
#
|
|
267
326
|
# @param idempotency_key [String] Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
268
327
|
#
|
|
328
|
+
# @param x_profile_id [String] Header param: Profile UUID to scope the request to a child profile. Only organiz
|
|
329
|
+
#
|
|
269
330
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
270
331
|
#
|
|
271
332
|
# @return [Sentdm::Models::APIResponseWebhook]
|
|
@@ -273,7 +334,7 @@ module Sentdm
|
|
|
273
334
|
# @see Sentdm::Models::WebhookToggleStatusParams
|
|
274
335
|
def toggle_status(id, params = {})
|
|
275
336
|
parsed, options = Sentdm::WebhookToggleStatusParams.dump_request(params)
|
|
276
|
-
header_params = {idempotency_key: "idempotency-key"}
|
|
337
|
+
header_params = {idempotency_key: "idempotency-key", x_profile_id: "x-profile-id"}
|
|
277
338
|
@client.request(
|
|
278
339
|
method: :patch,
|
|
279
340
|
path: ["v3/webhooks/%1$s/toggle-status", id],
|
data/lib/sentdm/version.rb
CHANGED
data/lib/sentdm.rb
CHANGED
|
@@ -52,32 +52,21 @@ require_relative "sentdm/errors"
|
|
|
52
52
|
require_relative "sentdm/internal/transport/base_client"
|
|
53
53
|
require_relative "sentdm/internal/transport/pooled_net_requester"
|
|
54
54
|
require_relative "sentdm/client"
|
|
55
|
-
require_relative "sentdm/models/mutation_request"
|
|
56
55
|
require_relative "sentdm/models/brands/base_dto"
|
|
56
|
+
require_relative "sentdm/models/mutation_request"
|
|
57
57
|
require_relative "sentdm/models/api_error"
|
|
58
58
|
require_relative "sentdm/models/api_meta"
|
|
59
|
-
require_relative "sentdm/models/api_response_brand_with_kyc"
|
|
60
59
|
require_relative "sentdm/models/api_response_contact"
|
|
61
60
|
require_relative "sentdm/models/api_response_of_profile_detail"
|
|
62
61
|
require_relative "sentdm/models/api_response_of_user"
|
|
63
62
|
require_relative "sentdm/models/api_response_template"
|
|
64
63
|
require_relative "sentdm/models/api_response_webhook"
|
|
65
|
-
require_relative "sentdm/models/brand_create_params"
|
|
66
64
|
require_relative "sentdm/models/brand_data"
|
|
67
|
-
require_relative "sentdm/models/brand_delete_params"
|
|
68
|
-
require_relative "sentdm/models/brand_list_params"
|
|
69
|
-
require_relative "sentdm/models/brand_list_response"
|
|
70
65
|
require_relative "sentdm/models/brands/api_response_tcr_campaign_with_use_cases"
|
|
71
|
-
require_relative "sentdm/models/brands/campaign_create_params"
|
|
72
66
|
require_relative "sentdm/models/brands/campaign_data"
|
|
73
|
-
require_relative "sentdm/models/brands/campaign_delete_params"
|
|
74
|
-
require_relative "sentdm/models/brands/campaign_list_params"
|
|
75
|
-
require_relative "sentdm/models/brands/campaign_list_response"
|
|
76
|
-
require_relative "sentdm/models/brands/campaign_update_params"
|
|
77
67
|
require_relative "sentdm/models/brands/messaging_use_case_us"
|
|
78
68
|
require_relative "sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data"
|
|
79
69
|
require_relative "sentdm/models/brands/tcr_campaign_with_use_cases"
|
|
80
|
-
require_relative "sentdm/models/brand_update_params"
|
|
81
70
|
require_relative "sentdm/models/brand_with_kyc"
|
|
82
71
|
require_relative "sentdm/models/contact"
|
|
83
72
|
require_relative "sentdm/models/contact_create_params"
|
|
@@ -87,8 +76,6 @@ require_relative "sentdm/models/contact_list_response"
|
|
|
87
76
|
require_relative "sentdm/models/contact_retrieve_params"
|
|
88
77
|
require_relative "sentdm/models/contact_update_params"
|
|
89
78
|
require_relative "sentdm/models/destination_country"
|
|
90
|
-
require_relative "sentdm/models/lookup_retrieve_phone_info_params"
|
|
91
|
-
require_relative "sentdm/models/lookup_retrieve_phone_info_response"
|
|
92
79
|
require_relative "sentdm/models/me_retrieve_params"
|
|
93
80
|
require_relative "sentdm/models/me_retrieve_response"
|
|
94
81
|
require_relative "sentdm/models/message_retrieve_activities_params"
|
data/rbi/sentdm/client.rbi
CHANGED
|
@@ -15,30 +15,37 @@ module Sentdm
|
|
|
15
15
|
sig { returns(String) }
|
|
16
16
|
attr_reader :api_key
|
|
17
17
|
|
|
18
|
+
# Configure webhook endpoints for real-time event delivery
|
|
18
19
|
sig { returns(Sentdm::Resources::Webhooks) }
|
|
19
20
|
attr_reader :webhooks
|
|
20
21
|
|
|
22
|
+
# Invite, update, and manage organization users and roles
|
|
21
23
|
sig { returns(Sentdm::Resources::Users) }
|
|
22
24
|
attr_reader :users
|
|
23
25
|
|
|
26
|
+
# Manage message templates with variable substitution
|
|
24
27
|
sig { returns(Sentdm::Resources::Templates) }
|
|
25
28
|
attr_reader :templates
|
|
26
29
|
|
|
30
|
+
# Manage organization profiles
|
|
27
31
|
sig { returns(Sentdm::Resources::Profiles) }
|
|
28
32
|
attr_reader :profiles
|
|
29
33
|
|
|
34
|
+
# Send and track SMS and WhatsApp messages
|
|
30
35
|
sig { returns(Sentdm::Resources::Messages) }
|
|
31
36
|
attr_reader :messages
|
|
32
37
|
|
|
33
38
|
sig { returns(Sentdm::Resources::Lookup) }
|
|
34
39
|
attr_reader :lookup
|
|
35
40
|
|
|
41
|
+
# Create, update, and manage customer contact lists
|
|
36
42
|
sig { returns(Sentdm::Resources::Contacts) }
|
|
37
43
|
attr_reader :contacts
|
|
38
44
|
|
|
39
45
|
sig { returns(Sentdm::Resources::Brands) }
|
|
40
46
|
attr_reader :brands
|
|
41
47
|
|
|
48
|
+
# Retrieve account details
|
|
42
49
|
sig { returns(Sentdm::Resources::Me) }
|
|
43
50
|
attr_reader :me
|
|
44
51
|
|
|
@@ -301,6 +301,26 @@ module Sentdm
|
|
|
301
301
|
T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
|
|
302
302
|
|
|
303
303
|
class << self
|
|
304
|
+
# @api private
|
|
305
|
+
sig do
|
|
306
|
+
params(query: Sentdm::Internal::AnyHash).returns(
|
|
307
|
+
Sentdm::Internal::AnyHash
|
|
308
|
+
)
|
|
309
|
+
end
|
|
310
|
+
def encode_query_params(query)
|
|
311
|
+
end
|
|
312
|
+
|
|
313
|
+
# @api private
|
|
314
|
+
sig do
|
|
315
|
+
params(
|
|
316
|
+
collection: Sentdm::Internal::AnyHash,
|
|
317
|
+
key: String,
|
|
318
|
+
element: T.anything
|
|
319
|
+
).void
|
|
320
|
+
end
|
|
321
|
+
private def write_query_param_element!(collection, key, element)
|
|
322
|
+
end
|
|
323
|
+
|
|
304
324
|
# @api private
|
|
305
325
|
sig do
|
|
306
326
|
params(
|
|
@@ -13,10 +13,6 @@ module Sentdm
|
|
|
13
13
|
sig { params(request_id: String).void }
|
|
14
14
|
attr_writer :request_id
|
|
15
15
|
|
|
16
|
-
# Response time in milliseconds (optional)
|
|
17
|
-
sig { returns(T.nilable(Integer)) }
|
|
18
|
-
attr_accessor :response_time_ms
|
|
19
|
-
|
|
20
16
|
# Server timestamp when the response was generated
|
|
21
17
|
sig { returns(T.nilable(Time)) }
|
|
22
18
|
attr_reader :timestamp
|
|
@@ -33,18 +29,13 @@ module Sentdm
|
|
|
33
29
|
|
|
34
30
|
# Request and response metadata
|
|
35
31
|
sig do
|
|
36
|
-
params(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
timestamp: Time,
|
|
40
|
-
version: String
|
|
41
|
-
).returns(T.attached_class)
|
|
32
|
+
params(request_id: String, timestamp: Time, version: String).returns(
|
|
33
|
+
T.attached_class
|
|
34
|
+
)
|
|
42
35
|
end
|
|
43
36
|
def self.new(
|
|
44
37
|
# Unique identifier for this request (for tracing and support)
|
|
45
38
|
request_id: nil,
|
|
46
|
-
# Response time in milliseconds (optional)
|
|
47
|
-
response_time_ms: nil,
|
|
48
39
|
# Server timestamp when the response was generated
|
|
49
40
|
timestamp: nil,
|
|
50
41
|
# API version used for this request
|
|
@@ -54,12 +45,7 @@ module Sentdm
|
|
|
54
45
|
|
|
55
46
|
sig do
|
|
56
47
|
override.returns(
|
|
57
|
-
{
|
|
58
|
-
request_id: String,
|
|
59
|
-
response_time_ms: T.nilable(Integer),
|
|
60
|
-
timestamp: Time,
|
|
61
|
-
version: String
|
|
62
|
-
}
|
|
48
|
+
{ request_id: String, timestamp: Time, version: String }
|
|
63
49
|
)
|
|
64
50
|
end
|
|
65
51
|
def to_hash
|