trycourier 4.26.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dae9e29710e0f5f51b49e7f54a4dea8ca81242d1e60b5c22c1e6fbebb40f7764
4
- data.tar.gz: 6495ca2eb5e082913bb43f3f6d1e1b933f5b4be59de9b3d33f9c3b276027948a
3
+ metadata.gz: 69e1448e2d9e9f4b3e873bd482815aa3b9fad29ecb111705b64771c6b2e7b431
4
+ data.tar.gz: af2e780f1a0a216e736c414e7e9753c69ad6625a45c80e2b84eae72bf611a8e3
5
5
  SHA512:
6
- metadata.gz: 6f700ac897dd06c5fea58697d83f3380a2b9da7228e5da085433df3eaa3e26434c6f634e2392d67e8582aa74854a6f9c1b3a6800095f3656e259bf8738bef21c
7
- data.tar.gz: 8a2cac3bce7dc295374474a83aaf488496e8f347b4d4f0c72a9f524e4746dfa84c6c2ab6f053fbf4efac5733625d789eebe6493e7517d5ae7121d5ebe4dda8ab
6
+ metadata.gz: 32f36d5e0b55ac49d6279347e6c762f350d814531833a5f57ff0517cbf363e2f07656154eb4bcbb3a73244045d27f5feebd98f2a8244fc1e7cc43249ca04ef76
7
+ data.tar.gz: 976626752ed191ad270a800c71e7123f5a6d3ca6337097713aca3b32d6ec413304c86a6ab2b251cd4a0fe2177e1c270d3067bab8637eaf1cf4bd117906c9eca8
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## [5.0.0](https://github.com/trycourier/courier-ruby/compare/v4.26.2...v5.0.0) (2026-08-17)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * **api:** nest the AWS SNS target_arn under aws_sns on the user profile ([#123](https://github.com/trycourier/courier-ruby/issues/123))
9
+
10
+ ### Features
11
+
12
+ * **api:** nest the AWS SNS target_arn under aws_sns on the user profile ([#123](https://github.com/trycourier/courier-ruby/issues/123)) ([fcf37c6](https://github.com/trycourier/courier-ruby/commit/fcf37c690e11ccffc8283bbd5791864b405ca20c))
13
+
14
+ ## [4.26.2](https://github.com/trycourier/courier-ruby/compare/v4.26.1...v4.26.2) (2026-08-13)
15
+
16
+
17
+ ### Documentation
18
+
19
+ * **api:** describe every broadcast id path parameter ([#120](https://github.com/trycourier/courier-ruby/issues/120)) ([2f4031e](https://github.com/trycourier/courier-ruby/commit/2f4031e65786588609fcf21e8cc7b42b3813eed7))
20
+ * **api:** say what the bulk job endpoints return ([#122](https://github.com/trycourier/courier-ruby/issues/122)) ([e5f3d75](https://github.com/trycourier/courier-ruby/commit/e5f3d7576f1b682fa395d3d7ef05c7dfb69ea922))
21
+
3
22
  ## [4.26.1](https://github.com/trycourier/courier-ruby/compare/v4.26.0...v4.26.1) (2026-08-13)
4
23
 
5
24
 
data/README.md CHANGED
@@ -9,7 +9,7 @@ Add the gem to your `Gemfile`:
9
9
  <!-- x-release-please-start-version -->
10
10
 
11
11
  ```ruby
12
- gem "trycourier", "~> 4.26.1"
12
+ gem "trycourier", "~> 5.0.0"
13
13
  ```
14
14
 
15
15
  <!-- x-release-please-end -->
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Courier
4
+ module Models
5
+ class AwsSns < Courier::Internal::Type::BaseModel
6
+ # @!attribute target_arn
7
+ # The ARN of the SNS platform endpoint, topic, or application to publish to.
8
+ #
9
+ # @return [String]
10
+ required :target_arn, String
11
+
12
+ # @!method initialize(target_arn:)
13
+ # Routes a push notification through the AWS SNS provider. The target ARN must be
14
+ # nested under `aws_sns` — a top-level `target_arn` on the profile is ignored by
15
+ # the provider.
16
+ #
17
+ # @param target_arn [String] The ARN of the SNS platform endpoint, topic, or application to publish to.
18
+ end
19
+ end
20
+ end
@@ -18,6 +18,14 @@ module Courier
18
18
  # @return [String, nil]
19
19
  optional :apn, String, nil?: true
20
20
 
21
+ # @!attribute aws_sns
22
+ # Routes a push notification through the AWS SNS provider. The target ARN must be
23
+ # nested under `aws_sns` — a top-level `target_arn` on the profile is ignored by
24
+ # the provider.
25
+ #
26
+ # @return [Courier::Models::AwsSns, nil]
27
+ optional :aws_sns, -> { Courier::AwsSns }, nil?: true
28
+
21
29
  # @!attribute birthdate
22
30
  #
23
31
  # @return [String, nil]
@@ -143,11 +151,6 @@ module Courier
143
151
  # @return [String, nil]
144
152
  optional :sub, String, nil?: true
145
153
 
146
- # @!attribute target_arn
147
- #
148
- # @return [String, nil]
149
- optional :target_arn, String, nil?: true
150
-
151
154
  # @!attribute updated_at
152
155
  #
153
156
  # @return [String, nil]
@@ -163,7 +166,7 @@ module Courier
163
166
  # @return [String, nil]
164
167
  optional :zoneinfo, String, nil?: true
165
168
 
166
- # @!method initialize(address: nil, airship: nil, apn: nil, birthdate: nil, custom: nil, discord: nil, email: nil, email_verified: nil, expo: nil, facebook_psid: nil, family_name: nil, firebase_token: nil, gender: nil, given_name: nil, intercom: nil, locale: nil, middle_name: nil, ms_teams: nil, name: nil, nickname: nil, phone_number: nil, phone_number_verified: nil, picture: nil, preferred_name: nil, profile: nil, slack: nil, sub: nil, target_arn: nil, updated_at: nil, website: nil, zoneinfo: nil)
169
+ # @!method initialize(address: nil, airship: nil, apn: nil, aws_sns: nil, birthdate: nil, custom: nil, discord: nil, email: nil, email_verified: nil, expo: nil, facebook_psid: nil, family_name: nil, firebase_token: nil, gender: nil, given_name: nil, intercom: nil, locale: nil, middle_name: nil, ms_teams: nil, name: nil, nickname: nil, phone_number: nil, phone_number_verified: nil, picture: nil, preferred_name: nil, profile: nil, slack: nil, sub: nil, updated_at: nil, website: nil, zoneinfo: nil)
167
170
  # Some parameter documentations has been truncated, see
168
171
  # {Courier::Models::UserProfile} for more details.
169
172
  #
@@ -173,6 +176,8 @@ module Courier
173
176
  #
174
177
  # @param apn [String, nil]
175
178
  #
179
+ # @param aws_sns [Courier::Models::AwsSns, nil] Routes a push notification through the AWS SNS provider. The target ARN must be
180
+ #
176
181
  # @param birthdate [String, nil]
177
182
  #
178
183
  # @param custom [Hash{Symbol=>Object}, nil] A free form object. Due to a limitation of the API Explorer, you can only enter
@@ -221,8 +226,6 @@ module Courier
221
226
  #
222
227
  # @param sub [String, nil]
223
228
  #
224
- # @param target_arn [String, nil]
225
- #
226
229
  # @param updated_at [String, nil]
227
230
  #
228
231
  # @param website [String, nil]
@@ -83,6 +83,8 @@ module Courier
83
83
 
84
84
  AutomationTemplateListResponse = Courier::Models::AutomationTemplateListResponse
85
85
 
86
+ AwsSns = Courier::Models::AwsSns
87
+
86
88
  BaseCheck = Courier::Models::BaseCheck
87
89
 
88
90
  BaseTemplateTenantAssociation = Courier::Models::BaseTemplateTenantAssociation
@@ -35,7 +35,8 @@ module Courier
35
35
  #
36
36
  # @overload retrieve(broadcast_id, request_options: {})
37
37
  #
38
- # @param broadcast_id [String]
38
+ # @param broadcast_id [String] The broadcast to retrieve, identified by the `id` returned when it was created.
39
+ #
39
40
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
40
41
  #
41
42
  # @return [Courier::Models::Broadcast]
@@ -55,7 +56,7 @@ module Courier
55
56
  #
56
57
  # @overload update(broadcast_id, name:, request_options: {})
57
58
  #
58
- # @param broadcast_id [String]
59
+ # @param broadcast_id [String] The broadcast to rename.
59
60
  #
60
61
  # @param name [String] New human-readable name.
61
62
  #
@@ -106,7 +107,8 @@ module Courier
106
107
  #
107
108
  # @overload archive(broadcast_id, request_options: {})
108
109
  #
109
- # @param broadcast_id [String]
110
+ # @param broadcast_id [String] The broadcast to archive.
111
+ #
110
112
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
111
113
  #
112
114
  # @return [Courier::Models::Broadcast]
@@ -126,7 +128,8 @@ module Courier
126
128
  #
127
129
  # @overload cancel(broadcast_id, request_options: {})
128
130
  #
129
- # @param broadcast_id [String]
131
+ # @param broadcast_id [String] The broadcast to cancel.
132
+ #
130
133
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
131
134
  #
132
135
  # @return [Courier::Models::Broadcast]
@@ -141,12 +144,16 @@ module Courier
141
144
  )
142
145
  end
143
146
 
147
+ # Some parameter documentations has been truncated, see
148
+ # {Courier::Models::BroadcastDuplicateParams} for more details.
149
+ #
144
150
  # Duplicate a broadcast (and its template) into a new draft named "{source name}
145
151
  # (copy)".
146
152
  #
147
153
  # @overload duplicate(broadcast_id, request_options: {})
148
154
  #
149
- # @param broadcast_id [String]
155
+ # @param broadcast_id [String] The broadcast to copy. The duplicate is created as a new draft and this broadcas
156
+ #
150
157
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
151
158
  #
152
159
  # @return [Courier::Models::Broadcast]
@@ -167,7 +174,7 @@ module Courier
167
174
  #
168
175
  # @overload put_content(broadcast_id, content:, state: nil, request_options: {})
169
176
  #
170
- # @param broadcast_id [String]
177
+ # @param broadcast_id [String] The broadcast whose content you want to replace.
171
178
  #
172
179
  # @param content [Courier::Models::NotificationContentPutRequest::Content] Elemental content payload. The server defaults `version` when omitted.
173
180
  #
@@ -198,7 +205,7 @@ module Courier
198
205
  #
199
206
  # @overload retrieve_content(broadcast_id, version: nil, request_options: {})
200
207
  #
201
- # @param broadcast_id [String]
208
+ # @param broadcast_id [String] The broadcast whose content you want to read.
202
209
  #
203
210
  # @param version [String] Accepts `draft`, `published`, or a version string (e.g. `v001`). Defaults to `dr
204
211
  #
@@ -228,7 +235,7 @@ module Courier
228
235
  #
229
236
  # @overload schedule(broadcast_id, recipient_id:, recipient_type:, scheduled_to:, timezone: nil, request_options: {})
230
237
  #
231
- # @param broadcast_id [String]
238
+ # @param broadcast_id [String] The broadcast to schedule.
232
239
  #
233
240
  # @param recipient_id [String] ID of the target list or audience.
234
241
  #
@@ -259,7 +266,7 @@ module Courier
259
266
  #
260
267
  # @overload send_(broadcast_id, recipient_id:, recipient_type:, request_options: {})
261
268
  #
262
- # @param broadcast_id [String]
269
+ # @param broadcast_id [String] The broadcast to send.
263
270
  #
264
271
  # @param recipient_id [String] ID of the target list or audience.
265
272
  #
@@ -65,7 +65,8 @@ module Courier
65
65
  # Some parameter documentations has been truncated, see
66
66
  # {Courier::Models::BulkListUsersParams} for more details.
67
67
  #
68
- # Get Bulk Job Users
68
+ # Returns the users ingested into a bulk job with paging, each carrying the status
69
+ # Courier recorded for it and the id of the message it produced.
69
70
  #
70
71
  # @overload list_users(job_id, cursor: nil, request_options: {})
71
72
  #
@@ -90,7 +91,9 @@ module Courier
90
91
  )
91
92
  end
92
93
 
93
- # Get a bulk job
94
+ # Returns a bulk job's message definition, its status — CREATED, PROCESSING,
95
+ # COMPLETED, or ERROR — and running counts of users received, messages enqueued,
96
+ # and failures. Poll it to follow a job through to completion.
94
97
  #
95
98
  # @overload retrieve_job(job_id, request_options: {})
96
99
  #
@@ -110,7 +113,9 @@ module Courier
110
113
  )
111
114
  end
112
115
 
113
- # Run a bulk job
116
+ # Starts processing a bulk job, sending to every user ingested into it. Returns
117
+ # 204 immediately; the job runs asynchronously, so poll the job to watch its
118
+ # status and counts.
114
119
  #
115
120
  # @overload run_job(job_id, request_options: {})
116
121
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Courier
4
- VERSION = "4.26.1"
4
+ VERSION = "5.0.0"
5
5
  end
data/lib/courier.rb CHANGED
@@ -116,6 +116,7 @@ require_relative "courier/models/automations/invoke_invoke_ad_hoc_params"
116
116
  require_relative "courier/models/automations/invoke_invoke_by_template_params"
117
117
  require_relative "courier/models/automation_template"
118
118
  require_relative "courier/models/automation_template_list_response"
119
+ require_relative "courier/models/aws_sns"
119
120
  require_relative "courier/models/brand"
120
121
  require_relative "courier/models/brand_colors"
121
122
  require_relative "courier/models/brand_create_params"
@@ -0,0 +1,28 @@
1
+ # typed: strong
2
+
3
+ module Courier
4
+ module Models
5
+ class AwsSns < Courier::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Courier::AwsSns, Courier::Internal::AnyHash) }
8
+
9
+ # The ARN of the SNS platform endpoint, topic, or application to publish to.
10
+ sig { returns(String) }
11
+ attr_accessor :target_arn
12
+
13
+ # Routes a push notification through the AWS SNS provider. The target ARN must be
14
+ # nested under `aws_sns` — a top-level `target_arn` on the profile is ignored by
15
+ # the provider.
16
+ sig { params(target_arn: String).returns(T.attached_class) }
17
+ def self.new(
18
+ # The ARN of the SNS platform endpoint, topic, or application to publish to.
19
+ target_arn:
20
+ )
21
+ end
22
+
23
+ sig { override.returns({ target_arn: String }) }
24
+ def to_hash
25
+ end
26
+ end
27
+ end
28
+ end
@@ -23,6 +23,15 @@ module Courier
23
23
  sig { returns(T.nilable(String)) }
24
24
  attr_accessor :apn
25
25
 
26
+ # Routes a push notification through the AWS SNS provider. The target ARN must be
27
+ # nested under `aws_sns` — a top-level `target_arn` on the profile is ignored by
28
+ # the provider.
29
+ sig { returns(T.nilable(Courier::AwsSns)) }
30
+ attr_reader :aws_sns
31
+
32
+ sig { params(aws_sns: T.nilable(Courier::AwsSns::OrHash)).void }
33
+ attr_writer :aws_sns
34
+
26
35
  sig { returns(T.nilable(String)) }
27
36
  attr_accessor :birthdate
28
37
 
@@ -126,9 +135,6 @@ module Courier
126
135
  sig { returns(T.nilable(String)) }
127
136
  attr_accessor :sub
128
137
 
129
- sig { returns(T.nilable(String)) }
130
- attr_accessor :target_arn
131
-
132
138
  sig { returns(T.nilable(String)) }
133
139
  attr_accessor :updated_at
134
140
 
@@ -143,6 +149,7 @@ module Courier
143
149
  address: T.nilable(Courier::UserProfile::Address::OrHash),
144
150
  airship: T.nilable(Courier::AirshipProfile::OrHash),
145
151
  apn: T.nilable(String),
152
+ aws_sns: T.nilable(Courier::AwsSns::OrHash),
146
153
  birthdate: T.nilable(String),
147
154
  custom: T.nilable(T::Hash[Symbol, T.anything]),
148
155
  discord:
@@ -193,7 +200,6 @@ module Courier
193
200
  )
