trycourier 4.10.1 → 4.11.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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/lib/courier/client.rb +15 -1
  4. data/lib/courier/internal/transport/base_client.rb +2 -0
  5. data/lib/courier/models/create_journey_request.rb +39 -0
  6. data/lib/courier/models/journey_ai_node.rb +77 -0
  7. data/lib/courier/models/journey_api_invoke_trigger_node.rb +73 -0
  8. data/lib/courier/models/journey_archive_params.rb +20 -0
  9. data/lib/courier/models/journey_condition_atom.rb +8 -0
  10. data/lib/courier/models/journey_condition_group.rb +26 -0
  11. data/lib/courier/models/journey_condition_nested_group.rb +24 -0
  12. data/lib/courier/models/journey_conditions_field.rb +37 -0
  13. data/lib/courier/models/journey_create_params.rb +14 -0
  14. data/lib/courier/models/journey_delay_duration_node.rb +71 -0
  15. data/lib/courier/models/journey_delay_until_node.rb +71 -0
  16. data/lib/courier/models/journey_exit_node.rb +33 -0
  17. data/lib/courier/models/journey_fetch_get_delete_node.rb +103 -0
  18. data/lib/courier/models/journey_fetch_post_put_node.rb +110 -0
  19. data/lib/courier/models/journey_list_versions_params.rb +20 -0
  20. data/lib/courier/models/journey_merge_strategy.rb +18 -0
  21. data/lib/courier/models/journey_node.rb +139 -0
  22. data/lib/courier/models/journey_publish_params.rb +20 -0
  23. data/lib/courier/models/journey_publish_request.rb +18 -0
  24. data/lib/courier/models/journey_replace_params.rb +20 -0
  25. data/lib/courier/models/journey_response.rb +82 -0
  26. data/lib/courier/models/journey_retrieve_params.rb +29 -0
  27. data/lib/courier/models/journey_segment_trigger_node.rb +90 -0
  28. data/lib/courier/models/journey_send_node.rb +124 -0
  29. data/lib/courier/models/journey_state.rb +16 -0
  30. data/lib/courier/models/journey_template_create_request.rb +138 -0
  31. data/lib/courier/models/journey_template_get_response.rb +154 -0
  32. data/lib/courier/models/journey_template_list_response.rb +23 -0
  33. data/lib/courier/models/journey_template_publish_request.rb +18 -0
  34. data/lib/courier/models/journey_template_replace_request.rb +126 -0
  35. data/lib/courier/models/journey_template_summary.rb +60 -0
  36. data/lib/courier/models/journey_throttle_dynamic_node.rb +86 -0
  37. data/lib/courier/models/journey_throttle_static_node.rb +80 -0
  38. data/lib/courier/models/journey_version_item.rb +41 -0
  39. data/lib/courier/models/journey_versions_list_response.rb +24 -0
  40. data/lib/courier/models/journeys/template_archive_params.rb +28 -0
  41. data/lib/courier/models/journeys/template_create_params.rb +22 -0
  42. data/lib/courier/models/journeys/template_list_params.rb +39 -0
  43. data/lib/courier/models/journeys/template_list_versions_params.rb +28 -0
  44. data/lib/courier/models/journeys/template_publish_params.rb +28 -0
  45. data/lib/courier/models/journeys/template_replace_params.rb +28 -0
  46. data/lib/courier/models/journeys/template_retrieve_params.rb +28 -0
  47. data/lib/courier/models/notification_list_response.rb +8 -8
  48. data/lib/courier/models/notification_template_create_request.rb +3 -3
  49. data/lib/courier/models/notification_template_payload.rb +2 -2
  50. data/lib/courier/models/notification_template_response.rb +71 -0
  51. data/lib/courier/models/notification_template_update_request.rb +3 -3
  52. data/lib/courier/models/tenants/template_delete_params.rb +28 -0
  53. data/lib/courier/models.rb +75 -2
  54. data/lib/courier/resources/journeys/templates.rb +224 -0
  55. data/lib/courier/resources/journeys.rb +167 -2
  56. data/lib/courier/resources/notifications/checks.rb +16 -6
  57. data/lib/courier/resources/notifications.rb +8 -8
  58. data/lib/courier/resources/tenants/templates.rb +32 -0
  59. data/lib/courier/version.rb +1 -1
  60. data/lib/courier.rb +45 -1
  61. data/rbi/courier/models/create_journey_request.rbi +113 -0
  62. data/rbi/courier/models/journey_ai_node.rbi +141 -0
  63. data/rbi/courier/models/journey_api_invoke_trigger_node.rbi +164 -0
  64. data/rbi/courier/models/journey_archive_params.rbi +35 -0
  65. data/rbi/courier/models/journey_condition_atom.rbi +11 -0
  66. data/rbi/courier/models/journey_condition_group.rbi +43 -0
  67. data/rbi/courier/models/journey_condition_nested_group.rbi +51 -0
  68. data/rbi/courier/models/journey_conditions_field.rbi +27 -0
  69. data/rbi/courier/models/journey_create_params.rbi +27 -0
  70. data/rbi/courier/models/journey_delay_duration_node.rbi +146 -0
  71. data/rbi/courier/models/journey_delay_until_node.rbi +139 -0
  72. data/rbi/courier/models/journey_exit_node.rbi +57 -0
  73. data/rbi/courier/models/journey_fetch_get_delete_node.rbi +186 -0
  74. data/rbi/courier/models/journey_fetch_post_put_node.rbi +190 -0
  75. data/rbi/courier/models/journey_list_versions_params.rbi +35 -0
  76. data/rbi/courier/models/journey_merge_strategy.rbi +26 -0
  77. data/rbi/courier/models/journey_node.rbi +227 -0
  78. data/rbi/courier/models/journey_publish_params.rbi +35 -0
  79. data/rbi/courier/models/journey_publish_request.rbi +28 -0
  80. data/rbi/courier/models/journey_replace_params.rbi +35 -0
  81. data/rbi/courier/models/journey_response.rbi +108 -0
  82. data/rbi/courier/models/journey_retrieve_params.rbi +52 -0
  83. data/rbi/courier/models/journey_segment_trigger_node.rbi +200 -0
  84. data/rbi/courier/models/journey_send_node.rbi +254 -0
  85. data/rbi/courier/models/journey_state.rbi +20 -0
  86. data/rbi/courier/models/journey_template_create_request.rbi +381 -0
  87. data/rbi/courier/models/journey_template_get_response.rbi +334 -0
  88. data/rbi/courier/models/journey_template_list_response.rbi +45 -0
  89. data/rbi/courier/models/journey_template_publish_request.rbi +31 -0
  90. data/rbi/courier/models/journey_template_replace_request.rbi +368 -0
  91. data/rbi/courier/models/journey_template_summary.rbi +85 -0
  92. data/rbi/courier/models/journey_throttle_dynamic_node.rbi +162 -0
  93. data/rbi/courier/models/journey_throttle_static_node.rbi +158 -0
  94. data/rbi/courier/models/journey_version_item.rbi +54 -0
  95. data/rbi/courier/models/journey_versions_list_response.rbi +45 -0
  96. data/rbi/courier/models/journeys/template_archive_params.rbi +48 -0
  97. data/rbi/courier/models/journeys/template_create_params.rbi +40 -0
  98. data/rbi/courier/models/journeys/template_list_params.rbi +68 -0
  99. data/rbi/courier/models/journeys/template_list_versions_params.rbi +48 -0
  100. data/rbi/courier/models/journeys/template_publish_params.rbi +48 -0
  101. data/rbi/courier/models/journeys/template_replace_params.rbi +48 -0
  102. data/rbi/courier/models/journeys/template_retrieve_params.rbi +48 -0
  103. data/rbi/courier/models/notification_list_response.rbi +9 -6
  104. data/rbi/courier/models/notification_template_create_request.rbi +4 -4
  105. data/rbi/courier/models/notification_template_payload.rbi +2 -2
  106. data/rbi/courier/models/notification_template_response.rbi +120 -0
  107. data/rbi/courier/models/notification_template_update_request.rbi +4 -4
  108. data/rbi/courier/models/tenants/template_delete_params.rbi +48 -0
  109. data/rbi/courier/models.rbi +78 -3
  110. data/rbi/courier/resources/journeys/templates.rbi +160 -0
  111. data/rbi/courier/resources/journeys.rbi +156 -3
  112. data/rbi/courier/resources/notifications/checks.rbi +19 -4
  113. data/rbi/courier/resources/notifications.rbi +7 -7
  114. data/rbi/courier/resources/tenants/templates.rbi +22 -0
  115. data/sig/courier/models/create_journey_request.rbs +41 -0
  116. data/sig/courier/models/journey_ai_node.rbs +72 -0
  117. data/sig/courier/models/journey_api_invoke_trigger_node.rbs +68 -0
  118. data/sig/courier/models/journey_archive_params.rbs +23 -0
  119. data/sig/courier/models/journey_condition_atom.rbs +7 -0
  120. data/sig/courier/models/journey_condition_group.rbs +33 -0
  121. data/sig/courier/models/journey_condition_nested_group.rbs +33 -0
  122. data/sig/courier/models/journey_conditions_field.rbs +14 -0
  123. data/sig/courier/models/journey_create_params.rbs +15 -0
  124. data/sig/courier/models/journey_delay_duration_node.rbs +66 -0
  125. data/sig/courier/models/journey_delay_until_node.rbs +66 -0
  126. data/sig/courier/models/journey_exit_node.rbs +34 -0
  127. data/sig/courier/models/journey_fetch_get_delete_node.rbs +93 -0
  128. data/sig/courier/models/journey_fetch_post_put_node.rbs +100 -0
  129. data/sig/courier/models/journey_list_versions_params.rbs +23 -0
  130. data/sig/courier/models/journey_merge_strategy.rbs +16 -0
  131. data/sig/courier/models/journey_node.rbs +117 -0
  132. data/sig/courier/models/journey_publish_params.rbs +25 -0
  133. data/sig/courier/models/journey_publish_request.rbs +15 -0
  134. data/sig/courier/models/journey_replace_params.rbs +25 -0
  135. data/sig/courier/models/journey_response.rbs +65 -0
  136. data/sig/courier/models/journey_retrieve_params.rbs +30 -0
  137. data/sig/courier/models/journey_segment_trigger_node.rbs +85 -0
  138. data/sig/courier/models/journey_send_node.rbs +140 -0
  139. data/sig/courier/models/journey_state.rbs +14 -0
  140. data/sig/courier/models/journey_template_create_request.rbs +148 -0
  141. data/sig/courier/models/journey_template_get_response.rbs +157 -0
  142. data/sig/courier/models/journey_template_list_response.rbs +25 -0
  143. data/sig/courier/models/journey_template_publish_request.rbs +15 -0
  144. data/sig/courier/models/journey_template_replace_request.rbs +136 -0
  145. data/sig/courier/models/journey_template_summary.rbs +59 -0
  146. data/sig/courier/models/journey_throttle_dynamic_node.rbs +76 -0
  147. data/sig/courier/models/journey_throttle_static_node.rbs +72 -0
  148. data/sig/courier/models/journey_version_item.rbs +40 -0
  149. data/sig/courier/models/journey_versions_list_response.rbs +22 -0
  150. data/sig/courier/models/journeys/template_archive_params.rbs +30 -0
  151. data/sig/courier/models/journeys/template_create_params.rbs +27 -0
  152. data/sig/courier/models/journeys/template_list_params.rbs +38 -0
  153. data/sig/courier/models/journeys/template_list_versions_params.rbs +30 -0
  154. data/sig/courier/models/journeys/template_publish_params.rbs +34 -0
  155. data/sig/courier/models/journeys/template_replace_params.rbs +34 -0
  156. data/sig/courier/models/journeys/template_retrieve_params.rbs +30 -0
  157. data/sig/courier/models/notification_list_response.rbs +7 -5
  158. data/sig/courier/models/notification_template_response.rbs +70 -0
  159. data/sig/courier/models/tenants/template_delete_params.rbs +30 -0
  160. data/sig/courier/models.rbs +74 -2
  161. data/sig/courier/resources/journeys/templates.rbs +58 -0
  162. data/sig/courier/resources/journeys.rbs +41 -0
  163. data/sig/courier/resources/notifications.rbs +3 -3
  164. data/sig/courier/resources/tenants/templates.rbs +6 -0
  165. metadata +137 -5
  166. data/lib/courier/models/notification_template_get_response.rb +0 -92
  167. data/rbi/courier/models/notification_template_get_response.rbi +0 -162
  168. data/sig/courier/models/notification_template_get_response.rbs +0 -72
