trycourier 4.8.0 → 4.9.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 (176) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +32 -0
  3. data/README.md +1 -1
  4. data/lib/courier/client.rb +8 -0
  5. data/lib/courier/internal/util.rb +19 -6
  6. data/lib/courier/models/channel.rb +75 -0
  7. data/lib/courier/models/channel_metadata.rb +15 -0
  8. data/lib/courier/models/elemental_content.rb +2 -2
  9. data/lib/courier/models/elemental_html_node_with_type.rb +24 -0
  10. data/lib/courier/models/elemental_node.rb +3 -1
  11. data/lib/courier/models/message_channels.rb +8 -0
  12. data/lib/courier/models/message_providers.rb +8 -0
  13. data/lib/courier/models/message_providers_type.rb +38 -0
  14. data/lib/courier/models/metadata.rb +15 -0
  15. data/lib/courier/models/notification_archive_params.rb +20 -0
  16. data/lib/courier/models/notification_create_params.rb +14 -0
  17. data/lib/courier/models/notification_list_params.rb +13 -4
  18. data/lib/courier/models/notification_list_response.rb +108 -93
  19. data/lib/courier/models/notification_list_versions_params.rb +37 -0
  20. data/lib/courier/models/notification_publish_params.rb +20 -0
  21. data/lib/courier/models/notification_replace_params.rb +20 -0
  22. data/lib/courier/models/notification_retrieve_params.rb +33 -0
  23. data/lib/courier/models/notification_template_create_request.rb +45 -0
  24. data/lib/courier/models/notification_template_get_response.rb +92 -0
  25. data/lib/courier/models/notification_template_mutation_response.rb +51 -0
  26. data/lib/courier/models/notification_template_payload.rb +98 -0
  27. data/lib/courier/models/notification_template_publish_request.rb +19 -0
  28. data/lib/courier/models/notification_template_summary.rb +81 -0
  29. data/lib/courier/models/notification_template_update_request.rb +46 -0
  30. data/lib/courier/models/notification_template_version_list_response.rb +22 -0
  31. data/lib/courier/models/provider.rb +67 -0
  32. data/lib/courier/models/provider_create_params.rb +52 -0
  33. data/lib/courier/models/provider_delete_params.rb +20 -0
  34. data/lib/courier/models/provider_list_params.rb +22 -0
  35. data/lib/courier/models/provider_list_response.rb +24 -0
  36. data/lib/courier/models/provider_retrieve_params.rb +20 -0
  37. data/lib/courier/models/provider_update_params.rb +58 -0
  38. data/lib/courier/models/providers/catalog_list_params.rb +44 -0
  39. data/lib/courier/models/providers/catalog_list_response.rb +26 -0
  40. data/lib/courier/models/providers_catalog_entry.rb +86 -0
  41. data/lib/courier/models/routing_strategy_archive_params.rb +20 -0
  42. data/lib/courier/models/routing_strategy_create_params.rb +14 -0
  43. data/lib/courier/models/routing_strategy_create_request.rb +58 -0
  44. data/lib/courier/models/routing_strategy_get_response.rb +99 -0
  45. data/lib/courier/models/routing_strategy_list_params.rb +30 -0
  46. data/lib/courier/models/routing_strategy_list_response.rb +24 -0
  47. data/lib/courier/models/routing_strategy_mutation_response.rb +19 -0
  48. data/lib/courier/models/routing_strategy_replace_params.rb +20 -0
  49. data/lib/courier/models/routing_strategy_replace_request.rb +59 -0
  50. data/lib/courier/models/routing_strategy_retrieve_params.rb +20 -0
  51. data/lib/courier/models/routing_strategy_summary.rb +75 -0
  52. data/lib/courier/models/send_message_params.rb +6 -154
  53. data/lib/courier/models/tenant_template_input.rb +6 -152
  54. data/lib/courier/models/timeouts.rb +21 -0
  55. data/lib/courier/models/version_node.rb +46 -0
  56. data/lib/courier/models.rb +86 -0
  57. data/lib/courier/resources/notifications.rb +165 -3
  58. data/lib/courier/resources/providers/catalog.rb +49 -0
  59. data/lib/courier/resources/providers.rb +150 -0
  60. data/lib/courier/resources/routing_strategies.rb +151 -0
  61. data/lib/courier/version.rb +1 -1
  62. data/lib/courier.rb +47 -0
  63. data/rbi/courier/client.rbi +6 -0
  64. data/rbi/courier/internal/util.rbi +8 -0
  65. data/rbi/courier/models/channel.rbi +106 -0
  66. data/rbi/courier/models/channel_metadata.rbi +28 -0
  67. data/rbi/courier/models/elemental_content.rbi +6 -3
  68. data/rbi/courier/models/elemental_html_node_with_type.rbi +59 -0
  69. data/rbi/courier/models/elemental_node.rbi +2 -1
  70. data/rbi/courier/models/message_channels.rbi +11 -0
  71. data/rbi/courier/models/message_providers.rbi +11 -0
  72. data/rbi/courier/models/message_providers_type.rbi +60 -0
  73. data/rbi/courier/models/metadata.rbi +26 -0
  74. data/rbi/courier/models/notification_archive_params.rbi +35 -0
  75. data/rbi/courier/models/notification_create_params.rbi +27 -0
  76. data/rbi/courier/models/notification_list_params.rbi +15 -2
  77. data/rbi/courier/models/notification_list_response.rbi +159 -119
  78. data/rbi/courier/models/notification_list_versions_params.rbi +66 -0
  79. data/rbi/courier/models/notification_publish_params.rbi +35 -0
  80. data/rbi/courier/models/notification_replace_params.rbi +35 -0
  81. data/rbi/courier/models/notification_retrieve_params.rbi +54 -0
  82. data/rbi/courier/models/notification_template_create_request.rbi +102 -0
  83. data/rbi/courier/models/notification_template_get_response.rbi +162 -0
  84. data/rbi/courier/models/notification_template_mutation_response.rbi +121 -0
  85. data/rbi/courier/models/notification_template_payload.rbi +183 -0
  86. data/rbi/courier/models/notification_template_publish_request.rbi +35 -0
  87. data/rbi/courier/models/notification_template_summary.rbi +124 -0
  88. data/rbi/courier/models/notification_template_update_request.rbi +103 -0
  89. data/rbi/courier/models/notification_template_version_list_response.rbi +41 -0
  90. data/rbi/courier/models/provider.rbi +87 -0
  91. data/rbi/courier/models/provider_create_params.rbi +82 -0
  92. data/rbi/courier/models/provider_delete_params.rbi +35 -0
  93. data/rbi/courier/models/provider_list_params.rbi +43 -0
  94. data/rbi/courier/models/provider_list_response.rbi +42 -0
  95. data/rbi/courier/models/provider_retrieve_params.rbi +35 -0
  96. data/rbi/courier/models/provider_update_params.rbi +86 -0
  97. data/rbi/courier/models/providers/catalog_list_params.rbi +75 -0
  98. data/rbi/courier/models/providers/catalog_list_response.rbi +47 -0
  99. data/rbi/courier/models/providers_catalog_entry.rbi +129 -0
  100. data/rbi/courier/models/routing_strategy_archive_params.rbi +38 -0
  101. data/rbi/courier/models/routing_strategy_create_params.rbi +30 -0
  102. data/rbi/courier/models/routing_strategy_create_request.rbi +86 -0
  103. data/rbi/courier/models/routing_strategy_get_response.rbi +121 -0
  104. data/rbi/courier/models/routing_strategy_list_params.rbi +54 -0
  105. data/rbi/courier/models/routing_strategy_list_response.rbi +45 -0
  106. data/rbi/courier/models/routing_strategy_mutation_response.rbi +31 -0
  107. data/rbi/courier/models/routing_strategy_replace_params.rbi +38 -0
  108. data/rbi/courier/models/routing_strategy_replace_request.rbi +87 -0
  109. data/rbi/courier/models/routing_strategy_retrieve_params.rbi +38 -0
  110. data/rbi/courier/models/routing_strategy_summary.rbi +95 -0
  111. data/rbi/courier/models/send_message_params.rbi +6 -362
  112. data/rbi/courier/models/tenant_template_input.rbi +8 -336
  113. data/rbi/courier/models/timeouts.rbi +33 -0
  114. data/rbi/courier/models/version_node.rbi +65 -0
  115. data/rbi/courier/models.rbi +94 -0
  116. data/rbi/courier/resources/notifications.rbi +119 -1
  117. data/rbi/courier/resources/providers/catalog.rbi +38 -0
  118. data/rbi/courier/resources/providers.rbi +116 -0
  119. data/rbi/courier/resources/routing_strategies.rbi +126 -0
  120. data/sig/courier/client.rbs +4 -0
  121. data/sig/courier/internal/util.rbs +4 -0
  122. data/sig/courier/models/channel.rbs +61 -0
  123. data/sig/courier/models/channel_metadata.rbs +13 -0
  124. data/sig/courier/models/elemental_html_node_with_type.rbs +32 -0
  125. data/sig/courier/models/elemental_node.rbs +1 -0
  126. data/sig/courier/models/message_channels.rbs +7 -0
  127. data/sig/courier/models/message_providers.rbs +7 -0
  128. data/sig/courier/models/message_providers_type.rbs +35 -0
  129. data/sig/courier/models/metadata.rbs +13 -0
  130. data/sig/courier/models/notification_archive_params.rbs +20 -0
  131. data/sig/courier/models/notification_create_params.rbs +15 -0
  132. data/sig/courier/models/notification_list_params.rbs +7 -1
  133. data/sig/courier/models/notification_list_response.rbs +81 -71
  134. data/sig/courier/models/notification_list_versions_params.rbs +36 -0
  135. data/sig/courier/models/notification_publish_params.rbs +22 -0
  136. data/sig/courier/models/notification_replace_params.rbs +22 -0
  137. data/sig/courier/models/notification_retrieve_params.rbs +30 -0
  138. data/sig/courier/models/notification_template_create_request.rbs +40 -0
  139. data/sig/courier/models/notification_template_get_response.rbs +72 -0
  140. data/sig/courier/models/notification_template_mutation_response.rbs +46 -0
  141. data/sig/courier/models/notification_template_payload.rbs +75 -0
  142. data/sig/courier/models/notification_template_publish_request.rbs +15 -0
  143. data/sig/courier/models/notification_template_summary.rbs +70 -0
  144. data/sig/courier/models/notification_template_update_request.rbs +40 -0
  145. data/sig/courier/models/notification_template_version_list_response.rbs +22 -0
  146. data/sig/courier/models/provider.rbs +52 -0
  147. data/sig/courier/models/provider_create_params.rbs +47 -0
  148. data/sig/courier/models/provider_delete_params.rbs +20 -0
  149. data/sig/courier/models/provider_list_params.rbs +25 -0
  150. data/sig/courier/models/provider_list_response.rbs +22 -0
  151. data/sig/courier/models/provider_retrieve_params.rbs +20 -0
  152. data/sig/courier/models/provider_update_params.rbs +52 -0
  153. data/sig/courier/models/providers/catalog_list_params.rbs +40 -0
  154. data/sig/courier/models/providers/catalog_list_response.rbs +27 -0
  155. data/sig/courier/models/providers_catalog_entry.rbs +64 -0
  156. data/sig/courier/models/routing_strategy_archive_params.rbs +20 -0
  157. data/sig/courier/models/routing_strategy_create_params.rbs +15 -0
  158. data/sig/courier/models/routing_strategy_create_request.rbs +45 -0
  159. data/sig/courier/models/routing_strategy_get_response.rbs +70 -0
  160. data/sig/courier/models/routing_strategy_list_params.rbs +30 -0
  161. data/sig/courier/models/routing_strategy_list_response.rbs +25 -0
  162. data/sig/courier/models/routing_strategy_mutation_response.rbs +13 -0
  163. data/sig/courier/models/routing_strategy_replace_params.rbs +22 -0
  164. data/sig/courier/models/routing_strategy_replace_request.rbs +45 -0
  165. data/sig/courier/models/routing_strategy_retrieve_params.rbs +20 -0
  166. data/sig/courier/models/routing_strategy_summary.rbs +55 -0
  167. data/sig/courier/models/send_message_params.rbs +8 -130
  168. data/sig/courier/models/tenant_template_input.rbs +12 -134
  169. data/sig/courier/models/timeouts.rbs +15 -0
  170. data/sig/courier/models/version_node.rbs +32 -0
  171. data/sig/courier/models.rbs +84 -0
  172. data/sig/courier/resources/notifications.rbs +35 -0
  173. data/sig/courier/resources/providers/catalog.rbs +16 -0
  174. data/sig/courier/resources/providers.rbs +38 -0
  175. data/sig/courier/resources/routing_strategies.rbs +41 -0
  176. metadata +143 -2
