trycourier 4.14.0 → 4.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 62e50b0f394c9b71492f5a8edcf141e73349df61df527661a0e43660de5540d9
4
- data.tar.gz: a9e4059917b03248a4fbbc198d1f3c809a4130b0ed39642be34c682b0d165eda
3
+ metadata.gz: 8b99d61d48791e6c2136cf1a133cd904f2defefddbc398b23d4e5b3c9dd62594
4
+ data.tar.gz: 003de52e76aa6754dc9e89adf48d3114c5151a4531489853e05cf94aae77a9b5
5
5
  SHA512:
6
- metadata.gz: eb6d9b6d9b9edf0a1c51ad9305366b6e7a5a1cea3d8fa59a126c9f59d87b1108b3b17f0bb8ce00374692df294c69153389b08810527904f0b774086ffb54d71a
7
- data.tar.gz: 498be96be04f5399ec5a6395e00b2f1a41e70983ea2d980657b231080fac0fc5b2f2165197bc3030a85b68767434b505f1da6aa649c95c692dae41b913a29903
6
+ metadata.gz: 77b2d8b6cb854d743638a03e5a6a922677fb1495804ed9cbac9ce719ad6951c90fca4e6b04ca69d25f6b99c3a4143b45973ce01ba48c84a5628cc3c1c763e8a7
7
+ data.tar.gz: fec4e9f9dc6badbf6898829b212f4ab6d6b80119dbe8be9f75ebc63dce3fdb61404cb88c167a427c1a41ad95864f8515aa38809bef87aac741a82e80cfacf7ea
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.15.0 (2026-06-17)
4
+
5
+ Full Changelog: [v4.14.0...v4.15.0](https://github.com/trycourier/courier-ruby/compare/v4.14.0...v4.15.0)
6
+
7
+ ### Features
8
+
9
+ * **openapi:** add add-to-digest JourneyNode variant ([55fdd8f](https://github.com/trycourier/courier-ruby/commit/55fdd8feb37743d64201641e86d95f56ce22c603))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **client:** send content-type header for requests with an omitted optional body ([1e1b51c](https://github.com/trycourier/courier-ruby/commit/1e1b51ce2b17c5bc05193efca068828cd64ce81f))
15
+
3
16
  ## 4.14.0 (2026-06-16)
4
17
 
5
18
  Full Changelog: [v4.13.0...v4.14.0](https://github.com/trycourier/courier-ruby/compare/v4.13.0...v4.14.0)
@@ -306,7 +306,10 @@ module Courier
306
306
  Courier::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
307
307
  end
308
308
 
309
- headers.delete("content-type") if body.nil?
309
+ # Generated methods always pass `req[:body]` for operations that define a
310
+ # request body, so only elide the content-type header when the operation
311
+ # has no body at all, not when an optional body param was omitted.
312
+ headers.delete("content-type") if body.nil? && !req.key?(:body)
310
313
 
311
314
  url = Courier::Internal::Util.join_parsed_uri(
312
315
  @base_url_components,
@@ -10,7 +10,7 @@ module Courier
10
10
 
11
11
  # @!attribute nodes
12
12
  #
13
- # @return [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
13
+ # @return [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
14
14
  required :nodes, -> { Courier::Internal::Type::ArrayOf[union: Courier::JourneyNode] }
15
15
 
16
16
  # @!attribute enabled
@@ -29,7 +29,7 @@ module Courier
29
29
  #
30
30
  # @param name [String]
31
31
  #
32
- # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
32
+ # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
33
33
  #
34
34
  # @param enabled [Boolean]
35
35
  #
@@ -41,6 +41,9 @@ module Courier
41
41
  # Collect events arriving at the node into a single batch and fire one downstream step with the aggregated payload. The first event into a batch owns the run; later contributing events terminate at the batch step. The batch releases when any of `max_items` is reached, a quiet window of `wait_period` elapses, or the `max_wait_period` ceiling hits.
42
42
  variant -> { Courier::JourneyNode::JourneyBatchNode }
43
43
 
44
+ # Add the current event to a digest keyed by the given subscription topic. The digest accumulates events and releases them on the schedule configured for the topic.
45
+ variant -> { Courier::JourneyNode::JourneyAddToDigestNode }
46
+
44
47
  # Terminate the journey run.
45
48
  variant -> { Courier::JourneyExitNode }
46
49
 
@@ -200,6 +203,58 @@ module Courier
200
203
  end
201
204
  end
202
205
 
206
+ class JourneyAddToDigestNode < Courier::Internal::Type::BaseModel
207
+ # @!attribute subscription_topic_id
208
+ # The subscription topic that owns the digest the event is added to.
209
+ #
210
+ # @return [String]
211
+ required :subscription_topic_id, String
212
+
213
+ # @!attribute type
214
+ #
215
+ # @return [Symbol, Courier::Models::JourneyNode::JourneyAddToDigestNode::Type]
216
+ required :type, enum: -> { Courier::JourneyNode::JourneyAddToDigestNode::Type }
217
+
218
+ # @!attribute id
219
+ #
220
+ # @return [String, nil]
221
+ optional :id, String
222
+
223
+ # @!attribute conditions
224
+ # Condition spec for a journey node. Accepts a single condition atom, an AND/OR
225
+ # group, or an AND/OR nested group. Omit the `conditions` property entirely to
226
+ # express "no conditions".
227
+ #
228
+ # @return [Array<String>, Courier::Models::JourneyConditionGroup, Courier::Models::JourneyConditionNestedGroup, nil]
229
+ optional :conditions, union: -> { Courier::JourneyConditionsField }
230
+
231
+ # @!method initialize(subscription_topic_id:, type:, id: nil, conditions: nil)
232
+ # Some parameter documentations has been truncated, see
233
+ # {Courier::Models::JourneyNode::JourneyAddToDigestNode} for more details.
234
+ #
235
+ # Add the current event to a digest keyed by the given subscription topic. The
236
+ # digest accumulates events and releases them on the schedule configured for the
237
+ # topic.
238
+ #
239
+ # @param subscription_topic_id [String] The subscription topic that owns the digest the event is added to.
240
+ #
241
+ # @param type [Symbol, Courier::Models::JourneyNode::JourneyAddToDigestNode::Type]
242
+ #
243
+ # @param id [String]
244
+ #
245
+ # @param conditions [Array<String>, Courier::Models::JourneyConditionGroup, Courier::Models::JourneyConditionNestedGroup] Condition spec for a journey node. Accepts a single condition atom, an AND/OR gr
246
+
247
+ # @see Courier::Models::JourneyNode::JourneyAddToDigestNode#type
248
+ module Type
249
+ extend Courier::Internal::Type::Enum
250
+
251
+ ADD_TO_DIGEST = :"add-to-digest"
252
+
253
+ # @!method self.values
254
+ # @return [Array<Symbol>]
255
+ end
256
+ end
257
+
203
258
  class JourneyBranchNode < Courier::Internal::Type::BaseModel
204
259
  # @!attribute default
205
260
  #
@@ -289,7 +344,7 @@ module Courier
289
344
  end
290
345
 
291
346
  # @!method self.variants
292
- # @return [Array(Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode)]
347
+ # @return [Array(Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode)]
293
348
  end
294
349
  end
295
350
  end
@@ -31,7 +31,7 @@ module Courier
31
31
 
32
32
  # @!attribute nodes
33
33
  #
34
- # @return [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
34
+ # @return [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
35
35
  required :nodes, -> { Courier::Internal::Type::ArrayOf[union: Courier::JourneyNode] }
36
36
 
37
37
  # @!attribute published
@@ -68,7 +68,7 @@ module Courier
68
68
  #
69
69
  # @param name [String]
70
70
  #
71
- # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
71
+ # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
72
72
  #
73
73
  # @param published [Integer, nil]
74
74
  #
@@ -17,7 +17,7 @@ module Courier
17
17
  #
18
18
  # @param name [String]
19
19
  #
20
- # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
20
+ # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
21
21
  #
22
22
  # @param enabled [Boolean]
23
23
  #
@@ -204,7 +204,7 @@ module Courier
204
204
  #
205
205
  # @param name [String]
206
206
  #
207
- # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
207
+ # @param nodes [Array<Courier::Models::JourneyAPIInvokeTriggerNode, Courier::Models::JourneySegmentTriggerNode, Courier::Models::JourneySendNode, Courier::Models::JourneyDelayDurationNode, Courier::Models::JourneyDelayUntilNode, Courier::Models::JourneyFetchGetDeleteNode, Courier::Models::JourneyFetchPostPutNode, Courier::Models::JourneyAINode, Courier::Models::JourneyThrottleStaticNode, Courier::Models::JourneyThrottleDynamicNode, Courier::Models::JourneyNode::JourneyBatchNode, Courier::Models::JourneyNode::JourneyAddToDigestNode, Courier::Models::JourneyExitNode, Courier::Models::JourneyNode::JourneyBranchNode>]
208
208
  #
209
209
  # @param enabled [Boolean]
210
210
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Courier
4
- VERSION = "4.14.0"
4
+ VERSION = "4.15.0"
5
5
  end
@@ -26,6 +26,7 @@ module Courier
26
26
  Courier::JourneyThrottleStaticNode,
27
27
  Courier::JourneyThrottleDynamicNode,
28
28
  Courier::JourneyNode::JourneyBatchNode,
29
+ Courier::JourneyNode::JourneyAddToDigestNode,
29
30
  Courier::JourneyExitNode,
30
31
  Courier::JourneyNode::JourneyBranchNode
31
32
  )
@@ -65,6 +66,7 @@ module Courier
65
66
  Courier::JourneyThrottleStaticNode::OrHash,
66
67
  Courier::JourneyThrottleDynamicNode::OrHash,
67
68
  Courier::JourneyNode::JourneyBatchNode::OrHash,
69
+ Courier::JourneyNode::JourneyAddToDigestNode::OrHash,
68
70
  Courier::JourneyExitNode::OrHash,
69
71
  Courier::JourneyNode::JourneyBranchNode::OrHash
70
72
  )
@@ -100,6 +102,7 @@ module Courier
100
102
  Courier::JourneyThrottleStaticNode,
101
103
  Courier::JourneyThrottleDynamicNode,
102
104
  Courier::JourneyNode::JourneyBatchNode,
105
+ Courier::JourneyNode::JourneyAddToDigestNode,
103
106
  Courier::JourneyExitNode,
104
107
  Courier::JourneyNode::JourneyBranchNode
105
108
  )
@@ -22,6 +22,7 @@ module Courier
22
22
  Courier::JourneyThrottleStaticNode,
23
23
  Courier::JourneyThrottleDynamicNode,
24
24
  Courier::JourneyNode::JourneyBatchNode,
25
+ Courier::JourneyNode::JourneyAddToDigestNode,
25
26
  Courier::JourneyExitNode,
26
27
  Courier::JourneyNode::JourneyBranchNode
27
28
  )
@@ -341,6 +342,132 @@ module Courier
341
342
  end
342
343
  end
343
344
 
345
+ class JourneyAddToDigestNode < Courier::Internal::Type::BaseModel
346
+ OrHash =
347
+ T.type_alias do
348
+ T.any(
349
+ Courier::JourneyNode::JourneyAddToDigestNode,
350
+ Courier::Internal::AnyHash
351
+ )
352
+ end
353
+
354
+ # The subscription topic that owns the digest the event is added to.
355
+ sig { returns(String) }
356
+ attr_accessor :subscription_topic_id
357
+
358
+ sig do
359
+ returns(Courier::JourneyNode::JourneyAddToDigestNode::Type::OrSymbol)
360
+ end
361
+ attr_accessor :type
362
+
363
+ sig { returns(T.nilable(String)) }
364
+ attr_reader :id
365
+
366
+ sig { params(id: String).void }
367
+ attr_writer :id
368
+
369
+ # Condition spec for a journey node. Accepts a single condition atom, an AND/OR
370
+ # group, or an AND/OR nested group. Omit the `conditions` property entirely to
371
+ # express "no conditions".
372
+ sig do
373
+ returns(
374
+ T.nilable(
375
+ T.any(
376
+ T::Array[String],
377
+ Courier::JourneyConditionGroup,
378
+ Courier::JourneyConditionNestedGroup
379
+ )
380
+ )
381
+ )
382
+ end
383
+ attr_reader :conditions
384
+
385
+ sig do
386
+ params(
387
+ conditions:
388
+ T.any(
389
+ T::Array[String],
390
+ Courier::JourneyConditionGroup::OrHash,
391
+ Courier::JourneyConditionNestedGroup::OrHash
392
+ )
393
+ ).void
394
+ end
395
+ attr_writer :conditions
396
+
397
+ # Add the current event to a digest keyed by the given subscription topic. The
398
+ # digest accumulates events and releases them on the schedule configured for the
399
+ # topic.
400
+ sig do
401
+ params(
402
+ subscription_topic_id: String,
403
+ type: Courier::JourneyNode::JourneyAddToDigestNode::Type::OrSymbol,
404
+ id: String,
405
+ conditions:
406
+ T.any(
407
+ T::Array[String],
408
+ Courier::JourneyConditionGroup::OrHash,
409
+ Courier::JourneyConditionNestedGroup::OrHash
410
+ )
411
+ ).returns(T.attached_class)
412
+ end
413
+ def self.new(
414
+ # The subscription topic that owns the digest the event is added to.
415
+ subscription_topic_id:,
416
+ type:,
417
+ id: nil,
418
+ # Condition spec for a journey node. Accepts a single condition atom, an AND/OR
419
+ # group, or an AND/OR nested group. Omit the `conditions` property entirely to
420
+ # express "no conditions".
421
+ conditions: nil
422
+ )
423
+ end
424
+
425
+ sig do
426
+ override.returns(
427
+ {
428
+ subscription_topic_id: String,
429
+ type:
430
+ Courier::JourneyNode::JourneyAddToDigestNode::Type::OrSymbol,
431
+ id: String,
432
+ conditions:
433
+ T.any(
434
+ T::Array[String],
435
+ Courier::JourneyConditionGroup,
436
+ Courier::JourneyConditionNestedGroup
437
+ )
438
+ }
439
+ )
440
+ end
441
+ def to_hash
442
+ end
443
+
444
+ module Type
445
+ extend Courier::Internal::Type::Enum
446
+
447
+ TaggedSymbol =
448
+ T.type_alias do
449
+ T.all(Symbol, Courier::JourneyNode::JourneyAddToDigestNode::Type)
450
+ end
451
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
452
+
453
+ ADD_TO_DIGEST =
454
+ T.let(
455
+ :"add-to-digest",
456
+ Courier::JourneyNode::JourneyAddToDigestNode::Type::TaggedSymbol
457
+ )
458
+
459
+ sig do
460
+ override.returns(
461
+ T::Array[
462
+ Courier::JourneyNode::JourneyAddToDigestNode::Type::TaggedSymbol
463
+ ]
464
+ )
465
+ end
466
+ def self.values
467
+ end
468
+ end
469
+ end
470
+
344
471
  class JourneyBranchNode < Courier::Internal::Type::BaseModel
345
472
  OrHash =
346
473
  T.type_alias do
@@ -61,6 +61,7 @@ module Courier
61
61
  Courier::JourneyThrottleStaticNode::OrHash,
62
62
  Courier::JourneyThrottleDynamicNode::OrHash,
63
63
  Courier::JourneyNode::JourneyBatchNode::OrHash,
64
+ Courier::JourneyNode::JourneyAddToDigestNode::OrHash,
64
65
  Courier::JourneyExitNode::OrHash,
65
66
  Courier::JourneyNode::JourneyBranchNode::OrHash
66
67
  )
