aws-sdk-qbusiness 1.44.0 → 1.46.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: ce0787440b307f790e00c242cb19153db7d5cf8129fd75bbc11a0942948ba978
4
- data.tar.gz: 5a5736fce960d92ee78c95ba0a8f0db09702bd544b59d86b770c6e97912ebab3
3
+ metadata.gz: 6ee160372a0fedf8d85b3ae09be272eb3ae6a271f19817fb5aec805adc06fc89
4
+ data.tar.gz: 026b72d9666cc29640878772454f2a31a4623b8cf24f0f042dd747416c76b0d3
5
5
  SHA512:
6
- metadata.gz: 1035e6e7438ac3200c3fcd86aff5a744bf56d22d60265ee9d227ed56a21c55b87059a43ffc1dcba57786e9b5cbc9ea8a594e052096e1df0847f9a36641e46ccc
7
- data.tar.gz: 5b8979035cedaf2e58f626dae4633e5fba9bf28cb3b971c9dd6d1fcbea1c01aa2c4f1e71f1493acec6f35a69c058fdd11efdbb879e8bcd4763c56423b7baaaaa
6
+ metadata.gz: 0e7dfaaeeeb7e39aaf95cbfd5915079b2dec2034779874d54fdda243fb64e8349356c0328ac3fd6fb9a7404e673641cd2255afa03e180c80b362e9383e8f635f
7
+ data.tar.gz: ff803217ccb31ca95265bbe515aa1b2e3cc0cea96eaab6132f66482660c2a64bb7e796cf710918a6b63b13a282bade219a8b93e721fc03175f3e9aabf0ebb5fa
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.46.0 (2025-08-06)
5
+ ------------------
6
+
7
+ * Feature - Amazon Q Business now supports the GetDocumentContent() API that enables customers to securely access the source documents through clickable citation links at query time
8
+
9
+ 1.45.0 (2025-08-04)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.44.0 (2025-07-31)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.44.0
1
+ 1.46.0
@@ -88,8 +88,8 @@ module Aws::QBusiness
88
88
  # class name or an instance of a plugin class.
89
89
  #
90
90
  # @option options [required, Aws::CredentialProvider] :credentials
91
- # Your AWS credentials used for authentication. This can be an instance of any one of the
92
- # following classes:
91
+ # Your AWS credentials used for authentication. This can be any class that includes and implements
92
+ # `Aws::CredentialProvider`, or instance of any one of the following classes:
93
93
  #
94
94
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
95
95
  # credentials.
@@ -117,8 +117,7 @@ module Aws::QBusiness
117
117
  # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
118
118
  # from the Cognito Identity service.
119
119
  #
120
- # When `:credentials` are not configured directly, the following
121
- # locations will be searched for credentials:
120
+ # When `:credentials` are not configured directly, the following locations will be searched for credentials:
122
121
  #
123
122
  # * `Aws.config[:credentials]`
124
123
  #
@@ -132,12 +131,10 @@ module Aws::QBusiness
132
131
  #
133
132
  # * `~/.aws/config`
134
133
  #
135
- # * EC2/ECS IMDS instance profile - When used by default, the timeouts
136
- # are very aggressive. Construct and pass an instance of
137
- # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
138
- # enable retries and extended timeouts. Instance profile credential
139
- # fetching can be disabled by setting `ENV['AWS_EC2_METADATA_DISABLED']`
140
- # to `true`.
134
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive.
135
+ # Construct and pass an instance of `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
136
+ # enable retries and extended timeouts. Instance profile credential fetching can be disabled by
137
+ # setting `ENV['AWS_EC2_METADATA_DISABLED']` to `true`.
141
138
  #
142
139
  # @option options [required, String] :region
143
140
  # The AWS region to connect to. The configured `:region` is
@@ -337,8 +334,8 @@ module Aws::QBusiness
337
334
  # `Aws::Telemetry::OTelProvider` for telemetry provider.
338
335
  #
339
336
  # @option options [Aws::TokenProvider] :token_provider
