knockapi 1.39.0 → 1.40.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 (153) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +32 -0
  3. data/README.md +1 -1
  4. data/lib/knockapi/models/audience_add_members_params.rb +3 -30
  5. data/lib/knockapi/models/audience_member_request.rb +32 -0
  6. data/lib/knockapi/models/audience_remove_members_params.rb +3 -30
  7. data/lib/knockapi/models/list_messages_response.rb +26 -0
  8. data/lib/knockapi/models/list_schedules_response.rb +26 -0
  9. data/lib/knockapi/models/list_subscriptions_response.rb +26 -0
  10. data/lib/knockapi/models/message.rb +37 -11
  11. data/lib/knockapi/models/{message_get_content_response.rb → message_contents.rb} +30 -156
  12. data/lib/knockapi/models/message_event.rb +8 -8
  13. data/lib/knockapi/models/message_in_app_feed_button_set_block.rb +76 -0
  14. data/lib/knockapi/models/message_in_app_feed_content_block.rb +55 -0
  15. data/lib/knockapi/models/messages/batch_archive_params.rb +2 -10
  16. data/lib/knockapi/models/messages/batch_get_content_response.rb +1 -495
  17. data/lib/knockapi/models/messages/batch_mark_as_read_params.rb +2 -10
  18. data/lib/knockapi/models/messages/batch_mark_as_seen_params.rb +2 -10
  19. data/lib/knockapi/models/messages/batch_mark_as_unread_params.rb +2 -10
  20. data/lib/knockapi/models/messages/batch_mark_as_unseen_params.rb +2 -10
  21. data/lib/knockapi/models/messages/batch_messages_status_request.rb +20 -0
  22. data/lib/knockapi/models/messages/batch_unarchive_params.rb +2 -10
  23. data/lib/knockapi/models/preference_set_commercial_subscribed_setting.rb +19 -0
  24. data/lib/knockapi/models/recipients/preference_set.rb +26 -4
  25. data/lib/knockapi/models/recipients/preference_set_request.rb +26 -4
  26. data/lib/knockapi/models/recipients/slack_channel_data.rb +9 -1
  27. data/lib/knockapi/models/users/bulk_set_preferences_params.rb +26 -4
  28. data/lib/knockapi/models/users/feed_list_items_response.rb +5 -128
  29. data/lib/knockapi/models/users/{guide_mark_message_as_archived_response.rb → guide_action_response.rb} +1 -1
  30. data/lib/knockapi/models/users/guide_archived_request.rb +72 -0
  31. data/lib/knockapi/models/users/guide_interacted_request.rb +60 -0
  32. data/lib/knockapi/models/users/guide_mark_message_as_archived_params.rb +2 -70
  33. data/lib/knockapi/models/users/guide_mark_message_as_interacted_params.rb +2 -58
  34. data/lib/knockapi/models/users/guide_mark_message_as_seen_params.rb +2 -66
  35. data/lib/knockapi/models/users/guide_reset_guide_engagements_params.rb +39 -0
  36. data/lib/knockapi/models/users/guide_seen_request.rb +68 -0
  37. data/lib/knockapi/models/users/guide_unarchive_guide_message_params.rb +39 -0
  38. data/lib/knockapi/models/users/preference_center_branding_config.rb +50 -0
  39. data/lib/knockapi/models/users/preference_center_generate_signed_url_params.rb +22 -0
  40. data/lib/knockapi/models/users/preference_center_generate_signed_url_response.rb +34 -0
  41. data/lib/knockapi/models/users/preference_center_get_config_params.rb +22 -0
  42. data/lib/knockapi/models/users/preference_center_get_config_response.rb +221 -0
  43. data/lib/knockapi/models.rb +16 -0
  44. data/lib/knockapi/resources/audiences.rb +2 -2
  45. data/lib/knockapi/resources/messages/batch.rb +2 -2
  46. data/lib/knockapi/resources/messages.rb +2 -2
  47. data/lib/knockapi/resources/objects.rb +1 -1
  48. data/lib/knockapi/resources/users/guides.rb +69 -21
  49. data/lib/knockapi/resources/users/preference_center.rb +60 -0
  50. data/lib/knockapi/resources/users.rb +7 -1
  51. data/lib/knockapi/version.rb +1 -1
  52. data/lib/knockapi.rb +21 -4
  53. data/rbi/knockapi/models/audience_add_members_params.rbi +3 -56
  54. data/rbi/knockapi/models/audience_member_request.rbi +55 -0
  55. data/rbi/knockapi/models/audience_remove_members_params.rbi +3 -57
  56. data/rbi/knockapi/models/list_messages_response.rbi +46 -0
  57. data/rbi/knockapi/models/list_schedules_response.rbi +49 -0
  58. data/rbi/knockapi/models/list_subscriptions_response.rbi +52 -0
  59. data/rbi/knockapi/models/message.rbi +50 -18
  60. data/rbi/knockapi/models/{message_get_content_response.rbi → message_contents.rbi} +43 -299
  61. data/rbi/knockapi/models/message_event.rbi +19 -19
  62. data/rbi/knockapi/models/message_in_app_feed_button_set_block.rbi +133 -0
  63. data/rbi/knockapi/models/message_in_app_feed_content_block.rbi +97 -0
  64. data/rbi/knockapi/models/messages/batch_archive_params.rbi +6 -22
  65. data/rbi/knockapi/models/messages/batch_get_content_response.rbi +1 -879
  66. data/rbi/knockapi/models/messages/batch_mark_as_read_params.rbi +6 -22
  67. data/rbi/knockapi/models/messages/batch_mark_as_seen_params.rbi +6 -22
  68. data/rbi/knockapi/models/messages/batch_mark_as_unread_params.rbi +6 -22
  69. data/rbi/knockapi/models/messages/batch_mark_as_unseen_params.rbi +6 -22
  70. data/rbi/knockapi/models/messages/batch_messages_status_request.rbi +33 -0
  71. data/rbi/knockapi/models/messages/batch_unarchive_params.rbi +6 -22
  72. data/rbi/knockapi/models/preference_set_commercial_subscribed_setting.rbi +36 -0
  73. data/rbi/knockapi/models/recipients/preference_set.rbi +50 -5
  74. data/rbi/knockapi/models/recipients/preference_set_request.rbi +56 -5
  75. data/rbi/knockapi/models/recipients/slack_channel_data.rbi +8 -0
  76. data/rbi/knockapi/models/users/bulk_set_preferences_params.rbi +56 -5
  77. data/rbi/knockapi/models/users/feed_list_items_response.rbi +4 -251
  78. data/rbi/knockapi/models/users/{guide_mark_message_as_seen_response.rbi → guide_action_response.rbi} +2 -2
  79. data/rbi/knockapi/models/users/guide_archived_request.rbi +102 -0
  80. data/rbi/knockapi/models/users/guide_interacted_request.rbi +89 -0
  81. data/rbi/knockapi/models/users/guide_mark_message_as_archived_params.rbi +3 -82
  82. data/rbi/knockapi/models/users/guide_mark_message_as_interacted_params.rbi +3 -69
  83. data/rbi/knockapi/models/users/guide_mark_message_as_seen_params.rbi +3 -77
  84. data/rbi/knockapi/models/users/guide_reset_guide_engagements_params.rbi +65 -0
  85. data/rbi/knockapi/models/users/guide_seen_request.rbi +97 -0
  86. data/rbi/knockapi/models/users/guide_unarchive_guide_message_params.rbi +65 -0
  87. data/rbi/knockapi/models/users/preference_center_branding_config.rbi +72 -0
  88. data/rbi/knockapi/models/users/preference_center_generate_signed_url_params.rbi +40 -0
  89. data/rbi/knockapi/models/users/preference_center_generate_signed_url_response.rbi +41 -0
  90. data/rbi/knockapi/models/users/preference_center_get_config_params.rbi +40 -0
  91. data/rbi/knockapi/models/users/preference_center_get_config_response.rbi +476 -0
  92. data/rbi/knockapi/models.rbi +18 -0
  93. data/rbi/knockapi/resources/audiences.rbi +2 -3
  94. data/rbi/knockapi/resources/messages/batch.rbi +1 -3
  95. data/rbi/knockapi/resources/messages.rbi +1 -1
  96. data/rbi/knockapi/resources/objects.rbi +10 -2
  97. data/rbi/knockapi/resources/users/guides.rbi +45 -11
  98. data/rbi/knockapi/resources/users/preference_center.rbi +48 -0
  99. data/rbi/knockapi/resources/users.rbi +15 -2
  100. data/sig/knockapi/models/audience_add_members_params.rbs +4 -23
  101. data/sig/knockapi/models/audience_member_request.rbs +22 -0
  102. data/sig/knockapi/models/audience_remove_members_params.rbs +4 -26
  103. data/sig/knockapi/models/list_messages_response.rbs +22 -0
  104. data/sig/knockapi/models/list_schedules_response.rbs +22 -0
  105. data/sig/knockapi/models/list_subscriptions_response.rbs +25 -0
  106. data/sig/knockapi/models/message.rbs +28 -5
  107. data/sig/knockapi/models/message_contents.rbs +286 -0
  108. data/sig/knockapi/models/message_event.rbs +16 -16
  109. data/sig/knockapi/models/message_in_app_feed_button_set_block.rbs +54 -0
  110. data/sig/knockapi/models/message_in_app_feed_content_block.rbs +46 -0
  111. data/sig/knockapi/models/messages/batch_archive_params.rbs +4 -13
  112. data/sig/knockapi/models/messages/batch_get_content_response.rbs +1 -391
  113. data/sig/knockapi/models/messages/batch_mark_as_read_params.rbs +4 -13
  114. data/sig/knockapi/models/messages/batch_mark_as_seen_params.rbs +4 -13
  115. data/sig/knockapi/models/messages/batch_mark_as_unread_params.rbs +4 -13
  116. data/sig/knockapi/models/messages/batch_mark_as_unseen_params.rbs +4 -13
  117. data/sig/knockapi/models/messages/batch_messages_status_request.rbs +15 -0
  118. data/sig/knockapi/models/messages/batch_unarchive_params.rbs +4 -13
  119. data/sig/knockapi/models/preference_set_commercial_subscribed_setting.rbs +14 -0
  120. data/sig/knockapi/models/recipients/preference_set.rbs +13 -4
  121. data/sig/knockapi/models/recipients/preference_set_request.rbs +13 -4
  122. data/sig/knockapi/models/recipients/slack_channel_data.rbs +10 -1
  123. data/sig/knockapi/models/users/bulk_set_preferences_params.rbs +13 -4
  124. data/sig/knockapi/models/users/feed_list_items_response.rbs +2 -100
  125. data/sig/knockapi/models/users/{guide_mark_message_as_seen_response.rbs → guide_action_response.rbs} +2 -2
  126. data/sig/knockapi/models/users/guide_archived_request.rbs +58 -0
  127. data/sig/knockapi/models/users/guide_interacted_request.rbs +51 -0
  128. data/sig/knockapi/models/users/guide_mark_message_as_archived_params.rbs +4 -51
  129. data/sig/knockapi/models/users/guide_mark_message_as_interacted_params.rbs +4 -44
  130. data/sig/knockapi/models/users/guide_mark_message_as_seen_params.rbs +4 -49
  131. data/sig/knockapi/models/users/guide_reset_guide_engagements_params.rbs +36 -0
  132. data/sig/knockapi/models/users/guide_seen_request.rbs +56 -0
  133. data/sig/knockapi/models/users/guide_unarchive_guide_message_params.rbs +36 -0
  134. data/sig/knockapi/models/users/preference_center_branding_config.rbs +37 -0
  135. data/sig/knockapi/models/users/preference_center_generate_signed_url_params.rbs +25 -0
  136. data/sig/knockapi/models/users/preference_center_generate_signed_url_response.rbs +18 -0
  137. data/sig/knockapi/models/users/preference_center_get_config_params.rbs +25 -0
  138. data/sig/knockapi/models/users/preference_center_get_config_response.rbs +189 -0
  139. data/sig/knockapi/models.rbs +16 -0
  140. data/sig/knockapi/resources/audiences.rbs +2 -2
  141. data/sig/knockapi/resources/messages.rbs +1 -1
  142. data/sig/knockapi/resources/objects.rbs +1 -1
  143. data/sig/knockapi/resources/users/guides.rbs +17 -6
  144. data/sig/knockapi/resources/users/preference_center.rbs +19 -0
  145. data/sig/knockapi/resources/users.rbs +3 -1
  146. metadata +65 -14
  147. data/lib/knockapi/models/users/guide_mark_message_as_interacted_response.rb +0 -21
  148. data/lib/knockapi/models/users/guide_mark_message_as_seen_response.rb +0 -21
  149. data/rbi/knockapi/models/users/guide_mark_message_as_archived_response.rbi +0 -33
  150. data/rbi/knockapi/models/users/guide_mark_message_as_interacted_response.rbi +0 -33
  151. data/sig/knockapi/models/message_get_content_response.rbs +0 -384
  152. data/sig/knockapi/models/users/guide_mark_message_as_archived_response.rbs +0 -15
  153. data/sig/knockapi/models/users/guide_mark_message_as_interacted_response.rbs +0 -15
@@ -0,0 +1,133 @@
1
+ # typed: strong
2
+
3
+ module Knockapi
4
+ module Models
5
+ class MessageInAppFeedButtonSetBlock < Knockapi::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Knockapi::MessageInAppFeedButtonSetBlock,
10
+ Knockapi::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # A list of buttons in an in app feed message.
15
+ sig do
16
+ returns(T::Array[Knockapi::MessageInAppFeedButtonSetBlock::Button])
17
+ end
18
+ attr_accessor :buttons
19
+
20
+ # The name of the button set in a message in an app feed.
21
+ sig { returns(String) }
22
+ attr_accessor :name
23
+
24
+ # The type of block in a message in an app feed.
25
+ sig do
26
+ returns(Knockapi::MessageInAppFeedButtonSetBlock::Type::TaggedSymbol)
27
+ end
28
+ attr_accessor :type
29
+
30
+ # A button set block in a message in an app feed.
31
+ sig do
32
+ params(
33
+ buttons:
34
+ T::Array[Knockapi::MessageInAppFeedButtonSetBlock::Button::OrHash],
35
+ name: String,
36
+ type: Knockapi::MessageInAppFeedButtonSetBlock::Type::OrSymbol
37
+ ).returns(T.attached_class)
38
+ end
39
+ def self.new(
40
+ # A list of buttons in an in app feed message.
41
+ buttons:,
42
+ # The name of the button set in a message in an app feed.
43
+ name:,
44
+ # The type of block in a message in an app feed.
45
+ type:
46
+ )
47
+ end
48
+
49
+ sig do
50
+ override.returns(
51
+ {
52
+ buttons: T::Array[Knockapi::MessageInAppFeedButtonSetBlock::Button],
53
+ name: String,
54
+ type: Knockapi::MessageInAppFeedButtonSetBlock::Type::TaggedSymbol
55
+ }
56
+ )
57
+ end
58
+ def to_hash
59
+ end
60
+
61
+ class Button < Knockapi::Internal::Type::BaseModel
62
+ OrHash =
63
+ T.type_alias do
64
+ T.any(
65
+ Knockapi::MessageInAppFeedButtonSetBlock::Button,
66
+ Knockapi::Internal::AnyHash
67
+ )
68
+ end
69
+
70
+ # The action to take when the button is clicked.
71
+ sig { returns(String) }
72
+ attr_accessor :action
73
+
74
+ # The label of the button.
75
+ sig { returns(String) }
76
+ attr_accessor :label
77
+
78
+ # The name of the button.
79
+ sig { returns(String) }
80
+ attr_accessor :name
81
+
82
+ # A button in an in app feed message.
83
+ sig do
84
+ params(action: String, label: String, name: String).returns(
85
+ T.attached_class
86
+ )
87
+ end
88
+ def self.new(
89
+ # The action to take when the button is clicked.
90
+ action:,
91
+ # The label of the button.
92
+ label:,
93
+ # The name of the button.
94
+ name:
95
+ )
96
+ end
97
+
98
+ sig do
99
+ override.returns({ action: String, label: String, name: String })
100
+ end
101
+ def to_hash
102
+ end
103
+ end
104
+
105
+ # The type of block in a message in an app feed.
106
+ module Type
107
+ extend Knockapi::Internal::Type::Enum
108
+
109
+ TaggedSymbol =
110
+ T.type_alias do
111
+ T.all(Symbol, Knockapi::MessageInAppFeedButtonSetBlock::Type)
112
+ end
113
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
114
+
115
+ BUTTON_SET =
116
+ T.let(
117
+ :button_set,
118
+ Knockapi::MessageInAppFeedButtonSetBlock::Type::TaggedSymbol
119
+ )
120
+
121
+ sig do
122
+ override.returns(
123
+ T::Array[
124
+ Knockapi::MessageInAppFeedButtonSetBlock::Type::TaggedSymbol
125
+ ]
126
+ )
127
+ end
128
+ def self.values
129
+ end
130
+ end
131
+ end
132
+ end
133
+ end
@@ -0,0 +1,97 @@
1
+ # typed: strong
2
+
3
+ module Knockapi
4
+ module Models
5
+ class MessageInAppFeedContentBlock < Knockapi::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Knockapi::MessageInAppFeedContentBlock,
10
+ Knockapi::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The content of the block in a message in an app feed.
15
+ sig { returns(String) }
16
+ attr_accessor :content
17
+
18
+ # The name of the block in a message in an app feed.
19
+ sig { returns(String) }
20
+ attr_accessor :name
21
+
22
+ # The rendered HTML version of the content.
23
+ sig { returns(String) }
24
+ attr_accessor :rendered
25
+
26
+ # The type of block in a message in an app feed.
27
+ sig do
28
+ returns(Knockapi::MessageInAppFeedContentBlock::Type::TaggedSymbol)
29
+ end
30
+ attr_accessor :type
31
+
32
+ # A block in a message in an app feed.
33
+ sig do
34
+ params(
35
+ content: String,
36
+ name: String,
37
+ rendered: String,
38
+ type: Knockapi::MessageInAppFeedContentBlock::Type::OrSymbol
39
+ ).returns(T.attached_class)
40
+ end
41
+ def self.new(
42
+ # The content of the block in a message in an app feed.
43
+ content:,
44
+ # The name of the block in a message in an app feed.
45
+ name:,
46
+ # The rendered HTML version of the content.
47
+ rendered:,
48
+ # The type of block in a message in an app feed.
49
+ type:
50
+ )
51
+ end
52
+
53
+ sig do
54
+ override.returns(
55
+ {
56
+ content: String,
57
+ name: String,
58
+ rendered: String,
59
+ type: Knockapi::MessageInAppFeedContentBlock::Type::TaggedSymbol
60
+ }
61
+ )
62
+ end
63
+ def to_hash
64
+ end
65
+
66
+ # The type of block in a message in an app feed.
67
+ module Type
68
+ extend Knockapi::Internal::Type::Enum
69
+
70
+ TaggedSymbol =
71
+ T.type_alias do
72
+ T.all(Symbol, Knockapi::MessageInAppFeedContentBlock::Type)
73
+ end
74
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
75
+
76
+ MARKDOWN =
77
+ T.let(
78
+ :markdown,
79
+ Knockapi::MessageInAppFeedContentBlock::Type::TaggedSymbol
80
+ )
81
+ TEXT =
82
+ T.let(
83
+ :text,
84
+ Knockapi::MessageInAppFeedContentBlock::Type::TaggedSymbol
85
+ )
86
+
87
+ sig do
88
+ override.returns(
89
+ T::Array[Knockapi::MessageInAppFeedContentBlock::Type::TaggedSymbol]
90
+ )
91
+ end
92
+ def self.values
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
@@ -3,7 +3,7 @@
3
3
  module Knockapi
