trycourier 4.10.0 → 4.10.1

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: d71ef55224ae3a498561c16171a3a2f4d7043cdd17d9c505ef34e70179a6c35b
4
- data.tar.gz: da26b63925075f65d3d953a4a810ea535431e65274528b902000121d928c7fcb
3
+ metadata.gz: 0f858f38c4f9b150bb7ae15d41485742e215ee802b55ebf66eaa03f2fbd1ac02
4
+ data.tar.gz: 42e013bd3562dfcce1b12bd980c02f481cd7f8c5290d364e16a3a395d957569b
5
5
  SHA512:
6
- metadata.gz: 237604be72c50aa572c525addf58d4e3f723142ffbd5863c9dfb301882bf9efa4c77e4eae7a143cafc3ed1981fb0602be0bb7a1046d4be8e5587c2c15988fd52
7
- data.tar.gz: cfdb4b9bcf90da1d34e9aabbe994404f49e6df75d4d56368509034b60ceb55eb0461d492cbaf2d2cb7a4b92e17f54a6050f7b605a0f2c00a8b9788c6142255d1
6
+ metadata.gz: 91849f5ef3635836ff2976f9bbcad8f337464d89aea6728e377a3c39b45db79116cb2bf13b0946f3d1ed98fa8f584b8e8a38fa0cd52b6cc186563e203c2ad583
7
+ data.tar.gz: 4dcd5c0b990e1e4e121078106637462a3894d5d8b5350bf1074e1101f695d7782e63691144d1255e680b4feeb1c15c91e3ac04bf9eb499593e4914828ce9e088
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.10.1 (2026-04-13)
4
+
5
+ Full Changelog: [v4.10.0...v4.10.1](https://github.com/trycourier/courier-ruby/compare/v4.10.0...v4.10.1)
6
+
7
+ ### Bug Fixes
8
+
9
+ * multipart encoding for file arrays ([6f54534](https://github.com/trycourier/courier-ruby/commit/6f545347ec738929c45b89476d4fc02aa185760b))
10
+ * **types:** correct notifications/routing_strategies return types, remove mutation models ([8020a8f](https://github.com/trycourier/courier-ruby/commit/8020a8fa2015d5f5b4c4703a4354acd3283193bc))
11
+
3
12
  ## 4.10.0 (2026-04-08)
4
13
 
5
14
  Full Changelog: [v4.9.0...v4.10.0](https://github.com/trycourier/courier-ruby/compare/v4.9.0...v4.10.0)
@@ -610,6 +610,7 @@ module Courier
610
610
  #
611
611
  # @return [Array(String, Enumerable<String>)]
612
612
  private def encode_multipart_streaming(body)
613
+ # rubocop:disable Style/CaseEquality
613
614
  # RFC 1521 Section 7.2.1 says we should have 70 char maximum for boundary length
614
615
  boundary = SecureRandom.urlsafe_base64(46)
615
616
 
@@ -619,7 +620,7 @@ module Courier
619
620
  in Hash
620
621
  body.each do |key, val|
621
622
  case val
622
- in Array if val.all? { primitive?(_1) }
623
+ in Array if val.all? { primitive?(_1) || Courier::Internal::Type::FileInput === _1 }
623
624
  val.each do |v|
624
625
  write_multipart_chunk(y, boundary: boundary, key: key, val: v, closing: closing)
625
626
  end
@@ -635,6 +636,7 @@ module Courier
635
636
 
636
637
  fused_io = fused_enum(strio) { closing.each(&:call) }
637
638
  [boundary, fused_io]
639
+ # rubocop:enable Style/CaseEquality
638
640
  end
639
641
 
640
642
  # @api private
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Courier
4
4
  module Models
5
- # @see Courier::Resources::Notifications#retrieve
5
+ # @see Courier::Resources::Notifications#create
6
6
  class NotificationTemplateGetResponse < Courier::Internal::Type::BaseModel
7
7
  # @!attribute created
8
8
  # Epoch milliseconds when the template was created.
@@ -13,7 +13,8 @@ module Courier
13
13
  required :id, String
14
14
 
15
15
  # @!attribute provider
16
- # The provider key identifying the type.
16
+ # The provider key identifying the type. Required on every request because it
17
+ # selects the provider-specific settings schema for validation.
17
18
  #
18
19
  # @return [String]
19
20
  required :provider, String
@@ -44,7 +45,7 @@ module Courier
44
45
  #
45
46
  # @param id [String]
46
47
  #
47
- # @param provider [String] The provider key identifying the type.
48
+ # @param provider [String] The provider key identifying the type. Required on every request because it sele
48
49
  #
49
50
  # @param alias_ [String] Updated alias. Omit to clear.
50
51
  #
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Courier
4
4
  module Models
5
- # @see Courier::Resources::RoutingStrategies#retrieve
5
+ # @see Courier::Resources::RoutingStrategies#create
6
6
  class RoutingStrategyGetResponse < Courier::Internal::Type::BaseModel
7
7
  # @!attribute id
8
8
  # The routing strategy ID (rs\_ prefix).
@@ -299,8 +299,6 @@ module Courier
299
299
 
300
300
  NotificationTemplateGetResponse = Courier::Models::NotificationTemplateGetResponse
301
301
 
302
- NotificationTemplateMutationResponse = Courier::Models::NotificationTemplateMutationResponse
303
-
304
302
  NotificationTemplatePayload = Courier::Models::NotificationTemplatePayload
305
303
 
306
304
  NotificationTemplatePublishRequest = Courier::Models::NotificationTemplatePublishRequest
@@ -379,8 +377,6 @@ module Courier
379
377
 
380
378
  RoutingStrategyListResponse = Courier::Models::RoutingStrategyListResponse
381
379
 
382
- RoutingStrategyMutationResponse = Courier::Models::RoutingStrategyMutationResponse
383
-
384
380
  RoutingStrategyReplaceParams = Courier::Models::RoutingStrategyReplaceParams
385
381
 
386
382
  RoutingStrategyReplaceRequest = Courier::Models::RoutingStrategyReplaceRequest
@@ -20,7 +20,7 @@ module Courier
20
20
  #
21
21
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
22
22
  #
23
- # @return [Courier::Models::NotificationTemplateMutationResponse]
23
+ # @return [Courier::Models::NotificationTemplateGetResponse]
24
24
  #
25
25
  # @see Courier::Models::NotificationCreateParams
26
26
  def create(params)
@@ -29,7 +29,7 @@ module Courier
29
29
  method: :post,
30
30
  path: "notifications",
31
31
  body: parsed,
32
- model: Courier::NotificationTemplateMutationResponse,
32
+ model: Courier::NotificationTemplateGetResponse,
33
33
  options: options
34
34
  )
35
35
  end
@@ -282,7 +282,7 @@ module Courier
282
282
  #
283
283
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
284
284
  #
285
- # @return [Courier::Models::NotificationTemplateMutationResponse]
285
+ # @return [Courier::Models::NotificationTemplateGetResponse]
286
286
  #
287
287
  # @see Courier::Models::NotificationReplaceParams
288
288
  def replace(id, params)
@@ -291,7 +291,7 @@ module Courier
291
291
  method: :put,
292
292
  path: ["notifications/%1$s", id],
293
293
  body: parsed,
294
- model: Courier::NotificationTemplateMutationResponse,
294
+ model: Courier::NotificationTemplateGetResponse,
295
295
  options: options
296
296
  )
297
297
  end
@@ -61,15 +61,17 @@ module Courier
61
61
  # Some parameter documentations has been truncated, see
62
62
  # {Courier::Models::ProviderUpdateParams} for more details.
63
63
  #
64
- # Update an existing provider configuration. The `provider` key is required. All
65
- # other fields are optional omitted fields are cleared from the stored
66
- # configuration (this is a full replacement, not a partial merge).
64
+ # Replace an existing provider configuration. The `provider` key is required and
65
+ # determines which provider-specific settings schema is applied. All other fields
66
+ # are optional omitted fields are cleared from the stored configuration (this is
67
+ # a full replacement, not a partial merge). Changing the provider type for an
68
+ # existing configuration is not supported.
67
69
  #
68
70
  # @overload update(id, provider:, alias_: nil, settings: nil, title: nil, request_options: {})
69
71
  #
70
72
  # @param id [String] A unique identifier of the provider configuration to update.
71
73
  #
72
- # @param provider [String] The provider key identifying the type.
74
+ # @param provider [String] The provider key identifying the type. Required on every request because it sele
73
75
  #
74
76
  # @param alias_ [String] Updated alias. Omit to clear.
75
77
  #
@@ -85,7 +87,7 @@ module Courier
85
87
  def update(id, params)
86
88
  parsed, options = Courier::ProviderUpdateParams.dump_request(params)
87
89
  @client.request(
88
- method: :post,
90
+ method: :put,
89
91
  path: ["providers/%1$s", id],
90
92
  body: parsed,
91
93
  model: Courier::Provider,
@@ -22,7 +22,7 @@ module Courier
22
22
  #
23
23
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
24
24
  #
25
- # @return [Courier::Models::RoutingStrategyMutationResponse]
25
+ # @return [Courier::Models::RoutingStrategyGetResponse]
26
26
  #
27
27
  # @see Courier::Models::RoutingStrategyCreateParams
28
28
  def create(params)
@@ -31,7 +31,7 @@ module Courier
31
31
  method: :post,
32
32
  path: "routing-strategies",
33
33
  body: parsed,
34
- model: Courier::RoutingStrategyMutationResponse,
34
+ model: Courier::RoutingStrategyGetResponse,
35
35
  options: options
36
36
  )
37
37
  end
@@ -154,7 +154,7 @@ module Courier
154
154
  #
155
155
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
156
156
  #
157
- # @return [Courier::Models::RoutingStrategyMutationResponse]
157
+ # @return [Courier::Models::RoutingStrategyGetResponse]
158
158
  #
159
159
  # @see Courier::Models::RoutingStrategyReplaceParams
160
160
  def replace(id, params)
@@ -163,7 +163,7 @@ module Courier
163
163
  method: :put,
164
164
  path: ["routing-strategies/%1$s", id],
165
165
  body: parsed,
166
- model: Courier::RoutingStrategyMutationResponse,
166
+ model: Courier::RoutingStrategyGetResponse,
167
167
  options: options
168
168
  )
169
169
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Courier
4
- VERSION = "4.10.0"
4
+ VERSION = "4.10.1"
5
5
  end
data/lib/courier.rb CHANGED
@@ -217,7 +217,6 @@ require_relative "courier/models/notifications/check_list_response"
217
217
  require_relative "courier/models/notifications/check_update_params"
218
218
  require_relative "courier/models/notifications/check_update_response"
219
219
  require_relative "courier/models/notification_template_get_response"
220
- require_relative "courier/models/notification_template_mutation_response"
221
220
  require_relative "courier/models/notification_template_state"
222
221
  require_relative "courier/models/notification_template_summary"
223
222
  require_relative "courier/models/notification_template_version_list_response"
@@ -261,7 +260,6 @@ require_relative "courier/models/routing_strategy_get_response"
261
260
  require_relative "courier/models/routing_strategy_list_notifications_params"
262
261
  require_relative "courier/models/routing_strategy_list_params"
263
262
  require_relative "courier/models/routing_strategy_list_response"
264
- require_relative "courier/models/routing_strategy_mutation_response"
265
263
  require_relative "courier/models/routing_strategy_replace_params"
266
264
  require_relative "courier/models/routing_strategy_retrieve_params"
267
265
  require_relative "courier/models/routing_strategy_summary"
@@ -14,7 +14,8 @@ module Courier
14
14
  sig { returns(String) }
15
15
  attr_accessor :id
16
16
 
17
- # The provider key identifying the type.
17
+ # The provider key identifying the type. Required on every request because it
18
+ # selects the provider-specific settings schema for validation.
18
19
  sig { returns(String) }
19
20
  attr_accessor :provider
20
21
 
@@ -53,7 +54,8 @@ module Courier
53
54
  end
54
55
  def self.new(
55
56
  id:,
56
- # The provider key identifying the type.
57
+ # The provider key identifying the type. Required on every request because it
58
+ # selects the provider-specific settings schema for validation.
57
59
  provider:,
58
60
  # Updated alias. Omit to clear.
59
61
  alias_: nil,
@@ -269,9 +269,6 @@ module Courier
269
269
  NotificationTemplateGetResponse =
270
270
  Courier::Models::NotificationTemplateGetResponse
271
271
 
272
- NotificationTemplateMutationResponse =
273
- Courier::Models::NotificationTemplateMutationResponse
274
-
275
272
  NotificationTemplatePayload = Courier::Models::NotificationTemplatePayload
276
273
 
277
274
  NotificationTemplatePublishRequest =
@@ -356,9 +353,6 @@ module Courier
356
353
 
357
354
  RoutingStrategyListResponse = Courier::Models::RoutingStrategyListResponse
358
355
 
359
- RoutingStrategyMutationResponse =
360
- Courier::Models::RoutingStrategyMutationResponse
361
-
362
356
  RoutingStrategyReplaceParams = Courier::Models::RoutingStrategyReplaceParams
363
357
 
364
358
  RoutingStrategyReplaceRequest = Courier::Models::RoutingStrategyReplaceRequest
@@ -13,7 +13,7 @@ module Courier
13
13
  notification: Courier::NotificationTemplatePayload::OrHash,
14
14
  state: Courier::NotificationTemplateCreateRequest::State::OrSymbol,
15
15
  request_options: Courier::RequestOptions::OrHash
16
- ).returns(Courier::NotificationTemplateMutationResponse)
16
+ ).returns(Courier::NotificationTemplateGetResponse)
17
17
  end
18
18
  def create(
19
19
  # Full document shape used in POST and PUT request bodies, and returned inside the
@@ -211,7 +211,7 @@ module Courier
211
211
  notification: Courier::NotificationTemplatePayload::OrHash,
212
212
  state: Courier::NotificationTemplateUpdateRequest::State::OrSymbol,
213
213
  request_options: Courier::RequestOptions::OrHash
214
- ).returns(Courier::NotificationTemplateMutationResponse)
214
+ ).returns(Courier::NotificationTemplateGetResponse)
215
215
  end
216
216
  def replace(
217
217
  # Template ID (nt\_ prefix).
@@ -47,9 +47,11 @@ module Courier
47
47
  )
48
48
  end
49
49
 
50
- # Update an existing provider configuration. The `provider` key is required. All
51
- # other fields are optional omitted fields are cleared from the stored
52
- # configuration (this is a full replacement, not a partial merge).
50
+ # Replace an existing provider configuration. The `provider` key is required and
51
+ # determines which provider-specific settings schema is applied. All other fields
52
+ # are optional omitted fields are cleared from the stored configuration (this is
53
+ # a full replacement, not a partial merge). Changing the provider type for an
54
+ # existing configuration is not supported.
53
55
  sig do
54
56
  params(
55
57
  id: String,
@@ -63,7 +65,8 @@ module Courier
63
65
  def update(
64
66
  # A unique identifier of the provider configuration to update.
65
67
  id,
66
- # The provider key identifying the type.
68
+ # The provider key identifying the type. Required on every request because it
69
+ # selects the provider-specific settings schema for validation.
67
70
  provider:,
68
71
  # Updated alias. Omit to clear.
69
72
  alias_: nil,
@@ -15,7 +15,7 @@ module Courier
15
15
  T.nilable(T::Hash[Symbol, Courier::MessageProvidersType::OrHash]),
16
16
  tags: T.nilable(T::Array[String]),
17
17
  request_options: Courier::RequestOptions::OrHash
18
- ).returns(Courier::RoutingStrategyMutationResponse)
18
+ ).returns(Courier::RoutingStrategyGetResponse)
19
19
  end
20
20
  def create(
21
21
  # Human-readable name for the routing strategy.
@@ -117,7 +117,7 @@ module Courier
117
117
  T.nilable(T::Hash[Symbol, Courier::MessageProvidersType::OrHash]),
118
118
  tags: T.nilable(T::Array[String]),
119
119
  request_options: Courier::RequestOptions::OrHash
120
- ).returns(Courier::RoutingStrategyMutationResponse)
120
+ ).returns(Courier::RoutingStrategyGetResponse)
121
121
  end
