aws-sdk-workmailmessageflow 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 62943d16c46d05b33e63a3b517abc0f037cda107d650743de6e54af39ff7ce06
4
- data.tar.gz: 307efddb919f0d0db1da6bebbfa415e4fb35441864df320a0b9bc31cec1ff0e2
3
+ metadata.gz: 2789c4328786589bed3bfa62bc808857b2d8afb9d8bed227eb6dbe42dc98f545
4
+ data.tar.gz: a8dc0f04398ef880a6df505d2eec2b39f717d5b4ad6ce14fb3caf502a5394f7e
5
5
  SHA512:
6
- metadata.gz: 4bd5340130cdcbf104dd9c547d18d8bbdf2ce3621f6cd34c032e0d1bd9a25315b5a9ca77a573f42633f4c4811136e7ff7aaf9459c53ff538cd20cba321fb0cc0
7
- data.tar.gz: 54e96103652565731d7b22ec1a59b684a52639246e19528fc9c7cf01cc975b9ee9be66ac61b3633a2d7cb8c05c2a2d5282790510e6d45fc334a7e91da74406c6
6
+ metadata.gz: a63943901a056a8e183fdd08f952894ef689655b9ece2b0d698b3515a44d395b12b7af70bb0fd8bc43fef954a1291ca8290db2f0e28e60611d42574b76c38896
7
+ data.tar.gz: 52d9713dea651969df12a05f687b39287aca6a45beeba96b62eb929e5be0723b664f06475f0300ab4c786b70ef5512d45ea93a57d1598cb6e7ed054b45cdd30f
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-workmailmessageflow/customizations'
48
48
  # @!group service
49
49
  module Aws::WorkMailMessageFlow
50
50
 
51
- GEM_VERSION = '1.10.0'
51
+ GEM_VERSION = '1.11.0'
52
52
 
53
53
  end
@@ -356,6 +356,57 @@ module Aws::WorkMailMessageFlow
356
356
  req.send_request(options, &block)
357
357
  end
358
358
 
359
+ # Updates the raw content of an in-transit email message, in MIME
360
+ # format.
361
+ #
362
+ # This example describes how to update in-transit email message. For
363
+ # more information and examples for using this API, see [ Updating
364
+ # message content with AWS Lambda][1].
365
+ #
366
+ # <note markdown="1"> Updates to an in-transit message only appear when you call
367
+ # `PutRawMessageContent` from an AWS Lambda function configured with a
368
+ # synchronous [ Run Lambda][2] rule. If you call `PutRawMessageContent`
369
+ # on a delivered or sent message, the message remains unchanged, even
370
+ # though [GetRawMessageContent][3] returns an updated message.
371
+ #
372
+ # </note>
373
+ #
374
+ #
375
+ #
376
+ # [1]: https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html
377
+ # [2]: https://docs.aws.amazon.com/workmail/latest/adminguide/lambda.html#synchronous-rules
378
+ # [3]: https://docs.aws.amazon.com/workmail/latest/APIReference/API_messageflow_GetRawMessageContent.html
379
+ #
380
+ # @option params [required, String] :message_id
381
+ # The identifier of the email message being updated.
382
+ #
383
+ # @option params [required, Types::RawMessageContent] :content
384
+ # Describes the raw message content of the updated email message.
385
+ #
386
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
387
+ #
388
+ # @example Request syntax with placeholder values
389
+ #
390
+ # resp = client.put_raw_message_content({
391
+ # message_id: "messageIdType", # required
392
+ # content: { # required
393
+ # s3_reference: { # required
394
+ # bucket: "s3BucketIdType", # required
395
+ # key: "s3KeyIdType", # required
396
+ # object_version: "s3VersionType",
397
+ # },
398
+ # },
399
+ # })
400
+ #
401
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/PutRawMessageContent AWS API Documentation
402
+ #
403
+ # @overload put_raw_message_content(params = {})
404
+ # @param [Hash] params ({})
405
+ def put_raw_message_content(params = {}, options = {})
406
+ req = build_request(:put_raw_message_content, params)
407
+ req.send_request(options)
408
+ end
409
+
359
410
  # @!endgroup
360
411
 
361
412
  # @param params ({})
@@ -369,7 +420,7 @@ module Aws::WorkMailMessageFlow
369
420
  params: params,
370
421
  config: config)
371
422
  context[:gem_name] = 'aws-sdk-workmailmessageflow'
372
- context[:gem_version] = '1.10.0'
423
+ context[:gem_version] = '1.11.0'
373
424
  Seahorse::Client::Request.new(handlers, context)
374
425
  end
375
426
 
@@ -15,10 +15,20 @@ module Aws::WorkMailMessageFlow
15
15
 
