aws-sdk-connectparticipant 1.8.0 → 1.9.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: da6935b99c4cb88fe54a54c4bef2f264e34ae6de036220fa980215e3b590150a
4
- data.tar.gz: d8a9177307341ca31ea090f0ddc36de8f8e1ab1286c60deb1e9557704670879a
3
+ metadata.gz: 4763d68aeede9bb4c809cc4a4a0e0550ffe62c13aa92604f7a2a388b806089e3
4
+ data.tar.gz: b68b77ea6f33fe94fb2f275c09c0a7ab34b9d2dafabfd4223b51b2de0a373174
5
5
  SHA512:
6
- metadata.gz: 8b07ad83b0e6817a913b41108176d76b5285e0c5e5e8db748379dc8aefaf2e8d2e706eb5011879cd694165c2ed0aeee7e3d50947f7f38856bbf7b23b8603c382
7
- data.tar.gz: d489b6e75477b499252466e12d01e68f01ff0730723503c4ce567f9ad21f5748088c75d73504dc2db8cad3f6a44688e620089ba865c4b98acbb771f2c638eb15
6
+ metadata.gz: bb361e061265d9e8301247f33fd74ef4758fe1122072efa66814c41b3402223f9b73249ce218f638c1cc73eb8874081bb51530f5420ce2f4e3dd7587ffb47de9
7
+ data.tar.gz: 1d044a0ab58f00545b35968cc3385c5a178459011e01047576ed00f371a985fedbc0ec818ec2b32cb4f6076d82397feb87e0bcdd0de996080e7864bc595ef76e
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-connectparticipant/customizations'
28
28
  # structure.
29
29
  #
30
30
  # connect_participant = Aws::ConnectParticipant::Client.new
31
- # resp = connect_participant.create_participant_connection(params)
31
+ # resp = connect_participant.complete_attachment_upload(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-connectparticipant/customizations'
48
48
  # @!group service
49
49
  module Aws::ConnectParticipant
50
50
 
51
- GEM_VERSION = '1.8.0'
51
+ GEM_VERSION = '1.9.0'
52
52
 
53
53
  end
@@ -327,11 +327,47 @@ module Aws::ConnectParticipant
327
327
 
328
328
  # @!group API Operations
329
329
 
330
+ # Allows you to confirm that the attachment has been uploaded using the
331
+ # pre-signed URL provided in StartAttachmentUpload API.
332
+ #
333
+ # @option params [required, Array<String>] :attachment_ids
334
+ # A list of unique identifiers for the attachments.
335
+ #
336
+ # @option params [required, String] :client_token
337
+ # A unique, case-sensitive identifier that you provide to ensure the
338
+ # idempotency of the request.
339
+ #
340
+ # **A suitable default value is auto-generated.** You should normally
341
+ # not need to pass this option.**
342
+ #
343
+ # @option params [required, String] :connection_token
344
+ # The authentication token associated with the participant's
345
+ # connection.
346
+ #
347
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
348
+ #
349
+ # @example Request syntax with placeholder values
350
+ #
351
+ # resp = client.complete_attachment_upload({
352
+ # attachment_ids: ["ArtifactId"], # required
353
+ # client_token: "NonEmptyClientToken", # required
354
+ # connection_token: "ParticipantToken", # required
355
+ # })
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CompleteAttachmentUpload AWS API Documentation
358
+ #
359
+ # @overload complete_attachment_upload(params = {})
360
+ # @param [Hash] params ({})
361
+ def complete_attachment_upload(params = {}, options = {})
362
+ req = build_request(:complete_attachment_upload, params)
363
+ req.send_request(options)
364
+ end
365
+
330
366
  # Creates the participant's connection. Note that ParticipantToken is
331
367
  # used for invoking this API instead of ConnectionToken.
332
368
  #
333
369
  # The participant token is valid for the lifetime of the participant –
334
- # until the they are part of a contact.
370
+ # until they are part of a contact.
335
371
  #
336
372
  # The response URL for `WEBSOCKET` Type has a connect expiry timeout of
337
373
  # 100s. Clients must manually connect to the returned websocket URL and
@@ -346,15 +382,27 @@ module Aws::ConnectParticipant
346
382
  # ConnectionExpiry parameter, clients need to call this API again to
347
383
  # obtain a new websocket URL and perform the same steps as before.
348
384
  #
385
+ # <note markdown="1"> The Amazon Connect Participant Service APIs do not use [Signature
386
+ # Version 4 authentication][1].
387
+ #
388
+ # </note>
389
+ #
390
+ #
391
+ #
392
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
393
+ #
349
394
  # @option params [required, Array<String>] :type
350
395
  # Type of connection information required.
351
396
  #
352
397
  # @option params [required, String] :participant_token
353
- # Participant Token as obtained from [StartChatContact][1] API response.
398
+ # This is a header parameter.
354
399
  #
400
+ # The Participant Token as obtained from [StartChatContact][1] API
401
+ # response.
355
402
  #
356
403
  #
357
- # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContactResponse.html
404
+ #
405
+ # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html
358
406
  #
359
407
  # @return [Types::CreateParticipantConnectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
360
408
  #