194
201
  ),
195
202
  sub: T.nilable(String),
196
- target_arn: T.nilable(String),
197
203
  updated_at: T.nilable(String),
198
204
  website: T.nilable(String),
199
205
  zoneinfo: T.nilable(String)
@@ -203,6 +209,10 @@ module Courier
203
209
  address: nil,
204
210
  airship: nil,
205
211
  apn: nil,
212
+ # Routes a push notification through the AWS SNS provider. The target ARN must be
213
+ # nested under `aws_sns` — a top-level `target_arn` on the profile is ignored by
214
+ # the provider.
215
+ aws_sns: nil,
206
216
  birthdate: nil,
207
217
  # A free form object. Due to a limitation of the API Explorer, you can only enter
208
218
  # string key/values below, but this API accepts more complex object structures.
@@ -229,7 +239,6 @@ module Courier
229
239
  profile: nil,
230
240
  slack: nil,
231
241
  sub: nil,
232
- target_arn: nil,
233
242
  updated_at: nil,
234
243
  website: nil,
235
244
  zoneinfo: nil
@@ -242,6 +251,7 @@ module Courier
242
251
  address: T.nilable(Courier::UserProfile::Address),
243
252
  airship: T.nilable(Courier::AirshipProfile),
244
253
  apn: T.nilable(String),