16
16
  GetRawMessageContentRequest = Shapes::StructureShape.new(name: 'GetRawMessageContentRequest')
17
17
  GetRawMessageContentResponse = Shapes::StructureShape.new(name: 'GetRawMessageContentResponse')
18
+ InvalidContentLocation = Shapes::StructureShape.new(name: 'InvalidContentLocation')
19
+ MessageFrozen = Shapes::StructureShape.new(name: 'MessageFrozen')
20
+ MessageRejected = Shapes::StructureShape.new(name: 'MessageRejected')
21
+ PutRawMessageContentRequest = Shapes::StructureShape.new(name: 'PutRawMessageContentRequest')
22
+ PutRawMessageContentResponse = Shapes::StructureShape.new(name: 'PutRawMessageContentResponse')
23
+ RawMessageContent = Shapes::StructureShape.new(name: 'RawMessageContent')
18
24
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
25
+ S3Reference = Shapes::StructureShape.new(name: 'S3Reference')
19
26
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
20
27
  messageContentBlob = Shapes::BlobShape.new(name: 'messageContentBlob', streaming: true)
21
28
  messageIdType = Shapes::StringShape.new(name: 'messageIdType')
29
+ s3BucketIdType = Shapes::StringShape.new(name: 's3BucketIdType')
30
+ s3KeyIdType = Shapes::StringShape.new(name: 's3KeyIdType')
31
+ s3VersionType = Shapes::StringShape.new(name: 's3VersionType')
22
32
 
23
33
  GetRawMessageContentRequest.add_member(:message_id, Shapes::ShapeRef.new(shape: messageIdType, required: true, location: "uri", location_name: "messageId"))
24
34
  GetRawMessageContentRequest.struct_class = Types::GetRawMessageContentRequest
@@ -28,9 +38,32 @@ module Aws::WorkMailMessageFlow
28
38
  GetRawMessageContentResponse[:payload] = :message_content
29
39
  GetRawMessageContentResponse[:payload_member] = GetRawMessageContentResponse.member(:message_content)
30
40
 
41
+ InvalidContentLocation.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
42
+ InvalidContentLocation.struct_class = Types::InvalidContentLocation
43
+
44
+ MessageFrozen.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
45
+ MessageFrozen.struct_class = Types::MessageFrozen
46
+
47
+ MessageRejected.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
48
+ MessageRejected.struct_class = Types::MessageRejected
49
+
50
+ PutRawMessageContentRequest.add_member(:message_id, Shapes::ShapeRef.new(shape: messageIdType, required: true, location: "uri", location_name: "messageId"))
51
+ PutRawMessageContentRequest.add_member(:content, Shapes::ShapeRef.new(shape: RawMessageContent, required: true, location_name: "content"))
52
+ PutRawMessageContentRequest.struct_class = Types::PutRawMessageContentRequest
53
+
54
+ PutRawMessageContentResponse.struct_class = Types::PutRawMessageContentResponse
55
+
56
+ RawMessageContent.add_member(:s3_reference, Shapes::ShapeRef.new(shape: S3Reference, required: true, location_name: "s3Reference"))
57
+ RawMessageContent.struct_class = Types::RawMessageContent
58
+
31
59
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
32
60
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
33
61
 
62
+ S3Reference.add_member(:bucket, Shapes::ShapeRef.new(shape: s3BucketIdType, required: true, location_name: "bucket"))
63
+ S3Reference.add_member(:key, Shapes::ShapeRef.new(shape: s3KeyIdType, required: true, location_name: "key"))
64
+ S3Reference.add_member(:object_version, Shapes::ShapeRef.new(shape: s3VersionType, location_name: "objectVersion"))
65
+ S3Reference.struct_class = Types::S3Reference
66
+
34
67
 
35
68
  # @api private
36
69
  API = Seahorse::Model::Api.new.tap do |api|
@@ -56,6 +89,18 @@ module Aws::WorkMailMessageFlow
56
89
  o.output = Shapes::ShapeRef.new(shape: GetRawMessageContentResponse)
57
90
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
58
91
  end)
92
+
93
+ api.add_operation(:put_raw_message_content, Seahorse::Model::Operation.new.tap do |o|
94
+ o.name = "PutRawMessageContent"
95
+ o.http_method = "POST"
96
+ o.http_request_uri = "/messages/{messageId}"
97
+ o.input = Shapes::ShapeRef.new(shape: PutRawMessageContentRequest)
98
+ o.output = Shapes::ShapeRef.new(shape: PutRawMessageContentResponse)
99
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
100
+ o.errors << Shapes::ShapeRef.new(shape: InvalidContentLocation)
101
+ o.errors << Shapes::ShapeRef.new(shape: MessageRejected)
102
+ o.errors << Shapes::ShapeRef.new(shape: MessageFrozen)
103
+ end)
59
104
  end