122
122
  def replace(
123
123
  # Routing strategy ID (rs\_ prefix).
@@ -257,8 +257,6 @@ module Courier
257
257
 
258
258
  class NotificationTemplateGetResponse = Courier::Models::NotificationTemplateGetResponse
259
259
 
260
- class NotificationTemplateMutationResponse = Courier::Models::NotificationTemplateMutationResponse
261
-
262
260
  class NotificationTemplatePayload = Courier::Models::NotificationTemplatePayload
263
261
 
264
262
  class NotificationTemplatePublishRequest = Courier::Models::NotificationTemplatePublishRequest
@@ -337,8 +335,6 @@ module Courier
337
335
 
338
336
  class RoutingStrategyListResponse = Courier::Models::RoutingStrategyListResponse
339
337
 
340
- class RoutingStrategyMutationResponse = Courier::Models::RoutingStrategyMutationResponse
341
-
342
338
  class RoutingStrategyReplaceParams = Courier::Models::RoutingStrategyReplaceParams
343
339
 
344
340
  class RoutingStrategyReplaceRequest = Courier::Models::RoutingStrategyReplaceRequest
@@ -7,7 +7,7 @@ module Courier
7
7
  notification: Courier::NotificationTemplatePayload,
8
8
  ?state: Courier::Models::NotificationTemplateCreateRequest::state,
9
9
  ?request_options: Courier::request_opts
10
- ) -> Courier::NotificationTemplateMutationResponse
10
+ ) -> Courier::NotificationTemplateGetResponse
11
11
 
