diff --git a/.changelog/345a0e3c3a534fd69260c446dbb1ec9c.json b/.changelog/345a0e3c3a534fd69260c446dbb1ec9c.json new file mode 100644 index 00000000000..3d93ada9d10 --- /dev/null +++ b/.changelog/345a0e3c3a534fd69260c446dbb1ec9c.json @@ -0,0 +1,8 @@ +{ + "id": "345a0e3c-3a53-4fd6-9260-c446dbb1ec9c", + "type": "feature", + "description": "Amazon Polly adds 2 new voices: Jitka (cs-CZ) and Sabrina (de-CH).", + "modules": [ + "service/polly" + ] +} \ No newline at end of file diff --git a/.changelog/5680331cda3d4e4bb626d4fd2b8d237b.json b/.changelog/5680331cda3d4e4bb626d4fd2b8d237b.json new file mode 100644 index 00000000000..c9f8fd7dd92 --- /dev/null +++ b/.changelog/5680331cda3d4e4bb626d4fd2b8d237b.json @@ -0,0 +1,8 @@ +{ + "id": "5680331c-da3d-4e4b-b626-d4fd2b8d237b", + "type": "feature", + "description": "Amazon Bedrock SDK updates for Inference Profile.", + "modules": [ + "service/bedrockruntime" + ] +} \ No newline at end of file diff --git a/.changelog/6a581b5af35d4d6a837c8bec30342623.json b/.changelog/6a581b5af35d4d6a837c8bec30342623.json new file mode 100644 index 00000000000..33663816b02 --- /dev/null +++ b/.changelog/6a581b5af35d4d6a837c8bec30342623.json @@ -0,0 +1,8 @@ +{ + "id": "6a581b5a-f35d-4d6a-837c-8bec30342623", + "type": "feature", + "description": "Adds data provenance to import jobs from read sets and references", + "modules": [ + "service/omics" + ] +} \ No newline at end of file diff --git a/.changelog/720b3ceadf5c4da7beb7d3632c3b50ed.json b/.changelog/720b3ceadf5c4da7beb7d3632c3b50ed.json new file mode 100644 index 00000000000..f68c3c437a4 --- /dev/null +++ b/.changelog/720b3ceadf5c4da7beb7d3632c3b50ed.json @@ -0,0 +1,8 @@ +{ + "id": "720b3cea-df5c-4da7-beb7-d3632c3b50ed", + "type": "feature", + "description": "Amazon Bedrock SDK updates for Inference Profile.", + "modules": [ + "service/bedrock" + ] +} \ No newline at end of file diff --git a/.changelog/ebbaa4a627b34d31a821eeb94f588b71.json b/.changelog/ebbaa4a627b34d31a821eeb94f588b71.json new file mode 100644 index 00000000000..19441587bfa --- /dev/null +++ b/.changelog/ebbaa4a627b34d31a821eeb94f588b71.json @@ -0,0 +1,8 @@ +{ + "id": "ebbaa4a6-27b3-4d31-a821-eeb94f588b71", + "type": "feature", + "description": "Update documentation to be consistent with the API docs", + "modules": [ + "service/chatbot" + ] +} \ No newline at end of file diff --git a/feature/dynamodbstreams/attributevalue/go_module_metadata.go b/feature/dynamodbstreams/attributevalue/go_module_metadata.go index 5baf38738cf..f4c8ccb3bb1 100644 --- a/feature/dynamodbstreams/attributevalue/go_module_metadata.go +++ b/feature/dynamodbstreams/attributevalue/go_module_metadata.go @@ -3,4 +3,4 @@ package attributevalue // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.14.0" +const goModuleVersion = "1.15.0" diff --git a/service/bedrock/api_op_CreateModelInvocationJob.go b/service/bedrock/api_op_CreateModelInvocationJob.go index bb690692f80..505b62c6247 100644 --- a/service/bedrock/api_op_CreateModelInvocationJob.go +++ b/service/bedrock/api_op_CreateModelInvocationJob.go @@ -11,16 +11,15 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a job to invoke a model on multiple prompts (batch inference). Format +// Creates a batch inference job to invoke a model on multiple prompts. Format // your data according to [Format your inference data]and upload it to an Amazon S3 bucket. For more -// information, see [Create a batch inference job]. +// information, see [Process multiple prompts with batch inference]. // // The response returns a jobArn that you can use to stop or get details about the -// job. You can check the status of the job by sending a [GetModelCustomizationJob]request. +// job. // -// [Create a batch inference job]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-create.html -// [Format your inference data]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-prerq.html#batch-inference-data -// [GetModelCustomizationJob]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_GetModelCustomizationJob.html +// [Process multiple prompts with batch inference]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference.html +// [Format your inference data]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-data func (c *Client) CreateModelInvocationJob(ctx context.Context, params *CreateModelInvocationJobInput, optFns ...func(*Options)) (*CreateModelInvocationJobOutput, error) { if params == nil { params = &CreateModelInvocationJobInput{} diff --git a/service/bedrock/api_op_GetInferenceProfile.go b/service/bedrock/api_op_GetInferenceProfile.go new file mode 100644 index 00000000000..1c2ad5d9141 --- /dev/null +++ b/service/bedrock/api_op_GetInferenceProfile.go @@ -0,0 +1,182 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package bedrock + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/bedrock/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Gets information about an inference profile. For more information, see the +// Amazon Bedrock User Guide. +func (c *Client) GetInferenceProfile(ctx context.Context, params *GetInferenceProfileInput, optFns ...func(*Options)) (*GetInferenceProfileOutput, error) { + if params == nil { + params = &GetInferenceProfileInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "GetInferenceProfile", params, optFns, c.addOperationGetInferenceProfileMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*GetInferenceProfileOutput) + out.ResultMetadata = metadata + return out, nil +} + +type GetInferenceProfileInput struct { + + // The unique identifier of the inference profile. + // + // This member is required. + InferenceProfileIdentifier *string + + noSmithyDocumentSerde +} + +type GetInferenceProfileOutput struct { + + // The Amazon Resource Name (ARN) of the inference profile. + // + // This member is required. + InferenceProfileArn *string + + // The unique identifier of the inference profile. + // + // This member is required. + InferenceProfileId *string + + // The name of the inference profile. + // + // This member is required. + InferenceProfileName *string + + // A list of information about each model in the inference profile. + // + // This member is required. + Models []types.InferenceProfileModel + + // The status of the inference profile. ACTIVE means that the inference profile is + // available to use. + // + // This member is required. + Status types.InferenceProfileStatus + + // The type of the inference profile. SYSTEM_DEFINED means that the inference + // profile is defined by Amazon Bedrock. + // + // This member is required. + Type types.InferenceProfileType + + // The time at which the inference profile was created. + CreatedAt *time.Time + + // The description of the inference profile. + Description *string + + // The time at which the inference profile was last updated. + UpdatedAt *time.Time + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationGetInferenceProfileMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpGetInferenceProfile{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetInferenceProfile{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "GetInferenceProfile"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpGetInferenceProfileValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetInferenceProfile(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opGetInferenceProfile(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "GetInferenceProfile", + } +} diff --git a/service/bedrock/api_op_ListInferenceProfiles.go b/service/bedrock/api_op_ListInferenceProfiles.go new file mode 100644 index 00000000000..1626fba8c86 --- /dev/null +++ b/service/bedrock/api_op_ListInferenceProfiles.go @@ -0,0 +1,247 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package bedrock + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/bedrock/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Returns a list of inference profiles that you can use. +func (c *Client) ListInferenceProfiles(ctx context.Context, params *ListInferenceProfilesInput, optFns ...func(*Options)) (*ListInferenceProfilesOutput, error) { + if params == nil { + params = &ListInferenceProfilesInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListInferenceProfiles", params, optFns, c.addOperationListInferenceProfilesMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListInferenceProfilesOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListInferenceProfilesInput struct { + + // The maximum number of results to return in the response. If the total number of + // results is greater than this value, use the token returned in the response in + // the nextToken field when making another request to return the next batch of + // results. + MaxResults *int32 + + // If the total number of results is greater than the maxResults value provided in + // the request, enter the token returned in the nextToken field in the response in + // this field to return the next batch of results. + NextToken *string + + noSmithyDocumentSerde +} + +type ListInferenceProfilesOutput struct { + + // A list of information about each inference profile that you can use. + InferenceProfileSummaries []types.InferenceProfileSummary + + // If the total number of results is greater than the maxResults value provided in + // the request, use this token when making another request in the nextToken field + // to return the next batch of results. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListInferenceProfilesMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpListInferenceProfiles{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListInferenceProfiles{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "ListInferenceProfiles"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListInferenceProfiles(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + return nil +} + +// ListInferenceProfilesPaginatorOptions is the paginator options for +// ListInferenceProfiles +type ListInferenceProfilesPaginatorOptions struct { + // The maximum number of results to return in the response. If the total number of + // results is greater than this value, use the token returned in the response in + // the nextToken field when making another request to return the next batch of + // results. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// ListInferenceProfilesPaginator is a paginator for ListInferenceProfiles +type ListInferenceProfilesPaginator struct { + options ListInferenceProfilesPaginatorOptions + client ListInferenceProfilesAPIClient + params *ListInferenceProfilesInput + nextToken *string + firstPage bool +} + +// NewListInferenceProfilesPaginator returns a new ListInferenceProfilesPaginator +func NewListInferenceProfilesPaginator(client ListInferenceProfilesAPIClient, params *ListInferenceProfilesInput, optFns ...func(*ListInferenceProfilesPaginatorOptions)) *ListInferenceProfilesPaginator { + if params == nil { + params = &ListInferenceProfilesInput{} + } + + options := ListInferenceProfilesPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListInferenceProfilesPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListInferenceProfilesPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListInferenceProfiles page. +func (p *ListInferenceProfilesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListInferenceProfilesOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + optFns = append([]func(*Options){ + addIsPaginatorUserAgent, + }, optFns...) + result, err := p.client.ListInferenceProfiles(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +// ListInferenceProfilesAPIClient is a client that implements the +// ListInferenceProfiles operation. +type ListInferenceProfilesAPIClient interface { + ListInferenceProfiles(context.Context, *ListInferenceProfilesInput, ...func(*Options)) (*ListInferenceProfilesOutput, error) +} + +var _ ListInferenceProfilesAPIClient = (*Client)(nil) + +func newServiceMetadataMiddleware_opListInferenceProfiles(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "ListInferenceProfiles", + } +} diff --git a/service/bedrock/deserializers.go b/service/bedrock/deserializers.go index 822d60e3f2a..4a5ced0b675 100644 --- a/service/bedrock/deserializers.go +++ b/service/bedrock/deserializers.go @@ -3273,6 +3273,245 @@ func awsRestjson1_deserializeOpDocumentGetImportedModelOutput(v **GetImportedMod return nil } +type awsRestjson1_deserializeOpGetInferenceProfile struct { +} + +func (*awsRestjson1_deserializeOpGetInferenceProfile) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpGetInferenceProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorGetInferenceProfile(response, &metadata) + } + output := &GetInferenceProfileOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentGetInferenceProfileOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorGetInferenceProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentGetInferenceProfileOutput(v **GetInferenceProfileOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *GetInferenceProfileOutput + if *v == nil { + sv = &GetInferenceProfileOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "createdAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.CreatedAt = ptr.Time(t) + } + + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileDescription to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "inferenceProfileArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileArn to be of type string, got %T instead", value) + } + sv.InferenceProfileArn = ptr.String(jtv) + } + + case "inferenceProfileId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileId to be of type string, got %T instead", value) + } + sv.InferenceProfileId = ptr.String(jtv) + } + + case "inferenceProfileName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileName to be of type string, got %T instead", value) + } + sv.InferenceProfileName = ptr.String(jtv) + } + + case "models": + if err := awsRestjson1_deserializeDocumentInferenceProfileModels(&sv.Models, value); err != nil { + return err + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileStatus to be of type string, got %T instead", value) + } + sv.Status = types.InferenceProfileStatus(jtv) + } + + case "type": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileType to be of type string, got %T instead", value) + } + sv.Type = types.InferenceProfileType(jtv) + } + + case "updatedAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.UpdatedAt = ptr.Time(t) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpGetModelCopyJob struct { } @@ -5251,7 +5490,163 @@ func (m *awsRestjson1_deserializeOpListFoundationModels) HandleDeserialize(ctx c return out, metadata, err } -func awsRestjson1_deserializeOpErrorListFoundationModels(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorListFoundationModels(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentListFoundationModelsOutput(v **ListFoundationModelsOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *ListFoundationModelsOutput + if *v == nil { + sv = &ListFoundationModelsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "modelSummaries": + if err := awsRestjson1_deserializeDocumentFoundationModelSummaryList(&sv.ModelSummaries, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpListGuardrails struct { +} + +func (*awsRestjson1_deserializeOpListGuardrails) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpListGuardrails) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorListGuardrails(response, &metadata) + } + output := &ListGuardrailsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentListGuardrailsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorListGuardrails(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5298,6 +5693,9 @@ func awsRestjson1_deserializeOpErrorListFoundationModels(response *smithyhttp.Re case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -5314,7 +5712,7 @@ func awsRestjson1_deserializeOpErrorListFoundationModels(response *smithyhttp.Re } } -func awsRestjson1_deserializeOpDocumentListFoundationModelsOutput(v **ListFoundationModelsOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentListGuardrailsOutput(v **ListGuardrailsOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -5327,20 +5725,29 @@ func awsRestjson1_deserializeOpDocumentListFoundationModelsOutput(v **ListFounda return fmt.Errorf("unexpected JSON type %v", value) } - var sv *ListFoundationModelsOutput + var sv *ListGuardrailsOutput if *v == nil { - sv = &ListFoundationModelsOutput{} + sv = &ListGuardrailsOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "modelSummaries": - if err := awsRestjson1_deserializeDocumentFoundationModelSummaryList(&sv.ModelSummaries, value); err != nil { + case "guardrails": + if err := awsRestjson1_deserializeDocumentGuardrailSummaries(&sv.Guardrails, value); err != nil { return err } + case "nextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected PaginationToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + default: _, _ = key, value @@ -5350,14 +5757,14 @@ func awsRestjson1_deserializeOpDocumentListFoundationModelsOutput(v **ListFounda return nil } -type awsRestjson1_deserializeOpListGuardrails struct { +type awsRestjson1_deserializeOpListImportedModels struct { } -func (*awsRestjson1_deserializeOpListGuardrails) ID() string { +func (*awsRestjson1_deserializeOpListImportedModels) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpListGuardrails) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpListImportedModels) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5371,9 +5778,9 @@ func (m *awsRestjson1_deserializeOpListGuardrails) HandleDeserialize(ctx context } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorListGuardrails(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorListImportedModels(response, &metadata) } - output := &ListGuardrailsOutput{} + output := &ListImportedModelsOutput{} out.Result = output var buff [1024]byte @@ -5394,7 +5801,7 @@ func (m *awsRestjson1_deserializeOpListGuardrails) HandleDeserialize(ctx context return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentListGuardrailsOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentListImportedModelsOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5407,7 +5814,7 @@ func (m *awsRestjson1_deserializeOpListGuardrails) HandleDeserialize(ctx context return out, metadata, err } -func awsRestjson1_deserializeOpErrorListGuardrails(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorListImportedModels(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5454,9 +5861,6 @@ func awsRestjson1_deserializeOpErrorListGuardrails(response *smithyhttp.Response case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) - case strings.EqualFold("ResourceNotFoundException", errorCode): - return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -5473,7 +5877,7 @@ func awsRestjson1_deserializeOpErrorListGuardrails(response *smithyhttp.Response } } -func awsRestjson1_deserializeOpDocumentListGuardrailsOutput(v **ListGuardrailsOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentListImportedModelsOutput(v **ListImportedModelsOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -5486,17 +5890,17 @@ func awsRestjson1_deserializeOpDocumentListGuardrailsOutput(v **ListGuardrailsOu return fmt.Errorf("unexpected JSON type %v", value) } - var sv *ListGuardrailsOutput + var sv *ListImportedModelsOutput if *v == nil { - sv = &ListGuardrailsOutput{} + sv = &ListImportedModelsOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "guardrails": - if err := awsRestjson1_deserializeDocumentGuardrailSummaries(&sv.Guardrails, value); err != nil { + case "modelSummaries": + if err := awsRestjson1_deserializeDocumentImportedModelSummaryList(&sv.ModelSummaries, value); err != nil { return err } @@ -5518,14 +5922,14 @@ func awsRestjson1_deserializeOpDocumentListGuardrailsOutput(v **ListGuardrailsOu return nil } -type awsRestjson1_deserializeOpListImportedModels struct { +type awsRestjson1_deserializeOpListInferenceProfiles struct { } -func (*awsRestjson1_deserializeOpListImportedModels) ID() string { +func (*awsRestjson1_deserializeOpListInferenceProfiles) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpListImportedModels) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpListInferenceProfiles) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5539,9 +5943,9 @@ func (m *awsRestjson1_deserializeOpListImportedModels) HandleDeserialize(ctx con } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorListImportedModels(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorListInferenceProfiles(response, &metadata) } - output := &ListImportedModelsOutput{} + output := &ListInferenceProfilesOutput{} out.Result = output var buff [1024]byte @@ -5562,7 +5966,7 @@ func (m *awsRestjson1_deserializeOpListImportedModels) HandleDeserialize(ctx con return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentListImportedModelsOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentListInferenceProfilesOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5575,7 +5979,7 @@ func (m *awsRestjson1_deserializeOpListImportedModels) HandleDeserialize(ctx con return out, metadata, err } -func awsRestjson1_deserializeOpErrorListImportedModels(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorListInferenceProfiles(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5638,7 +6042,7 @@ func awsRestjson1_deserializeOpErrorListImportedModels(response *smithyhttp.Resp } } -func awsRestjson1_deserializeOpDocumentListImportedModelsOutput(v **ListImportedModelsOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentListInferenceProfilesOutput(v **ListInferenceProfilesOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -5651,17 +6055,17 @@ func awsRestjson1_deserializeOpDocumentListImportedModelsOutput(v **ListImported return fmt.Errorf("unexpected JSON type %v", value) } - var sv *ListImportedModelsOutput + var sv *ListInferenceProfilesOutput if *v == nil { - sv = &ListImportedModelsOutput{} + sv = &ListInferenceProfilesOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "modelSummaries": - if err := awsRestjson1_deserializeDocumentImportedModelSummaryList(&sv.ModelSummaries, value); err != nil { + case "inferenceProfileSummaries": + if err := awsRestjson1_deserializeDocumentInferenceProfileSummaries(&sv.InferenceProfileSummaries, value); err != nil { return err } @@ -10628,6 +11032,230 @@ func awsRestjson1_deserializeDocumentImportedModelSummaryList(v *[]types.Importe return nil } +func awsRestjson1_deserializeDocumentInferenceProfileModel(v **types.InferenceProfileModel, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.InferenceProfileModel + if *v == nil { + sv = &types.InferenceProfileModel{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "modelArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FoundationModelArn to be of type string, got %T instead", value) + } + sv.ModelArn = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentInferenceProfileModels(v *[]types.InferenceProfileModel, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.InferenceProfileModel + if *v == nil { + cv = []types.InferenceProfileModel{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.InferenceProfileModel + destAddr := &col + if err := awsRestjson1_deserializeDocumentInferenceProfileModel(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentInferenceProfileSummaries(v *[]types.InferenceProfileSummary, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.InferenceProfileSummary + if *v == nil { + cv = []types.InferenceProfileSummary{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.InferenceProfileSummary + destAddr := &col + if err := awsRestjson1_deserializeDocumentInferenceProfileSummary(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentInferenceProfileSummary(v **types.InferenceProfileSummary, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.InferenceProfileSummary + if *v == nil { + sv = &types.InferenceProfileSummary{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "createdAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.CreatedAt = ptr.Time(t) + } + + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileDescription to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "inferenceProfileArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileArn to be of type string, got %T instead", value) + } + sv.InferenceProfileArn = ptr.String(jtv) + } + + case "inferenceProfileId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileId to be of type string, got %T instead", value) + } + sv.InferenceProfileId = ptr.String(jtv) + } + + case "inferenceProfileName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileName to be of type string, got %T instead", value) + } + sv.InferenceProfileName = ptr.String(jtv) + } + + case "models": + if err := awsRestjson1_deserializeDocumentInferenceProfileModels(&sv.Models, value); err != nil { + return err + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileStatus to be of type string, got %T instead", value) + } + sv.Status = types.InferenceProfileStatus(jtv) + } + + case "type": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferenceProfileType to be of type string, got %T instead", value) + } + sv.Type = types.InferenceProfileType(jtv) + } + + case "updatedAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.UpdatedAt = ptr.Time(t) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentInferenceTypeList(v *[]types.InferenceType, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/bedrock/generated.json b/service/bedrock/generated.json index cca32923411..b65748c1ee0 100644 --- a/service/bedrock/generated.json +++ b/service/bedrock/generated.json @@ -27,6 +27,7 @@ "api_op_GetFoundationModel.go", "api_op_GetGuardrail.go", "api_op_GetImportedModel.go", + "api_op_GetInferenceProfile.go", "api_op_GetModelCopyJob.go", "api_op_GetModelCustomizationJob.go", "api_op_GetModelImportJob.go", @@ -38,6 +39,7 @@ "api_op_ListFoundationModels.go", "api_op_ListGuardrails.go", "api_op_ListImportedModels.go", + "api_op_ListInferenceProfiles.go", "api_op_ListModelCopyJobs.go", "api_op_ListModelCustomizationJobs.go", "api_op_ListModelImportJobs.go", diff --git a/service/bedrock/serializers.go b/service/bedrock/serializers.go index 2040a4c420b..b9687184320 100644 --- a/service/bedrock/serializers.go +++ b/service/bedrock/serializers.go @@ -1688,6 +1688,71 @@ func awsRestjson1_serializeOpHttpBindingsGetImportedModelInput(v *GetImportedMod return nil } +type awsRestjson1_serializeOpGetInferenceProfile struct { +} + +func (*awsRestjson1_serializeOpGetInferenceProfile) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpGetInferenceProfile) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*GetInferenceProfileInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/inference-profiles/{inferenceProfileIdentifier}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsGetInferenceProfileInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsGetInferenceProfileInput(v *GetInferenceProfileInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.InferenceProfileIdentifier == nil || len(*v.InferenceProfileIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member inferenceProfileIdentifier must not be empty")} + } + if v.InferenceProfileIdentifier != nil { + if err := encoder.SetURI("inferenceProfileIdentifier").String(*v.InferenceProfileIdentifier); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpGetModelCopyJob struct { } @@ -2473,6 +2538,70 @@ func awsRestjson1_serializeOpHttpBindingsListImportedModelsInput(v *ListImported return nil } +type awsRestjson1_serializeOpListInferenceProfiles struct { +} + +func (*awsRestjson1_serializeOpListInferenceProfiles) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpListInferenceProfiles) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ListInferenceProfilesInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/inference-profiles") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsListInferenceProfilesInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsListInferenceProfilesInput(v *ListInferenceProfilesInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.MaxResults != nil { + encoder.SetQuery("maxResults").Integer(*v.MaxResults) + } + + if v.NextToken != nil { + encoder.SetQuery("nextToken").String(*v.NextToken) + } + + return nil +} + type awsRestjson1_serializeOpListModelCopyJobs struct { } diff --git a/service/bedrock/snapshot/api_op_GetInferenceProfile.go.snap b/service/bedrock/snapshot/api_op_GetInferenceProfile.go.snap new file mode 100644 index 00000000000..e1dc4f550ad --- /dev/null +++ b/service/bedrock/snapshot/api_op_GetInferenceProfile.go.snap @@ -0,0 +1,36 @@ +GetInferenceProfile + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/bedrock/snapshot/api_op_ListInferenceProfiles.go.snap b/service/bedrock/snapshot/api_op_ListInferenceProfiles.go.snap new file mode 100644 index 00000000000..c13937c7bf8 --- /dev/null +++ b/service/bedrock/snapshot/api_op_ListInferenceProfiles.go.snap @@ -0,0 +1,35 @@ +ListInferenceProfiles + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/bedrock/snapshot_test.go b/service/bedrock/snapshot_test.go index c49613e4108..911bbd5547c 100644 --- a/service/bedrock/snapshot_test.go +++ b/service/bedrock/snapshot_test.go @@ -290,6 +290,18 @@ func TestCheckSnapshot_GetImportedModel(t *testing.T) { } } +func TestCheckSnapshot_GetInferenceProfile(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetInferenceProfile(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "GetInferenceProfile") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_GetModelCopyJob(t *testing.T) { svc := New(Options{}) _, err := svc.GetModelCopyJob(context.Background(), nil, func(o *Options) { @@ -422,6 +434,18 @@ func TestCheckSnapshot_ListImportedModels(t *testing.T) { } } +func TestCheckSnapshot_ListInferenceProfiles(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListInferenceProfiles(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "ListInferenceProfiles") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_ListModelCopyJobs(t *testing.T) { svc := New(Options{}) _, err := svc.ListModelCopyJobs(context.Background(), nil, func(o *Options) { @@ -817,6 +841,18 @@ func TestUpdateSnapshot_GetImportedModel(t *testing.T) { } } +func TestUpdateSnapshot_GetInferenceProfile(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetInferenceProfile(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "GetInferenceProfile") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_GetModelCopyJob(t *testing.T) { svc := New(Options{}) _, err := svc.GetModelCopyJob(context.Background(), nil, func(o *Options) { @@ -949,6 +985,18 @@ func TestUpdateSnapshot_ListImportedModels(t *testing.T) { } } +func TestUpdateSnapshot_ListInferenceProfiles(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListInferenceProfiles(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "ListInferenceProfiles") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_ListModelCopyJobs(t *testing.T) { svc := New(Options{}) _, err := svc.ListModelCopyJobs(context.Background(), nil, func(o *Options) { diff --git a/service/bedrock/types/enums.go b/service/bedrock/types/enums.go index 10b991e919b..307b0ab3d96 100644 --- a/service/bedrock/types/enums.go +++ b/service/bedrock/types/enums.go @@ -384,6 +384,40 @@ func (GuardrailTopicType) Values() []GuardrailTopicType { } } +type InferenceProfileStatus string + +// Enum values for InferenceProfileStatus +const ( + InferenceProfileStatusActive InferenceProfileStatus = "ACTIVE" +) + +// Values returns all known values for InferenceProfileStatus. Note that this can +// be expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (InferenceProfileStatus) Values() []InferenceProfileStatus { + return []InferenceProfileStatus{ + "ACTIVE", + } +} + +type InferenceProfileType string + +// Enum values for InferenceProfileType +const ( + InferenceProfileTypeSystemDefined InferenceProfileType = "SYSTEM_DEFINED" +) + +// Values returns all known values for InferenceProfileType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (InferenceProfileType) Values() []InferenceProfileType { + return []InferenceProfileType{ + "SYSTEM_DEFINED", + } +} + type InferenceType string // Enum values for InferenceType diff --git a/service/bedrock/types/types.go b/service/bedrock/types/types.go index 2b854a31222..4b970493bd1 100644 --- a/service/bedrock/types/types.go +++ b/service/bedrock/types/types.go @@ -1223,6 +1223,62 @@ type ImportedModelSummary struct { noSmithyDocumentSerde } +// Contains information about a model. +type InferenceProfileModel struct { + + // The Amazon Resource Name (ARN) of the model. + ModelArn *string + + noSmithyDocumentSerde +} + +// Contains information about an inference profile. +type InferenceProfileSummary struct { + + // The Amazon Resource Name (ARN) of the inference profile. + // + // This member is required. + InferenceProfileArn *string + + // The unique identifier of the inference profile. + // + // This member is required. + InferenceProfileId *string + + // The name of the inference profile. + // + // This member is required. + InferenceProfileName *string + + // A list of information about each model in the inference profile. + // + // This member is required. + Models []InferenceProfileModel + + // The status of the inference profile. ACTIVE means that the inference profile is + // available to use. + // + // This member is required. + Status InferenceProfileStatus + + // The type of the inference profile. SYSTEM_DEFINED means that the inference + // profile is defined by Amazon Bedrock. + // + // This member is required. + Type InferenceProfileType + + // The time at which the inference profile was created. + CreatedAt *time.Time + + // The description of the inference profile. + Description *string + + // The time at which the inference profile was last updated. + UpdatedAt *time.Time + + noSmithyDocumentSerde +} + // Configuration fields for invocation logging. type LoggingConfig struct { diff --git a/service/bedrock/validators.go b/service/bedrock/validators.go index 24bc410b041..b47e5d4d379 100644 --- a/service/bedrock/validators.go +++ b/service/bedrock/validators.go @@ -370,6 +370,26 @@ func (m *validateOpGetImportedModel) HandleInitialize(ctx context.Context, in mi return next.HandleInitialize(ctx, in) } +type validateOpGetInferenceProfile struct { +} + +func (*validateOpGetInferenceProfile) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpGetInferenceProfile) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*GetInferenceProfileInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpGetInferenceProfileInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpGetModelCopyJob struct { } @@ -722,6 +742,10 @@ func addOpGetImportedModelValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetImportedModel{}, middleware.After) } +func addOpGetInferenceProfileValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpGetInferenceProfile{}, middleware.After) +} + func addOpGetModelCopyJobValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetModelCopyJob{}, middleware.After) } @@ -2143,6 +2167,21 @@ func validateOpGetImportedModelInput(v *GetImportedModelInput) error { } } +func validateOpGetInferenceProfileInput(v *GetInferenceProfileInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "GetInferenceProfileInput"} + if v.InferenceProfileIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("InferenceProfileIdentifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpGetModelCopyJobInput(v *GetModelCopyJobInput) error { if v == nil { return nil diff --git a/service/chatbot/api_op_CreateChimeWebhookConfiguration.go b/service/chatbot/api_op_CreateChimeWebhookConfiguration.go index f234fc2c6a8..a28335d8eab 100644 --- a/service/chatbot/api_op_CreateChimeWebhookConfiguration.go +++ b/service/chatbot/api_op_CreateChimeWebhookConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates Chime Webhook Configuration +// Creates an AWS Chatbot configuration for Amazon Chime. func (c *Client) CreateChimeWebhookConfiguration(ctx context.Context, params *CreateChimeWebhookConfigurationInput, optFns ...func(*Options)) (*CreateChimeWebhookConfigurationOutput, error) { if params == nil { params = &CreateChimeWebhookConfigurationInput{} @@ -34,33 +34,42 @@ type CreateChimeWebhookConfigurationInput struct { // This member is required. ConfigurationName *string - // This is a user-defined role that AWS Chatbot will assume. This is not the - // service-linked role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. // // This member is required. SnsTopicArns []string - // Description of the webhook. Recommend using the convention RoomName/WebhookName - // . See Chime setup tutorial for more details: - // https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html. + // A description of the webhook. We recommend using the convention + // RoomName/WebhookName . + // + // For more information, see [Tutorial: Get started with Amazon Chime] in the AWS Chatbot Administrator Guide. + // + // [Tutorial: Get started with Amazon Chime]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html // // This member is required. WebhookDescription *string - // URL for the Chime webhook. + // The URL for the Amazon Chime webhook. // // This member is required. WebhookUrl *string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // A list of tags to apply to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []types.Tag noSmithyDocumentSerde @@ -68,7 +77,7 @@ type CreateChimeWebhookConfigurationInput struct { type CreateChimeWebhookConfigurationOutput struct { - // Chime webhook configuration. + // An Amazon Chime webhook configuration. WebhookConfiguration *types.ChimeWebhookConfiguration // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_CreateMicrosoftTeamsChannelConfiguration.go b/service/chatbot/api_op_CreateMicrosoftTeamsChannelConfiguration.go index 5b367bf3356..c9e0f5cf385 100644 --- a/service/chatbot/api_op_CreateMicrosoftTeamsChannelConfiguration.go +++ b/service/chatbot/api_op_CreateMicrosoftTeamsChannelConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates MS Teams Channel Configuration +// Creates an AWS Chatbot configuration for Microsoft Teams. func (c *Client) CreateMicrosoftTeamsChannelConfiguration(ctx context.Context, params *CreateMicrosoftTeamsChannelConfigurationInput, optFns ...func(*Options)) (*CreateMicrosoftTeamsChannelConfigurationOutput, error) { if params == nil { params = &CreateMicrosoftTeamsChannelConfigurationInput{} @@ -39,18 +39,24 @@ type CreateMicrosoftTeamsChannelConfigurationInput struct { // This member is required. ConfigurationName *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup // // This member is required. TeamId *string @@ -64,16 +70,18 @@ type CreateMicrosoftTeamsChannelConfigurationInput struct { ChannelName *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. SnsTopicArns []string - // A list of tags to apply to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []types.Tag // The name of the Microsoft Teams Team. diff --git a/service/chatbot/api_op_CreateSlackChannelConfiguration.go b/service/chatbot/api_op_CreateSlackChannelConfiguration.go index 4ba61dcf2d3..19db04b9fc4 100644 --- a/service/chatbot/api_op_CreateSlackChannelConfiguration.go +++ b/service/chatbot/api_op_CreateSlackChannelConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates Slack Channel Configuration +// Creates an AWS Chatbot confugration for Slack. func (c *Client) CreateSlackChannelConfiguration(ctx context.Context, params *CreateSlackChannelConfigurationInput, optFns ...func(*Options)) (*CreateSlackChannelConfigurationOutput, error) { if params == nil { params = &CreateSlackChannelConfigurationInput{} @@ -34,16 +34,21 @@ type CreateSlackChannelConfigurationInput struct { // This member is required. ConfigurationName *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ID of the Slack channel. To get the ID, open Slack, right click on the - // channel name in the left pane, then choose Copy Link. The channel ID is the - // 9-character string at the end of the URL. For example, ABCBBLZZZ. + // The ID of the Slack channel. + // + // To get this ID, open Slack, right click on the channel name in the left pane, + // then choose Copy Link. The channel ID is the 9-character string at the end of + // the URL. For example, ABCBBLZZZ. // // This member is required. SlackChannelId *string @@ -54,19 +59,21 @@ type CreateSlackChannelConfigurationInput struct { SlackTeamId *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // The name of the Slack Channel. + // The name of the Slack channel. SlackChannelName *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. SnsTopicArns []string - // A list of tags to apply to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []types.Tag // Enables use of a user role requirement in your chat configuration. diff --git a/service/chatbot/api_op_DeleteChimeWebhookConfiguration.go b/service/chatbot/api_op_DeleteChimeWebhookConfiguration.go index 4d20b8114a3..4983b686d27 100644 --- a/service/chatbot/api_op_DeleteChimeWebhookConfiguration.go +++ b/service/chatbot/api_op_DeleteChimeWebhookConfiguration.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes a Chime Webhook Configuration +// Deletes a Amazon Chime webhook configuration for AWS Chatbot. func (c *Client) DeleteChimeWebhookConfiguration(ctx context.Context, params *DeleteChimeWebhookConfigurationInput, optFns ...func(*Options)) (*DeleteChimeWebhookConfigurationOutput, error) { if params == nil { params = &DeleteChimeWebhookConfigurationInput{} @@ -28,7 +28,7 @@ func (c *Client) DeleteChimeWebhookConfiguration(ctx context.Context, params *De type DeleteChimeWebhookConfigurationInput struct { - // The ARN of the ChimeWebhookConfiguration to delete. + // The Amazon Resource Name (ARN) of the ChimeWebhookConfiguration to delete. // // This member is required. ChatConfigurationArn *string diff --git a/service/chatbot/api_op_DeleteMicrosoftTeamsChannelConfiguration.go b/service/chatbot/api_op_DeleteMicrosoftTeamsChannelConfiguration.go index 70734e9ed4b..90baca68f48 100644 --- a/service/chatbot/api_op_DeleteMicrosoftTeamsChannelConfiguration.go +++ b/service/chatbot/api_op_DeleteMicrosoftTeamsChannelConfiguration.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes MS Teams Channel Configuration +// Deletes a Microsoft Teams channel configuration for AWS Chatbot func (c *Client) DeleteMicrosoftTeamsChannelConfiguration(ctx context.Context, params *DeleteMicrosoftTeamsChannelConfigurationInput, optFns ...func(*Options)) (*DeleteMicrosoftTeamsChannelConfigurationOutput, error) { if params == nil { params = &DeleteMicrosoftTeamsChannelConfigurationInput{} @@ -28,7 +28,8 @@ func (c *Client) DeleteMicrosoftTeamsChannelConfiguration(ctx context.Context, p type DeleteMicrosoftTeamsChannelConfigurationInput struct { - // The ARN of the MicrosoftTeamsChannelConfiguration to delete. + // The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration + // associated with the user identity to delete. // // This member is required. ChatConfigurationArn *string diff --git a/service/chatbot/api_op_DeleteMicrosoftTeamsConfiguredTeam.go b/service/chatbot/api_op_DeleteMicrosoftTeamsConfiguredTeam.go index 714afd6f6f2..60383b31f57 100644 --- a/service/chatbot/api_op_DeleteMicrosoftTeamsConfiguredTeam.go +++ b/service/chatbot/api_op_DeleteMicrosoftTeamsConfiguredTeam.go @@ -30,11 +30,14 @@ func (c *Client) DeleteMicrosoftTeamsConfiguredTeam(ctx context.Context, params type DeleteMicrosoftTeamsConfiguredTeamInput struct { - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams team authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup // // This member is required. TeamId *string diff --git a/service/chatbot/api_op_DeleteMicrosoftTeamsUserIdentity.go b/service/chatbot/api_op_DeleteMicrosoftTeamsUserIdentity.go index f9cb846b444..a7996fdaf5b 100644 --- a/service/chatbot/api_op_DeleteMicrosoftTeamsUserIdentity.go +++ b/service/chatbot/api_op_DeleteMicrosoftTeamsUserIdentity.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes a Teams user identity +// Identifes a user level permission for a channel configuration. func (c *Client) DeleteMicrosoftTeamsUserIdentity(ctx context.Context, params *DeleteMicrosoftTeamsUserIdentityInput, optFns ...func(*Options)) (*DeleteMicrosoftTeamsUserIdentityOutput, error) { if params == nil { params = &DeleteMicrosoftTeamsUserIdentityInput{} @@ -34,7 +34,7 @@ type DeleteMicrosoftTeamsUserIdentityInput struct { // This member is required. ChatConfigurationArn *string - // Id from Microsoft Teams for user. + // The Microsoft Teams user ID. // // This member is required. UserId *string diff --git a/service/chatbot/api_op_DeleteSlackChannelConfiguration.go b/service/chatbot/api_op_DeleteSlackChannelConfiguration.go index 601f5f9d2ff..306aedfa594 100644 --- a/service/chatbot/api_op_DeleteSlackChannelConfiguration.go +++ b/service/chatbot/api_op_DeleteSlackChannelConfiguration.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes Slack Channel Configuration +// Deletes a Slack channel configuration for AWS Chatbot func (c *Client) DeleteSlackChannelConfiguration(ctx context.Context, params *DeleteSlackChannelConfigurationInput, optFns ...func(*Options)) (*DeleteSlackChannelConfigurationOutput, error) { if params == nil { params = &DeleteSlackChannelConfigurationInput{} @@ -28,7 +28,7 @@ func (c *Client) DeleteSlackChannelConfiguration(ctx context.Context, params *De type DeleteSlackChannelConfigurationInput struct { - // The ARN of the SlackChannelConfiguration to delete. + // The Amazon Resource Name (ARN) of the SlackChannelConfiguration to delete. // // This member is required. ChatConfigurationArn *string diff --git a/service/chatbot/api_op_DeleteSlackUserIdentity.go b/service/chatbot/api_op_DeleteSlackUserIdentity.go index 9b8b84a06a9..704207268b1 100644 --- a/service/chatbot/api_op_DeleteSlackUserIdentity.go +++ b/service/chatbot/api_op_DeleteSlackUserIdentity.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes a Slack user identity +// Deletes a user level permission for a Slack channel configuration. func (c *Client) DeleteSlackUserIdentity(ctx context.Context, params *DeleteSlackUserIdentityInput, optFns ...func(*Options)) (*DeleteSlackUserIdentityOutput, error) { if params == nil { params = &DeleteSlackUserIdentityInput{} @@ -39,7 +39,7 @@ type DeleteSlackUserIdentityInput struct { // This member is required. SlackTeamId *string - // The ID of the user in Slack. + // The ID of the user in Slack // // This member is required. SlackUserId *string diff --git a/service/chatbot/api_op_DescribeChimeWebhookConfigurations.go b/service/chatbot/api_op_DescribeChimeWebhookConfigurations.go index a82b5af3296..8ce961dbb53 100644 --- a/service/chatbot/api_op_DescribeChimeWebhookConfigurations.go +++ b/service/chatbot/api_op_DescribeChimeWebhookConfigurations.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists Chime Webhook Configurations optionally filtered by ChatConfigurationArn +// Lists Amazon Chime webhook configurations optionally filtered by +// ChatConfigurationArn func (c *Client) DescribeChimeWebhookConfigurations(ctx context.Context, params *DescribeChimeWebhookConfigurationsInput, optFns ...func(*Options)) (*DescribeChimeWebhookConfigurationsOutput, error) { if params == nil { params = &DescribeChimeWebhookConfigurationsInput{} @@ -29,7 +30,8 @@ func (c *Client) DescribeChimeWebhookConfigurations(ctx context.Context, params type DescribeChimeWebhookConfigurationsInput struct { - // An optional ARN of a ChimeWebhookConfiguration to describe. + // An optional Amazon Resource Number (ARN) of a ChimeWebhookConfiguration to + // describe. ChatConfigurationArn *string // The maximum number of results to include in the response. If more results exist @@ -52,7 +54,7 @@ type DescribeChimeWebhookConfigurationsOutput struct { // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string - // A list of Chime webhooks associated with the account. + // A list of Amazon Chime webhooks associated with the account. WebhookConfigurations []types.ChimeWebhookConfiguration // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_DescribeSlackChannelConfigurations.go b/service/chatbot/api_op_DescribeSlackChannelConfigurations.go index bb8a50432aa..a826fc2c2f1 100644 --- a/service/chatbot/api_op_DescribeSlackChannelConfigurations.go +++ b/service/chatbot/api_op_DescribeSlackChannelConfigurations.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists Slack Channel Configurations optionally filtered by ChatConfigurationArn +// Lists Slack channel configurations optionally filtered by ChatConfigurationArn func (c *Client) DescribeSlackChannelConfigurations(ctx context.Context, params *DescribeSlackChannelConfigurationsInput, optFns ...func(*Options)) (*DescribeSlackChannelConfigurationsOutput, error) { if params == nil { params = &DescribeSlackChannelConfigurationsInput{} @@ -29,7 +29,8 @@ func (c *Client) DescribeSlackChannelConfigurations(ctx context.Context, params type DescribeSlackChannelConfigurationsInput struct { - // An optional ARN of a SlackChannelConfiguration to describe. + // An optional Amazon Resource Number (ARN) of a SlackChannelConfiguration to + // describe. ChatConfigurationArn *string // The maximum number of results to include in the response. If more results exist @@ -37,7 +38,7 @@ type DescribeSlackChannelConfigurationsInput struct { // the remaining results can be retrieved. MaxResults *int32 - // An optional token returned from a prior request. Use this token for pagination + // An optional token returned from a prior request. Use this token for pagination // of results from this action. If this parameter is specified, the response // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string diff --git a/service/chatbot/api_op_DescribeSlackUserIdentities.go b/service/chatbot/api_op_DescribeSlackUserIdentities.go index 09841e079de..6bb648dafd1 100644 --- a/service/chatbot/api_op_DescribeSlackUserIdentities.go +++ b/service/chatbot/api_op_DescribeSlackUserIdentities.go @@ -29,8 +29,8 @@ func (c *Client) DescribeSlackUserIdentities(ctx context.Context, params *Descri type DescribeSlackUserIdentitiesInput struct { - // The ARN of the SlackChannelConfiguration associated with the user identities to - // describe. + // The Amazon Resource Number (ARN) of the SlackChannelConfiguration associated + // with the user identities to describe. ChatConfigurationArn *string // The maximum number of results to include in the response. If more results exist @@ -38,7 +38,7 @@ type DescribeSlackUserIdentitiesInput struct { // the remaining results can be retrieved. MaxResults *int32 - // An optional token returned from a prior request. Use this token for pagination + // An optional token returned from a prior request. Use this token for pagination // of results from this action. If this parameter is specified, the response // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string @@ -48,7 +48,7 @@ type DescribeSlackUserIdentitiesInput struct { type DescribeSlackUserIdentitiesOutput struct { - // An optional token returned from a prior request. Use this token for pagination + // An optional token returned from a prior request. Use this token for pagination // of results from this action. If this parameter is specified, the response // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string diff --git a/service/chatbot/api_op_DescribeSlackWorkspaces.go b/service/chatbot/api_op_DescribeSlackWorkspaces.go index d646e8fbb97..b29c96bb6e0 100644 --- a/service/chatbot/api_op_DescribeSlackWorkspaces.go +++ b/service/chatbot/api_op_DescribeSlackWorkspaces.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists all authorized Slack Workspaces for AWS Account +// List all authorized Slack workspaces connected to the AWS Account onboarded +// with AWS Chatbot. func (c *Client) DescribeSlackWorkspaces(ctx context.Context, params *DescribeSlackWorkspacesInput, optFns ...func(*Options)) (*DescribeSlackWorkspacesOutput, error) { if params == nil { params = &DescribeSlackWorkspacesInput{} @@ -34,7 +35,7 @@ type DescribeSlackWorkspacesInput struct { // the remaining results can be retrieved. MaxResults *int32 - // An optional token returned from a prior request. Use this token for pagination + // An optional token returned from a prior request. Use this token for pagination // of results from this action. If this parameter is specified, the response // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string @@ -44,12 +45,12 @@ type DescribeSlackWorkspacesInput struct { type DescribeSlackWorkspacesOutput struct { - // An optional token returned from a prior request. Use this token for pagination + // An optional token returned from a prior request. Use this token for pagination // of results from this action. If this parameter is specified, the response // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string - // A list of Slack Workspaces registered with AWS Chatbot. + // A list of Slack workspaces registered with AWS Chatbot. SlackWorkspaces []types.SlackWorkspace // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_GetAccountPreferences.go b/service/chatbot/api_op_GetAccountPreferences.go index e5ea562e13e..ac9a888c234 100644 --- a/service/chatbot/api_op_GetAccountPreferences.go +++ b/service/chatbot/api_op_GetAccountPreferences.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Get Chatbot account level preferences +// Returns AWS Chatbot account preferences. func (c *Client) GetAccountPreferences(ctx context.Context, params *GetAccountPreferencesInput, optFns ...func(*Options)) (*GetAccountPreferencesOutput, error) { if params == nil { params = &GetAccountPreferencesInput{} @@ -33,7 +33,7 @@ type GetAccountPreferencesInput struct { type GetAccountPreferencesOutput struct { - // Preferences which apply for AWS Chatbot usage in the calling AWS account. + // The preferences related to AWS Chatbot usage in the calling AWS account. AccountPreferences *types.AccountPreferences // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_GetMicrosoftTeamsChannelConfiguration.go b/service/chatbot/api_op_GetMicrosoftTeamsChannelConfiguration.go index 9144c23dab0..9b84876e92f 100644 --- a/service/chatbot/api_op_GetMicrosoftTeamsChannelConfiguration.go +++ b/service/chatbot/api_op_GetMicrosoftTeamsChannelConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Get a single MS Teams Channel Configurations +// Returns a Microsoft Teams channel configuration in an AWS account. func (c *Client) GetMicrosoftTeamsChannelConfiguration(ctx context.Context, params *GetMicrosoftTeamsChannelConfigurationInput, optFns ...func(*Options)) (*GetMicrosoftTeamsChannelConfigurationOutput, error) { if params == nil { params = &GetMicrosoftTeamsChannelConfigurationInput{} @@ -29,7 +29,8 @@ func (c *Client) GetMicrosoftTeamsChannelConfiguration(ctx context.Context, para type GetMicrosoftTeamsChannelConfigurationInput struct { - // The ARN of the MicrosoftTeamsChannelConfiguration to retrieve. + // The Amazon Resource Number (ARN) of the MicrosoftTeamsChannelConfiguration to + // retrieve. // // This member is required. ChatConfigurationArn *string diff --git a/service/chatbot/api_op_ListMicrosoftTeamsChannelConfigurations.go b/service/chatbot/api_op_ListMicrosoftTeamsChannelConfigurations.go index 398c02f23fc..5ac2cbf5072 100644 --- a/service/chatbot/api_op_ListMicrosoftTeamsChannelConfigurations.go +++ b/service/chatbot/api_op_ListMicrosoftTeamsChannelConfigurations.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists MS Teams Channel Configurations optionally filtered by TeamId +// Lists all AWS Chatbot Microsoft Teams channel configurations in an AWS account. func (c *Client) ListMicrosoftTeamsChannelConfigurations(ctx context.Context, params *ListMicrosoftTeamsChannelConfigurationsInput, optFns ...func(*Options)) (*ListMicrosoftTeamsChannelConfigurationsOutput, error) { if params == nil { params = &ListMicrosoftTeamsChannelConfigurationsInput{} @@ -39,11 +39,14 @@ type ListMicrosoftTeamsChannelConfigurationsInput struct { // includes only results beyond the token, up to the value specified by MaxResults. NextToken *string - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup TeamId *string noSmithyDocumentSerde diff --git a/service/chatbot/api_op_ListMicrosoftTeamsConfiguredTeams.go b/service/chatbot/api_op_ListMicrosoftTeamsConfiguredTeams.go index bd4bfcc5595..10d3f238a9f 100644 --- a/service/chatbot/api_op_ListMicrosoftTeamsConfiguredTeams.go +++ b/service/chatbot/api_op_ListMicrosoftTeamsConfiguredTeams.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists all authorized MS teams for AWS Account +// Lists all authorized Microsoft Teams for an AWS Account func (c *Client) ListMicrosoftTeamsConfiguredTeams(ctx context.Context, params *ListMicrosoftTeamsConfiguredTeamsInput, optFns ...func(*Options)) (*ListMicrosoftTeamsConfiguredTeamsOutput, error) { if params == nil { params = &ListMicrosoftTeamsConfiguredTeamsInput{} @@ -44,7 +44,7 @@ type ListMicrosoftTeamsConfiguredTeamsInput struct { type ListMicrosoftTeamsConfiguredTeamsOutput struct { - // A list of teams in Microsoft Teams that have been configured with AWS Chatbot. + // A list of teams in Microsoft Teams that are configured with AWS Chatbot. ConfiguredTeams []types.ConfiguredTeam // An optional token returned from a prior request. Use this token for pagination diff --git a/service/chatbot/api_op_ListMicrosoftTeamsUserIdentities.go b/service/chatbot/api_op_ListMicrosoftTeamsUserIdentities.go index 21d0328de90..7ac4bd9e745 100644 --- a/service/chatbot/api_op_ListMicrosoftTeamsUserIdentities.go +++ b/service/chatbot/api_op_ListMicrosoftTeamsUserIdentities.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists all Microsoft Teams user identities with a mapped role. +// A list all Microsoft Teams user identities with a mapped role. func (c *Client) ListMicrosoftTeamsUserIdentities(ctx context.Context, params *ListMicrosoftTeamsUserIdentitiesInput, optFns ...func(*Options)) (*ListMicrosoftTeamsUserIdentitiesOutput, error) { if params == nil { params = &ListMicrosoftTeamsUserIdentitiesInput{} @@ -29,8 +29,8 @@ func (c *Client) ListMicrosoftTeamsUserIdentities(ctx context.Context, params *L type ListMicrosoftTeamsUserIdentitiesInput struct { - // The ARN of the MicrosoftTeamsChannelConfiguration associated with the user - // identities to list. + // The Amazon Resource Number (ARN) of the MicrosoftTeamsChannelConfiguration + // associated with the user identities to list. ChatConfigurationArn *string // The maximum number of results to include in the response. If more results exist diff --git a/service/chatbot/api_op_ListTagsForResource.go b/service/chatbot/api_op_ListTagsForResource.go index c86d0180563..cc2af144b17 100644 --- a/service/chatbot/api_op_ListTagsForResource.go +++ b/service/chatbot/api_op_ListTagsForResource.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Retrieves the list of tags applied to a configuration. +// Lists all of the tags associated with the Amazon Resource Name (ARN) that you +// specify. The resource can be a user, server, or role. func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error) { if params == nil { params = &ListTagsForResourceInput{} @@ -29,7 +30,7 @@ func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForRes type ListTagsForResourceInput struct { - // The ARN of the configuration. + // The ARN you specified to list the tags of. // // This member is required. ResourceARN *string @@ -39,7 +40,8 @@ type ListTagsForResourceInput struct { type ListTagsForResourceOutput struct { - // A list of tags applied to the configuration. + // Key-value pairs that are assigned to a resource, usually for the purpose of + // grouping and searching for items. Tags are metadata that you define. Tags []types.Tag // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_TagResource.go b/service/chatbot/api_op_TagResource.go index d76d3f9c68e..8b1a8647bcb 100644 --- a/service/chatbot/api_op_TagResource.go +++ b/service/chatbot/api_op_TagResource.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Applies the supplied tags to a configuration. +// Attaches a key-value pair to a resource, as identified by its Amazon Resource +// Name (ARN). Resources are users, servers, roles, and other entities. func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error) { if params == nil { params = &TagResourceInput{} diff --git a/service/chatbot/api_op_UntagResource.go b/service/chatbot/api_op_UntagResource.go index b885c0ebbe1..cf5aafe59c6 100644 --- a/service/chatbot/api_op_UntagResource.go +++ b/service/chatbot/api_op_UntagResource.go @@ -10,7 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Removes the supplied tags from a configuration +// Detaches a key-value pair from a resource, as identified by its Amazon Resource +// Name (ARN). Resources are users, servers, roles, and other entities. func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error) { if params == nil { params = &UntagResourceInput{} @@ -28,12 +29,16 @@ func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, type UntagResourceInput struct { - // The ARN of the configuration. + // The value of the resource that will have the tag removed. An Amazon Resource + // Name (ARN) is an identifier for a specific AWS resource, such as a server, user, + // or role. // // This member is required. ResourceARN *string - // A list of tag keys to remove from the configuration. + // TagKeys are key-value pairs assigned to ARNs that can be used to group and + // search for resources by type. This metadata can be attached to resources for any + // purpose. // // This member is required. TagKeys []string diff --git a/service/chatbot/api_op_UpdateAccountPreferences.go b/service/chatbot/api_op_UpdateAccountPreferences.go index c8d35cf7b76..160576b8fbf 100644 --- a/service/chatbot/api_op_UpdateAccountPreferences.go +++ b/service/chatbot/api_op_UpdateAccountPreferences.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Update Chatbot account level preferences +// Updates AWS Chatbot account preferences. func (c *Client) UpdateAccountPreferences(ctx context.Context, params *UpdateAccountPreferencesInput, optFns ...func(*Options)) (*UpdateAccountPreferencesOutput, error) { if params == nil { params = &UpdateAccountPreferencesInput{} @@ -29,15 +29,16 @@ func (c *Client) UpdateAccountPreferences(ctx context.Context, params *UpdateAcc type UpdateAccountPreferencesInput struct { - // Turns on training data collection. This helps improve the AWS Chatbot - // experience by allowing AWS Chatbot to store and use your customer information, - // such as AWS Chatbot configurations, notifications, user inputs, AWS Chatbot - // generated responses, and interaction data. This data helps us to continuously - // improve and develop Artificial Intelligence (AI) technologies. Your data is not - // shared with any third parties and is protected using sophisticated controls to - // prevent unauthorized access and misuse. AWS Chatbot does not store or use - // interactions in chat channels with Amazon Q for training AWS Chatbot’s AI - // technologies. + // Turns on training data collection. + // + // This helps improve the AWS Chatbot experience by allowing AWS Chatbot to store + // and use your customer information, such as AWS Chatbot configurations, + // notifications, user inputs, AWS Chatbot generated responses, and interaction + // data. This data helps us to continuously improve and develop Artificial + // Intelligence (AI) technologies. Your data is not shared with any third parties + // and is protected using sophisticated controls to prevent unauthorized access and + // misuse. AWS Chatbot does not store or use interactions in chat channels with + // Amazon Q for training AI technologies for AWS Chatbot. TrainingDataCollectionEnabled *bool // Enables use of a user role requirement in your chat configuration. @@ -48,7 +49,7 @@ type UpdateAccountPreferencesInput struct { type UpdateAccountPreferencesOutput struct { - // Preferences which apply for AWS Chatbot usage in the calling AWS account. + // Preferences related to AWS Chatbot usage in the calling AWS account. AccountPreferences *types.AccountPreferences // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_UpdateChimeWebhookConfiguration.go b/service/chatbot/api_op_UpdateChimeWebhookConfiguration.go index a6370a9bbb4..7cb7db18196 100644 --- a/service/chatbot/api_op_UpdateChimeWebhookConfiguration.go +++ b/service/chatbot/api_op_UpdateChimeWebhookConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates a Chime Webhook Configuration +// Updates a Amazon Chime webhook configuration. func (c *Client) UpdateChimeWebhookConfiguration(ctx context.Context, params *UpdateChimeWebhookConfigurationInput, optFns ...func(*Options)) (*UpdateChimeWebhookConfigurationOutput, error) { if params == nil { params = &UpdateChimeWebhookConfigurationInput{} @@ -29,28 +29,34 @@ func (c *Client) UpdateChimeWebhookConfiguration(ctx context.Context, params *Up type UpdateChimeWebhookConfigurationInput struct { - // The ARN of the ChimeWebhookConfiguration to update. + // The Amazon Resource Number (ARN) of the ChimeWebhookConfiguration to update. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html IamRoleArn *string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. SnsTopicArns []string - // Description of the webhook. Recommend using the convention RoomName/WebhookName - // . See Chime setup tutorial for more details: - // https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html. + // A description of the webhook. We recommend using the convention + // RoomName/WebhookName . + // + // For more information, see [Tutorial: Get started with Amazon Chime] in the AWS Chatbot Administrator Guide. + // + // [Tutorial: Get started with Amazon Chime]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html WebhookDescription *string - // URL for the Chime webhook. + // The URL for the Amazon Chime webhook. WebhookUrl *string noSmithyDocumentSerde @@ -58,7 +64,7 @@ type UpdateChimeWebhookConfigurationInput struct { type UpdateChimeWebhookConfigurationOutput struct { - // Chime webhook configuration. + // A Amazon Chime webhook configuration. WebhookConfiguration *types.ChimeWebhookConfiguration // Metadata pertaining to the operation's result. diff --git a/service/chatbot/api_op_UpdateMicrosoftTeamsChannelConfiguration.go b/service/chatbot/api_op_UpdateMicrosoftTeamsChannelConfiguration.go index a320456616c..8e8e107b70b 100644 --- a/service/chatbot/api_op_UpdateMicrosoftTeamsChannelConfiguration.go +++ b/service/chatbot/api_op_UpdateMicrosoftTeamsChannelConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates MS Teams Channel Configuration +// Updates an Microsoft Teams channel configuration. func (c *Client) UpdateMicrosoftTeamsChannelConfiguration(ctx context.Context, params *UpdateMicrosoftTeamsChannelConfigurationInput, optFns ...func(*Options)) (*UpdateMicrosoftTeamsChannelConfigurationOutput, error) { if params == nil { params = &UpdateMicrosoftTeamsChannelConfigurationInput{} @@ -34,7 +34,7 @@ type UpdateMicrosoftTeamsChannelConfigurationInput struct { // This member is required. ChannelId *string - // The ARN of the MicrosoftTeamsChannelConfiguration to update. + // The Amazon Resource Number (ARN) of the TeamsChannelConfiguration to update. // // This member is required. ChatConfigurationArn *string @@ -43,18 +43,22 @@ type UpdateMicrosoftTeamsChannelConfigurationInput struct { ChannelName *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html IamRoleArn *string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. SnsTopicArns []string // Enables use of a user role requirement in your chat configuration. diff --git a/service/chatbot/api_op_UpdateSlackChannelConfiguration.go b/service/chatbot/api_op_UpdateSlackChannelConfiguration.go index e994209e8ab..abeba4b5fa2 100644 --- a/service/chatbot/api_op_UpdateSlackChannelConfiguration.go +++ b/service/chatbot/api_op_UpdateSlackChannelConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates Slack Channel Configuration +// Updates a Slack channel configuration. func (c *Client) UpdateSlackChannelConfiguration(ctx context.Context, params *UpdateSlackChannelConfigurationInput, optFns ...func(*Options)) (*UpdateSlackChannelConfigurationOutput, error) { if params == nil { params = &UpdateSlackChannelConfigurationInput{} @@ -29,34 +29,40 @@ func (c *Client) UpdateSlackChannelConfiguration(ctx context.Context, params *Up type UpdateSlackChannelConfigurationInput struct { - // The ARN of the SlackChannelConfiguration to update. + // The Amazon Resource Number (ARN) of the SlackChannelConfiguration to update. // // This member is required. ChatConfigurationArn *string - // The ID of the Slack channel. To get the ID, open Slack, right click on the - // channel name in the left pane, then choose Copy Link. The channel ID is the - // 9-character string at the end of the URL. For example, ABCBBLZZZ. + // The ID of the Slack channel. + // + // To get this ID, open Slack, right click on the channel name in the left pane, + // then choose Copy Link. The channel ID is the 9-character string at the end of + // the URL. For example, ABCBBLZZZ. // // This member is required. SlackChannelId *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html IamRoleArn *string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // The name of the Slack Channel. + // The name of the Slack channel. SlackChannelName *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. SnsTopicArns []string // Enables use of a user role requirement in your chat configuration. diff --git a/service/chatbot/deserializers.go b/service/chatbot/deserializers.go index 3cf46d88259..dc92fc3ba78 100644 --- a/service/chatbot/deserializers.go +++ b/service/chatbot/deserializers.go @@ -6621,7 +6621,7 @@ func awsRestjson1_deserializeDocumentTeamsChannelConfiguration(v **types.TeamsCh if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected String to be of type string, got %T instead", value) + return fmt.Errorf("expected TeamName to be of type string, got %T instead", value) } sv.TeamName = ptr.String(jtv) } diff --git a/service/chatbot/doc.go b/service/chatbot/doc.go index 9505f47583a..0f9b4cd1789 100644 --- a/service/chatbot/doc.go +++ b/service/chatbot/doc.go @@ -3,5 +3,22 @@ // Package chatbot provides the API client, operations, and parameter types for // AWS Chatbot. // -// AWS Chatbot API +// The AWS Chatbot API Reference provides descriptions, API request parameters, +// and the XML response for each of the AWS Chatbot API actions. +// +// AWS Chatbot APIs are currently available in the following Regions: +// +// - US East (Ohio) - us-east-2 +// +// - US West (Oregon) - us-west-2 +// +// - Asia Pacific (Singapore) - ap-southeast-1 +// +// - Europe (Ireland) - eu-west-1 +// +// The AWS Chatbot console can only be used in US East (Ohio). Your configuration +// data however, is stored in each of the relevant available Regions. +// +// Your AWS CloudTrail events are logged in whatever Region you call from, not US +// East (N. Virginia) by default. package chatbot diff --git a/service/chatbot/types/errors.go b/service/chatbot/types/errors.go index a12487bbc8e..ff329a079b7 100644 --- a/service/chatbot/types/errors.go +++ b/service/chatbot/types/errors.go @@ -490,8 +490,7 @@ func (e *GetTeamsChannelConfigurationException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer } -// Customer/consumer-facing internal service exception. -// https://w.amazon.com/index.php/AWS/API_Standards/Exceptions#InternalServiceError +// Unexpected error during processing of request. type InternalServiceError struct { Message *string @@ -517,7 +516,7 @@ func (e *InternalServiceError) ErrorCode() string { } func (e *InternalServiceError) ErrorFault() smithy.ErrorFault { return smithy.FaultServer } -// Your request input doesn't meet the constraints that AWS Chatbot requires. +// Your request input doesn't meet the constraints required by AWS Chatbot. type InvalidParameterException struct { Message *string @@ -543,7 +542,7 @@ func (e *InvalidParameterException) ErrorCode() string { } func (e *InvalidParameterException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } -// Your request input doesn't meet the constraints that AWS Chatbot requires. +// Your request input doesn't meet the constraints required by AWS Chatbot. type InvalidRequestException struct { Message *string @@ -682,7 +681,7 @@ func (e *ListTeamsChannelConfigurationsException) ErrorFault() smithy.ErrorFault return smithy.FaultServer } -// We were not able to find the resource for your request. +// We were unable to find the resource for your request type ResourceNotFoundException struct { Message *string diff --git a/service/chatbot/types/types.go b/service/chatbot/types/types.go index 4f99ff91cbb..a7322f74632 100644 --- a/service/chatbot/types/types.go +++ b/service/chatbot/types/types.go @@ -6,18 +6,19 @@ import ( smithydocument "github.com/aws/smithy-go/document" ) -// Preferences which apply for AWS Chatbot usage in the calling AWS account. +// Preferences related to AWS Chatbot usage in the calling AWS account. type AccountPreferences struct { - // Turns on training data collection. This helps improve the AWS Chatbot - // experience by allowing AWS Chatbot to store and use your customer information, - // such as AWS Chatbot configurations, notifications, user inputs, AWS Chatbot - // generated responses, and interaction data. This data helps us to continuously - // improve and develop Artificial Intelligence (AI) technologies. Your data is not - // shared with any third parties and is protected using sophisticated controls to - // prevent unauthorized access and misuse. AWS Chatbot does not store or use - // interactions in chat channels with Amazon Q for training AWS Chatbot’s AI - // technologies. + // Turns on training data collection. + // + // This helps improve the AWS Chatbot experience by allowing AWS Chatbot to store + // and use your customer information, such as AWS Chatbot configurations, + // notifications, user inputs, AWS Chatbot generated responses, and interaction + // data. This data helps us to continuously improve and develop Artificial + // Intelligence (AI) technologies. Your data is not shared with any third parties + // and is protected using sophisticated controls to prevent unauthorized access and + // misuse. AWS Chatbot does not store or use interactions in chat channels with + // Amazon Q for training AI technologies for AWS Chatbot. TrainingDataCollectionEnabled *bool // Enables use of a user role requirement in your chat configuration. @@ -29,26 +30,33 @@ type AccountPreferences struct { // An AWS Chatbot configuration for Amazon Chime. type ChimeWebhookConfiguration struct { - // The ARN of the ChimeWebhookConfiguration. + // The Amazon Resource Number (ARN) of the ChimeWebhookConfiguration. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. // // This member is required. SnsTopicArns []string - // Description of the webhook. Recommend using the convention RoomName/WebhookName - // . See Chime setup tutorial for more details: - // https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html. + // A description of the webhook. We recommend using the convention + // RoomName/WebhookName . + // + // For more information, see [Tutorial: Get started with Amazon Chime] in the AWS Chatbot Administrator Guide. + // + // [Tutorial: Get started with Amazon Chime]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chime-setup.html // // This member is required. WebhookDescription *string @@ -56,25 +64,27 @@ type ChimeWebhookConfiguration struct { // The name of the configuration. ConfigurationName *string - // Specifies the logging level for this configuration. This property affects the - // log entries pushed to Amazon CloudWatch Logs.Logging levels include ERROR, INFO, - // or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // A list of tags applied to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []Tag noSmithyDocumentSerde } -// A Microsoft Teams team that has been authorized with AWS Chatbot. +// A Microsoft Teams team that is authorized with AWS Chatbot. type ConfiguredTeam struct { - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup // // This member is required. TeamId *string @@ -93,36 +103,41 @@ type ConfiguredTeam struct { // An AWS Chatbot configuration for Slack. type SlackChannelConfiguration struct { - // The ARN of the SlackChannelConfiguration. + // The Amazon Resource Number (ARN) of the SlackChannelConfiguration. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ID of the Slack channel. To get the ID, open Slack, right click on the - // channel name in the left pane, then choose Copy Link. The channel ID is the - // 9-character string at the end of the URL. For example, ABCBBLZZZ. + // The ID of the Slack channel. + // + // To get this ID, open Slack, right click on the channel name in the left pane, + // then choose Copy Link. The channel ID is the 9-character string at the end of + // the URL. For example, ABCBBLZZZ. // // This member is required. SlackChannelId *string - // The name of the Slack Channel. + // The name of the Slack channel. // // This member is required. SlackChannelName *string - // The ID of the Slack workspace authorized with AWS Chatbot. + // The ID of the Slack workspace authorized with Amazon Chime. // // This member is required. SlackTeamId *string - // Name of the Slack Workspace. + // Name of the Slack workspace. // // This member is required. SlackTeamName *string @@ -136,13 +151,14 @@ type SlackChannelConfiguration struct { ConfigurationName *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // A list of tags applied to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []Tag // Enables use of a user role requirement in your chat configuration. @@ -151,17 +167,21 @@ type SlackChannelConfiguration struct { noSmithyDocumentSerde } -// Identifes a User level permission for a channel configuration. +// Identifes a user level permission for a channel configuration. type SlackUserIdentity struct { - // The ARN of the SlackChannelConfiguration associated with the user identity. + // The Amazon Resource Number (ARN) of the SlackChannelConfiguration associated + // with the user identity to delete. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string @@ -171,19 +191,18 @@ type SlackUserIdentity struct { // This member is required. SlackTeamId *string - // The ID of the user in Slack. + // The ID of the user in Slack // // This member is required. SlackUserId *string - // The AWS user identity ARN used to associate a Slack User Identity with an IAM - // Role. + // The AWS user identity ARN used to associate a Slack user ID with an IAM Role. AwsUserIdentity *string noSmithyDocumentSerde } -// A Slack Workspace. +// A Slack workspace. type SlackWorkspace struct { // The ID of the Slack workspace authorized with AWS Chatbot. @@ -191,7 +210,7 @@ type SlackWorkspace struct { // This member is required. SlackTeamId *string - // Name of the Slack Workspace. + // The name of the Slack workspace. // // This member is required. SlackTeamName *string @@ -199,15 +218,22 @@ type SlackWorkspace struct { noSmithyDocumentSerde } -// A tag applied to the configuration. +// A key-value pair. A tag consists of a tag key and a tag value. Tag keys and tag +// values are both required, but tag values can be empty (null) strings. +// +// Do not include confidential or sensitive information in this field. +// +// For more information, see [User-Defined Tag Restrictions] in the AWS Billing and Cost Management User Guide. +// +// [User-Defined Tag Restrictions]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html type Tag struct { - // The tag key. + // The key of the tag. // // This member is required. TagKey *string - // The tag value. + // The value of the tag. // // This member is required. TagValue *string @@ -223,28 +249,36 @@ type TeamsChannelConfiguration struct { // This member is required. ChannelId *string - // The ARN of the MicrosoftTeamsChannelConfiguration. + // The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration + // associated with the user identity to delete. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ARNs of the SNS topics that deliver notifications to AWS Chatbot. + // The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications + // to AWS Chatbot. // // This member is required. SnsTopicArns []string - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup // // This member is required. TeamId *string @@ -261,13 +295,14 @@ type TeamsChannelConfiguration struct { ConfigurationName *string // The list of IAM policy ARNs that are applied as channel guardrails. The AWS - // managed 'AdministratorAccess' policy is applied by default if this is not set. + // managed AdministratorAccess policy is applied by default if this is not set. GuardrailPolicyArns []string - // Logging levels include ERROR, INFO, or NONE. + // Logging levels include ERROR , INFO , or NONE . LoggingLevel *string - // A list of tags applied to the configuration. + // A map of tags assigned to a resource. A tag is a string-to-string map of + // key-value pairs. Tags []Tag // The name of the Microsoft Teams Team. @@ -282,29 +317,35 @@ type TeamsChannelConfiguration struct { // Identifes a user level permission for a channel configuration. type TeamsUserIdentity struct { - // The ARN of the MicrosoftTeamsChannelConfiguration associated with the user - // identity. + // The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration + // associated with the user identity to delete. // // This member is required. ChatConfigurationArn *string - // The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a - // user-defined role that AWS Chatbot will assume. This is not the service-linked - // role. For more information, see IAM Policies for AWS Chatbot. + // A user-defined role that AWS Chatbot assumes. This is not the service-linked + // role. + // + // For more information, see [IAM policies for AWS Chatbot] in the AWS Chatbot Administrator Guide. + // + // [IAM policies for AWS Chatbot]: https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html // // This member is required. IamRoleArn *string - // The ID of the Microsoft Team authorized with AWS Chatbot. To get the team ID, - // you must perform the initial authorization flow with Microsoft Teams in the AWS - // Chatbot console. Then you can copy and paste the team ID from the console. For - // more details, see steps 1-4 in Get started with Microsoft Teams in the AWS - // Chatbot Administrator Guide. + // The ID of the Microsoft Teams authorized with AWS Chatbot. + // + // To get the team ID, you must perform the initial authorization flow with + // Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team + // ID from the console. For more information, see [Step 1: Configure a Microsoft Teams client]in the AWS Chatbot Administrator + // Guide. + // + // [Step 1: Configure a Microsoft Teams client]: https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup // // This member is required. TeamId *string - // The AWS user identity ARN used to associate a Microsoft Teams User Identity + // The AWS user identity ARN used to associate a Microsoft Teams user Identity // with an IAM Role. AwsUserIdentity *string @@ -314,7 +355,7 @@ type TeamsUserIdentity struct { // The ID of the Microsoft Teams tenant. TeamsTenantId *string - // Id from Microsoft Teams for user. + // The Microsoft Teams user ID. UserId *string noSmithyDocumentSerde diff --git a/service/omics/api_op_CreateRunGroup.go b/service/omics/api_op_CreateRunGroup.go index 37076bee732..50df277b165 100644 --- a/service/omics/api_op_CreateRunGroup.go +++ b/service/omics/api_op_CreateRunGroup.go @@ -10,7 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a run group. +// You can optionally create a run group to limit the compute resources for the +// runs that you add to the group. func (c *Client) CreateRunGroup(ctx context.Context, params *CreateRunGroupInput, optFns ...func(*Options)) (*CreateRunGroupOutput, error) { if params == nil { params = &CreateRunGroupInput{} @@ -34,16 +35,19 @@ type CreateRunGroupInput struct { // This member is required. RequestId *string - // The maximum number of CPUs to use in the group. + // The maximum number of CPUs that can run concurrently across all active runs in + // the run group. MaxCpus *int32 - // A maximum run time for the group in minutes. + // The maximum time for each run (in minutes). If a run exceeds the maximum run + // time, the run fails automatically. MaxDuration *int32 - // The maximum GPUs that can be used by a run group. + // The maximum number of GPUs that can run concurrently across all active runs in + // the run group. MaxGpus *int32 - // The maximum number of concurrent runs for the group. + // The maximum number of runs that can be running at the same time. MaxRuns *int32 // A name for the group. diff --git a/service/omics/api_op_CreateShare.go b/service/omics/api_op_CreateShare.go index 233f396b5a0..055919d7560 100644 --- a/service/omics/api_op_CreateShare.go +++ b/service/omics/api_op_CreateShare.go @@ -17,9 +17,9 @@ import ( // // The following resources support cross-account sharing: // -// - Healthomics variant stores +// - HealthOmics variant stores // -// - Healthomics annotation stores +// - HealthOmics annotation stores // // - Private workflows func (c *Client) CreateShare(ctx context.Context, params *CreateShareInput, optFns ...func(*Options)) (*CreateShareOutput, error) { diff --git a/service/omics/api_op_CreateWorkflow.go b/service/omics/api_op_CreateWorkflow.go index 31cd6b3c7d2..5785b171d00 100644 --- a/service/omics/api_op_CreateWorkflow.go +++ b/service/omics/api_op_CreateWorkflow.go @@ -59,7 +59,7 @@ type CreateWorkflowInput struct { // A parameter template for the workflow. ParameterTemplate map[string]types.WorkflowParameter - // The storage capacity for the workflow in gibibytes. + // The default storage capacity for the workflow runs, in gibibytes. StorageCapacity *int32 // Tags for the workflow. diff --git a/service/omics/api_op_GetReadSetMetadata.go b/service/omics/api_op_GetReadSetMetadata.go index dd7a23ec88a..7aac0129ab0 100644 --- a/service/omics/api_op_GetReadSetMetadata.go +++ b/service/omics/api_op_GetReadSetMetadata.go @@ -75,6 +75,9 @@ type GetReadSetMetadataOutput struct { // This member is required. Status types.ReadSetStatus + // The read set's creation job ID. + CreationJobId *string + // The creation type of the read set. CreationType types.CreationType diff --git a/service/omics/api_op_GetReferenceMetadata.go b/service/omics/api_op_GetReferenceMetadata.go index 0179fd87339..eafcba9639c 100644 --- a/service/omics/api_op_GetReferenceMetadata.go +++ b/service/omics/api_op_GetReferenceMetadata.go @@ -75,6 +75,12 @@ type GetReferenceMetadataOutput struct { // This member is required. UpdateTime *time.Time + // The reference's creation job ID. + CreationJobId *string + + // The reference's creation type. + CreationType types.ReferenceCreationType + // The reference's description. Description *string diff --git a/service/omics/api_op_GetWorkflow.go b/service/omics/api_op_GetWorkflow.go index a4975cfd51e..f73744271d2 100644 --- a/service/omics/api_op_GetWorkflow.go +++ b/service/omics/api_op_GetWorkflow.go @@ -96,7 +96,7 @@ type GetWorkflowOutput struct { // The workflow's status message. StatusMessage *string - // The workflow's storage capacity in gibibytes. + // The workflow's default run storage capacity in gibibytes. StorageCapacity *int32 // The workflow's tags. diff --git a/service/omics/deserializers.go b/service/omics/deserializers.go index 2e7532916a3..8591acd2478 100644 --- a/service/omics/deserializers.go +++ b/service/omics/deserializers.go @@ -5960,6 +5960,15 @@ func awsRestjson1_deserializeOpDocumentGetReadSetMetadataOutput(v **GetReadSetMe sv.Arn = ptr.String(jtv) } + case "creationJobId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected CreationJobId to be of type string, got %T instead", value) + } + sv.CreationJobId = ptr.String(jtv) + } + case "creationTime": if value != nil { jtv, ok := value.(string) @@ -6601,6 +6610,15 @@ func awsRestjson1_deserializeOpDocumentGetReferenceMetadataOutput(v **GetReferen sv.Arn = ptr.String(jtv) } + case "creationJobId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected CreationJobId to be of type string, got %T instead", value) + } + sv.CreationJobId = ptr.String(jtv) + } + case "creationTime": if value != nil { jtv, ok := value.(string) @@ -6614,6 +6632,15 @@ func awsRestjson1_deserializeOpDocumentGetReferenceMetadataOutput(v **GetReferen sv.CreationTime = ptr.Time(t) } + case "creationType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ReferenceCreationType to be of type string, got %T instead", value) + } + sv.CreationType = types.ReferenceCreationType(jtv) + } + case "description": if value != nil { jtv, ok := value.(string) @@ -17313,6 +17340,15 @@ func awsRestjson1_deserializeDocumentImportReadSetSourceItem(v **types.ImportRea sv.Name = ptr.String(jtv) } + case "readSetId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ReadSetId to be of type string, got %T instead", value) + } + sv.ReadSetId = ptr.String(jtv) + } + case "referenceArn": if value != nil { jtv, ok := value.(string) @@ -17587,6 +17623,15 @@ func awsRestjson1_deserializeDocumentImportReferenceSourceItem(v **types.ImportR sv.Name = ptr.String(jtv) } + case "referenceId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ReferenceId to be of type string, got %T instead", value) + } + sv.ReferenceId = ptr.String(jtv) + } + case "sourceFile": if value != nil { jtv, ok := value.(string) diff --git a/service/omics/types/enums.go b/service/omics/types/enums.go index acb3dde6711..df11f2d50d8 100644 --- a/service/omics/types/enums.go +++ b/service/omics/types/enums.go @@ -457,6 +457,23 @@ func (ReadSetStatus) Values() []ReadSetStatus { } } +type ReferenceCreationType string + +// Enum values for ReferenceCreationType +const ( + ReferenceCreationTypeImport ReferenceCreationType = "IMPORT" +) + +// Values returns all known values for ReferenceCreationType. Note that this can +// be expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (ReferenceCreationType) Values() []ReferenceCreationType { + return []ReferenceCreationType{ + "IMPORT", + } +} + type ReferenceFile string // Enum values for ReferenceFile diff --git a/service/omics/types/types.go b/service/omics/types/types.go index 0504cd73978..6f3c2904f8e 100644 --- a/service/omics/types/types.go +++ b/service/omics/types/types.go @@ -540,6 +540,9 @@ type ImportReadSetSourceItem struct { // The source's name. Name *string + // The source's read set ID. + ReadSetId *string + // The source's genome reference ARN. ReferenceArn *string @@ -615,6 +618,9 @@ type ImportReferenceSourceItem struct { // The source's name. Name *string + // The source's reference ID. + ReferenceId *string + // The source file's location in Amazon S3. SourceFile *string diff --git a/service/polly/types/enums.go b/service/polly/types/enums.go index d3e379311bb..5cd1c0d5fdf 100644 --- a/service/polly/types/enums.go +++ b/service/polly/types/enums.go @@ -87,6 +87,8 @@ const ( LanguageCodeEnIe LanguageCode = "en-IE" LanguageCodeNlBe LanguageCode = "nl-BE" LanguageCodeFrBe LanguageCode = "fr-BE" + LanguageCodeCsCz LanguageCode = "cs-CZ" + LanguageCodeDeCh LanguageCode = "de-CH" ) // Values returns all known values for LanguageCode. Note that this can be @@ -134,6 +136,8 @@ func (LanguageCode) Values() []LanguageCode { "en-IE", "nl-BE", "fr-BE", + "cs-CZ", + "de-CH", } } @@ -325,6 +329,8 @@ const ( VoiceIdDanielle VoiceId = "Danielle" VoiceIdGregory VoiceId = "Gregory" VoiceIdBurcu VoiceId = "Burcu" + VoiceIdJitka VoiceId = "Jitka" + VoiceIdSabrina VoiceId = "Sabrina" ) // Values returns all known values for VoiceId. Note that this can be expanded in @@ -429,5 +435,7 @@ func (VoiceId) Values() []VoiceId { "Danielle", "Gregory", "Burcu", + "Jitka", + "Sabrina", } }