60
105
 
61
106
  end
@@ -27,6 +27,9 @@ module Aws::WorkMailMessageFlow
27
27
  # See {Seahorse::Client::RequestContext} for more information.
28
28
  #
29
29
  # ## Error Classes
30
+ # * {InvalidContentLocation}
31
+ # * {MessageFrozen}
32
+ # * {MessageRejected}
30
33
  # * {ResourceNotFoundException}
31
34
  #
32
35
  # Additionally, error classes are dynamically generated for service errors based on the error code
@@ -35,6 +38,51 @@ module Aws::WorkMailMessageFlow
35
38
 
36
39
  extend Aws::Errors::DynamicErrors
37
40
 
41
+ class InvalidContentLocation < ServiceError
42
+
43
+ # @param [Seahorse::Client::RequestContext] context
44
+ # @param [String] message
45
+ # @param [Aws::WorkMailMessageFlow::Types::InvalidContentLocation] data
46
+ def initialize(context, message, data = Aws::EmptyStructure.new)
47
+ super(context, message, data)
48
+ end
49
+
50
+ # @return [String]
51
+ def message
52
+ @message || @data[:message]
53
+ end
54
+ end
55
+
56
+ class MessageFrozen < ServiceError
57
+
58
+ # @param [Seahorse::Client::RequestContext] context
59
+ # @param [String] message
60
+ # @param [Aws::WorkMailMessageFlow::Types::MessageFrozen] data
61
+ def initialize(context, message, data = Aws::EmptyStructure.new)
62
+ super(context, message, data)
63
+ end
64
+
65
+ # @return [String]
66
+ def message
67
+ @message || @data[:message]
68
+ end
69
+ end
70
+
71
+ class MessageRejected < ServiceError
72
+
73
+ # @param [Seahorse::Client::RequestContext] context
74
+ # @param [String] message
75
+ # @param [Aws::WorkMailMessageFlow::Types::MessageRejected] data
76
+ def initialize(context, message, data = Aws::EmptyStructure.new)
77
+ super(context, message, data)
78
+ end
79
+
80
+ # @return [String]
81
+ def message
82
+ @message || @data[:message]
83
+ end
84
+ end
85
+
38
86
  class ResourceNotFoundException < ServiceError
39
87
 
40
88
  # @param [Seahorse::Client::RequestContext] context
@@ -41,6 +41,148 @@ module Aws::WorkMailMessageFlow
41
41
  include Aws::Structure
42
42
  end
43
43
 