12
12
  def retrieve: (
13
13
  String id,
@@ -70,7 +70,7 @@ module Courier
70
70
  notification: Courier::NotificationTemplatePayload,
71
71
  ?state: Courier::Models::NotificationTemplateUpdateRequest::state,
72
72
  ?request_options: Courier::request_opts
73
- ) -> Courier::NotificationTemplateMutationResponse
73
+ ) -> Courier::NotificationTemplateGetResponse
74
74
 
75
75
  def retrieve_content: (
76
76
  String id,
@@ -9,7 +9,7 @@ module Courier
9
9
  ?providers: Courier::Models::message_providers?,
10
10
  ?tags: ::Array[String]?,
11
11
  ?request_options: Courier::request_opts
12
- ) -> Courier::RoutingStrategyMutationResponse
12
+ ) -> Courier::RoutingStrategyGetResponse
13
13
 
14
14
  def retrieve: (
15
15
  String id,
@@ -40,7 +40,7 @@ module Courier
40
40
  ?providers: Courier::Models::message_providers?,
41
41
  ?tags: ::Array[String]?,
42
42
  ?request_options: Courier::request_opts
43
- ) -> Courier::RoutingStrategyMutationResponse
43
+ ) -> Courier::RoutingStrategyGetResponse
44
44
 
