notiflows 0.0.1
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 +7 -0
- data/README.md +305 -0
- data/SECURITY.md +27 -0
- data/lib/notiflows/client.rb +117 -0
- data/lib/notiflows/errors.rb +228 -0
- data/lib/notiflows/file_part.rb +58 -0
- data/lib/notiflows/internal/cursor_page.rb +100 -0
- data/lib/notiflows/internal/transport/base_client.rb +573 -0
- data/lib/notiflows/internal/transport/pooled_net_requester.rb +210 -0
- data/lib/notiflows/internal/type/array_of.rb +168 -0
- data/lib/notiflows/internal/type/base_model.rb +531 -0
- data/lib/notiflows/internal/type/base_page.rb +55 -0
- data/lib/notiflows/internal/type/boolean.rb +77 -0
- data/lib/notiflows/internal/type/converter.rb +327 -0
- data/lib/notiflows/internal/type/enum.rb +131 -0
- data/lib/notiflows/internal/type/file_input.rb +111 -0
- data/lib/notiflows/internal/type/hash_of.rb +188 -0
- data/lib/notiflows/internal/type/request_parameters.rb +42 -0
- data/lib/notiflows/internal/type/union.rb +237 -0
- data/lib/notiflows/internal/type/unknown.rb +81 -0
- data/lib/notiflows/internal/util.rb +920 -0
- data/lib/notiflows/internal.rb +20 -0
- data/lib/notiflows/models/delivery.rb +189 -0
- data/lib/notiflows/models/delivery_list_params.rb +78 -0
- data/lib/notiflows/models/delivery_retrieve_params.rb +14 -0
- data/lib/notiflows/models/notification.rb +151 -0
- data/lib/notiflows/models/notification_list_deliveries_params.rb +78 -0
- data/lib/notiflows/models/notification_list_params.rb +70 -0
- data/lib/notiflows/models/notification_retrieve_params.rb +14 -0
- data/lib/notiflows/models/notiflow_run_params.rb +197 -0
- data/lib/notiflows/models/notiflow_run_response.rb +19 -0
- data/lib/notiflows/models/topic.rb +27 -0
- data/lib/notiflows/models/topic_delete_params.rb +14 -0
- data/lib/notiflows/models/topic_list_params.rb +38 -0
- data/lib/notiflows/models/topic_retrieve_params.rb +14 -0
- data/lib/notiflows/models/topics/bulk_operation_response.rb +51 -0
- data/lib/notiflows/models/topics/bulk_subscribe_request.rb +20 -0
- data/lib/notiflows/models/topics/subscription_list_params.rb +56 -0
- data/lib/notiflows/models/topics/subscription_subscribe_bulk_params.rb +16 -0
- data/lib/notiflows/models/topics/subscription_unsubscribe_bulk_params.rb +16 -0
- data/lib/notiflows/models/user.rb +111 -0
- data/lib/notiflows/models/user_delete_params.rb +14 -0
- data/lib/notiflows/models/user_list_params.rb +54 -0
- data/lib/notiflows/models/user_retrieve_params.rb +14 -0
- data/lib/notiflows/models/user_upsert_params.rb +122 -0
- data/lib/notiflows/models/users/channel_setting_delete_params.rb +22 -0
- data/lib/notiflows/models/users/channel_setting_retrieve_params.rb +22 -0
- data/lib/notiflows/models/users/channel_setting_update_params.rb +45 -0
- data/lib/notiflows/models/users/channel_settings.rb +91 -0
- data/lib/notiflows/models/users/delivery_list_params.rb +80 -0
- data/lib/notiflows/models/users/delivery_retrieve_params.rb +22 -0
- data/lib/notiflows/models/users/mobile_push_settings.rb +20 -0
- data/lib/notiflows/models/users/notification_list_params.rb +72 -0
- data/lib/notiflows/models/users/notification_retrieve_params.rb +22 -0
- data/lib/notiflows/models/users/preference_retrieve_params.rb +16 -0
- data/lib/notiflows/models/users/preference_update_params.rb +16 -0
- data/lib/notiflows/models/users/preferences.rb +116 -0
- data/lib/notiflows/models/users/slack_settings.rb +29 -0
- data/lib/notiflows/models/users/subscription.rb +45 -0
- data/lib/notiflows/models/users/subscription_list_params.rb +56 -0
- data/lib/notiflows/models/users/subscription_retrieve_params.rb +22 -0
- data/lib/notiflows/models/users/subscription_subscribe_params.rb +28 -0
- data/lib/notiflows/models/users/subscription_unsubscribe_params.rb +22 -0
- data/lib/notiflows/models/users/update_preferences_request.rb +45 -0
- data/lib/notiflows/models.rb +79 -0
- data/lib/notiflows/request_options.rb +77 -0
- data/lib/notiflows/resources/deliveries.rb +77 -0
- data/lib/notiflows/resources/notifications.rb +112 -0
- data/lib/notiflows/resources/notiflows.rb +60 -0
- data/lib/notiflows/resources/topics/subscriptions.rb +106 -0
- data/lib/notiflows/resources/topics.rb +91 -0
- data/lib/notiflows/resources/users/channel_settings.rb +132 -0
- data/lib/notiflows/resources/users/deliveries.rb +82 -0
- data/lib/notiflows/resources/users/notifications.rb +80 -0
- data/lib/notiflows/resources/users/preferences.rb +86 -0
- data/lib/notiflows/resources/users/subscriptions.rb +135 -0
- data/lib/notiflows/resources/users.rb +167 -0
- data/lib/notiflows/version.rb +5 -0
- data/lib/notiflows.rb +109 -0
- data/manifest.yaml +17 -0
- data/rbi/notiflows/client.rbi +82 -0
- data/rbi/notiflows/errors.rbi +205 -0
- data/rbi/notiflows/file_part.rbi +37 -0
- data/rbi/notiflows/internal/cursor_page.rbi +37 -0
- data/rbi/notiflows/internal/transport/base_client.rbi +298 -0
- data/rbi/notiflows/internal/transport/pooled_net_requester.rbi +83 -0
- data/rbi/notiflows/internal/type/array_of.rbi +104 -0
- data/rbi/notiflows/internal/type/base_model.rbi +308 -0
- data/rbi/notiflows/internal/type/base_page.rbi +42 -0
- data/rbi/notiflows/internal/type/boolean.rbi +58 -0
- data/rbi/notiflows/internal/type/converter.rbi +216 -0
- data/rbi/notiflows/internal/type/enum.rbi +82 -0
- data/rbi/notiflows/internal/type/file_input.rbi +59 -0
- data/rbi/notiflows/internal/type/hash_of.rbi +104 -0
- data/rbi/notiflows/internal/type/request_parameters.rbi +29 -0
- data/rbi/notiflows/internal/type/union.rbi +128 -0
- data/rbi/notiflows/internal/type/unknown.rbi +58 -0
- data/rbi/notiflows/internal/util.rbi +487 -0
- data/rbi/notiflows/internal.rbi +18 -0
- data/rbi/notiflows/models/delivery.rbi +226 -0
- data/rbi/notiflows/models/delivery_list_params.rbi +123 -0
- data/rbi/notiflows/models/delivery_retrieve_params.rbi +27 -0
- data/rbi/notiflows/models/notification.rbi +190 -0
- data/rbi/notiflows/models/notification_list_deliveries_params.rbi +126 -0
- data/rbi/notiflows/models/notification_list_params.rbi +112 -0
- data/rbi/notiflows/models/notification_retrieve_params.rbi +30 -0
- data/rbi/notiflows/models/notiflow_run_params.rbi +320 -0
- data/rbi/notiflows/models/notiflow_run_response.rbi +31 -0
- data/rbi/notiflows/models/topic.rbi +32 -0
- data/rbi/notiflows/models/topic_delete_params.rbi +27 -0
- data/rbi/notiflows/models/topic_list_params.rbi +68 -0
- data/rbi/notiflows/models/topic_retrieve_params.rbi +27 -0
- data/rbi/notiflows/models/topics/bulk_operation_response.rbi +93 -0
- data/rbi/notiflows/models/topics/bulk_subscribe_request.rbi +35 -0
- data/rbi/notiflows/models/topics/subscription_list_params.rbi +95 -0
- data/rbi/notiflows/models/topics/subscription_subscribe_bulk_params.rbi +32 -0
- data/rbi/notiflows/models/topics/subscription_unsubscribe_bulk_params.rbi +32 -0
- data/rbi/notiflows/models/user.rbi +126 -0
- data/rbi/notiflows/models/user_delete_params.rbi +27 -0
- data/rbi/notiflows/models/user_list_params.rbi +90 -0
- data/rbi/notiflows/models/user_retrieve_params.rbi +27 -0
- data/rbi/notiflows/models/user_upsert_params.rbi +203 -0
- data/rbi/notiflows/models/users/channel_setting_delete_params.rbi +43 -0
- data/rbi/notiflows/models/users/channel_setting_retrieve_params.rbi +43 -0
- data/rbi/notiflows/models/users/channel_setting_update_params.rbi +92 -0
- data/rbi/notiflows/models/users/channel_settings.rbi +156 -0
- data/rbi/notiflows/models/users/delivery_list_params.rbi +128 -0
- data/rbi/notiflows/models/users/delivery_retrieve_params.rbi +43 -0
- data/rbi/notiflows/models/users/mobile_push_settings.rbi +35 -0
- data/rbi/notiflows/models/users/notification_list_params.rbi +117 -0
- data/rbi/notiflows/models/users/notification_retrieve_params.rbi +43 -0
- data/rbi/notiflows/models/users/preference_retrieve_params.rbi +32 -0
- data/rbi/notiflows/models/users/preference_update_params.rbi +34 -0
- data/rbi/notiflows/models/users/preferences.rbi +241 -0
- data/rbi/notiflows/models/users/slack_settings.rbi +49 -0
- data/rbi/notiflows/models/users/subscription.rbi +64 -0
- data/rbi/notiflows/models/users/subscription_list_params.rbi +95 -0
- data/rbi/notiflows/models/users/subscription_retrieve_params.rbi +43 -0
- data/rbi/notiflows/models/users/subscription_subscribe_params.rbi +47 -0
- data/rbi/notiflows/models/users/subscription_unsubscribe_params.rbi +43 -0
- data/rbi/notiflows/models/users/update_preferences_request.rbi +124 -0
- data/rbi/notiflows/models.rbi +42 -0
- data/rbi/notiflows/request_options.rbi +59 -0
- data/rbi/notiflows/resources/deliveries.rbi +67 -0
- data/rbi/notiflows/resources/notifications.rbi +100 -0
- data/rbi/notiflows/resources/notiflows.rbi +52 -0
- data/rbi/notiflows/resources/topics/subscriptions.rbi +88 -0
- data/rbi/notiflows/resources/topics.rbi +69 -0
- data/rbi/notiflows/resources/users/channel_settings.rbi +104 -0
- data/rbi/notiflows/resources/users/deliveries.rbi +69 -0
- data/rbi/notiflows/resources/users/notifications.rbi +66 -0
- data/rbi/notiflows/resources/users/preferences.rbi +76 -0
- data/rbi/notiflows/resources/users/subscriptions.rbi +102 -0
- data/rbi/notiflows/resources/users.rbi +147 -0
- data/rbi/notiflows/version.rbi +5 -0
- data/sig/notiflows/client.rbs +41 -0
- data/sig/notiflows/errors.rbs +117 -0
- data/sig/notiflows/file_part.rbs +21 -0
- data/sig/notiflows/internal/cursor_page.rbs +22 -0
- data/sig/notiflows/internal/transport/base_client.rbs +133 -0
- data/sig/notiflows/internal/transport/pooled_net_requester.rbs +48 -0
- data/sig/notiflows/internal/type/array_of.rbs +48 -0
- data/sig/notiflows/internal/type/base_model.rbs +102 -0
- data/sig/notiflows/internal/type/base_page.rbs +24 -0
- data/sig/notiflows/internal/type/boolean.rbs +26 -0
- data/sig/notiflows/internal/type/converter.rbs +79 -0
- data/sig/notiflows/internal/type/enum.rbs +32 -0
- data/sig/notiflows/internal/type/file_input.rbs +25 -0
- data/sig/notiflows/internal/type/hash_of.rbs +48 -0
- data/sig/notiflows/internal/type/request_parameters.rbs +19 -0
- data/sig/notiflows/internal/type/union.rbs +52 -0
- data/sig/notiflows/internal/type/unknown.rbs +26 -0
- data/sig/notiflows/internal/util.rbs +185 -0
- data/sig/notiflows/internal.rbs +9 -0
- data/sig/notiflows/models/delivery.rbs +130 -0
- data/sig/notiflows/models/delivery_list_params.rbs +77 -0
- data/sig/notiflows/models/delivery_retrieve_params.rbs +15 -0
- data/sig/notiflows/models/notification.rbs +104 -0
- data/sig/notiflows/models/notification_list_deliveries_params.rbs +77 -0
- data/sig/notiflows/models/notification_list_params.rbs +70 -0
- data/sig/notiflows/models/notification_retrieve_params.rbs +15 -0
- data/sig/notiflows/models/notiflow_run_params.rbs +199 -0
- data/sig/notiflows/models/notiflow_run_response.rbs +13 -0
- data/sig/notiflows/models/topic.rbs +15 -0
- data/sig/notiflows/models/topic_delete_params.rbs +15 -0
- data/sig/notiflows/models/topic_list_params.rbs +38 -0
- data/sig/notiflows/models/topic_retrieve_params.rbs +15 -0
- data/sig/notiflows/models/topics/bulk_operation_response.rbs +39 -0
- data/sig/notiflows/models/topics/bulk_subscribe_request.rbs +15 -0
- data/sig/notiflows/models/topics/subscription_list_params.rbs +58 -0
- data/sig/notiflows/models/topics/subscription_subscribe_bulk_params.rbs +17 -0
- data/sig/notiflows/models/topics/subscription_unsubscribe_bulk_params.rbs +17 -0
- data/sig/notiflows/models/user.rbs +75 -0
- data/sig/notiflows/models/user_delete_params.rbs +15 -0
- data/sig/notiflows/models/user_list_params.rbs +56 -0
- data/sig/notiflows/models/user_retrieve_params.rbs +15 -0
- data/sig/notiflows/models/user_upsert_params.rbs +112 -0
- data/sig/notiflows/models/users/channel_setting_delete_params.rbs +26 -0
- data/sig/notiflows/models/users/channel_setting_retrieve_params.rbs +26 -0
- data/sig/notiflows/models/users/channel_setting_update_params.rbs +42 -0
- data/sig/notiflows/models/users/channel_settings.rbs +68 -0
- data/sig/notiflows/models/users/delivery_list_params.rbs +79 -0
- data/sig/notiflows/models/users/delivery_retrieve_params.rbs +26 -0
- data/sig/notiflows/models/users/mobile_push_settings.rbs +15 -0
- data/sig/notiflows/models/users/notification_list_params.rbs +72 -0
- data/sig/notiflows/models/users/notification_retrieve_params.rbs +26 -0
- data/sig/notiflows/models/users/preference_retrieve_params.rbs +17 -0
- data/sig/notiflows/models/users/preference_update_params.rbs +17 -0
- data/sig/notiflows/models/users/preferences.rbs +118 -0
- data/sig/notiflows/models/users/slack_settings.rbs +24 -0
- data/sig/notiflows/models/users/subscription.rbs +32 -0
- data/sig/notiflows/models/users/subscription_list_params.rbs +58 -0
- data/sig/notiflows/models/users/subscription_retrieve_params.rbs +26 -0
- data/sig/notiflows/models/users/subscription_subscribe_params.rbs +25 -0
- data/sig/notiflows/models/users/subscription_unsubscribe_params.rbs +26 -0
- data/sig/notiflows/models/users/update_preferences_request.rbs +52 -0
- data/sig/notiflows/models.rbs +39 -0
- data/sig/notiflows/request_options.rbs +34 -0
- data/sig/notiflows/resources/deliveries.rbs +24 -0
- data/sig/notiflows/resources/notifications.rbs +36 -0
- data/sig/notiflows/resources/notiflows.rbs +16 -0
- data/sig/notiflows/resources/topics/subscriptions.rbs +31 -0
- data/sig/notiflows/resources/topics.rbs +23 -0
- data/sig/notiflows/resources/users/channel_settings.rbs +28 -0
- data/sig/notiflows/resources/users/deliveries.rbs +28 -0
- data/sig/notiflows/resources/users/notifications.rbs +27 -0
- data/sig/notiflows/resources/users/preferences.rbs +21 -0
- data/sig/notiflows/resources/users/subscriptions.rbs +37 -0
- data/sig/notiflows/resources/users.rbs +52 -0
- data/sig/notiflows/version.rbs +3 -0
- metadata +302 -0
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Notiflows
|
|
4
|
+
module Models
|
|
5
|
+
class Delivery < Notiflows::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Notiflows::Delivery, Notiflows::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Delivery ID
|
|
12
|
+
sig { returns(String) }
|
|
13
|
+
attr_accessor :id
|
|
14
|
+
|
|
15
|
+
# Type of channel used for this delivery
|
|
16
|
+
sig { returns(Notiflows::Delivery::ChannelType::TaggedSymbol) }
|
|
17
|
+
attr_accessor :channel_type
|
|
18
|
+
|
|
19
|
+
# When the delivery was created
|
|
20
|
+
sig { returns(Time) }
|
|
21
|
+
attr_accessor :created_at
|
|
22
|
+
|
|
23
|
+
# ID of the parent notification
|
|
24
|
+
sig { returns(String) }
|
|
25
|
+
attr_accessor :notification_id
|
|
26
|
+
|
|
27
|
+
# ID of the notiflow
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :notiflow_id
|
|
30
|
+
|
|
31
|
+
# Internal ID of the recipient
|
|
32
|
+
sig { returns(String) }
|
|
33
|
+
attr_accessor :recipient_id
|
|
34
|
+
|
|
35
|
+
# Delivery status:
|
|
36
|
+
#
|
|
37
|
+
# - `pending`: Queued for sending
|
|
38
|
+
# - `sent`: Successfully sent to the provider
|
|
39
|
+
# - `failed`: Delivery failed
|
|
40
|
+
sig { returns(Notiflows::Delivery::Status::TaggedSymbol) }
|
|
41
|
+
attr_accessor :status
|
|
42
|
+
|
|
43
|
+
# When the delivery was last updated
|
|
44
|
+
sig { returns(Time) }
|
|
45
|
+
attr_accessor :updated_at
|
|
46
|
+
|
|
47
|
+
# Internal ID of the actor
|
|
48
|
+
sig { returns(T.nilable(String)) }
|
|
49
|
+
attr_accessor :actor_id
|
|
50
|
+
|
|
51
|
+
# When the recipient archived it
|
|
52
|
+
sig { returns(T.nilable(Time)) }
|
|
53
|
+
attr_accessor :archived_at
|
|
54
|
+
|
|
55
|
+
# ID of the channel used for delivery
|
|
56
|
+
sig { returns(T.nilable(String)) }
|
|
57
|
+
attr_accessor :channel_id
|
|
58
|
+
|
|
59
|
+
# When the recipient clicked/interacted
|
|
60
|
+
sig { returns(T.nilable(Time)) }
|
|
61
|
+
attr_accessor :clicked_at
|
|
62
|
+
|
|
63
|
+
# Rendered notification content (varies by channel type)
|
|
64
|
+
sig { returns(T.nilable(T.anything)) }
|
|
65
|
+
attr_reader :data
|
|
66
|
+
|
|
67
|
+
sig { params(data: T.anything).void }
|
|
68
|
+
attr_writer :data
|
|
69
|
+
|
|
70
|
+
# When the recipient marked it as read
|
|
71
|
+
sig { returns(T.nilable(Time)) }
|
|
72
|
+
attr_accessor :read_at
|
|
73
|
+
|
|
74
|
+
# When the recipient saw the notification
|
|
75
|
+
sig { returns(T.nilable(Time)) }
|
|
76
|
+
attr_accessor :seen_at
|
|
77
|
+
|
|
78
|
+
# When the delivery was sent to the provider
|
|
79
|
+
sig { returns(T.nilable(Time)) }
|
|
80
|
+
attr_accessor :sent_at
|
|
81
|
+
|
|
82
|
+
# Topic name if triggered via topic
|
|
83
|
+
sig { returns(T.nilable(String)) }
|
|
84
|
+
attr_accessor :topic
|
|
85
|
+
|
|
86
|
+
# A single delivery attempt through a specific channel
|
|
87
|
+
sig do
|
|
88
|
+
params(
|
|
89
|
+
id: String,
|
|
90
|
+
channel_type: Notiflows::Delivery::ChannelType::OrSymbol,
|
|
91
|
+
created_at: Time,
|
|
92
|
+
notification_id: String,
|
|
93
|
+
notiflow_id: String,
|
|
94
|
+
recipient_id: String,
|
|
95
|
+
status: Notiflows::Delivery::Status::OrSymbol,
|
|
96
|
+
updated_at: Time,
|
|
97
|
+
actor_id: T.nilable(String),
|
|
98
|
+
archived_at: T.nilable(Time),
|
|
99
|
+
channel_id: T.nilable(String),
|
|
100
|
+
clicked_at: T.nilable(Time),
|
|
101
|
+
data: T.anything,
|
|
102
|
+
read_at: T.nilable(Time),
|
|
103
|
+
seen_at: T.nilable(Time),
|
|
104
|
+
sent_at: T.nilable(Time),
|
|
105
|
+
topic: T.nilable(String)
|
|
106
|
+
).returns(T.attached_class)
|
|
107
|
+
end
|
|
108
|
+
def self.new(
|
|
109
|
+
# Delivery ID
|
|
110
|
+
id:,
|
|
111
|
+
# Type of channel used for this delivery
|
|
112
|
+
channel_type:,
|
|
113
|
+
# When the delivery was created
|
|
114
|
+
created_at:,
|
|
115
|
+
# ID of the parent notification
|
|
116
|
+
notification_id:,
|
|
117
|
+
# ID of the notiflow
|
|
118
|
+
notiflow_id:,
|
|
119
|
+
# Internal ID of the recipient
|
|
120
|
+
recipient_id:,
|
|
121
|
+
# Delivery status:
|
|
122
|
+
#
|
|
123
|
+
# - `pending`: Queued for sending
|
|
124
|
+
# - `sent`: Successfully sent to the provider
|
|
125
|
+
# - `failed`: Delivery failed
|
|
126
|
+
status:,
|
|
127
|
+
# When the delivery was last updated
|
|
128
|
+
updated_at:,
|
|
129
|
+
# Internal ID of the actor
|
|
130
|
+
actor_id: nil,
|
|
131
|
+
# When the recipient archived it
|
|
132
|
+
archived_at: nil,
|
|
133
|
+
# ID of the channel used for delivery
|
|
134
|
+
channel_id: nil,
|
|
135
|
+
# When the recipient clicked/interacted
|
|
136
|
+
clicked_at: nil,
|
|
137
|
+
# Rendered notification content (varies by channel type)
|
|
138
|
+
data: nil,
|
|
139
|
+
# When the recipient marked it as read
|
|
140
|
+
read_at: nil,
|
|
141
|
+
# When the recipient saw the notification
|
|
142
|
+
seen_at: nil,
|
|
143
|
+
# When the delivery was sent to the provider
|
|
144
|
+
sent_at: nil,
|
|
145
|
+
# Topic name if triggered via topic
|
|
146
|
+
topic: nil
|
|
147
|
+
)
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
sig do
|
|
151
|
+
override.returns(
|
|
152
|
+
{
|
|
153
|
+
id: String,
|
|
154
|
+
channel_type: Notiflows::Delivery::ChannelType::TaggedSymbol,
|
|
155
|
+
created_at: Time,
|
|
156
|
+
notification_id: String,
|
|
157
|
+
notiflow_id: String,
|
|
158
|
+
recipient_id: String,
|
|
159
|
+
status: Notiflows::Delivery::Status::TaggedSymbol,
|
|
160
|
+
updated_at: Time,
|
|
161
|
+
actor_id: T.nilable(String),
|
|
162
|
+
archived_at: T.nilable(Time),
|
|
163
|
+
channel_id: T.nilable(String),
|
|
164
|
+
clicked_at: T.nilable(Time),
|
|
165
|
+
data: T.anything,
|
|
166
|
+
read_at: T.nilable(Time),
|
|
167
|
+
seen_at: T.nilable(Time),
|
|
168
|
+
sent_at: T.nilable(Time),
|
|
169
|
+
topic: T.nilable(String)
|
|
170
|
+
}
|
|
171
|
+
)
|
|
172
|
+
end
|
|
173
|
+
def to_hash
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
# Type of channel used for this delivery
|
|
177
|
+
module ChannelType
|
|
178
|
+
extend Notiflows::Internal::Type::Enum
|
|
179
|
+
|
|
180
|
+
TaggedSymbol =
|
|
181
|
+
T.type_alias { T.all(Symbol, Notiflows::Delivery::ChannelType) }
|
|
182
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
183
|
+
|
|
184
|
+
IN_APP = T.let(:in_app, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
185
|
+
EMAIL = T.let(:email, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
186
|
+
SMS = T.let(:sms, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
187
|
+
CHAT = T.let(:chat, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
188
|
+
WEB_PUSH =
|
|
189
|
+
T.let(:web_push, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
190
|
+
MOBILE_PUSH =
|
|
191
|
+
T.let(:mobile_push, Notiflows::Delivery::ChannelType::TaggedSymbol)
|
|
192
|
+
|
|
193
|
+
sig do
|
|
194
|
+
override.returns(
|
|
195
|
+
T::Array[Notiflows::Delivery::ChannelType::TaggedSymbol]
|
|
196
|
+
)
|
|
197
|
+
end
|
|
198
|
+
def self.values
|
|
199
|
+
end
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
# Delivery status:
|
|
203
|
+
#
|
|
204
|
+
# - `pending`: Queued for sending
|
|
205
|
+
# - `sent`: Successfully sent to the provider
|
|
206
|
+
# - `failed`: Delivery failed
|
|
207
|
+
module Status
|
|
208
|
+
extend Notiflows::Internal::Type::Enum
|
|
209
|
+
|
|
210
|
+
TaggedSymbol =
|
|
211
|
+
T.type_alias { T.all(Symbol, Notiflows::Delivery::Status) }
|
|
212
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
213
|
+
|
|
214
|
+
PENDING = T.let(:pending, Notiflows::Delivery::Status::TaggedSymbol)
|
|
215
|
+
SENT = T.let(:sent, Notiflows::Delivery::Status::TaggedSymbol)
|
|
216
|
+
FAILED = T.let(:failed, Notiflows::Delivery::Status::TaggedSymbol)
|
|
217
|
+
|
|
218
|
+
sig do
|
|
219
|
+
override.returns(T::Array[Notiflows::Delivery::Status::TaggedSymbol])
|
|
220
|
+
end
|
|
221
|
+
def self.values
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
end
|
|
225
|
+
end
|
|
226
|
+
end
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Notiflows
|
|
4
|
+
module Models
|
|
5
|
+
class DeliveryListParams < Notiflows::Internal::Type::BaseModel
|
|
6
|
+
extend Notiflows::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Notiflows::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Notiflows::DeliveryListParams, Notiflows::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Cursor for fetching the next page
|
|
15
|
+
sig { returns(T.nilable(String)) }
|
|
16
|
+
attr_reader :after
|
|
17
|
+
|
|
18
|
+
sig { params(after: String).void }
|
|
19
|
+
attr_writer :after
|
|
20
|
+
|
|
21
|
+
# Cursor for fetching the previous page
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_reader :before
|
|
24
|
+
|
|
25
|
+
sig { params(before: String).void }
|
|
26
|
+
attr_writer :before
|
|
27
|
+
|
|
28
|
+
# Filter by channel ID (UUID)
|
|
29
|
+
sig { returns(T.nilable(String)) }
|
|
30
|
+
attr_reader :channel_id
|
|
31
|
+
|
|
32
|
+
sig { params(channel_id: String).void }
|
|
33
|
+
attr_writer :channel_id
|
|
34
|
+
|
|
35
|
+
# Filter by created after (ISO 8601 datetime)
|
|
36
|
+
sig { returns(T.nilable(String)) }
|
|
37
|
+
attr_reader :created_after
|
|
38
|
+
|
|
39
|
+
sig { params(created_after: String).void }
|
|
40
|
+
attr_writer :created_after
|
|
41
|
+
|
|
42
|
+
# Filter by created before (ISO 8601 datetime)
|
|
43
|
+
sig { returns(T.nilable(String)) }
|
|
44
|
+
attr_reader :created_before
|
|
45
|
+
|
|
46
|
+
sig { params(created_before: String).void }
|
|
47
|
+
attr_writer :created_before
|
|
48
|
+
|
|
49
|
+
# Number of items per page (default: 25, max: 1000)
|
|
50
|
+
sig { returns(T.nilable(Integer)) }
|
|
51
|
+
attr_reader :limit
|
|
52
|
+
|
|
53
|
+
sig { params(limit: Integer).void }
|
|
54
|
+
attr_writer :limit
|
|
55
|
+
|
|
56
|
+
# Filter by status (pending, sent, failed)
|
|
57
|
+
sig { returns(T.nilable(String)) }
|
|
58
|
+
attr_reader :status
|
|
59
|
+
|
|
60
|
+
sig { params(status: String).void }
|
|
61
|
+
attr_writer :status
|
|
62
|
+
|
|
63
|
+
# Filter by topic name
|
|
64
|
+
sig { returns(T.nilable(String)) }
|
|
65
|
+
attr_reader :topic
|
|
66
|
+
|
|
67
|
+
sig { params(topic: String).void }
|
|
68
|
+
attr_writer :topic
|
|
69
|
+
|
|
70
|
+
sig do
|
|
71
|
+
params(
|
|
72
|
+
after: String,
|
|
73
|
+
before: String,
|
|
74
|
+
channel_id: String,
|
|
75
|
+
created_after: String,
|
|
76
|
+
created_before: String,
|
|
77
|
+
limit: Integer,
|
|
78
|
+
status: String,
|
|
79
|
+
topic: String,
|
|
80
|
+
request_options: Notiflows::RequestOptions::OrHash
|
|
81
|
+
).returns(T.attached_class)
|
|
82
|
+
end
|
|
83
|
+
def self.new(
|
|
84
|
+
# Cursor for fetching the next page
|
|
85
|
+
after: nil,
|
|
86
|
+
# Cursor for fetching the previous page
|
|
87
|
+
before: nil,
|
|
88
|
+
# Filter by channel ID (UUID)
|
|
89
|
+
channel_id: nil,
|
|
90
|
+
# Filter by created after (ISO 8601 datetime)
|
|
91
|
+
created_after: nil,
|
|
92
|
+
# Filter by created before (ISO 8601 datetime)
|
|
93
|
+
created_before: nil,
|
|
94
|
+
# Number of items per page (default: 25, max: 1000)
|
|
95
|
+
limit: nil,
|
|
96
|
+
# Filter by status (pending, sent, failed)
|
|
97
|
+
status: nil,
|
|
98
|
+
# Filter by topic name
|
|
99
|
+
topic: nil,
|
|
100
|
+
request_options: {}
|
|
101
|
+
)
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
sig do
|
|
105
|
+
override.returns(
|
|
106
|
+
{
|
|
107
|
+
after: String,
|
|
108
|
+
before: String,
|
|
109
|
+
channel_id: String,
|
|
110
|
+
created_after: String,
|
|
111
|
+
created_before: String,
|
|
112
|
+
limit: Integer,
|
|
113
|
+
status: String,
|
|
114
|
+
topic: String,
|
|
115
|
+
request_options: Notiflows::RequestOptions
|
|
116
|
+
}
|
|
117
|
+
)
|
|
118
|
+
end
|
|
119
|
+
def to_hash
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Notiflows
|
|
4
|
+
module Models
|
|
5
|
+
class DeliveryRetrieveParams < Notiflows::Internal::Type::BaseModel
|
|
6
|
+
extend Notiflows::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Notiflows::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Notiflows::DeliveryRetrieveParams, Notiflows::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig do
|
|
15
|
+
params(request_options: Notiflows::RequestOptions::OrHash).returns(
|
|
16
|
+
T.attached_class
|
|
17
|
+
)
|
|
18
|
+
end
|
|
19
|
+
def self.new(request_options: {})
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
sig { override.returns({ request_options: Notiflows::RequestOptions }) }
|
|
23
|
+
def to_hash
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Notiflows
|
|
4
|
+
module Models
|
|
5
|
+
class Notification < Notiflows::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Notiflows::Notification, Notiflows::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Notification ID
|
|
12
|
+
sig { returns(String) }
|
|
13
|
+
attr_accessor :id
|
|
14
|
+
|
|
15
|
+
# When the notification was created
|
|
16
|
+
sig { returns(Time) }
|
|
17
|
+
attr_accessor :created_at
|
|
18
|
+
|
|
19
|
+
# Template variables passed when running the notiflow
|
|
20
|
+
sig { returns(T.anything) }
|
|
21
|
+
attr_accessor :data
|
|
22
|
+
|
|
23
|
+
# ID of the notiflow that generated this notification
|
|
24
|
+
sig { returns(String) }
|
|
25
|
+
attr_accessor :notiflow_id
|
|
26
|
+
|
|
27
|
+
# ID of the specific notiflow run
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :notiflow_run_id
|
|
30
|
+
|
|
31
|
+
# Internal ID of the recipient user
|
|
32
|
+
sig { returns(String) }
|
|
33
|
+
attr_accessor :recipient_id
|
|
34
|
+
|
|
35
|
+
# Notification processing status:
|
|
36
|
+
#
|
|
37
|
+
# - `pending`: Queued for processing
|
|
38
|
+
# - `processing`: Currently being processed
|
|
39
|
+
# - `processed`: Successfully processed (deliveries created)
|
|
40
|
+
# - `failed`: Processing failed
|
|
41
|
+
sig { returns(Notiflows::Notification::Status::TaggedSymbol) }
|
|
42
|
+
attr_accessor :status
|
|
43
|
+
|
|
44
|
+
# When the notification was last updated
|
|
45
|
+
sig { returns(Time) }
|
|
46
|
+
attr_accessor :updated_at
|
|
47
|
+
|
|
48
|
+
# A user (recipient) in your project
|
|
49
|
+
sig { returns(T.nilable(Notiflows::User)) }
|
|
50
|
+
attr_reader :actor
|
|
51
|
+
|
|
52
|
+
sig { params(actor: T.nilable(Notiflows::User::OrHash)).void }
|
|
53
|
+
attr_writer :actor
|
|
54
|
+
|
|
55
|
+
# Internal ID of the actor (user who triggered the notification)
|
|
56
|
+
sig { returns(T.nilable(String)) }
|
|
57
|
+
attr_accessor :actor_id
|
|
58
|
+
|
|
59
|
+
# Delivery attempts for this notification (when expanded)
|
|
60
|
+
sig { returns(T.nilable(T::Array[Notiflows::Delivery])) }
|
|
61
|
+
attr_reader :deliveries
|
|
62
|
+
|
|
63
|
+
sig { params(deliveries: T::Array[Notiflows::Delivery::OrHash]).void }
|
|
64
|
+
attr_writer :deliveries
|
|
65
|
+
|
|
66
|
+
# When the notification was processed
|
|
67
|
+
sig { returns(T.nilable(Time)) }
|
|
68
|
+
attr_accessor :processed_at
|
|
69
|
+
|
|
70
|
+
# A user (recipient) in your project
|
|
71
|
+
sig { returns(T.nilable(Notiflows::User)) }
|
|
72
|
+
attr_reader :recipient
|
|
73
|
+
|
|
74
|
+
sig { params(recipient: Notiflows::User::OrHash).void }
|
|
75
|
+
attr_writer :recipient
|
|
76
|
+
|
|
77
|
+
# Topic name if triggered via topic
|
|
78
|
+
sig { returns(T.nilable(String)) }
|
|
79
|
+
attr_accessor :topic
|
|
80
|
+
|
|
81
|
+
# A notification sent to a recipient through a notiflow run
|
|
82
|
+
sig do
|
|
83
|
+
params(
|
|
84
|
+
id: String,
|
|
85
|
+
created_at: Time,
|
|
86
|
+
data: T.anything,
|
|
87
|
+
notiflow_id: String,
|
|
88
|
+
notiflow_run_id: String,
|
|
89
|
+
recipient_id: String,
|
|
90
|
+
status: Notiflows::Notification::Status::OrSymbol,
|
|
91
|
+
updated_at: Time,
|
|
92
|
+
actor: T.nilable(Notiflows::User::OrHash),
|
|
93
|
+
actor_id: T.nilable(String),
|
|
94
|
+
deliveries: T::Array[Notiflows::Delivery::OrHash],
|
|
95
|
+
processed_at: T.nilable(Time),
|
|
96
|
+
recipient: Notiflows::User::OrHash,
|
|
97
|
+
topic: T.nilable(String)
|
|
98
|
+
).returns(T.attached_class)
|
|
99
|
+
end
|
|
100
|
+
def self.new(
|
|
101
|
+
# Notification ID
|
|
102
|
+
id:,
|
|
103
|
+
# When the notification was created
|
|
104
|
+
created_at:,
|
|
105
|
+
# Template variables passed when running the notiflow
|
|
106
|
+
data:,
|
|
107
|
+
# ID of the notiflow that generated this notification
|
|
108
|
+
notiflow_id:,
|
|
109
|
+
# ID of the specific notiflow run
|
|
110
|
+
notiflow_run_id:,
|
|
111
|
+
# Internal ID of the recipient user
|
|
112
|
+
recipient_id:,
|
|
113
|
+
# Notification processing status:
|
|
114
|
+
#
|
|
115
|
+
# - `pending`: Queued for processing
|
|
116
|
+
# - `processing`: Currently being processed
|
|
117
|
+
# - `processed`: Successfully processed (deliveries created)
|
|
118
|
+
# - `failed`: Processing failed
|
|
119
|
+
status:,
|
|
120
|
+
# When the notification was last updated
|
|
121
|
+
updated_at:,
|
|
122
|
+
# A user (recipient) in your project
|
|
123
|
+
actor: nil,
|
|
124
|
+
# Internal ID of the actor (user who triggered the notification)
|
|
125
|
+
actor_id: nil,
|
|
126
|
+
# Delivery attempts for this notification (when expanded)
|
|
127
|
+
deliveries: nil,
|
|
128
|
+
# When the notification was processed
|
|
129
|
+
processed_at: nil,
|
|
130
|
+
# A user (recipient) in your project
|
|
131
|
+
recipient: nil,
|
|
132
|
+
# Topic name if triggered via topic
|
|
133
|
+
topic: nil
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
sig do
|
|
138
|
+
override.returns(
|
|
139
|
+
{
|
|
140
|
+
id: String,
|
|
141
|
+
created_at: Time,
|
|
142
|
+
data: T.anything,
|
|
143
|
+
notiflow_id: String,
|
|
144
|
+
notiflow_run_id: String,
|
|
145
|
+
recipient_id: String,
|
|
146
|
+
status: Notiflows::Notification::Status::TaggedSymbol,
|
|
147
|
+
updated_at: Time,
|
|
148
|
+
actor: T.nilable(Notiflows::User),
|
|
149
|
+
actor_id: T.nilable(String),
|
|
150
|
+
deliveries: T::Array[Notiflows::Delivery],
|
|
151
|
+
processed_at: T.nilable(Time),
|
|
152
|
+
recipient: Notiflows::User,
|
|
153
|
+
topic: T.nilable(String)
|
|
154
|
+
}
|
|
155
|
+
)
|
|
156
|
+
end
|
|
157
|
+
def to_hash
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
# Notification processing status:
|
|
161
|
+
#
|
|
162
|
+
# - `pending`: Queued for processing
|
|
163
|
+
# - `processing`: Currently being processed
|
|
164
|
+
# - `processed`: Successfully processed (deliveries created)
|
|
165
|
+
# - `failed`: Processing failed
|
|
166
|
+
module Status
|
|
167
|
+
extend Notiflows::Internal::Type::Enum
|
|
168
|
+
|
|
169
|
+
TaggedSymbol =
|
|
170
|
+
T.type_alias { T.all(Symbol, Notiflows::Notification::Status) }
|
|
171
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
172
|
+
|
|
173
|
+
PENDING = T.let(:pending, Notiflows::Notification::Status::TaggedSymbol)
|
|
174
|
+
PROCESSING =
|
|
175
|
+
T.let(:processing, Notiflows::Notification::Status::TaggedSymbol)
|
|
176
|
+
PROCESSED =
|
|
177
|
+
T.let(:processed, Notiflows::Notification::Status::TaggedSymbol)
|
|
178
|
+
FAILED = T.let(:failed, Notiflows::Notification::Status::TaggedSymbol)
|
|
179
|
+
|
|
180
|
+
sig do
|
|
181
|
+
override.returns(
|
|
182
|
+
T::Array[Notiflows::Notification::Status::TaggedSymbol]
|
|
183
|
+
)
|
|
184
|
+
end
|
|
185
|
+
def self.values
|
|
186
|
+
end
|
|
187
|
+
end
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Notiflows
|
|
4
|
+
module Models
|
|
5
|
+
class NotificationListDeliveriesParams < Notiflows::Internal::Type::BaseModel
|
|
6
|
+
extend Notiflows::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Notiflows::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
Notiflows::NotificationListDeliveriesParams,
|
|
13
|
+
Notiflows::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Cursor for fetching the next page
|
|
18
|
+
sig { returns(T.nilable(String)) }
|
|
19
|
+
attr_reader :after
|
|
20
|
+
|
|
21
|
+
sig { params(after: String).void }
|
|
22
|
+
attr_writer :after
|
|
23
|
+
|
|
24
|
+
# Cursor for fetching the previous page
|
|
25
|
+
sig { returns(T.nilable(String)) }
|
|
26
|
+
attr_reader :before
|
|
27
|
+
|
|
28
|
+
sig { params(before: String).void }
|
|
29
|
+
attr_writer :before
|
|
30
|
+
|
|
31
|
+
# Filter by channel ID (UUID)
|
|
32
|
+
sig { returns(T.nilable(String)) }
|
|
33
|
+
attr_reader :channel_id
|
|
34
|
+
|
|
35
|
+
sig { params(channel_id: String).void }
|
|
36
|
+
attr_writer :channel_id
|
|
37
|
+
|
|
38
|
+
# Filter by created after (ISO 8601 datetime)
|
|
39
|
+
sig { returns(T.nilable(String)) }
|
|
40
|
+
attr_reader :created_after
|
|
41
|
+
|
|
42
|
+
sig { params(created_after: String).void }
|
|
43
|
+
attr_writer :created_after
|
|
44
|
+
|
|
45
|
+
# Filter by created before (ISO 8601 datetime)
|
|
46
|
+
sig { returns(T.nilable(String)) }
|
|
47
|
+
attr_reader :created_before
|
|
48
|
+
|
|
49
|
+
sig { params(created_before: String).void }
|
|
50
|
+
attr_writer :created_before
|
|
51
|
+
|
|
52
|
+
# Number of items per page (default: 25, max: 1000)
|
|
53
|
+
sig { returns(T.nilable(Integer)) }
|
|
54
|
+
attr_reader :limit
|
|
55
|
+
|
|
56
|
+
sig { params(limit: Integer).void }
|
|
57
|
+
attr_writer :limit
|
|
58
|
+
|
|
59
|
+
# Filter by status (pending, sent, failed)
|
|
60
|
+
sig { returns(T.nilable(String)) }
|
|
61
|
+
attr_reader :status
|
|
62
|
+
|
|
63
|
+
sig { params(status: String).void }
|
|
64
|
+
attr_writer :status
|
|
65
|
+
|
|
66
|
+
# Filter by topic name
|
|
67
|
+
sig { returns(T.nilable(String)) }
|
|
68
|
+
attr_reader :topic
|
|
69
|
+
|
|
70
|
+
sig { params(topic: String).void }
|
|
71
|
+
attr_writer :topic
|
|
72
|
+
|
|
73
|
+
sig do
|
|
74
|
+
params(
|
|
75
|
+
after: String,
|
|
76
|
+
before: String,
|
|
77
|
+
channel_id: String,
|
|
78
|
+
created_after: String,
|
|
79
|
+
created_before: String,
|
|
80
|
+
limit: Integer,
|
|
81
|
+
status: String,
|
|
82
|
+
topic: String,
|
|
83
|
+
request_options: Notiflows::RequestOptions::OrHash
|
|
84
|
+
).returns(T.attached_class)
|
|
85
|
+
end
|
|
86
|
+
def self.new(
|
|
87
|
+
# Cursor for fetching the next page
|
|
88
|
+
after: nil,
|
|
89
|
+
# Cursor for fetching the previous page
|
|
90
|
+
before: nil,
|
|
91
|
+
# Filter by channel ID (UUID)
|
|
92
|
+
channel_id: nil,
|
|
93
|
+
# Filter by created after (ISO 8601 datetime)
|
|
94
|
+
created_after: nil,
|
|
95
|
+
# Filter by created before (ISO 8601 datetime)
|
|
96
|
+
created_before: nil,
|
|
97
|
+
# Number of items per page (default: 25, max: 1000)
|
|
98
|
+
limit: nil,
|
|
99
|
+
# Filter by status (pending, sent, failed)
|
|
100
|
+
status: nil,
|
|
101
|
+
# Filter by topic name
|
|
102
|
+
topic: nil,
|
|
103
|
+
request_options: {}
|
|
104
|
+
)
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
sig do
|
|
108
|
+
override.returns(
|
|
109
|
+
{
|
|
110
|
+
after: String,
|
|
111
|
+
before: String,
|
|
112
|
+
channel_id: String,
|
|
113
|
+
created_after: String,
|
|
114
|
+
created_before: String,
|
|
115
|
+
limit: Integer,
|
|
116
|
+
status: String,
|
|
117
|
+
topic: String,
|
|
118
|
+
request_options: Notiflows::RequestOptions
|
|
119
|
+
}
|
|
120
|
+
)
|
|
121
|
+
end
|
|
122
|
+
def to_hash
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
end
|