254
+ aws_sns: T.nilable(Courier::AwsSns),
245
255
  birthdate: T.nilable(String),
246
256
  custom: T.nilable(T::Hash[Symbol, T.anything]),
247
257
  discord:
@@ -286,7 +296,6 @@ module Courier
286
296
  )
287
297
  ),
288
298
  sub: T.nilable(String),
289
- target_arn: T.nilable(String),
290
299
  updated_at: T.nilable(String),
291
300
  website: T.nilable(String),
292
301
  zoneinfo: T.nilable(String)
@@ -47,6 +47,8 @@ module Courier
47
47
  AutomationTemplateListResponse =
48
48
  Courier::Models::AutomationTemplateListResponse
49
49
 
50
+ AwsSns = Courier::Models::AwsSns
51
+
50
52
  BaseCheck = Courier::Models::BaseCheck
51
53
 
52
54
  BaseTemplateTenantAssociation = Courier::Models::BaseTemplateTenantAssociation
@@ -31,7 +31,11 @@ module Courier
31
31
  request_options: Courier::RequestOptions::OrHash
32
32
  ).returns(Courier::Broadcast)
33
33
  end
34
- def retrieve(broadcast_id, request_options: {})
34
+ def retrieve(
35
+ # The broadcast to retrieve, identified by the `id` returned when it was created.
36
+ broadcast_id,
37
+ request_options: {}
38
+ )
35
39
  end