@@ -387,6 +435,13 @@ module Aws::ConnectParticipant
387
435
  # Disconnects a participant. Note that ConnectionToken is used for
388
436
  # invoking this API instead of ParticipantToken.
389
437
  #
438
+ # The Amazon Connect Participant Service APIs do not use [Signature
439
+ # Version 4 authentication][1].
440
+ #
441
+ #
442
+ #
443
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
444
+ #
390
445
  # @option params [String] :client_token
391
446
  # A unique, case-sensitive identifier that you provide to ensure the
392
447
  # idempotency of the request.
@@ -416,8 +471,52 @@ module Aws::ConnectParticipant
416
471
  req.send_request(options)
417
472
  end
418
473
 
419
- # Retrieves a transcript of the session. Note that ConnectionToken is
420
- # used for invoking this API instead of ParticipantToken.
474
+ # Provides a pre-signed URL for download of a completed attachment. This
475
+ # is an asynchronous API for use with active contacts.
476
+ #
477
+ # @option params [required, String] :attachment_id
478
+ # A unique identifier for the attachment.
479
+ #
480
+ # @option params [required, String] :connection_token
481
+ # The authentication token associated with the participant's
482
+ # connection.
483
+ #
484
+ # @return [Types::GetAttachmentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
485
+ #
486
+ # * {Types::GetAttachmentResponse#url #url} => String
487
+ # * {Types::GetAttachmentResponse#url_expiry #url_expiry} => String
488
+ #
489
+ # @example Request syntax with placeholder values
490
+ #
491
+ # resp = client.get_attachment({
492
+ # attachment_id: "ArtifactId", # required
493
+ # connection_token: "ParticipantToken", # required
494
+ # })
495
+ #
496
+ # @example Response structure
497
+ #
498
+ # resp.url #=> String
499
+ # resp.url_expiry #=> String
500
+ #
501
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachment AWS API Documentation
502
+ #
503
+ # @overload get_attachment(params = {})
504
+ # @param [Hash] params ({})
505
+ def get_attachment(params = {}, options = {})
506
+ req = build_request(:get_attachment, params)
507
+ req.send_request(options)
508
+ end
509
+
510
+ # Retrieves a transcript of the session, including details about any
511
+ # attachments. Note that ConnectionToken is used for invoking this API
512
+ # instead of ParticipantToken.
513
+ #
514
+ # The Amazon Connect Participant Service APIs do not use [Signature
515
+ # Version 4 authentication][1].
516
+ #
517
+ #
518
+ #
519
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
421
520
  #
422
521
  # @option params [String] :contact_id
423
522
  # The contactId from the current contact chain for which transcript is
@@ -477,10 +576,15 @@ module Aws::ConnectParticipant
477
576
  # resp.transcript[0].content #=> String
478
577
  # resp.transcript[0].content_type #=> String
479
578
  # resp.transcript[0].id #=> String
480
- # resp.transcript[0].type #=> String, one of "MESSAGE", "EVENT", "CONNECTION_ACK"
579
+ # resp.transcript[0].type #=> String, one of "TYPING", "PARTICIPANT_JOINED", "PARTICIPANT_LEFT", "CHAT_ENDED", "TRANSFER_SUCCEEDED", "TRANSFER_FAILED", "MESSAGE", "EVENT", "ATTACHMENT", "CONNECTION_ACK"
481
580
  # resp.transcript[0].participant_id #=> String
482
581
  # resp.transcript[0].display_name #=> String
483
582
  # resp.transcript[0].participant_role #=> String, one of "AGENT", "CUSTOMER", "SYSTEM"
583
+ # resp.transcript[0].attachments #=> Array
584
+ # resp.transcript[0].attachments[0].content_type #=> String
585
+ # resp.transcript[0].attachments[0].attachment_id #=> String
586
+ # resp.transcript[0].attachments[0].attachment_name #=> String
587
+ # resp.transcript[0].attachments[0].status #=> String, one of "APPROVED", "REJECTED", "IN_PROGRESS"
484
588
  # resp.next_token #=> String
485
589
  #
486
590
  # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetTranscript AWS API Documentation
@@ -495,6 +599,13 @@ module Aws::ConnectParticipant
495
599
  # Sends an event. Note that ConnectionToken is used for invoking this
496
600
  # API instead of ParticipantToken.
497
601
  #
602
+ # The Amazon Connect Participant Service APIs do not use [Signature
603
+ # Version 4 authentication][1].
604
+ #
605
+ #
606
+ #
607
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
608
+ #
498
609
  # @option params [required, String] :content_type
499
610
  # The content type of the request. Supported types are:
500
611
  #
@@ -548,6 +659,15 @@ module Aws::ConnectParticipant
548
659
  # Sends a message. Note that ConnectionToken is used for invoking this
549
660
  # API instead of ParticipantToken.
550
661
  #
662
+ # <note markdown="1"> The Amazon Connect Participant Service APIs do not use [Signature
663
+ # Version 4 authentication][1].
664
+ #
665
+ # </note>
666
+ #
667
+ #
668
+ #
669
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
670
+ #
551
671
  # @option params [required, String] :content_type
552
672
  # The type of the content. Supported types are text/plain.