45
45
  def initialize: (client: Courier::Client) -> void
46
46
  end
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.10.0
4
+ version: 4.10.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Courier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-08 00:00:00.000000000 Z
11
+ date: 2026-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi
@@ -220,7 +220,6 @@ files:
220
220
  - lib/courier/models/notification_retrieve_params.rb
221
221
  - lib/courier/models/notification_template_create_request.rb
222
222
  - lib/courier/models/notification_template_get_response.rb
223
- - lib/courier/models/notification_template_mutation_response.rb
224
223
  - lib/courier/models/notification_template_payload.rb
225
224
  - lib/courier/models/notification_template_publish_request.rb
226
225
  - lib/courier/models/notification_template_state.rb
@@ -275,7 +274,6 @@ files:
275
274
  - lib/courier/models/routing_strategy_list_notifications_params.rb
276
275
  - lib/courier/models/routing_strategy_list_params.rb
277
276
  - lib/courier/models/routing_strategy_list_response.rb
278
- - lib/courier/models/routing_strategy_mutation_response.rb
279
277
  - lib/courier/models/routing_strategy_replace_params.rb
280
278
  - lib/courier/models/routing_strategy_replace_request.rb
281
279
  - lib/courier/models/routing_strategy_retrieve_params.rb
@@ -561,7 +559,6 @@ files:
561
559
  - rbi/courier/models/notification_retrieve_params.rbi