340
- # Your Bearer token used for authentication. This can be an instance of any one of the
341
- # following classes:
337
+ # Your Bearer token used for authentication. This can be any class that includes and implements
338
+ # `Aws::TokenProvider`, or instance of any one of the following classes:
342
339
  #
343
340
  # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
344
341
  # tokens.
@@ -603,6 +600,9 @@ module Aws::QBusiness
603
600
  # event.source_attributions[0].text_message_segments[0].source_details.video_source_details.start_time_milliseconds #=> Integer
604
601
  # event.source_attributions[0].text_message_segments[0].source_details.video_source_details.end_time_milliseconds #=> Integer
605
602
  # event.source_attributions[0].text_message_segments[0].source_details.video_source_details.video_extraction_type #=> String, one of "TRANSCRIPT", "SUMMARY"
603
+ # event.source_attributions[0].document_id #=> String
604
+ # event.source_attributions[0].index_id #=> String
605
+ # event.source_attributions[0].datasource_id #=> String
606
606
  # event.final_text_message #=> String
607
607
  #
608
608
  # # For :action_review_event event available at #on_action_review_event_event callback and response eventstream enumerator:
@@ -683,7 +683,7 @@ module Aws::QBusiness
683
683
  tracer: tracer
684
684
  )
685
685
  context[:gem_name] = 'aws-sdk-qbusiness'
686
- context[:gem_version] = '1.44.0'
686
+ context[:gem_version] = '1.46.0'
687
687
  Seahorse::Client::Request.new(handlers, context)
688
688
  end
689
689
 
@@ -97,8 +97,8 @@ module Aws::QBusiness
97
97
  # class name or an instance of a plugin class.
98
98
  #
99
99
  # @option options [required, Aws::CredentialProvider] :credentials
100
- # Your AWS credentials used for authentication. This can be an instance of any one of the
101
- # following classes:
100
+ # Your AWS credentials used for authentication. This can be any class that includes and implements
101
+ # `Aws::CredentialProvider`, or instance of any one of the following classes:
102
102
  #
103
103
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
104
104
  # credentials.
@@ -126,8 +126,7 @@ module Aws::QBusiness
126
126
  # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
127
127
  # from the Cognito Identity service.
128
128
  #
129
- # When `:credentials` are not configured directly, the following
130
- # locations will be searched for credentials:
129
+ # When `:credentials` are not configured directly, the following locations will be searched for credentials:
131
130
  #
132
131
  # * `Aws.config[:credentials]`
133
132
  #
@@ -141,12 +140,10 @@ module Aws::QBusiness
141
140
  #
142
141
  # * `~/.aws/config`
143
142
  #
144
- # * EC2/ECS IMDS instance profile - When used by default, the timeouts
145
- # are very aggressive. Construct and pass an instance of
146
- # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
147
- # enable retries and extended timeouts. Instance profile credential
148
- # fetching can be disabled by setting `ENV['AWS_EC2_METADATA_DISABLED']`
149
- # to `true`.
143
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive.
144
+ # Construct and pass an instance of `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
145
+ # enable retries and extended timeouts. Instance profile credential fetching can be disabled by
146
+ # setting `ENV['AWS_EC2_METADATA_DISABLED']` to `true`.
150
147
  #
151
148
  # @option options [required, String] :region
152
149
  # The AWS region to connect to. The configured `:region` is
@@ -388,8 +385,8 @@ module Aws::QBusiness
388
385
  # `Aws::Telemetry::OTelProvider` for telemetry provider.
389
386
  #
390
387
  # @option options [Aws::TokenProvider] :token_provider
391
- # Your Bearer token used for authentication. This can be an instance of any one of the
392
- # following classes:
388
+ # Your Bearer token used for authentication. This can be any class that includes and implements
389
+ # `Aws::TokenProvider`, or instance of any one of the following classes:
393
390
  #
394
391
  # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
395
392
  # tokens.
@@ -1076,6 +1073,9 @@ module Aws::QBusiness
1076
1073
  # resp.source_attributions[0].text_message_segments[0].source_details.video_source_details.start_time_milliseconds #=> Integer
1077
1074
  # resp.source_attributions[0].text_message_segments[0].source_details.video_source_details.end_time_milliseconds #=> Integer