553
673
  #
@@ -592,6 +712,66 @@ module Aws::ConnectParticipant
592
712
  req.send_request(options)
593
713
  end
594
714
 
715
+ # Provides a pre-signed Amazon S3 URL in response for uploading the file
716
+ # directly to S3.
717
+ #
718
+ # @option params [required, String] :content_type
719
+ # Describes the MIME file type of the attachment. For a list of
720
+ # supported file types, see [Feature specifications][1] in the *Amazon
721
+ # Connect Administrator Guide*.
722
+ #
723
+ #
724
+ #
725
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits
726
+ #
727
+ # @option params [required, Integer] :attachment_size_in_bytes
728
+ # The size of the attachment in bytes.
729
+ #
730
+ # @option params [required, String] :attachment_name
731
+ # A case-sensitive name of the attachment being uploaded.
732
+ #
733
+ # @option params [required, String] :client_token
734
+ # A unique case sensitive identifier to support idempotency of request.
735
+ #
736
+ # **A suitable default value is auto-generated.** You should normally
737
+ # not need to pass this option.**
738
+ #
739
+ # @option params [required, String] :connection_token
740
+ # The authentication token associated with the participant's
741
+ # connection.
742
+ #
743
+ # @return [Types::StartAttachmentUploadResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
744
+ #
745
+ # * {Types::StartAttachmentUploadResponse#attachment_id #attachment_id} => String
746
+ # * {Types::StartAttachmentUploadResponse#upload_metadata #upload_metadata} => Types::UploadMetadata
747
+ #
748
+ # @example Request syntax with placeholder values
749
+ #
750
+ # resp = client.start_attachment_upload({
751
+ # content_type: "ContentType", # required
752
+ # attachment_size_in_bytes: 1, # required
753
+ # attachment_name: "AttachmentName", # required
754
+ # client_token: "NonEmptyClientToken", # required
755
+ # connection_token: "ParticipantToken", # required
756
+ # })
757
+ #
758
+ # @example Response structure
759
+ #
760
+ # resp.attachment_id #=> String
761
+ # resp.upload_metadata.url #=> String
762
+ # resp.upload_metadata.url_expiry #=> String
763
+ # resp.upload_metadata.headers_to_include #=> Hash
764
+ # resp.upload_metadata.headers_to_include["UploadMetadataSignedHeadersKey"] #=> String
765
+ #
766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/StartAttachmentUpload AWS API Documentation
767
+ #
768
+ # @overload start_attachment_upload(params = {})
769
+ # @param [Hash] params ({})
770
+ def start_attachment_upload(params = {}, options = {})
771
+ req = build_request(:start_attachment_upload, params)
772
+ req.send_request(options)
773
+ end
774
+
595
775
  # @!endgroup
596
776
 
597
777
  # @param params ({})
@@ -605,7 +785,7 @@ module Aws::ConnectParticipant
605
785
  params: params,
606
786
  config: config)
607
787
  context[:gem_name] = 'aws-sdk-connectparticipant'
608
- context[:gem_version] = '1.8.0'
788
+ context[:gem_version] = '1.9.0'
609
789
  Seahorse::Client::Request.new(handlers, context)
610
790
  end
611
791
 
@@ -14,20 +14,33 @@ module Aws::ConnectParticipant
14
14
  include Seahorse::Model
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
+ ArtifactId = Shapes::StringShape.new(name: 'ArtifactId')
18
+ ArtifactStatus = Shapes::StringShape.new(name: 'ArtifactStatus')
19
+ AttachmentIdList = Shapes::ListShape.new(name: 'AttachmentIdList')
20
+ AttachmentItem = Shapes::StructureShape.new(name: 'AttachmentItem')
21
+ AttachmentName = Shapes::StringShape.new(name: 'AttachmentName')
22
+ AttachmentSizeInBytes = Shapes::IntegerShape.new(name: 'AttachmentSizeInBytes')
23
+ Attachments = Shapes::ListShape.new(name: 'Attachments')
17
24
  ChatContent = Shapes::StringShape.new(name: 'ChatContent')
18
25
  ChatContentType = Shapes::StringShape.new(name: 'ChatContentType')
19
26
  ChatItemId = Shapes::StringShape.new(name: 'ChatItemId')
20
27
  ChatItemType = Shapes::StringShape.new(name: 'ChatItemType')
21
28
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
29
+ CompleteAttachmentUploadRequest = Shapes::StructureShape.new(name: 'CompleteAttachmentUploadRequest')
30
+ CompleteAttachmentUploadResponse = Shapes::StructureShape.new(name: 'CompleteAttachmentUploadResponse')
31
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
22
32
  ConnectionCredentials = Shapes::StructureShape.new(name: 'ConnectionCredentials')
23
33
  ConnectionType = Shapes::StringShape.new(name: 'ConnectionType')
24
34
  ConnectionTypeList = Shapes::ListShape.new(name: 'ConnectionTypeList')
25
35
  ContactId = Shapes::StringShape.new(name: 'ContactId')
36
+ ContentType = Shapes::StringShape.new(name: 'ContentType')
26
37
  CreateParticipantConnectionRequest = Shapes::StructureShape.new(name: 'CreateParticipantConnectionRequest')