36
40
 
37
41
  # Update a broadcast's name. Content is edited via the broadcast's notification
@@ -44,6 +48,7 @@ module Courier
44
48
  ).returns(Courier::Broadcast)
45
49
  end
46
50
  def update(
51
+ # The broadcast to rename.
47
52
  broadcast_id,
48
53
  # New human-readable name.
49
54
  name:,
@@ -77,7 +82,11 @@ module Courier
77
82
  request_options: Courier::RequestOptions::OrHash
78
83
  ).returns(Courier::Broadcast)
79
84
  end
80
- def archive(broadcast_id, request_options: {})
85
+ def archive(
86
+ # The broadcast to archive.
87
+ broadcast_id,
88
+ request_options: {}
89
+ )
81
90
  end
82
91
 
83
92
  # Cancel a broadcast's pending schedule, returning it to the draft state. Only
@@ -88,7 +97,11 @@ module Courier
88
97
  request_options: Courier::RequestOptions::OrHash
89
98
  ).returns(Courier::Broadcast)
90
99
  end
91
- def cancel(broadcast_id, request_options: {})
100
+ def cancel(
101
+ # The broadcast to cancel.
102
+ broadcast_id,
103
+ request_options: {}
104
+ )
92
105
  end
93
106
 
94
107
  # Duplicate a broadcast (and its template) into a new draft named "{source name}