1078
1075
  # resp.source_attributions[0].text_message_segments[0].source_details.video_source_details.video_extraction_type #=> String, one of "TRANSCRIPT", "SUMMARY"
1076
+ # resp.source_attributions[0].document_id #=> String
1077
+ # resp.source_attributions[0].index_id #=> String
1078
+ # resp.source_attributions[0].datasource_id #=> String
1079
1079
  # resp.failed_attachments #=> Array
1080
1080
  # resp.failed_attachments[0].name #=> String
1081
1081
  # resp.failed_attachments[0].status #=> String, one of "FAILED", "SUCCESS"
@@ -2128,9 +2128,15 @@ module Aws::QBusiness
2128
2128
  # user. For more information on subscriptions and pricing tiers, see
2129
2129
  # [Amazon Q Business pricing][1].
2130
2130
  #
2131
+ # <note markdown="1"> For an example IAM role policy for assigning subscriptions, see [Set
2132
+ # up required permissions][2] in the Amazon Q Business User Guide.
2133
+ #
2134
+ # </note>
2135
+ #
2131
2136
  #
2132
2137
  #
2133
2138
  # [1]: https://aws.amazon.com/q/business/pricing/
2139
+ # [2]: https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/setting-up.html#permissions
2134
2140
  #
2135
2141
  # @option params [required, String] :application_id
2136
2142
  # The identifier of the Amazon Q Business application the subscription
@@ -3219,6 +3225,64 @@ module Aws::QBusiness
3219
3225
  req.send_request(options)
3220
3226
  end
3221
3227
 
3228
+ # Retrieves the content of a document that was ingested into Amazon Q
3229
+ # Business. This API validates user authorization against document ACLs
3230
+ # before returning a pre-signed URL for secure document access. You can
3231
+ # download or view source documents referenced in chat responses through
3232
+ # the URL.
3233
+ #
3234
+ # @option params [required, String] :application_id
3235
+ # The unique identifier of the Amazon Q Business application containing
3236
+ # the document. This ensures the request is scoped to the correct
3237
+ # application environment and its associated security policies.
3238
+ #
3239
+ # @option params [required, String] :index_id
3240
+ # The identifier of the index where documents are indexed.
3241
+ #
3242
+ # @option params [String] :data_source_id
3243
+ # The identifier of the data source from which the document was
3244
+ # ingested. This field is not present if the document is ingested by
3245
+ # directly calling the BatchPutDocument API. If the document is from a
3246
+ # file-upload data source, the datasource will be
3247
+ # "uploaded-docs-file-stat-datasourceid".
3248
+ #
3249
+ # @option params [required, String] :document_id
3250
+ # The unique identifier of the document that is indexed via
3251
+ # BatchPutDocument API or file-upload or connector sync. It is also
3252
+ # found in chat or chatSync response.
3253
+ #
3254
+ # @option params [String] :output_format
3255
+ # Raw document outputFormat.
3256
+ #
3257
+ # @return [Types::GetDocumentContentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3258
+ #
3259
+ # * {Types::GetDocumentContentResponse#presigned_url #presigned_url} => String
3260
+ # * {Types::GetDocumentContentResponse#mime_type #mime_type} => String
3261
+ #
3262
+ # @example Request syntax with placeholder values
3263
+ #
3264
+ # resp = client.get_document_content({
3265
+ # application_id: "ApplicationId", # required
3266
+ # index_id: "IndexId", # required
3267
+ # data_source_id: "DataSourceId",
3268
+ # document_id: "DocumentId", # required
3269
+ # output_format: "RAW", # accepts RAW
3270
+ # })
3271
+ #
3272
+ # @example Response structure
3273
+ #
3274
+ # resp.presigned_url #=> String
3275
+ # resp.mime_type #=> String
3276
+ #
3277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDocumentContent AWS API Documentation
3278
+ #
3279
+ # @overload get_document_content(params = {})
3280
+ # @param [Hash] params ({})
3281
+ def get_document_content(params = {}, options = {})
3282
+ req = build_request(:get_document_content, params)
3283
+ req.send_request(options)
3284
+ end
3285
+
3222
3286
  # Describes a group by group name.