27
38
  CreateParticipantConnectionResponse = Shapes::StructureShape.new(name: 'CreateParticipantConnectionResponse')
28
39
  DisconnectParticipantRequest = Shapes::StructureShape.new(name: 'DisconnectParticipantRequest')
29
40
  DisconnectParticipantResponse = Shapes::StructureShape.new(name: 'DisconnectParticipantResponse')
30
41
  DisplayName = Shapes::StringShape.new(name: 'DisplayName')
42
+ GetAttachmentRequest = Shapes::StructureShape.new(name: 'GetAttachmentRequest')
43
+ GetAttachmentResponse = Shapes::StructureShape.new(name: 'GetAttachmentResponse')
31
44
  GetTranscriptRequest = Shapes::StructureShape.new(name: 'GetTranscriptRequest')
32
45
  GetTranscriptResponse = Shapes::StructureShape.new(name: 'GetTranscriptResponse')
33
46
  ISO8601Datetime = Shapes::StringShape.new(name: 'ISO8601Datetime')
@@ -38,9 +51,11 @@ module Aws::ConnectParticipant
38
51
  Message = Shapes::StringShape.new(name: 'Message')
39
52
  MostRecent = Shapes::IntegerShape.new(name: 'MostRecent')
40
53
  NextToken = Shapes::StringShape.new(name: 'NextToken')
54
+ NonEmptyClientToken = Shapes::StringShape.new(name: 'NonEmptyClientToken')
41
55
  ParticipantId = Shapes::StringShape.new(name: 'ParticipantId')
42
56
  ParticipantRole = Shapes::StringShape.new(name: 'ParticipantRole')
43
57
  ParticipantToken = Shapes::StringShape.new(name: 'ParticipantToken')
58
+ PreSignedAttachmentUrl = Shapes::StringShape.new(name: 'PreSignedAttachmentUrl')
44
59
  PreSignedConnectionUrl = Shapes::StringShape.new(name: 'PreSignedConnectionUrl')
45
60
  Reason = Shapes::StringShape.new(name: 'Reason')
46
61
  ScanDirection = Shapes::StringShape.new(name: 'ScanDirection')
@@ -48,16 +63,44 @@ module Aws::ConnectParticipant
48
63
  SendEventResponse = Shapes::StructureShape.new(name: 'SendEventResponse')
49
64
  SendMessageRequest = Shapes::StructureShape.new(name: 'SendMessageRequest')
50
65
  SendMessageResponse = Shapes::StructureShape.new(name: 'SendMessageResponse')
66
+ ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
51
67
  SortKey = Shapes::StringShape.new(name: 'SortKey')
68
+ StartAttachmentUploadRequest = Shapes::StructureShape.new(name: 'StartAttachmentUploadRequest')
69
+ StartAttachmentUploadResponse = Shapes::StructureShape.new(name: 'StartAttachmentUploadResponse')
52
70
  StartPosition = Shapes::StructureShape.new(name: 'StartPosition')
53
71
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
54
72
  Transcript = Shapes::ListShape.new(name: 'Transcript')
73
+ UploadMetadata = Shapes::StructureShape.new(name: 'UploadMetadata')
74
+ UploadMetadataSignedHeaders = Shapes::MapShape.new(name: 'UploadMetadataSignedHeaders')
75
+ UploadMetadataSignedHeadersKey = Shapes::StringShape.new(name: 'UploadMetadataSignedHeadersKey')
76
+ UploadMetadataSignedHeadersValue = Shapes::StringShape.new(name: 'UploadMetadataSignedHeadersValue')
77
+ UploadMetadataUrl = Shapes::StringShape.new(name: 'UploadMetadataUrl')
55
78
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
56
79
  Websocket = Shapes::StructureShape.new(name: 'Websocket')
57
80
 
58
81
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
59
82
  AccessDeniedException.struct_class = Types::AccessDeniedException
60
83
 
84
+ AttachmentIdList.member = Shapes::ShapeRef.new(shape: ArtifactId)
85
+
86
+ AttachmentItem.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location_name: "ContentType"))
87
+ AttachmentItem.add_member(:attachment_id, Shapes::ShapeRef.new(shape: ArtifactId, location_name: "AttachmentId"))
88
+ AttachmentItem.add_member(:attachment_name, Shapes::ShapeRef.new(shape: AttachmentName, location_name: "AttachmentName"))
89
+ AttachmentItem.add_member(:status, Shapes::ShapeRef.new(shape: ArtifactStatus, location_name: "Status"))
90
+ AttachmentItem.struct_class = Types::AttachmentItem
91
+
92
+ Attachments.member = Shapes::ShapeRef.new(shape: AttachmentItem)
93
+
94
+ CompleteAttachmentUploadRequest.add_member(:attachment_ids, Shapes::ShapeRef.new(shape: AttachmentIdList, required: true, location_name: "AttachmentIds"))
95
+ CompleteAttachmentUploadRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: NonEmptyClientToken, required: true, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
96
+ CompleteAttachmentUploadRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
97
+ CompleteAttachmentUploadRequest.struct_class = Types::CompleteAttachmentUploadRequest
98
+
99
+ CompleteAttachmentUploadResponse.struct_class = Types::CompleteAttachmentUploadResponse
100
+
101
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: Reason, required: true, location_name: "Message"))
102
+ ConflictException.struct_class = Types::ConflictException
103
+
61
104
  ConnectionCredentials.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, location_name: "ConnectionToken"))