44
+ # WorkMail could not access the updated email content. Possible reasons:
45
+ #
46
+ # * You made the request in a region other than your S3 bucket region.
47
+ #
48
+ # * The [S3 bucket owner][1] is not the same as the calling AWS account.
49
+ #
50
+ # * You have an incomplete or missing S3 bucket policy. For more
51
+ # information about policies, see [ Updating message content with AWS
52
+ # Lambda ][2] in the *WorkMail Administrator Guide*.
53
+ #
54
+ #
55
+ #
56
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-owner-condition.html
57
+ # [2]: https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html
58
+ #
59
+ # @!attribute [rw] message
60
+ # @return [String]
61
+ #
62
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/InvalidContentLocation AWS API Documentation
63
+ #
64
+ class InvalidContentLocation < Struct.new(
65
+ :message)
66
+ SENSITIVE = []
67
+ include Aws::Structure
68
+ end
69
+
70
+ # The requested email is not eligible for update. This is usually the
71
+ # case for a redirected email.
72
+ #
73
+ # @!attribute [rw] message
74
+ # @return [String]
75
+ #
76
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/MessageFrozen AWS API Documentation
77
+ #
78
+ class MessageFrozen < Struct.new(
79
+ :message)
80
+ SENSITIVE = []
81
+ include Aws::Structure
82
+ end
83
+
84
+ # The requested email could not be updated due to an error in the MIME
85
+ # content. Check the error message for more information about what
86
+ # caused the error.
87
+ #
88
+ # @!attribute [rw] message
89
+ # @return [String]
90
+ #
91
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/MessageRejected AWS API Documentation
92
+ #
93
+ class MessageRejected < Struct.new(
94
+ :message)
95
+ SENSITIVE = []
96
+ include Aws::Structure
97
+ end
98
+
99
+ # @note When making an API call, you may pass PutRawMessageContentRequest
100
+ # data as a hash:
101
+ #
102
+ # {
103
+ # message_id: "messageIdType", # required
104
+ # content: { # required
105
+ # s3_reference: { # required
106
+ # bucket: "s3BucketIdType", # required
107
+ # key: "s3KeyIdType", # required
108
+ # object_version: "s3VersionType",
109
+ # },
110
+ # },
111
+ # }
112
+ #
113
+ # @!attribute [rw] message_id
114
+ # The identifier of the email message being updated.
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] content
118
+ # Describes the raw message content of the updated email message.
119
+ # @return [Types::RawMessageContent]
120
+ #
121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/PutRawMessageContentRequest AWS API Documentation
122
+ #
123
+ class PutRawMessageContentRequest < Struct.new(
124
+ :message_id,
125
+ :content)
126
+ SENSITIVE = []
127
+ include Aws::Structure
128
+ end
129
+
130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/PutRawMessageContentResponse AWS API Documentation
131
+ #
132
+ class PutRawMessageContentResponse < Aws::EmptyStructure; end
133
+
134
+ # Provides the MIME content of the updated email message as an S3
135
+ # object. All MIME content must meet the following criteria:
136
+ #
137
+ # * Each part of a multipart MIME message must be formatted properly.
138
+ #
139
+ # * Attachments must be of a content type that Amazon SES supports. For
140
+ # more information, see [Unsupported Attachment Types][1].
141
+ #
142
+ # * If any of the MIME parts in a message contain content that is
143
+ # outside of the 7-bit ASCII character range, we recommend encoding
144
+ # that content.
145
+ #
146
+ # * Per [RFC 5321][2], the maximum length of each line of text,
147
+ # including the &lt;CRLF&gt;, must not exceed 1,000 characters.
148
+ #
149
+ # * The message must contain all the required header fields. Check the
150
+ # returned error message for more information.
151
+ #
152
+ # * The value of immutable headers must remain unchanged. Check the
153
+ # returned error message for more information.
154
+ #
155
+ # * Certain unique headers can only appear once. Check the returned
156
+ # error message for more information.
157
+ #
158
+ #
159
+ #
160
+ # [1]: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types-appendix.html
161
+ # [2]: https://tools.ietf.org/html/rfc5321#section-4.5.3.1.6
162
+ #
163
+ # @note When making an API call, you may pass RawMessageContent
164
+ # data as a hash:
165
+ #
166
+ # {
167
+ # s3_reference: { # required
168
+ # bucket: "s3BucketIdType", # required
169
+ # key: "s3KeyIdType", # required
170
+ # object_version: "s3VersionType",
171
+ # },
172
+ # }
173
+ #
174
+ # @!attribute [rw] s3_reference
175
+ # The S3 reference of an email message.
176
+ # @return [Types::S3Reference]
177
+ #
178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/RawMessageContent AWS API Documentation
179
+ #
180
+ class RawMessageContent < Struct.new(
181
+ :s3_reference)
182
+ SENSITIVE = []
183
+ include Aws::Structure
184
+ end
185
+
44
186
  # The requested email message is not found.
45
187
  #
46
188
  # @!attribute [rw] message
@@ -54,5 +196,51 @@ module Aws::WorkMailMessageFlow
54
196
  include Aws::Structure
55
197
  end
56
198
 
199
+ # Amazon S3 object representing the updated message content, in MIME
200
+ # format.
201
+ #
202
+ # <note markdown="1"> The region for the S3 bucket containing the S3 object must match the
203
+ # region used for WorkMail operations. Also, for WorkMail to process an
204
+ # S3 object, it must have permission to access that object. For more
205
+ # information, see [ Updating message content with AWS Lambda][1].
206
+ #
207
+ # </note>
208
+ #
209
+ #
210
+ #
211
+ # [1]: https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html
212
+ #
213
+ # @note When making an API call, you may pass S3Reference
214
+ # data as a hash:
215
+ #
216
+ # {
217
+ # bucket: "s3BucketIdType", # required
218
+ # key: "s3KeyIdType", # required
219
+ # object_version: "s3VersionType",
220
+ # }
221
+ #
222
+ # @!attribute [rw] bucket
223
+ # The S3 bucket name.
224
+ # @return [String]
225
+ #
226
+ # @!attribute [rw] key
227
+ # The S3 key object name.
228
+ # @return [String]
229
+ #
230
+ # @!attribute [rw] object_version
231
+ # If you enable versioning for the bucket, you can specify the object
232
+ # version.
233
+ # @return [String]
234
+ #
235
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmailmessageflow-2019-05-01/S3Reference AWS API Documentation
236
+ #
237
+ class S3Reference < Struct.new(
238
+ :bucket,
239
+ :key,
240
+ :object_version)
241
+ SENSITIVE = []
242
+ include Aws::Structure
243
+ end
244
+
57
245
  end
58
246
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-workmailmessageflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0
4
+ version: 1.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-02 00:00:00.000000000 Z
11
+ date: 2021-02-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core