trycourier 6.0.0 → 6.2.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 (94) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/courier/models/automation_run_list_item.rb +57 -0
  5. data/lib/courier/models/automation_run_list_response.rb +25 -0
  6. data/lib/courier/models/automation_run_step.rb +64 -0
  7. data/lib/courier/models/automation_run_steps_response.rb +17 -0
  8. data/lib/courier/models/automations/run_list_params.rb +71 -0
  9. data/lib/courier/models/automations/run_list_steps_params.rb +22 -0
  10. data/lib/courier/models/create_journey_request.rb +2 -2
  11. data/lib/courier/models/journey_audience_trigger_node.rb +77 -0
  12. data/lib/courier/models/journey_node.rb +8 -2
  13. data/lib/courier/models/journey_response.rb +2 -2
  14. data/lib/courier/models/journey_run.rb +66 -0
  15. data/lib/courier/models/journey_run_list_item.rb +50 -0
  16. data/lib/courier/models/journey_run_list_response.rb +33 -0
  17. data/lib/courier/models/journey_run_response.rb +22 -0
  18. data/lib/courier/models/journey_run_step.rb +65 -0
  19. data/lib/courier/models/journey_run_steps_response.rb +17 -0
  20. data/lib/courier/models/journey_segment_trigger_node.rb +5 -1
  21. data/lib/courier/models/journey_webhook_trigger_node.rb +85 -0
  22. data/lib/courier/models/journeys/run_list_params.rb +71 -0
  23. data/lib/courier/models/journeys/run_list_steps_params.rb +22 -0
  24. data/lib/courier/models/journeys/run_retrieve_params.rb +22 -0
  25. data/lib/courier/models/notification_get_metrics_params.rb +83 -0
  26. data/lib/courier/models/notification_metrics_response.rb +165 -0
  27. data/lib/courier/models/users/topic_preference.rb +21 -1
  28. data/lib/courier/models.rb +28 -0
  29. data/lib/courier/resources/automations/runs.rb +80 -0
  30. data/lib/courier/resources/automations.rb +6 -0
  31. data/lib/courier/resources/journeys/runs.rb +104 -0
  32. data/lib/courier/resources/journeys.rb +8 -2
  33. data/lib/courier/resources/notifications.rb +53 -0
  34. data/lib/courier/version.rb +1 -1
  35. data/lib/courier.rb +21 -0
  36. data/rbi/courier/models/automation_run_list_item.rbi +87 -0
  37. data/rbi/courier/models/automation_run_list_response.rbi +47 -0
  38. data/rbi/courier/models/automation_run_step.rbi +96 -0
  39. data/rbi/courier/models/automation_run_steps_response.rbi +28 -0
  40. data/rbi/courier/models/automations/run_list_params.rbi +114 -0
  41. data/rbi/courier/models/automations/run_list_steps_params.rbi +40 -0
  42. data/rbi/courier/models/create_journey_request.rbi +6 -0
  43. data/rbi/courier/models/journey_audience_trigger_node.rbi +162 -0
  44. data/rbi/courier/models/journey_node.rbi +2 -0
  45. data/rbi/courier/models/journey_response.rbi +2 -0
  46. data/rbi/courier/models/journey_run.rbi +97 -0
  47. data/rbi/courier/models/journey_run_list_item.rbi +79 -0
  48. data/rbi/courier/models/journey_run_list_response.rbi +58 -0
  49. data/rbi/courier/models/journey_run_response.rbi +33 -0
  50. data/rbi/courier/models/journey_run_step.rbi +97 -0
  51. data/rbi/courier/models/journey_run_steps_response.rbi +28 -0
  52. data/rbi/courier/models/journey_segment_trigger_node.rbi +9 -1
  53. data/rbi/courier/models/journey_webhook_trigger_node.rbi +174 -0
  54. data/rbi/courier/models/journeys/run_list_params.rbi +111 -0
  55. data/rbi/courier/models/journeys/run_list_steps_params.rbi +40 -0
  56. data/rbi/courier/models/journeys/run_retrieve_params.rbi +40 -0
  57. data/rbi/courier/models/notification_get_metrics_params.rbi +167 -0
  58. data/rbi/courier/models/notification_metrics_response.rbi +269 -0
  59. data/rbi/courier/models/users/topic_preference.rbi +33 -3
  60. data/rbi/courier/models.rbi +28 -0
  61. data/rbi/courier/resources/automations/runs.rbi +69 -0
  62. data/rbi/courier/resources/automations.rbi +5 -0
  63. data/rbi/courier/resources/journeys/runs.rbi +87 -0
  64. data/rbi/courier/resources/journeys.rbi +9 -0
  65. data/rbi/courier/resources/notifications.rbi +57 -0
  66. data/sig/courier/models/automation_run_list_item.rbs +46 -0
  67. data/sig/courier/models/automation_run_list_response.rbs +24 -0
  68. data/sig/courier/models/automation_run_step.rbs +53 -0
  69. data/sig/courier/models/automation_run_steps_response.rbs +14 -0
  70. data/sig/courier/models/automations/run_list_params.rbs +65 -0
  71. data/sig/courier/models/automations/run_list_steps_params.rbs +22 -0
  72. data/sig/courier/models/journey_audience_trigger_node.rbs +66 -0
  73. data/sig/courier/models/journey_node.rbs +2 -0
  74. data/sig/courier/models/journey_run.rbs +53 -0
  75. data/sig/courier/models/journey_run_list_item.rbs +46 -0
  76. data/sig/courier/models/journey_run_list_response.rbs +34 -0
  77. data/sig/courier/models/journey_run_response.rbs +13 -0
  78. data/sig/courier/models/journey_run_step.rbs +53 -0
  79. data/sig/courier/models/journey_run_steps_response.rbs +14 -0
  80. data/sig/courier/models/journey_segment_trigger_node.rbs +2 -1
  81. data/sig/courier/models/journey_webhook_trigger_node.rbs +73 -0
  82. data/sig/courier/models/journeys/run_list_params.rbs +65 -0
  83. data/sig/courier/models/journeys/run_list_steps_params.rbs +25 -0
  84. data/sig/courier/models/journeys/run_retrieve_params.rbs +25 -0
  85. data/sig/courier/models/notification_get_metrics_params.rbs +69 -0
  86. data/sig/courier/models/notification_metrics_response.rbs +127 -0
  87. data/sig/courier/models/users/topic_preference.rbs +17 -3
  88. data/sig/courier/models.rbs +28 -0
  89. data/sig/courier/resources/automations/runs.rbs +24 -0
  90. data/sig/courier/resources/automations.rbs +2 -0
  91. data/sig/courier/resources/journeys/runs.rbs +29 -0
  92. data/sig/courier/resources/journeys.rbs +2 -0
  93. data/sig/courier/resources/notifications.rbs +9 -0
  94. metadata +65 -2
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ module Journeys
4
+ type run_list_steps_params =
5
+ { run_id: String } & Courier::Internal::Type::request_parameters
6
+
7
+ class RunListStepsParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ attr_accessor run_id: String
12
+
13
+ def initialize: (
14
+ run_id: String,
15
+ ?request_options: Courier::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ run_id: String,
20
+ request_options: Courier::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ module Journeys
4
+ type run_retrieve_params =
5
+ { run_id: String } & Courier::Internal::Type::request_parameters
6
+
7
+ class RunRetrieveParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ attr_accessor run_id: String
12
+
13
+ def initialize: (
14
+ run_id: String,
15
+ ?request_options: Courier::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ run_id: String,
20
+ request_options: Courier::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,69 @@
1
+ module Courier
2
+ module Models
3
+ type notification_get_metrics_params =
4
+ {
5
+ id: String,
6
+ end_: Time,
7
+ granularity: Courier::Models::NotificationGetMetricsParams::granularity,
8
+ lookback: String,
9
+ start: Time
10
+ }
11
+ & Courier::Internal::Type::request_parameters
12
+
13
+ class NotificationGetMetricsParams < Courier::Internal::Type::BaseModel
14
+ extend Courier::Internal::Type::RequestParameters::Converter
15
+ include Courier::Internal::Type::RequestParameters
16
+
17
+ attr_accessor id: String
18
+
19
+ attr_reader end_: Time?
20
+
21
+ def end_=: (Time) -> Time
22
+
23
+ attr_reader granularity: Courier::Models::NotificationGetMetricsParams::granularity?
24
+
25
+ def granularity=: (
26
+ Courier::Models::NotificationGetMetricsParams::granularity
27
+ ) -> Courier::Models::NotificationGetMetricsParams::granularity
28
+
29
+ attr_reader lookback: String?
30
+
31
+ def lookback=: (String) -> String
32
+
33
+ attr_reader start: Time?
34
+
35
+ def start=: (Time) -> Time
36
+
37
+ def initialize: (
38
+ id: String,
39
+ ?end_: Time,
40
+ ?granularity: Courier::Models::NotificationGetMetricsParams::granularity,
41
+ ?lookback: String,
42
+ ?start: Time,
43
+ ?request_options: Courier::request_opts
44
+ ) -> void
45
+
46
+ def to_hash: -> {
47
+ id: String,
48
+ end_: Time,
49
+ granularity: Courier::Models::NotificationGetMetricsParams::granularity,
50
+ lookback: String,
51
+ start: Time,
52
+ request_options: Courier::RequestOptions
53
+ }
54
+
55
+ type granularity = :HOUR | :DAY | :WEEK | :MONTH
56
+
57
+ module Granularity
58
+ extend Courier::Internal::Type::Enum
59
+
60
+ HOUR: :HOUR
61
+ DAY: :DAY
62
+ WEEK: :WEEK
63
+ MONTH: :MONTH
64
+
65
+ def self?.values: -> ::Array[Courier::Models::NotificationGetMetricsParams::granularity]
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,127 @@
1
+ module Courier
2
+ module Models
3
+ type notification_metrics_response =
4
+ {
5
+ end_: Time,
6
+ granularity: Courier::Models::NotificationMetricsResponse::granularity,
7
+ notification_id: String,
8
+ series: ::Array[Courier::NotificationMetricsResponse::Series],
9
+ start: Time
10
+ }
11
+
12
+ class NotificationMetricsResponse < Courier::Internal::Type::BaseModel
13
+ attr_accessor end_: Time
14
+
15
+ attr_accessor granularity: Courier::Models::NotificationMetricsResponse::granularity
16
+
17
+ attr_accessor notification_id: String
18
+
19
+ attr_accessor series: ::Array[Courier::NotificationMetricsResponse::Series]
20
+
21
+ attr_accessor start: Time
22
+
23
+ def initialize: (
24
+ end_: Time,
25
+ granularity: Courier::Models::NotificationMetricsResponse::granularity,
26
+ notification_id: String,
27
+ series: ::Array[Courier::NotificationMetricsResponse::Series],
28
+ start: Time
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ end_: Time,
33
+ granularity: Courier::Models::NotificationMetricsResponse::granularity,
34
+ notification_id: String,
35
+ series: ::Array[Courier::NotificationMetricsResponse::Series],
36
+ start: Time
37
+ }
38
+
39
+ type granularity = :HOUR | :DAY | :WEEK | :MONTH
40
+
41
+ module Granularity
42
+ extend Courier::Internal::Type::Enum
43
+
44
+ HOUR: :HOUR
45
+ DAY: :DAY
46
+ WEEK: :WEEK
47
+ MONTH: :MONTH
48
+
49
+ def self?.values: -> ::Array[Courier::Models::NotificationMetricsResponse::granularity]
50
+ end
51
+
52
+ type series =
53
+ {
54
+ data: ::Array[Courier::NotificationMetricsResponse::Series::Data],
55
+ period: Time
56
+ }
57
+
58
+ class Series < Courier::Internal::Type::BaseModel
59
+ attr_accessor data: ::Array[Courier::NotificationMetricsResponse::Series::Data]
60
+
61
+ attr_accessor period: Time
62
+
63
+ def initialize: (
64
+ data: ::Array[Courier::NotificationMetricsResponse::Series::Data],
65
+ period: Time
66
+ ) -> void
67
+
68
+ def to_hash: -> {
69
+ data: ::Array[Courier::NotificationMetricsResponse::Series::Data],
70
+ period: Time
71
+ }
72
+
73
+ type data =
74
+ {
75
+ channel: String,
76
+ clicked: Integer,
77
+ delivered: Integer,
78
+ errors: Integer,
79
+ opened: Integer,
80
+ provider: String,
81
+ sent: Integer,
82
+ undeliverable: Integer
83
+ }
84
+
85
+ class Data < Courier::Internal::Type::BaseModel
86
+ attr_accessor channel: String
87
+
88
+ attr_accessor clicked: Integer
89
+
90
+ attr_accessor delivered: Integer
91
+
92
+ attr_accessor errors: Integer
93
+
94
+ attr_accessor opened: Integer
95
+
96
+ attr_accessor provider: String
97
+
98
+ attr_accessor sent: Integer
99
+
100
+ attr_accessor undeliverable: Integer
101
+
102
+ def initialize: (
103
+ channel: String,
104
+ clicked: Integer,
105
+ delivered: Integer,
106
+ errors: Integer,
107
+ opened: Integer,
108
+ provider: String,
109
+ sent: Integer,
110
+ undeliverable: Integer
111
+ ) -> void
112
+
113
+ def to_hash: -> {
114
+ channel: String,
115
+ clicked: Integer,
116
+ delivered: Integer,
117
+ errors: Integer,
118
+ opened: Integer,
119
+ provider: String,
120
+ sent: Integer,
121
+ undeliverable: Integer
122
+ }
123
+ end
124
+ end
125
+ end
126
+ end
127
+ end
@@ -8,7 +8,9 @@ module Courier
8
8
  topic_id: String,
9
9
  topic_name: String,
10
10
  custom_routing: ::Array[Courier::Models::channel_classification]?,
11
- has_custom_routing: bool?
11
+ has_custom_routing: bool?,
12
+ section_id: String,
13
+ section_name: String
12
14
  }
13
15
 
14
16
  class TopicPreference < Courier::Internal::Type::BaseModel
@@ -24,13 +26,23 @@ module Courier
24
26
 
25
27
  attr_accessor has_custom_routing: bool?
26
28
 
29
+ attr_reader section_id: String?
30
+
31
+ def section_id=: (String) -> String
32
+
33
+ attr_reader section_name: String?
34
+
35
+ def section_name=: (String) -> String
36
+
27
37
  def initialize: (
28
38
  default_status: Courier::Models::preference_status,
29
39
  status: Courier::Models::preference_status,
30
40
  topic_id: String,
31
41
  topic_name: String,
32
42
  ?custom_routing: ::Array[Courier::Models::channel_classification]?,
33
- ?has_custom_routing: bool?
43
+ ?has_custom_routing: bool?,
44
+ ?section_id: String,
45
+ ?section_name: String
34
46
  ) -> void
35
47
 
36
48
  def to_hash: -> {
@@ -39,7 +51,9 @@ module Courier
39
51
  topic_id: String,
40
52
  topic_name: String,
41
53
  custom_routing: ::Array[Courier::Models::channel_classification]?,
42
- has_custom_routing: bool?
54
+ has_custom_routing: bool?,
55
+ section_id: String,
56
+ section_name: String
43
57
  }
44
58
  end
45
59
  end
@@ -39,6 +39,14 @@ module Courier
39
39
 
40
40
  class AutomationListParams = Courier::Models::AutomationListParams
41
41
 
42
+ class AutomationRunListItem = Courier::Models::AutomationRunListItem
43
+
44
+ class AutomationRunListResponse = Courier::Models::AutomationRunListResponse
45
+
46
+ class AutomationRunStep = Courier::Models::AutomationRunStep
47
+
48
+ class AutomationRunStepsResponse = Courier::Models::AutomationRunStepsResponse
49
+
42
50
  module Automations = Courier::Models::Automations
43
51
 
44
52
  class AutomationTemplate = Courier::Models::AutomationTemplate
@@ -205,6 +213,8 @@ module Courier
205
213
 
206
214
  class JourneyArchiveParams = Courier::Models::JourneyArchiveParams
207
215
 
216
+ class JourneyAudienceTriggerNode = Courier::Models::JourneyAudienceTriggerNode
217
+
208
218
  class JourneyCancelParams = Courier::Models::JourneyCancelParams
209
219
 
210
220
  JourneyConditionAtom: Courier::Internal::Type::Converter
@@ -251,6 +261,18 @@ module Courier
251
261
 
252
262
  class JourneyRetrieveParams = Courier::Models::JourneyRetrieveParams
253
263
 
264
+ class JourneyRun = Courier::Models::JourneyRun
265
+
266
+ class JourneyRunListItem = Courier::Models::JourneyRunListItem
267
+
268
+ class JourneyRunListResponse = Courier::Models::JourneyRunListResponse
269
+
270
+ class JourneyRunResponse = Courier::Models::JourneyRunResponse
271
+
272
+ class JourneyRunStep = Courier::Models::JourneyRunStep
273
+
274
+ class JourneyRunStepsResponse = Courier::Models::JourneyRunStepsResponse
275
+
254
276
  module Journeys = Courier::Models::Journeys
255
277
 
256
278
  class JourneySegmentTriggerNode = Courier::Models::JourneySegmentTriggerNode
@@ -285,6 +307,8 @@ module Courier
285
307
 
286
308
  class JourneyVersionsListResponse = Courier::Models::JourneyVersionsListResponse
287
309
 
310
+ class JourneyWebhookTriggerNode = Courier::Models::JourneyWebhookTriggerNode
311
+
288
312
  class ListDeleteParams = Courier::Models::ListDeleteParams
289
313
 
290
314
  class ListFilter = Courier::Models::ListFilter
@@ -355,12 +379,16 @@ module Courier
355
379
 
356
380
  class NotificationGetContent = Courier::Models::NotificationGetContent
357
381
 
382
+ class NotificationGetMetricsParams = Courier::Models::NotificationGetMetricsParams
383
+
358
384
  class NotificationListParams = Courier::Models::NotificationListParams
359
385
 
360
386
  class NotificationListVersionsParams = Courier::Models::NotificationListVersionsParams
361
387
 
362
388
  class NotificationLocalePutRequest = Courier::Models::NotificationLocalePutRequest
363
389
 
390
+ class NotificationMetricsResponse = Courier::Models::NotificationMetricsResponse
391
+
364
392
  class NotificationPreferenceDetails = Courier::Models::NotificationPreferenceDetails
365
393
 
366
394
  class NotificationPublishParams = Courier::Models::NotificationPublishParams
@@ -0,0 +1,24 @@
1
+ module Courier
2
+ module Resources
3
+ class Automations
4
+ class Runs
5
+ def list: (
6
+ ?cursor: String,
7
+ ?end_date: String,
8
+ ?limit: String,
9
+ ?start_date: String,
10
+ ?status: String,
11
+ ?template_id: String,
12
+ ?request_options: Courier::request_opts
13
+ ) -> Courier::AutomationRunListResponse
14
+
15
+ def list_steps: (
16
+ String id,
17
+ ?request_options: Courier::request_opts
18
+ ) -> Courier::AutomationRunStepsResponse
19
+
20
+ def initialize: (client: Courier::Client) -> void
21
+ end
22
+ end
23
+ end
24
+ end
@@ -3,6 +3,8 @@ module Courier
3
3
  class Automations
4
4
  attr_reader invoke: Courier::Resources::Automations::Invoke
5
5
 
6
+ attr_reader runs: Courier::Resources::Automations::Runs
7
+
6
8
  def list: (
7
9
  ?cursor: String,
8
10
  ?version: Courier::Models::AutomationListParams::version,
@@ -0,0 +1,29 @@
1
+ module Courier
2
+ module Resources
3
+ class Journeys
4
+ class Runs
5
+ def retrieve: (
6
+ String run_id,
7
+ ?request_options: Courier::request_opts
8
+ ) -> Courier::JourneyRunResponse
9
+
10
+ def list: (
11
+ ?cursor: String,
12
+ ?end_date: String,
13
+ ?limit: String,
14
+ ?start_date: String,
15
+ ?status: String,
16
+ ?template_id: String,
17
+ ?request_options: Courier::request_opts
18
+ ) -> Courier::JourneyRunListResponse
19
+
20
+ def list_steps: (
21
+ String run_id,
22
+ ?request_options: Courier::request_opts
23
+ ) -> Courier::JourneyRunStepsResponse
24
+
25
+ def initialize: (client: Courier::Client) -> void
26
+ end
27
+ end
28
+ end
29
+ end
@@ -3,6 +3,8 @@ module Courier
3
3
  class Journeys
4
4
  attr_reader templates: Courier::Resources::Journeys::Templates
5
5
 
6
+ attr_reader runs: Courier::Resources::Journeys::Runs
7
+
6
8
  def create: (
7
9
  name: String,
8
10
  nodes: ::Array[Courier::Models::journey_node],
@@ -26,6 +26,15 @@ module Courier
26
26
 
27
27
  def archive: (String id, ?request_options: Courier::request_opts) -> nil
28
28
 
29
+ def get_metrics: (
30
+ String id,
31
+ ?end_: Time,
32
+ ?granularity: Courier::Models::NotificationGetMetricsParams::granularity,
33
+ ?lookback: String,
34
+ ?start: Time,
35
+ ?request_options: Courier::request_opts
36
+ ) -> Courier::NotificationMetricsResponse
37
+
29
38
  def list_versions: (
30
39
  String id,
31
40
  ?cursor: String,