62
105
  ConnectionCredentials.add_member(:expiry, Shapes::ShapeRef.new(shape: ISO8601Datetime, location_name: "Expiry"))
63
106
  ConnectionCredentials.struct_class = Types::ConnectionCredentials
@@ -78,6 +121,14 @@ module Aws::ConnectParticipant
78
121
 
79
122
  DisconnectParticipantResponse.struct_class = Types::DisconnectParticipantResponse
80
123
 
124
+ GetAttachmentRequest.add_member(:attachment_id, Shapes::ShapeRef.new(shape: ArtifactId, required: true, location_name: "AttachmentId"))
125
+ GetAttachmentRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
126
+ GetAttachmentRequest.struct_class = Types::GetAttachmentRequest
127
+
128
+ GetAttachmentResponse.add_member(:url, Shapes::ShapeRef.new(shape: PreSignedAttachmentUrl, location_name: "Url"))
129
+ GetAttachmentResponse.add_member(:url_expiry, Shapes::ShapeRef.new(shape: ISO8601Datetime, location_name: "UrlExpiry"))
130
+ GetAttachmentResponse.struct_class = Types::GetAttachmentResponse
131
+
81
132
  GetTranscriptRequest.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "ContactId"))
82
133
  GetTranscriptRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
83
134
  GetTranscriptRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -103,6 +154,7 @@ module Aws::ConnectParticipant
103
154
  Item.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, location_name: "ParticipantId"))
104
155
  Item.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "DisplayName"))
105
156
  Item.add_member(:participant_role, Shapes::ShapeRef.new(shape: ParticipantRole, location_name: "ParticipantRole"))
157
+ Item.add_member(:attachments, Shapes::ShapeRef.new(shape: Attachments, location_name: "Attachments"))
106
158
  Item.struct_class = Types::Item
107
159
 
108
160
  SendEventRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ChatContentType, required: true, location_name: "ContentType"))
@@ -125,6 +177,20 @@ module Aws::ConnectParticipant
125
177
  SendMessageResponse.add_member(:absolute_time, Shapes::ShapeRef.new(shape: Instant, location_name: "AbsoluteTime"))
126
178
  SendMessageResponse.struct_class = Types::SendMessageResponse
127
179
 
180
+ ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
181
+ ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
182
+
183
+ StartAttachmentUploadRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, required: true, location_name: "ContentType"))
184
+ StartAttachmentUploadRequest.add_member(:attachment_size_in_bytes, Shapes::ShapeRef.new(shape: AttachmentSizeInBytes, required: true, location_name: "AttachmentSizeInBytes"))
185
+ StartAttachmentUploadRequest.add_member(:attachment_name, Shapes::ShapeRef.new(shape: AttachmentName, required: true, location_name: "AttachmentName"))
186
+ StartAttachmentUploadRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: NonEmptyClientToken, required: true, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
187
+ StartAttachmentUploadRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
188
+ StartAttachmentUploadRequest.struct_class = Types::StartAttachmentUploadRequest
189
+
190
+ StartAttachmentUploadResponse.add_member(:attachment_id, Shapes::ShapeRef.new(shape: ArtifactId, location_name: "AttachmentId"))
191
+ StartAttachmentUploadResponse.add_member(:upload_metadata, Shapes::ShapeRef.new(shape: UploadMetadata, location_name: "UploadMetadata"))
192
+ StartAttachmentUploadResponse.struct_class = Types::StartAttachmentUploadResponse
193
+
128
194
  StartPosition.add_member(:id, Shapes::ShapeRef.new(shape: ChatItemId, location_name: "Id"))
129
195
  StartPosition.add_member(:absolute_time, Shapes::ShapeRef.new(shape: Instant, location_name: "AbsoluteTime"))
130
196
  StartPosition.add_member(:most_recent, Shapes::ShapeRef.new(shape: MostRecent, location_name: "MostRecent"))
@@ -135,6 +201,14 @@ module Aws::ConnectParticipant
135
201
 
136
202
  Transcript.member = Shapes::ShapeRef.new(shape: Item)
137
203
 
204
+ UploadMetadata.add_member(:url, Shapes::ShapeRef.new(shape: UploadMetadataUrl, location_name: "Url"))
205
+ UploadMetadata.add_member(:url_expiry, Shapes::ShapeRef.new(shape: ISO8601Datetime, location_name: "UrlExpiry"))
206
+ UploadMetadata.add_member(:headers_to_include, Shapes::ShapeRef.new(shape: UploadMetadataSignedHeaders, location_name: "HeadersToInclude"))
207
+ UploadMetadata.struct_class = Types::UploadMetadata
208
+
209
+ UploadMetadataSignedHeaders.key = Shapes::ShapeRef.new(shape: UploadMetadataSignedHeadersKey)
210
+ UploadMetadataSignedHeaders.value = Shapes::ShapeRef.new(shape: UploadMetadataSignedHeadersValue)
211
+
138
212
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: Reason, required: true, location_name: "Message"))
139
213
  ValidationException.struct_class = Types::ValidationException