@@ -29,6 +29,7 @@ module Courier
29
29
  Courier::JourneyThrottleStaticNode::OrHash,
30
30
  Courier::JourneyThrottleDynamicNode::OrHash,
31
31
  Courier::JourneyNode::JourneyBatchNode::OrHash,
32
+ Courier::JourneyNode::JourneyAddToDigestNode::OrHash,
32
33
  Courier::JourneyExitNode::OrHash,
33
34
  Courier::JourneyNode::JourneyBranchNode::OrHash
34
35
  )
@@ -189,6 +190,7 @@ module Courier
189
190
  Courier::JourneyThrottleStaticNode::OrHash,
190
191
  Courier::JourneyThrottleDynamicNode::OrHash,
191
192
  Courier::JourneyNode::JourneyBatchNode::OrHash,
193
+ Courier::JourneyNode::JourneyAddToDigestNode::OrHash,
192
194
  Courier::JourneyExitNode::OrHash,
193
195
  Courier::JourneyNode::JourneyBranchNode::OrHash
194
196
  )
@@ -12,6 +12,7 @@ module Courier
12
12
  | Courier::JourneyThrottleStaticNode
13
13
  | Courier::JourneyThrottleDynamicNode
14
14
  | Courier::JourneyNode::JourneyBatchNode
