knockapi 1.18.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.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/README.md +1 -1
  4. data/lib/knockapi/client.rb +12 -0
  5. data/lib/knockapi/internal/transport/base_client.rb +7 -1
  6. data/lib/knockapi/internal/transport/pooled_net_requester.rb +6 -2
  7. data/lib/knockapi/models/identify_user_request.rb +2 -2
  8. data/lib/knockapi/models/inline_identify_user_request.rb +2 -2
  9. data/lib/knockapi/models/inline_object_request.rb +11 -3
  10. data/lib/knockapi/models/object_set_params.rb +11 -3
  11. data/lib/knockapi/models/objects/bulk_set_params.rb +11 -3
  12. data/lib/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rb +63 -0
  13. data/lib/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rb +25 -0
  14. data/lib/knockapi/models/recipients/channel_data.rb +4 -17
  15. data/lib/knockapi/models/recipients/channel_data_request.rb +8 -162
  16. data/lib/knockapi/models/recipients/inline_channel_data_request.rb +6 -160
  17. data/lib/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rb +20 -0
  18. data/lib/knockapi/models/recipients/preference_set.rb +12 -54
  19. data/lib/knockapi/models/recipients/preference_set_channel_setting.rb +21 -0
  20. data/lib/knockapi/models/recipients/preference_set_request.rb +12 -54
  21. data/lib/knockapi/models/recipients/push_channel_data_devices_only.rb +60 -0
  22. data/lib/knockapi/models/recipients/push_channel_data_tokens_only.rb +20 -0
  23. data/lib/knockapi/models/tenant_request.rb +11 -3
  24. data/lib/knockapi/models/tenant_set_params.rb +11 -3
  25. data/lib/knockapi/models/users/feed_list_items_params.rb +15 -1
  26. data/lib/knockapi/resources/objects.rb +6 -4
  27. data/lib/knockapi/resources/tenants.rb +4 -2
  28. data/lib/knockapi/resources/users/feeds.rb +6 -1
  29. data/lib/knockapi/resources/users.rb +3 -3
  30. data/lib/knockapi/version.rb +1 -1
  31. data/lib/knockapi.rb +7 -0
  32. data/manifest.yaml +1 -0
  33. data/rbi/knockapi/client.rbi +7 -0
  34. data/rbi/knockapi/internal/transport/base_client.rbi +5 -0
  35. data/rbi/knockapi/internal/transport/pooled_net_requester.rbi +6 -2
  36. data/rbi/knockapi/internal/type/base_model.rbi +8 -4
  37. data/rbi/knockapi/models/identify_user_request.rbi +15 -15
  38. data/rbi/knockapi/models/inline_identify_user_request.rbi +15 -15
  39. data/rbi/knockapi/models/inline_object_request.rbi +23 -15
  40. data/rbi/knockapi/models/object_set_params.rbi +28 -20
  41. data/rbi/knockapi/models/objects/bulk_set_params.rbi +23 -15
  42. data/rbi/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rbi +120 -0
  43. data/rbi/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rbi +35 -0
  44. data/rbi/knockapi/models/recipients/channel_data.rbi +2 -30
  45. data/rbi/knockapi/models/recipients/channel_data_request.rbi +20 -326
  46. data/rbi/knockapi/models/recipients/inline_channel_data_request.rbi +5 -309
  47. data/rbi/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rbi +33 -0
  48. data/rbi/knockapi/models/recipients/preference_set.rbi +6 -109
  49. data/rbi/knockapi/models/recipients/preference_set_channel_setting.rbi +38 -0
  50. data/rbi/knockapi/models/recipients/preference_set_request.rbi +12 -115
  51. data/rbi/knockapi/models/recipients/push_channel_data_devices_only.rbi +114 -0
  52. data/rbi/knockapi/models/recipients/push_channel_data_tokens_only.rbi +33 -0
  53. data/rbi/knockapi/models/tenant_request.rbi +23 -15
  54. data/rbi/knockapi/models/tenant_set_params.rbi +23 -15
  55. data/rbi/knockapi/models/users/feed_list_items_params.rbi +17 -0
  56. data/rbi/knockapi/resources/objects.rbi +14 -11
  57. data/rbi/knockapi/resources/tenants.rbi +8 -5
  58. data/rbi/knockapi/resources/users/feeds.rbi +6 -0
  59. data/rbi/knockapi/resources/users.rbi +11 -11
  60. data/sig/knockapi/client.rbs +3 -0
  61. data/sig/knockapi/internal/transport/base_client.rbs +2 -0
  62. data/sig/knockapi/internal/transport/pooled_net_requester.rbs +4 -1
  63. data/sig/knockapi/models/inline_object_request.rbs +5 -0
  64. data/sig/knockapi/models/object_set_params.rbs +5 -0
  65. data/sig/knockapi/models/objects/bulk_set_params.rbs +5 -0
  66. data/sig/knockapi/models/recipients/aws_sns_push_channel_data_devices_only.rbs +44 -0
  67. data/sig/knockapi/models/recipients/aws_sns_push_channel_data_target_arns_only.rbs +16 -0
  68. data/sig/knockapi/models/recipients/channel_data.rbs +1 -12
  69. data/sig/knockapi/models/recipients/channel_data_request.rbs +5 -116
  70. data/sig/knockapi/models/recipients/inline_channel_data_request.rbs +5 -116
  71. data/sig/knockapi/models/recipients/one_signal_channel_data_player_ids_only.rbs +16 -0
  72. data/sig/knockapi/models/recipients/preference_set.rbs +3 -44
  73. data/sig/knockapi/models/recipients/preference_set_channel_setting.rbs +16 -0
  74. data/sig/knockapi/models/recipients/preference_set_request.rbs +3 -44
  75. data/sig/knockapi/models/recipients/push_channel_data_devices_only.rbs +40 -0
  76. data/sig/knockapi/models/recipients/push_channel_data_tokens_only.rbs +15 -0
  77. data/sig/knockapi/models/tenant_request.rbs +5 -0
  78. data/sig/knockapi/models/tenant_set_params.rbs +5 -0
  79. data/sig/knockapi/models/users/feed_list_items_params.rbs +7 -0
  80. data/sig/knockapi/resources/objects.rbs +1 -0
  81. data/sig/knockapi/resources/tenants.rbs +1 -0
  82. data/sig/knockapi/resources/users/feeds.rbs +1 -0
  83. metadata +20 -2