@@ -99,7 +112,12 @@ module Courier
99
112
  request_options: Courier::RequestOptions::OrHash
100
113
  ).returns(Courier::Broadcast)
101
114
  end
102
- def duplicate(broadcast_id, request_options: {})
115
+ def duplicate(
116
+ # The broadcast to copy. The duplicate is created as a new draft and this
117
+ # broadcast is left unchanged.
118
+ broadcast_id,
119
+ request_options: {}
120
+ )
103
121
  end
104
122
 
105
123
  # Author the broadcast's content by replacing the draft elemental content of its
@@ -114,6 +132,7 @@ module Courier
114
132
  ).returns(Courier::NotificationContentMutationResponse)
115
133
  end
116
134
  def put_content(
135
+ # The broadcast whose content you want to replace.
117
136
  broadcast_id,
118
137
  # Elemental content payload. The server defaults `version` when omitted.
119
138
  content:,
@@ -134,6 +153,7 @@ module Courier
134
153
  ).returns(Courier::NotificationContentGetResponse)
135
154
  end
136
155
  def retrieve_content(
156
+ # The broadcast whose content you want to read.
137
157
  broadcast_id,
138
158
  # Accepts `draft`, `published`, or a version string (e.g. `v001`). Defaults to
139
159
  # `draft`.
@@ -157,6 +177,7 @@ module Courier
157
177
  ).returns(Courier::Broadcast)