3223
3287
  #
3224
3288
  # @option params [required, String] :application_id
@@ -4319,6 +4383,9 @@ module Aws::QBusiness
4319
4383
  # resp.messages[0].source_attribution[0].text_message_segments[0].source_details.video_source_details.start_time_milliseconds #=> Integer
4320
4384
  # resp.messages[0].source_attribution[0].text_message_segments[0].source_details.video_source_details.end_time_milliseconds #=> Integer
4321
4385
  # resp.messages[0].source_attribution[0].text_message_segments[0].source_details.video_source_details.video_extraction_type #=> String, one of "TRANSCRIPT", "SUMMARY"
4386
+ # resp.messages[0].source_attribution[0].document_id #=> String
4387
+ # resp.messages[0].source_attribution[0].index_id #=> String
4388
+ # resp.messages[0].source_attribution[0].datasource_id #=> String
4322
4389
  # resp.messages[0].action_review.plugin_id #=> String
4323
4390
  # resp.messages[0].action_review.plugin_type #=> String, one of "SERVICE_NOW", "SALESFORCE", "JIRA", "ZENDESK", "CUSTOM", "QUICKSIGHT", "SERVICENOW_NOW_PLATFORM", "JIRA_CLOUD", "SALESFORCE_CRM", "ZENDESK_SUITE", "ATLASSIAN_CONFLUENCE", "GOOGLE_CALENDAR", "MICROSOFT_TEAMS", "MICROSOFT_EXCHANGE", "PAGERDUTY_ADVANCE", "SMARTSHEET", "ASANA"
4324
4391
  # resp.messages[0].action_review.payload #=> Hash
@@ -6183,7 +6250,7 @@ module Aws::QBusiness
6183
6250
  tracer: tracer
6184
6251
  )
6185
6252
  context[:gem_name] = 'aws-sdk-qbusiness'
6186
- context[:gem_version] = '1.44.0'
6253
+ context[:gem_version] = '1.46.0'
6187
6254
  Seahorse::Client::Request.new(handlers, context)
6188
6255
  end
6189
6256
 
@@ -278,6 +278,8 @@ module Aws::QBusiness
278
278
  GetDataAccessorResponse = Shapes::StructureShape.new(name: 'GetDataAccessorResponse')
279
279
  GetDataSourceRequest = Shapes::StructureShape.new(name: 'GetDataSourceRequest')
280
280
  GetDataSourceResponse = Shapes::StructureShape.new(name: 'GetDataSourceResponse')
281
+ GetDocumentContentRequest = Shapes::StructureShape.new(name: 'GetDocumentContentRequest')
282
+ GetDocumentContentResponse = Shapes::StructureShape.new(name: 'GetDocumentContentResponse')
281
283
  GetGroupRequest = Shapes::StructureShape.new(name: 'GetGroupRequest')
282
284
  GetGroupResponse = Shapes::StructureShape.new(name: 'GetGroupResponse')
283
285
  GetIndexRequest = Shapes::StructureShape.new(name: 'GetIndexRequest')
@@ -429,6 +431,7 @@ module Aws::QBusiness
429
431
  OrchestrationConfiguration = Shapes::StructureShape.new(name: 'OrchestrationConfiguration')
430
432
  OrchestrationControl = Shapes::StringShape.new(name: 'OrchestrationControl')
431
433
  Origin = Shapes::StringShape.new(name: 'Origin')
434
+ OutputFormat = Shapes::StringShape.new(name: 'OutputFormat')
432
435
  Payload = Shapes::StringShape.new(name: 'Payload')
433
436
  PermissionCondition = Shapes::StructureShape.new(name: 'PermissionCondition')
434
437
  PermissionConditionKey = Shapes::StringShape.new(name: 'PermissionConditionKey')
@@ -1560,6 +1563,17 @@ module Aws::QBusiness
1560
1563
  GetDataSourceResponse.add_member(:media_extraction_configuration, Shapes::ShapeRef.new(shape: MediaExtractionConfiguration, location_name: "mediaExtractionConfiguration"))