@@ -26,11 +26,11 @@ module Knockapi
26
26
  T::Hash[
27
27
  Symbol,
28
28
  T.any(
29
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
30
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
31
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
32
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
33
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
29
+ Knockapi::Recipients::PushChannelDataTokensOnly,
30
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
31
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
32
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
33
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
34
34
  Knockapi::Recipients::SlackChannelData,
35
35
  Knockapi::Recipients::MsTeamsChannelData,
36
36
  Knockapi::Recipients::DiscordChannelData
@@ -92,11 +92,11 @@ module Knockapi
92
92
  T::Hash[
93
93
  Symbol,
94
94
  T.any(
95
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly::OrHash,
96
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::OrHash,
97
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly::OrHash,
98
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::OrHash,
99
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly::OrHash,
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,
100
100
  Knockapi::Recipients::SlackChannelData::OrHash,
101
101
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
102
102
  Knockapi::Recipients::DiscordChannelData::OrHash
@@ -158,11 +158,11 @@ module Knockapi
158
158
  T::Hash[
159
159
  Symbol,
160
160
  T.any(
161
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
162
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
163
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
164
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
165
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
161
+ Knockapi::Recipients::PushChannelDataTokensOnly,
162
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
163
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
164
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
165
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
166
166
  Knockapi::Recipients::SlackChannelData,
167
167
  Knockapi::Recipients::MsTeamsChannelData,
168
168
  Knockapi::Recipients::DiscordChannelData
@@ -23,11 +23,11 @@ module Knockapi
23
23
  T::Hash[
24
24
  Symbol,
25
25
  T.any(
26
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
27
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
28
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
29
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
30
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
26
+ Knockapi::Recipients::PushChannelDataTokensOnly,
27
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
28
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
29
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
30
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
31
31
  Knockapi::Recipients::SlackChannelData,
32
32
  Knockapi::Recipients::MsTeamsChannelData,
33
33
  Knockapi::Recipients::DiscordChannelData
@@ -42,6 +42,10 @@ module Knockapi
42
42
  sig { returns(T.nilable(Time)) }
43
43
  attr_accessor :created_at
44
44
 
45
+ # An optional name for the object.
46
+ sig { returns(T.nilable(String)) }
47
+ attr_accessor :name
48
+
45
49
  # Inline set preferences for a recipient, where the key is the preference set id.
46
50
  # Preferences that are set inline will be merged into any existing preferences
47
51
  # rather than replacing them.
@@ -62,11 +66,11 @@ module Knockapi
62
66
  T::Hash[
63
67
  Symbol,
64
68
  T.any(
65
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly::OrHash,
66
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::OrHash,
67
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly::OrHash,
68
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::OrHash,
69
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly::OrHash,
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,
70
74
  Knockapi::Recipients::SlackChannelData::OrHash,
71
75
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
72
76
  Knockapi::Recipients::DiscordChannelData::OrHash
@@ -74,6 +78,7 @@ module Knockapi
74
78
  ]
75
79
  ),
76
80
  created_at: T.nilable(Time),
81
+ name: T.nilable(String),
77
82
  preferences:
78
83
  T.nilable(
79
84
  T::Hash[
@@ -92,6 +97,8 @@ module Knockapi
92
97
  channel_data: nil,
93
98
  # Timestamp when the resource was created.
94
99
  created_at: nil,
100
+ # An optional name for the object.
101
+ name: nil,
95
102
  # Inline set preferences for a recipient, where the key is the preference set id.
96
103
  # Preferences that are set inline will be merged into any existing preferences
97
104
  # rather than replacing them.
@@ -109,11 +116,11 @@ module Knockapi
109
116
  T::Hash[
110
117
  Symbol,
111
118
  T.any(
112
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
113
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
114
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
115
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
116
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
119
+ Knockapi::Recipients::PushChannelDataTokensOnly,
120
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
121
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
122
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
123
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
117
124
  Knockapi::Recipients::SlackChannelData,
118
125
  Knockapi::Recipients::MsTeamsChannelData,
119
126
  Knockapi::Recipients::DiscordChannelData
@@ -121,6 +128,7 @@ module Knockapi
121
128
  ]
122
129
  ),
123
130
  created_at: T.nilable(Time),
131
+ name: T.nilable(String),
124
132
  preferences:
125
133
  T.nilable(
126
134
  T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest]
@@ -18,11 +18,11 @@ module Knockapi
18
18
  T::Hash[
19
19
  Symbol,
20
20
  T.any(
21
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
22
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
23
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
24
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
25
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
21
+ Knockapi::Recipients::PushChannelDataTokensOnly,
22
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
23
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
24
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
25
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
26
26
  Knockapi::Recipients::SlackChannelData,
27
27
  Knockapi::Recipients::MsTeamsChannelData,
28
28
  Knockapi::Recipients::DiscordChannelData
@@ -39,11 +39,11 @@ module Knockapi
39
39
  T::Hash[
40
40
  Symbol,
41
41
  T.any(
42
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly::OrHash,
43
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::OrHash,
44
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly::OrHash,
45
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::OrHash,
46
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly::OrHash,
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,
47
47
  Knockapi::Recipients::SlackChannelData::OrHash,
48
48
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
49
49
  Knockapi::Recipients::DiscordChannelData::OrHash
@@ -58,6 +58,10 @@ module Knockapi
58
58
  sig { returns(T.nilable(String)) }
59
59
  attr_accessor :locale
60
60
 
61
+ # An optional name for the object.
62
+ sig { returns(T.nilable(String)) }
63
+ attr_accessor :name
64
+
61
65
  # Inline set preferences for a recipient, where the key is the preference set id.
62
66
  # Preferences that are set inline will be merged into any existing preferences
63
67
  # rather than replacing them.
@@ -89,17 +93,18 @@ module Knockapi
89
93
  T::Hash[
90
94
  Symbol,
91
95
  T.any(
92
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly::OrHash,
93
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::OrHash,
94
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly::OrHash,
95
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::OrHash,
96
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly::OrHash,
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,
97
101
  Knockapi::Recipients::SlackChannelData::OrHash,
98
102
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
99
103
  Knockapi::Recipients::DiscordChannelData::OrHash
100
104
  )
101
105
  ],
102
106
  locale: T.nilable(String),
107
+ name: T.nilable(String),
103
108
  preferences:
104
109
  T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest::OrHash],
105
110
  timezone: T.nilable(String),
@@ -112,6 +117,8 @@ module Knockapi
112
117
  # The locale of the object. Used for
113
118
  # [message localization](/concepts/translations).
114
119
  locale: nil,
120
+ # An optional name for the object.
121
+ name: nil,
115
122
  # Inline set preferences for a recipient, where the key is the preference set id.
116
123
  # Preferences that are set inline will be merged into any existing preferences
117
124
  # rather than replacing them.
@@ -132,17 +139,18 @@ module Knockapi
132
139
  T::Hash[
133
140
  Symbol,
134
141
  T.any(
135
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
136
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
137
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
138
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
139
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
142
+ Knockapi::Recipients::PushChannelDataTokensOnly,
143
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
144
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
145
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
146
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
140
147
  Knockapi::Recipients::SlackChannelData,
141
148
  Knockapi::Recipients::MsTeamsChannelData,
142
149
  Knockapi::Recipients::DiscordChannelData
143
150
  )
144
151
  ],
145
152
  locale: T.nilable(String),
153
+ name: T.nilable(String),
146
154
  preferences:
147
155
  T::Hash[Symbol, Knockapi::Recipients::PreferenceSetRequest],
148
156
  timezone: T.nilable(String),
@@ -60,11 +60,11 @@ module Knockapi
60
60
  T::Hash[
61
61
  Symbol,
62
62
  T.any(
63
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
64
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
65
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
66
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
67
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
63
+ Knockapi::Recipients::PushChannelDataTokensOnly,
64
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
65
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
66
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
67
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
68
68
  Knockapi::Recipients::SlackChannelData,
69
69
  Knockapi::Recipients::MsTeamsChannelData,
70
70
  Knockapi::Recipients::DiscordChannelData
@@ -79,6 +79,10 @@ module Knockapi
79
79
  sig { returns(T.nilable(Time)) }
80
80
  attr_accessor :created_at
81
81
 
82
+ # An optional name for the object.
83
+ sig { returns(T.nilable(String)) }
84
+ attr_accessor :name
85
+
82
86
  # Inline set preferences for a recipient, where the key is the preference set id.
83
87
  # Preferences that are set inline will be merged into any existing preferences
84
88
  # rather than replacing them.
@@ -100,11 +104,11 @@ module Knockapi
100
104
  T::Hash[
101
105
  Symbol,
102
106
  T.any(
103
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly::OrHash,
104
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly::OrHash,
105
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly::OrHash,
106
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly::OrHash,
107
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly::OrHash,
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,
108
112
  Knockapi::Recipients::SlackChannelData::OrHash,
109
113
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
110
114
  Knockapi::Recipients::DiscordChannelData::OrHash
@@ -112,6 +116,7 @@ module Knockapi
112
116
  ]
113
117
  ),
114
118
  created_at: T.nilable(Time),
119
+ name: T.nilable(String),
115
120
  preferences:
116
121
  T.nilable(
117
122
  T::Hash[
@@ -128,6 +133,8 @@ module Knockapi
128
133
  channel_data: nil,
129
134
  # Timestamp when the resource was created.
130
135
  created_at: nil,
136
+ # An optional name for the object.
137
+ name: nil,
131
138
  # Inline set preferences for a recipient, where the key is the preference set id.
132
139
  # Preferences that are set inline will be merged into any existing preferences
133
140
  # rather than replacing them.
@@ -144,11 +151,11 @@ module Knockapi
144
151
  T::Hash[
145
152
  Symbol,
146
153
  T.any(
147
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataTokensOnly,
148
- Knockapi::Recipients::InlineChannelDataRequestItem::PushChannelDataDevicesOnly,
149
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataTargetArNsOnly,
150
- Knockapi::Recipients::InlineChannelDataRequestItem::AwssnsPushChannelDataDevicesOnly,
151
- Knockapi::Recipients::InlineChannelDataRequestItem::OneSignalChannelDataPlayerIDsOnly,
154
+ Knockapi::Recipients::PushChannelDataTokensOnly,
155
+ Knockapi::Recipients::PushChannelDataDevicesOnly,
156
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
157
+ Knockapi::Recipients::AwsSnsPushChannelDataDevicesOnly,
158
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
152
159
  Knockapi::Recipients::SlackChannelData,
153
160
  Knockapi::Recipients::MsTeamsChannelData,
154
161
  Knockapi::Recipients::DiscordChannelData
@@ -156,6 +163,7 @@ module Knockapi
156
163
  ]
157
164
  ),
158
165
  created_at: T.nilable(Time),
166
+ name: T.nilable(String),
159
167
  preferences:
160
168
  T.nilable(
161
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
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module Knockapi
4
+ module Models
5
+ module Recipients
6
+ class AwsSnsPushChannelDataTargetArnsOnly < Knockapi::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Knockapi::Recipients::AwsSnsPushChannelDataTargetArnsOnly,
11
+ Knockapi::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # A list of platform endpoint ARNs. See
16
+ # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html).
17
+ sig { returns(T::Array[String]) }
18
+ attr_accessor :target_arns
19
+
20
+ # AWS SNS push channel data.
21
+ sig { params(target_arns: T::Array[String]).returns(T.attached_class) }
22
+ def self.new(
23
+ # A list of platform endpoint ARNs. See
24
+ # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html).
25
+ target_arns:
26
+ )
27
+ end
28
+
29
+ sig { override.returns({ target_arns: T::Array[String] }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -53,7 +53,7 @@ module Knockapi
53
53
  T.any(
54
54
  Knockapi::Recipients::RecipientsChannelData::Data::PushChannelDataFull::OrHash,
55
55
  Knockapi::Recipients::RecipientsChannelData::Data::AwssnsPushChannelDataFull::OrHash,
56
- Knockapi::Recipients::RecipientsChannelData::Data::OneSignalChannelDataPlayerIDsOnly::OrHash,
56
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly::OrHash,
57
57
  Knockapi::Recipients::SlackChannelData::OrHash,
58
58
  Knockapi::Recipients::MsTeamsChannelData::OrHash,
59
59
  Knockapi::Recipients::DiscordChannelData::OrHash
@@ -97,7 +97,7 @@ module Knockapi
97
97
  T.any(
98
98
  Knockapi::Recipients::RecipientsChannelData::Data::PushChannelDataFull,
99
99
  Knockapi::Recipients::RecipientsChannelData::Data::AwssnsPushChannelDataFull,
100
- Knockapi::Recipients::RecipientsChannelData::Data::OneSignalChannelDataPlayerIDsOnly,
100
+ Knockapi::Recipients::OneSignalChannelDataPlayerIDsOnly,
101
101
  Knockapi::Recipients::SlackChannelData,
102
102
  Knockapi::Recipients::MsTeamsChannelData,
103
103
  Knockapi::Recipients::DiscordChannelData
@@ -344,34 +344,6 @@ module Knockapi
344
344
  end
345
345
  end
346
346
 
347
- class OneSignalChannelDataPlayerIDsOnly < Knockapi::Internal::Type::BaseModel
348
- OrHash =
349
- T.type_alias do
350
- T.any(
351
- Knockapi::Recipients::RecipientsChannelData::Data::OneSignalChannelDataPlayerIDsOnly,
352
- Knockapi::Internal::AnyHash
353
- )
354
- end
355
-
356
- # A list of OneSignal player IDs.
357
- sig { returns(T::Array[String]) }
358
- attr_accessor :player_ids
359
-
360
- # OneSignal channel data.
361
- sig do
362
- params(player_ids: T::Array[String]).returns(T.attached_class)
363
- end
364
- def self.new(
365
- # A list of OneSignal player IDs.
366
- player_ids:
367
- )
368
- end
369
-
370
- sig { override.returns({ player_ids: T::Array[String] }) }
371
- def to_hash
372
- end
373
- end
374
-
375
347
  sig do
376
348
  override.returns(
377
349
  T::Array[