Module: Aws::S3Vectors::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-s3vectors/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

AccessDeniedException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AccessDeniedException')
Boolean =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'Boolean')
ConflictException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ConflictException')
CreateIndexInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateIndexInput')
CreateIndexOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateIndexOutput')
CreateVectorBucketInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateVectorBucketInput')
CreateVectorBucketOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateVectorBucketOutput')
DataType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DataType')
DeleteIndexInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteIndexInput')
DeleteIndexOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteIndexOutput')
DeleteVectorBucketInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorBucketInput')
DeleteVectorBucketOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorBucketOutput')
DeleteVectorBucketPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorBucketPolicyInput')
DeleteVectorBucketPolicyOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorBucketPolicyOutput')
DeleteVectorsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorsInput')
DeleteVectorsInputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DeleteVectorsInputList')
DeleteVectorsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVectorsOutput')
Dimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Dimension')
DistanceMetric =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DistanceMetric')
Document =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::DocumentShape.new(name: 'Document', document: true)
EncryptionConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EncryptionConfiguration')
ExceptionMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ExceptionMessage')
Float =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::FloatShape.new(name: 'Float')
Float32VectorData =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Float32VectorData')
GetIndexInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetIndexInput')
GetIndexOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetIndexOutput')
GetOutputVector =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetOutputVector')
GetVectorBucketInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorBucketInput')
GetVectorBucketOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorBucketOutput')
GetVectorBucketPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorBucketPolicyInput')
GetVectorBucketPolicyOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorBucketPolicyOutput')
GetVectorsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorsInput')
GetVectorsInputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'GetVectorsInputList')
GetVectorsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVectorsOutput')
GetVectorsOutputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'GetVectorsOutputList')
Index =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Index')
IndexArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IndexArn')
IndexName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IndexName')
IndexSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'IndexSummary')
InternalServerException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InternalServerException')
KmsDisabledException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'KmsDisabledException')
KmsInvalidKeyUsageException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'KmsInvalidKeyUsageException')
KmsInvalidStateException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'KmsInvalidStateException')
KmsKeyArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'KmsKeyArn')
KmsNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'KmsNotFoundException')
ListIndexesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListIndexesInput')
ListIndexesMaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListIndexesMaxResults')
ListIndexesNextToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ListIndexesNextToken')
ListIndexesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListIndexesOutput')
ListIndexesOutputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListIndexesOutputList')
ListIndexesPrefix =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ListIndexesPrefix')
ListOutputVector =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListOutputVector')
ListTagsForResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceInput')
ListTagsForResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
ListVectorBucketsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListVectorBucketsInput')
ListVectorBucketsMaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListVectorBucketsMaxResults')
ListVectorBucketsNextToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ListVectorBucketsNextToken')
ListVectorBucketsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListVectorBucketsOutput')
ListVectorBucketsOutputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListVectorBucketsOutputList')
ListVectorBucketsPrefix =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ListVectorBucketsPrefix')
ListVectorsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListVectorsInput')
ListVectorsMaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListVectorsMaxResults')
ListVectorsNextToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ListVectorsNextToken')
ListVectorsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListVectorsOutput')
ListVectorsOutputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListVectorsOutputList')
ListVectorsSegmentCount =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListVectorsSegmentCount')
ListVectorsSegmentIndex =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListVectorsSegmentIndex')
MetadataConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MetadataConfiguration')
MetadataKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MetadataKey')
NonFilterableMetadataKeys =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'NonFilterableMetadataKeys')
NotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NotFoundException')
PutInputVector =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutInputVector')
PutVectorBucketPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutVectorBucketPolicyInput')
PutVectorBucketPolicyOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutVectorBucketPolicyOutput')
PutVectorsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutVectorsInput')
PutVectorsInputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'PutVectorsInputList')
PutVectorsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutVectorsOutput')
QueryOutputVector =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'QueryOutputVector')
QueryVectorsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'QueryVectorsInput')
QueryVectorsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'QueryVectorsOutput')
QueryVectorsOutputList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'QueryVectorsOutputList')
RequestTimeoutException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RequestTimeoutException')
ResourceARN =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceARN')
ServiceQuotaExceededException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
ServiceUnavailableException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ServiceUnavailableException')
SseType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SseType')
String =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'String')
TagKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagKey')
TagKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagKeyList')
TagResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceInput')
TagResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceOutput')
TagValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagValue')
TagsMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'TagsMap')
Timestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::TimestampShape.new(name: 'Timestamp')
TooManyRequestsException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TooManyRequestsException')
TopK =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'TopK')
UntagResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceInput')
UntagResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceOutput')
ValidationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ValidationException')
ValidationExceptionField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ValidationExceptionField')
ValidationExceptionFieldList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
VectorBucket =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VectorBucket')
VectorBucketArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VectorBucketArn')
VectorBucketName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VectorBucketName')
VectorBucketPolicy =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VectorBucketPolicy')
VectorBucketSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VectorBucketSummary')
VectorData =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::UnionShape.new(name: 'VectorData')
VectorKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VectorKey')
VectorMetadata =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::DocumentShape.new(name: 'VectorMetadata', document: true)
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2025-07-15"

  api. = {
    "apiVersion" => "2025-07-15",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "s3vectors",
    "protocol" => "rest-json",
    "protocols" => ["rest-json"],
    "serviceFullName" => "Amazon S3 Vectors",
    "serviceId" => "S3Vectors",
    "signatureVersion" => "v4",
    "signingName" => "s3vectors",
    "uid" => "s3vectors-2025-07-15",
  }

  api.add_operation(:create_index, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateIndex"
    o.http_method = "POST"
    o.http_request_uri = "/CreateIndex"
    o.input = Shapes::ShapeRef.new(shape: CreateIndexInput)
    o.output = Shapes::ShapeRef.new(shape: CreateIndexOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
  end)

  api.add_operation(:create_vector_bucket, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateVectorBucket"
    o.http_method = "POST"
    o.http_request_uri = "/CreateVectorBucket"
    o.input = Shapes::ShapeRef.new(shape: CreateVectorBucketInput)
    o.output = Shapes::ShapeRef.new(shape: CreateVectorBucketOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
  end)

  api.add_operation(:delete_index, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteIndex"
    o.http_method = "POST"
    o.http_request_uri = "/DeleteIndex"
    o.input = Shapes::ShapeRef.new(shape: DeleteIndexInput)
    o.output = Shapes::ShapeRef.new(shape: DeleteIndexOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:delete_vector_bucket, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteVectorBucket"
    o.http_method = "POST"
    o.http_request_uri = "/DeleteVectorBucket"
    o.input = Shapes::ShapeRef.new(shape: DeleteVectorBucketInput)
    o.output = Shapes::ShapeRef.new(shape: DeleteVectorBucketOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:delete_vector_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteVectorBucketPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/DeleteVectorBucketPolicy"
    o.input = Shapes::ShapeRef.new(shape: DeleteVectorBucketPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: DeleteVectorBucketPolicyOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:delete_vectors, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteVectors"
    o.http_method = "POST"
    o.http_request_uri = "/DeleteVectors"
    o.input = Shapes::ShapeRef.new(shape: DeleteVectorsInput)
    o.output = Shapes::ShapeRef.new(shape: DeleteVectorsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidKeyUsageException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidStateException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: KmsNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: KmsDisabledException)
  end)

  api.add_operation(:get_index, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetIndex"
    o.http_method = "POST"
    o.http_request_uri = "/GetIndex"
    o.input = Shapes::ShapeRef.new(shape: GetIndexInput)
    o.output = Shapes::ShapeRef.new(shape: GetIndexOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:get_vector_bucket, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetVectorBucket"
    o.http_method = "POST"
    o.http_request_uri = "/GetVectorBucket"
    o.input = Shapes::ShapeRef.new(shape: GetVectorBucketInput)
    o.output = Shapes::ShapeRef.new(shape: GetVectorBucketOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:get_vector_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetVectorBucketPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/GetVectorBucketPolicy"
    o.input = Shapes::ShapeRef.new(shape: GetVectorBucketPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: GetVectorBucketPolicyOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:get_vectors, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetVectors"
    o.http_method = "POST"
    o.http_request_uri = "/GetVectors"
    o.input = Shapes::ShapeRef.new(shape: GetVectorsInput)
    o.output = Shapes::ShapeRef.new(shape: GetVectorsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidKeyUsageException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidStateException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: KmsNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: KmsDisabledException)
  end)

  api.add_operation(:list_indexes, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListIndexes"
    o.http_method = "POST"
    o.http_request_uri = "/ListIndexes"
    o.input = Shapes::ShapeRef.new(shape: ListIndexesInput)
    o.output = Shapes::ShapeRef.new(shape: ListIndexesOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTagsForResource"
    o.http_method = "GET"
    o.http_request_uri = "/tags/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceInput)
    o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:list_vector_buckets, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListVectorBuckets"
    o.http_method = "POST"
    o.http_request_uri = "/ListVectorBuckets"
    o.input = Shapes::ShapeRef.new(shape: ListVectorBucketsInput)
    o.output = Shapes::ShapeRef.new(shape: ListVectorBucketsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_vectors, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListVectors"
    o.http_method = "POST"
    o.http_request_uri = "/ListVectors"
    o.input = Shapes::ShapeRef.new(shape: ListVectorsInput)
    o.output = Shapes::ShapeRef.new(shape: ListVectorsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:put_vector_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutVectorBucketPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/PutVectorBucketPolicy"
    o.input = Shapes::ShapeRef.new(shape: PutVectorBucketPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: PutVectorBucketPolicyOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
  end)

  api.add_operation(:put_vectors, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutVectors"
    o.http_method = "POST"
    o.http_request_uri = "/PutVectors"
    o.input = Shapes::ShapeRef.new(shape: PutVectorsInput)
    o.output = Shapes::ShapeRef.new(shape: PutVectorsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidKeyUsageException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidStateException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: KmsNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
    o.errors << Shapes::ShapeRef.new(shape: KmsDisabledException)
  end)

  api.add_operation(:query_vectors, Seahorse::Model::Operation.new.tap do |o|
    o.name = "QueryVectors"
    o.http_method = "POST"
    o.http_request_uri = "/QueryVectors"
    o.input = Shapes::ShapeRef.new(shape: QueryVectorsInput)
    o.output = Shapes::ShapeRef.new(shape: QueryVectorsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidKeyUsageException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: KmsInvalidStateException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: KmsNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: KmsDisabledException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/tags/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: TagResourceInput)
    o.output = Shapes::ShapeRef.new(shape: TagResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "DELETE"
    o.http_request_uri = "/tags/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceInput)
    o.output = Shapes::ShapeRef.new(shape: UntagResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: ValidationException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
    o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
    o.errors << Shapes::ShapeRef.new(shape: RequestTimeoutException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
  end)
end