1561
1564
  GetDataSourceResponse.struct_class = Types::GetDataSourceResponse
1562
1565
 
1566
+ GetDocumentContentRequest.add_member(:application_id, Shapes::ShapeRef.new(shape: ApplicationId, required: true, location: "uri", location_name: "applicationId"))
1567
+ GetDocumentContentRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location: "uri", location_name: "indexId"))
1568
+ GetDocumentContentRequest.add_member(:data_source_id, Shapes::ShapeRef.new(shape: DataSourceId, location: "querystring", location_name: "dataSourceId"))
1569
+ GetDocumentContentRequest.add_member(:document_id, Shapes::ShapeRef.new(shape: DocumentId, required: true, location: "uri", location_name: "documentId"))
1570
+ GetDocumentContentRequest.add_member(:output_format, Shapes::ShapeRef.new(shape: OutputFormat, location: "querystring", location_name: "outputFormat"))
1571
+ GetDocumentContentRequest.struct_class = Types::GetDocumentContentRequest
1572
+
1573
+ GetDocumentContentResponse.add_member(:presigned_url, Shapes::ShapeRef.new(shape: String, required: true, location_name: "presignedUrl"))
1574
+ GetDocumentContentResponse.add_member(:mime_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "mimeType"))
1575
+ GetDocumentContentResponse.struct_class = Types::GetDocumentContentResponse
1576
+
1563
1577
  GetGroupRequest.add_member(:application_id, Shapes::ShapeRef.new(shape: ApplicationId, required: true, location: "uri", location_name: "applicationId"))
1564
1578
  GetGroupRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location: "uri", location_name: "indexId"))
1565
1579
  GetGroupRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: GroupName, required: true, location: "uri", location_name: "groupName"))
@@ -2202,6 +2216,9 @@ module Aws::QBusiness
2202
2216
  SourceAttribution.add_member(:citation_number, Shapes::ShapeRef.new(shape: Integer, location_name: "citationNumber"))
2203
2217
  SourceAttribution.add_member(:updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "updatedAt"))
2204
2218
  SourceAttribution.add_member(:text_message_segments, Shapes::ShapeRef.new(shape: TextSegmentList, location_name: "textMessageSegments"))
2219
+ SourceAttribution.add_member(:document_id, Shapes::ShapeRef.new(shape: String, location_name: "documentId"))
2220
+ SourceAttribution.add_member(:index_id, Shapes::ShapeRef.new(shape: String, location_name: "indexId"))
2221
+ SourceAttribution.add_member(:datasource_id, Shapes::ShapeRef.new(shape: String, location_name: "datasourceId"))
2205
2222
  SourceAttribution.struct_class = Types::SourceAttribution
2206
2223
 
2207
2224
  SourceAttributions.member = Shapes::ShapeRef.new(shape: SourceAttribution)
@@ -3049,6 +3066,19 @@ module Aws::QBusiness
3049
3066
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
3050
3067
  end)
3051
3068
 