@@ -0,0 +1,45 @@
1
+ module Courier
2
+ module Models
3
+ type routing_strategy_replace_request =
4
+ {
5
+ name: String,
6
+ routing: Courier::MessageRouting,
7
+ channels: Courier::Models::message_channels?,
8
+ description: String?,
9
+ providers: Courier::Models::message_providers?,
10
+ tags: ::Array[String]?
11
+ }
12
+
13
+ class RoutingStrategyReplaceRequest < Courier::Internal::Type::BaseModel
14
+ attr_accessor name: String
15
+
16
+ attr_accessor routing: Courier::MessageRouting
17
+
18
+ attr_accessor channels: Courier::Models::message_channels?
19
+
20
+ attr_accessor description: String?
21
+
22
+ attr_accessor providers: Courier::Models::message_providers?
23
+
24
+ attr_accessor tags: ::Array[String]?
25
+
26
+ def initialize: (
27
+ name: String,
28
+ routing: Courier::MessageRouting,
29
+ ?channels: Courier::Models::message_channels?,
30
+ ?description: String?,
31
+ ?providers: Courier::Models::message_providers?,
32
+ ?tags: ::Array[String]?
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ name: String,
37
+ routing: Courier::MessageRouting,
38
+ channels: Courier::Models::message_channels?,
39
+ description: String?,
40
+ providers: Courier::Models::message_providers?,
41
+ tags: ::Array[String]?
42
+ }
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,20 @@
1
+ module Courier
2
+ module Models
3
+ type routing_strategy_retrieve_params =
4
+ { id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class RoutingStrategyRetrieveParams < Courier::Internal::Type::BaseModel
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: Courier::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { id: String, request_options: Courier::RequestOptions }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,55 @@
1
+ module Courier
2
+ module Models
3
+ type routing_strategy_summary =
4
+ {
5
+ id: String,
6
+ created: Integer,
7
+ creator: String,
8
+ name: String,
9
+ description: String?,
10
+ tags: ::Array[String]?,
11
+ updated: Integer?,
12
+ updater: String?
13
+ }
14
+
15
+ class RoutingStrategySummary < Courier::Internal::Type::BaseModel
16
+ attr_accessor id: String
17
+
18
+ attr_accessor created: Integer
19
+
20
+ attr_accessor creator: String
21
+
22
+ attr_accessor name: String
23
+
24
+ attr_accessor description: String?
25
+
26
+ attr_accessor tags: ::Array[String]?
27
+
28
+ attr_accessor updated: Integer?
29
+
30
+ attr_accessor updater: String?
31
+
32
+ def initialize: (
33
+ id: String,
34
+ created: Integer,
35
+ creator: String,
36
+ name: String,
37
+ ?description: String?,
38
+ ?tags: ::Array[String]?,
39
+ ?updated: Integer?,
40
+ ?updater: String?
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ id: String,
45
+ created: Integer,
46
+ creator: String,
47
+ name: String,
48
+ description: String?,
49
+ tags: ::Array[String]?,
50
+ updated: Integer?,
51
+ updater: String?
52
+ }
53
+ end
54
+ end
55
+ end
@@ -23,7 +23,7 @@ module Courier
23
23
  type message =
24
24
  {
25
25
  brand_id: String?,
26
- channels: ::Hash[Symbol, Courier::SendMessageParams::Message::Channel]?,
26
+ channels: Courier::Models::message_channels?,
27
27
  content: Courier::Models::SendMessageParams::Message::content,
28
28
  context: Courier::MessageContext?,
29
29
  data: ::Hash[Symbol, top]?,
@@ -31,7 +31,7 @@ module Courier
31
31
  expiry: Courier::SendMessageParams::Message::Expiry?,
32
32
  metadata: Courier::SendMessageParams::Message::Metadata?,
33
33
  preferences: Courier::SendMessageParams::Message::Preferences?,
34
- providers: ::Hash[Symbol, Courier::SendMessageParams::Message::Provider]?,
34
+ providers: Courier::Models::message_providers?,
35
35
  routing: Courier::SendMessageParams::Message::Routing?,
36
36
  template: String?,
37
37
  timeout: Courier::SendMessageParams::Message::Timeout?,
@@ -41,7 +41,7 @@ module Courier
41
41
  class Message < Courier::Internal::Type::BaseModel
42
42
  attr_accessor brand_id: String?
43
43
 
44
- attr_accessor channels: ::Hash[Symbol, Courier::SendMessageParams::Message::Channel]?
44
+ attr_accessor channels: Courier::Models::message_channels?
45
45
 
46
46
  attr_reader content: Courier::Models::SendMessageParams::Message::content?
47
47
 
@@ -61,7 +61,7 @@ module Courier
61
61
 
62
62
  attr_accessor preferences: Courier::SendMessageParams::Message::Preferences?
63
63
 
64
- attr_accessor providers: ::Hash[Symbol, Courier::SendMessageParams::Message::Provider]?
64
+ attr_accessor providers: Courier::Models::message_providers?
65
65
 
66
66
  attr_accessor routing: Courier::SendMessageParams::Message::Routing?
67
67
 
@@ -73,7 +73,7 @@ module Courier
73
73
 
74
74
  def initialize: (
75
75
  ?brand_id: String?,
76
- ?channels: ::Hash[Symbol, Courier::SendMessageParams::Message::Channel]?,
76
+ ?channels: Courier::Models::message_channels?,
77
77
  ?content: Courier::Models::SendMessageParams::Message::content,
78
78
  ?context: Courier::MessageContext?,
79
79
  ?data: ::Hash[Symbol, top]?,
@@ -81,7 +81,7 @@ module Courier
81
81
  ?expiry: Courier::SendMessageParams::Message::Expiry?,
82
82
  ?metadata: Courier::SendMessageParams::Message::Metadata?,
83
83
  ?preferences: Courier::SendMessageParams::Message::Preferences?,
84
- ?providers: ::Hash[Symbol, Courier::SendMessageParams::Message::Provider]?,
84
+ ?providers: Courier::Models::message_providers?,
85
85
  ?routing: Courier::SendMessageParams::Message::Routing?,
86
86
  ?template: String?,
87
87
  ?timeout: Courier::SendMessageParams::Message::Timeout?,
@@ -90,7 +90,7 @@ module Courier
90
90
 
91
91
  def to_hash: -> {
92
92
  brand_id: String?,
93
- channels: ::Hash[Symbol, Courier::SendMessageParams::Message::Channel]?,
93
+ channels: Courier::Models::message_channels?,
94
94
  content: Courier::Models::SendMessageParams::Message::content,
95
95
  context: Courier::MessageContext?,
96
96
  data: ::Hash[Symbol, top]?,
@@ -98,93 +98,13 @@ module Courier
98
98
  expiry: Courier::SendMessageParams::Message::Expiry?,
99
99
  metadata: Courier::SendMessageParams::Message::Metadata?,
100
100
  preferences: Courier::SendMessageParams::Message::Preferences?,
101
- providers: ::Hash[Symbol, Courier::SendMessageParams::Message::Provider]?,
101
+ providers: Courier::Models::message_providers?,
102
102
  routing: Courier::SendMessageParams::Message::Routing?,
103
103
  template: String?,
104
104
  timeout: Courier::SendMessageParams::Message::Timeout?,
105
105
  to: Courier::Models::SendMessageParams::Message::to?
106
106
  }
107
107
 
108
- type channel =
109
- {
110
- brand_id: String?,
111
- if_: String?,
112
- metadata: Courier::SendMessageParams::Message::Channel::Metadata?,
113
- override: ::Hash[Symbol, top]?,
114
- providers: ::Array[String]?,
115
- routing_method: Courier::Models::SendMessageParams::Message::Channel::routing_method?,
116
- timeouts: Courier::SendMessageParams::Message::Channel::Timeouts?
117
- }
118
-
119
- class Channel < Courier::Internal::Type::BaseModel
120
- attr_accessor brand_id: String?
121
-
122
- attr_accessor if_: String?
123
-
124
- attr_accessor metadata: Courier::SendMessageParams::Message::Channel::Metadata?
125
-
126
- attr_accessor override: ::Hash[Symbol, top]?
127
-
128
- attr_accessor providers: ::Array[String]?
129
-
130
- attr_accessor routing_method: Courier::Models::SendMessageParams::Message::Channel::routing_method?
131
-
132
- attr_accessor timeouts: Courier::SendMessageParams::Message::Channel::Timeouts?
133
-
134
- def initialize: (
135
- ?brand_id: String?,
136
- ?if_: String?,
137
- ?metadata: Courier::SendMessageParams::Message::Channel::Metadata?,
138
- ?override: ::Hash[Symbol, top]?,
139
- ?providers: ::Array[String]?,
140
- ?routing_method: Courier::Models::SendMessageParams::Message::Channel::routing_method?,
141
- ?timeouts: Courier::SendMessageParams::Message::Channel::Timeouts?
142
- ) -> void
143
-
144
- def to_hash: -> {
145
- brand_id: String?,
146
- if_: String?,
147
- metadata: Courier::SendMessageParams::Message::Channel::Metadata?,
148
- override: ::Hash[Symbol, top]?,
149
- providers: ::Array[String]?,
150
- routing_method: Courier::Models::SendMessageParams::Message::Channel::routing_method?,
151
- timeouts: Courier::SendMessageParams::Message::Channel::Timeouts?
152
- }
153
-
154
- type metadata = { utm: Courier::Utm? }
155
-
156
- class Metadata < Courier::Internal::Type::BaseModel
157
- attr_accessor utm: Courier::Utm?
158
-
159
- def initialize: (?utm: Courier::Utm?) -> void
160
-
161
- def to_hash: -> { utm: Courier::Utm? }
162
- end
163
-
164
- type routing_method = :all | :single
165
-
166
- module RoutingMethod
167
- extend Courier::Internal::Type::Enum
168
-
169
- ALL: :all
170
- SINGLE: :single
171
-
172
- def self?.values: -> ::Array[Courier::Models::SendMessageParams::Message::Channel::routing_method]
173
- end
174
-
175
- type timeouts = { channel: Integer?, provider: Integer? }
176
-
177
- class Timeouts < Courier::Internal::Type::BaseModel
178
- attr_accessor channel: Integer?
179
-
180
- attr_accessor provider: Integer?
181
-
182
- def initialize: (?channel: Integer?, ?provider: Integer?) -> void
183
-
184
- def to_hash: -> { channel: Integer?, provider: Integer? }
185
- end
186
- end
187
-
188
108
  type content =
189
109
  Courier::ElementalContentSugar | Courier::ElementalContent
190
110
 
@@ -288,48 +208,6 @@ module Courier
288
208
  def to_hash: -> { subscription_topic_id: String }
289
209
  end
290
210
 
291
- type provider =
292
- {
293
- if_: String?,
294
- metadata: Courier::SendMessageParams::Message::Provider::Metadata?,
295
- override: ::Hash[Symbol, top]?,
296
- timeouts: Integer?
297
- }
298
-
299
- class Provider < Courier::Internal::Type::BaseModel
300
- attr_accessor if_: String?
301
-
302
- attr_accessor metadata: Courier::SendMessageParams::Message::Provider::Metadata?
303
-
304
- attr_accessor override: ::Hash[Symbol, top]?
305
-
306
- attr_accessor timeouts: Integer?
307
-
308
- def initialize: (
309
- ?if_: String?,
310
- ?metadata: Courier::SendMessageParams::Message::Provider::Metadata?,
311
- ?override: ::Hash[Symbol, top]?,
312
- ?timeouts: Integer?
313
- ) -> void
314
-
315
- def to_hash: -> {
316
- if_: String?,
317
- metadata: Courier::SendMessageParams::Message::Provider::Metadata?,
318
- override: ::Hash[Symbol, top]?,
319
- timeouts: Integer?
320
- }
321
-
322
- type metadata = { utm: Courier::Utm? }
323
-
324
- class Metadata < Courier::Internal::Type::BaseModel
325
- attr_accessor utm: Courier::Utm?
326
-
327
- def initialize: (?utm: Courier::Utm?) -> void
328
-
329
- def to_hash: -> { utm: Courier::Utm? }
330
- end
331
- end
332
-
333
211
  type routing =
334
212
  {
335
213
  channels: ::Array[Courier::Models::message_routing_channel],
@@ -3,25 +3,25 @@ module Courier
3
3
  type tenant_template_input =
4
4
  {
5
5
  content: Courier::ElementalContent,
6
- channels: ::Hash[Symbol, Courier::TenantTemplateInput::Channel],
7
- providers: ::Hash[Symbol, Courier::TenantTemplateInput::Provider],
6
+ channels: Courier::Models::message_channels,
7
+ providers: Courier::Models::message_providers,
8
8
  routing: Courier::MessageRouting
9
9
  }
10
10
 
11
11
  class TenantTemplateInput < Courier::Internal::Type::BaseModel
12
12
  attr_accessor content: Courier::ElementalContent
13
13
 
14
- attr_reader channels: ::Hash[Symbol, Courier::TenantTemplateInput::Channel]?
14
+ attr_reader channels: Courier::Models::message_channels?
15
15
 
16
16
  def channels=: (
17
- ::Hash[Symbol, Courier::TenantTemplateInput::Channel]
18
- ) -> ::Hash[Symbol, Courier::TenantTemplateInput::Channel]
17
+ Courier::Models::message_channels
18
+ ) -> Courier::Models::message_channels
19
19
 
20
- attr_reader providers: ::Hash[Symbol, Courier::TenantTemplateInput::Provider]?
20
+ attr_reader providers: Courier::Models::message_providers?
21
21
 
22
22
  def providers=: (
23
- ::Hash[Symbol, Courier::TenantTemplateInput::Provider]
24
- ) -> ::Hash[Symbol, Courier::TenantTemplateInput::Provider]
23
+ Courier::Models::message_providers
24
+ ) -> Courier::Models::message_providers
25
25
 
26
26
  attr_reader routing: Courier::MessageRouting?
27
27
 
@@ -29,139 +29,17 @@ module Courier
29
29
 
30
30
  def initialize: (
31
31
  content: Courier::ElementalContent,
32
- ?channels: ::Hash[Symbol, Courier::TenantTemplateInput::Channel],
33
- ?providers: ::Hash[Symbol, Courier::TenantTemplateInput::Provider],
32
+ ?channels: Courier::Models::message_channels,
33
+ ?providers: Courier::Models::message_providers,
34
34
  ?routing: Courier::MessageRouting
35
35
  ) -> void
36
36
 
37
37
  def to_hash: -> {
38
38
  content: Courier::ElementalContent,
39
- channels: ::Hash[Symbol, Courier::TenantTemplateInput::Channel],
40
- providers: ::Hash[Symbol, Courier::TenantTemplateInput::Provider],
39
+ channels: Courier::Models::message_channels,
40
+ providers: Courier::Models::message_providers,
41
41
  routing: Courier::MessageRouting
42
42
  }
43
-
44
- type channel =
45
- {
46
- brand_id: String?,
47
- if_: String?,
48
- metadata: Courier::TenantTemplateInput::Channel::Metadata?,
49
- override: ::Hash[Symbol, top]?,
50
- providers: ::Array[String]?,
51
- routing_method: Courier::Models::TenantTemplateInput::Channel::routing_method?,
52
- timeouts: Courier::TenantTemplateInput::Channel::Timeouts?
53
- }
54
-
55
- class Channel < Courier::Internal::Type::BaseModel
56
- attr_accessor brand_id: String?
57
-
58
- attr_accessor if_: String?
59
-
60
- attr_accessor metadata: Courier::TenantTemplateInput::Channel::Metadata?
61
-
62
- attr_accessor override: ::Hash[Symbol, top]?
63
-
64
- attr_accessor providers: ::Array[String]?
65
-
66
- attr_accessor routing_method: Courier::Models::TenantTemplateInput::Channel::routing_method?
67
-
68
- attr_accessor timeouts: Courier::TenantTemplateInput::Channel::Timeouts?
69
-
70
- def initialize: (
71
- ?brand_id: String?,
72
- ?if_: String?,
73
- ?metadata: Courier::TenantTemplateInput::Channel::Metadata?,
74
- ?override: ::Hash[Symbol, top]?,
75
- ?providers: ::Array[String]?,
76
- ?routing_method: Courier::Models::TenantTemplateInput::Channel::routing_method?,
77
- ?timeouts: Courier::TenantTemplateInput::Channel::Timeouts?
78
- ) -> void
79
-
80
- def to_hash: -> {
81
- brand_id: String?,
82
- if_: String?,
83
- metadata: Courier::TenantTemplateInput::Channel::Metadata?,
84
- override: ::Hash[Symbol, top]?,
85
- providers: ::Array[String]?,
86
- routing_method: Courier::Models::TenantTemplateInput::Channel::routing_method?,
87
- timeouts: Courier::TenantTemplateInput::Channel::Timeouts?
88
- }
89
-
90
- type metadata = { utm: Courier::Utm? }
91
-
92
- class Metadata < Courier::Internal::Type::BaseModel
93
- attr_accessor utm: Courier::Utm?
94
-
95
- def initialize: (?utm: Courier::Utm?) -> void
96
-
97
- def to_hash: -> { utm: Courier::Utm? }
98
- end
99
-
100
- type routing_method = :all | :single
101
-
102
- module RoutingMethod
103
- extend Courier::Internal::Type::Enum
104
-
105
- ALL: :all
106
- SINGLE: :single
107
-
108
- def self?.values: -> ::Array[Courier::Models::TenantTemplateInput::Channel::routing_method]
109
- end
110
-
111
- type timeouts = { channel: Integer?, provider: Integer? }
112
-
113
- class Timeouts < Courier::Internal::Type::BaseModel
114
- attr_accessor channel: Integer?
115
-
116
- attr_accessor provider: Integer?
117
-
118
- def initialize: (?channel: Integer?, ?provider: Integer?) -> void
119
-
120
- def to_hash: -> { channel: Integer?, provider: Integer? }
121
- end
122
- end
123
-
124
- type provider =
125
- {
126
- if_: String?,
127
- metadata: Courier::TenantTemplateInput::Provider::Metadata?,
128
- override: ::Hash[Symbol, top]?,
129
- timeouts: Integer?
130
- }
131
-
132
- class Provider < Courier::Internal::Type::BaseModel
133
- attr_accessor if_: String?
134
-
135
- attr_accessor metadata: Courier::TenantTemplateInput::Provider::Metadata?
136
-
137
- attr_accessor override: ::Hash[Symbol, top]?
138
-
139
- attr_accessor timeouts: Integer?
140
-
141
- def initialize: (
142
- ?if_: String?,
143
- ?metadata: Courier::TenantTemplateInput::Provider::Metadata?,
144
- ?override: ::Hash[Symbol, top]?,
145
- ?timeouts: Integer?
146
- ) -> void
147
-
148
- def to_hash: -> {
149
- if_: String?,
150
- metadata: Courier::TenantTemplateInput::Provider::Metadata?,
151
- override: ::Hash[Symbol, top]?,
152
- timeouts: Integer?
153
- }
154
-
155
- type metadata = { utm: Courier::Utm? }
156
-
157
- class Metadata < Courier::Internal::Type::BaseModel
158
- attr_accessor utm: Courier::Utm?
159
-
160
- def initialize: (?utm: Courier::Utm?) -> void
161
-
162
- def to_hash: -> { utm: Courier::Utm? }
163
- end
164
- end
165
43
  end
166
44
  end
167
45
  end
@@ -0,0 +1,15 @@
1
+ module Courier
2
+ module Models
3
+ type timeouts = { channel: Integer?, provider: Integer? }
4
+
5
+ class Timeouts < Courier::Internal::Type::BaseModel
6
+ attr_accessor channel: Integer?
7
+
8
+ attr_accessor provider: Integer?
9
+
10
+ def initialize: (?channel: Integer?, ?provider: Integer?) -> void
11
+
12
+ def to_hash: -> { channel: Integer?, provider: Integer? }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,32 @@
1
+ module Courier
2
+ module Models
3
+ type version_node =
4
+ { created: Integer, creator: String, version: String, has_changes: bool }
5
+
6
+ class VersionNode < Courier::Internal::Type::BaseModel
7
+ attr_accessor created: Integer
8
+
9
+ attr_accessor creator: String
10
+
11
+ attr_accessor version: String
12
+
13
+ attr_reader has_changes: bool?
14
+
15
+ def has_changes=: (bool) -> bool
16
+
17
+ def initialize: (
18
+ created: Integer,
19
+ creator: String,
20
+ version: String,
21
+ ?has_changes: bool
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ created: Integer,
26
+ creator: String,
27
+ version: String,
28
+ has_changes: bool
29
+ }
30
+ end
31
+ end
32
+ end