4
4
  module Models
5
5
  module Messages
6
- class BatchArchiveParams < Knockapi::Internal::Type::BaseModel
6
+ class BatchArchiveParams < Knockapi::Models::Messages::BatchMessagesStatusRequest
7
7
  extend Knockapi::Internal::Type::RequestParameters::Converter
8
8
  include Knockapi::Internal::Type::RequestParameters
9
9
 
@@ -15,31 +15,15 @@ module Knockapi
15
15
  )
16
16
  end
17
17
 
18
- # The message IDs to update the status of.
19
- sig { returns(T::Array[String]) }
20
- attr_accessor :message_ids
21
-
22
18
  sig do
23
- params(
24
- message_ids: T::Array[String],
25
- request_options: Knockapi::RequestOptions::OrHash
26
- ).returns(T.attached_class)
19
+ params(request_options: Knockapi::RequestOptions::OrHash).returns(
20
+ T.attached_class
21
+ )
27
22
  end
28
- def self.new(
29
- # The message IDs to update the status of.
30
- message_ids:,
31
- request_options: {}
32
- )
23
+ def self.new(request_options: {})
33
24
  end
34
25
 
35
- sig do
36
- override.returns(
37
- {
38
- message_ids: T::Array[String],
39
- request_options: Knockapi::RequestOptions
40
- }
41
- )
42
- end
26
+ sig { override.returns({ request_options: Knockapi::RequestOptions }) }
43
27
  def to_hash
44
28
  end
45
29
  end