3069
+ api.add_operation(:get_document_content, Seahorse::Model::Operation.new.tap do |o|
3070
+ o.name = "GetDocumentContent"
3071
+ o.http_method = "GET"
3072
+ o.http_request_uri = "/applications/{applicationId}/index/{indexId}/documents/{documentId}/content"
3073
+ o.input = Shapes::ShapeRef.new(shape: GetDocumentContentRequest)
3074
+ o.output = Shapes::ShapeRef.new(shape: GetDocumentContentResponse)
3075
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
3076
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
3077
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
3078
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
3079
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
3080
+ end)
3081
+
3052
3082
  api.add_operation(:get_group, Seahorse::Model::Operation.new.tap do |o|
3053
3083
  o.name = "GetGroup"
3054
3084
  o.http_method = "GET"
@@ -4028,6 +4028,17 @@ module Aws::QBusiness
4028
4028
 
4029
4029
  # The contents of a document.
4030
4030
  #
4031
+ # <note markdown="1"> Documents have size limitations. The maximum file size for a document
4032
+ # is 50 MB. The maximum amount of text that can be extracted from a
4033
+ # single document is 5 MB. For more information, see [Supported document
4034
+ # formats in Amazon Q Business][1].
4035
+ #
4036
+ # </note>
4037
+ #
4038
+ #
4039
+ #
4040
+ # [1]: https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/doc-types.html
4041
+ #
4031
4042
  # @note DocumentContent is a union - when making an API calls you must set exactly one of the members.
4032
4043
  #
4033
4044
  # @!attribute [rw] blob
@@ -4797,6 +4808,69 @@ module Aws::QBusiness
4797
4808
  include Aws::Structure
4798
4809
  end
4799
4810
 
4811
+ # @!attribute [rw] application_id
4812
+ # The unique identifier of the Amazon Q Business application
4813
+ # containing the document. This ensures the request is scoped to the
4814
+ # correct application environment and its associated security
4815
+ # policies.
4816
+ # @return [String]
4817
+ #
4818
+ # @!attribute [rw] index_id
4819
+ # The identifier of the index where documents are indexed.
4820
+ # @return [String]
4821
+ #
4822
+ # @!attribute [rw] data_source_id
4823
+ # The identifier of the data source from which the document was
4824
+ # ingested. This field is not present if the document is ingested by
4825
+ # directly calling the BatchPutDocument API. If the document is from a
4826
+ # file-upload data source, the datasource will be
4827
+ # "uploaded-docs-file-stat-datasourceid".
4828
+ # @return [String]
4829
+ #
4830
+ # @!attribute [rw] document_id
4831
+ # The unique identifier of the document that is indexed via
4832
+ # BatchPutDocument API or file-upload or connector sync. It is also
4833
+ # found in chat or chatSync response.
4834
+ # @return [String]
4835
+ #
4836
+ # @!attribute [rw] output_format
4837
+ # Raw document outputFormat.
4838
+ # @return [String]
4839
+ #
4840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDocumentContentRequest AWS API Documentation
4841
+ #
4842
+ class GetDocumentContentRequest < Struct.new(
4843
+ :application_id,
4844
+ :index_id,
4845
+ :data_source_id,
4846
+ :document_id,
4847
+ :output_format)
4848
+ SENSITIVE = []
4849
+ include Aws::Structure
4850
+ end
4851
+
4852
+ # @!attribute [rw] presigned_url
4853
+ # A pre-signed URL that provides temporary access to download the
4854
+ # document content directly from Amazon Q Business. The URL expires
4855
+ # after 5 minutes for security purposes. This URL is generated only
4856
+ # after successful ACL validation.
4857
+ # @return [String]
4858
+ #
4859
+ # @!attribute [rw] mime_type
4860
+ # The MIME type of the document content (e.g., application/pdf,
4861
+ # text/plain,
4862
+ # application/vnd.openxmlformats-officedocument.wordprocessingml.document).
4863
+ # @return [String]
4864
+ #
4865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDocumentContentResponse AWS API Documentation
4866
+ #
4867
+ class GetDocumentContentResponse < Struct.new(
4868
+ :presigned_url,
4869
+ :mime_type)
4870
+ SENSITIVE = []
4871
+ include Aws::Structure
4872
+ end
4873
+
4800
4874
  # @!attribute [rw] application_id
4801
4875
  # The identifier of the application id the group is attached to.
4802
4876
  # @return [String]
@@ -8018,6 +8092,29 @@ module Aws::QBusiness
8018
8092
  # attribution.
8019
8093
  # @return [Array<Types::TextSegment>]
8020
8094
  #
8095
+ # @!attribute [rw] document_id
8096
+ # The unique identifier of the source document used in the citation,
8097
+ # obtained from the Amazon Q Business index during chat response
8098
+ # generation. This ID is used as input to the `GetDocumentContent` API
8099
+ # to retrieve the actual document content for user verification.
8100
+ # @return [String]
8101
+ #
8102
+ # @!attribute [rw] index_id
8103
+ # The identifier of the index containing the source document's
8104
+ # metadata and access control information. This links the citation
8105
+ # back to the specific Amazon Q Business index where the document's
8106
+ # searchable content and permissions are stored.
8107
+ # @return [String]
8108
+ #
8109
+ # @!attribute [rw] datasource_id
8110
+ # The identifier of the data source from which the document was
8111
+ # ingested. This field is not present if the document is ingested by
8112
+ # directly calling the BatchPutDocument API (similar to
8113
+ # checkDocumentAccess). If the document is from a file-upload data
8114
+ # source, the datasource will be
8115
+ # "uploaded-docs-file-stat-datasourceid".
8116
+ # @return [String]
8117
+ #
8021
8118
  # @see http://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/SourceAttribution AWS API Documentation
8022
8119
  #
8023
8120
  class SourceAttribution < Struct.new(
@@ -8026,7 +8123,10 @@ module Aws::QBusiness
8026
8123
  :url,
8027
8124
  :citation_number,
8028
8125
  :updated_at,
8029
- :text_message_segments)
8126
+ :text_message_segments,
8127
+ :document_id,
8128
+ :index_id,
8129
+ :datasource_id)
8030
8130
  SENSITIVE = []