140
214
 
@@ -161,6 +235,20 @@ module Aws::ConnectParticipant
161
235
  "uid" => "connectparticipant-2018-09-07",
162
236
  }
163
237
 
238
+ api.add_operation(:complete_attachment_upload, Seahorse::Model::Operation.new.tap do |o|
239
+ o.name = "CompleteAttachmentUpload"
240
+ o.http_method = "POST"
241
+ o.http_request_uri = "/participant/complete-attachment-upload"
242
+ o.input = Shapes::ShapeRef.new(shape: CompleteAttachmentUploadRequest)
243
+ o.output = Shapes::ShapeRef.new(shape: CompleteAttachmentUploadResponse)
244
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
245
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
246
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
247
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
248
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
249
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
250
+ end)
251
+
164
252
  api.add_operation(:create_participant_connection, Seahorse::Model::Operation.new.tap do |o|
165
253
  o.name = "CreateParticipantConnection"
166
254
  o.http_method = "POST"
@@ -185,6 +273,18 @@ module Aws::ConnectParticipant
185
273
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
186
274
  end)
187
275
 
276
+ api.add_operation(:get_attachment, Seahorse::Model::Operation.new.tap do |o|
277
+ o.name = "GetAttachment"
278
+ o.http_method = "POST"
279
+ o.http_request_uri = "/participant/attachment"
280
+ o.input = Shapes::ShapeRef.new(shape: GetAttachmentRequest)
281
+ o.output = Shapes::ShapeRef.new(shape: GetAttachmentResponse)
282
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
283
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
284
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
285
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
286
+ end)
287
+
188
288
  api.add_operation(:get_transcript, Seahorse::Model::Operation.new.tap do |o|
189
289
  o.name = "GetTranscript"
190
290
  o.http_method = "POST"
@@ -226,6 +326,19 @@ module Aws::ConnectParticipant
226
326
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
227
327
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
228
328
  end)
329
+
330
+ api.add_operation(:start_attachment_upload, Seahorse::Model::Operation.new.tap do |o|
331
+ o.name = "StartAttachmentUpload"
332
+ o.http_method = "POST"
333
+ o.http_request_uri = "/participant/start-attachment-upload"
334
+ o.input = Shapes::ShapeRef.new(shape: StartAttachmentUploadRequest)
335
+ o.output = Shapes::ShapeRef.new(shape: StartAttachmentUploadResponse)
336
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
337
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
338
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
339
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
340
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
341
+ end)
229
342
  end
230
343
 
231
344
  end
@@ -28,7 +28,9 @@ module Aws::ConnectParticipant
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {AccessDeniedException}
31
+ # * {ConflictException}
31
32
  # * {InternalServerException}
33
+ # * {ServiceQuotaExceededException}
32
34
  # * {ThrottlingException}
33
35
  # * {ValidationException}
34
36
  #
@@ -53,6 +55,21 @@ module Aws::ConnectParticipant
53
55
  end
54
56
  end
55
57
 
58
+ class ConflictException < ServiceError
59
+
60
+ # @param [Seahorse::Client::RequestContext] context
61
+ # @param [String] message
62
+ # @param [Aws::ConnectParticipant::Types::ConflictException] data
63
+ def initialize(context, message, data = Aws::EmptyStructure.new)
64
+ super(context, message, data)
65
+ end
66
+
67
+ # @return [String]
68
+ def message
69
+ @message || @data[:message]
70
+ end
71
+ end
72
+
56
73
  class InternalServerException < ServiceError
57
74
 
58
75
  # @param [Seahorse::Client::RequestContext] context
@@ -68,6 +85,21 @@ module Aws::ConnectParticipant
68
85
  end
69
86
  end
70
87
 
88
+ class ServiceQuotaExceededException < ServiceError
89
+
90
+ # @param [Seahorse::Client::RequestContext] context
91
+ # @param [String] message
92
+ # @param [Aws::ConnectParticipant::Types::ServiceQuotaExceededException] data
93
+ def initialize(context, message, data = Aws::EmptyStructure.new)
94
+ super(context, message, data)
95
+ end
96
+
97
+ # @return [String]
98
+ def message
99
+ @message || @data[:message]
100
+ end
101
+ end
102
+
71
103
  class ThrottlingException < ServiceError
72
104
 
73
105
  # @param [Seahorse::Client::RequestContext] context
@@ -23,6 +23,95 @@ module Aws::ConnectParticipant
23
23
  include Aws::Structure
24
24
  end
25
25
 