15
+ | Courier::JourneyNode::JourneyAddToDigestNode
15
16
  | Courier::JourneyExitNode
16
17
  | Courier::JourneyNode::JourneyBranchNode
17
18
 
@@ -147,6 +148,54 @@ module Courier
147
148
  end
148
149
  end
149
150
 
151
+ type journey_add_to_digest_node =
152
+ {
153
+ subscription_topic_id: String,
154
+ type: Courier::Models::JourneyNode::JourneyAddToDigestNode::type_,
155
+ id: String,
156
+ conditions: Courier::Models::journey_conditions_field
157
+ }
158
+
159
+ class JourneyAddToDigestNode < Courier::Internal::Type::BaseModel
160
+ attr_accessor subscription_topic_id: String
161
+
162
+ attr_accessor type: Courier::Models::JourneyNode::JourneyAddToDigestNode::type_
163
+
164
+ attr_reader id: String?
165
+
166
+ def id=: (String) -> String
167
+
168
+ attr_reader conditions: Courier::Models::journey_conditions_field?
169
+
170
+ def conditions=: (
171
+ Courier::Models::journey_conditions_field
172
+ ) -> Courier::Models::journey_conditions_field
173
+
174
+ def initialize: (
175
+ subscription_topic_id: String,
176
+ type: Courier::Models::JourneyNode::JourneyAddToDigestNode::type_,
177
+ ?id: String,
178
+ ?conditions: Courier::Models::journey_conditions_field
179
+ ) -> void
180
+
181
+ def to_hash: -> {
182
+ subscription_topic_id: String,
183
+ type: Courier::Models::JourneyNode::JourneyAddToDigestNode::type_,
184
+ id: String,
185
+ conditions: Courier::Models::journey_conditions_field
186
+ }
187
+
188
+ type type_ = :"add-to-digest"
189
+
190
+ module Type
191
+ extend Courier::Internal::Type::Enum
192
+
193
+ ADD_TO_DIGEST: :"add-to-digest"
194
+
195
+ def self?.values: -> ::Array[Courier::Models::JourneyNode::JourneyAddToDigestNode::type_]
196
+ end
197
+ end
198
+
150
199
  type journey_branch_node =
151
200
  {
152
201
  default: Courier::JourneyNode::JourneyBranchNode::Default,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trycourier
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.14.0
4
+ version: 4.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Courier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-16 00:00:00.000000000 Z
11
+ date: 2026-06-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi