updateDataSource method
- required DataSourceConfiguration dataSourceConfiguration,
- required String dataSourceId,
- required String knowledgeBaseId,
- required String name,
- DataDeletionPolicy? dataDeletionPolicy,
- String? description,
- ServerSideEncryptionConfiguration? serverSideEncryptionConfiguration,
- VectorIngestionConfiguration? vectorIngestionConfiguration,
Updates the configurations for a data source connector.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter dataSourceConfiguration :
The connection configuration for the data source that you want to update.
Parameter dataSourceId :
The unique identifier of the data source.
Parameter knowledgeBaseId :
The unique identifier of the knowledge base for the data source.
Parameter name :
Specifies a new name for the data source.
Parameter dataDeletionPolicy :
The data deletion policy for the data source that you want to update.
Parameter description :
Specifies a new description for the data source.
Parameter serverSideEncryptionConfiguration :
Contains details about server-side encryption of the data source.
Parameter vectorIngestionConfiguration :
Contains details about how to ingest the documents in the data source.
Implementation
Future<UpdateDataSourceResponse> updateDataSource({
required DataSourceConfiguration dataSourceConfiguration,
required String dataSourceId,
required String knowledgeBaseId,
required String name,
DataDeletionPolicy? dataDeletionPolicy,
String? description,
ServerSideEncryptionConfiguration? serverSideEncryptionConfiguration,
VectorIngestionConfiguration? vectorIngestionConfiguration,
}) async {
final $payload = <String, dynamic>{
'dataSourceConfiguration': dataSourceConfiguration,
'name': name,
if (dataDeletionPolicy != null)
'dataDeletionPolicy': dataDeletionPolicy.value,
if (description != null) 'description': description,
if (serverSideEncryptionConfiguration != null)
'serverSideEncryptionConfiguration': serverSideEncryptionConfiguration,
if (vectorIngestionConfiguration != null)
'vectorIngestionConfiguration': vectorIngestionConfiguration,
};
final response = await _protocol.send(
payload: $payload,
method: 'PUT',
requestUri:
'/knowledgebases/${Uri.encodeComponent(knowledgeBaseId)}/datasources/${Uri.encodeComponent(dataSourceId)}',
exceptionFnMap: _exceptionFns,
);
return UpdateDataSourceResponse.fromJson(response);
}