26
+ # The case-insensitive input to indicate standard MIME type that
27
+ # describes the format of the file that will be uploaded.
28
+ #
29
+ # @!attribute [rw] content_type
30
+ # Describes the MIME file type of the attachment. For a list of
31
+ # supported file types, see [Feature specifications][1] in the *Amazon
32
+ # Connect Administrator Guide*.
33
+ #
34
+ #
35
+ #
36
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits
37
+ # @return [String]
38
+ #
39
+ # @!attribute [rw] attachment_id
40
+ # A unique identifier for the attachment.
41
+ # @return [String]
42
+ #
43
+ # @!attribute [rw] attachment_name
44
+ # A case-sensitive name of the attachment being uploaded.
45
+ # @return [String]
46
+ #
47
+ # @!attribute [rw] status
48
+ # Status of the attachment.
49
+ # @return [String]
50
+ #
51
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/AttachmentItem AWS API Documentation
52
+ #
53
+ class AttachmentItem < Struct.new(
54
+ :content_type,
55
+ :attachment_id,
56
+ :attachment_name,
57
+ :status)
58
+ SENSITIVE = []
59
+ include Aws::Structure
60
+ end
61
+
62
+ # @note When making an API call, you may pass CompleteAttachmentUploadRequest
63
+ # data as a hash:
64
+ #
65
+ # {
66
+ # attachment_ids: ["ArtifactId"], # required
67
+ # client_token: "NonEmptyClientToken", # required
68
+ # connection_token: "ParticipantToken", # required
69
+ # }
70
+ #
71
+ # @!attribute [rw] attachment_ids
72
+ # A list of unique identifiers for the attachments.
73
+ # @return [Array<String>]
74
+ #
75
+ # @!attribute [rw] client_token
76
+ # A unique, case-sensitive identifier that you provide to ensure the
77
+ # idempotency of the request.
78
+ #
79
+ # **A suitable default value is auto-generated.** You should normally
80
+ # not need to pass this option.
81
+ # @return [String]
82
+ #
83
+ # @!attribute [rw] connection_token
84
+ # The authentication token associated with the participant's
85
+ # connection.
86
+ # @return [String]
87
+ #
88
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CompleteAttachmentUploadRequest AWS API Documentation
89
+ #
90
+ class CompleteAttachmentUploadRequest < Struct.new(
91
+ :attachment_ids,
92
+ :client_token,
93
+ :connection_token)
94
+ SENSITIVE = []
95
+ include Aws::Structure
96
+ end
97
+
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CompleteAttachmentUploadResponse AWS API Documentation
99
+ #
100
+ class CompleteAttachmentUploadResponse < Aws::EmptyStructure; end
101
+
102
+ # An attachment with that identifier is already being uploaded.
103
+ #
104
+ # @!attribute [rw] message
105
+ # @return [String]
106
+ #
107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/ConflictException AWS API Documentation
108
+ #
109
+ class ConflictException < Struct.new(
110
+ :message)
111
+ SENSITIVE = []
112
+ include Aws::Structure
113
+ end
114
+
26
115
  # Connection credentials.
27
116
  #
28
117
  # @!attribute [rw] connection_token
@@ -58,12 +147,14 @@ module Aws::ConnectParticipant
58
147
  # @return [Array<String>]
59
148
  #
60
149
  # @!attribute [rw] participant_token
61
- # Participant Token as obtained from [StartChatContact][1] API
150
+ # This is a header parameter.
151
+ #
152
+ # The Participant Token as obtained from [StartChatContact][1] API
62
153
  # response.
63
154
  #
64
155
  #
65
156
  #
66
- # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContactResponse.html
157
+ # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartChatContact.html
67
158
  # @return [String]
68
159
  #
69
160
  # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CreateParticipantConnectionRequest AWS API Documentation
@@ -127,6 +218,52 @@ module Aws::ConnectParticipant
127
218
  #
128
219
  class DisconnectParticipantResponse < Aws::EmptyStructure; end
129
220
 
221
+ # @note When making an API call, you may pass GetAttachmentRequest
222
+ # data as a hash:
223
+ #
224
+ # {
225
+ # attachment_id: "ArtifactId", # required
226
+ # connection_token: "ParticipantToken", # required
227
+ # }
228
+ #
229
+ # @!attribute [rw] attachment_id
230
+ # A unique identifier for the attachment.
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] connection_token
234
+ # The authentication token associated with the participant's
235
+ # connection.
236
+ # @return [String]
237
+ #
238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachmentRequest AWS API Documentation
239
+ #
240
+ class GetAttachmentRequest < Struct.new(
241
+ :attachment_id,
242
+ :connection_token)
243
+ SENSITIVE = []
244
+ include Aws::Structure
245
+ end
246
+
247
+ # @!attribute [rw] url
248
+ # The pre-signed URL using which file would be downloaded from Amazon
249
+ # S3 by the API caller.
250
+ # @return [String]
251
+ #
252
+ # @!attribute [rw] url_expiry
253
+ # The expiration time of the URL in ISO timestamp. It's specified in
254
+ # ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example,
255
+ # 2019-11-08T02:41:28.172Z.
256
+ # @return [String]
257
+ #
258
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachmentResponse AWS API Documentation
259
+ #
260
+ class GetAttachmentResponse < Struct.new(
261
+ :url,
262
+ :url_expiry)
263
+ SENSITIVE = []
264
+ include Aws::Structure
265
+ end
266
+
130
267
  # @note When making an API call, you may pass GetTranscriptRequest
131
268
  # data as a hash:
132
269
  #