158
178
  end
159
179
  def schedule(
180
+ # The broadcast to schedule.
160
181
  broadcast_id,
161
182
  # ID of the target list or audience.
162
183
  recipient_id:,
@@ -183,6 +204,7 @@ module Courier
183
204
  ).returns(Courier::Broadcast)
184
205
  end
185
206
  def send_(
207
+ # The broadcast to send.
186
208
  broadcast_id,
187
209
  # ID of the target list or audience.
188
210
  recipient_id:,
@@ -47,7 +47,8 @@ module Courier
47
47
  )
48
48
  end
49
49
 
50
- # Get Bulk Job Users
50
+ # Returns the users ingested into a bulk job with paging, each carrying the status
51
+ # Courier recorded for it and the id of the message it produced.
51
52
  sig do
52
53
  params(
53
54
  job_id: String,
@@ -65,7 +66,9 @@ module Courier
65
66
  )
66
67
  end
67
68
 
68
- # Get a bulk job
69
+ # Returns a bulk job's message definition, its status — CREATED, PROCESSING,
70
+ # COMPLETED, or ERROR — and running counts of users received, messages enqueued,
71
+ # and failures. Poll it to follow a job through to completion.
69
72
  sig do
70
73
  params(
71
74
  job_id: String,
@@ -79,7 +82,9 @@ module Courier
79
82
  )
80
83
  end
81
84
 
82
- # Run a bulk job
85
+ # Starts processing a bulk job, sending to every user ingested into it. Returns
86
+ # 204 immediately; the job runs asynchronously, so poll the job to watch its
87
+ # status and counts.
83
88
  sig do