562
560
  - rbi/courier/models/notification_template_create_request.rbi
563
561
  - rbi/courier/models/notification_template_get_response.rbi
564
- - rbi/courier/models/notification_template_mutation_response.rbi
565
562
  - rbi/courier/models/notification_template_payload.rbi
566
563
  - rbi/courier/models/notification_template_publish_request.rbi
567
564
  - rbi/courier/models/notification_template_state.rbi
@@ -616,7 +613,6 @@ files:
616
613
  - rbi/courier/models/routing_strategy_list_notifications_params.rbi
617
614
  - rbi/courier/models/routing_strategy_list_params.rbi
618
615
  - rbi/courier/models/routing_strategy_list_response.rbi
619
- - rbi/courier/models/routing_strategy_mutation_response.rbi
620
616
  - rbi/courier/models/routing_strategy_replace_params.rbi
621
617
  - rbi/courier/models/routing_strategy_replace_request.rbi
622
618
  - rbi/courier/models/routing_strategy_retrieve_params.rbi
@@ -901,7 +897,6 @@ files:
901
897
  - sig/courier/models/notification_retrieve_params.rbs
902
898
  - sig/courier/models/notification_template_create_request.rbs
903
899
  - sig/courier/models/notification_template_get_response.rbs
904
- - sig/courier/models/notification_template_mutation_response.rbs
905
900
  - sig/courier/models/notification_template_payload.rbs