8031
8131
  include Aws::Structure
8032
8132
  end
@@ -57,7 +57,7 @@ module Aws::QBusiness
57
57
  autoload :AsyncClient, 'aws-sdk-qbusiness/async_client'
58
58
  autoload :EventStreams, 'aws-sdk-qbusiness/event_streams'
59
59
 
60
- GEM_VERSION = '1.44.0'
60
+ GEM_VERSION = '1.46.0'
61
61
 
62
62
  end
63
63
 
data/sig/client.rbs CHANGED
@@ -1141,6 +1141,21 @@ module Aws
1141
1141
  ) -> _GetDataSourceResponseSuccess
1142
1142
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetDataSourceResponseSuccess
1143
1143
 
1144
+ interface _GetDocumentContentResponseSuccess
1145
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetDocumentContentResponse]
1146
+ def presigned_url: () -> ::String
1147
+ def mime_type: () -> ::String
1148
+ end
1149
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/QBusiness/Client.html#get_document_content-instance_method
1150
+ def get_document_content: (
1151
+ application_id: ::String,
1152
+ index_id: ::String,
1153
+ ?data_source_id: ::String,
1154
+ document_id: ::String,
1155
+ ?output_format: ("RAW")
1156
+ ) -> _GetDocumentContentResponseSuccess
1157
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetDocumentContentResponseSuccess
1158
+
1144
1159
  interface _GetGroupResponseSuccess
1145
1160
  include ::Seahorse::Client::_ResponseSuccess[Types::GetGroupResponse]
1146
1161
  def status: () -> Types::GroupStatusDetail
data/sig/types.rbs CHANGED
@@ -1201,6 +1201,21 @@ module Aws::QBusiness
1201
1201
  SENSITIVE: []
1202
1202
  end
1203
1203
 
1204
+ class GetDocumentContentRequest
1205
+ attr_accessor application_id: ::String
1206
+ attr_accessor index_id: ::String
1207
+ attr_accessor data_source_id: ::String
1208
+ attr_accessor document_id: ::String
1209
+ attr_accessor output_format: ("RAW")
1210
+ SENSITIVE: []
1211
+ end
1212
+
1213
+ class GetDocumentContentResponse
1214
+ attr_accessor presigned_url: ::String
1215
+ attr_accessor mime_type: ::String
1216
+ SENSITIVE: []
1217
+ end
1218
+
1204
1219
  class GetGroupRequest
1205
1220
  attr_accessor application_id: ::String
1206
1221
  attr_accessor index_id: ::String
@@ -2056,6 +2071,9 @@ module Aws::QBusiness
2056
2071
  attr_accessor citation_number: ::Integer
2057
2072
  attr_accessor updated_at: ::Time
2058
2073
  attr_accessor text_message_segments: ::Array[Types::TextSegment]
2074
+ attr_accessor document_id: ::String
2075
+ attr_accessor index_id: ::String
2076
+ attr_accessor datasource_id: ::String
2059
2077
  SENSITIVE: []
2060
2078
  end
2061
2079
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-qbusiness
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.44.0
4
+ version: 1.46.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services