@@ -0,0 +1,93 @@
1
+ module Courier
2
+ module Models
3
+ type journey_fetch_get_delete_node =
4
+ {
5
+ merge_strategy: Courier::Models::journey_merge_strategy,
6
+ method_: Courier::Models::JourneyFetchGetDeleteNode::method_,
7
+ type: Courier::Models::JourneyFetchGetDeleteNode::type_,
8
+ url: String,
9
+ id: String,
10
+ conditions: Courier::Models::journey_conditions_field,
11
+ headers: ::Hash[Symbol, String],
12
+ query_params: ::Hash[Symbol, String],
13
+ response_schema: ::Hash[Symbol, top]
14
+ }
15
+
16
+ class JourneyFetchGetDeleteNode < Courier::Internal::Type::BaseModel
17
+ attr_accessor merge_strategy: Courier::Models::journey_merge_strategy
18
+
19
+ attr_accessor method_: Courier::Models::JourneyFetchGetDeleteNode::method_
20
+
21
+ attr_accessor type: Courier::Models::JourneyFetchGetDeleteNode::type_
22
+
23
+ attr_accessor url: String
24
+
25
+ attr_reader id: String?
26
+
27
+ def id=: (String) -> String
28
+
29
+ attr_reader conditions: Courier::Models::journey_conditions_field?
30
+
31
+ def conditions=: (
32
+ Courier::Models::journey_conditions_field
33
+ ) -> Courier::Models::journey_conditions_field
34
+
35
+ attr_reader headers: ::Hash[Symbol, String]?
36
+
37
+ def headers=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
38
+
39
+ attr_reader query_params: ::Hash[Symbol, String]?
40
+
41
+ def query_params=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
42
+
43
+ attr_reader response_schema: ::Hash[Symbol, top]?
44
+
45
+ def response_schema=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
46
+
47
+ def initialize: (
48
+ merge_strategy: Courier::Models::journey_merge_strategy,
49
+ method_: Courier::Models::JourneyFetchGetDeleteNode::method_,
50
+ type: Courier::Models::JourneyFetchGetDeleteNode::type_,
51
+ url: String,
52
+ ?id: String,
53
+ ?conditions: Courier::Models::journey_conditions_field,
54
+ ?headers: ::Hash[Symbol, String],
55
+ ?query_params: ::Hash[Symbol, String],
56
+ ?response_schema: ::Hash[Symbol, top]
57
+ ) -> void
58
+
59
+ def to_hash: -> {
60
+ merge_strategy: Courier::Models::journey_merge_strategy,
61
+ method_: Courier::Models::JourneyFetchGetDeleteNode::method_,
62
+ type: Courier::Models::JourneyFetchGetDeleteNode::type_,
63
+ url: String,
64
+ id: String,
65
+ conditions: Courier::Models::journey_conditions_field,
66
+ headers: ::Hash[Symbol, String],
67
+ query_params: ::Hash[Symbol, String],
68
+ response_schema: ::Hash[Symbol, top]
69
+ }
70
+
71
+ type method_ = :get | :delete
72
+
73
+ module Method
74
+ extend Courier::Internal::Type::Enum
75
+
76
+ GET: :get
77
+ DELETE: :delete
78
+
79
+ def self?.values: -> ::Array[Courier::Models::JourneyFetchGetDeleteNode::method_]
80
+ end
81
+
82
+ type type_ = :fetch
83
+
84
+ module Type
85
+ extend Courier::Internal::Type::Enum
86
+
87
+ FETCH: :fetch
88
+
89
+ def self?.values: -> ::Array[Courier::Models::JourneyFetchGetDeleteNode::type_]
90
+ end
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,100 @@
1
+ module Courier
2
+ module Models
3
+ type journey_fetch_post_put_node =
4
+ {
5
+ merge_strategy: Courier::Models::journey_merge_strategy,
6
+ method_: Courier::Models::JourneyFetchPostPutNode::method_,
7
+ type: Courier::Models::JourneyFetchPostPutNode::type_,
8
+ url: String,
9
+ id: String,
10
+ body: String,
11
+ conditions: Courier::Models::journey_conditions_field,
12
+ headers: ::Hash[Symbol, String],
13
+ query_params: ::Hash[Symbol, String],
14
+ response_schema: ::Hash[Symbol, top]
15
+ }
16
+
17
+ class JourneyFetchPostPutNode < Courier::Internal::Type::BaseModel
18
+ attr_accessor merge_strategy: Courier::Models::journey_merge_strategy
19
+
20
+ attr_accessor method_: Courier::Models::JourneyFetchPostPutNode::method_
21
+
22
+ attr_accessor type: Courier::Models::JourneyFetchPostPutNode::type_
23
+
24
+ attr_accessor url: String
25
+
26
+ attr_reader id: String?
27
+
28
+ def id=: (String) -> String
29
+
30
+ attr_reader body: String?
31
+
32
+ def body=: (String) -> String
33
+
34
+ attr_reader conditions: Courier::Models::journey_conditions_field?
35
+
36
+ def conditions=: (
37
+ Courier::Models::journey_conditions_field
38
+ ) -> Courier::Models::journey_conditions_field
39
+
40
+ attr_reader headers: ::Hash[Symbol, String]?
41
+
42
+ def headers=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
43
+
44
+ attr_reader query_params: ::Hash[Symbol, String]?
45
+
46
+ def query_params=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
47
+
48
+ attr_reader response_schema: ::Hash[Symbol, top]?
49
+
50
+ def response_schema=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
51
+
52
+ def initialize: (
53
+ merge_strategy: Courier::Models::journey_merge_strategy,
54
+ method_: Courier::Models::JourneyFetchPostPutNode::method_,
55
+ type: Courier::Models::JourneyFetchPostPutNode::type_,
56
+ url: String,
57
+ ?id: String,
58
+ ?body: String,
59
+ ?conditions: Courier::Models::journey_conditions_field,
60
+ ?headers: ::Hash[Symbol, String],
61
+ ?query_params: ::Hash[Symbol, String],
62
+ ?response_schema: ::Hash[Symbol, top]
63
+ ) -> void
64
+
65
+ def to_hash: -> {
66
+ merge_strategy: Courier::Models::journey_merge_strategy,
67
+ method_: Courier::Models::JourneyFetchPostPutNode::method_,
68
+ type: Courier::Models::JourneyFetchPostPutNode::type_,
69
+ url: String,
70
+ id: String,
71
+ body: String,
72
+ conditions: Courier::Models::journey_conditions_field,
73
+ headers: ::Hash[Symbol, String],
74
+ query_params: ::Hash[Symbol, String],
75
+ response_schema: ::Hash[Symbol, top]
76
+ }
77
+
78
+ type method_ = :post | :put
79
+
80
+ module Method
81
+ extend Courier::Internal::Type::Enum
82
+
83
+ POST: :post
84
+ PUT: :put
85
+
86
+ def self?.values: -> ::Array[Courier::Models::JourneyFetchPostPutNode::method_]
87
+ end
88
+
89
+ type type_ = :fetch
90
+
91
+ module Type
92
+ extend Courier::Internal::Type::Enum
93
+
94
+ FETCH: :fetch
95
+
96
+ def self?.values: -> ::Array[Courier::Models::JourneyFetchPostPutNode::type_]
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,23 @@
1
+ module Courier
2
+ module Models
3
+ type journey_list_versions_params =
4
+ { template_id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class JourneyListVersionsParams < Courier::Internal::Type::BaseModel
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ attr_accessor template_id: String
11
+
12
+ def initialize: (
13
+ template_id: String,
14
+ ?request_options: Courier::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ template_id: String,
19
+ request_options: Courier::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,16 @@
1
+ module Courier
2
+ module Models
3
+ type journey_merge_strategy = :overwrite | :"soft-merge" | :replace | :none
4
+
5
+ module JourneyMergeStrategy
6
+ extend Courier::Internal::Type::Enum
7
+
8
+ OVERWRITE: :overwrite
9
+ SOFT_MERGE: :"soft-merge"
10
+ REPLACE: :replace
11
+ NONE: :none
12
+
13
+ def self?.values: -> ::Array[Courier::Models::journey_merge_strategy]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,117 @@
1
+ module Courier
2
+ module Models
3
+ type journey_node =
4
+ Courier::JourneyAPIInvokeTriggerNode
5
+ | Courier::JourneySegmentTriggerNode
6
+ | Courier::JourneySendNode
7
+ | Courier::JourneyDelayDurationNode
8
+ | Courier::JourneyDelayUntilNode
9
+ | Courier::JourneyFetchGetDeleteNode
10
+ | Courier::JourneyFetchPostPutNode
11
+ | Courier::JourneyAINode
12
+ | Courier::JourneyThrottleStaticNode
13
+ | Courier::JourneyThrottleDynamicNode
14
+ | Courier::JourneyExitNode
15
+ | Courier::JourneyNode::JourneyBranchNode
16
+
17
+ module JourneyNode
18
+ extend Courier::Internal::Type::Union
19
+
20
+ type journey_branch_node =
21
+ {
22
+ default: Courier::JourneyNode::JourneyBranchNode::Default,
23
+ paths: ::Array[Courier::JourneyNode::JourneyBranchNode::Path],
24
+ type: Courier::Models::JourneyNode::JourneyBranchNode::type_,
25
+ id: String
26
+ }
27
+
28
+ class JourneyBranchNode < Courier::Internal::Type::BaseModel
29
+ attr_accessor default: Courier::JourneyNode::JourneyBranchNode::Default
30
+
31
+ attr_accessor paths: ::Array[Courier::JourneyNode::JourneyBranchNode::Path]
32
+
33
+ attr_accessor type: Courier::Models::JourneyNode::JourneyBranchNode::type_
34
+
35
+ attr_reader id: String?
36
+
37
+ def id=: (String) -> String
38
+
39
+ def initialize: (
40
+ default: Courier::JourneyNode::JourneyBranchNode::Default,
41
+ paths: ::Array[Courier::JourneyNode::JourneyBranchNode::Path],
42
+ type: Courier::Models::JourneyNode::JourneyBranchNode::type_,
43
+ ?id: String
44
+ ) -> void
45
+
46
+ def to_hash: -> {
47
+ default: Courier::JourneyNode::JourneyBranchNode::Default,
48
+ paths: ::Array[Courier::JourneyNode::JourneyBranchNode::Path],
49
+ type: Courier::Models::JourneyNode::JourneyBranchNode::type_,
50
+ id: String
51
+ }
52
+
53
+ type default =
54
+ { nodes: ::Array[Courier::Models::journey_node], label: String }
55
+
56
+ class Default < Courier::Internal::Type::BaseModel
57
+ attr_accessor nodes: ::Array[Courier::Models::journey_node]
58
+
59
+ attr_reader label: String?
60
+
61
+ def label=: (String) -> String
62
+
63
+ def initialize: (
64
+ nodes: ::Array[Courier::Models::journey_node],
65
+ ?label: String
66
+ ) -> void
67
+
68
+ def to_hash: -> {
69
+ nodes: ::Array[Courier::Models::journey_node],
70
+ label: String
71
+ }
72
+ end
73
+
74
+ type path =
75
+ {
76
+ conditions: Courier::Models::journey_conditions_field,
77
+ nodes: ::Array[Courier::Models::journey_node],
78
+ label: String
79
+ }
80
+
81
+ class Path < Courier::Internal::Type::BaseModel
82
+ attr_accessor conditions: Courier::Models::journey_conditions_field
83
+
84
+ attr_accessor nodes: ::Array[Courier::Models::journey_node]
85
+
86
+ attr_reader label: String?
87
+
88
+ def label=: (String) -> String
89
+
90
+ def initialize: (
91
+ conditions: Courier::Models::journey_conditions_field,
92
+ nodes: ::Array[Courier::Models::journey_node],
93
+ ?label: String
94
+ ) -> void
95
+
96
+ def to_hash: -> {
97
+ conditions: Courier::Models::journey_conditions_field,
98
+ nodes: ::Array[Courier::Models::journey_node],
99
+ label: String
100
+ }
101
+ end
102
+
103
+ type type_ = :branch
104
+
105
+ module Type
106
+ extend Courier::Internal::Type::Enum
107
+
108
+ BRANCH: :branch
109
+
110
+ def self?.values: -> ::Array[Courier::Models::JourneyNode::JourneyBranchNode::type_]
111
+ end
112
+ end
113
+
114
+ def self?.variants: -> ::Array[Courier::Models::journey_node]
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ type journey_publish_params =
4
+ { template_id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class JourneyPublishParams < Courier::Models::JourneyPublishRequest
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ def template_id: -> String
11
+
12
+ def template_id=: (String _) -> String
13
+
14
+ def initialize: (
15
+ template_id: String,
16
+ ?request_options: Courier::request_opts
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ template_id: String,
21
+ request_options: Courier::RequestOptions
22
+ }
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,15 @@
1
+ module Courier
2
+ module Models
3
+ type journey_publish_request = { version: String }
4
+
5
+ class JourneyPublishRequest < Courier::Internal::Type::BaseModel
6
+ attr_reader version: String?
7
+
8
+ def version=: (String) -> String
9
+
10
+ def initialize: (?version: String) -> void
11
+
12
+ def to_hash: -> { version: String }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ type journey_replace_params =
4
+ { template_id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class JourneyReplaceParams < Courier::Models::CreateJourneyRequest
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ def template_id: -> String
11
+
12
+ def template_id=: (String _) -> String
13
+
14
+ def initialize: (
15
+ template_id: String,
16
+ ?request_options: Courier::request_opts
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ template_id: String,
21
+ request_options: Courier::RequestOptions
22
+ }
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,65 @@
1
+ module Courier
2
+ module Models
3
+ type journey_response =
4
+ {
5
+ id: String,
6
+ created: Integer?,
7
+ creator: String?,
8
+ enabled: bool,
9
+ name: String,
10
+ nodes: ::Array[Courier::Models::journey_node],
11
+ published: Integer?,
12
+ state: Courier::Models::journey_state,
13
+ updated: Integer?,
14
+ updater: String?
15
+ }
16
+
17
+ class JourneyResponse < Courier::Internal::Type::BaseModel
18
+ attr_accessor id: String
19
+
20
+ attr_accessor created: Integer?
21
+
22
+ attr_accessor creator: String?
23
+
24
+ attr_accessor enabled: bool
25
+
26
+ attr_accessor name: String
27
+
28
+ attr_accessor nodes: ::Array[Courier::Models::journey_node]
29
+
30
+ attr_accessor published: Integer?
31
+
32
+ attr_accessor state: Courier::Models::journey_state
33
+
34
+ attr_accessor updated: Integer?
35
+
36
+ attr_accessor updater: String?
37
+
38
+ def initialize: (
39
+ id: String,
40
+ created: Integer?,
41
+ creator: String?,
42
+ enabled: bool,
43
+ name: String,
44
+ nodes: ::Array[Courier::Models::journey_node],
45
+ published: Integer?,
46
+ state: Courier::Models::journey_state,
47
+ updated: Integer?,
48
+ updater: String?
49
+ ) -> void
50
+
51
+ def to_hash: -> {
52
+ id: String,
53
+ created: Integer?,
54
+ creator: String?,
55
+ enabled: bool,
56
+ name: String,
57
+ nodes: ::Array[Courier::Models::journey_node],
58
+ published: Integer?,
59
+ state: Courier::Models::journey_state,
60
+ updated: Integer?,
61
+ updater: String?
62
+ }
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,30 @@
1
+ module Courier
2
+ module Models
3
+ type journey_retrieve_params =
4
+ { template_id: String, version: String }
5
+ & Courier::Internal::Type::request_parameters
6
+
7
+ class JourneyRetrieveParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ attr_accessor template_id: String
12
+
13
+ attr_reader version: String?
14
+
15
+ def version=: (String) -> String
16
+
17
+ def initialize: (
18
+ template_id: String,
19
+ ?version: String,
20
+ ?request_options: Courier::request_opts
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ template_id: String,
25
+ version: String,
26
+ request_options: Courier::RequestOptions
27
+ }
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,85 @@
1
+ module Courier
2
+ module Models
3
+ type journey_segment_trigger_node =
4
+ {
5
+ request_type: Courier::Models::JourneySegmentTriggerNode::request_type,
6
+ trigger_type: Courier::Models::JourneySegmentTriggerNode::trigger_type,
7
+ type: Courier::Models::JourneySegmentTriggerNode::type_,
8
+ id: String,
9
+ conditions: Courier::Models::journey_conditions_field,
10
+ event_id: String
11
+ }
12
+
13
+ class JourneySegmentTriggerNode < Courier::Internal::Type::BaseModel
14
+ attr_accessor request_type: Courier::Models::JourneySegmentTriggerNode::request_type
15
+
16
+ attr_accessor trigger_type: Courier::Models::JourneySegmentTriggerNode::trigger_type
17
+
18
+ attr_accessor type: Courier::Models::JourneySegmentTriggerNode::type_
19
+
20
+ attr_reader id: String?
21
+
22
+ def id=: (String) -> String
23
+
24
+ attr_reader conditions: Courier::Models::journey_conditions_field?
25
+
26
+ def conditions=: (
27
+ Courier::Models::journey_conditions_field
28
+ ) -> Courier::Models::journey_conditions_field
29
+
30
+ attr_reader event_id: String?
31
+
32
+ def event_id=: (String) -> String
33
+
34
+ def initialize: (
35
+ request_type: Courier::Models::JourneySegmentTriggerNode::request_type,
36
+ trigger_type: Courier::Models::JourneySegmentTriggerNode::trigger_type,
37
+ type: Courier::Models::JourneySegmentTriggerNode::type_,
38
+ ?id: String,
39
+ ?conditions: Courier::Models::journey_conditions_field,
40
+ ?event_id: String
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ request_type: Courier::Models::JourneySegmentTriggerNode::request_type,
45
+ trigger_type: Courier::Models::JourneySegmentTriggerNode::trigger_type,
46
+ type: Courier::Models::JourneySegmentTriggerNode::type_,
47
+ id: String,
48
+ conditions: Courier::Models::journey_conditions_field,
49
+ event_id: String
50
+ }
51
+
52
+ type request_type = :identify | :group | :track
53
+
54
+ module RequestType
55
+ extend Courier::Internal::Type::Enum
56
+
57
+ IDENTIFY: :identify
58
+ GROUP: :group
59
+ TRACK: :track
60
+
61
+ def self?.values: -> ::Array[Courier::Models::JourneySegmentTriggerNode::request_type]
62
+ end
63
+
64
+ type trigger_type = :segment
65
+
66
+ module TriggerType
67
+ extend Courier::Internal::Type::Enum
68
+
69
+ SEGMENT: :segment
70
+
71
+ def self?.values: -> ::Array[Courier::Models::JourneySegmentTriggerNode::trigger_type]
72
+ end
73
+
74
+ type type_ = :trigger
75
+
76
+ module Type
77
+ extend Courier::Internal::Type::Enum
78
+
79
+ TRIGGER: :trigger
80
+
81
+ def self?.values: -> ::Array[Courier::Models::JourneySegmentTriggerNode::type_]
82
+ end
83
+ end
84
+ end
85
+ end