knockapi 1.17.0 → 1.19.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 +33 -0
- data/README.md +1 -1
- data/lib/knockapi/client.rb +12 -0
- data/lib/knockapi/internal/transport/base_client.rb +7 -1
- data/lib/knockapi/internal/transport/pooled_net_requester.rb +6 -2
- data/lib/knockapi/models/identify_user_request.rb +2 -2
- data/lib/knockapi/models/inline_identify_user_request.rb +2 -2
- data/lib/knockapi/models/inline_object_request.rb +11 -3
- data/lib/knockapi/models/object_set_params.rb +11 -3
- data/lib/knockapi/models/objects/bulk_set_params.rb +11 -3
- data/lib/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rb +63 -0
- data/lib/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rb +25 -0
- data/lib/knockapi/models/recipients/channel_data.rb +4 -17
- data/lib/knockapi/models/recipients/channel_data_request.rb +12 -50
- data/lib/knockapi/models/recipients/inline_channel_data_request.rb +10 -48
- data/lib/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rb +20 -0
- data/lib/knockapi/models/recipients/preference_set.rb +12 -54
- data/lib/knockapi/models/recipients/preference_set_channel_setting.rb +21 -0
- data/lib/knockapi/models/recipients/preference_set_request.rb +12 -54
- data/lib/knockapi/models/recipients/push_channel_data_devices_only.rb +60 -0
- data/lib/knockapi/models/recipients/push_channel_data_tokens_only.rb +20 -0
- data/lib/knockapi/models/tenant_request.rb +11 -3
- data/lib/knockapi/models/tenant_set_params.rb +11 -3
- data/lib/knockapi/models/users/feed_list_items_params.rb +15 -1
- data/lib/knockapi/resources/objects.rb +6 -4
- data/lib/knockapi/resources/tenants.rb +4 -2
- data/lib/knockapi/resources/users/feeds.rb +6 -1
- data/lib/knockapi/resources/users.rb +3 -3
- data/lib/knockapi/version.rb +1 -1
- data/lib/knockapi.rb +7 -0
- data/manifest.yaml +1 -0
- data/rbi/knockapi/client.rbi +7 -0
- data/rbi/knockapi/internal/transport/base_client.rbi +5 -0
- data/rbi/knockapi/internal/transport/pooled_net_requester.rbi +6 -2
- data/rbi/knockapi/internal/type/base_model.rbi +8 -4
- data/rbi/knockapi/models/identify_user_request.rbi +15 -9
- data/rbi/knockapi/models/inline_identify_user_request.rbi +15 -9
- data/rbi/knockapi/models/inline_object_request.rbi +23 -9
- data/rbi/knockapi/models/object_set_params.rbi +28 -12
- data/rbi/knockapi/models/objects/bulk_set_params.rbi +23 -9
- data/rbi/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rbi +120 -0
- data/rbi/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rbi +35 -0
- data/rbi/knockapi/models/recipients/channel_data.rbi +2 -30
- data/rbi/knockapi/models/recipients/channel_data_request.rbi +20 -96
- data/rbi/knockapi/models/recipients/inline_channel_data_request.rbi +5 -85
- data/rbi/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rbi +33 -0
- data/rbi/knockapi/models/recipients/preference_set.rbi +6 -109
- data/rbi/knockapi/models/recipients/preference_set_channel_setting.rbi +38 -0
- data/rbi/knockapi/models/recipients/preference_set_request.rbi +12 -115
- data/rbi/knockapi/models/recipients/push_channel_data_devices_only.rbi +114 -0
- data/rbi/knockapi/models/recipients/push_channel_data_tokens_only.rbi +33 -0
- data/rbi/knockapi/models/tenant_request.rbi +23 -9
- data/rbi/knockapi/models/tenant_set_params.rbi +23 -9
- data/rbi/knockapi/models/users/feed_list_items_params.rbi +17 -0
- data/rbi/knockapi/resources/objects.rbi +14 -7
- data/rbi/knockapi/resources/tenants.rbi +8 -3
- data/rbi/knockapi/resources/users/feeds.rbi +6 -0
- data/rbi/knockapi/resources/users.rbi +11 -7
- data/sig/knockapi/client.rbs +3 -0
- data/sig/knockapi/internal/transport/base_client.rbs +2 -0
- data/sig/knockapi/internal/transport/pooled_net_requester.rbs +4 -1
- data/sig/knockapi/models/inline_object_request.rbs +5 -0
- data/sig/knockapi/models/object_set_params.rbs +5 -0
- data/sig/knockapi/models/objects/bulk_set_params.rbs +5 -0
- data/sig/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rbs +44 -0
- data/sig/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rbs +16 -0
- data/sig/knockapi/models/recipients/channel_data.rbs +1 -12
- data/sig/knockapi/models/recipients/channel_data_request.rbs +5 -35
- data/sig/knockapi/models/recipients/inline_channel_data_request.rbs +5 -35
- data/sig/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rbs +16 -0
- data/sig/knockapi/models/recipients/preference_set.rbs +3 -44
- data/sig/knockapi/models/recipients/preference_set_channel_setting.rbs +16 -0
- data/sig/knockapi/models/recipients/preference_set_request.rbs +3 -44
- data/sig/knockapi/models/recipients/push_channel_data_devices_only.rbs +40 -0
- data/sig/knockapi/models/recipients/push_channel_data_tokens_only.rbs +15 -0
- data/sig/knockapi/models/tenant_request.rbs +5 -0
- data/sig/knockapi/models/tenant_set_params.rbs +5 -0
- data/sig/knockapi/models/users/feed_list_items_params.rbs +7 -0
- data/sig/knockapi/resources/objects.rbs +1 -0
- data/sig/knockapi/resources/tenants.rbs +1 -0
- data/sig/knockapi/resources/users/feeds.rbs +1 -0
- metadata +20 -2
|
@@ -26,6 +26,9 @@ module Knockapi
|
|
|
26
26
|
)
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
+
# Some parameter documentations has been truncated, see
|
|
30
|
+
# {Knockapi::Models::Users::FeedListItemsParams} for more details.
|
|
31
|
+
#
|
|
29
32
|
# Returns a paginated list of feed items for a user in reverse chronological
|
|
30
33
|
# order, including metadata about the feed. If the user has not yet been
|
|
31
34
|
# identified within Knock, an empty feed will be returned.
|
|
@@ -41,7 +44,7 @@ module Knockapi
|
|
|
41
44
|
# - This endpoint’s rate limit is always scoped per-user and per-environment. This
|
|
42
45
|
# is true even for requests made without a signed user token.
|
|
43
46
|
#
|
|
44
|
-
# @overload list_items(user_id, id, after: nil, archived: nil, before: nil, has_tenant: nil, page_size: nil, source: nil, status: nil, tenant: nil, trigger_data: nil, workflow_categories: nil, request_options: {})
|
|
47
|
+
# @overload list_items(user_id, id, after: nil, archived: nil, before: nil, has_tenant: nil, locale: nil, page_size: nil, source: nil, status: nil, tenant: nil, trigger_data: nil, workflow_categories: nil, request_options: {})
|
|
45
48
|
#
|
|
46
49
|
# @param user_id [String] The unique identifier of the user.
|
|
47
50
|
#
|
|
@@ -55,6 +58,8 @@ module Knockapi
|
|
|
55
58
|
#
|
|
56
59
|
# @param has_tenant [Boolean] Whether the feed items have a tenant.
|
|
57
60
|
#
|
|
61
|
+
# @param locale [String] The locale to render the feed items in. Must be in the IETF 5646 format (e.g. `e
|
|
62
|
+
#
|
|
58
63
|
# @param page_size [Integer] The number of items per page (defaults to 50).
|
|
59
64
|
#
|
|
60
65
|
# @param source [String] The workflow key associated with the message in the feed.
|
|
@@ -25,7 +25,7 @@ module Knockapi
|
|
|
25
25
|
#
|
|
26
26
|
# @param avatar [String, nil] A URL for the avatar of the user.
|
|
27
27
|
#
|
|
28
|
-
# @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::
|
|
28
|
+
# @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelDataTokensOnly, Knockapi::Models::Recipients::PushChannelDataDevicesOnly, Knockapi::Models::Recipients::AwsSnsPushChannelDataTargetArnsOnly, Knockapi::Models::Recipients::AwsSnsPushChannelDataDevicesOnly, Knockapi::Models::Recipients::OneSignalChannelDataPlayerIDsOnly, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline.
|
|
29
29
|
#
|
|
30
30
|
# @param created_at [Time, nil] The creation date of the user from your system.
|
|
31
31
|
#
|
|
@@ -354,7 +354,7 @@ module Knockapi
|
|
|
354
354
|
#
|
|
355
355
|
# @param channel_id [String] The unique identifier for the channel.
|
|
356
356
|
#
|
|
357
|
-
# @param data [Knockapi::Models::Recipients::
|
|
357
|
+
# @param data [Knockapi::Models::Recipients::PushChannelDataTokensOnly, Knockapi::Models::Recipients::PushChannelDataDevicesOnly, Knockapi::Models::Recipients::AwsSnsPushChannelDataTargetArnsOnly, Knockapi::Models::Recipients::AwsSnsPushChannelDataDevicesOnly, Knockapi::Models::Recipients::OneSignalChannelDataPlayerIDsOnly, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type.
|
|
358
358
|
#
|
|
359
359
|
# @param request_options [Knockapi::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
360
360
|
#
|
|
@@ -392,7 +392,7 @@ module Knockapi
|
|
|
392
392
|
#
|
|
393
393
|
# @param channel_types [Knockapi::Models::Recipients::PreferenceSetChannelTypes, nil] Channel type preferences.
|
|
394
394
|
#
|
|
395
|
-
# @param channels [Hash{Symbol=>Boolean, Knockapi::Models::Recipients::
|
|
395
|
+
# @param channels [Hash{Symbol=>Boolean, Knockapi::Models::Recipients::PreferenceSetChannelSetting}, nil] Channel preferences.
|
|
396
396
|
#
|
|
397
397
|
# @param commercial_subscribed [Boolean, nil] Whether the recipient is subscribed to commercial communications. When false, th
|
|
398
398
|
#
|
data/lib/knockapi/version.rb
CHANGED
data/lib/knockapi.rb
CHANGED
|
@@ -9,6 +9,7 @@ require "erb"
|
|
|
9
9
|
require "etc"
|
|
10
10
|
require "json"
|
|
11
11
|
require "net/http"
|
|
12
|
+
require "openssl"
|
|
12
13
|
require "pathname"
|
|
13
14
|
require "rbconfig"
|
|
14
15
|
require "securerandom"
|
|
@@ -147,13 +148,19 @@ require_relative "knockapi/models/providers/slack_revoke_access_response"
|
|
|
147
148
|
require_relative "knockapi/models/recipient"
|
|
148
149
|
require_relative "knockapi/models/recipient_reference"
|
|
149
150
|
require_relative "knockapi/models/recipient_request"
|
|
151
|
+
require_relative "knockapi/models/recipients/aws_sns_push_channel_data_devices_only"
|
|
152
|
+
require_relative "knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only"
|
|
150
153
|
require_relative "knockapi/models/recipients/discord_channel_data"
|
|
151
154
|
require_relative "knockapi/models/recipients/inline_channel_data_request"
|
|
152
155
|
require_relative "knockapi/models/recipients/inline_preference_set_request"
|
|
153
156
|
require_relative "knockapi/models/recipients/ms_teams_channel_data"
|
|
157
|
+
require_relative "knockapi/models/recipients/one_signal_channel_data_player_ids_only"
|
|
154
158
|
require_relative "knockapi/models/recipients/preference_set"
|
|
159
|
+
require_relative "knockapi/models/recipients/preference_set_channel_setting"
|
|
155
160
|
require_relative "knockapi/models/recipients/preference_set_channel_types"
|
|
156
161
|
require_relative "knockapi/models/recipients/preference_set_channel_type_setting"
|
|
162
|
+
require_relative "knockapi/models/recipients/push_channel_data_devices_only"
|
|
163
|
+
require_relative "knockapi/models/recipients/push_channel_data_tokens_only"
|
|
157
164
|
require_relative "knockapi/models/recipients/channel_data"
|
|
158
165
|
require_relative "knockapi/models/recipients/slack_channel_data"
|
|
159
166
|
require_relative "knockapi/models/recipients/subscription"
|
data/manifest.yaml
CHANGED
data/rbi/knockapi/client.rbi
CHANGED
|
@@ -13,6 +13,10 @@ module Knockapi
|
|
|
13
13
|
sig { returns(String) }
|
|
14
14
|
attr_reader :api_key
|
|
15
15
|
|
|
16
|
+
# The slug of an existing branch
|
|
17
|
+
sig { returns(T.nilable(String)) }
|
|
18
|
+
attr_reader :branch
|
|
19
|
+
|
|
16
20
|
sig { returns(Knockapi::Resources::Recipients) }
|
|
17
21
|
attr_reader :recipients
|
|
18
22
|
|
|
@@ -58,6 +62,7 @@ module Knockapi
|
|
|
58
62
|
sig do
|
|
59
63
|
params(
|
|
60
64
|
api_key: T.nilable(String),
|
|
65
|
+
branch: T.nilable(String),
|
|
61
66
|
base_url: T.nilable(String),
|
|
62
67
|
max_retries: Integer,
|
|
63
68
|
timeout: Float,
|
|
@@ -69,6 +74,8 @@ module Knockapi
|
|
|
69
74
|
def self.new(
|
|
70
75
|
# Defaults to `ENV["KNOCK_API_KEY"]`
|
|
71
76
|
api_key: ENV["KNOCK_API_KEY"],
|
|
77
|
+
# The slug of an existing branch Defaults to `ENV["KNOCK_BRANCH"]`
|
|
78
|
+
branch: ENV["KNOCK_BRANCH"],
|
|
72
79
|
# Override the default base URL for the API, e.g.,
|
|
73
80
|
# `"https://api.example.com/v2/"`. Defaults to `ENV["KNOCK_BASE_URL"]`
|
|
74
81
|
base_url: ENV["KNOCK_BASE_URL"],
|
|
@@ -26,8 +26,12 @@ module Knockapi
|
|
|
26
26
|
|
|
27
27
|
class << self
|
|
28
28
|
# @api private
|
|
29
|
-
sig
|
|
30
|
-
|
|
29
|
+
sig do
|
|
30
|
+
params(cert_store: OpenSSL::X509::Store, url: URI::Generic).returns(
|
|
31
|
+
Net::HTTP
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
def connect(cert_store:, url:)
|
|
31
35
|
end
|
|
32
36
|
|
|
33
37
|
# @api private
|
|
@@ -31,7 +31,7 @@ module Knockapi
|
|
|
31
31
|
#
|
|
32
32
|
# Assumes superclass fields are totally defined before fields are accessed /
|
|
33
33
|
# defined on subclasses.
|
|
34
|
-
sig { params(child:
|
|
34
|
+
sig { params(child: Knockapi::Internal::Type::BaseModel).void }
|
|
35
35
|
def inherited(child)
|
|
36
36
|
end
|
|
37
37
|
|
|
@@ -274,9 +274,13 @@ module Knockapi
|
|
|
274
274
|
|
|
275
275
|
# Create a new instance of a model.
|
|
276
276
|
sig do
|
|
277
|
-
params(
|
|
278
|
-
|
|
279
|
-
|
|
277
|
+
params(
|
|
278
|
+
data:
|
|
279
|
+
T.any(
|
|
280
|
+
T::Hash[Symbol, T.anything],
|
|
281
|
+
Knockapi::Internal::Type::BaseModel
|
|
282
|
+
)
|
|
283
|
+
).returns(T.attached_class)
|
|
280
284
|
end
|
|
281
285
|
def self.new(data = {})
|
|
282
286
|
end
|
|
@@ -19,9 +19,11 @@ module Knockapi
|
|
|
19
19
|
T::Hash[
|
|
20
20
|
Symbol,
|
|
21
21
|
T.any(
|
|
22
|
-
Knockapi::Recipients::
|
|
23
|
-
Knockapi::Recipients::
|
|
24
|
-
Knockapi::Recipients::
|
|
22
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
23
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
24
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
25
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
26
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
25
27
|
Knockapi::Recipients::SlackChannelData,
|
|
26
28
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
27
29
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -81,9 +83,11 @@ module Knockapi
|
|
|
81
83
|
T::Hash[
|
|
82
84
|
Symbol,
|
|
83
85
|
T.any(
|
|
84
|
-
Knockapi::Recipients::
|
|
85
|
-
Knockapi::Recipients::
|
|
86
|
-
Knockapi::Recipients::
|
|
86
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
87
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
88
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
89
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
90
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
87
91
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
88
92
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
89
93
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
@@ -142,9 +146,11 @@ module Knockapi
|
|
|
142
146
|
T::Hash[
|
|
143
147
|
Symbol,
|
|
144
148
|
T.any(
|
|
145
|
-
Knockapi::Recipients::
|
|
146
|
-
Knockapi::Recipients::
|
|
147
|
-
Knockapi::Recipients::
|
|
149
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
150
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
151
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
152
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
153
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
148
154
|
Knockapi::Recipients::SlackChannelData,
|
|
149
155
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
150
156
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -26,9 +26,11 @@ module Knockapi
|
|
|
26
26
|
T::Hash[
|
|
27
27
|
Symbol,
|
|
28
28
|
T.any(
|
|
29
|
-
Knockapi::Recipients::
|
|
30
|
-
Knockapi::Recipients::
|
|
31
|
-
Knockapi::Recipients::
|
|
29
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
30
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
31
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
32
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
33
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
32
34
|
Knockapi::Recipients::SlackChannelData,
|
|
33
35
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
34
36
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -90,9 +92,11 @@ module Knockapi
|
|
|
90
92
|
T::Hash[
|
|
91
93
|
Symbol,
|
|
92
94
|
T.any(
|
|
93
|
-
Knockapi::Recipients::
|
|
94
|
-
Knockapi::Recipients::
|
|
95
|
-
Knockapi::Recipients::
|
|
95
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
96
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
97
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
98
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
99
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
96
100
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
97
101
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
98
102
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
@@ -154,9 +158,11 @@ module Knockapi
|
|
|
154
158
|
T::Hash[
|
|
155
159
|
Symbol,
|
|
156
160
|
T.any(
|
|
157
|
-
Knockapi::Recipients::
|
|
158
|
-
Knockapi::Recipients::
|
|
159
|
-
Knockapi::Recipients::
|
|
161
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
162
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
163
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
164
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
165
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
160
166
|
Knockapi::Recipients::SlackChannelData,
|
|
161
167
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
162
168
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -23,9 +23,11 @@ module Knockapi
|
|
|
23
23
|
T::Hash[
|
|
24
24
|
Symbol,
|
|
25
25
|
T.any(
|
|
26
|
-
Knockapi::Recipients::
|
|
27
|
-
Knockapi::Recipients::
|
|
28
|
-
Knockapi::Recipients::
|
|
26
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
27
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
28
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
29
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
30
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
29
31
|
Knockapi::Recipients::SlackChannelData,
|
|
30
32
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
31
33
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -40,6 +42,10 @@ module Knockapi
|
|
|
40
42
|
sig { returns(T.nilable(Time)) }
|
|
41
43
|
attr_accessor :created_at
|
|
42
44
|
|
|
45
|
+
# An optional name for the object.
|
|
46
|
+
sig { returns(T.nilable(String)) }
|
|
47
|
+
attr_accessor :name
|
|
48
|
+
|
|
43
49
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
44
50
|
# Preferences that are set inline will be merged into any existing preferences
|
|
45
51
|
# rather than replacing them.
|
|
@@ -60,9 +66,11 @@ module Knockapi
|
|
|
60
66
|
T::Hash[
|
|
61
67
|
Symbol,
|
|
62
68
|
T.any(
|
|
63
|
-
Knockapi::Recipients::
|
|
64
|
-
Knockapi::Recipients::
|
|
65
|
-
Knockapi::Recipients::
|
|
69
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
70
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
71
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
72
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
73
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
66
74
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
67
75
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
68
76
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
@@ -70,6 +78,7 @@ module Knockapi
|
|
|
70
78
|
]
|
|
71
79
|
),
|
|
72
80
|
created_at: T.nilable(Time),
|
|
81
|
+
name: T.nilable(String),
|
|
73
82
|
preferences:
|
|
74
83
|
T.nilable(
|
|
75
84
|
T::Hash[
|
|
@@ -88,6 +97,8 @@ module Knockapi
|
|
|
88
97
|
channel_data: nil,
|
|
89
98
|
# Timestamp when the resource was created.
|
|
90
99
|
created_at: nil,
|
|
100
|
+
# An optional name for the object.
|
|
101
|
+
name: nil,
|
|
91
102
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
92
103
|
# Preferences that are set inline will be merged into any existing preferences
|
|
93
104
|
# rather than replacing them.
|
|
@@ -105,9 +116,11 @@ module Knockapi
|
|
|
105
116
|
T::Hash[
|
|
106
117
|
Symbol,
|
|
107
118
|
T.any(
|
|
108
|
-
Knockapi::Recipients::
|
|
109
|
-
Knockapi::Recipients::
|
|
110
|
-
Knockapi::Recipients::
|
|
119
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
120
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
121
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
122
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
123
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
111
124
|
Knockapi::Recipients::SlackChannelData,
|
|
112
125
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
113
126
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -115,6 +128,7 @@ module Knockapi
|
|
|
115
128
|
]
|
|
116
129
|
),
|
|
117
130
|
created_at: T.nilable(Time),
|
|
131
|
+
name: T.nilable(String),
|
|
118
132
|
preferences:
|
|
119
133
|
T.nilable(
|
|
120
134
|
T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest]
|
|
@@ -18,9 +18,11 @@ module Knockapi
|
|
|
18
18
|
T::Hash[
|
|
19
19
|
Symbol,
|
|
20
20
|
T.any(
|
|
21
|
-
Knockapi::Recipients::
|
|
22
|
-
Knockapi::Recipients::
|
|
23
|
-
Knockapi::Recipients::
|
|
21
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
22
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
23
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
24
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
25
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
24
26
|
Knockapi::Recipients::SlackChannelData,
|
|
25
27
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
26
28
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -37,9 +39,11 @@ module Knockapi
|
|
|
37
39
|
T::Hash[
|
|
38
40
|
Symbol,
|
|
39
41
|
T.any(
|
|
40
|
-
Knockapi::Recipients::
|
|
41
|
-
Knockapi::Recipients::
|
|
42
|
-
Knockapi::Recipients::
|
|
42
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
43
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
44
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
45
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
46
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
43
47
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
44
48
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
45
49
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
@@ -54,6 +58,10 @@ module Knockapi
|
|
|
54
58
|
sig { returns(T.nilable(String)) }
|
|
55
59
|
attr_accessor :locale
|
|
56
60
|
|
|
61
|
+
# An optional name for the object.
|
|
62
|
+
sig { returns(T.nilable(String)) }
|
|
63
|
+
attr_accessor :name
|
|
64
|
+
|
|
57
65
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
58
66
|
# Preferences that are set inline will be merged into any existing preferences
|
|
59
67
|
# rather than replacing them.
|
|
@@ -85,15 +93,18 @@ module Knockapi
|
|
|
85
93
|
T::Hash[
|
|
86
94
|
Symbol,
|
|
87
95
|
T.any(
|
|
88
|
-
Knockapi::Recipients::
|
|
89
|
-
Knockapi::Recipients::
|
|
90
|
-
Knockapi::Recipients::
|
|
96
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
97
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
98
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
99
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
100
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
91
101
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
92
102
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
93
103
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
94
104
|
)
|
|
95
105
|
],
|
|
96
106
|
locale: T.nilable(String),
|
|
107
|
+
name: T.nilable(String),
|
|
97
108
|
preferences:
|
|
98
109
|
T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest::OrHash],
|
|
99
110
|
timezone: T.nilable(String),
|
|
@@ -106,6 +117,8 @@ module Knockapi
|
|
|
106
117
|
# The locale of the object. Used for
|
|
107
118
|
# [message localization](/concepts/translations).
|
|
108
119
|
locale: nil,
|
|
120
|
+
# An optional name for the object.
|
|
121
|
+
name: nil,
|
|
109
122
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
110
123
|
# Preferences that are set inline will be merged into any existing preferences
|
|
111
124
|
# rather than replacing them.
|
|
@@ -126,15 +139,18 @@ module Knockapi
|
|
|
126
139
|
T::Hash[
|
|
127
140
|
Symbol,
|
|
128
141
|
T.any(
|
|
129
|
-
Knockapi::Recipients::
|
|
130
|
-
Knockapi::Recipients::
|
|
131
|
-
Knockapi::Recipients::
|
|
142
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
143
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
144
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
145
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
146
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
132
147
|
Knockapi::Recipients::SlackChannelData,
|
|
133
148
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
134
149
|
Knockapi::Recipients::DiscordChannelData
|
|
135
150
|
)
|
|
136
151
|
],
|
|
137
152
|
locale: T.nilable(String),
|
|
153
|
+
name: T.nilable(String),
|
|
138
154
|
preferences:
|
|
139
155
|
T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest],
|
|
140
156
|
timezone: T.nilable(String),
|
|
@@ -60,9 +60,11 @@ module Knockapi
|
|
|
60
60
|
T::Hash[
|
|
61
61
|
Symbol,
|
|
62
62
|
T.any(
|
|
63
|
-
Knockapi::Recipients::
|
|
64
|
-
Knockapi::Recipients::
|
|
65
|
-
Knockapi::Recipients::
|
|
63
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
64
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
65
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
66
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
67
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
66
68
|
Knockapi::Recipients::SlackChannelData,
|
|
67
69
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
68
70
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -77,6 +79,10 @@ module Knockapi
|
|
|
77
79
|
sig { returns(T.nilable(Time)) }
|
|
78
80
|
attr_accessor :created_at
|
|
79
81
|
|
|
82
|
+
# An optional name for the object.
|
|
83
|
+
sig { returns(T.nilable(String)) }
|
|
84
|
+
attr_accessor :name
|
|
85
|
+
|
|
80
86
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
81
87
|
# Preferences that are set inline will be merged into any existing preferences
|
|
82
88
|
# rather than replacing them.
|
|
@@ -98,9 +104,11 @@ module Knockapi
|
|
|
98
104
|
T::Hash[
|
|
99
105
|
Symbol,
|
|
100
106
|
T.any(
|
|
101
|
-
Knockapi::Recipients::
|
|
102
|
-
Knockapi::Recipients::
|
|
103
|
-
Knockapi::Recipients::
|
|
107
|
+
Knockapi::Recipients::PushChannelDataTokensOnly::OrHash,
|
|
108
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly::OrHash,
|
|
109
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly::OrHash,
|
|
110
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::OrHash,
|
|
111
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
|
|
104
112
|
Knockapi::Recipients::SlackChannelData::OrHash,
|
|
105
113
|
Knockapi::Recipients::MsTeamsChannelData::OrHash,
|
|
106
114
|
Knockapi::Recipients::DiscordChannelData::OrHash
|
|
@@ -108,6 +116,7 @@ module Knockapi
|
|
|
108
116
|
]
|
|
109
117
|
),
|
|
110
118
|
created_at: T.nilable(Time),
|
|
119
|
+
name: T.nilable(String),
|
|
111
120
|
preferences:
|
|
112
121
|
T.nilable(
|
|
113
122
|
T::Hash[
|
|
@@ -124,6 +133,8 @@ module Knockapi
|
|
|
124
133
|
channel_data: nil,
|
|
125
134
|
# Timestamp when the resource was created.
|
|
126
135
|
created_at: nil,
|
|
136
|
+
# An optional name for the object.
|
|
137
|
+
name: nil,
|
|
127
138
|
# Inline set preferences for a recipient, where the key is the preference set id.
|
|
128
139
|
# Preferences that are set inline will be merged into any existing preferences
|
|
129
140
|
# rather than replacing them.
|
|
@@ -140,9 +151,11 @@ module Knockapi
|
|
|
140
151
|
T::Hash[
|
|
141
152
|
Symbol,
|
|
142
153
|
T.any(
|
|
143
|
-
Knockapi::Recipients::
|
|
144
|
-
Knockapi::Recipients::
|
|
145
|
-
Knockapi::Recipients::
|
|
154
|
+
Knockapi::Recipients::PushChannelDataTokensOnly,
|
|
155
|
+
Knockapi::Recipients::PushChannelDataDevicesOnly,
|
|
156
|
+
Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
|
|
157
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
158
|
+
Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
|
|
146
159
|
Knockapi::Recipients::SlackChannelData,
|
|
147
160
|
Knockapi::Recipients::MsTeamsChannelData,
|
|
148
161
|
Knockapi::Recipients::DiscordChannelData
|
|
@@ -150,6 +163,7 @@ module Knockapi
|
|
|
150
163
|
]
|
|
151
164
|
),
|
|
152
165
|
created_at: T.nilable(Time),
|
|
166
|
+
name: T.nilable(String),
|
|
153
167
|
preferences:
|
|
154
168
|
T.nilable(
|
|
155
169
|
T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest]
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Knockapi
|
|
4
|
+
module Models
|
|
5
|
+
module Recipients
|
|
6
|
+
class AwsSnsPushChannelDataDevicesOnly < Knockapi::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
|
|
11
|
+
Knockapi::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# A list of devices. Each device contains a target_arn, and optionally a locale
|
|
16
|
+
# and timezone.
|
|
17
|
+
sig do
|
|
18
|
+
returns(
|
|
19
|
+
T::Array[
|
|
20
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::Device
|
|
21
|
+
]
|
|
22
|
+
)
|
|
23
|
+
end
|
|
24
|
+
attr_accessor :devices
|
|
25
|
+
|
|
26
|
+
# AWS SNS push channel data.
|
|
27
|
+
sig do
|
|
28
|
+
params(
|
|
29
|
+
devices:
|
|
30
|
+
T::Array[
|
|
31
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::Device::OrHash
|
|
32
|
+
]
|
|
33
|
+
).returns(T.attached_class)
|
|
34
|
+
end
|
|
35
|
+
def self.new(
|
|
36
|
+
# A list of devices. Each device contains a target_arn, and optionally a locale
|
|
37
|
+
# and timezone.
|
|
38
|
+
devices:
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
sig do
|
|
43
|
+
override.returns(
|
|
44
|
+
{
|
|
45
|
+
devices:
|
|
46
|
+
T::Array[
|
|
47
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::Device
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
end
|
|
52
|
+
def to_hash
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
class Device < Knockapi::Internal::Type::BaseModel
|
|
56
|
+
OrHash =
|
|
57
|
+
T.type_alias do
|
|
58
|
+
T.any(
|
|
59
|
+
Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly::Device,
|
|
60
|
+
Knockapi::Internal::AnyHash
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# The ARN of a platform endpoint associated with a platform application and a
|
|
65
|
+
# device token. See
|
|
66
|
+
# [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html).
|
|
67
|
+
sig { returns(String) }
|
|
68
|
+
attr_accessor :target_arn
|
|
69
|
+
|
|
70
|
+
# The locale of the object. Used for
|
|
71
|
+
# [message localization](/concepts/translations).
|
|
72
|
+
sig { returns(T.nilable(String)) }
|
|
73
|
+
attr_accessor :locale
|
|
74
|
+
|
|
75
|
+
# The timezone of the object. Must be a
|
|
76
|
+
# valid [tz database time zone string](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
|
|
77
|
+
# Used
|
|
78
|
+
# for [recurring schedules](/concepts/schedules#scheduling-workflows-with-recurring-schedules-for-recipients).
|
|
79
|
+
sig { returns(T.nilable(String)) }
|
|
80
|
+
attr_accessor :timezone
|
|
81
|
+
|
|
82
|
+
sig do
|
|
83
|
+
params(
|
|
84
|
+
target_arn: String,
|
|
85
|
+
locale: T.nilable(String),
|
|
86
|
+
timezone: T.nilable(String)
|
|
87
|
+
).returns(T.attached_class)
|
|
88
|
+
end
|
|
89
|
+
def self.new(
|
|
90
|
+
# The ARN of a platform endpoint associated with a platform application and a
|
|
91
|
+
# device token. See
|
|
92
|
+
# [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html).
|
|
93
|
+
target_arn:,
|
|
94
|
+
# The locale of the object. Used for
|
|
95
|
+
# [message localization](/concepts/translations).
|
|
96
|
+
locale: nil,
|
|
97
|
+
# The timezone of the object. Must be a
|
|
98
|
+
# valid [tz database time zone string](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
|
|
99
|
+
# Used
|
|
100
|
+
# for [recurring schedules](/concepts/schedules#scheduling-workflows-with-recurring-schedules-for-recipients).
|
|
101
|
+
timezone: nil
|
|
102
|
+
)
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
sig do
|
|
106
|
+
override.returns(
|
|
107
|
+
{
|
|
108
|
+
target_arn: String,
|
|
109
|
+
locale: T.nilable(String),
|
|
110
|
+
timezone: T.nilable(String)
|
|
111
|
+
}
|
|
112
|
+
)
|
|
113
|
+
end
|
|
114
|
+
def to_hash
|
|
115
|
+
end
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
end
|