906
901
  - sig/courier/models/notification_template_publish_request.rbs
907
902
  - sig/courier/models/notification_template_state.rbs
@@ -956,7 +951,6 @@ files:
956
951
  - sig/courier/models/routing_strategy_list_notifications_params.rbs
957
952
  - sig/courier/models/routing_strategy_list_params.rbs
958
953
  - sig/courier/models/routing_strategy_list_response.rbs
959
- - sig/courier/models/routing_strategy_mutation_response.rbs
960
954
  - sig/courier/models/routing_strategy_replace_params.rbs
961
955
  - sig/courier/models/routing_strategy_replace_request.rbs
962
956
  - sig/courier/models/routing_strategy_retrieve_params.rbs
@@ -1,51 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Courier
4
- module Models
5
- # @see Courier::Resources::Notifications#create
6
- class NotificationTemplateMutationResponse < Courier::Internal::Type::BaseModel
7
- # @!attribute notification
8
- #
9
- # @return [Courier::Models::NotificationTemplateMutationResponse::Notification]
10
- required :notification, -> { Courier::NotificationTemplateMutationResponse::Notification }
11
-
12
- # @!attribute state
13
- # The template state after the operation. Always uppercase.
14
- #
15
- # @return [Symbol, Courier::Models::NotificationTemplateMutationResponse::State]
16
- required :state, enum: -> { Courier::NotificationTemplateMutationResponse::State }
17
-
18
- # @!method initialize(notification:, state:)
19
- # Response returned by POST and PUT operations.
20
- #
21
- # @param notification [Courier::Models::NotificationTemplateMutationResponse::Notification]
22
- #
23
- # @param state [Symbol, Courier::Models::NotificationTemplateMutationResponse::State] The template state after the operation. Always uppercase.
24
-
25
- # @see Courier::Models::NotificationTemplateMutationResponse#notification
26
- class Notification < Courier::Internal::Type::BaseModel
27
- # @!attribute id
28
- # The ID of the created or updated template.
29
- #
30
- # @return [String]
31
- required :id, String
32
-
33
- # @!method initialize(id:)
34
- # @param id [String] The ID of the created or updated template.
35
- end
36
-
37
- # The template state after the operation. Always uppercase.
38
- #
39
- # @see Courier::Models::NotificationTemplateMutationResponse#state
40
- module State
41
- extend Courier::Internal::Type::Enum
42
-
43
- DRAFT = :DRAFT
44
- PUBLISHED = :PUBLISHED
45
-
46
- # @!method self.values
47
- # @return [Array<Symbol>]
48
- end
49
- end
50
- end
51
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Courier
4
- module Models
5
- # @see Courier::Resources::RoutingStrategies#create
6
- class RoutingStrategyMutationResponse < Courier::Internal::Type::BaseModel
7
- # @!attribute id
8
- # The routing strategy ID (rs\_ prefix).
9
- #
10
- # @return [String]
11
- required :id, String
12
-
13
- # @!method initialize(id:)
14
- # Response returned by create and replace operations.
15
- #
16
- # @param id [String] The routing strategy ID (rs\_ prefix).
17
- end
18
- end
19
- end
@@ -1,121 +0,0 @@
1
- # typed: strong
2
-
3
- module Courier
4
- module Models
5
- class NotificationTemplateMutationResponse < Courier::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Courier::NotificationTemplateMutationResponse,
10
- Courier::Internal::AnyHash
11
- )
12
- end
13
-
14
- sig do
15
- returns(Courier::NotificationTemplateMutationResponse::Notification)
16
- end
17
- attr_reader :notification
18
-
19
- sig do
20
- params(
21
- notification:
22
- Courier::NotificationTemplateMutationResponse::Notification::OrHash
23
- ).void
24
- end
25
- attr_writer :notification
26
-
27
- # The template state after the operation. Always uppercase.
28
- sig do
29
- returns(
30
- Courier::NotificationTemplateMutationResponse::State::TaggedSymbol
31
- )
32
- end
33
- attr_accessor :state
34
-
35
- # Response returned by POST and PUT operations.
36
- sig do
37
- params(
38
- notification:
39
- Courier::NotificationTemplateMutationResponse::Notification::OrHash,
40
- state: Courier::NotificationTemplateMutationResponse::State::OrSymbol
41
- ).returns(T.attached_class)
42
- end
43
- def self.new(
44
- notification:,
45
- # The template state after the operation. Always uppercase.
46
- state:
47
- )
48
- end
49
-
50
- sig do
51
- override.returns(
52
- {
53
- notification:
54
- Courier::NotificationTemplateMutationResponse::Notification,
55
- state:
56
- Courier::NotificationTemplateMutationResponse::State::TaggedSymbol
57
- }
58
- )
59
- end
60
- def to_hash
61
- end
62
-
63
- class Notification < Courier::Internal::Type::BaseModel
64
- OrHash =
65
- T.type_alias do
66
- T.any(
67
- Courier::NotificationTemplateMutationResponse::Notification,
68
- Courier::Internal::AnyHash
69
- )
70
- end
71
-
72
- # The ID of the created or updated template.
73
- sig { returns(String) }
74
- attr_accessor :id
75
-
76
- sig { params(id: String).returns(T.attached_class) }
77
- def self.new(
78
- # The ID of the created or updated template.
79
- id:
80
- )
81
- end
82
-
83
- sig { override.returns({ id: String }) }
84
- def to_hash
85
- end
86
- end
87
-
88
- # The template state after the operation. Always uppercase.
89
- module State
90
- extend Courier::Internal::Type::Enum
91
-
92
- TaggedSymbol =
93
- T.type_alias do
94
- T.all(Symbol, Courier::NotificationTemplateMutationResponse::State)
95
- end
96
- OrSymbol = T.type_alias { T.any(Symbol, String) }
97
-
98
- DRAFT =
99
- T.let(
100
- :DRAFT,
101
- Courier::NotificationTemplateMutationResponse::State::TaggedSymbol
102
- )
103
- PUBLISHED =
104
- T.let(
105
- :PUBLISHED,
106
- Courier::NotificationTemplateMutationResponse::State::TaggedSymbol
107
- )
108
-
109
- sig do
110
- override.returns(
111
- T::Array[
112
- Courier::NotificationTemplateMutationResponse::State::TaggedSymbol
113
- ]
114
- )
115
- end
116
- def self.values
117
- end
118
- end
119
- end
120
- end
121
- end
@@ -1,31 +0,0 @@
1
- # typed: strong
2
-
3
- module Courier
4
- module Models
5
- class RoutingStrategyMutationResponse < Courier::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Courier::RoutingStrategyMutationResponse,
10
- Courier::Internal::AnyHash
11
- )
12
- end
13
-
14
- # The routing strategy ID (rs\_ prefix).
15
- sig { returns(String) }
16
- attr_accessor :id
17
-
18
- # Response returned by create and replace operations.
19
- sig { params(id: String).returns(T.attached_class) }
20
- def self.new(
21
- # The routing strategy ID (rs\_ prefix).
22
- id:
23
- )
24
- end
25
-
26
- sig { override.returns({ id: String }) }
27
- def to_hash
28
- end
29
- end
30
- end
31
- end
@@ -1,46 +0,0 @@
1
- module Courier
2
- module Models
3
- type notification_template_mutation_response =
4
- {
5
- notification: Courier::NotificationTemplateMutationResponse::Notification,
6
- state: Courier::Models::NotificationTemplateMutationResponse::state
7
- }
8
-
9
- class NotificationTemplateMutationResponse < Courier::Internal::Type::BaseModel
10
- attr_accessor notification: Courier::NotificationTemplateMutationResponse::Notification
11
-
12
- attr_accessor state: Courier::Models::NotificationTemplateMutationResponse::state
13
-
14
- def initialize: (
15
- notification: Courier::NotificationTemplateMutationResponse::Notification,
16
- state: Courier::Models::NotificationTemplateMutationResponse::state
17
- ) -> void
18
-
19
- def to_hash: -> {
20
- notification: Courier::NotificationTemplateMutationResponse::Notification,
21
- state: Courier::Models::NotificationTemplateMutationResponse::state
22
- }
23
-
24
- type notification = { id: String }
25
-
26
- class Notification < Courier::Internal::Type::BaseModel
27
- attr_accessor id: String
28
-
29
- def initialize: (id: String) -> void
30
-
31
- def to_hash: -> { id: String }
32
- end
33
-
34
- type state = :DRAFT | :PUBLISHED
35
-
36
- module State
37
- extend Courier::Internal::Type::Enum
38
-
39
- DRAFT: :DRAFT
40
- PUBLISHED: :PUBLISHED
41
-
42
- def self?.values: -> ::Array[Courier::Models::NotificationTemplateMutationResponse::state]
43
- end
44
- end
45
- end
46
- end
@@ -1,13 +0,0 @@
1
- module Courier
2
- module Models
3
- type routing_strategy_mutation_response = { id: String }
4
-
5
- class RoutingStrategyMutationResponse < Courier::Internal::Type::BaseModel
6
- attr_accessor id: String
7
-
8
- def initialize: (id: String) -> void
9
-
10
- def to_hash: -> { id: String }
11
- end
12
- end
13
- end