84
89
  params(
85
90
  job_id: String,
@@ -0,0 +1,13 @@
1
+ module Courier
2
+ module Models
3
+ type aws_sns = { target_arn: String }
4
+
5
+ class AwsSns < Courier::Internal::Type::BaseModel
6
+ attr_accessor target_arn: String
7
+
8
+ def initialize: (target_arn: String) -> void
9
+
10
+ def to_hash: -> { target_arn: String }
11
+ end
12
+ end
13
+ end
@@ -5,6 +5,7 @@ module Courier
5
5
  address: Courier::UserProfile::Address?,
6
6
  airship: Courier::AirshipProfile?,
7
7
  apn: String?,
8
+ aws_sns: Courier::AwsSns?,
8
9
  birthdate: String?,
9
10
  custom: ::Hash[Symbol, top]?,
10
11
  discord: Courier::Models::discord?,
@@ -29,7 +30,6 @@ module Courier
29
30
  profile: String?,
30
31
  slack: Courier::Models::slack?,
31
32
  sub: String?,
32
- target_arn: String?,
33
33
  updated_at: String?,
34
34
  website: String?,
35
35
  zoneinfo: String?
@@ -42,6 +42,8 @@ module Courier
42
42
 
43
43
  attr_accessor apn: String?
44
44
 
45
+ attr_accessor aws_sns: Courier::AwsSns?
46
+
45
47
  attr_accessor birthdate: String?
46
48
 
47
49
  attr_accessor custom: ::Hash[Symbol, top]?
@@ -90,8 +92,6 @@ module Courier
90
92
 
91
93
  attr_accessor sub: String?
92
94
 
93
- attr_accessor target_arn: String?
94
-
95
95
  attr_accessor updated_at: String?
96
96
 
97
97
  attr_accessor website: String?
@@ -102,6 +102,7 @@ module Courier
102
102
  ?address: Courier::UserProfile::Address?,
103
103
  ?airship: Courier::AirshipProfile?,
104
104
  ?apn: String?,
105
+ ?aws_sns: Courier::AwsSns?,
105
106
  ?birthdate: String?,
106
107
  ?custom: ::Hash[Symbol, top]?,
107
108
  ?discord: Courier::Models::discord?,
@@ -126,7 +127,6 @@ module Courier
126
127
  ?profile: String?,
127
128
  ?slack: Courier::Models::slack?,
128
129
  ?sub: String?,
129
- ?target_arn: String?,
130
130
  ?updated_at: String?,
131
131
  ?website: String?,
132
132
  ?zoneinfo: String?
@@ -136,6 +136,7 @@ module Courier
136
136
  address: Courier::UserProfile::Address?,
137
137
  airship: Courier::AirshipProfile?,
138
138
  apn: String?,
139
+ aws_sns: Courier::AwsSns?,
139
140
  birthdate: String?,
140
141
  custom: ::Hash[Symbol, top]?,
141
142
  discord: Courier::Models::discord?,
@@ -160,7 +161,6 @@ module Courier
160
161
  profile: String?,
161
162
  slack: Courier::Models::slack?,
162
163
  sub: String?,
163
- target_arn: String?,
164
164
  updated_at: String?,
165
165
  website: String?,
166
166
  zoneinfo: String?
@@ -43,6 +43,8 @@ module Courier
43
43
 
44
44
  class AutomationTemplateListResponse = Courier::Models::AutomationTemplateListResponse
45
45
 
46
+ class AwsSns = Courier::Models::AwsSns
47
+
46
48
  class BaseCheck = Courier::Models::BaseCheck
47
49
 
48
50
  class BaseTemplateTenantAssociation = Courier::Models::BaseTemplateTenantAssociation
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.26.1
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Courier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-08-13 00:00:00.000000000 Z
11
+ date: 2026-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi
@@ -97,6 +97,7 @@ files:
97
97
  - lib/courier/models/automation_template_list_response.rb
98
98
  - lib/courier/models/automations/invoke_invoke_ad_hoc_params.rb
99
99
  - lib/courier/models/automations/invoke_invoke_by_template_params.rb
100
+ - lib/courier/models/aws_sns.rb
100
101
  - lib/courier/models/base_check.rb
101
102
  - lib/courier/models/base_template_tenant_association.rb
102
103
  - lib/courier/models/brand.rb
@@ -548,6 +549,7 @@ files:
548
549
  - rbi/courier/models/automation_template_list_response.rbi
549
550
  - rbi/courier/models/automations/invoke_invoke_ad_hoc_params.rbi
550
551
  - rbi/courier/models/automations/invoke_invoke_by_template_params.rbi
552
+ - rbi/courier/models/aws_sns.rbi
551
553
  - rbi/courier/models/base_check.rbi
552
554
  - rbi/courier/models/base_template_tenant_association.rbi
553
555
  - rbi/courier/models/brand.rbi
@@ -998,6 +1000,7 @@ files:
998
1000
  - sig/courier/models/automation_template_list_response.rbs
999
1001
  - sig/courier/models/automations/invoke_invoke_ad_hoc_params.rbs
1000
1002
  - sig/courier/models/automations/invoke_invoke_by_template_params.rbs
1003
+ - sig/courier/models/aws_sns.rbs
1001
1004
  - sig/courier/models/base_check.rbs
1002
1005
  - sig/courier/models/base_template_tenant_association.rbs
1003
1006
  - sig/courier/models/brand.rbs