@@ -266,6 +403,10 @@ module Aws::ConnectParticipant
266
403
  # system.
267
404
  # @return [String]
268
405
  #
406
+ # @!attribute [rw] attachments
407
+ # Provides information about the attachments.
408
+ # @return [Array<Types::AttachmentItem>]
409
+ #
269
410
  # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/Item AWS API Documentation
270
411
  #
271
412
  class Item < Struct.new(
@@ -276,7 +417,8 @@ module Aws::ConnectParticipant
276
417
  :type,
277
418
  :participant_id,
278
419
  :display_name,
279
- :participant_role)
420
+ :participant_role,
421
+ :attachments)
280
422
  SENSITIVE = []
281
423
  include Aws::Structure
282
424
  end
@@ -409,6 +551,90 @@ module Aws::ConnectParticipant
409
551
  include Aws::Structure
410
552
  end
411
553
 
554
+ # The number of attachments per contact exceeds the quota.
555
+ #
556
+ # @!attribute [rw] message
557
+ # @return [String]
558
+ #
559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/ServiceQuotaExceededException AWS API Documentation
560
+ #
561
+ class ServiceQuotaExceededException < Struct.new(
562
+ :message)
563
+ SENSITIVE = []
564
+ include Aws::Structure
565
+ end
566
+
567
+ # @note When making an API call, you may pass StartAttachmentUploadRequest
568
+ # data as a hash:
569
+ #
570
+ # {
571
+ # content_type: "ContentType", # required
572
+ # attachment_size_in_bytes: 1, # required
573
+ # attachment_name: "AttachmentName", # required
574
+ # client_token: "NonEmptyClientToken", # required
575
+ # connection_token: "ParticipantToken", # required
576
+ # }
577
+ #
578
+ # @!attribute [rw] content_type
579
+ # Describes the MIME file type of the attachment. For a list of
580
+ # supported file types, see [Feature specifications][1] in the *Amazon
581
+ # Connect Administrator Guide*.
582
+ #
583
+ #
584
+ #
585
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] attachment_size_in_bytes
589
+ # The size of the attachment in bytes.
590
+ # @return [Integer]
591
+ #
592
+ # @!attribute [rw] attachment_name
593
+ # A case-sensitive name of the attachment being uploaded.
594
+ # @return [String]
595
+ #
596
+ # @!attribute [rw] client_token
597
+ # A unique case sensitive identifier to support idempotency of
598
+ # request.
599
+ #
600
+ # **A suitable default value is auto-generated.** You should normally
601
+ # not need to pass this option.
602
+ # @return [String]
603
+ #
604
+ # @!attribute [rw] connection_token
605
+ # The authentication token associated with the participant's
606
+ # connection.
607
+ # @return [String]
608
+ #
609
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/StartAttachmentUploadRequest AWS API Documentation
610
+ #
611
+ class StartAttachmentUploadRequest < Struct.new(
612
+ :content_type,
613
+ :attachment_size_in_bytes,
614
+ :attachment_name,
615
+ :client_token,
616
+ :connection_token)
617
+ SENSITIVE = []
618
+ include Aws::Structure
619
+ end
620
+
621
+ # @!attribute [rw] attachment_id
622
+ # A unique identifier for the attachment.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] upload_metadata
626
+ # Fields to be used while uploading the attachment.
627
+ # @return [Types::UploadMetadata]
628
+ #
629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/StartAttachmentUploadResponse AWS API Documentation
630
+ #
631
+ class StartAttachmentUploadResponse < Struct.new(
632
+ :attachment_id,
633
+ :upload_metadata)
634
+ SENSITIVE = []
635
+ include Aws::Structure
636
+ end
637
+
412
638
  # A filtering option for where to start. For example, if you sent 100
413
639
  # messages, start with message 50.
414
640
  #
@@ -460,6 +686,33 @@ module Aws::ConnectParticipant
460
686
  include Aws::Structure
461
687
  end
462
688
 
689
+ # Fields to be used while uploading the attachment.
690
+ #
691
+ # @!attribute [rw] url
692
+ # The pre-signed URL using which file would be downloaded from Amazon
693
+ # S3 by the API caller.
694
+ # @return [String]
695
+ #
696
+ # @!attribute [rw] url_expiry
697
+ # The expiration time of the URL in ISO timestamp. It's specified in
698
+ # ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example,
699
+ # 2019-11-08T02:41:28.172Z.
700
+ # @return [String]
701
+ #
702
+ # @!attribute [rw] headers_to_include
703
+ # The headers to be provided while uploading the file to the URL.
704
+ # @return [Hash<String,String>]
705
+ #
706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/UploadMetadata AWS API Documentation
707
+ #
708
+ class UploadMetadata < Struct.new(
709
+ :url,
710
+ :url_expiry,
711
+ :headers_to_include)
712
+ SENSITIVE = []
713
+ include Aws::Structure
714
+ end
715
+
463
716
  # The input fails to satisfy the constraints specified by Amazon
464
717
  # Connect.
465
718
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-connectparticipant
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.0
4
+ version: 1.9.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: 2020-09-30 00:00:00.000000000 Z
11
+ date: 2020-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core