trycourier 4.19.2 → 4.21.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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/lib/courier/client.rb +0 -4
  4. data/lib/courier/models/{bulk_run_job_params.rb → notification_duplicate_params.rb} +6 -6
  5. data/lib/courier/models/notification_template_summary.rb +22 -1
  6. data/lib/courier/models.rb +2 -14
  7. data/lib/courier/resources/notifications.rb +25 -0
  8. data/lib/courier/version.rb +1 -1
  9. data/lib/courier.rb +1 -11
  10. data/rbi/courier/client.rbi +0 -3
  11. data/rbi/courier/models/{bulk_retrieve_job_params.rbi → notification_duplicate_params.rbi} +9 -6
  12. data/rbi/courier/models/notification_template_summary.rbi +26 -0
  13. data/rbi/courier/models.rbi +2 -14
  14. data/rbi/courier/resources/notifications.rbi +19 -0
  15. data/sig/courier/client.rbs +0 -2
  16. data/sig/courier/models/notification_duplicate_params.rbs +20 -0
  17. data/sig/courier/models/notification_template_summary.rbs +14 -0
  18. data/sig/courier/models.rbs +2 -14
  19. data/sig/courier/resources/notifications.rbs +5 -0
  20. metadata +5 -35
  21. data/lib/courier/models/bulk_add_users_params.rb +0 -26
  22. data/lib/courier/models/bulk_create_job_params.rb +0 -29
  23. data/lib/courier/models/bulk_create_job_response.rb +0 -16
  24. data/lib/courier/models/bulk_list_users_params.rb +0 -33
  25. data/lib/courier/models/bulk_list_users_response.rb +0 -49
  26. data/lib/courier/models/bulk_retrieve_job_params.rb +0 -20
  27. data/lib/courier/models/bulk_retrieve_job_response.rb +0 -76
  28. data/lib/courier/models/inbound_bulk_message.rb +0 -91
  29. data/lib/courier/models/inbound_bulk_message_user.rb +0 -54
  30. data/lib/courier/resources/bulk.rb +0 -141
  31. data/rbi/courier/models/bulk_add_users_params.rbi +0 -43
  32. data/rbi/courier/models/bulk_create_job_params.rbi +0 -54
  33. data/rbi/courier/models/bulk_create_job_response.rbi +0 -26
  34. data/rbi/courier/models/bulk_list_users_params.rbi +0 -51
  35. data/rbi/courier/models/bulk_list_users_response.rbi +0 -125
  36. data/rbi/courier/models/bulk_retrieve_job_response.rbi +0 -157
  37. data/rbi/courier/models/bulk_run_job_params.rbi +0 -35
  38. data/rbi/courier/models/inbound_bulk_message.rbi +0 -124
  39. data/rbi/courier/models/inbound_bulk_message_user.rbi +0 -88
  40. data/rbi/courier/resources/bulk.rbi +0 -102
  41. data/sig/courier/models/bulk_add_users_params.rbs +0 -28
  42. data/sig/courier/models/bulk_create_job_params.rbs +0 -24
  43. data/sig/courier/models/bulk_create_job_response.rbs +0 -13
  44. data/sig/courier/models/bulk_list_users_params.rbs +0 -28
  45. data/sig/courier/models/bulk_list_users_response.rbs +0 -65
  46. data/sig/courier/models/bulk_retrieve_job_params.rbs +0 -23
  47. data/sig/courier/models/bulk_retrieve_job_response.rbs +0 -66
  48. data/sig/courier/models/bulk_run_job_params.rbs +0 -23
  49. data/sig/courier/models/inbound_bulk_message.rbs +0 -58
  50. data/sig/courier/models/inbound_bulk_message_user.rbs +0 -42
  51. data/sig/courier/resources/bulk.rbs +0 -34
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78aa5195a10f1a9e0e35baac7fbd5e30ae4d18c8041b12473fd7e01f2ab5d4f7
4
- data.tar.gz: 7bf9ccb0af6b8436aee58212baff454d06ef792f1bd40c84c6aea041dea04009
3
+ metadata.gz: f4dccb5834ee91963f2ed28cf943aebb50d899bf774a84ed87189fe523b1eeba
4
+ data.tar.gz: 8630a527df2d788a325a9643a76aa4d8d26258c20e77ec9d2b52b939374b4f36
5
5
  SHA512:
6
- metadata.gz: df6d4219a0c056693e5cea92ce49798403dc80568e260e91b9ec28408098448e69c233d2ce87e764879a0e07be9926ffd20a417759d155d75f9a4372cf5cad87
7
- data.tar.gz: 7032c2ffdc8655737722530dbc91cf7c1924a1409e6c188d1c876327e376f2c43807f318c6d657d0d97d611d8645dbadc087ababaa5e375e7c80d5d3e09809eb
6
+ metadata.gz: a3ae8f118cc4b01a50bd327fb2cd17b7790aa5863fff758c0a012c83273597a89a877f8ef307cec1820556ef808b65f7e6ee3206bbcc2a2be8b06516aad32daf
7
+ data.tar.gz: 0544e5259f039217d1666a2272926d9bca77faa8896012f50d18bd0d042b52408384af662a8f5a1df43b4d25b94f54429babf438d5e96fd2a50d40615609a906
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.21.0 (2026-07-23)
4
+
5
+ Full Changelog: [v4.20.0...v4.21.0](https://github.com/trycourier/courier-ruby/compare/v4.20.0...v4.21.0)
6
+
7
+ ### Features
8
+
9
+ * Remove /bulk endpoints from api-spec (C-19507) ([#171](https://github.com/trycourier/courier-ruby/issues/171)) ([e10d767](https://github.com/trycourier/courier-ruby/commit/e10d767174c28e0ae756041d7d2f1f78f2c72241))
10
+
11
+ ## 4.20.0 (2026-07-20)
12
+
13
+ Full Changelog: [v4.19.2...v4.20.0](https://github.com/trycourier/courier-ruby/compare/v4.19.2...v4.20.0)
14
+
15
+ ### Features
16
+
17
+ * Document POST /notifications/{id}/duplicate [C-18607] ([#165](https://github.com/trycourier/courier-ruby/issues/165)) ([212644c](https://github.com/trycourier/courier-ruby/commit/212644cd49ac7b108944831e04289d2e9e073b7d))
18
+ * Merge pull request [#149](https://github.com/trycourier/courier-ruby/issues/149) from trycourier/geraldosilva/c-19201-notification-template-subscription-topic-id ([cd697fa](https://github.com/trycourier/courier-ruby/commit/cd697fa2d3b49db32db582dae1789ab03706ced5))
19
+ * Merge pull request [#168](https://github.com/trycourier/courier-ruby/issues/168) from trycourier/geraldosilva/c-19419-topic-id-notification-template-summary ([71d47f3](https://github.com/trycourier/courier-ruby/commit/71d47f336799157c0dfd99276951359d391a8a7d))
20
+ * **stlc:** configurable CI runner and private-production-repo support in workflow templates ([c5fe04e](https://github.com/trycourier/courier-ruby/commit/c5fe04ea6c0ed2c5ce38ca49738c293e44557688))
21
+
3
22
  ## 4.19.2 (2026-07-10)
4
23
 
5
24
  Full Changelog: [v4.19.1...v4.19.2](https://github.com/trycourier/courier-ruby/compare/v4.19.1...v4.19.2)
@@ -42,9 +42,6 @@ module Courier
42
42
  # @return [Courier::Resources::Brands]
43
43
  attr_reader :brands
44
44
 
45
- # @return [Courier::Resources::Bulk]
46
- attr_reader :bulk
47
-
48
45
  # @return [Courier::Resources::Digests]
49
46
  attr_reader :digests
50
47
 
@@ -150,7 +147,6 @@ module Courier
150
147
  @automations = Courier::Resources::Automations.new(client: self)
151
148
  @journeys = Courier::Resources::Journeys.new(client: self)
152
149
  @brands = Courier::Resources::Brands.new(client: self)
153
- @bulk = Courier::Resources::Bulk.new(client: self)
154
150
  @digests = Courier::Resources::Digests.new(client: self)
155
151
  @inbound = Courier::Resources::Inbound.new(client: self)
156
152
  @lists = Courier::Resources::Lists.new(client: self)
@@ -2,18 +2,18 @@
2
2
 
3
3
  module Courier
4
4
  module Models
5
- # @see Courier::Resources::Bulk#run_job
6
- class BulkRunJobParams < Courier::Internal::Type::BaseModel
5
+ # @see Courier::Resources::Notifications#duplicate
6
+ class NotificationDuplicateParams < Courier::Internal::Type::BaseModel
7
7
  extend Courier::Internal::Type::RequestParameters::Converter
8
8
  include Courier::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute job_id
10
+ # @!attribute id
11
11
  #
12
12
  # @return [String]
13
- required :job_id, String
13
+ required :id, String
14
14
 
15
- # @!method initialize(job_id:, request_options: {})
16
- # @param job_id [String]
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
17
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
18
18
  end
19
19
  end
@@ -35,6 +35,20 @@ module Courier
35
35
  # @return [Array<String>]
36
36
  required :tags, Courier::Internal::Type::ArrayOf[String]
37
37
 
38
+ # @!attribute subscription_topic_id
39
+ # The linked subscription (preference) topic of the published version. Omitted
40
+ # when no topic is linked or the template has never been published.
41
+ #
42
+ # @return [String, nil]
43
+ optional :subscription_topic_id, String
44
+
45
+ # @!attribute topic_id
46
+ # Alias of subscription_topic_id, provided under the same name V1 list items use
47
+ # for the linked topic. Always carries the same value as subscription_topic_id.
48
+ #
49
+ # @return [String, nil]
50
+ optional :topic_id, String
51
+
38
52
  # @!attribute updated
39
53
  # Epoch milliseconds of last update.
40
54
  #
@@ -47,7 +61,10 @@ module Courier
47
61
  # @return [String, nil]
48
62
  optional :updater, String
49
63
 
50
- # @!method initialize(id:, created:, creator:, name:, state:, tags:, updated: nil, updater: nil)
64
+ # @!method initialize(id:, created:, creator:, name:, state:, tags:, subscription_topic_id: nil, topic_id: nil, updated: nil, updater: nil)
65
+ # Some parameter documentations has been truncated, see
66
+ # {Courier::Models::NotificationTemplateSummary} for more details.
67
+ #
51
68
  # V2 (CDS) template summary returned in list responses.
52
69
  #
53
70
  # @param id [String]
@@ -62,6 +79,10 @@ module Courier
62
79
  #
63
80
  # @param tags [Array<String>]
64
81
  #
82
+ # @param subscription_topic_id [String] The linked subscription (preference) topic of the published version. Omitted whe
83
+ #
84
+ # @param topic_id [String] Alias of subscription_topic_id, provided under the same name V1 list items use f
85
+ #
65
86
  # @param updated [Integer] Epoch milliseconds of last update.
66
87
  #
67
88
  # @param updater [String] User ID of the last updater.
@@ -113,16 +113,6 @@ module Courier
113
113
 
114
114
  BrandUpdateParams = Courier::Models::BrandUpdateParams
115
115
 
116
- BulkAddUsersParams = Courier::Models::BulkAddUsersParams
117
-
118
- BulkCreateJobParams = Courier::Models::BulkCreateJobParams
119
-
120
- BulkListUsersParams = Courier::Models::BulkListUsersParams
121
-
122
- BulkRetrieveJobParams = Courier::Models::BulkRetrieveJobParams
123
-
124
- BulkRunJobParams = Courier::Models::BulkRunJobParams
125
-
126
116
  CancelJourneyRequest = Courier::Models::CancelJourneyRequest
127
117
 
128
118
  CancelJourneyResponse = Courier::Models::CancelJourneyResponse
@@ -193,10 +183,6 @@ module Courier
193
183
 
194
184
  Icons = Courier::Models::Icons
195
185
 
196
- InboundBulkMessage = Courier::Models::InboundBulkMessage
197
-
198
- InboundBulkMessageUser = Courier::Models::InboundBulkMessageUser
199
-
200
186
  InboundTrackEventParams = Courier::Models::InboundTrackEventParams
201
187
 
202
188
  Intercom = Courier::Models::Intercom
@@ -360,6 +346,8 @@ module Courier
360
346
 
361
347
  NotificationCreateParams = Courier::Models::NotificationCreateParams
362
348
 
349
+ NotificationDuplicateParams = Courier::Models::NotificationDuplicateParams
350
+
363
351
  NotificationElementPutRequest = Courier::Models::NotificationElementPutRequest
364
352
 
365
353
  NotificationGetContent = Courier::Models::NotificationGetContent
@@ -110,6 +110,31 @@ module Courier
110
110
  )
111
111
  end
112
112
 
113
+ # Duplicate a notification template. Creates a standalone copy within the same
114
+ # workspace and environment, with " COPY" appended to the title. The copy clones
115
+ # the source draft's tags, brand, subscription topic, routing strategy, channels,
116
+ # and content, and is always created as a standalone template (it is not linked to
117
+ # any journey or broadcast, even if the source was). Templates that are scoped to
118
+ # a journey or a broadcast cannot be duplicated through this endpoint.
119
+ #
120
+ # @overload duplicate(id, request_options: {})
121
+ #
122
+ # @param id [String] Template ID (nt\_ prefix).
123
+ #
124
+ # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
125
+ #
126
+ # @return [Courier::Models::NotificationTemplateResponse]
127
+ #
128
+ # @see Courier::Models::NotificationDuplicateParams
129
+ def duplicate(id, params = {})
130
+ @client.request(
131
+ method: :post,
132
+ path: ["notifications/%1$s/duplicate", id],
133
+ model: Courier::NotificationTemplateResponse,
134
+ options: params[:request_options]
135
+ )
136
+ end
137
+
113
138
  # List versions of a notification template.
114
139
  #
115
140
  # @overload list_versions(id, cursor: nil, limit: nil, request_options: {})
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Courier
4
- VERSION = "4.19.2"
4
+ VERSION = "4.21.0"
5
5
  end
data/lib/courier.rb CHANGED
@@ -54,7 +54,6 @@ require_relative "courier/internal/transport/pooled_net_requester"
54
54
  require_relative "courier/client"
55
55
  require_relative "courier/models/elemental_base_node"
56
56
  require_relative "courier/models/brand_template"
57
- require_relative "courier/models/inbound_bulk_message_user"
58
57
  require_relative "courier/models/base_check"
59
58
  require_relative "courier/models/subscription_topic_new"
60
59
  require_relative "courier/models/elemental_channel_node"
@@ -125,14 +124,6 @@ require_relative "courier/models/brand_settings_in_app"
125
124
  require_relative "courier/models/brand_snippet"
126
125
  require_relative "courier/models/brand_snippets"
127
126
  require_relative "courier/models/brand_update_params"
128
- require_relative "courier/models/bulk_add_users_params"
129
- require_relative "courier/models/bulk_create_job_params"
130
- require_relative "courier/models/bulk_create_job_response"
131
- require_relative "courier/models/bulk_list_users_params"
132
- require_relative "courier/models/bulk_list_users_response"
133
- require_relative "courier/models/bulk_retrieve_job_params"
134
- require_relative "courier/models/bulk_retrieve_job_response"
135
- require_relative "courier/models/bulk_run_job_params"
136
127
  require_relative "courier/models/cancel_journey_response"
137
128
  require_relative "courier/models/channel"
138
129
  require_relative "courier/models/channel_classification"
@@ -165,7 +156,6 @@ require_relative "courier/models/email_header"
165
156
  require_relative "courier/models/expo"
166
157
  require_relative "courier/models/filter_config"
167
158
  require_relative "courier/models/icons"
168
- require_relative "courier/models/inbound_bulk_message"
169
159
  require_relative "courier/models/inbound_track_event_params"
170
160
  require_relative "courier/models/inbound_track_event_response"
171
161
  require_relative "courier/models/intercom"
@@ -260,6 +250,7 @@ require_relative "courier/models/notification_archive_params"
260
250
  require_relative "courier/models/notification_content_get_response"
261
251
  require_relative "courier/models/notification_content_mutation_response"
262
252
  require_relative "courier/models/notification_create_params"
253
+ require_relative "courier/models/notification_duplicate_params"
263
254
  require_relative "courier/models/notification_get_content"
264
255
  require_relative "courier/models/notification_list_params"
265
256
  require_relative "courier/models/notification_list_response"
@@ -430,7 +421,6 @@ require_relative "courier/resources/auth"
430
421
  require_relative "courier/resources/automations"
431
422
  require_relative "courier/resources/automations/invoke"
432
423
  require_relative "courier/resources/brands"
433
- require_relative "courier/resources/bulk"
434
424
  require_relative "courier/resources/digests"
435
425
  require_relative "courier/resources/digests/schedules"
436
426
  require_relative "courier/resources/inbound"
@@ -37,9 +37,6 @@ module Courier
37
37
  sig { returns(Courier::Resources::Brands) }
38
38
  attr_reader :brands
39
39
 
40
- sig { returns(Courier::Resources::Bulk) }
41
- attr_reader :bulk
42
-
43
40
  sig { returns(Courier::Resources::Digests) }
44
41
  attr_reader :digests
45
42
 
@@ -2,30 +2,33 @@
2
2
 
3
3
  module Courier
4
4
  module Models
5
- class BulkRetrieveJobParams < Courier::Internal::Type::BaseModel
5
+ class NotificationDuplicateParams < Courier::Internal::Type::BaseModel
6
6
  extend Courier::Internal::Type::RequestParameters::Converter
7
7
  include Courier::Internal::Type::RequestParameters
8
8
 
9
9
  OrHash =
10
10
  T.type_alias do
11
- T.any(Courier::BulkRetrieveJobParams, Courier::Internal::AnyHash)
11
+ T.any(
12
+ Courier::NotificationDuplicateParams,
13
+ Courier::Internal::AnyHash
14
+ )
12
15
  end
13
16
 
14
17
  sig { returns(String) }
15
- attr_accessor :job_id
18
+ attr_accessor :id
16
19
 
17
20
  sig do
18
21
  params(
19
- job_id: String,
22
+ id: String,
20
23
  request_options: Courier::RequestOptions::OrHash
21
24
  ).returns(T.attached_class)
22
25
  end
23
- def self.new(job_id:, request_options: {})
26
+ def self.new(id:, request_options: {})
24
27
  end
25
28
 
26
29
  sig do
27
30
  override.returns(
28
- { job_id: String, request_options: Courier::RequestOptions }
31
+ { id: String, request_options: Courier::RequestOptions }
29
32
  )
30
33
  end
31
34
  def to_hash
@@ -31,6 +31,22 @@ module Courier
31
31
  sig { returns(T::Array[String]) }
32
32
  attr_accessor :tags
33
33
 
34
+ # The linked subscription (preference) topic of the published version. Omitted
35
+ # when no topic is linked or the template has never been published.
36
+ sig { returns(T.nilable(String)) }
37
+ attr_reader :subscription_topic_id
38
+
39
+ sig { params(subscription_topic_id: String).void }
40
+ attr_writer :subscription_topic_id
41
+
42
+ # Alias of subscription_topic_id, provided under the same name V1 list items use
43
+ # for the linked topic. Always carries the same value as subscription_topic_id.
44
+ sig { returns(T.nilable(String)) }
45
+ attr_reader :topic_id
46
+
47
+ sig { params(topic_id: String).void }
48
+ attr_writer :topic_id
49
+
34
50
  # Epoch milliseconds of last update.
35
51
  sig { returns(T.nilable(Integer)) }
36
52
  attr_reader :updated
@@ -54,6 +70,8 @@ module Courier
54
70
  name: String,
55
71
  state: Courier::NotificationTemplateSummary::State::OrSymbol,
56
72
  tags: T::Array[String],
73
+ subscription_topic_id: String,
74
+ topic_id: String,
57
75
  updated: Integer,
58
76
  updater: String
59
77
  ).returns(T.attached_class)
@@ -67,6 +85,12 @@ module Courier
67
85
  name:,
68
86
  state:,
69
87
  tags:,
88
+ # The linked subscription (preference) topic of the published version. Omitted
89
+ # when no topic is linked or the template has never been published.
90
+ subscription_topic_id: nil,
91
+ # Alias of subscription_topic_id, provided under the same name V1 list items use
92
+ # for the linked topic. Always carries the same value as subscription_topic_id.
93
+ topic_id: nil,
70
94
  # Epoch milliseconds of last update.
71
95
  updated: nil,
72
96
  # User ID of the last updater.
@@ -83,6 +107,8 @@ module Courier
83
107
  name: String,
84
108
  state: Courier::NotificationTemplateSummary::State::TaggedSymbol,
85
109
  tags: T::Array[String],
110
+ subscription_topic_id: String,
111
+ topic_id: String,
86
112
  updated: Integer,
87
113
  updater: String
88
114
  }
@@ -77,16 +77,6 @@ module Courier
77
77
 
78
78
  BrandUpdateParams = Courier::Models::BrandUpdateParams
79
79
 
80
- BulkAddUsersParams = Courier::Models::BulkAddUsersParams
81
-
82
- BulkCreateJobParams = Courier::Models::BulkCreateJobParams
83
-
84
- BulkListUsersParams = Courier::Models::BulkListUsersParams
85
-
86
- BulkRetrieveJobParams = Courier::Models::BulkRetrieveJobParams
87
-
88
- BulkRunJobParams = Courier::Models::BulkRunJobParams
89
-
90
80
  CancelJourneyRequest = Courier::Models::CancelJourneyRequest
91
81
 
92
82
  CancelJourneyResponse = Courier::Models::CancelJourneyResponse
@@ -157,10 +147,6 @@ module Courier
157
147
 
158
148
  Icons = Courier::Models::Icons
159
149
 
160
- InboundBulkMessage = Courier::Models::InboundBulkMessage
161
-
162
- InboundBulkMessageUser = Courier::Models::InboundBulkMessageUser
163
-
164
150
  InboundTrackEventParams = Courier::Models::InboundTrackEventParams
165
151
 
166
152
  Intercom = Courier::Models::Intercom
@@ -329,6 +315,8 @@ module Courier
329
315
 
330
316
  NotificationCreateParams = Courier::Models::NotificationCreateParams
331
317
 
318
+ NotificationDuplicateParams = Courier::Models::NotificationDuplicateParams
319
+
332
320
  NotificationElementPutRequest = Courier::Models::NotificationElementPutRequest
333
321
 
334
322
  NotificationGetContent = Courier::Models::NotificationGetContent
@@ -79,6 +79,25 @@ module Courier
79
79
  )
80
80
  end
81
81
 
82
+ # Duplicate a notification template. Creates a standalone copy within the same
83
+ # workspace and environment, with " COPY" appended to the title. The copy clones
84
+ # the source draft's tags, brand, subscription topic, routing strategy, channels,
85
+ # and content, and is always created as a standalone template (it is not linked to
86
+ # any journey or broadcast, even if the source was). Templates that are scoped to
87
+ # a journey or a broadcast cannot be duplicated through this endpoint.
88
+ sig do
89
+ params(
90
+ id: String,
91
+ request_options: Courier::RequestOptions::OrHash
92
+ ).returns(Courier::NotificationTemplateResponse)
93
+ end
94
+ def duplicate(
95
+ # Template ID (nt\_ prefix).
96
+ id,
97
+ request_options: {}
98
+ )
99
+ end
100
+
82
101
  # List versions of a notification template.
83
102
  sig do
84
103
  params(
@@ -26,8 +26,6 @@ module Courier
26
26
 
27
27
  attr_reader brands: Courier::Resources::Brands
28
28
 
29
- attr_reader bulk: Courier::Resources::Bulk
30
-
31
29
  attr_reader digests: Courier::Resources::Digests
32
30
 
33
31
  attr_reader inbound: Courier::Resources::Inbound
@@ -0,0 +1,20 @@
1
+ module Courier
2
+ module Models
3
+ type notification_duplicate_params =
4
+ { id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class NotificationDuplicateParams < 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
@@ -8,6 +8,8 @@ module Courier
8
8
  name: String,
9
9
  state: Courier::Models::NotificationTemplateSummary::state,
10
10
  tags: ::Array[String],
11
+ subscription_topic_id: String,
12
+ topic_id: String,
11
13
  updated: Integer,
12
14
  updater: String
13
15
  }
@@ -25,6 +27,14 @@ module Courier
25
27
 
26
28
  attr_accessor tags: ::Array[String]
27
29
 
30
+ attr_reader subscription_topic_id: String?
31
+
32
+ def subscription_topic_id=: (String) -> String
33
+
34
+ attr_reader topic_id: String?
35
+
36
+ def topic_id=: (String) -> String
37
+
28
38
  attr_reader updated: Integer?
29
39
 
30
40
  def updated=: (Integer) -> Integer
@@ -40,6 +50,8 @@ module Courier
40
50
  name: String,
41
51
  state: Courier::Models::NotificationTemplateSummary::state,
42
52
  tags: ::Array[String],
53
+ ?subscription_topic_id: String,
54
+ ?topic_id: String,
43
55
  ?updated: Integer,
44
56
  ?updater: String
45
57
  ) -> void
@@ -51,6 +63,8 @@ module Courier
51
63
  name: String,
52
64
  state: Courier::Models::NotificationTemplateSummary::state,
53
65
  tags: ::Array[String],
66
+ subscription_topic_id: String,
67
+ topic_id: String,
54
68
  updated: Integer,
55
69
  updater: String
56
70
  }
@@ -73,16 +73,6 @@ module Courier
73
73
 
74
74
  class BrandUpdateParams = Courier::Models::BrandUpdateParams
75
75
 
76
- class BulkAddUsersParams = Courier::Models::BulkAddUsersParams
77
-
78
- class BulkCreateJobParams = Courier::Models::BulkCreateJobParams
79
-
80
- class BulkListUsersParams = Courier::Models::BulkListUsersParams
81
-
82
- class BulkRetrieveJobParams = Courier::Models::BulkRetrieveJobParams
83
-
84
- class BulkRunJobParams = Courier::Models::BulkRunJobParams
85
-
86
76
  module CancelJourneyRequest = Courier::Models::CancelJourneyRequest
87
77
 
88
78
  module CancelJourneyResponse = Courier::Models::CancelJourneyResponse
@@ -153,10 +143,6 @@ module Courier
153
143
 
154
144
  class Icons = Courier::Models::Icons
155
145
 
156
- class InboundBulkMessage = Courier::Models::InboundBulkMessage
157
-
158
- class InboundBulkMessageUser = Courier::Models::InboundBulkMessageUser
159
-
160
146
  class InboundTrackEventParams = Courier::Models::InboundTrackEventParams
161
147
 
162
148
  class Intercom = Courier::Models::Intercom
@@ -317,6 +303,8 @@ module Courier
317
303
 
318
304
  class NotificationCreateParams = Courier::Models::NotificationCreateParams
319
305
 
306
+ class NotificationDuplicateParams = Courier::Models::NotificationDuplicateParams
307
+
320
308
  class NotificationElementPutRequest = Courier::Models::NotificationElementPutRequest
321
309
 
322
310
  class NotificationGetContent = Courier::Models::NotificationGetContent
@@ -24,6 +24,11 @@ module Courier
24
24
 
25
25
  def archive: (String id, ?request_options: Courier::request_opts) -> nil
26
26
 
27
+ def duplicate: (
28
+ String id,
29
+ ?request_options: Courier::request_opts
30
+ ) -> Courier::NotificationTemplateResponse
31
+
27
32
  def list_versions: (
28
33
  String id,
29
34
  ?cursor: String,