// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package qbusiness import ( "bytes" "fmt" "io" "sync" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/eventstream" "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi" "github.com/aws/aws-sdk-go/private/protocol/rest" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opBatchDeleteDocument = "BatchDeleteDocument" // BatchDeleteDocumentRequest generates a "aws/request.Request" representing the // client's request for the BatchDeleteDocument operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See BatchDeleteDocument for more information on using the BatchDeleteDocument // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the BatchDeleteDocumentRequest method. // req, resp := client.BatchDeleteDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchDeleteDocument func (c *QBusiness) BatchDeleteDocumentRequest(input *BatchDeleteDocumentInput) (req *request.Request, output *BatchDeleteDocumentOutput) { op := &request.Operation{ Name: opBatchDeleteDocument, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/indices/{indexId}/documents/delete", } if input == nil { input = &BatchDeleteDocumentInput{} } output = &BatchDeleteDocumentOutput{} req = c.newRequest(op, input, output) return } // BatchDeleteDocument API operation for QBusiness. // // Asynchronously deletes one or more documents added using the BatchPutDocument // API from an Amazon Q Business index. // // You can see the progress of the deletion, and any error messages related // to the process, by using CloudWatch. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation BatchDeleteDocument for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchDeleteDocument func (c *QBusiness) BatchDeleteDocument(input *BatchDeleteDocumentInput) (*BatchDeleteDocumentOutput, error) { req, out := c.BatchDeleteDocumentRequest(input) return out, req.Send() } // BatchDeleteDocumentWithContext is the same as BatchDeleteDocument with the addition of // the ability to pass a context and additional request options. // // See BatchDeleteDocument for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) BatchDeleteDocumentWithContext(ctx aws.Context, input *BatchDeleteDocumentInput, opts ...request.Option) (*BatchDeleteDocumentOutput, error) { req, out := c.BatchDeleteDocumentRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opBatchPutDocument = "BatchPutDocument" // BatchPutDocumentRequest generates a "aws/request.Request" representing the // client's request for the BatchPutDocument operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See BatchPutDocument for more information on using the BatchPutDocument // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the BatchPutDocumentRequest method. // req, resp := client.BatchPutDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchPutDocument func (c *QBusiness) BatchPutDocumentRequest(input *BatchPutDocumentInput) (req *request.Request, output *BatchPutDocumentOutput) { op := &request.Operation{ Name: opBatchPutDocument, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/indices/{indexId}/documents", } if input == nil { input = &BatchPutDocumentInput{} } output = &BatchPutDocumentOutput{} req = c.newRequest(op, input, output) return } // BatchPutDocument API operation for QBusiness. // // Adds one or more documents to an Amazon Q Business index. // // You use this API to: // // - ingest your structured and unstructured documents and documents stored // in an Amazon S3 bucket into an Amazon Q Business index. // // - add custom attributes to documents in an Amazon Q Business index. // // - attach an access control list to the documents added to an Amazon Q // Business index. // // You can see the progress of the deletion, and any error messages related // to the process, by using CloudWatch. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation BatchPutDocument for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchPutDocument func (c *QBusiness) BatchPutDocument(input *BatchPutDocumentInput) (*BatchPutDocumentOutput, error) { req, out := c.BatchPutDocumentRequest(input) return out, req.Send() } // BatchPutDocumentWithContext is the same as BatchPutDocument with the addition of // the ability to pass a context and additional request options. // // See BatchPutDocument for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) BatchPutDocumentWithContext(ctx aws.Context, input *BatchPutDocumentInput, opts ...request.Option) (*BatchPutDocumentOutput, error) { req, out := c.BatchPutDocumentRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opChat = "Chat" // ChatRequest generates a "aws/request.Request" representing the // client's request for the Chat operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See Chat for more information on using the Chat // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ChatRequest method. // req, resp := client.ChatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/Chat func (c *QBusiness) ChatRequest(input *ChatInput) (req *request.Request, output *ChatOutput) { op := &request.Operation{ Name: opChat, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/conversations", } if input == nil { input = &ChatInput{} } output = &ChatOutput{} req = c.newRequest(op, input, output) req.Handlers.UnmarshalMeta.PushBack( protocol.RequireHTTPMinProtocol{Major: 2}.Handler, ) es := NewChatEventStream() output.eventStream = es req.Handlers.Sign.PushFront(es.setupInputPipe) req.Handlers.UnmarshalError.PushBackNamed(request.NamedHandler{ Name: "InputPipeCloser", Fn: func(r *request.Request) { err := es.closeInputPipe() if err != nil { r.Error = awserr.New(eventstreamapi.InputWriterCloseErrorCode, err.Error(), r.Error) } }, }) req.Handlers.Build.PushBack(request.WithSetRequestHeaders(map[string]string{ "Content-Type": "application/vnd.amazon.eventstream", "X-Amz-Content-Sha256": "STREAMING-AWS4-HMAC-SHA256-EVENTS", })) req.Handlers.Build.Swap(restjson.BuildHandler.Name, rest.BuildHandler) eventstreamapi.ApplyHTTPTransportFixes(req) req.Handlers.Send.Swap(client.LogHTTPRequestHandler.Name, client.LogHTTPRequestHeaderHandler) req.Handlers.Unmarshal.PushBack(es.runInputStream) req.Handlers.Send.Swap(client.LogHTTPResponseHandler.Name, client.LogHTTPResponseHeaderHandler) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, rest.UnmarshalHandler) req.Handlers.Unmarshal.PushBack(es.runOutputStream) req.Handlers.Unmarshal.PushBack(es.runOnStreamPartClose) return } // Chat API operation for QBusiness. // // Starts or continues a streaming Amazon Q Business conversation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation Chat for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - LicenseNotFoundException // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/Chat func (c *QBusiness) Chat(input *ChatInput) (*ChatOutput, error) { req, out := c.ChatRequest(input) return out, req.Send() } // ChatWithContext is the same as Chat with the addition of // the ability to pass a context and additional request options. // // See Chat for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ChatWithContext(ctx aws.Context, input *ChatInput, opts ...request.Option) (*ChatOutput, error) { req, out := c.ChatRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } var _ awserr.Error var _ time.Time // ChatEventStream provides the event stream handling for the Chat. // // For testing and mocking the event stream this type should be initialized via // the NewChatEventStream constructor function. Using the functional options // to pass in nested mock behavior. type ChatEventStream struct { // Writer is the EventStream writer for the ChatInputStream // events. This value is automatically set by the SDK when the API call is made // Use this member when unit testing your code with the SDK to mock out the // EventStream Writer. // // Must not be nil. Writer ChatInputStreamWriter inputWriter io.WriteCloser // Reader is the EventStream reader for the ChatOutputStream // events. This value is automatically set by the SDK when the API call is made // Use this member when unit testing your code with the SDK to mock out the // EventStream Reader. // // Must not be nil. Reader ChatOutputStreamReader outputReader io.ReadCloser done chan struct{} closeOnce sync.Once err *eventstreamapi.OnceError } // NewChatEventStream initializes an ChatEventStream. // This function should only be used for testing and mocking the ChatEventStream // stream within your application. // // The Writer member must be set before writing events to the stream. // // The Reader member must be set before reading events from the stream. // // es := NewChatEventStream(func(o *ChatEventStream){ // es.Writer = myMockStreamWriter // es.Reader = myMockStreamReader // }) func NewChatEventStream(opts ...func(*ChatEventStream)) *ChatEventStream { es := &ChatEventStream{ done: make(chan struct{}), err: eventstreamapi.NewOnceError(), } for _, fn := range opts { fn(es) } return es } func (es *ChatEventStream) runOnStreamPartClose(r *request.Request) { if es.done == nil { return } go es.waitStreamPartClose() } func (es *ChatEventStream) waitStreamPartClose() { var inputErrCh <-chan struct{} if v, ok := es.Writer.(interface{ ErrorSet() <-chan struct{} }); ok { inputErrCh = v.ErrorSet() } var outputErrCh <-chan struct{} if v, ok := es.Reader.(interface{ ErrorSet() <-chan struct{} }); ok { outputErrCh = v.ErrorSet() } var outputClosedCh <-chan struct{} if v, ok := es.Reader.(interface{ Closed() <-chan struct{} }); ok { outputClosedCh = v.Closed() } select { case <-es.done: case <-inputErrCh: es.err.SetError(es.Writer.Err()) es.Close() case <-outputErrCh: es.err.SetError(es.Reader.Err()) es.Close() case <-outputClosedCh: if err := es.Reader.Err(); err != nil { es.err.SetError(es.Reader.Err()) } es.Close() } } func (es *ChatEventStream) setupInputPipe(r *request.Request) { inputReader, inputWriter := io.Pipe() r.SetStreamingBody(inputReader) es.inputWriter = inputWriter } // Closes the input-pipe writer func (es *ChatEventStream) closeInputPipe() error { if es.inputWriter != nil { return es.inputWriter.Close() } return nil } // Send writes the event to the stream blocking until the event is written. // Returns an error if the event was not written. // // These events are: // // - AttachmentInputEvent // - AuthChallengeResponseEvent // - ConfigurationEvent // - EndOfInputEvent // - TextInputEvent func (es *ChatEventStream) Send(ctx aws.Context, event ChatInputStreamEvent) error { return es.Writer.Send(ctx, event) } func (es *ChatEventStream) runInputStream(r *request.Request) { var opts []func(*eventstream.Encoder) if r.Config.Logger != nil && r.Config.LogLevel.Matches(aws.LogDebugWithEventStreamBody) { opts = append(opts, eventstream.EncodeWithLogger(r.Config.Logger)) } var encoder eventstreamapi.Encoder = eventstream.NewEncoder(es.inputWriter, opts...) var closer aws.MultiCloser sigSeed, err := v4.GetSignedRequestSignature(r.HTTPRequest) if err != nil { r.Error = awserr.New(request.ErrCodeSerialization, "unable to get initial request's signature", err) return } signer := eventstreamapi.NewSignEncoder( v4.NewStreamSigner(r.ClientInfo.SigningRegion, r.ClientInfo.SigningName, sigSeed, r.Config.Credentials), encoder, ) encoder = signer closer = append(closer, signer) closer = append(closer, es.inputWriter) eventWriter := eventstreamapi.NewEventWriter(encoder, protocol.HandlerPayloadMarshal{ Marshalers: r.Handlers.BuildStream, }, eventTypeForChatInputStreamEvent, ) es.Writer = &writeChatInputStream{ StreamWriter: eventstreamapi.NewStreamWriter(eventWriter, closer), } } // Events returns a channel to read events from. // // These events are: // // - ActionReviewEvent // - AuthChallengeRequestEvent // - FailedAttachmentEvent // - MetadataEvent // - TextOutputEvent // - ChatOutputStreamUnknownEvent func (es *ChatEventStream) Events() <-chan ChatOutputStreamEvent { return es.Reader.Events() } func (es *ChatEventStream) runOutputStream(r *request.Request) { var opts []func(*eventstream.Decoder) if r.Config.Logger != nil && r.Config.LogLevel.Matches(aws.LogDebugWithEventStreamBody) { opts = append(opts, eventstream.DecodeWithLogger(r.Config.Logger)) } unmarshalerForEvent := unmarshalerForChatOutputStreamEvent{ metadata: protocol.ResponseMetadata{ StatusCode: r.HTTPResponse.StatusCode, RequestID: r.RequestID, }, }.UnmarshalerForEventName decoder := eventstream.NewDecoder(r.HTTPResponse.Body, opts...) eventReader := eventstreamapi.NewEventReader(decoder, protocol.HandlerPayloadUnmarshal{ Unmarshalers: r.Handlers.UnmarshalStream, }, unmarshalerForEvent, ) es.outputReader = r.HTTPResponse.Body es.Reader = newReadChatOutputStream(eventReader) } // Close closes the stream. This will also cause the stream to be closed. // Close must be called when done using the stream API. Not calling Close // may result in resource leaks. // // Will close the underlying EventStream writer, and no more events can be // sent. // // You can use the closing of the Reader's Events channel to terminate your // application's read from the API's stream. func (es *ChatEventStream) Close() (err error) { es.closeOnce.Do(es.safeClose) return es.Err() } func (es *ChatEventStream) safeClose() { if es.done != nil { close(es.done) } t := time.NewTicker(time.Second) defer t.Stop() writeCloseDone := make(chan error) go func() { if err := es.Writer.Close(); err != nil { es.err.SetError(err) } close(writeCloseDone) }() select { case <-t.C: case <-writeCloseDone: } if err := es.closeInputPipe(); err != nil { es.err.SetError(err) } es.Reader.Close() if es.outputReader != nil { es.outputReader.Close() } } // Err returns any error that occurred while reading or writing EventStream // Events from the service API's response. Returns nil if there were no errors. func (es *ChatEventStream) Err() error { if err := es.err.Err(); err != nil { return err } if err := es.Writer.Err(); err != nil { return err } if err := es.Reader.Err(); err != nil { return err } return nil } const opChatSync = "ChatSync" // ChatSyncRequest generates a "aws/request.Request" representing the // client's request for the ChatSync operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ChatSync for more information on using the ChatSync // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ChatSyncRequest method. // req, resp := client.ChatSyncRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ChatSync func (c *QBusiness) ChatSyncRequest(input *ChatSyncInput) (req *request.Request, output *ChatSyncOutput) { op := &request.Operation{ Name: opChatSync, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/conversations?sync", } if input == nil { input = &ChatSyncInput{} } output = &ChatSyncOutput{} req = c.newRequest(op, input, output) return } // ChatSync API operation for QBusiness. // // Starts or continues a non-streaming Amazon Q Business conversation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ChatSync for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - LicenseNotFoundException // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ChatSync func (c *QBusiness) ChatSync(input *ChatSyncInput) (*ChatSyncOutput, error) { req, out := c.ChatSyncRequest(input) return out, req.Send() } // ChatSyncWithContext is the same as ChatSync with the addition of // the ability to pass a context and additional request options. // // See ChatSync for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ChatSyncWithContext(ctx aws.Context, input *ChatSyncInput, opts ...request.Option) (*ChatSyncOutput, error) { req, out := c.ChatSyncRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateApplication = "CreateApplication" // CreateApplicationRequest generates a "aws/request.Request" representing the // client's request for the CreateApplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateApplication for more information on using the CreateApplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreateApplicationRequest method. // req, resp := client.CreateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateApplication func (c *QBusiness) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { op := &request.Operation{ Name: opCreateApplication, HTTPMethod: "POST", HTTPPath: "/applications", } if input == nil { input = &CreateApplicationInput{} } output = &CreateApplicationOutput{} req = c.newRequest(op, input, output) return } // CreateApplication API operation for QBusiness. // // Creates an Amazon Q Business application. // // There are new tiers for Amazon Q Business. Not all features in Amazon Q Business // Pro are also available in Amazon Q Business Lite. For information on what's // included in Amazon Q Business Lite and what's included in Amazon Q Business // Pro, see Amazon Q Business tiers (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/tiers.html#user-sub-tiers). // You must use the Amazon Q Business console to assign subscription tiers to // users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreateApplication for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateApplication func (c *QBusiness) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) return out, req.Send() } // CreateApplicationWithContext is the same as CreateApplication with the addition of // the ability to pass a context and additional request options. // // See CreateApplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateIndex = "CreateIndex" // CreateIndexRequest generates a "aws/request.Request" representing the // client's request for the CreateIndex operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateIndex for more information on using the CreateIndex // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreateIndexRequest method. // req, resp := client.CreateIndexRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateIndex func (c *QBusiness) CreateIndexRequest(input *CreateIndexInput) (req *request.Request, output *CreateIndexOutput) { op := &request.Operation{ Name: opCreateIndex, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/indices", } if input == nil { input = &CreateIndexInput{} } output = &CreateIndexOutput{} req = c.newRequest(op, input, output) return } // CreateIndex API operation for QBusiness. // // Creates an Amazon Q Business index. // // To determine if index creation has completed, check the Status field returned // from a call to DescribeIndex. The Status field is set to ACTIVE when the // index is ready to use. // // Once the index is active, you can index your documents using the BatchPutDocument // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_BatchPutDocument.html) // API or the CreateDataSource (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_CreateDataSource.html) // API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreateIndex for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateIndex func (c *QBusiness) CreateIndex(input *CreateIndexInput) (*CreateIndexOutput, error) { req, out := c.CreateIndexRequest(input) return out, req.Send() } // CreateIndexWithContext is the same as CreateIndex with the addition of // the ability to pass a context and additional request options. // // See CreateIndex for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreateIndexWithContext(ctx aws.Context, input *CreateIndexInput, opts ...request.Option) (*CreateIndexOutput, error) { req, out := c.CreateIndexRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreatePlugin = "CreatePlugin" // CreatePluginRequest generates a "aws/request.Request" representing the // client's request for the CreatePlugin operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreatePlugin for more information on using the CreatePlugin // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreatePluginRequest method. // req, resp := client.CreatePluginRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreatePlugin func (c *QBusiness) CreatePluginRequest(input *CreatePluginInput) (req *request.Request, output *CreatePluginOutput) { op := &request.Operation{ Name: opCreatePlugin, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/plugins", } if input == nil { input = &CreatePluginInput{} } output = &CreatePluginOutput{} req = c.newRequest(op, input, output) return } // CreatePlugin API operation for QBusiness. // // Creates an Amazon Q Business plugin. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreatePlugin for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreatePlugin func (c *QBusiness) CreatePlugin(input *CreatePluginInput) (*CreatePluginOutput, error) { req, out := c.CreatePluginRequest(input) return out, req.Send() } // CreatePluginWithContext is the same as CreatePlugin with the addition of // the ability to pass a context and additional request options. // // See CreatePlugin for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreatePluginWithContext(ctx aws.Context, input *CreatePluginInput, opts ...request.Option) (*CreatePluginOutput, error) { req, out := c.CreatePluginRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateRetriever = "CreateRetriever" // CreateRetrieverRequest generates a "aws/request.Request" representing the // client's request for the CreateRetriever operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateRetriever for more information on using the CreateRetriever // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreateRetrieverRequest method. // req, resp := client.CreateRetrieverRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateRetriever func (c *QBusiness) CreateRetrieverRequest(input *CreateRetrieverInput) (req *request.Request, output *CreateRetrieverOutput) { op := &request.Operation{ Name: opCreateRetriever, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/retrievers", } if input == nil { input = &CreateRetrieverInput{} } output = &CreateRetrieverOutput{} req = c.newRequest(op, input, output) return } // CreateRetriever API operation for QBusiness. // // Adds a retriever to your Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreateRetriever for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateRetriever func (c *QBusiness) CreateRetriever(input *CreateRetrieverInput) (*CreateRetrieverOutput, error) { req, out := c.CreateRetrieverRequest(input) return out, req.Send() } // CreateRetrieverWithContext is the same as CreateRetriever with the addition of // the ability to pass a context and additional request options. // // See CreateRetriever for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreateRetrieverWithContext(ctx aws.Context, input *CreateRetrieverInput, opts ...request.Option) (*CreateRetrieverOutput, error) { req, out := c.CreateRetrieverRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateUser = "CreateUser" // CreateUserRequest generates a "aws/request.Request" representing the // client's request for the CreateUser operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateUser for more information on using the CreateUser // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreateUserRequest method. // req, resp := client.CreateUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateUser func (c *QBusiness) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) { op := &request.Operation{ Name: opCreateUser, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/users", } if input == nil { input = &CreateUserInput{} } output = &CreateUserOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CreateUser API operation for QBusiness. // // Creates a universally unique identifier (UUID) mapped to a list of local // user ids within an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreateUser for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateUser func (c *QBusiness) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { req, out := c.CreateUserRequest(input) return out, req.Send() } // CreateUserWithContext is the same as CreateUser with the addition of // the ability to pass a context and additional request options. // // See CreateUser for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreateUserWithContext(ctx aws.Context, input *CreateUserInput, opts ...request.Option) (*CreateUserOutput, error) { req, out := c.CreateUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateWebExperience = "CreateWebExperience" // CreateWebExperienceRequest generates a "aws/request.Request" representing the // client's request for the CreateWebExperience operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateWebExperience for more information on using the CreateWebExperience // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the CreateWebExperienceRequest method. // req, resp := client.CreateWebExperienceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateWebExperience func (c *QBusiness) CreateWebExperienceRequest(input *CreateWebExperienceInput) (req *request.Request, output *CreateWebExperienceOutput) { op := &request.Operation{ Name: opCreateWebExperience, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/experiences", } if input == nil { input = &CreateWebExperienceInput{} } output = &CreateWebExperienceOutput{} req = c.newRequest(op, input, output) return } // CreateWebExperience API operation for QBusiness. // // Creates an Amazon Q Business web experience. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation CreateWebExperience for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateWebExperience func (c *QBusiness) CreateWebExperience(input *CreateWebExperienceInput) (*CreateWebExperienceOutput, error) { req, out := c.CreateWebExperienceRequest(input) return out, req.Send() } // CreateWebExperienceWithContext is the same as CreateWebExperience with the addition of // the ability to pass a context and additional request options. // // See CreateWebExperience for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) CreateWebExperienceWithContext(ctx aws.Context, input *CreateWebExperienceInput, opts ...request.Option) (*CreateWebExperienceOutput, error) { req, out := c.CreateWebExperienceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteApplication = "DeleteApplication" // DeleteApplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteApplication for more information on using the DeleteApplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteApplicationRequest method. // req, resp := client.DeleteApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteApplication func (c *QBusiness) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { op := &request.Operation{ Name: opDeleteApplication, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}", } if input == nil { input = &DeleteApplicationInput{} } output = &DeleteApplicationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteApplication API operation for QBusiness. // // Deletes an Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteApplication for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteApplication func (c *QBusiness) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) return out, req.Send() } // DeleteApplicationWithContext is the same as DeleteApplication with the addition of // the ability to pass a context and additional request options. // // See DeleteApplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteChatControlsConfiguration = "DeleteChatControlsConfiguration" // DeleteChatControlsConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteChatControlsConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteChatControlsConfiguration for more information on using the DeleteChatControlsConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteChatControlsConfigurationRequest method. // req, resp := client.DeleteChatControlsConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteChatControlsConfiguration func (c *QBusiness) DeleteChatControlsConfigurationRequest(input *DeleteChatControlsConfigurationInput) (req *request.Request, output *DeleteChatControlsConfigurationOutput) { op := &request.Operation{ Name: opDeleteChatControlsConfiguration, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/chatcontrols", } if input == nil { input = &DeleteChatControlsConfigurationInput{} } output = &DeleteChatControlsConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteChatControlsConfiguration API operation for QBusiness. // // Deletes chat controls configured for an existing Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteChatControlsConfiguration for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteChatControlsConfiguration func (c *QBusiness) DeleteChatControlsConfiguration(input *DeleteChatControlsConfigurationInput) (*DeleteChatControlsConfigurationOutput, error) { req, out := c.DeleteChatControlsConfigurationRequest(input) return out, req.Send() } // DeleteChatControlsConfigurationWithContext is the same as DeleteChatControlsConfiguration with the addition of // the ability to pass a context and additional request options. // // See DeleteChatControlsConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteChatControlsConfigurationWithContext(ctx aws.Context, input *DeleteChatControlsConfigurationInput, opts ...request.Option) (*DeleteChatControlsConfigurationOutput, error) { req, out := c.DeleteChatControlsConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteConversation = "DeleteConversation" // DeleteConversationRequest generates a "aws/request.Request" representing the // client's request for the DeleteConversation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteConversation for more information on using the DeleteConversation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteConversationRequest method. // req, resp := client.DeleteConversationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteConversation func (c *QBusiness) DeleteConversationRequest(input *DeleteConversationInput) (req *request.Request, output *DeleteConversationOutput) { op := &request.Operation{ Name: opDeleteConversation, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/conversations/{conversationId}", } if input == nil { input = &DeleteConversationInput{} } output = &DeleteConversationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteConversation API operation for QBusiness. // // Deletes an Amazon Q Business web experience conversation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteConversation for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - LicenseNotFoundException // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteConversation func (c *QBusiness) DeleteConversation(input *DeleteConversationInput) (*DeleteConversationOutput, error) { req, out := c.DeleteConversationRequest(input) return out, req.Send() } // DeleteConversationWithContext is the same as DeleteConversation with the addition of // the ability to pass a context and additional request options. // // See DeleteConversation for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteConversationWithContext(ctx aws.Context, input *DeleteConversationInput, opts ...request.Option) (*DeleteConversationOutput, error) { req, out := c.DeleteConversationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteDataSource = "DeleteDataSource" // DeleteDataSourceRequest generates a "aws/request.Request" representing the // client's request for the DeleteDataSource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteDataSource for more information on using the DeleteDataSource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteDataSourceRequest method. // req, resp := client.DeleteDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteDataSource func (c *QBusiness) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { op := &request.Operation{ Name: opDeleteDataSource, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", } if input == nil { input = &DeleteDataSourceInput{} } output = &DeleteDataSourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteDataSource API operation for QBusiness. // // Deletes an Amazon Q Business data source connector. While the data source // is being deleted, the Status field returned by a call to the DescribeDataSource // API is set to DELETING. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteDataSource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteDataSource func (c *QBusiness) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { req, out := c.DeleteDataSourceRequest(input) return out, req.Send() } // DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of // the ability to pass a context and additional request options. // // See DeleteDataSource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) { req, out := c.DeleteDataSourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteGroup = "DeleteGroup" // DeleteGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteGroup for more information on using the DeleteGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteGroupRequest method. // req, resp := client.DeleteGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteGroup func (c *QBusiness) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request, output *DeleteGroupOutput) { op := &request.Operation{ Name: opDeleteGroup, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", } if input == nil { input = &DeleteGroupInput{} } output = &DeleteGroupOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteGroup API operation for QBusiness. // // Deletes a group so that all users and sub groups that belong to the group // can no longer access documents only available to that group. For example, // after deleting the group "Summer Interns", all interns who belonged to that // group no longer see intern-only documents in their chat results. // // If you want to delete, update, or replace users or sub groups of a group, // you need to use the PutGroup operation. For example, if a user in the group // "Engineering" leaves the engineering team and another user takes their place, // you provide an updated list of users or sub groups that belong to the "Engineering" // group when calling PutGroup. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteGroup for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteGroup func (c *QBusiness) DeleteGroup(input *DeleteGroupInput) (*DeleteGroupOutput, error) { req, out := c.DeleteGroupRequest(input) return out, req.Send() } // DeleteGroupWithContext is the same as DeleteGroup with the addition of // the ability to pass a context and additional request options. // // See DeleteGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteGroupWithContext(ctx aws.Context, input *DeleteGroupInput, opts ...request.Option) (*DeleteGroupOutput, error) { req, out := c.DeleteGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteIndex = "DeleteIndex" // DeleteIndexRequest generates a "aws/request.Request" representing the // client's request for the DeleteIndex operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteIndex for more information on using the DeleteIndex // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteIndexRequest method. // req, resp := client.DeleteIndexRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteIndex func (c *QBusiness) DeleteIndexRequest(input *DeleteIndexInput) (req *request.Request, output *DeleteIndexOutput) { op := &request.Operation{ Name: opDeleteIndex, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/indices/{indexId}", } if input == nil { input = &DeleteIndexInput{} } output = &DeleteIndexOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteIndex API operation for QBusiness. // // Deletes an Amazon Q Business index. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteIndex for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteIndex func (c *QBusiness) DeleteIndex(input *DeleteIndexInput) (*DeleteIndexOutput, error) { req, out := c.DeleteIndexRequest(input) return out, req.Send() } // DeleteIndexWithContext is the same as DeleteIndex with the addition of // the ability to pass a context and additional request options. // // See DeleteIndex for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteIndexWithContext(ctx aws.Context, input *DeleteIndexInput, opts ...request.Option) (*DeleteIndexOutput, error) { req, out := c.DeleteIndexRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeletePlugin = "DeletePlugin" // DeletePluginRequest generates a "aws/request.Request" representing the // client's request for the DeletePlugin operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeletePlugin for more information on using the DeletePlugin // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeletePluginRequest method. // req, resp := client.DeletePluginRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeletePlugin func (c *QBusiness) DeletePluginRequest(input *DeletePluginInput) (req *request.Request, output *DeletePluginOutput) { op := &request.Operation{ Name: opDeletePlugin, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", } if input == nil { input = &DeletePluginInput{} } output = &DeletePluginOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeletePlugin API operation for QBusiness. // // Deletes an Amazon Q Business plugin. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeletePlugin for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeletePlugin func (c *QBusiness) DeletePlugin(input *DeletePluginInput) (*DeletePluginOutput, error) { req, out := c.DeletePluginRequest(input) return out, req.Send() } // DeletePluginWithContext is the same as DeletePlugin with the addition of // the ability to pass a context and additional request options. // // See DeletePlugin for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeletePluginWithContext(ctx aws.Context, input *DeletePluginInput, opts ...request.Option) (*DeletePluginOutput, error) { req, out := c.DeletePluginRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteRetriever = "DeleteRetriever" // DeleteRetrieverRequest generates a "aws/request.Request" representing the // client's request for the DeleteRetriever operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteRetriever for more information on using the DeleteRetriever // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteRetrieverRequest method. // req, resp := client.DeleteRetrieverRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteRetriever func (c *QBusiness) DeleteRetrieverRequest(input *DeleteRetrieverInput) (req *request.Request, output *DeleteRetrieverOutput) { op := &request.Operation{ Name: opDeleteRetriever, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", } if input == nil { input = &DeleteRetrieverInput{} } output = &DeleteRetrieverOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteRetriever API operation for QBusiness. // // Deletes the retriever used by an Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteRetriever for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteRetriever func (c *QBusiness) DeleteRetriever(input *DeleteRetrieverInput) (*DeleteRetrieverOutput, error) { req, out := c.DeleteRetrieverRequest(input) return out, req.Send() } // DeleteRetrieverWithContext is the same as DeleteRetriever with the addition of // the ability to pass a context and additional request options. // // See DeleteRetriever for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteRetrieverWithContext(ctx aws.Context, input *DeleteRetrieverInput, opts ...request.Option) (*DeleteRetrieverOutput, error) { req, out := c.DeleteRetrieverRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteUser = "DeleteUser" // DeleteUserRequest generates a "aws/request.Request" representing the // client's request for the DeleteUser operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteUser for more information on using the DeleteUser // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteUserRequest method. // req, resp := client.DeleteUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteUser func (c *QBusiness) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { op := &request.Operation{ Name: opDeleteUser, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/users/{userId}", } if input == nil { input = &DeleteUserInput{} } output = &DeleteUserOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteUser API operation for QBusiness. // // Deletes a user by email id. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteUser for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteUser func (c *QBusiness) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { req, out := c.DeleteUserRequest(input) return out, req.Send() } // DeleteUserWithContext is the same as DeleteUser with the addition of // the ability to pass a context and additional request options. // // See DeleteUser for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) { req, out := c.DeleteUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteWebExperience = "DeleteWebExperience" // DeleteWebExperienceRequest generates a "aws/request.Request" representing the // client's request for the DeleteWebExperience operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteWebExperience for more information on using the DeleteWebExperience // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the DeleteWebExperienceRequest method. // req, resp := client.DeleteWebExperienceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteWebExperience func (c *QBusiness) DeleteWebExperienceRequest(input *DeleteWebExperienceInput) (req *request.Request, output *DeleteWebExperienceOutput) { op := &request.Operation{ Name: opDeleteWebExperience, HTTPMethod: "DELETE", HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", } if input == nil { input = &DeleteWebExperienceInput{} } output = &DeleteWebExperienceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteWebExperience API operation for QBusiness. // // Deletes an Amazon Q Business web experience. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation DeleteWebExperience for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteWebExperience func (c *QBusiness) DeleteWebExperience(input *DeleteWebExperienceInput) (*DeleteWebExperienceOutput, error) { req, out := c.DeleteWebExperienceRequest(input) return out, req.Send() } // DeleteWebExperienceWithContext is the same as DeleteWebExperience with the addition of // the ability to pass a context and additional request options. // // See DeleteWebExperience for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) DeleteWebExperienceWithContext(ctx aws.Context, input *DeleteWebExperienceInput, opts ...request.Option) (*DeleteWebExperienceOutput, error) { req, out := c.DeleteWebExperienceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetApplication = "GetApplication" // GetApplicationRequest generates a "aws/request.Request" representing the // client's request for the GetApplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetApplication for more information on using the GetApplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetApplicationRequest method. // req, resp := client.GetApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetApplication func (c *QBusiness) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { op := &request.Operation{ Name: opGetApplication, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}", } if input == nil { input = &GetApplicationInput{} } output = &GetApplicationOutput{} req = c.newRequest(op, input, output) return } // GetApplication API operation for QBusiness. // // Gets information about an existing Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetApplication for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetApplication func (c *QBusiness) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { req, out := c.GetApplicationRequest(input) return out, req.Send() } // GetApplicationWithContext is the same as GetApplication with the addition of // the ability to pass a context and additional request options. // // See GetApplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { req, out := c.GetApplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetChatControlsConfiguration = "GetChatControlsConfiguration" // GetChatControlsConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetChatControlsConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetChatControlsConfiguration for more information on using the GetChatControlsConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetChatControlsConfigurationRequest method. // req, resp := client.GetChatControlsConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetChatControlsConfiguration func (c *QBusiness) GetChatControlsConfigurationRequest(input *GetChatControlsConfigurationInput) (req *request.Request, output *GetChatControlsConfigurationOutput) { op := &request.Operation{ Name: opGetChatControlsConfiguration, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/chatcontrols", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &GetChatControlsConfigurationInput{} } output = &GetChatControlsConfigurationOutput{} req = c.newRequest(op, input, output) return } // GetChatControlsConfiguration API operation for QBusiness. // // Gets information about an chat controls configured for an existing Amazon // Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetChatControlsConfiguration for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetChatControlsConfiguration func (c *QBusiness) GetChatControlsConfiguration(input *GetChatControlsConfigurationInput) (*GetChatControlsConfigurationOutput, error) { req, out := c.GetChatControlsConfigurationRequest(input) return out, req.Send() } // GetChatControlsConfigurationWithContext is the same as GetChatControlsConfiguration with the addition of // the ability to pass a context and additional request options. // // See GetChatControlsConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetChatControlsConfigurationWithContext(ctx aws.Context, input *GetChatControlsConfigurationInput, opts ...request.Option) (*GetChatControlsConfigurationOutput, error) { req, out := c.GetChatControlsConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // GetChatControlsConfigurationPages iterates over the pages of a GetChatControlsConfiguration operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetChatControlsConfiguration method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetChatControlsConfiguration operation. // pageNum := 0 // err := client.GetChatControlsConfigurationPages(params, // func(page *qbusiness.GetChatControlsConfigurationOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) GetChatControlsConfigurationPages(input *GetChatControlsConfigurationInput, fn func(*GetChatControlsConfigurationOutput, bool) bool) error { return c.GetChatControlsConfigurationPagesWithContext(aws.BackgroundContext(), input, fn) } // GetChatControlsConfigurationPagesWithContext same as GetChatControlsConfigurationPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetChatControlsConfigurationPagesWithContext(ctx aws.Context, input *GetChatControlsConfigurationInput, fn func(*GetChatControlsConfigurationOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *GetChatControlsConfigurationInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.GetChatControlsConfigurationRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*GetChatControlsConfigurationOutput), !p.HasNextPage()) { break } } return p.Err() } const opGetDataSource = "GetDataSource" // GetDataSourceRequest generates a "aws/request.Request" representing the // client's request for the GetDataSource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetDataSource for more information on using the GetDataSource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetDataSourceRequest method. // req, resp := client.GetDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDataSource func (c *QBusiness) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { op := &request.Operation{ Name: opGetDataSource, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", } if input == nil { input = &GetDataSourceInput{} } output = &GetDataSourceOutput{} req = c.newRequest(op, input, output) return } // GetDataSource API operation for QBusiness. // // Gets information about an existing Amazon Q Business data source connector. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetDataSource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDataSource func (c *QBusiness) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { req, out := c.GetDataSourceRequest(input) return out, req.Send() } // GetDataSourceWithContext is the same as GetDataSource with the addition of // the ability to pass a context and additional request options. // // See GetDataSource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) { req, out := c.GetDataSourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetGroup = "GetGroup" // GetGroupRequest generates a "aws/request.Request" representing the // client's request for the GetGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetGroup for more information on using the GetGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetGroupRequest method. // req, resp := client.GetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetGroup func (c *QBusiness) GetGroupRequest(input *GetGroupInput) (req *request.Request, output *GetGroupOutput) { op := &request.Operation{ Name: opGetGroup, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", } if input == nil { input = &GetGroupInput{} } output = &GetGroupOutput{} req = c.newRequest(op, input, output) return } // GetGroup API operation for QBusiness. // // Describes a group by group name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetGroup for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetGroup func (c *QBusiness) GetGroup(input *GetGroupInput) (*GetGroupOutput, error) { req, out := c.GetGroupRequest(input) return out, req.Send() } // GetGroupWithContext is the same as GetGroup with the addition of // the ability to pass a context and additional request options. // // See GetGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetGroupWithContext(ctx aws.Context, input *GetGroupInput, opts ...request.Option) (*GetGroupOutput, error) { req, out := c.GetGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetIndex = "GetIndex" // GetIndexRequest generates a "aws/request.Request" representing the // client's request for the GetIndex operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetIndex for more information on using the GetIndex // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetIndexRequest method. // req, resp := client.GetIndexRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetIndex func (c *QBusiness) GetIndexRequest(input *GetIndexInput) (req *request.Request, output *GetIndexOutput) { op := &request.Operation{ Name: opGetIndex, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}", } if input == nil { input = &GetIndexInput{} } output = &GetIndexOutput{} req = c.newRequest(op, input, output) return } // GetIndex API operation for QBusiness. // // Gets information about an existing Amazon Q Business index. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetIndex for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetIndex func (c *QBusiness) GetIndex(input *GetIndexInput) (*GetIndexOutput, error) { req, out := c.GetIndexRequest(input) return out, req.Send() } // GetIndexWithContext is the same as GetIndex with the addition of // the ability to pass a context and additional request options. // // See GetIndex for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetIndexWithContext(ctx aws.Context, input *GetIndexInput, opts ...request.Option) (*GetIndexOutput, error) { req, out := c.GetIndexRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetPlugin = "GetPlugin" // GetPluginRequest generates a "aws/request.Request" representing the // client's request for the GetPlugin operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetPlugin for more information on using the GetPlugin // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetPluginRequest method. // req, resp := client.GetPluginRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetPlugin func (c *QBusiness) GetPluginRequest(input *GetPluginInput) (req *request.Request, output *GetPluginOutput) { op := &request.Operation{ Name: opGetPlugin, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", } if input == nil { input = &GetPluginInput{} } output = &GetPluginOutput{} req = c.newRequest(op, input, output) return } // GetPlugin API operation for QBusiness. // // Gets information about an existing Amazon Q Business plugin. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetPlugin for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetPlugin func (c *QBusiness) GetPlugin(input *GetPluginInput) (*GetPluginOutput, error) { req, out := c.GetPluginRequest(input) return out, req.Send() } // GetPluginWithContext is the same as GetPlugin with the addition of // the ability to pass a context and additional request options. // // See GetPlugin for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetPluginWithContext(ctx aws.Context, input *GetPluginInput, opts ...request.Option) (*GetPluginOutput, error) { req, out := c.GetPluginRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetRetriever = "GetRetriever" // GetRetrieverRequest generates a "aws/request.Request" representing the // client's request for the GetRetriever operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetRetriever for more information on using the GetRetriever // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetRetrieverRequest method. // req, resp := client.GetRetrieverRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetRetriever func (c *QBusiness) GetRetrieverRequest(input *GetRetrieverInput) (req *request.Request, output *GetRetrieverOutput) { op := &request.Operation{ Name: opGetRetriever, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", } if input == nil { input = &GetRetrieverInput{} } output = &GetRetrieverOutput{} req = c.newRequest(op, input, output) return } // GetRetriever API operation for QBusiness. // // Gets information about an existing retriever used by an Amazon Q Business // application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetRetriever for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetRetriever func (c *QBusiness) GetRetriever(input *GetRetrieverInput) (*GetRetrieverOutput, error) { req, out := c.GetRetrieverRequest(input) return out, req.Send() } // GetRetrieverWithContext is the same as GetRetriever with the addition of // the ability to pass a context and additional request options. // // See GetRetriever for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetRetrieverWithContext(ctx aws.Context, input *GetRetrieverInput, opts ...request.Option) (*GetRetrieverOutput, error) { req, out := c.GetRetrieverRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetUser = "GetUser" // GetUserRequest generates a "aws/request.Request" representing the // client's request for the GetUser operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetUser for more information on using the GetUser // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetUserRequest method. // req, resp := client.GetUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetUser func (c *QBusiness) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput) { op := &request.Operation{ Name: opGetUser, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/users/{userId}", } if input == nil { input = &GetUserInput{} } output = &GetUserOutput{} req = c.newRequest(op, input, output) return } // GetUser API operation for QBusiness. // // Describes the universally unique identifier (UUID) associated with a local // user in a data source. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetUser for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetUser func (c *QBusiness) GetUser(input *GetUserInput) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) return out, req.Send() } // GetUserWithContext is the same as GetUser with the addition of // the ability to pass a context and additional request options. // // See GetUser for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetUserWithContext(ctx aws.Context, input *GetUserInput, opts ...request.Option) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetWebExperience = "GetWebExperience" // GetWebExperienceRequest generates a "aws/request.Request" representing the // client's request for the GetWebExperience operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetWebExperience for more information on using the GetWebExperience // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the GetWebExperienceRequest method. // req, resp := client.GetWebExperienceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetWebExperience func (c *QBusiness) GetWebExperienceRequest(input *GetWebExperienceInput) (req *request.Request, output *GetWebExperienceOutput) { op := &request.Operation{ Name: opGetWebExperience, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", } if input == nil { input = &GetWebExperienceInput{} } output = &GetWebExperienceOutput{} req = c.newRequest(op, input, output) return } // GetWebExperience API operation for QBusiness. // // Gets information about an existing Amazon Q Business web experience. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation GetWebExperience for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetWebExperience func (c *QBusiness) GetWebExperience(input *GetWebExperienceInput) (*GetWebExperienceOutput, error) { req, out := c.GetWebExperienceRequest(input) return out, req.Send() } // GetWebExperienceWithContext is the same as GetWebExperience with the addition of // the ability to pass a context and additional request options. // // See GetWebExperience for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) GetWebExperienceWithContext(ctx aws.Context, input *GetWebExperienceInput, opts ...request.Option) (*GetWebExperienceOutput, error) { req, out := c.GetWebExperienceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListApplications = "ListApplications" // ListApplicationsRequest generates a "aws/request.Request" representing the // client's request for the ListApplications operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListApplications for more information on using the ListApplications // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListApplicationsRequest method. // req, resp := client.ListApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListApplications func (c *QBusiness) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { op := &request.Operation{ Name: opListApplications, HTTPMethod: "GET", HTTPPath: "/applications", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListApplicationsInput{} } output = &ListApplicationsOutput{} req = c.newRequest(op, input, output) return } // ListApplications API operation for QBusiness. // // Lists Amazon Q Business applications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListApplications for usage and error information. // // Returned Error Types: // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListApplications func (c *QBusiness) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { req, out := c.ListApplicationsRequest(input) return out, req.Send() } // ListApplicationsWithContext is the same as ListApplications with the addition of // the ability to pass a context and additional request options. // // See ListApplications for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { req, out := c.ListApplicationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListApplicationsPages iterates over the pages of a ListApplications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListApplications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListApplications operation. // pageNum := 0 // err := client.ListApplicationsPages(params, // func(page *qbusiness.ListApplicationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error { return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListApplicationsPagesWithContext same as ListApplicationsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListApplicationsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListApplicationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListConversations = "ListConversations" // ListConversationsRequest generates a "aws/request.Request" representing the // client's request for the ListConversations operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListConversations for more information on using the ListConversations // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListConversationsRequest method. // req, resp := client.ListConversationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListConversations func (c *QBusiness) ListConversationsRequest(input *ListConversationsInput) (req *request.Request, output *ListConversationsOutput) { op := &request.Operation{ Name: opListConversations, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/conversations", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListConversationsInput{} } output = &ListConversationsOutput{} req = c.newRequest(op, input, output) return } // ListConversations API operation for QBusiness. // // Lists one or more Amazon Q Business conversations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListConversations for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - LicenseNotFoundException // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListConversations func (c *QBusiness) ListConversations(input *ListConversationsInput) (*ListConversationsOutput, error) { req, out := c.ListConversationsRequest(input) return out, req.Send() } // ListConversationsWithContext is the same as ListConversations with the addition of // the ability to pass a context and additional request options. // // See ListConversations for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListConversationsWithContext(ctx aws.Context, input *ListConversationsInput, opts ...request.Option) (*ListConversationsOutput, error) { req, out := c.ListConversationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListConversationsPages iterates over the pages of a ListConversations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListConversations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListConversations operation. // pageNum := 0 // err := client.ListConversationsPages(params, // func(page *qbusiness.ListConversationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListConversationsPages(input *ListConversationsInput, fn func(*ListConversationsOutput, bool) bool) error { return c.ListConversationsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListConversationsPagesWithContext same as ListConversationsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListConversationsPagesWithContext(ctx aws.Context, input *ListConversationsInput, fn func(*ListConversationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListConversationsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListConversationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListConversationsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListDataSourceSyncJobs = "ListDataSourceSyncJobs" // ListDataSourceSyncJobsRequest generates a "aws/request.Request" representing the // client's request for the ListDataSourceSyncJobs operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListDataSourceSyncJobs for more information on using the ListDataSourceSyncJobs // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListDataSourceSyncJobsRequest method. // req, resp := client.ListDataSourceSyncJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSourceSyncJobs func (c *QBusiness) ListDataSourceSyncJobsRequest(input *ListDataSourceSyncJobsInput) (req *request.Request, output *ListDataSourceSyncJobsOutput) { op := &request.Operation{ Name: opListDataSourceSyncJobs, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/syncjobs", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListDataSourceSyncJobsInput{} } output = &ListDataSourceSyncJobsOutput{} req = c.newRequest(op, input, output) return } // ListDataSourceSyncJobs API operation for QBusiness. // // Get information about an Amazon Q Business data source connector synchronization. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListDataSourceSyncJobs for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSourceSyncJobs func (c *QBusiness) ListDataSourceSyncJobs(input *ListDataSourceSyncJobsInput) (*ListDataSourceSyncJobsOutput, error) { req, out := c.ListDataSourceSyncJobsRequest(input) return out, req.Send() } // ListDataSourceSyncJobsWithContext is the same as ListDataSourceSyncJobs with the addition of // the ability to pass a context and additional request options. // // See ListDataSourceSyncJobs for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDataSourceSyncJobsWithContext(ctx aws.Context, input *ListDataSourceSyncJobsInput, opts ...request.Option) (*ListDataSourceSyncJobsOutput, error) { req, out := c.ListDataSourceSyncJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListDataSourceSyncJobsPages iterates over the pages of a ListDataSourceSyncJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDataSourceSyncJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDataSourceSyncJobs operation. // pageNum := 0 // err := client.ListDataSourceSyncJobsPages(params, // func(page *qbusiness.ListDataSourceSyncJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListDataSourceSyncJobsPages(input *ListDataSourceSyncJobsInput, fn func(*ListDataSourceSyncJobsOutput, bool) bool) error { return c.ListDataSourceSyncJobsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListDataSourceSyncJobsPagesWithContext same as ListDataSourceSyncJobsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDataSourceSyncJobsPagesWithContext(ctx aws.Context, input *ListDataSourceSyncJobsInput, fn func(*ListDataSourceSyncJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListDataSourceSyncJobsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListDataSourceSyncJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListDataSourceSyncJobsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListDataSources = "ListDataSources" // ListDataSourcesRequest generates a "aws/request.Request" representing the // client's request for the ListDataSources operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListDataSources for more information on using the ListDataSources // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListDataSourcesRequest method. // req, resp := client.ListDataSourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSources func (c *QBusiness) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { op := &request.Operation{ Name: opListDataSources, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListDataSourcesInput{} } output = &ListDataSourcesOutput{} req = c.newRequest(op, input, output) return } // ListDataSources API operation for QBusiness. // // Lists the Amazon Q Business data source connectors that you have created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListDataSources for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSources func (c *QBusiness) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { req, out := c.ListDataSourcesRequest(input) return out, req.Send() } // ListDataSourcesWithContext is the same as ListDataSources with the addition of // the ability to pass a context and additional request options. // // See ListDataSources for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { req, out := c.ListDataSourcesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListDataSourcesPages iterates over the pages of a ListDataSources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDataSources method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDataSources operation. // pageNum := 0 // err := client.ListDataSourcesPages(params, // func(page *qbusiness.ListDataSourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListDataSourcesPagesWithContext same as ListDataSourcesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListDataSourcesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListDataSourcesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { break } } return p.Err() } const opListDocuments = "ListDocuments" // ListDocumentsRequest generates a "aws/request.Request" representing the // client's request for the ListDocuments operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListDocuments for more information on using the ListDocuments // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListDocumentsRequest method. // req, resp := client.ListDocumentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDocuments func (c *QBusiness) ListDocumentsRequest(input *ListDocumentsInput) (req *request.Request, output *ListDocumentsOutput) { op := &request.Operation{ Name: opListDocuments, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/index/{indexId}/documents", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListDocumentsInput{} } output = &ListDocumentsOutput{} req = c.newRequest(op, input, output) return } // ListDocuments API operation for QBusiness. // // A list of documents attached to an index. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListDocuments for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDocuments func (c *QBusiness) ListDocuments(input *ListDocumentsInput) (*ListDocumentsOutput, error) { req, out := c.ListDocumentsRequest(input) return out, req.Send() } // ListDocumentsWithContext is the same as ListDocuments with the addition of // the ability to pass a context and additional request options. // // See ListDocuments for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDocumentsWithContext(ctx aws.Context, input *ListDocumentsInput, opts ...request.Option) (*ListDocumentsOutput, error) { req, out := c.ListDocumentsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListDocumentsPages iterates over the pages of a ListDocuments operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDocuments method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDocuments operation. // pageNum := 0 // err := client.ListDocumentsPages(params, // func(page *qbusiness.ListDocumentsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListDocumentsPages(input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool) error { return c.ListDocumentsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListDocumentsPagesWithContext same as ListDocumentsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListDocumentsPagesWithContext(ctx aws.Context, input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListDocumentsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListDocumentsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListDocumentsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListGroups = "ListGroups" // ListGroupsRequest generates a "aws/request.Request" representing the // client's request for the ListGroups operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListGroups for more information on using the ListGroups // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListGroupsRequest method. // req, resp := client.ListGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListGroups func (c *QBusiness) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) { op := &request.Operation{ Name: opListGroups, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListGroupsInput{} } output = &ListGroupsOutput{} req = c.newRequest(op, input, output) return } // ListGroups API operation for QBusiness. // // Provides a list of groups that are mapped to users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListGroups for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListGroups func (c *QBusiness) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) { req, out := c.ListGroupsRequest(input) return out, req.Send() } // ListGroupsWithContext is the same as ListGroups with the addition of // the ability to pass a context and additional request options. // // See ListGroups for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) { req, out := c.ListGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListGroupsPages iterates over the pages of a ListGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGroups operation. // pageNum := 0 // err := client.ListGroupsPages(params, // func(page *qbusiness.ListGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListGroupsPages(input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool) error { return c.ListGroupsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListGroupsPagesWithContext same as ListGroupsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListGroupsPagesWithContext(ctx aws.Context, input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListGroupsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListGroupsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListGroupsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListIndices = "ListIndices" // ListIndicesRequest generates a "aws/request.Request" representing the // client's request for the ListIndices operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListIndices for more information on using the ListIndices // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListIndicesRequest method. // req, resp := client.ListIndicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListIndices func (c *QBusiness) ListIndicesRequest(input *ListIndicesInput) (req *request.Request, output *ListIndicesOutput) { op := &request.Operation{ Name: opListIndices, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/indices", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListIndicesInput{} } output = &ListIndicesOutput{} req = c.newRequest(op, input, output) return } // ListIndices API operation for QBusiness. // // Lists the Amazon Q Business indices you have created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListIndices for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListIndices func (c *QBusiness) ListIndices(input *ListIndicesInput) (*ListIndicesOutput, error) { req, out := c.ListIndicesRequest(input) return out, req.Send() } // ListIndicesWithContext is the same as ListIndices with the addition of // the ability to pass a context and additional request options. // // See ListIndices for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListIndicesWithContext(ctx aws.Context, input *ListIndicesInput, opts ...request.Option) (*ListIndicesOutput, error) { req, out := c.ListIndicesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListIndicesPages iterates over the pages of a ListIndices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListIndices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListIndices operation. // pageNum := 0 // err := client.ListIndicesPages(params, // func(page *qbusiness.ListIndicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListIndicesPages(input *ListIndicesInput, fn func(*ListIndicesOutput, bool) bool) error { return c.ListIndicesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListIndicesPagesWithContext same as ListIndicesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListIndicesPagesWithContext(ctx aws.Context, input *ListIndicesInput, fn func(*ListIndicesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListIndicesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListIndicesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListIndicesOutput), !p.HasNextPage()) { break } } return p.Err() } const opListMessages = "ListMessages" // ListMessagesRequest generates a "aws/request.Request" representing the // client's request for the ListMessages operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListMessages for more information on using the ListMessages // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListMessagesRequest method. // req, resp := client.ListMessagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListMessages func (c *QBusiness) ListMessagesRequest(input *ListMessagesInput) (req *request.Request, output *ListMessagesOutput) { op := &request.Operation{ Name: opListMessages, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/conversations/{conversationId}", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListMessagesInput{} } output = &ListMessagesOutput{} req = c.newRequest(op, input, output) return } // ListMessages API operation for QBusiness. // // Gets a list of messages associated with an Amazon Q Business web experience. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListMessages for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - LicenseNotFoundException // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListMessages func (c *QBusiness) ListMessages(input *ListMessagesInput) (*ListMessagesOutput, error) { req, out := c.ListMessagesRequest(input) return out, req.Send() } // ListMessagesWithContext is the same as ListMessages with the addition of // the ability to pass a context and additional request options. // // See ListMessages for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListMessagesWithContext(ctx aws.Context, input *ListMessagesInput, opts ...request.Option) (*ListMessagesOutput, error) { req, out := c.ListMessagesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListMessagesPages iterates over the pages of a ListMessages operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMessages method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMessages operation. // pageNum := 0 // err := client.ListMessagesPages(params, // func(page *qbusiness.ListMessagesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListMessagesPages(input *ListMessagesInput, fn func(*ListMessagesOutput, bool) bool) error { return c.ListMessagesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListMessagesPagesWithContext same as ListMessagesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListMessagesPagesWithContext(ctx aws.Context, input *ListMessagesInput, fn func(*ListMessagesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListMessagesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListMessagesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListMessagesOutput), !p.HasNextPage()) { break } } return p.Err() } const opListPlugins = "ListPlugins" // ListPluginsRequest generates a "aws/request.Request" representing the // client's request for the ListPlugins operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListPlugins for more information on using the ListPlugins // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListPluginsRequest method. // req, resp := client.ListPluginsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListPlugins func (c *QBusiness) ListPluginsRequest(input *ListPluginsInput) (req *request.Request, output *ListPluginsOutput) { op := &request.Operation{ Name: opListPlugins, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/plugins", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListPluginsInput{} } output = &ListPluginsOutput{} req = c.newRequest(op, input, output) return } // ListPlugins API operation for QBusiness. // // Lists configured Amazon Q Business plugins. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListPlugins for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListPlugins func (c *QBusiness) ListPlugins(input *ListPluginsInput) (*ListPluginsOutput, error) { req, out := c.ListPluginsRequest(input) return out, req.Send() } // ListPluginsWithContext is the same as ListPlugins with the addition of // the ability to pass a context and additional request options. // // See ListPlugins for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListPluginsWithContext(ctx aws.Context, input *ListPluginsInput, opts ...request.Option) (*ListPluginsOutput, error) { req, out := c.ListPluginsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListPluginsPages iterates over the pages of a ListPlugins operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPlugins method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPlugins operation. // pageNum := 0 // err := client.ListPluginsPages(params, // func(page *qbusiness.ListPluginsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListPluginsPages(input *ListPluginsInput, fn func(*ListPluginsOutput, bool) bool) error { return c.ListPluginsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListPluginsPagesWithContext same as ListPluginsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListPluginsPagesWithContext(ctx aws.Context, input *ListPluginsInput, fn func(*ListPluginsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListPluginsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListPluginsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListPluginsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListRetrievers = "ListRetrievers" // ListRetrieversRequest generates a "aws/request.Request" representing the // client's request for the ListRetrievers operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListRetrievers for more information on using the ListRetrievers // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListRetrieversRequest method. // req, resp := client.ListRetrieversRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListRetrievers func (c *QBusiness) ListRetrieversRequest(input *ListRetrieversInput) (req *request.Request, output *ListRetrieversOutput) { op := &request.Operation{ Name: opListRetrievers, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/retrievers", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListRetrieversInput{} } output = &ListRetrieversOutput{} req = c.newRequest(op, input, output) return } // ListRetrievers API operation for QBusiness. // // Lists the retriever used by an Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListRetrievers for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListRetrievers func (c *QBusiness) ListRetrievers(input *ListRetrieversInput) (*ListRetrieversOutput, error) { req, out := c.ListRetrieversRequest(input) return out, req.Send() } // ListRetrieversWithContext is the same as ListRetrievers with the addition of // the ability to pass a context and additional request options. // // See ListRetrievers for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListRetrieversWithContext(ctx aws.Context, input *ListRetrieversInput, opts ...request.Option) (*ListRetrieversOutput, error) { req, out := c.ListRetrieversRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListRetrieversPages iterates over the pages of a ListRetrievers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRetrievers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRetrievers operation. // pageNum := 0 // err := client.ListRetrieversPages(params, // func(page *qbusiness.ListRetrieversOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListRetrieversPages(input *ListRetrieversInput, fn func(*ListRetrieversOutput, bool) bool) error { return c.ListRetrieversPagesWithContext(aws.BackgroundContext(), input, fn) } // ListRetrieversPagesWithContext same as ListRetrieversPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListRetrieversPagesWithContext(ctx aws.Context, input *ListRetrieversInput, fn func(*ListRetrieversOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListRetrieversInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListRetrieversRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListRetrieversOutput), !p.HasNextPage()) { break } } return p.Err() } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListTagsForResource for more information on using the ListTagsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListTagsForResource func (c *QBusiness) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "GET", HTTPPath: "/v1/tags/{resourceARN}", } if input == nil { input = &ListTagsForResourceInput{} } output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) return } // ListTagsForResource API operation for QBusiness. // // Gets a list of tags associated with a specified resource. Amazon Q Business // applications and data sources can have tags associated with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListTagsForResource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListTagsForResource func (c *QBusiness) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) return out, req.Send() } // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // // See ListTagsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListWebExperiences = "ListWebExperiences" // ListWebExperiencesRequest generates a "aws/request.Request" representing the // client's request for the ListWebExperiences operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListWebExperiences for more information on using the ListWebExperiences // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the ListWebExperiencesRequest method. // req, resp := client.ListWebExperiencesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListWebExperiences func (c *QBusiness) ListWebExperiencesRequest(input *ListWebExperiencesInput) (req *request.Request, output *ListWebExperiencesOutput) { op := &request.Operation{ Name: opListWebExperiences, HTTPMethod: "GET", HTTPPath: "/applications/{applicationId}/experiences", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListWebExperiencesInput{} } output = &ListWebExperiencesOutput{} req = c.newRequest(op, input, output) return } // ListWebExperiences API operation for QBusiness. // // Lists one or more Amazon Q Business Web Experiences. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation ListWebExperiences for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListWebExperiences func (c *QBusiness) ListWebExperiences(input *ListWebExperiencesInput) (*ListWebExperiencesOutput, error) { req, out := c.ListWebExperiencesRequest(input) return out, req.Send() } // ListWebExperiencesWithContext is the same as ListWebExperiences with the addition of // the ability to pass a context and additional request options. // // See ListWebExperiences for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListWebExperiencesWithContext(ctx aws.Context, input *ListWebExperiencesInput, opts ...request.Option) (*ListWebExperiencesOutput, error) { req, out := c.ListWebExperiencesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListWebExperiencesPages iterates over the pages of a ListWebExperiences operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListWebExperiences method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListWebExperiences operation. // pageNum := 0 // err := client.ListWebExperiencesPages(params, // func(page *qbusiness.ListWebExperiencesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) func (c *QBusiness) ListWebExperiencesPages(input *ListWebExperiencesInput, fn func(*ListWebExperiencesOutput, bool) bool) error { return c.ListWebExperiencesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListWebExperiencesPagesWithContext same as ListWebExperiencesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) ListWebExperiencesPagesWithContext(ctx aws.Context, input *ListWebExperiencesInput, fn func(*ListWebExperiencesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListWebExperiencesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListWebExperiencesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListWebExperiencesOutput), !p.HasNextPage()) { break } } return p.Err() } const opPutFeedback = "PutFeedback" // PutFeedbackRequest generates a "aws/request.Request" representing the // client's request for the PutFeedback operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutFeedback for more information on using the PutFeedback // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the PutFeedbackRequest method. // req, resp := client.PutFeedbackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutFeedback func (c *QBusiness) PutFeedbackRequest(input *PutFeedbackInput) (req *request.Request, output *PutFeedbackOutput) { op := &request.Operation{ Name: opPutFeedback, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/conversations/{conversationId}/messages/{messageId}/feedback", } if input == nil { input = &PutFeedbackInput{} } output = &PutFeedbackOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // PutFeedback API operation for QBusiness. // // Enables your end user to provide feedback on their Amazon Q Business generated // chat responses. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation PutFeedback for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutFeedback func (c *QBusiness) PutFeedback(input *PutFeedbackInput) (*PutFeedbackOutput, error) { req, out := c.PutFeedbackRequest(input) return out, req.Send() } // PutFeedbackWithContext is the same as PutFeedback with the addition of // the ability to pass a context and additional request options. // // See PutFeedback for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) PutFeedbackWithContext(ctx aws.Context, input *PutFeedbackInput, opts ...request.Option) (*PutFeedbackOutput, error) { req, out := c.PutFeedbackRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opPutGroup = "PutGroup" // PutGroupRequest generates a "aws/request.Request" representing the // client's request for the PutGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See PutGroup for more information on using the PutGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the PutGroupRequest method. // req, resp := client.PutGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutGroup func (c *QBusiness) PutGroupRequest(input *PutGroupInput) (req *request.Request, output *PutGroupOutput) { op := &request.Operation{ Name: opPutGroup, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups", } if input == nil { input = &PutGroupInput{} } output = &PutGroupOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // PutGroup API operation for QBusiness. // // Create, or updates, a mapping of users—who have access to a document—to // groups. // // You can also map sub groups to groups. For example, the group "Company Intellectual // Property Teams" includes sub groups "Research" and "Engineering". These sub // groups include their own list of users or people who work in these teams. // Only users who work in research and engineering, and therefore belong in // the intellectual property group, can see top-secret company documents in // their Amazon Q Business chat results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation PutGroup for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutGroup func (c *QBusiness) PutGroup(input *PutGroupInput) (*PutGroupOutput, error) { req, out := c.PutGroupRequest(input) return out, req.Send() } // PutGroupWithContext is the same as PutGroup with the addition of // the ability to pass a context and additional request options. // // See PutGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) PutGroupWithContext(ctx aws.Context, input *PutGroupInput, opts ...request.Option) (*PutGroupOutput, error) { req, out := c.PutGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opStartDataSourceSyncJob = "StartDataSourceSyncJob" // StartDataSourceSyncJobRequest generates a "aws/request.Request" representing the // client's request for the StartDataSourceSyncJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See StartDataSourceSyncJob for more information on using the StartDataSourceSyncJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the StartDataSourceSyncJobRequest method. // req, resp := client.StartDataSourceSyncJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StartDataSourceSyncJob func (c *QBusiness) StartDataSourceSyncJobRequest(input *StartDataSourceSyncJobInput) (req *request.Request, output *StartDataSourceSyncJobOutput) { op := &request.Operation{ Name: opStartDataSourceSyncJob, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/startsync", } if input == nil { input = &StartDataSourceSyncJobInput{} } output = &StartDataSourceSyncJobOutput{} req = c.newRequest(op, input, output) return } // StartDataSourceSyncJob API operation for QBusiness. // // Starts a data source connector synchronization job. If a synchronization // job is already in progress, Amazon Q Business returns a ConflictException. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation StartDataSourceSyncJob for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StartDataSourceSyncJob func (c *QBusiness) StartDataSourceSyncJob(input *StartDataSourceSyncJobInput) (*StartDataSourceSyncJobOutput, error) { req, out := c.StartDataSourceSyncJobRequest(input) return out, req.Send() } // StartDataSourceSyncJobWithContext is the same as StartDataSourceSyncJob with the addition of // the ability to pass a context and additional request options. // // See StartDataSourceSyncJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) StartDataSourceSyncJobWithContext(ctx aws.Context, input *StartDataSourceSyncJobInput, opts ...request.Option) (*StartDataSourceSyncJobOutput, error) { req, out := c.StartDataSourceSyncJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opStopDataSourceSyncJob = "StopDataSourceSyncJob" // StopDataSourceSyncJobRequest generates a "aws/request.Request" representing the // client's request for the StopDataSourceSyncJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See StopDataSourceSyncJob for more information on using the StopDataSourceSyncJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the StopDataSourceSyncJobRequest method. // req, resp := client.StopDataSourceSyncJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StopDataSourceSyncJob func (c *QBusiness) StopDataSourceSyncJobRequest(input *StopDataSourceSyncJobInput) (req *request.Request, output *StopDataSourceSyncJobOutput) { op := &request.Operation{ Name: opStopDataSourceSyncJob, HTTPMethod: "POST", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/stopsync", } if input == nil { input = &StopDataSourceSyncJobInput{} } output = &StopDataSourceSyncJobOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // StopDataSourceSyncJob API operation for QBusiness. // // Stops an Amazon Q Business data source connector synchronization job already // in progress. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation StopDataSourceSyncJob for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StopDataSourceSyncJob func (c *QBusiness) StopDataSourceSyncJob(input *StopDataSourceSyncJobInput) (*StopDataSourceSyncJobOutput, error) { req, out := c.StopDataSourceSyncJobRequest(input) return out, req.Send() } // StopDataSourceSyncJobWithContext is the same as StopDataSourceSyncJob with the addition of // the ability to pass a context and additional request options. // // See StopDataSourceSyncJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) StopDataSourceSyncJobWithContext(ctx aws.Context, input *StopDataSourceSyncJobInput, opts ...request.Option) (*StopDataSourceSyncJobOutput, error) { req, out := c.StopDataSourceSyncJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the // client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the TagResourceRequest method. // req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/TagResource func (c *QBusiness) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ Name: opTagResource, HTTPMethod: "POST", HTTPPath: "/v1/tags/{resourceARN}", } if input == nil { input = &TagResourceInput{} } output = &TagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // TagResource API operation for QBusiness. // // Adds the specified tag to the specified Amazon Q Business application or // data source resource. If the tag already exists, the existing value is replaced // with the new value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation TagResource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/TagResource func (c *QBusiness) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) return out, req.Send() } // TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // // See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUntagResource = "UntagResource" // UntagResourceRequest generates a "aws/request.Request" representing the // client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UntagResourceRequest method. // req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UntagResource func (c *QBusiness) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ Name: opUntagResource, HTTPMethod: "DELETE", HTTPPath: "/v1/tags/{resourceARN}", } if input == nil { input = &UntagResourceInput{} } output = &UntagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UntagResource API operation for QBusiness. // // Removes a tag from an Amazon Q Business application or a data source. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UntagResource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UntagResource func (c *QBusiness) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) return out, req.Send() } // UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // // See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateApplication = "UpdateApplication" // UpdateApplicationRequest generates a "aws/request.Request" representing the // client's request for the UpdateApplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateApplication for more information on using the UpdateApplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateApplicationRequest method. // req, resp := client.UpdateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateApplication func (c *QBusiness) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { op := &request.Operation{ Name: opUpdateApplication, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}", } if input == nil { input = &UpdateApplicationInput{} } output = &UpdateApplicationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateApplication API operation for QBusiness. // // Updates an existing Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateApplication for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateApplication func (c *QBusiness) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { req, out := c.UpdateApplicationRequest(input) return out, req.Send() } // UpdateApplicationWithContext is the same as UpdateApplication with the addition of // the ability to pass a context and additional request options. // // See UpdateApplication for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { req, out := c.UpdateApplicationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateChatControlsConfiguration = "UpdateChatControlsConfiguration" // UpdateChatControlsConfigurationRequest generates a "aws/request.Request" representing the // client's request for the UpdateChatControlsConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateChatControlsConfiguration for more information on using the UpdateChatControlsConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateChatControlsConfigurationRequest method. // req, resp := client.UpdateChatControlsConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateChatControlsConfiguration func (c *QBusiness) UpdateChatControlsConfigurationRequest(input *UpdateChatControlsConfigurationInput) (req *request.Request, output *UpdateChatControlsConfigurationOutput) { op := &request.Operation{ Name: opUpdateChatControlsConfiguration, HTTPMethod: "PATCH", HTTPPath: "/applications/{applicationId}/chatcontrols", } if input == nil { input = &UpdateChatControlsConfigurationInput{} } output = &UpdateChatControlsConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateChatControlsConfiguration API operation for QBusiness. // // Updates an set of chat controls configured for an existing Amazon Q Business // application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateChatControlsConfiguration for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateChatControlsConfiguration func (c *QBusiness) UpdateChatControlsConfiguration(input *UpdateChatControlsConfigurationInput) (*UpdateChatControlsConfigurationOutput, error) { req, out := c.UpdateChatControlsConfigurationRequest(input) return out, req.Send() } // UpdateChatControlsConfigurationWithContext is the same as UpdateChatControlsConfiguration with the addition of // the ability to pass a context and additional request options. // // See UpdateChatControlsConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateChatControlsConfigurationWithContext(ctx aws.Context, input *UpdateChatControlsConfigurationInput, opts ...request.Option) (*UpdateChatControlsConfigurationOutput, error) { req, out := c.UpdateChatControlsConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateDataSource = "UpdateDataSource" // UpdateDataSourceRequest generates a "aws/request.Request" representing the // client's request for the UpdateDataSource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateDataSource for more information on using the UpdateDataSource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateDataSourceRequest method. // req, resp := client.UpdateDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateDataSource func (c *QBusiness) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { op := &request.Operation{ Name: opUpdateDataSource, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", } if input == nil { input = &UpdateDataSourceInput{} } output = &UpdateDataSourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateDataSource API operation for QBusiness. // // Updates an existing Amazon Q Business data source connector. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateDataSource for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateDataSource func (c *QBusiness) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { req, out := c.UpdateDataSourceRequest(input) return out, req.Send() } // UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of // the ability to pass a context and additional request options. // // See UpdateDataSource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { req, out := c.UpdateDataSourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateIndex = "UpdateIndex" // UpdateIndexRequest generates a "aws/request.Request" representing the // client's request for the UpdateIndex operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateIndex for more information on using the UpdateIndex // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateIndexRequest method. // req, resp := client.UpdateIndexRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateIndex func (c *QBusiness) UpdateIndexRequest(input *UpdateIndexInput) (req *request.Request, output *UpdateIndexOutput) { op := &request.Operation{ Name: opUpdateIndex, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/indices/{indexId}", } if input == nil { input = &UpdateIndexInput{} } output = &UpdateIndexOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateIndex API operation for QBusiness. // // Updates an Amazon Q Business index. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateIndex for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateIndex func (c *QBusiness) UpdateIndex(input *UpdateIndexInput) (*UpdateIndexOutput, error) { req, out := c.UpdateIndexRequest(input) return out, req.Send() } // UpdateIndexWithContext is the same as UpdateIndex with the addition of // the ability to pass a context and additional request options. // // See UpdateIndex for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateIndexWithContext(ctx aws.Context, input *UpdateIndexInput, opts ...request.Option) (*UpdateIndexOutput, error) { req, out := c.UpdateIndexRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdatePlugin = "UpdatePlugin" // UpdatePluginRequest generates a "aws/request.Request" representing the // client's request for the UpdatePlugin operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdatePlugin for more information on using the UpdatePlugin // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdatePluginRequest method. // req, resp := client.UpdatePluginRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdatePlugin func (c *QBusiness) UpdatePluginRequest(input *UpdatePluginInput) (req *request.Request, output *UpdatePluginOutput) { op := &request.Operation{ Name: opUpdatePlugin, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", } if input == nil { input = &UpdatePluginInput{} } output = &UpdatePluginOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdatePlugin API operation for QBusiness. // // Updates an Amazon Q Business plugin. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdatePlugin for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdatePlugin func (c *QBusiness) UpdatePlugin(input *UpdatePluginInput) (*UpdatePluginOutput, error) { req, out := c.UpdatePluginRequest(input) return out, req.Send() } // UpdatePluginWithContext is the same as UpdatePlugin with the addition of // the ability to pass a context and additional request options. // // See UpdatePlugin for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdatePluginWithContext(ctx aws.Context, input *UpdatePluginInput, opts ...request.Option) (*UpdatePluginOutput, error) { req, out := c.UpdatePluginRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateRetriever = "UpdateRetriever" // UpdateRetrieverRequest generates a "aws/request.Request" representing the // client's request for the UpdateRetriever operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateRetriever for more information on using the UpdateRetriever // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateRetrieverRequest method. // req, resp := client.UpdateRetrieverRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateRetriever func (c *QBusiness) UpdateRetrieverRequest(input *UpdateRetrieverInput) (req *request.Request, output *UpdateRetrieverOutput) { op := &request.Operation{ Name: opUpdateRetriever, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", } if input == nil { input = &UpdateRetrieverInput{} } output = &UpdateRetrieverOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateRetriever API operation for QBusiness. // // Updates the retriever used for your Amazon Q Business application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateRetriever for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateRetriever func (c *QBusiness) UpdateRetriever(input *UpdateRetrieverInput) (*UpdateRetrieverOutput, error) { req, out := c.UpdateRetrieverRequest(input) return out, req.Send() } // UpdateRetrieverWithContext is the same as UpdateRetriever with the addition of // the ability to pass a context and additional request options. // // See UpdateRetriever for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateRetrieverWithContext(ctx aws.Context, input *UpdateRetrieverInput, opts ...request.Option) (*UpdateRetrieverOutput, error) { req, out := c.UpdateRetrieverRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateUser = "UpdateUser" // UpdateUserRequest generates a "aws/request.Request" representing the // client's request for the UpdateUser operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateUser for more information on using the UpdateUser // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateUserRequest method. // req, resp := client.UpdateUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateUser func (c *QBusiness) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { op := &request.Operation{ Name: opUpdateUser, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/users/{userId}", } if input == nil { input = &UpdateUserInput{} } output = &UpdateUserOutput{} req = c.newRequest(op, input, output) return } // UpdateUser API operation for QBusiness. // // Updates a information associated with a user id. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateUser for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // - ServiceQuotaExceededException // You have exceeded the set limits for your Amazon Q Business service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateUser func (c *QBusiness) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) return out, req.Send() } // UpdateUserWithContext is the same as UpdateUser with the addition of // the ability to pass a context and additional request options. // // See UpdateUser for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateWebExperience = "UpdateWebExperience" // UpdateWebExperienceRequest generates a "aws/request.Request" representing the // client's request for the UpdateWebExperience operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateWebExperience for more information on using the UpdateWebExperience // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // Example sending a request using the UpdateWebExperienceRequest method. // req, resp := client.UpdateWebExperienceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateWebExperience func (c *QBusiness) UpdateWebExperienceRequest(input *UpdateWebExperienceInput) (req *request.Request, output *UpdateWebExperienceOutput) { op := &request.Operation{ Name: opUpdateWebExperience, HTTPMethod: "PUT", HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", } if input == nil { input = &UpdateWebExperienceInput{} } output = &UpdateWebExperienceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateWebExperience API operation for QBusiness. // // Updates an Amazon Q Business web experience. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for QBusiness's // API operation UpdateWebExperience for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. // // - InternalServerException // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. // // - ConflictException // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. // // - ThrottlingException // The request was denied due to throttling. Reduce the number of requests and // try again. // // - ValidationException // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. // // - AccessDeniedException // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. // // See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateWebExperience func (c *QBusiness) UpdateWebExperience(input *UpdateWebExperienceInput) (*UpdateWebExperienceOutput, error) { req, out := c.UpdateWebExperienceRequest(input) return out, req.Send() } // UpdateWebExperienceWithContext is the same as UpdateWebExperience with the addition of // the ability to pass a context and additional request options. // // See UpdateWebExperience for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *QBusiness) UpdateWebExperienceWithContext(ctx aws.Context, input *UpdateWebExperienceInput, opts ...request.Option) (*UpdateWebExperienceOutput, error) { req, out := c.UpdateWebExperienceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // Contains details about the OpenAPI schema for a custom plugin. For more information, // see custom plugin OpenAPI schemas (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/custom-plugin.html#plugins-api-schema). // You can either include the schema directly in the payload field or you can // upload it to an S3 bucket and specify the S3 bucket location in the s3 field. type APISchema struct { _ struct{} `type:"structure"` // The JSON or YAML-formatted payload defining the OpenAPI schema for a custom // plugin. // // Payload is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by APISchema's // String and GoString methods. Payload *string `locationName:"payload" type:"string" sensitive:"true"` // Contains details about the S3 object containing the OpenAPI schema for a // custom plugin. The schema could be in either JSON or YAML format. S3 *S3 `locationName:"s3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s APISchema) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s APISchema) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *APISchema) Validate() error { invalidParams := request.ErrInvalidParams{Context: "APISchema"} if s.S3 != nil { if err := s.S3.Validate(); err != nil { invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPayload sets the Payload field's value. func (s *APISchema) SetPayload(v string) *APISchema { s.Payload = &v return s } // SetS3 sets the S3 field's value. func (s *APISchema) SetS3(v *S3) *APISchema { s.S3 = v return s } // Used to configure access permissions for a document. type AccessConfiguration struct { _ struct{} `type:"structure"` // A list of AccessControlList objects. // // AccessControls is a required field AccessControls []*AccessControl `locationName:"accessControls" type:"list" required:"true"` // Describes the member relation within the AccessControlList object. MemberRelation *string `locationName:"memberRelation" type:"string" enum:"MemberRelation"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccessConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccessConfiguration"} if s.AccessControls == nil { invalidParams.Add(request.NewErrParamRequired("AccessControls")) } if s.AccessControls != nil { for i, v := range s.AccessControls { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AccessControls", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessControls sets the AccessControls field's value. func (s *AccessConfiguration) SetAccessControls(v []*AccessControl) *AccessConfiguration { s.AccessControls = v return s } // SetMemberRelation sets the MemberRelation field's value. func (s *AccessConfiguration) SetMemberRelation(v string) *AccessConfiguration { s.MemberRelation = &v return s } // A list of principals. Each principal can be either a USER or a GROUP and // can be designated document access permissions of either ALLOW or DENY. type AccessControl struct { _ struct{} `type:"structure"` // Describes the member relation within a principal list. MemberRelation *string `locationName:"memberRelation" type:"string" enum:"MemberRelation"` // Contains a list of principals, where a principal can be either a USER or // a GROUP. Each principal can be have the following type of document access: // ALLOW or DENY. // // Principals is a required field Principals []*Principal `locationName:"principals" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessControl) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessControl) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccessControl) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccessControl"} if s.Principals == nil { invalidParams.Add(request.NewErrParamRequired("Principals")) } if s.Principals != nil { for i, v := range s.Principals { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Principals", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMemberRelation sets the MemberRelation field's value. func (s *AccessControl) SetMemberRelation(v string) *AccessControl { s.MemberRelation = &v return s } // SetPrincipals sets the Principals field's value. func (s *AccessControl) SetPrincipals(v []*Principal) *AccessControl { s.Principals = v return s } // You don't have access to perform this action. Make sure you have the required // permission policies and user accounts and try again. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) GoString() string { return s.String() } func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { return &AccessDeniedException{ RespMetadata: v, } } // Code returns the exception type name. func (s *AccessDeniedException) Code() string { return "AccessDeniedException" } // Message returns the exception's message. func (s *AccessDeniedException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *AccessDeniedException) OrigErr() error { return nil } func (s *AccessDeniedException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *AccessDeniedException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } // An output event that Amazon Q Business returns to an user who wants to perform // a plugin action during a non-streaming chat conversation. It contains information // about the selected action with a list of possible user input fields, some // pre-populated by Amazon Q Business. type ActionReview struct { _ struct{} `type:"structure"` // Field values that an end user needs to provide to Amazon Q Business for Amazon // Q Business to perform the requested plugin action. Payload map[string]*ActionReviewPayloadField `locationName:"payload" type:"map"` // A string used to retain information about the hierarchical contexts within // an action review payload. PayloadFieldNameSeparator *string `locationName:"payloadFieldNameSeparator" min:"1" type:"string"` // The identifier of the plugin associated with the action review. PluginId *string `locationName:"pluginId" min:"36" type:"string"` // The type of plugin. PluginType *string `locationName:"pluginType" type:"string" enum:"PluginType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReview) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReview) GoString() string { return s.String() } // SetPayload sets the Payload field's value. func (s *ActionReview) SetPayload(v map[string]*ActionReviewPayloadField) *ActionReview { s.Payload = v return s } // SetPayloadFieldNameSeparator sets the PayloadFieldNameSeparator field's value. func (s *ActionReview) SetPayloadFieldNameSeparator(v string) *ActionReview { s.PayloadFieldNameSeparator = &v return s } // SetPluginId sets the PluginId field's value. func (s *ActionReview) SetPluginId(v string) *ActionReview { s.PluginId = &v return s } // SetPluginType sets the PluginType field's value. func (s *ActionReview) SetPluginType(v string) *ActionReview { s.PluginType = &v return s } // An output event that Amazon Q Business returns to an user who wants to perform // a plugin action during a streaming chat conversation. It contains information // about the selected action with a list of possible user input fields, some // pre-populated by Amazon Q Business. type ActionReviewEvent struct { _ struct{} `type:"structure"` // The identifier of the conversation with which the action review event is // associated. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // Field values that an end user needs to provide to Amazon Q Business for Amazon // Q Business to perform the requested plugin action. Payload map[string]*ActionReviewPayloadField `locationName:"payload" type:"map"` // A string used to retain information about the hierarchical contexts within // an action review event payload. PayloadFieldNameSeparator *string `locationName:"payloadFieldNameSeparator" min:"1" type:"string"` // The identifier of the plugin associated with the action review event. PluginId *string `locationName:"pluginId" min:"36" type:"string"` // The type of plugin. PluginType *string `locationName:"pluginType" type:"string" enum:"PluginType"` // The identifier of an Amazon Q Business AI generated associated with the action // review event. SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` // The identifier of the conversation with which the plugin action is associated. UserMessageId *string `locationName:"userMessageId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewEvent) GoString() string { return s.String() } // SetConversationId sets the ConversationId field's value. func (s *ActionReviewEvent) SetConversationId(v string) *ActionReviewEvent { s.ConversationId = &v return s } // SetPayload sets the Payload field's value. func (s *ActionReviewEvent) SetPayload(v map[string]*ActionReviewPayloadField) *ActionReviewEvent { s.Payload = v return s } // SetPayloadFieldNameSeparator sets the PayloadFieldNameSeparator field's value. func (s *ActionReviewEvent) SetPayloadFieldNameSeparator(v string) *ActionReviewEvent { s.PayloadFieldNameSeparator = &v return s } // SetPluginId sets the PluginId field's value. func (s *ActionReviewEvent) SetPluginId(v string) *ActionReviewEvent { s.PluginId = &v return s } // SetPluginType sets the PluginType field's value. func (s *ActionReviewEvent) SetPluginType(v string) *ActionReviewEvent { s.PluginType = &v return s } // SetSystemMessageId sets the SystemMessageId field's value. func (s *ActionReviewEvent) SetSystemMessageId(v string) *ActionReviewEvent { s.SystemMessageId = &v return s } // SetUserMessageId sets the UserMessageId field's value. func (s *ActionReviewEvent) SetUserMessageId(v string) *ActionReviewEvent { s.UserMessageId = &v return s } // The ActionReviewEvent is and event in the ChatOutputStream group of events. func (s *ActionReviewEvent) eventChatOutputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the ActionReviewEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *ActionReviewEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *ActionReviewEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // A user input field in an plugin action review payload. type ActionReviewPayloadField struct { _ struct{} `type:"structure"` // The expected data format for the action review input field value. For example, // in PTO request, from and to would be of datetime allowed format. AllowedFormat *string `locationName:"allowedFormat" min:"1" type:"string"` // Information about the field values that an end user can use to provide to // Amazon Q Business for Amazon Q Business to perform the requested plugin action. AllowedValues []*ActionReviewPayloadFieldAllowedValue `locationName:"allowedValues" type:"list"` // The field level description of each action review input field. This could // be an explanation of the field. In the Amazon Q Business web experience, // these descriptions could be used to display as tool tips to help users understand // the field. DisplayDescription *string `locationName:"displayDescription" min:"1" type:"string"` // The name of the field. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The display order of fields in a payload. DisplayOrder *int64 `locationName:"displayOrder" type:"integer"` // Information about whether the field is required. Required *bool `locationName:"required" type:"boolean"` // The type of field. Type *string `locationName:"type" type:"string" enum:"ActionPayloadFieldType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewPayloadField) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewPayloadField) GoString() string { return s.String() } // SetAllowedFormat sets the AllowedFormat field's value. func (s *ActionReviewPayloadField) SetAllowedFormat(v string) *ActionReviewPayloadField { s.AllowedFormat = &v return s } // SetAllowedValues sets the AllowedValues field's value. func (s *ActionReviewPayloadField) SetAllowedValues(v []*ActionReviewPayloadFieldAllowedValue) *ActionReviewPayloadField { s.AllowedValues = v return s } // SetDisplayDescription sets the DisplayDescription field's value. func (s *ActionReviewPayloadField) SetDisplayDescription(v string) *ActionReviewPayloadField { s.DisplayDescription = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *ActionReviewPayloadField) SetDisplayName(v string) *ActionReviewPayloadField { s.DisplayName = &v return s } // SetDisplayOrder sets the DisplayOrder field's value. func (s *ActionReviewPayloadField) SetDisplayOrder(v int64) *ActionReviewPayloadField { s.DisplayOrder = &v return s } // SetRequired sets the Required field's value. func (s *ActionReviewPayloadField) SetRequired(v bool) *ActionReviewPayloadField { s.Required = &v return s } // SetType sets the Type field's value. func (s *ActionReviewPayloadField) SetType(v string) *ActionReviewPayloadField { s.Type = &v return s } // Information about the field values that an end user can use to provide to // Amazon Q Business for Amazon Q Business to perform the requested plugin action. type ActionReviewPayloadFieldAllowedValue struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewPayloadFieldAllowedValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ActionReviewPayloadFieldAllowedValue) GoString() string { return s.String() } // Summary information for an Amazon Q Business application. type Application struct { _ struct{} `type:"structure"` // The identifier for the Amazon Q Business application. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // The Unix timestamp when the Amazon Q Business application was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The name of the Amazon Q Business application. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The status of the Amazon Q Business application. The application is ready // to use when the status is ACTIVE. Status *string `locationName:"status" type:"string" enum:"ApplicationStatus"` // The Unix timestamp when the Amazon Q Business application was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Application) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Application) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *Application) SetApplicationId(v string) *Application { s.ApplicationId = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *Application) SetCreatedAt(v time.Time) *Application { s.CreatedAt = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *Application) SetDisplayName(v string) *Application { s.DisplayName = &v return s } // SetStatus sets the Status field's value. func (s *Application) SetStatus(v string) *Application { s.Status = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *Application) SetUpdatedAt(v time.Time) *Application { s.UpdatedAt = &v return s } // Configuration information about the file upload during chat feature for your // application. type AppliedAttachmentsConfiguration struct { _ struct{} `type:"structure"` // Information about whether file upload during chat functionality is activated // for your application. AttachmentsControlMode *string `locationName:"attachmentsControlMode" type:"string" enum:"AttachmentsControlMode"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AppliedAttachmentsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AppliedAttachmentsConfiguration) GoString() string { return s.String() } // SetAttachmentsControlMode sets the AttachmentsControlMode field's value. func (s *AppliedAttachmentsConfiguration) SetAttachmentsControlMode(v string) *AppliedAttachmentsConfiguration { s.AttachmentsControlMode = &v return s } // The creator mode specific admin controls configured for an Amazon Q Business // application. Determines whether an end user can generate LLM-only responses // when they use the web experience. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html) // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). type AppliedCreatorModeConfiguration struct { _ struct{} `type:"structure"` // Information about whether creator mode is enabled or disabled for an Amazon // Q Business application. // // CreatorModeControl is a required field CreatorModeControl *string `locationName:"creatorModeControl" type:"string" required:"true" enum:"CreatorModeControl"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AppliedCreatorModeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AppliedCreatorModeConfiguration) GoString() string { return s.String() } // SetCreatorModeControl sets the CreatorModeControl field's value. func (s *AppliedCreatorModeConfiguration) SetCreatorModeControl(v string) *AppliedCreatorModeConfiguration { s.CreatorModeControl = &v return s } // A file input event activated by a end user request to upload files into their // web experience chat. type AttachmentInputEvent struct { _ struct{} `type:"structure"` // A file directly uploaded into a web experience chat. Attachment *AttachmentInput_ `locationName:"attachment" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentInputEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentInputEvent) GoString() string { return s.String() } // SetAttachment sets the Attachment field's value. func (s *AttachmentInputEvent) SetAttachment(v *AttachmentInput_) *AttachmentInputEvent { s.Attachment = v return s } // The AttachmentInputEvent is and event in the ChatInputStream group of events. func (s *AttachmentInputEvent) eventChatInputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the AttachmentInputEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *AttachmentInputEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *AttachmentInputEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // A file directly uploaded into a web experience chat. type AttachmentInput_ struct { _ struct{} `type:"structure"` // The data contained within the uploaded file. // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `locationName:"data" type:"blob" required:"true"` // The name of the file. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentInput_) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentInput_) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachmentInput_) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachmentInput_"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetData sets the Data field's value. func (s *AttachmentInput_) SetData(v []byte) *AttachmentInput_ { s.Data = v return s } // SetName sets the Name field's value. func (s *AttachmentInput_) SetName(v string) *AttachmentInput_ { s.Name = &v return s } // The details of a file uploaded during chat. type AttachmentOutput_ struct { _ struct{} `type:"structure"` // An error associated with a file uploaded during chat. Error *ErrorDetail `locationName:"error" type:"structure"` // The name of a file uploaded during chat. Name *string `locationName:"name" min:"1" type:"string"` // The status of a file uploaded during chat. Status *string `locationName:"status" type:"string" enum:"AttachmentStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentOutput_) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentOutput_) GoString() string { return s.String() } // SetError sets the Error field's value. func (s *AttachmentOutput_) SetError(v *ErrorDetail) *AttachmentOutput_ { s.Error = v return s } // SetName sets the Name field's value. func (s *AttachmentOutput_) SetName(v string) *AttachmentOutput_ { s.Name = &v return s } // SetStatus sets the Status field's value. func (s *AttachmentOutput_) SetStatus(v string) *AttachmentOutput_ { s.Status = &v return s } // Configuration information for the file upload during chat feature. type AttachmentsConfiguration struct { _ struct{} `type:"structure"` // Status information about whether file upload functionality is activated or // deactivated for your end user. // // AttachmentsControlMode is a required field AttachmentsControlMode *string `locationName:"attachmentsControlMode" type:"string" required:"true" enum:"AttachmentsControlMode"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttachmentsConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachmentsConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachmentsConfiguration"} if s.AttachmentsControlMode == nil { invalidParams.Add(request.NewErrParamRequired("AttachmentsControlMode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttachmentsControlMode sets the AttachmentsControlMode field's value. func (s *AttachmentsConfiguration) SetAttachmentsControlMode(v string) *AttachmentsConfiguration { s.AttachmentsControlMode = &v return s } // Enables filtering of responses based on document attributes or metadata fields. type AttributeFilter struct { _ struct{} `type:"structure"` // Performs a logical AND operation on all supplied filters. AndAllFilters []*AttributeFilter `locationName:"andAllFilters" type:"list"` // Returns true when a document contains all the specified document attributes // or metadata fields. Supported for the following document attribute value // types (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // stringListValue. ContainsAll *DocumentAttribute `locationName:"containsAll" type:"structure"` // Returns true when a document contains any of the specified document attributes // or metadata fields. Supported for the following document attribute value // types (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // stringListValue. ContainsAny *DocumentAttribute `locationName:"containsAny" type:"structure"` // Performs an equals operation on two document attributes or metadata fields. // Supported for the following document attribute value types (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // dateValue, longValue, stringListValue and stringValue. EqualsTo *DocumentAttribute `locationName:"equalsTo" type:"structure"` // Performs a greater than operation on two document attributes or metadata // fields. Supported for the following document attribute value types (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // dateValue and longValue. GreaterThan *DocumentAttribute `locationName:"greaterThan" type:"structure"` // Performs a greater or equals than operation on two document attributes or // metadata fields. Supported for the following document attribute value types // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // dateValue and longValue. GreaterThanOrEquals *DocumentAttribute `locationName:"greaterThanOrEquals" type:"structure"` // Performs a less than operation on two document attributes or metadata fields. // Supported for the following document attribute value types (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // dateValue and longValue. LessThan *DocumentAttribute `locationName:"lessThan" type:"structure"` // Performs a less than or equals operation on two document attributes or metadata // fields.Supported for the following document attribute value type (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeValue.html): // dateValue and longValue. LessThanOrEquals *DocumentAttribute `locationName:"lessThanOrEquals" type:"structure"` // Performs a logical NOT operation on all supplied filters. NotFilter *AttributeFilter `locationName:"notFilter" type:"structure"` // Performs a logical OR operation on all supplied filters. OrAllFilters []*AttributeFilter `locationName:"orAllFilters" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttributeFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttributeFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttributeFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttributeFilter"} if s.ContainsAll != nil { if err := s.ContainsAll.Validate(); err != nil { invalidParams.AddNested("ContainsAll", err.(request.ErrInvalidParams)) } } if s.ContainsAny != nil { if err := s.ContainsAny.Validate(); err != nil { invalidParams.AddNested("ContainsAny", err.(request.ErrInvalidParams)) } } if s.EqualsTo != nil { if err := s.EqualsTo.Validate(); err != nil { invalidParams.AddNested("EqualsTo", err.(request.ErrInvalidParams)) } } if s.GreaterThan != nil { if err := s.GreaterThan.Validate(); err != nil { invalidParams.AddNested("GreaterThan", err.(request.ErrInvalidParams)) } } if s.GreaterThanOrEquals != nil { if err := s.GreaterThanOrEquals.Validate(); err != nil { invalidParams.AddNested("GreaterThanOrEquals", err.(request.ErrInvalidParams)) } } if s.LessThan != nil { if err := s.LessThan.Validate(); err != nil { invalidParams.AddNested("LessThan", err.(request.ErrInvalidParams)) } } if s.LessThanOrEquals != nil { if err := s.LessThanOrEquals.Validate(); err != nil { invalidParams.AddNested("LessThanOrEquals", err.(request.ErrInvalidParams)) } } if s.NotFilter != nil { if err := s.NotFilter.Validate(); err != nil { invalidParams.AddNested("NotFilter", err.(request.ErrInvalidParams)) } } if s.OrAllFilters != nil { for i, v := range s.OrAllFilters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OrAllFilters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAndAllFilters sets the AndAllFilters field's value. func (s *AttributeFilter) SetAndAllFilters(v []*AttributeFilter) *AttributeFilter { s.AndAllFilters = v return s } // SetContainsAll sets the ContainsAll field's value. func (s *AttributeFilter) SetContainsAll(v *DocumentAttribute) *AttributeFilter { s.ContainsAll = v return s } // SetContainsAny sets the ContainsAny field's value. func (s *AttributeFilter) SetContainsAny(v *DocumentAttribute) *AttributeFilter { s.ContainsAny = v return s } // SetEqualsTo sets the EqualsTo field's value. func (s *AttributeFilter) SetEqualsTo(v *DocumentAttribute) *AttributeFilter { s.EqualsTo = v return s } // SetGreaterThan sets the GreaterThan field's value. func (s *AttributeFilter) SetGreaterThan(v *DocumentAttribute) *AttributeFilter { s.GreaterThan = v return s } // SetGreaterThanOrEquals sets the GreaterThanOrEquals field's value. func (s *AttributeFilter) SetGreaterThanOrEquals(v *DocumentAttribute) *AttributeFilter { s.GreaterThanOrEquals = v return s } // SetLessThan sets the LessThan field's value. func (s *AttributeFilter) SetLessThan(v *DocumentAttribute) *AttributeFilter { s.LessThan = v return s } // SetLessThanOrEquals sets the LessThanOrEquals field's value. func (s *AttributeFilter) SetLessThanOrEquals(v *DocumentAttribute) *AttributeFilter { s.LessThanOrEquals = v return s } // SetNotFilter sets the NotFilter field's value. func (s *AttributeFilter) SetNotFilter(v *AttributeFilter) *AttributeFilter { s.NotFilter = v return s } // SetOrAllFilters sets the OrAllFilters field's value. func (s *AttributeFilter) SetOrAllFilters(v []*AttributeFilter) *AttributeFilter { s.OrAllFilters = v return s } // A request made by Amazon Q Business to a third paty authentication server // to authenticate a custom plugin user. type AuthChallengeRequest struct { _ struct{} `type:"structure"` // The URL sent by Amazon Q Business to the third party authentication server // to authenticate a custom plugin user through an OAuth protocol. // // AuthorizationUrl is a required field AuthorizationUrl *string `locationName:"authorizationUrl" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeRequest) GoString() string { return s.String() } // SetAuthorizationUrl sets the AuthorizationUrl field's value. func (s *AuthChallengeRequest) SetAuthorizationUrl(v string) *AuthChallengeRequest { s.AuthorizationUrl = &v return s } // An authentication verification event activated by an end user request to // use a custom plugin. type AuthChallengeRequestEvent struct { _ struct{} `type:"structure"` // The URL sent by Amazon Q Business to a third party authentication server // in response to an authentication verification event activated by an end user // request to use a custom plugin. // // AuthorizationUrl is a required field AuthorizationUrl *string `locationName:"authorizationUrl" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeRequestEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeRequestEvent) GoString() string { return s.String() } // SetAuthorizationUrl sets the AuthorizationUrl field's value. func (s *AuthChallengeRequestEvent) SetAuthorizationUrl(v string) *AuthChallengeRequestEvent { s.AuthorizationUrl = &v return s } // The AuthChallengeRequestEvent is and event in the ChatOutputStream group of events. func (s *AuthChallengeRequestEvent) eventChatOutputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the AuthChallengeRequestEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *AuthChallengeRequestEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *AuthChallengeRequestEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // Contains details of the authentication information received from a third // party authentication server in response to an authentication challenge. type AuthChallengeResponse struct { _ struct{} `type:"structure"` // The mapping of key-value pairs in an authentication challenge response. // // ResponseMap is a required field ResponseMap map[string]*string `locationName:"responseMap" type:"map" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeResponse) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthChallengeResponse) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthChallengeResponse"} if s.ResponseMap == nil { invalidParams.Add(request.NewErrParamRequired("ResponseMap")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResponseMap sets the ResponseMap field's value. func (s *AuthChallengeResponse) SetResponseMap(v map[string]*string) *AuthChallengeResponse { s.ResponseMap = v return s } // An authentication verification event response by a third party authentication // server to Amazon Q Business. type AuthChallengeResponseEvent struct { _ struct{} `type:"structure"` // The mapping of key-value pairs in an authentication challenge response. // // ResponseMap is a required field ResponseMap map[string]*string `locationName:"responseMap" type:"map" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeResponseEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AuthChallengeResponseEvent) GoString() string { return s.String() } // SetResponseMap sets the ResponseMap field's value. func (s *AuthChallengeResponseEvent) SetResponseMap(v map[string]*string) *AuthChallengeResponseEvent { s.ResponseMap = v return s } // The AuthChallengeResponseEvent is and event in the ChatInputStream group of events. func (s *AuthChallengeResponseEvent) eventChatInputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the AuthChallengeResponseEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *AuthChallengeResponseEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *AuthChallengeResponseEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // Information about the basic authentication credentials used to configure // a plugin. type BasicAuthConfiguration struct { _ struct{} `type:"structure"` // The ARN of an IAM role used by Amazon Q Business to access the basic authentication // credentials stored in a Secrets Manager secret. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The ARN of the Secrets Manager secret that stores the basic authentication // credentials used for plugin configuration.. // // SecretArn is a required field SecretArn *string `locationName:"secretArn" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BasicAuthConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BasicAuthConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BasicAuthConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BasicAuthConfiguration"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.SecretArn == nil { invalidParams.Add(request.NewErrParamRequired("SecretArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRoleArn sets the RoleArn field's value. func (s *BasicAuthConfiguration) SetRoleArn(v string) *BasicAuthConfiguration { s.RoleArn = &v return s } // SetSecretArn sets the SecretArn field's value. func (s *BasicAuthConfiguration) SetSecretArn(v string) *BasicAuthConfiguration { s.SecretArn = &v return s } type BatchDeleteDocumentInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source sync during which the documents were deleted. DataSourceSyncId *string `locationName:"dataSourceSyncId" min:"36" type:"string"` // Documents deleted from the Amazon Q Business index. // // Documents is a required field Documents []*DeleteDocument `locationName:"documents" type:"list" required:"true"` // The identifier of the Amazon Q Business index that contains the documents // to delete. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchDeleteDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchDeleteDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchDeleteDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchDeleteDocumentInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceSyncId != nil && len(*s.DataSourceSyncId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceSyncId", 36)) } if s.Documents == nil { invalidParams.Add(request.NewErrParamRequired("Documents")) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.Documents != nil { for i, v := range s.Documents { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Documents", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *BatchDeleteDocumentInput) SetApplicationId(v string) *BatchDeleteDocumentInput { s.ApplicationId = &v return s } // SetDataSourceSyncId sets the DataSourceSyncId field's value. func (s *BatchDeleteDocumentInput) SetDataSourceSyncId(v string) *BatchDeleteDocumentInput { s.DataSourceSyncId = &v return s } // SetDocuments sets the Documents field's value. func (s *BatchDeleteDocumentInput) SetDocuments(v []*DeleteDocument) *BatchDeleteDocumentInput { s.Documents = v return s } // SetIndexId sets the IndexId field's value. func (s *BatchDeleteDocumentInput) SetIndexId(v string) *BatchDeleteDocumentInput { s.IndexId = &v return s } type BatchDeleteDocumentOutput struct { _ struct{} `type:"structure"` // A list of documents that couldn't be removed from the Amazon Q Business index. // Each entry contains an error message that indicates why the document couldn't // be removed from the index. FailedDocuments []*FailedDocument `locationName:"failedDocuments" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchDeleteDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchDeleteDocumentOutput) GoString() string { return s.String() } // SetFailedDocuments sets the FailedDocuments field's value. func (s *BatchDeleteDocumentOutput) SetFailedDocuments(v []*FailedDocument) *BatchDeleteDocumentOutput { s.FailedDocuments = v return s } type BatchPutDocumentInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source sync during which the documents were added. DataSourceSyncId *string `locationName:"dataSourceSyncId" min:"36" type:"string"` // One or more documents to add to the index. // // Documents is a required field Documents []*Document `locationName:"documents" min:"1" type:"list" required:"true"` // The identifier of the Amazon Q Business index to add the documents to. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The Amazon Resource Name (ARN) of an IAM role with permission to access your // S3 bucket. RoleArn *string `locationName:"roleArn" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchPutDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchPutDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchPutDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchPutDocumentInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceSyncId != nil && len(*s.DataSourceSyncId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceSyncId", 36)) } if s.Documents == nil { invalidParams.Add(request.NewErrParamRequired("Documents")) } if s.Documents != nil && len(s.Documents) < 1 { invalidParams.Add(request.NewErrParamMinLen("Documents", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.Documents != nil { for i, v := range s.Documents { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Documents", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *BatchPutDocumentInput) SetApplicationId(v string) *BatchPutDocumentInput { s.ApplicationId = &v return s } // SetDataSourceSyncId sets the DataSourceSyncId field's value. func (s *BatchPutDocumentInput) SetDataSourceSyncId(v string) *BatchPutDocumentInput { s.DataSourceSyncId = &v return s } // SetDocuments sets the Documents field's value. func (s *BatchPutDocumentInput) SetDocuments(v []*Document) *BatchPutDocumentInput { s.Documents = v return s } // SetIndexId sets the IndexId field's value. func (s *BatchPutDocumentInput) SetIndexId(v string) *BatchPutDocumentInput { s.IndexId = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *BatchPutDocumentInput) SetRoleArn(v string) *BatchPutDocumentInput { s.RoleArn = &v return s } type BatchPutDocumentOutput struct { _ struct{} `type:"structure"` // A list of documents that were not added to the Amazon Q Business index because // the document failed a validation check. Each document contains an error message // that indicates why the document couldn't be added to the index. FailedDocuments []*FailedDocument `locationName:"failedDocuments" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchPutDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BatchPutDocumentOutput) GoString() string { return s.String() } // SetFailedDocuments sets the FailedDocuments field's value. func (s *BatchPutDocumentOutput) SetFailedDocuments(v []*FailedDocument) *BatchPutDocumentOutput { s.FailedDocuments = v return s } // Provides information about the phrases blocked from chat by your chat control // configuration. type BlockedPhrasesConfiguration struct { _ struct{} `type:"structure"` // A list of phrases blocked from a Amazon Q Business web experience chat. BlockedPhrases []*string `locationName:"blockedPhrases" type:"list"` // The configured custom message displayed to an end user informing them that // they've used a blocked phrase during chat. SystemMessageOverride *string `locationName:"systemMessageOverride" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BlockedPhrasesConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BlockedPhrasesConfiguration) GoString() string { return s.String() } // SetBlockedPhrases sets the BlockedPhrases field's value. func (s *BlockedPhrasesConfiguration) SetBlockedPhrases(v []*string) *BlockedPhrasesConfiguration { s.BlockedPhrases = v return s } // SetSystemMessageOverride sets the SystemMessageOverride field's value. func (s *BlockedPhrasesConfiguration) SetSystemMessageOverride(v string) *BlockedPhrasesConfiguration { s.SystemMessageOverride = &v return s } // Updates a blocked phrases configuration in your Amazon Q Business application. type BlockedPhrasesConfigurationUpdate struct { _ struct{} `type:"structure"` // Creates or updates a blocked phrases configuration in your Amazon Q Business // application. BlockedPhrasesToCreateOrUpdate []*string `locationName:"blockedPhrasesToCreateOrUpdate" type:"list"` // Deletes a blocked phrases configuration in your Amazon Q Business application. BlockedPhrasesToDelete []*string `locationName:"blockedPhrasesToDelete" type:"list"` // The configured custom message displayed to your end user when they use blocked // phrase during chat. SystemMessageOverride *string `locationName:"systemMessageOverride" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BlockedPhrasesConfigurationUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s BlockedPhrasesConfigurationUpdate) GoString() string { return s.String() } // SetBlockedPhrasesToCreateOrUpdate sets the BlockedPhrasesToCreateOrUpdate field's value. func (s *BlockedPhrasesConfigurationUpdate) SetBlockedPhrasesToCreateOrUpdate(v []*string) *BlockedPhrasesConfigurationUpdate { s.BlockedPhrasesToCreateOrUpdate = v return s } // SetBlockedPhrasesToDelete sets the BlockedPhrasesToDelete field's value. func (s *BlockedPhrasesConfigurationUpdate) SetBlockedPhrasesToDelete(v []*string) *BlockedPhrasesConfigurationUpdate { s.BlockedPhrasesToDelete = v return s } // SetSystemMessageOverride sets the SystemMessageOverride field's value. func (s *BlockedPhrasesConfigurationUpdate) SetSystemMessageOverride(v string) *BlockedPhrasesConfigurationUpdate { s.SystemMessageOverride = &v return s } type ChatInput struct { _ struct{} `type:"structure" payload:"InputStream"` // The identifier of the Amazon Q Business application linked to a streaming // Amazon Q Business conversation. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // A token that you provide to identify the chat input. ClientToken *string `location:"querystring" locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The identifier of the Amazon Q Business conversation. ConversationId *string `location:"querystring" locationName:"conversationId" min:"36" type:"string"` // The identifier used to associate a user message with a AI generated response. ParentMessageId *string `location:"querystring" locationName:"parentMessageId" min:"36" type:"string"` // The groups that a user associated with the chat input belongs to. UserGroups []*string `location:"querystring" locationName:"userGroups" type:"list"` // The identifier of the user attached to the chat input. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChatInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.ConversationId != nil && len(*s.ConversationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) } if s.ParentMessageId != nil && len(*s.ParentMessageId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ParentMessageId", 36)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ChatInput) SetApplicationId(v string) *ChatInput { s.ApplicationId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *ChatInput) SetClientToken(v string) *ChatInput { s.ClientToken = &v return s } // SetConversationId sets the ConversationId field's value. func (s *ChatInput) SetConversationId(v string) *ChatInput { s.ConversationId = &v return s } // SetParentMessageId sets the ParentMessageId field's value. func (s *ChatInput) SetParentMessageId(v string) *ChatInput { s.ParentMessageId = &v return s } // SetUserGroups sets the UserGroups field's value. func (s *ChatInput) SetUserGroups(v []*string) *ChatInput { s.UserGroups = v return s } // SetUserId sets the UserId field's value. func (s *ChatInput) SetUserId(v string) *ChatInput { s.UserId = &v return s } // ChatInputStreamEvent groups together all EventStream // events writes for ChatInputStream. // // These events are: // // - AttachmentInputEvent // - AuthChallengeResponseEvent // - ConfigurationEvent // - EndOfInputEvent // - TextInputEvent type ChatInputStreamEvent interface { eventChatInputStream() eventstreamapi.Marshaler eventstreamapi.Unmarshaler } // ChatInputStreamWriter provides the interface for writing events to the stream. // The default implementation for this interface will be ChatInputStream. // // The writer's Close method must allow multiple concurrent calls. // // These events are: // // - AttachmentInputEvent // - AuthChallengeResponseEvent // - ConfigurationEvent // - EndOfInputEvent // - TextInputEvent type ChatInputStreamWriter interface { // Sends writes events to the stream blocking until the event has been // written. An error is returned if the write fails. Send(aws.Context, ChatInputStreamEvent) error // Close will stop the writer writing to the event stream. Close() error // Returns any error that has occurred while writing to the event stream. Err() error } type writeChatInputStream struct { *eventstreamapi.StreamWriter } func (w *writeChatInputStream) Send(ctx aws.Context, event ChatInputStreamEvent) error { return w.StreamWriter.Send(ctx, event) } func eventTypeForChatInputStreamEvent(event eventstreamapi.Marshaler) (string, error) { switch event.(type) { case *AttachmentInputEvent: return "attachmentEvent", nil case *AuthChallengeResponseEvent: return "authChallengeResponseEvent", nil case *ConfigurationEvent: return "configurationEvent", nil case *EndOfInputEvent: return "endOfInputEvent", nil case *TextInputEvent: return "textEvent", nil default: return "", awserr.New( request.ErrCodeSerialization, fmt.Sprintf("unknown event type, %T, for ChatInputStream", event), nil, ) } } // Configuration information for Amazon Q Business conversation modes. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html) // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). type ChatModeConfiguration struct { _ struct{} `type:"structure"` // Configuration information required to invoke chat in PLUGIN_MODE. PluginConfiguration *PluginConfiguration `locationName:"pluginConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatModeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatModeConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChatModeConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChatModeConfiguration"} if s.PluginConfiguration != nil { if err := s.PluginConfiguration.Validate(); err != nil { invalidParams.AddNested("PluginConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPluginConfiguration sets the PluginConfiguration field's value. func (s *ChatModeConfiguration) SetPluginConfiguration(v *PluginConfiguration) *ChatModeConfiguration { s.PluginConfiguration = v return s } type ChatOutput struct { _ struct{} `type:"structure" payload:"OutputStream"` eventStream *ChatEventStream } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatOutput) GoString() string { return s.String() } // GetStream returns the type to interact with the event stream. func (s *ChatOutput) GetStream() *ChatEventStream { return s.eventStream } // ChatOutputStreamEvent groups together all EventStream // events writes for ChatOutputStream. // // These events are: // // - ActionReviewEvent // - AuthChallengeRequestEvent // - FailedAttachmentEvent // - MetadataEvent // - TextOutputEvent type ChatOutputStreamEvent interface { eventChatOutputStream() eventstreamapi.Marshaler eventstreamapi.Unmarshaler } // ChatOutputStreamReader provides the interface for reading to the stream. The // default implementation for this interface will be ChatOutputStream. // // The reader's Close method must allow multiple concurrent calls. // // These events are: // // - ActionReviewEvent // - AuthChallengeRequestEvent // - FailedAttachmentEvent // - MetadataEvent // - TextOutputEvent // - ChatOutputStreamUnknownEvent type ChatOutputStreamReader interface { // Returns a channel of events as they are read from the event stream. Events() <-chan ChatOutputStreamEvent // Close will stop the reader reading events from the stream. Close() error // Returns any error that has occurred while reading from the event stream. Err() error } type readChatOutputStream struct { eventReader *eventstreamapi.EventReader stream chan ChatOutputStreamEvent err *eventstreamapi.OnceError done chan struct{} closeOnce sync.Once } func newReadChatOutputStream(eventReader *eventstreamapi.EventReader) *readChatOutputStream { r := &readChatOutputStream{ eventReader: eventReader, stream: make(chan ChatOutputStreamEvent), done: make(chan struct{}), err: eventstreamapi.NewOnceError(), } go r.readEventStream() return r } // Close will close the underlying event stream reader. func (r *readChatOutputStream) Close() error { r.closeOnce.Do(r.safeClose) return r.Err() } func (r *readChatOutputStream) ErrorSet() <-chan struct{} { return r.err.ErrorSet() } func (r *readChatOutputStream) Closed() <-chan struct{} { return r.done } func (r *readChatOutputStream) safeClose() { close(r.done) } func (r *readChatOutputStream) Err() error { return r.err.Err() } func (r *readChatOutputStream) Events() <-chan ChatOutputStreamEvent { return r.stream } func (r *readChatOutputStream) readEventStream() { defer r.Close() defer close(r.stream) for { event, err := r.eventReader.ReadEvent() if err != nil { if err == io.EOF { return } select { case <-r.done: // If closed already ignore the error return default: } if _, ok := err.(*eventstreamapi.UnknownMessageTypeError); ok { continue } r.err.SetError(err) return } select { case r.stream <- event.(ChatOutputStreamEvent): case <-r.done: return } } } type unmarshalerForChatOutputStreamEvent struct { metadata protocol.ResponseMetadata } func (u unmarshalerForChatOutputStreamEvent) UnmarshalerForEventName(eventType string) (eventstreamapi.Unmarshaler, error) { switch eventType { case "actionReviewEvent": return &ActionReviewEvent{}, nil case "authChallengeRequestEvent": return &AuthChallengeRequestEvent{}, nil case "failedAttachmentEvent": return &FailedAttachmentEvent{}, nil case "metadataEvent": return &MetadataEvent{}, nil case "textEvent": return &TextOutputEvent{}, nil default: return &ChatOutputStreamUnknownEvent{Type: eventType}, nil } } // ChatOutputStreamUnknownEvent provides a failsafe event for the // ChatOutputStream group of events when an unknown event is received. type ChatOutputStreamUnknownEvent struct { Type string Message eventstream.Message } // The ChatOutputStreamUnknownEvent is and event in the ChatOutputStream // group of events. func (s *ChatOutputStreamUnknownEvent) eventChatOutputStream() {} // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (e *ChatOutputStreamUnknownEvent) MarshalEvent(pm protocol.PayloadMarshaler) ( msg eventstream.Message, err error, ) { return e.Message.Clone(), nil } // UnmarshalEvent unmarshals the EventStream Message into the ChatOutputStream value. // This method is only used internally within the SDK's EventStream handling. func (e *ChatOutputStreamUnknownEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { e.Message = msg.Clone() return nil } type ChatSyncInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application linked to the Amazon // Q Business conversation. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // A list of files uploaded directly during chat. You can upload a maximum of // 5 files of upto 10 MB each. Attachments []*AttachmentInput_ `locationName:"attachments" min:"1" type:"list"` // Enables filtering of Amazon Q Business web experience responses based on // document attributes or metadata fields. AttributeFilter *AttributeFilter `locationName:"attributeFilter" type:"structure"` // An authentication verification event response by a third party authentication // server to Amazon Q Business. AuthChallengeResponse *AuthChallengeResponse `locationName:"authChallengeResponse" type:"structure"` // The chat modes available to an Amazon Q Business end user. // // * RETRIEVAL_MODE - The default chat mode for an Amazon Q Business application. // When this mode is enabled, Amazon Q Business generates responses only // from data sources connected to an Amazon Q Business application. // // * CREATOR_MODE - By selecting this mode, users can choose to generate // responses only from the LLM knowledge, without consulting connected data // sources, for a chat request. // // * PLUGIN_MODE - By selecting this mode, users can choose to use plugins // in chat. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html), // Plugins (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/plugins.html), // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). ChatMode *string `locationName:"chatMode" type:"string" enum:"ChatMode"` // The chat mode configuration for an Amazon Q Business application. ChatModeConfiguration *ChatModeConfiguration `locationName:"chatModeConfiguration" type:"structure"` // A token that you provide to identify a chat request. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The identifier of the Amazon Q Business conversation. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // The identifier of the previous system message in a conversation. ParentMessageId *string `locationName:"parentMessageId" min:"36" type:"string"` // The groups that a user associated with the chat input belongs to. UserGroups []*string `location:"querystring" locationName:"userGroups" type:"list"` // The identifier of the user attached to the chat input. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` // A end user message in a conversation. UserMessage *string `locationName:"userMessage" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatSyncInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatSyncInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChatSyncInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChatSyncInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.Attachments != nil && len(s.Attachments) < 1 { invalidParams.Add(request.NewErrParamMinLen("Attachments", 1)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.ConversationId != nil && len(*s.ConversationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) } if s.ParentMessageId != nil && len(*s.ParentMessageId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ParentMessageId", 36)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if s.UserMessage != nil && len(*s.UserMessage) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserMessage", 1)) } if s.Attachments != nil { for i, v := range s.Attachments { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams)) } } } if s.AttributeFilter != nil { if err := s.AttributeFilter.Validate(); err != nil { invalidParams.AddNested("AttributeFilter", err.(request.ErrInvalidParams)) } } if s.AuthChallengeResponse != nil { if err := s.AuthChallengeResponse.Validate(); err != nil { invalidParams.AddNested("AuthChallengeResponse", err.(request.ErrInvalidParams)) } } if s.ChatModeConfiguration != nil { if err := s.ChatModeConfiguration.Validate(); err != nil { invalidParams.AddNested("ChatModeConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ChatSyncInput) SetApplicationId(v string) *ChatSyncInput { s.ApplicationId = &v return s } // SetAttachments sets the Attachments field's value. func (s *ChatSyncInput) SetAttachments(v []*AttachmentInput_) *ChatSyncInput { s.Attachments = v return s } // SetAttributeFilter sets the AttributeFilter field's value. func (s *ChatSyncInput) SetAttributeFilter(v *AttributeFilter) *ChatSyncInput { s.AttributeFilter = v return s } // SetAuthChallengeResponse sets the AuthChallengeResponse field's value. func (s *ChatSyncInput) SetAuthChallengeResponse(v *AuthChallengeResponse) *ChatSyncInput { s.AuthChallengeResponse = v return s } // SetChatMode sets the ChatMode field's value. func (s *ChatSyncInput) SetChatMode(v string) *ChatSyncInput { s.ChatMode = &v return s } // SetChatModeConfiguration sets the ChatModeConfiguration field's value. func (s *ChatSyncInput) SetChatModeConfiguration(v *ChatModeConfiguration) *ChatSyncInput { s.ChatModeConfiguration = v return s } // SetClientToken sets the ClientToken field's value. func (s *ChatSyncInput) SetClientToken(v string) *ChatSyncInput { s.ClientToken = &v return s } // SetConversationId sets the ConversationId field's value. func (s *ChatSyncInput) SetConversationId(v string) *ChatSyncInput { s.ConversationId = &v return s } // SetParentMessageId sets the ParentMessageId field's value. func (s *ChatSyncInput) SetParentMessageId(v string) *ChatSyncInput { s.ParentMessageId = &v return s } // SetUserGroups sets the UserGroups field's value. func (s *ChatSyncInput) SetUserGroups(v []*string) *ChatSyncInput { s.UserGroups = v return s } // SetUserId sets the UserId field's value. func (s *ChatSyncInput) SetUserId(v string) *ChatSyncInput { s.UserId = &v return s } // SetUserMessage sets the UserMessage field's value. func (s *ChatSyncInput) SetUserMessage(v string) *ChatSyncInput { s.UserMessage = &v return s } type ChatSyncOutput struct { _ struct{} `type:"structure"` // A request from Amazon Q Business to the end user for information Amazon Q // Business needs to successfully complete a requested plugin action. ActionReview *ActionReview `locationName:"actionReview" type:"structure"` // An authentication verification event activated by an end user request to // use a custom plugin. AuthChallengeRequest *AuthChallengeRequest `locationName:"authChallengeRequest" type:"structure"` // The identifier of the Amazon Q Business conversation. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // A list of files which failed to upload during chat. FailedAttachments []*AttachmentOutput_ `locationName:"failedAttachments" type:"list"` // The source documents used to generate the conversation response. SourceAttributions []*SourceAttribution `locationName:"sourceAttributions" type:"list"` // An AI-generated message in a conversation. SystemMessage *string `locationName:"systemMessage" min:"1" type:"string"` // The identifier of an Amazon Q Business AI generated message within the conversation. SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` // The identifier of an Amazon Q Business end user text input message within // the conversation. UserMessageId *string `locationName:"userMessageId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatSyncOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ChatSyncOutput) GoString() string { return s.String() } // SetActionReview sets the ActionReview field's value. func (s *ChatSyncOutput) SetActionReview(v *ActionReview) *ChatSyncOutput { s.ActionReview = v return s } // SetAuthChallengeRequest sets the AuthChallengeRequest field's value. func (s *ChatSyncOutput) SetAuthChallengeRequest(v *AuthChallengeRequest) *ChatSyncOutput { s.AuthChallengeRequest = v return s } // SetConversationId sets the ConversationId field's value. func (s *ChatSyncOutput) SetConversationId(v string) *ChatSyncOutput { s.ConversationId = &v return s } // SetFailedAttachments sets the FailedAttachments field's value. func (s *ChatSyncOutput) SetFailedAttachments(v []*AttachmentOutput_) *ChatSyncOutput { s.FailedAttachments = v return s } // SetSourceAttributions sets the SourceAttributions field's value. func (s *ChatSyncOutput) SetSourceAttributions(v []*SourceAttribution) *ChatSyncOutput { s.SourceAttributions = v return s } // SetSystemMessage sets the SystemMessage field's value. func (s *ChatSyncOutput) SetSystemMessage(v string) *ChatSyncOutput { s.SystemMessage = &v return s } // SetSystemMessageId sets the SystemMessageId field's value. func (s *ChatSyncOutput) SetSystemMessageId(v string) *ChatSyncOutput { s.SystemMessageId = &v return s } // SetUserMessageId sets the UserMessageId field's value. func (s *ChatSyncOutput) SetUserMessageId(v string) *ChatSyncOutput { s.UserMessageId = &v return s } // A configuration event activated by an end user request to select a specific // chat mode. type ConfigurationEvent struct { _ struct{} `type:"structure"` // Enables filtering of responses based on document attributes or metadata fields. AttributeFilter *AttributeFilter `locationName:"attributeFilter" type:"structure"` // The chat modes available to an Amazon Q Business end user. // // * RETRIEVAL_MODE - The default chat mode for an Amazon Q Business application. // When this mode is enabled, Amazon Q Business generates responses only // from data sources connected to an Amazon Q Business application. // // * CREATOR_MODE - By selecting this mode, users can choose to generate // responses only from the LLM knowledge, without consulting connected data // sources, for a chat request. // // * PLUGIN_MODE - By selecting this mode, users can choose to use plugins // in chat. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html), // Plugins (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/plugins.html), // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). ChatMode *string `locationName:"chatMode" type:"string" enum:"ChatMode"` // Configuration information for Amazon Q Business conversation modes. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html) // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). ChatModeConfiguration *ChatModeConfiguration `locationName:"chatModeConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConfigurationEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConfigurationEvent) GoString() string { return s.String() } // SetAttributeFilter sets the AttributeFilter field's value. func (s *ConfigurationEvent) SetAttributeFilter(v *AttributeFilter) *ConfigurationEvent { s.AttributeFilter = v return s } // SetChatMode sets the ChatMode field's value. func (s *ConfigurationEvent) SetChatMode(v string) *ConfigurationEvent { s.ChatMode = &v return s } // SetChatModeConfiguration sets the ChatModeConfiguration field's value. func (s *ConfigurationEvent) SetChatModeConfiguration(v *ChatModeConfiguration) *ConfigurationEvent { s.ChatModeConfiguration = v return s } // The ConfigurationEvent is and event in the ChatInputStream group of events. func (s *ConfigurationEvent) eventChatInputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the ConfigurationEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *ConfigurationEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *ConfigurationEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // You are trying to perform an action that conflicts with the current status // of your resource. Fix any inconsistences with your resources and try again. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // The message describing a ConflictException. Message_ *string `locationName:"message" min:"1" type:"string"` // The identifier of the resource affected. // // ResourceId is a required field ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` // The type of the resource affected. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConflictException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConflictException) GoString() string { return s.String() } func newErrorConflictException(v protocol.ResponseMetadata) error { return &ConflictException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ConflictException) Code() string { return "ConflictException" } // Message returns the exception's message. func (s *ConflictException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ConflictException) OrigErr() error { return nil } func (s *ConflictException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ConflictException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } // A rule for configuring how Amazon Q Business responds when it encounters // a a blocked topic. You can configure a custom message to inform your end // users that they have asked about a restricted topic and suggest any next // steps they should take. type ContentBlockerRule struct { _ struct{} `type:"structure"` // The configured custom message displayed to an end user informing them that // they've used a blocked phrase during chat. SystemMessageOverride *string `locationName:"systemMessageOverride" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ContentBlockerRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ContentBlockerRule) GoString() string { return s.String() } // SetSystemMessageOverride sets the SystemMessageOverride field's value. func (s *ContentBlockerRule) SetSystemMessageOverride(v string) *ContentBlockerRule { s.SystemMessageOverride = &v return s } // Rules for retrieving content from data sources connected to a Amazon Q Business // application for a specific topic control configuration. type ContentRetrievalRule struct { _ struct{} `type:"structure"` // Specifies data sources in a Amazon Q Business application to use for content // generation. EligibleDataSources []*EligibleDataSource `locationName:"eligibleDataSources" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ContentRetrievalRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ContentRetrievalRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContentRetrievalRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContentRetrievalRule"} if s.EligibleDataSources != nil { for i, v := range s.EligibleDataSources { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EligibleDataSources", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEligibleDataSources sets the EligibleDataSources field's value. func (s *ContentRetrievalRule) SetEligibleDataSources(v []*EligibleDataSource) *ContentRetrievalRule { s.EligibleDataSources = v return s } // A conversation in an Amazon Q Business application. type Conversation struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business conversation. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // The start time of the conversation. StartTime *time.Time `locationName:"startTime" type:"timestamp"` // The title of the conversation. Title *string `locationName:"title" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Conversation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Conversation) GoString() string { return s.String() } // SetConversationId sets the ConversationId field's value. func (s *Conversation) SetConversationId(v string) *Conversation { s.ConversationId = &v return s } // SetStartTime sets the StartTime field's value. func (s *Conversation) SetStartTime(v time.Time) *Conversation { s.StartTime = &v return s } // SetTitle sets the Title field's value. func (s *Conversation) SetTitle(v string) *Conversation { s.Title = &v return s } type CreateApplicationInput struct { _ struct{} `type:"structure"` // An option to allow end users to upload files directly during chat. AttachmentsConfiguration *AttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` // A token that you provide to identify the request to create your Amazon Q // Business application. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // A description for the Amazon Q Business application. Description *string `locationName:"description" type:"string"` // A name for the Amazon Q Business application. // // DisplayName is a required field DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` // The identifier of the KMS key that is used to encrypt your data. Amazon Q // Business doesn't support asymmetric keys. EncryptionConfiguration *EncryptionConfiguration `locationName:"encryptionConfiguration" type:"structure"` // The Amazon Resource Name (ARN) of the IAM Identity Center instance you are // either creating for—or connecting to—your Amazon Q Business application. IdentityCenterInstanceArn *string `locationName:"identityCenterInstanceArn" min:"10" type:"string"` // Configuration information about chat response personalization. For more information, // see Personalizing chat responses (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html) PersonalizationConfiguration *PersonalizationConfiguration `locationName:"personalizationConfiguration" type:"structure"` // An option to allow end users to create and use Amazon Q Apps in the web experience. QAppsConfiguration *QAppsConfiguration `locationName:"qAppsConfiguration" type:"structure"` // The Amazon Resource Name (ARN) of an IAM role with permissions to access // your Amazon CloudWatch logs and metrics. RoleArn *string `locationName:"roleArn" type:"string"` // A list of key-value pairs that identify or categorize your Amazon Q Business // application. You can also use tags to help control access to the application. // Tag keys and values can consist of Unicode letters, digits, white space, // and any of the following symbols: _ . : / = + - @. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.DisplayName == nil { invalidParams.Add(request.NewErrParamRequired("DisplayName")) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.IdentityCenterInstanceArn != nil && len(*s.IdentityCenterInstanceArn) < 10 { invalidParams.Add(request.NewErrParamMinLen("IdentityCenterInstanceArn", 10)) } if s.AttachmentsConfiguration != nil { if err := s.AttachmentsConfiguration.Validate(); err != nil { invalidParams.AddNested("AttachmentsConfiguration", err.(request.ErrInvalidParams)) } } if s.EncryptionConfiguration != nil { if err := s.EncryptionConfiguration.Validate(); err != nil { invalidParams.AddNested("EncryptionConfiguration", err.(request.ErrInvalidParams)) } } if s.PersonalizationConfiguration != nil { if err := s.PersonalizationConfiguration.Validate(); err != nil { invalidParams.AddNested("PersonalizationConfiguration", err.(request.ErrInvalidParams)) } } if s.QAppsConfiguration != nil { if err := s.QAppsConfiguration.Validate(); err != nil { invalidParams.AddNested("QAppsConfiguration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. func (s *CreateApplicationInput) SetAttachmentsConfiguration(v *AttachmentsConfiguration) *CreateApplicationInput { s.AttachmentsConfiguration = v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput { s.ClientToken = &v return s } // SetDescription sets the Description field's value. func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *CreateApplicationInput) SetDisplayName(v string) *CreateApplicationInput { s.DisplayName = &v return s } // SetEncryptionConfiguration sets the EncryptionConfiguration field's value. func (s *CreateApplicationInput) SetEncryptionConfiguration(v *EncryptionConfiguration) *CreateApplicationInput { s.EncryptionConfiguration = v return s } // SetIdentityCenterInstanceArn sets the IdentityCenterInstanceArn field's value. func (s *CreateApplicationInput) SetIdentityCenterInstanceArn(v string) *CreateApplicationInput { s.IdentityCenterInstanceArn = &v return s } // SetPersonalizationConfiguration sets the PersonalizationConfiguration field's value. func (s *CreateApplicationInput) SetPersonalizationConfiguration(v *PersonalizationConfiguration) *CreateApplicationInput { s.PersonalizationConfiguration = v return s } // SetQAppsConfiguration sets the QAppsConfiguration field's value. func (s *CreateApplicationInput) SetQAppsConfiguration(v *QAppsConfiguration) *CreateApplicationInput { s.QAppsConfiguration = v return s } // SetRoleArn sets the RoleArn field's value. func (s *CreateApplicationInput) SetRoleArn(v string) *CreateApplicationInput { s.RoleArn = &v return s } // SetTags sets the Tags field's value. func (s *CreateApplicationInput) SetTags(v []*Tag) *CreateApplicationInput { s.Tags = v return s } type CreateApplicationOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Amazon Q Business application. ApplicationArn *string `locationName:"applicationArn" type:"string"` // The identifier of the Amazon Q Business application. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateApplicationOutput) GoString() string { return s.String() } // SetApplicationArn sets the ApplicationArn field's value. func (s *CreateApplicationOutput) SetApplicationArn(v string) *CreateApplicationOutput { s.ApplicationArn = &v return s } // SetApplicationId sets the ApplicationId field's value. func (s *CreateApplicationOutput) SetApplicationId(v string) *CreateApplicationOutput { s.ApplicationId = &v return s } type CreateIndexInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application using the index. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The capacity units you want to provision for your index. You can add and // remove capacity to fit your usage needs. CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` // A token that you provide to identify the request to create an index. Multiple // calls to the CreateIndex API with the same client token will create only // one index. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // A description for the Amazon Q Business index. Description *string `locationName:"description" type:"string"` // A name for the Amazon Q Business index. // // DisplayName is a required field DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` // A list of key-value pairs that identify or categorize the index. You can // also use tags to help control access to the index. Tag keys and values can // consist of Unicode letters, digits, white space, and any of the following // symbols: _ . : / = + - @. Tags []*Tag `locationName:"tags" type:"list"` // The index type that's suitable for your needs. For more information on what's // included in each type of index, see Amazon Q Business tiers (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/tiers.html#index-tiers). Type *string `locationName:"type" type:"string" enum:"IndexType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateIndexInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateIndexInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateIndexInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateIndexInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.DisplayName == nil { invalidParams.Add(request.NewErrParamRequired("DisplayName")) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.CapacityConfiguration != nil { if err := s.CapacityConfiguration.Validate(); err != nil { invalidParams.AddNested("CapacityConfiguration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *CreateIndexInput) SetApplicationId(v string) *CreateIndexInput { s.ApplicationId = &v return s } // SetCapacityConfiguration sets the CapacityConfiguration field's value. func (s *CreateIndexInput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *CreateIndexInput { s.CapacityConfiguration = v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateIndexInput) SetClientToken(v string) *CreateIndexInput { s.ClientToken = &v return s } // SetDescription sets the Description field's value. func (s *CreateIndexInput) SetDescription(v string) *CreateIndexInput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *CreateIndexInput) SetDisplayName(v string) *CreateIndexInput { s.DisplayName = &v return s } // SetTags sets the Tags field's value. func (s *CreateIndexInput) SetTags(v []*Tag) *CreateIndexInput { s.Tags = v return s } // SetType sets the Type field's value. func (s *CreateIndexInput) SetType(v string) *CreateIndexInput { s.Type = &v return s } type CreateIndexOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of an Amazon Q Business index. IndexArn *string `locationName:"indexArn" type:"string"` // The identifier for the Amazon Q Business index. IndexId *string `locationName:"indexId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateIndexOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateIndexOutput) GoString() string { return s.String() } // SetIndexArn sets the IndexArn field's value. func (s *CreateIndexOutput) SetIndexArn(v string) *CreateIndexOutput { s.IndexArn = &v return s } // SetIndexId sets the IndexId field's value. func (s *CreateIndexOutput) SetIndexId(v string) *CreateIndexOutput { s.IndexId = &v return s } type CreatePluginInput struct { _ struct{} `type:"structure"` // The identifier of the application that will contain the plugin. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // Authentication configuration information for an Amazon Q Business plugin. // // AuthConfiguration is a required field AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure" required:"true"` // A token that you provide to identify the request to create your Amazon Q // Business plugin. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // Contains configuration for a custom plugin. CustomPluginConfiguration *CustomPluginConfiguration `locationName:"customPluginConfiguration" type:"structure"` // A the name for your plugin. // // DisplayName is a required field DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` // The source URL used for plugin configuration. ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` // A list of key-value pairs that identify or categorize the data source connector. // You can also use tags to help control access to the data source connector. // Tag keys and values can consist of Unicode letters, digits, white space, // and any of the following symbols: _ . : / = + - @. Tags []*Tag `locationName:"tags" type:"list"` // The type of plugin you want to create. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"PluginType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatePluginInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatePluginInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePluginInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePluginInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.AuthConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("AuthConfiguration")) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.DisplayName == nil { invalidParams.Add(request.NewErrParamRequired("DisplayName")) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.ServerUrl != nil && len(*s.ServerUrl) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerUrl", 1)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.AuthConfiguration != nil { if err := s.AuthConfiguration.Validate(); err != nil { invalidParams.AddNested("AuthConfiguration", err.(request.ErrInvalidParams)) } } if s.CustomPluginConfiguration != nil { if err := s.CustomPluginConfiguration.Validate(); err != nil { invalidParams.AddNested("CustomPluginConfiguration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *CreatePluginInput) SetApplicationId(v string) *CreatePluginInput { s.ApplicationId = &v return s } // SetAuthConfiguration sets the AuthConfiguration field's value. func (s *CreatePluginInput) SetAuthConfiguration(v *PluginAuthConfiguration) *CreatePluginInput { s.AuthConfiguration = v return s } // SetClientToken sets the ClientToken field's value. func (s *CreatePluginInput) SetClientToken(v string) *CreatePluginInput { s.ClientToken = &v return s } // SetCustomPluginConfiguration sets the CustomPluginConfiguration field's value. func (s *CreatePluginInput) SetCustomPluginConfiguration(v *CustomPluginConfiguration) *CreatePluginInput { s.CustomPluginConfiguration = v return s } // SetDisplayName sets the DisplayName field's value. func (s *CreatePluginInput) SetDisplayName(v string) *CreatePluginInput { s.DisplayName = &v return s } // SetServerUrl sets the ServerUrl field's value. func (s *CreatePluginInput) SetServerUrl(v string) *CreatePluginInput { s.ServerUrl = &v return s } // SetTags sets the Tags field's value. func (s *CreatePluginInput) SetTags(v []*Tag) *CreatePluginInput { s.Tags = v return s } // SetType sets the Type field's value. func (s *CreatePluginInput) SetType(v string) *CreatePluginInput { s.Type = &v return s } type CreatePluginOutput struct { _ struct{} `type:"structure"` // The current status of a plugin. A plugin is modified asynchronously. BuildStatus *string `locationName:"buildStatus" type:"string" enum:"PluginBuildStatus"` // The Amazon Resource Name (ARN) of a plugin. PluginArn *string `locationName:"pluginArn" type:"string"` // The identifier of the plugin created. PluginId *string `locationName:"pluginId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatePluginOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatePluginOutput) GoString() string { return s.String() } // SetBuildStatus sets the BuildStatus field's value. func (s *CreatePluginOutput) SetBuildStatus(v string) *CreatePluginOutput { s.BuildStatus = &v return s } // SetPluginArn sets the PluginArn field's value. func (s *CreatePluginOutput) SetPluginArn(v string) *CreatePluginOutput { s.PluginArn = &v return s } // SetPluginId sets the PluginId field's value. func (s *CreatePluginOutput) SetPluginId(v string) *CreatePluginOutput { s.PluginId = &v return s } type CreateRetrieverInput struct { _ struct{} `type:"structure"` // The identifier of your Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // A token that you provide to identify the request to create your Amazon Q // Business application retriever. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // Provides information on how the retriever used for your Amazon Q Business // application is configured. // // Configuration is a required field Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure" required:"true"` // The name of your retriever. // // DisplayName is a required field DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` // The ARN of an IAM role used by Amazon Q Business to access the basic authentication // credentials stored in a Secrets Manager secret. RoleArn *string `locationName:"roleArn" type:"string"` // A list of key-value pairs that identify or categorize the retriever. You // can also use tags to help control access to the retriever. Tag keys and values // can consist of Unicode letters, digits, white space, and any of the following // symbols: _ . : / = + - @. Tags []*Tag `locationName:"tags" type:"list"` // The type of retriever you are using. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"RetrieverType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateRetrieverInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateRetrieverInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRetrieverInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRetrieverInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.Configuration == nil { invalidParams.Add(request.NewErrParamRequired("Configuration")) } if s.DisplayName == nil { invalidParams.Add(request.NewErrParamRequired("DisplayName")) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.Configuration != nil { if err := s.Configuration.Validate(); err != nil { invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *CreateRetrieverInput) SetApplicationId(v string) *CreateRetrieverInput { s.ApplicationId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateRetrieverInput) SetClientToken(v string) *CreateRetrieverInput { s.ClientToken = &v return s } // SetConfiguration sets the Configuration field's value. func (s *CreateRetrieverInput) SetConfiguration(v *RetrieverConfiguration) *CreateRetrieverInput { s.Configuration = v return s } // SetDisplayName sets the DisplayName field's value. func (s *CreateRetrieverInput) SetDisplayName(v string) *CreateRetrieverInput { s.DisplayName = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *CreateRetrieverInput) SetRoleArn(v string) *CreateRetrieverInput { s.RoleArn = &v return s } // SetTags sets the Tags field's value. func (s *CreateRetrieverInput) SetTags(v []*Tag) *CreateRetrieverInput { s.Tags = v return s } // SetType sets the Type field's value. func (s *CreateRetrieverInput) SetType(v string) *CreateRetrieverInput { s.Type = &v return s } type CreateRetrieverOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of an IAM role associated with a retriever. RetrieverArn *string `locationName:"retrieverArn" type:"string"` // The identifier of the retriever you are using. RetrieverId *string `locationName:"retrieverId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateRetrieverOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateRetrieverOutput) GoString() string { return s.String() } // SetRetrieverArn sets the RetrieverArn field's value. func (s *CreateRetrieverOutput) SetRetrieverArn(v string) *CreateRetrieverOutput { s.RetrieverArn = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *CreateRetrieverOutput) SetRetrieverId(v string) *CreateRetrieverOutput { s.RetrieverId = &v return s } type CreateUserInput struct { _ struct{} `type:"structure"` // The identifier of the application for which the user mapping will be created. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // A token that you provide to identify the request to create your Amazon Q // Business user mapping. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The list of user aliases in the mapping. UserAliases []*UserAlias `locationName:"userAliases" type:"list"` // The user emails attached to a user mapping. // // UserId is a required field UserId *string `locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if s.UserAliases != nil { for i, v := range s.UserAliases { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliases", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *CreateUserInput) SetApplicationId(v string) *CreateUserInput { s.ApplicationId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateUserInput) SetClientToken(v string) *CreateUserInput { s.ClientToken = &v return s } // SetUserAliases sets the UserAliases field's value. func (s *CreateUserInput) SetUserAliases(v []*UserAlias) *CreateUserInput { s.UserAliases = v return s } // SetUserId sets the UserId field's value. func (s *CreateUserInput) SetUserId(v string) *CreateUserInput { s.UserId = &v return s } type CreateUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateUserOutput) GoString() string { return s.String() } type CreateWebExperienceInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business web experience. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // A token you provide to identify a request to create an Amazon Q Business // web experience. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the service role attached to your web experience. RoleArn *string `locationName:"roleArn" type:"string"` // Determines whether sample prompts are enabled in the web experience for an // end user. SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` // A subtitle to personalize your Amazon Q Business web experience. Subtitle *string `locationName:"subtitle" type:"string"` // A list of key-value pairs that identify or categorize your Amazon Q Business // web experience. You can also use tags to help control access to the web experience. // Tag keys and values can consist of Unicode letters, digits, white space, // and any of the following symbols: _ . : / = + - @. Tags []*Tag `locationName:"tags" type:"list"` // The title for your Amazon Q Business web experience. Title *string `locationName:"title" type:"string"` // The customized welcome message for end users of an Amazon Q Business web // experience. WelcomeMessage *string `locationName:"welcomeMessage" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateWebExperienceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateWebExperienceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWebExperienceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWebExperienceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *CreateWebExperienceInput) SetApplicationId(v string) *CreateWebExperienceInput { s.ApplicationId = &v return s } // SetClientToken sets the ClientToken field's value. func (s *CreateWebExperienceInput) SetClientToken(v string) *CreateWebExperienceInput { s.ClientToken = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *CreateWebExperienceInput) SetRoleArn(v string) *CreateWebExperienceInput { s.RoleArn = &v return s } // SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. func (s *CreateWebExperienceInput) SetSamplePromptsControlMode(v string) *CreateWebExperienceInput { s.SamplePromptsControlMode = &v return s } // SetSubtitle sets the Subtitle field's value. func (s *CreateWebExperienceInput) SetSubtitle(v string) *CreateWebExperienceInput { s.Subtitle = &v return s } // SetTags sets the Tags field's value. func (s *CreateWebExperienceInput) SetTags(v []*Tag) *CreateWebExperienceInput { s.Tags = v return s } // SetTitle sets the Title field's value. func (s *CreateWebExperienceInput) SetTitle(v string) *CreateWebExperienceInput { s.Title = &v return s } // SetWelcomeMessage sets the WelcomeMessage field's value. func (s *CreateWebExperienceInput) SetWelcomeMessage(v string) *CreateWebExperienceInput { s.WelcomeMessage = &v return s } type CreateWebExperienceOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of an Amazon Q Business web experience. WebExperienceArn *string `locationName:"webExperienceArn" type:"string"` // The identifier of the Amazon Q Business web experience. WebExperienceId *string `locationName:"webExperienceId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateWebExperienceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateWebExperienceOutput) GoString() string { return s.String() } // SetWebExperienceArn sets the WebExperienceArn field's value. func (s *CreateWebExperienceOutput) SetWebExperienceArn(v string) *CreateWebExperienceOutput { s.WebExperienceArn = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *CreateWebExperienceOutput) SetWebExperienceId(v string) *CreateWebExperienceOutput { s.WebExperienceId = &v return s } // Configuration information required to invoke chat in CREATOR_MODE. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html) // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). type CreatorModeConfiguration struct { _ struct{} `type:"structure"` // Status information about whether CREATOR_MODE has been enabled or disabled. // The default status is DISABLED. // // CreatorModeControl is a required field CreatorModeControl *string `locationName:"creatorModeControl" type:"string" required:"true" enum:"CreatorModeControl"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatorModeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreatorModeConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatorModeConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatorModeConfiguration"} if s.CreatorModeControl == nil { invalidParams.Add(request.NewErrParamRequired("CreatorModeControl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCreatorModeControl sets the CreatorModeControl field's value. func (s *CreatorModeConfiguration) SetCreatorModeControl(v string) *CreatorModeConfiguration { s.CreatorModeControl = &v return s } // Configuration information required to create a custom plugin. type CustomPluginConfiguration struct { _ struct{} `type:"structure"` // Contains either details about the S3 object containing the OpenAPI schema // for the action group or the JSON or YAML-formatted payload defining the schema. // // ApiSchema is a required field ApiSchema *APISchema `locationName:"apiSchema" type:"structure" required:"true"` // The type of OpenAPI schema to use. // // ApiSchemaType is a required field ApiSchemaType *string `locationName:"apiSchemaType" type:"string" required:"true" enum:"APISchemaType"` // A description for your custom plugin configuration. // // Description is a required field Description *string `locationName:"description" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CustomPluginConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CustomPluginConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CustomPluginConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomPluginConfiguration"} if s.ApiSchema == nil { invalidParams.Add(request.NewErrParamRequired("ApiSchema")) } if s.ApiSchemaType == nil { invalidParams.Add(request.NewErrParamRequired("ApiSchemaType")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.ApiSchema != nil { if err := s.ApiSchema.Validate(); err != nil { invalidParams.AddNested("ApiSchema", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApiSchema sets the ApiSchema field's value. func (s *CustomPluginConfiguration) SetApiSchema(v *APISchema) *CustomPluginConfiguration { s.ApiSchema = v return s } // SetApiSchemaType sets the ApiSchemaType field's value. func (s *CustomPluginConfiguration) SetApiSchemaType(v string) *CustomPluginConfiguration { s.ApiSchemaType = &v return s } // SetDescription sets the Description field's value. func (s *CustomPluginConfiguration) SetDescription(v string) *CustomPluginConfiguration { s.Description = &v return s } // A data source in an Amazon Q Business application. type DataSource struct { _ struct{} `type:"structure"` // The Unix timestamp when the Amazon Q Business data source was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The identifier of the Amazon Q Business data source. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // The name of the Amazon Q Business data source. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The status of the Amazon Q Business data source. Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` // The type of the Amazon Q Business data source. Type *string `locationName:"type" min:"1" type:"string"` // The Unix timestamp when the Amazon Q Business data source was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSource) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *DataSource) SetCreatedAt(v time.Time) *DataSource { s.CreatedAt = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *DataSource) SetDataSourceId(v string) *DataSource { s.DataSourceId = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *DataSource) SetDisplayName(v string) *DataSource { s.DisplayName = &v return s } // SetStatus sets the Status field's value. func (s *DataSource) SetStatus(v string) *DataSource { s.Status = &v return s } // SetType sets the Type field's value. func (s *DataSource) SetType(v string) *DataSource { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *DataSource) SetUpdatedAt(v time.Time) *DataSource { s.UpdatedAt = &v return s } // Provides information about an Amazon Q Business data source connector synchronization // job. type DataSourceSyncJob struct { _ struct{} `type:"structure"` // If the reason that the synchronization failed is due to an error with the // underlying data source, this field contains a code that identifies the error. DataSourceErrorCode *string `locationName:"dataSourceErrorCode" min:"1" type:"string"` // The Unix timestamp when the synchronization job completed. EndTime *time.Time `locationName:"endTime" type:"timestamp"` // If the Status field is set to FAILED, the ErrorCode field indicates the reason // the synchronization failed. Error *ErrorDetail `locationName:"error" type:"structure"` // The identifier of a data source synchronization job. ExecutionId *string `locationName:"executionId" min:"36" type:"string"` // Maps a batch delete document request to a specific data source sync job. // This is optional and should only be supplied when documents are deleted by // a data source connector. Metrics *DataSourceSyncJobMetrics `locationName:"metrics" type:"structure"` // The Unix time stamp when the data source synchronization job started. StartTime *time.Time `locationName:"startTime" type:"timestamp"` // The status of the synchronization job. When the Status field is set to SUCCEEDED, // the synchronization job is done. If the status code is FAILED, the ErrorCode // and ErrorMessage fields give you the reason for the failure. Status *string `locationName:"status" type:"string" enum:"DataSourceSyncJobStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceSyncJob) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceSyncJob) GoString() string { return s.String() } // SetDataSourceErrorCode sets the DataSourceErrorCode field's value. func (s *DataSourceSyncJob) SetDataSourceErrorCode(v string) *DataSourceSyncJob { s.DataSourceErrorCode = &v return s } // SetEndTime sets the EndTime field's value. func (s *DataSourceSyncJob) SetEndTime(v time.Time) *DataSourceSyncJob { s.EndTime = &v return s } // SetError sets the Error field's value. func (s *DataSourceSyncJob) SetError(v *ErrorDetail) *DataSourceSyncJob { s.Error = v return s } // SetExecutionId sets the ExecutionId field's value. func (s *DataSourceSyncJob) SetExecutionId(v string) *DataSourceSyncJob { s.ExecutionId = &v return s } // SetMetrics sets the Metrics field's value. func (s *DataSourceSyncJob) SetMetrics(v *DataSourceSyncJobMetrics) *DataSourceSyncJob { s.Metrics = v return s } // SetStartTime sets the StartTime field's value. func (s *DataSourceSyncJob) SetStartTime(v time.Time) *DataSourceSyncJob { s.StartTime = &v return s } // SetStatus sets the Status field's value. func (s *DataSourceSyncJob) SetStatus(v string) *DataSourceSyncJob { s.Status = &v return s } // Maps a batch delete document request to a specific Amazon Q Business data // source connector sync job. type DataSourceSyncJobMetrics struct { _ struct{} `type:"structure"` // The current count of documents added from the data source during the data // source sync. DocumentsAdded *string `locationName:"documentsAdded" type:"string"` // The current count of documents deleted from the data source during the data // source sync. DocumentsDeleted *string `locationName:"documentsDeleted" type:"string"` // The current count of documents that failed to sync from the data source during // the data source sync. DocumentsFailed *string `locationName:"documentsFailed" type:"string"` // The current count of documents modified in the data source during the data // source sync. DocumentsModified *string `locationName:"documentsModified" type:"string"` // The current count of documents crawled by the ongoing sync job in the data // source. DocumentsScanned *string `locationName:"documentsScanned" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceSyncJobMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceSyncJobMetrics) GoString() string { return s.String() } // SetDocumentsAdded sets the DocumentsAdded field's value. func (s *DataSourceSyncJobMetrics) SetDocumentsAdded(v string) *DataSourceSyncJobMetrics { s.DocumentsAdded = &v return s } // SetDocumentsDeleted sets the DocumentsDeleted field's value. func (s *DataSourceSyncJobMetrics) SetDocumentsDeleted(v string) *DataSourceSyncJobMetrics { s.DocumentsDeleted = &v return s } // SetDocumentsFailed sets the DocumentsFailed field's value. func (s *DataSourceSyncJobMetrics) SetDocumentsFailed(v string) *DataSourceSyncJobMetrics { s.DocumentsFailed = &v return s } // SetDocumentsModified sets the DocumentsModified field's value. func (s *DataSourceSyncJobMetrics) SetDocumentsModified(v string) *DataSourceSyncJobMetrics { s.DocumentsModified = &v return s } // SetDocumentsScanned sets the DocumentsScanned field's value. func (s *DataSourceSyncJobMetrics) SetDocumentsScanned(v string) *DataSourceSyncJobMetrics { s.DocumentsScanned = &v return s } // Provides configuration information needed to connect to an Amazon VPC (Virtual // Private Cloud). type DataSourceVpcConfiguration struct { _ struct{} `type:"structure"` // A list of identifiers of security groups within your Amazon VPC. The security // groups should enable Amazon Q Business to connect to the data source. // // SecurityGroupIds is a required field SecurityGroupIds []*string `locationName:"securityGroupIds" min:"1" type:"list" required:"true"` // A list of identifiers for subnets within your Amazon VPC. The subnets should // be able to connect to each other in the VPC, and they should have outgoing // access to the Internet through a NAT device. // // SubnetIds is a required field SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceVpcConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DataSourceVpcConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DataSourceVpcConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DataSourceVpcConfiguration"} if s.SecurityGroupIds == nil { invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds")) } if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1)) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSecurityGroupIds sets the SecurityGroupIds field's value. func (s *DataSourceVpcConfiguration) SetSecurityGroupIds(v []*string) *DataSourceVpcConfiguration { s.SecurityGroupIds = v return s } // SetSubnetIds sets the SubnetIds field's value. func (s *DataSourceVpcConfiguration) SetSubnetIds(v []*string) *DataSourceVpcConfiguration { s.SubnetIds = v return s } // Provides information on boosting DATE type document attributes. // // For more information on how boosting document attributes work in Amazon Q // Business, see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). type DateAttributeBoostingConfiguration struct { _ struct{} `type:"structure"` // Specifies the duration, in seconds, of a boost applies to a DATE type document // attribute. BoostingDurationInSeconds *int64 `locationName:"boostingDurationInSeconds" type:"long"` // Specifies how much a document attribute is boosted. // // BoostingLevel is a required field BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DateAttributeBoostingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DateAttributeBoostingConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DateAttributeBoostingConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DateAttributeBoostingConfiguration"} if s.BoostingLevel == nil { invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBoostingDurationInSeconds sets the BoostingDurationInSeconds field's value. func (s *DateAttributeBoostingConfiguration) SetBoostingDurationInSeconds(v int64) *DateAttributeBoostingConfiguration { s.BoostingDurationInSeconds = &v return s } // SetBoostingLevel sets the BoostingLevel field's value. func (s *DateAttributeBoostingConfiguration) SetBoostingLevel(v string) *DateAttributeBoostingConfiguration { s.BoostingLevel = &v return s } type DeleteApplicationInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteApplicationInput) SetApplicationId(v string) *DeleteApplicationInput { s.ApplicationId = &v return s } type DeleteApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteApplicationOutput) GoString() string { return s.String() } type DeleteChatControlsConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application the chat controls have been configured // for. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteChatControlsConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteChatControlsConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteChatControlsConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteChatControlsConfigurationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteChatControlsConfigurationInput) SetApplicationId(v string) *DeleteChatControlsConfigurationInput { s.ApplicationId = &v return s } type DeleteChatControlsConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteChatControlsConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteChatControlsConfigurationOutput) GoString() string { return s.String() } type DeleteConversationInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application associated with the conversation. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business web experience conversation being // deleted. // // ConversationId is a required field ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` // The identifier of the user who is deleting the conversation. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteConversationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteConversationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConversationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConversationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ConversationId == nil { invalidParams.Add(request.NewErrParamRequired("ConversationId")) } if s.ConversationId != nil && len(*s.ConversationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteConversationInput) SetApplicationId(v string) *DeleteConversationInput { s.ApplicationId = &v return s } // SetConversationId sets the ConversationId field's value. func (s *DeleteConversationInput) SetConversationId(v string) *DeleteConversationInput { s.ConversationId = &v return s } // SetUserId sets the UserId field's value. func (s *DeleteConversationInput) SetUserId(v string) *DeleteConversationInput { s.UserId = &v return s } type DeleteConversationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteConversationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteConversationOutput) GoString() string { return s.String() } type DeleteDataSourceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application used with the data source // connector. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector that you want to delete. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The identifier of the index used with the data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteDataSourceInput) SetApplicationId(v string) *DeleteDataSourceInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *DeleteDataSourceInput) SetDataSourceId(v string) *DeleteDataSourceInput { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *DeleteDataSourceInput) SetIndexId(v string) *DeleteDataSourceInput { s.IndexId = &v return s } type DeleteDataSourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDataSourceOutput) GoString() string { return s.String() } // A document deleted from an Amazon Q Business data source connector. type DeleteDocument struct { _ struct{} `type:"structure"` // The identifier of the deleted document. // // DocumentId is a required field DocumentId *string `locationName:"documentId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDocument) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteDocument) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDocument) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDocument"} if s.DocumentId == nil { invalidParams.Add(request.NewErrParamRequired("DocumentId")) } if s.DocumentId != nil && len(*s.DocumentId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DocumentId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDocumentId sets the DocumentId field's value. func (s *DeleteDocument) SetDocumentId(v string) *DeleteDocument { s.DocumentId = &v return s } type DeleteGroupInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application in which the group mapping belongs. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source linked to the group // // A group can be tied to multiple data sources. You can delete a group from // accessing documents in a certain data source. For example, the groups "Research", // "Engineering", and "Sales and Marketing" are all tied to the company's documents // stored in the data sources Confluence and Salesforce. You want to delete // "Research" and "Engineering" groups from Salesforce, so that these groups // cannot access customer-related documents stored in Salesforce. Only "Sales // and Marketing" should access documents in the Salesforce data source. DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` // The name of the group you want to delete. // // GroupName is a required field GroupName *string `location:"uri" locationName:"groupName" min:"1" type:"string" required:"true"` // The identifier of the index you want to delete the group from. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteGroupInput) SetApplicationId(v string) *DeleteGroupInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *DeleteGroupInput) SetDataSourceId(v string) *DeleteGroupInput { s.DataSourceId = &v return s } // SetGroupName sets the GroupName field's value. func (s *DeleteGroupInput) SetGroupName(v string) *DeleteGroupInput { s.GroupName = &v return s } // SetIndexId sets the IndexId field's value. func (s *DeleteGroupInput) SetIndexId(v string) *DeleteGroupInput { s.IndexId = &v return s } type DeleteGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteGroupOutput) GoString() string { return s.String() } type DeleteIndexInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application the Amazon Q Business // index is linked to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business index. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteIndexInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteIndexInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIndexInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIndexInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteIndexInput) SetApplicationId(v string) *DeleteIndexInput { s.ApplicationId = &v return s } // SetIndexId sets the IndexId field's value. func (s *DeleteIndexInput) SetIndexId(v string) *DeleteIndexInput { s.IndexId = &v return s } type DeleteIndexOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteIndexOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteIndexOutput) GoString() string { return s.String() } type DeletePluginInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier the application attached to the Amazon Q Business plugin. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the plugin being deleted. // // PluginId is a required field PluginId *string `location:"uri" locationName:"pluginId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePluginInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePluginInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePluginInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePluginInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.PluginId == nil { invalidParams.Add(request.NewErrParamRequired("PluginId")) } if s.PluginId != nil && len(*s.PluginId) < 36 { invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeletePluginInput) SetApplicationId(v string) *DeletePluginInput { s.ApplicationId = &v return s } // SetPluginId sets the PluginId field's value. func (s *DeletePluginInput) SetPluginId(v string) *DeletePluginInput { s.PluginId = &v return s } type DeletePluginOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePluginOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeletePluginOutput) GoString() string { return s.String() } type DeleteRetrieverInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application using the retriever. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the retriever being deleted. // // RetrieverId is a required field RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteRetrieverInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteRetrieverInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRetrieverInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRetrieverInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.RetrieverId == nil { invalidParams.Add(request.NewErrParamRequired("RetrieverId")) } if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteRetrieverInput) SetApplicationId(v string) *DeleteRetrieverInput { s.ApplicationId = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *DeleteRetrieverInput) SetRetrieverId(v string) *DeleteRetrieverInput { s.RetrieverId = &v return s } type DeleteRetrieverOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteRetrieverOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteRetrieverOutput) GoString() string { return s.String() } type DeleteUserInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application from which the user is being deleted. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The user email being deleted. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteUserInput) SetApplicationId(v string) *DeleteUserInput { s.ApplicationId = &v return s } // SetUserId sets the UserId field's value. func (s *DeleteUserInput) SetUserId(v string) *DeleteUserInput { s.UserId = &v return s } type DeleteUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteUserOutput) GoString() string { return s.String() } type DeleteWebExperienceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application linked to the Amazon // Q Business web experience. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business web experience being deleted. // // WebExperienceId is a required field WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteWebExperienceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteWebExperienceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteWebExperienceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteWebExperienceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.WebExperienceId == nil { invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) } if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *DeleteWebExperienceInput) SetApplicationId(v string) *DeleteWebExperienceInput { s.ApplicationId = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *DeleteWebExperienceInput) SetWebExperienceId(v string) *DeleteWebExperienceInput { s.WebExperienceId = &v return s } type DeleteWebExperienceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteWebExperienceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteWebExperienceOutput) GoString() string { return s.String() } // A document in an Amazon Q Business application. type Document struct { _ struct{} `type:"structure"` // Configuration information for access permission to a document. AccessConfiguration *AccessConfiguration `locationName:"accessConfiguration" type:"structure"` // Custom attributes to apply to the document for refining Amazon Q Business // web experience responses. Attributes []*DocumentAttribute `locationName:"attributes" min:"1" type:"list"` // The contents of the document. Content *DocumentContent `locationName:"content" type:"structure"` // The file type of the document in the Blob field. // // If you want to index snippets or subsets of HTML documents instead of the // entirety of the HTML documents, you add the HTML start and closing tags (<HTML>content</HTML>) // around the content. ContentType *string `locationName:"contentType" type:"string" enum:"ContentType"` // The configuration information for altering document metadata and content // during the document ingestion process. DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` // The identifier of the document. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The title of the document. Title *string `locationName:"title" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Document) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Document) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Document) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Document"} if s.Attributes != nil && len(s.Attributes) < 1 { invalidParams.Add(request.NewErrParamMinLen("Attributes", 1)) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.Title != nil && len(*s.Title) < 1 { invalidParams.Add(request.NewErrParamMinLen("Title", 1)) } if s.AccessConfiguration != nil { if err := s.AccessConfiguration.Validate(); err != nil { invalidParams.AddNested("AccessConfiguration", err.(request.ErrInvalidParams)) } } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if s.Content != nil { if err := s.Content.Validate(); err != nil { invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) } } if s.DocumentEnrichmentConfiguration != nil { if err := s.DocumentEnrichmentConfiguration.Validate(); err != nil { invalidParams.AddNested("DocumentEnrichmentConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccessConfiguration sets the AccessConfiguration field's value. func (s *Document) SetAccessConfiguration(v *AccessConfiguration) *Document { s.AccessConfiguration = v return s } // SetAttributes sets the Attributes field's value. func (s *Document) SetAttributes(v []*DocumentAttribute) *Document { s.Attributes = v return s } // SetContent sets the Content field's value. func (s *Document) SetContent(v *DocumentContent) *Document { s.Content = v return s } // SetContentType sets the ContentType field's value. func (s *Document) SetContentType(v string) *Document { s.ContentType = &v return s } // SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. func (s *Document) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *Document { s.DocumentEnrichmentConfiguration = v return s } // SetId sets the Id field's value. func (s *Document) SetId(v string) *Document { s.Id = &v return s } // SetTitle sets the Title field's value. func (s *Document) SetTitle(v string) *Document { s.Title = &v return s } // A document attribute or metadata field. type DocumentAttribute struct { _ struct{} `type:"structure"` // The identifier for the attribute. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The value of the attribute. // // Value is a required field Value *DocumentAttributeValue `locationName:"value" type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentAttribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentAttribute"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DocumentAttribute) SetName(v string) *DocumentAttribute { s.Name = &v return s } // SetValue sets the Value field's value. func (s *DocumentAttribute) SetValue(v *DocumentAttributeValue) *DocumentAttribute { s.Value = v return s } // Provides information on boosting supported Amazon Q Business document attribute // types. When an end user chat query matches document attributes that have // been boosted, Amazon Q Business prioritizes generating responses from content // that matches the boosted document attributes. // // For STRING and STRING_LIST type document attributes to be used for boosting // on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) // object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) // API. If you haven't enabled searching on these attributes, you can't boost // attributes of these data types on either the console or the API. // // For more information on how boosting document attributes work in Amazon Q // Business, see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). type DocumentAttributeBoostingConfiguration struct { _ struct{} `type:"structure"` // Provides information on boosting DATE type document attributes. DateConfiguration *DateAttributeBoostingConfiguration `locationName:"dateConfiguration" type:"structure"` // Provides information on boosting NUMBER type document attributes. NumberConfiguration *NumberAttributeBoostingConfiguration `locationName:"numberConfiguration" type:"structure"` // Provides information on boosting STRING type document attributes. StringConfiguration *StringAttributeBoostingConfiguration `locationName:"stringConfiguration" type:"structure"` // Provides information on boosting STRING_LIST type document attributes. StringListConfiguration *StringListAttributeBoostingConfiguration `locationName:"stringListConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeBoostingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeBoostingConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentAttributeBoostingConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeBoostingConfiguration"} if s.DateConfiguration != nil { if err := s.DateConfiguration.Validate(); err != nil { invalidParams.AddNested("DateConfiguration", err.(request.ErrInvalidParams)) } } if s.NumberConfiguration != nil { if err := s.NumberConfiguration.Validate(); err != nil { invalidParams.AddNested("NumberConfiguration", err.(request.ErrInvalidParams)) } } if s.StringConfiguration != nil { if err := s.StringConfiguration.Validate(); err != nil { invalidParams.AddNested("StringConfiguration", err.(request.ErrInvalidParams)) } } if s.StringListConfiguration != nil { if err := s.StringListConfiguration.Validate(); err != nil { invalidParams.AddNested("StringListConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDateConfiguration sets the DateConfiguration field's value. func (s *DocumentAttributeBoostingConfiguration) SetDateConfiguration(v *DateAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { s.DateConfiguration = v return s } // SetNumberConfiguration sets the NumberConfiguration field's value. func (s *DocumentAttributeBoostingConfiguration) SetNumberConfiguration(v *NumberAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { s.NumberConfiguration = v return s } // SetStringConfiguration sets the StringConfiguration field's value. func (s *DocumentAttributeBoostingConfiguration) SetStringConfiguration(v *StringAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { s.StringConfiguration = v return s } // SetStringListConfiguration sets the StringListConfiguration field's value. func (s *DocumentAttributeBoostingConfiguration) SetStringListConfiguration(v *StringListAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { s.StringListConfiguration = v return s } // The condition used for the target document attribute or metadata field when // ingesting documents into Amazon Q Business. You use this with DocumentAttributeTarget // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html) // to apply the condition. // // For example, you can create the 'Department' target field and have it prefill // department names associated with the documents based on information in the // 'Source_URI' field. Set the condition that if the 'Source_URI' field contains // 'financial' in its URI value, then prefill the target field 'Department' // with the target value 'Finance' for the document. // // Amazon Q Business can't create a target field if it has not already been // created as an index field. After you create your index field, you can create // a document metadata field using DocumentAttributeTarget. Amazon Q Business // then will map your newly created metadata field to your index field. type DocumentAttributeCondition struct { _ struct{} `type:"structure"` // The identifier of the document attribute used for the condition. // // For example, 'Source_URI' could be an identifier for the attribute or metadata // field that contains source URIs associated with the documents. // // Amazon Q Business currently doesn't support _document_body as an attribute // key used for the condition. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The identifier of the document attribute used for the condition. // // For example, 'Source_URI' could be an identifier for the attribute or metadata // field that contains source URIs associated with the documents. // // Amazon Q Business currently does not support _document_body as an attribute // key used for the condition. // // Operator is a required field Operator *string `locationName:"operator" type:"string" required:"true" enum:"DocumentEnrichmentConditionOperator"` // The value of a document attribute. You can only provide one value for a document // attribute. Value *DocumentAttributeValue `locationName:"value" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeCondition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeCondition) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentAttributeCondition) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeCondition"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Operator == nil { invalidParams.Add(request.NewErrParamRequired("Operator")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *DocumentAttributeCondition) SetKey(v string) *DocumentAttributeCondition { s.Key = &v return s } // SetOperator sets the Operator field's value. func (s *DocumentAttributeCondition) SetOperator(v string) *DocumentAttributeCondition { s.Operator = &v return s } // SetValue sets the Value field's value. func (s *DocumentAttributeCondition) SetValue(v *DocumentAttributeValue) *DocumentAttributeCondition { s.Value = v return s } // Configuration information for document attributes. Document attributes are // metadata or fields associated with your documents. For example, the company // department name associated with each document. // // For more information, see Understanding document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes.html). type DocumentAttributeConfiguration struct { _ struct{} `type:"structure"` // The name of the document attribute. Name *string `locationName:"name" min:"1" type:"string"` // Information about whether the document attribute can be used by an end user // to search for information on their web experience. Search *string `locationName:"search" type:"string" enum:"Status"` // The type of document attribute. Type *string `locationName:"type" type:"string" enum:"AttributeType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentAttributeConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeConfiguration"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DocumentAttributeConfiguration) SetName(v string) *DocumentAttributeConfiguration { s.Name = &v return s } // SetSearch sets the Search field's value. func (s *DocumentAttributeConfiguration) SetSearch(v string) *DocumentAttributeConfiguration { s.Search = &v return s } // SetType sets the Type field's value. func (s *DocumentAttributeConfiguration) SetType(v string) *DocumentAttributeConfiguration { s.Type = &v return s } // The target document attribute or metadata field you want to alter when ingesting // documents into Amazon Q Business. // // For example, you can delete all customer identification numbers associated // with the documents, stored in the document metadata field called 'Customer_ID' // by setting the target key as 'Customer_ID' and the deletion flag to TRUE. // This removes all customer ID values in the field 'Customer_ID'. This would // scrub personally identifiable information from each document's metadata. // // Amazon Q Business can't create a target field if it has not already been // created as an index field. After you create your index field, you can create // a document metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html). // Amazon Q Business will then map your newly created document attribute to // your index field. // // You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeCondition.html). type DocumentAttributeTarget struct { _ struct{} `type:"structure"` // TRUE to delete the existing target value for your specified target attribute // key. You cannot create a target value and set this to TRUE. AttributeValueOperator *string `locationName:"attributeValueOperator" type:"string" enum:"AttributeValueOperator"` // The identifier of the target document attribute or metadata field. For example, // 'Department' could be an identifier for the target attribute or metadata // field that includes the department names associated with the documents. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The value of a document attribute. You can only provide one value for a document // attribute. Value *DocumentAttributeValue `locationName:"value" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeTarget) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentAttributeTarget) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeTarget"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttributeValueOperator sets the AttributeValueOperator field's value. func (s *DocumentAttributeTarget) SetAttributeValueOperator(v string) *DocumentAttributeTarget { s.AttributeValueOperator = &v return s } // SetKey sets the Key field's value. func (s *DocumentAttributeTarget) SetKey(v string) *DocumentAttributeTarget { s.Key = &v return s } // SetValue sets the Value field's value. func (s *DocumentAttributeTarget) SetValue(v *DocumentAttributeValue) *DocumentAttributeTarget { s.Value = v return s } // The value of a document attribute. You can only provide one value for a document // attribute. type DocumentAttributeValue struct { _ struct{} `type:"structure"` // A date expressed as an ISO 8601 string. // // It's important for the time zone to be included in the ISO 8601 date-time // format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time // format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European // Time. DateValue *time.Time `locationName:"dateValue" type:"timestamp"` // A long integer value. LongValue *int64 `locationName:"longValue" type:"long"` // A list of strings. StringListValue []*string `locationName:"stringListValue" type:"list"` // A string. StringValue *string `locationName:"stringValue" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentAttributeValue) GoString() string { return s.String() } // SetDateValue sets the DateValue field's value. func (s *DocumentAttributeValue) SetDateValue(v time.Time) *DocumentAttributeValue { s.DateValue = &v return s } // SetLongValue sets the LongValue field's value. func (s *DocumentAttributeValue) SetLongValue(v int64) *DocumentAttributeValue { s.LongValue = &v return s } // SetStringListValue sets the StringListValue field's value. func (s *DocumentAttributeValue) SetStringListValue(v []*string) *DocumentAttributeValue { s.StringListValue = v return s } // SetStringValue sets the StringValue field's value. func (s *DocumentAttributeValue) SetStringValue(v string) *DocumentAttributeValue { s.StringValue = &v return s } // The contents of a document. type DocumentContent struct { _ struct{} `type:"structure"` // The contents of the document. Documents passed to the blob parameter must // be base64 encoded. Your code might not need to encode the document file bytes // if you're using an Amazon Web Services SDK to call Amazon Q Business APIs. // If you are calling the Amazon Q Business endpoint directly using REST, you // must base64 encode the contents before sending. // Blob is automatically base64 encoded/decoded by the SDK. Blob []byte `locationName:"blob" type:"blob"` // The path to the document in an Amazon S3 bucket. S3 *S3 `locationName:"s3" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentContent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentContent) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentContent) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentContent"} if s.S3 != nil { if err := s.S3.Validate(); err != nil { invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBlob sets the Blob field's value. func (s *DocumentContent) SetBlob(v []byte) *DocumentContent { s.Blob = v return s } // SetS3 sets the S3 field's value. func (s *DocumentContent) SetS3(v *S3) *DocumentContent { s.S3 = v return s } // The details of a document within an Amazon Q Business index. type DocumentDetails struct { _ struct{} `type:"structure"` // The timestamp for when the document was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The identifier of the document. DocumentId *string `locationName:"documentId" min:"1" type:"string"` // An error message associated with the document. Error *ErrorDetail `locationName:"error" type:"structure"` // The current status of the document. Status *string `locationName:"status" type:"string" enum:"DocumentStatus"` // The timestamp for when the document was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentDetails) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *DocumentDetails) SetCreatedAt(v time.Time) *DocumentDetails { s.CreatedAt = &v return s } // SetDocumentId sets the DocumentId field's value. func (s *DocumentDetails) SetDocumentId(v string) *DocumentDetails { s.DocumentId = &v return s } // SetError sets the Error field's value. func (s *DocumentDetails) SetError(v *ErrorDetail) *DocumentDetails { s.Error = v return s } // SetStatus sets the Status field's value. func (s *DocumentDetails) SetStatus(v string) *DocumentDetails { s.Status = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *DocumentDetails) SetUpdatedAt(v time.Time) *DocumentDetails { s.UpdatedAt = &v return s } // Provides the configuration information for altering document metadata and // content during the document ingestion process. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). type DocumentEnrichmentConfiguration struct { _ struct{} `type:"structure"` // Configuration information to alter document attributes or metadata fields // and content when ingesting documents into Amazon Q Business. InlineConfigurations []*InlineDocumentEnrichmentConfiguration `locationName:"inlineConfigurations" min:"1" type:"list"` // Provides the configuration information for invoking a Lambda function in // Lambda to alter document metadata and content when ingesting documents into // Amazon Q Business. // // You can configure your Lambda function using the PreExtractionHookConfiguration // parameter if you want to apply advanced alterations on the original or raw // documents. // // If you want to apply advanced alterations on the Amazon Q Business structured // documents, you must configure your Lambda function using PostExtractionHookConfiguration. // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). PostExtractionHookConfiguration *HookConfiguration `locationName:"postExtractionHookConfiguration" type:"structure"` // Provides the configuration information for invoking a Lambda function in // Lambda to alter document metadata and content when ingesting documents into // Amazon Q Business. // // You can configure your Lambda function using the PreExtractionHookConfiguration // parameter if you want to apply advanced alterations on the original or raw // documents. // // If you want to apply advanced alterations on the Amazon Q Business structured // documents, you must configure your Lambda function using PostExtractionHookConfiguration. // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). PreExtractionHookConfiguration *HookConfiguration `locationName:"preExtractionHookConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentEnrichmentConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DocumentEnrichmentConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentEnrichmentConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentEnrichmentConfiguration"} if s.InlineConfigurations != nil && len(s.InlineConfigurations) < 1 { invalidParams.Add(request.NewErrParamMinLen("InlineConfigurations", 1)) } if s.InlineConfigurations != nil { for i, v := range s.InlineConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InlineConfigurations", i), err.(request.ErrInvalidParams)) } } } if s.PostExtractionHookConfiguration != nil { if err := s.PostExtractionHookConfiguration.Validate(); err != nil { invalidParams.AddNested("PostExtractionHookConfiguration", err.(request.ErrInvalidParams)) } } if s.PreExtractionHookConfiguration != nil { if err := s.PreExtractionHookConfiguration.Validate(); err != nil { invalidParams.AddNested("PreExtractionHookConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetInlineConfigurations sets the InlineConfigurations field's value. func (s *DocumentEnrichmentConfiguration) SetInlineConfigurations(v []*InlineDocumentEnrichmentConfiguration) *DocumentEnrichmentConfiguration { s.InlineConfigurations = v return s } // SetPostExtractionHookConfiguration sets the PostExtractionHookConfiguration field's value. func (s *DocumentEnrichmentConfiguration) SetPostExtractionHookConfiguration(v *HookConfiguration) *DocumentEnrichmentConfiguration { s.PostExtractionHookConfiguration = v return s } // SetPreExtractionHookConfiguration sets the PreExtractionHookConfiguration field's value. func (s *DocumentEnrichmentConfiguration) SetPreExtractionHookConfiguration(v *HookConfiguration) *DocumentEnrichmentConfiguration { s.PreExtractionHookConfiguration = v return s } // The identifier of the data source Amazon Q Business will generate responses // from. type EligibleDataSource struct { _ struct{} `type:"structure"` // The identifier of the data source. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // The identifier of the index the data source is attached to. IndexId *string `locationName:"indexId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EligibleDataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EligibleDataSource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EligibleDataSource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EligibleDataSource"} if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDataSourceId sets the DataSourceId field's value. func (s *EligibleDataSource) SetDataSourceId(v string) *EligibleDataSource { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *EligibleDataSource) SetIndexId(v string) *EligibleDataSource { s.IndexId = &v return s } // Provides the identifier of the KMS key used to encrypt data indexed by Amazon // Q Business. Amazon Q Business doesn't support asymmetric keys. type EncryptionConfiguration struct { _ struct{} `type:"structure"` // The identifier of the KMS key. Amazon Q Business doesn't support asymmetric // keys. // // KmsKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by EncryptionConfiguration's // String and GoString methods. KmsKeyId *string `locationName:"kmsKeyId" min:"1" type:"string" sensitive:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EncryptionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EncryptionConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptionConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EncryptionConfiguration"} if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKmsKeyId sets the KmsKeyId field's value. func (s *EncryptionConfiguration) SetKmsKeyId(v string) *EncryptionConfiguration { s.KmsKeyId = &v return s } // The end of the streaming input for the Chat API. type EndOfInputEvent struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EndOfInputEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EndOfInputEvent) GoString() string { return s.String() } // The EndOfInputEvent is and event in the ChatInputStream group of events. func (s *EndOfInputEvent) eventChatInputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the EndOfInputEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *EndOfInputEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *EndOfInputEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) return msg, err } // Provides information about a data source sync error. type ErrorDetail struct { _ struct{} `type:"structure"` // The code associated with the data source sync error. ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"` // The message explaining the data source sync error. ErrorMessage *string `locationName:"errorMessage" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ErrorDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ErrorDetail) GoString() string { return s.String() } // SetErrorCode sets the ErrorCode field's value. func (s *ErrorDetail) SetErrorCode(v string) *ErrorDetail { s.ErrorCode = &v return s } // SetErrorMessage sets the ErrorMessage field's value. func (s *ErrorDetail) SetErrorMessage(v string) *ErrorDetail { s.ErrorMessage = &v return s } // A failed file upload during web experience chat. type FailedAttachmentEvent struct { _ struct{} `type:"structure"` // The details of a file uploaded during chat. Attachment *AttachmentOutput_ `locationName:"attachment" type:"structure"` // The identifier of the conversation associated with the failed file upload. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // The identifier of the AI-generated message associated with the file upload. SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` // The identifier of the end user chat message associated with the file upload. UserMessageId *string `locationName:"userMessageId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s FailedAttachmentEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s FailedAttachmentEvent) GoString() string { return s.String() } // SetAttachment sets the Attachment field's value. func (s *FailedAttachmentEvent) SetAttachment(v *AttachmentOutput_) *FailedAttachmentEvent { s.Attachment = v return s } // SetConversationId sets the ConversationId field's value. func (s *FailedAttachmentEvent) SetConversationId(v string) *FailedAttachmentEvent { s.ConversationId = &v return s } // SetSystemMessageId sets the SystemMessageId field's value. func (s *FailedAttachmentEvent) SetSystemMessageId(v string) *FailedAttachmentEvent { s.SystemMessageId = &v return s } // SetUserMessageId sets the UserMessageId field's value. func (s *FailedAttachmentEvent) SetUserMessageId(v string) *FailedAttachmentEvent { s.UserMessageId = &v return s } // The FailedAttachmentEvent is and event in the ChatOutputStream group of events. func (s *FailedAttachmentEvent) eventChatOutputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the FailedAttachmentEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *FailedAttachmentEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *FailedAttachmentEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // A list of documents that could not be removed from an Amazon Q Business index. // Each entry contains an error message that indicates why the document couldn't // be removed from the index. type FailedDocument struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business data source connector that contains // the failed document. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // An explanation for why the document couldn't be removed from the index. Error *ErrorDetail `locationName:"error" type:"structure"` // The identifier of the document that couldn't be removed from the Amazon Q // Business index. Id *string `locationName:"id" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s FailedDocument) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s FailedDocument) GoString() string { return s.String() } // SetDataSourceId sets the DataSourceId field's value. func (s *FailedDocument) SetDataSourceId(v string) *FailedDocument { s.DataSourceId = &v return s } // SetError sets the Error field's value. func (s *FailedDocument) SetError(v *ErrorDetail) *FailedDocument { s.Error = v return s } // SetId sets the Id field's value. func (s *FailedDocument) SetId(v string) *FailedDocument { s.Id = &v return s } type GetApplicationInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetApplicationInput) SetApplicationId(v string) *GetApplicationInput { s.ApplicationId = &v return s } type GetApplicationOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Amazon Q Business application. ApplicationArn *string `locationName:"applicationArn" type:"string"` // The identifier of the Amazon Q Business application. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // Settings for whether end users can upload files directly during chat. AttachmentsConfiguration *AppliedAttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` // The Unix timestamp when the Amazon Q Business application was last updated. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // A description for the Amazon Q Business application. Description *string `locationName:"description" type:"string"` // The name of the Amazon Q Business application. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier of the Amazon Web Services KMS key that is used to encrypt // your data. Amazon Q Business doesn't support asymmetric keys. EncryptionConfiguration *EncryptionConfiguration `locationName:"encryptionConfiguration" type:"structure"` // If the Status field is set to ERROR, the ErrorMessage field contains a description // of the error that caused the synchronization to fail. Error *ErrorDetail `locationName:"error" type:"structure"` // The Amazon Resource Name (ARN) of the AWS IAM Identity Center instance attached // to your Amazon Q Business application. IdentityCenterApplicationArn *string `locationName:"identityCenterApplicationArn" min:"10" type:"string"` // Configuration information about chat response personalization. For more information, // see Personalizing chat responses (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html). PersonalizationConfiguration *PersonalizationConfiguration `locationName:"personalizationConfiguration" type:"structure"` // Settings for whether end users can create and use Amazon Q Apps in the web // experience. QAppsConfiguration *QAppsConfiguration `locationName:"qAppsConfiguration" type:"structure"` // The Amazon Resource Name (ARN) of the IAM with permissions to access your // CloudWatch logs and metrics. RoleArn *string `locationName:"roleArn" type:"string"` // The status of the Amazon Q Business application. Status *string `locationName:"status" type:"string" enum:"ApplicationStatus"` // The Unix timestamp when the Amazon Q Business application was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetApplicationOutput) GoString() string { return s.String() } // SetApplicationArn sets the ApplicationArn field's value. func (s *GetApplicationOutput) SetApplicationArn(v string) *GetApplicationOutput { s.ApplicationArn = &v return s } // SetApplicationId sets the ApplicationId field's value. func (s *GetApplicationOutput) SetApplicationId(v string) *GetApplicationOutput { s.ApplicationId = &v return s } // SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. func (s *GetApplicationOutput) SetAttachmentsConfiguration(v *AppliedAttachmentsConfiguration) *GetApplicationOutput { s.AttachmentsConfiguration = v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetApplicationOutput) SetCreatedAt(v time.Time) *GetApplicationOutput { s.CreatedAt = &v return s } // SetDescription sets the Description field's value. func (s *GetApplicationOutput) SetDescription(v string) *GetApplicationOutput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *GetApplicationOutput) SetDisplayName(v string) *GetApplicationOutput { s.DisplayName = &v return s } // SetEncryptionConfiguration sets the EncryptionConfiguration field's value. func (s *GetApplicationOutput) SetEncryptionConfiguration(v *EncryptionConfiguration) *GetApplicationOutput { s.EncryptionConfiguration = v return s } // SetError sets the Error field's value. func (s *GetApplicationOutput) SetError(v *ErrorDetail) *GetApplicationOutput { s.Error = v return s } // SetIdentityCenterApplicationArn sets the IdentityCenterApplicationArn field's value. func (s *GetApplicationOutput) SetIdentityCenterApplicationArn(v string) *GetApplicationOutput { s.IdentityCenterApplicationArn = &v return s } // SetPersonalizationConfiguration sets the PersonalizationConfiguration field's value. func (s *GetApplicationOutput) SetPersonalizationConfiguration(v *PersonalizationConfiguration) *GetApplicationOutput { s.PersonalizationConfiguration = v return s } // SetQAppsConfiguration sets the QAppsConfiguration field's value. func (s *GetApplicationOutput) SetQAppsConfiguration(v *QAppsConfiguration) *GetApplicationOutput { s.QAppsConfiguration = v return s } // SetRoleArn sets the RoleArn field's value. func (s *GetApplicationOutput) SetRoleArn(v string) *GetApplicationOutput { s.RoleArn = &v return s } // SetStatus sets the Status field's value. func (s *GetApplicationOutput) SetStatus(v string) *GetApplicationOutput { s.Status = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetApplicationOutput) SetUpdatedAt(v time.Time) *GetApplicationOutput { s.UpdatedAt = &v return s } type GetChatControlsConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application for which the chat controls are configured. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of configured chat controls to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business chat // controls configured. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetChatControlsConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetChatControlsConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetChatControlsConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetChatControlsConfigurationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetChatControlsConfigurationInput) SetApplicationId(v string) *GetChatControlsConfigurationInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *GetChatControlsConfigurationInput) SetMaxResults(v int64) *GetChatControlsConfigurationInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *GetChatControlsConfigurationInput) SetNextToken(v string) *GetChatControlsConfigurationInput { s.NextToken = &v return s } type GetChatControlsConfigurationOutput struct { _ struct{} `type:"structure"` // The phrases blocked from chat by your chat control configuration. BlockedPhrases *BlockedPhrasesConfiguration `locationName:"blockedPhrases" type:"structure"` // The configuration details for CREATOR_MODE. CreatorModeConfiguration *AppliedCreatorModeConfiguration `locationName:"creatorModeConfiguration" type:"structure"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business chat // controls configured. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The response scope configured for a Amazon Q Business application. This determines // whether your application uses its retrieval augmented generation (RAG) system // to generate answers only from your enterprise data, or also uses the large // language models (LLM) knowledge to respons to end user questions in chat. ResponseScope *string `locationName:"responseScope" type:"string" enum:"ResponseScope"` // The topic specific controls configured for a Amazon Q Business application. TopicConfigurations []*TopicConfiguration `locationName:"topicConfigurations" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetChatControlsConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetChatControlsConfigurationOutput) GoString() string { return s.String() } // SetBlockedPhrases sets the BlockedPhrases field's value. func (s *GetChatControlsConfigurationOutput) SetBlockedPhrases(v *BlockedPhrasesConfiguration) *GetChatControlsConfigurationOutput { s.BlockedPhrases = v return s } // SetCreatorModeConfiguration sets the CreatorModeConfiguration field's value. func (s *GetChatControlsConfigurationOutput) SetCreatorModeConfiguration(v *AppliedCreatorModeConfiguration) *GetChatControlsConfigurationOutput { s.CreatorModeConfiguration = v return s } // SetNextToken sets the NextToken field's value. func (s *GetChatControlsConfigurationOutput) SetNextToken(v string) *GetChatControlsConfigurationOutput { s.NextToken = &v return s } // SetResponseScope sets the ResponseScope field's value. func (s *GetChatControlsConfigurationOutput) SetResponseScope(v string) *GetChatControlsConfigurationOutput { s.ResponseScope = &v return s } // SetTopicConfigurations sets the TopicConfigurations field's value. func (s *GetChatControlsConfigurationOutput) SetTopicConfigurations(v []*TopicConfiguration) *GetChatControlsConfigurationOutput { s.TopicConfigurations = v return s } type GetDataSourceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The identfier of the index used with the data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetDataSourceInput) SetApplicationId(v string) *GetDataSourceInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *GetDataSourceInput) SetDataSourceId(v string) *GetDataSourceInput { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *GetDataSourceInput) SetIndexId(v string) *GetDataSourceInput { s.IndexId = &v return s } type GetDataSourceOutput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // The Unix timestamp when the data source connector was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The Amazon Resource Name (ARN) of the data source. DataSourceArn *string `locationName:"dataSourceArn" type:"string"` // The identifier of the data source connector. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // The description for the data source connector. Description *string `locationName:"description" type:"string"` // The name for the data source connector. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // Provides the configuration information for altering document metadata and // content during the document ingestion process. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` // When the Status field value is FAILED, the ErrorMessage field contains a // description of the error that caused the data source connector to fail. Error *ErrorDetail `locationName:"error" type:"structure"` // The identifier of the index linked to the data source connector. IndexId *string `locationName:"indexId" min:"36" type:"string"` // The Amazon Resource Name (ARN) of the role with permission to access the // data source and required resources. RoleArn *string `locationName:"roleArn" type:"string"` // The current status of the data source connector. When the Status field value // is FAILED, the ErrorMessage field contains a description of the error that // caused the data source connector to fail. Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` // The schedule for Amazon Q Business to update the index. SyncSchedule *string `locationName:"syncSchedule" type:"string"` // The type of the data source connector. For example, S3. Type *string `locationName:"type" min:"1" type:"string"` // The Unix timestamp when the data source connector was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` // Configuration information for an Amazon VPC (Virtual Private Cloud) to connect // to your data source. VpcConfiguration *DataSourceVpcConfiguration `locationName:"vpcConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetDataSourceOutput) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *GetDataSourceOutput) SetApplicationId(v string) *GetDataSourceOutput { s.ApplicationId = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetDataSourceOutput) SetCreatedAt(v time.Time) *GetDataSourceOutput { s.CreatedAt = &v return s } // SetDataSourceArn sets the DataSourceArn field's value. func (s *GetDataSourceOutput) SetDataSourceArn(v string) *GetDataSourceOutput { s.DataSourceArn = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *GetDataSourceOutput) SetDataSourceId(v string) *GetDataSourceOutput { s.DataSourceId = &v return s } // SetDescription sets the Description field's value. func (s *GetDataSourceOutput) SetDescription(v string) *GetDataSourceOutput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *GetDataSourceOutput) SetDisplayName(v string) *GetDataSourceOutput { s.DisplayName = &v return s } // SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. func (s *GetDataSourceOutput) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *GetDataSourceOutput { s.DocumentEnrichmentConfiguration = v return s } // SetError sets the Error field's value. func (s *GetDataSourceOutput) SetError(v *ErrorDetail) *GetDataSourceOutput { s.Error = v return s } // SetIndexId sets the IndexId field's value. func (s *GetDataSourceOutput) SetIndexId(v string) *GetDataSourceOutput { s.IndexId = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *GetDataSourceOutput) SetRoleArn(v string) *GetDataSourceOutput { s.RoleArn = &v return s } // SetStatus sets the Status field's value. func (s *GetDataSourceOutput) SetStatus(v string) *GetDataSourceOutput { s.Status = &v return s } // SetSyncSchedule sets the SyncSchedule field's value. func (s *GetDataSourceOutput) SetSyncSchedule(v string) *GetDataSourceOutput { s.SyncSchedule = &v return s } // SetType sets the Type field's value. func (s *GetDataSourceOutput) SetType(v string) *GetDataSourceOutput { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetDataSourceOutput) SetUpdatedAt(v time.Time) *GetDataSourceOutput { s.UpdatedAt = &v return s } // SetVpcConfiguration sets the VpcConfiguration field's value. func (s *GetDataSourceOutput) SetVpcConfiguration(v *DataSourceVpcConfiguration) *GetDataSourceOutput { s.VpcConfiguration = v return s } type GetGroupInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application id the group is attached to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source the group is attached to. DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` // The name of the group. // // GroupName is a required field GroupName *string `location:"uri" locationName:"groupName" min:"1" type:"string" required:"true"` // The identifier of the index the group is attached to. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetGroupInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetGroupInput) SetApplicationId(v string) *GetGroupInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *GetGroupInput) SetDataSourceId(v string) *GetGroupInput { s.DataSourceId = &v return s } // SetGroupName sets the GroupName field's value. func (s *GetGroupInput) SetGroupName(v string) *GetGroupInput { s.GroupName = &v return s } // SetIndexId sets the IndexId field's value. func (s *GetGroupInput) SetIndexId(v string) *GetGroupInput { s.IndexId = &v return s } type GetGroupOutput struct { _ struct{} `type:"structure"` // The current status of the group. Status *GroupStatusDetail `locationName:"status" type:"structure"` // The status history of the group. StatusHistory []*GroupStatusDetail `locationName:"statusHistory" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetGroupOutput) GoString() string { return s.String() } // SetStatus sets the Status field's value. func (s *GetGroupOutput) SetStatus(v *GroupStatusDetail) *GetGroupOutput { s.Status = v return s } // SetStatusHistory sets the StatusHistory field's value. func (s *GetGroupOutput) SetStatusHistory(v []*GroupStatusDetail) *GetGroupOutput { s.StatusHistory = v return s } type GetIndexInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application connected to the index. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business index you want information on. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetIndexInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetIndexInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIndexInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIndexInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetIndexInput) SetApplicationId(v string) *GetIndexInput { s.ApplicationId = &v return s } // SetIndexId sets the IndexId field's value. func (s *GetIndexInput) SetIndexId(v string) *GetIndexInput { s.IndexId = &v return s } type GetIndexOutput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application associated with the index. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // The storage capacity units chosen for your Amazon Q Business index. CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` // The Unix timestamp when the Amazon Q Business index was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The description for the Amazon Q Business index. Description *string `locationName:"description" type:"string"` // The name of the Amazon Q Business index. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // Configuration information for document attributes or metadata. Document metadata // are fields associated with your documents. For example, the company department // name associated with each document. For more information, see Understanding // document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes). DocumentAttributeConfigurations []*DocumentAttributeConfiguration `locationName:"documentAttributeConfigurations" min:"1" type:"list"` // When the Status field value is FAILED, the ErrorMessage field contains a // message that explains why. Error *ErrorDetail `locationName:"error" type:"structure"` // The Amazon Resource Name (ARN) of the Amazon Q Business index. IndexArn *string `locationName:"indexArn" type:"string"` // The identifier of the Amazon Q Business index. IndexId *string `locationName:"indexId" min:"36" type:"string"` // Provides information about the number of documents indexed. IndexStatistics *IndexStatistics `locationName:"indexStatistics" type:"structure"` // The current status of the index. When the value is ACTIVE, the index is ready // for use. If the Status field value is FAILED, the ErrorMessage field contains // a message that explains why. Status *string `locationName:"status" type:"string" enum:"IndexStatus"` // The type of index attached to your Amazon Q Business application. Type *string `locationName:"type" type:"string" enum:"IndexType"` // The Unix timestamp when the Amazon Q Business index was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetIndexOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetIndexOutput) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *GetIndexOutput) SetApplicationId(v string) *GetIndexOutput { s.ApplicationId = &v return s } // SetCapacityConfiguration sets the CapacityConfiguration field's value. func (s *GetIndexOutput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *GetIndexOutput { s.CapacityConfiguration = v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetIndexOutput) SetCreatedAt(v time.Time) *GetIndexOutput { s.CreatedAt = &v return s } // SetDescription sets the Description field's value. func (s *GetIndexOutput) SetDescription(v string) *GetIndexOutput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *GetIndexOutput) SetDisplayName(v string) *GetIndexOutput { s.DisplayName = &v return s } // SetDocumentAttributeConfigurations sets the DocumentAttributeConfigurations field's value. func (s *GetIndexOutput) SetDocumentAttributeConfigurations(v []*DocumentAttributeConfiguration) *GetIndexOutput { s.DocumentAttributeConfigurations = v return s } // SetError sets the Error field's value. func (s *GetIndexOutput) SetError(v *ErrorDetail) *GetIndexOutput { s.Error = v return s } // SetIndexArn sets the IndexArn field's value. func (s *GetIndexOutput) SetIndexArn(v string) *GetIndexOutput { s.IndexArn = &v return s } // SetIndexId sets the IndexId field's value. func (s *GetIndexOutput) SetIndexId(v string) *GetIndexOutput { s.IndexId = &v return s } // SetIndexStatistics sets the IndexStatistics field's value. func (s *GetIndexOutput) SetIndexStatistics(v *IndexStatistics) *GetIndexOutput { s.IndexStatistics = v return s } // SetStatus sets the Status field's value. func (s *GetIndexOutput) SetStatus(v string) *GetIndexOutput { s.Status = &v return s } // SetType sets the Type field's value. func (s *GetIndexOutput) SetType(v string) *GetIndexOutput { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetIndexOutput) SetUpdatedAt(v time.Time) *GetIndexOutput { s.UpdatedAt = &v return s } type GetPluginInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application which contains the plugin. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the plugin. // // PluginId is a required field PluginId *string `location:"uri" locationName:"pluginId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPluginInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPluginInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPluginInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPluginInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.PluginId == nil { invalidParams.Add(request.NewErrParamRequired("PluginId")) } if s.PluginId != nil && len(*s.PluginId) < 36 { invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetPluginInput) SetApplicationId(v string) *GetPluginInput { s.ApplicationId = &v return s } // SetPluginId sets the PluginId field's value. func (s *GetPluginInput) SetPluginId(v string) *GetPluginInput { s.PluginId = &v return s } type GetPluginOutput struct { _ struct{} `type:"structure"` // The identifier of the application which contains the plugin. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // Authentication configuration information for an Amazon Q Business plugin. AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure"` // The current status of a plugin. A plugin is modified asynchronously. BuildStatus *string `locationName:"buildStatus" type:"string" enum:"PluginBuildStatus"` // The timestamp for when the plugin was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // Configuration information required to create a custom plugin. CustomPluginConfiguration *CustomPluginConfiguration `locationName:"customPluginConfiguration" type:"structure"` // The name of the plugin. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the role with permission to access resources // needed to create the plugin. PluginArn *string `locationName:"pluginArn" type:"string"` // The identifier of the plugin. PluginId *string `locationName:"pluginId" min:"36" type:"string"` // The source URL used for plugin configuration. ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` // The current state of the plugin. State *string `locationName:"state" type:"string" enum:"PluginState"` // The type of the plugin. Type *string `locationName:"type" type:"string" enum:"PluginType"` // The timestamp for when the plugin was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPluginOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetPluginOutput) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *GetPluginOutput) SetApplicationId(v string) *GetPluginOutput { s.ApplicationId = &v return s } // SetAuthConfiguration sets the AuthConfiguration field's value. func (s *GetPluginOutput) SetAuthConfiguration(v *PluginAuthConfiguration) *GetPluginOutput { s.AuthConfiguration = v return s } // SetBuildStatus sets the BuildStatus field's value. func (s *GetPluginOutput) SetBuildStatus(v string) *GetPluginOutput { s.BuildStatus = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetPluginOutput) SetCreatedAt(v time.Time) *GetPluginOutput { s.CreatedAt = &v return s } // SetCustomPluginConfiguration sets the CustomPluginConfiguration field's value. func (s *GetPluginOutput) SetCustomPluginConfiguration(v *CustomPluginConfiguration) *GetPluginOutput { s.CustomPluginConfiguration = v return s } // SetDisplayName sets the DisplayName field's value. func (s *GetPluginOutput) SetDisplayName(v string) *GetPluginOutput { s.DisplayName = &v return s } // SetPluginArn sets the PluginArn field's value. func (s *GetPluginOutput) SetPluginArn(v string) *GetPluginOutput { s.PluginArn = &v return s } // SetPluginId sets the PluginId field's value. func (s *GetPluginOutput) SetPluginId(v string) *GetPluginOutput { s.PluginId = &v return s } // SetServerUrl sets the ServerUrl field's value. func (s *GetPluginOutput) SetServerUrl(v string) *GetPluginOutput { s.ServerUrl = &v return s } // SetState sets the State field's value. func (s *GetPluginOutput) SetState(v string) *GetPluginOutput { s.State = &v return s } // SetType sets the Type field's value. func (s *GetPluginOutput) SetType(v string) *GetPluginOutput { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetPluginOutput) SetUpdatedAt(v time.Time) *GetPluginOutput { s.UpdatedAt = &v return s } type GetRetrieverInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application using the retriever. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the retriever. // // RetrieverId is a required field RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetRetrieverInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetRetrieverInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRetrieverInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRetrieverInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.RetrieverId == nil { invalidParams.Add(request.NewErrParamRequired("RetrieverId")) } if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetRetrieverInput) SetApplicationId(v string) *GetRetrieverInput { s.ApplicationId = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *GetRetrieverInput) SetRetrieverId(v string) *GetRetrieverInput { s.RetrieverId = &v return s } type GetRetrieverOutput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application using the retriever. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // Provides information on how the retriever used for your Amazon Q Business // application is configured. Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure"` // The Unix timestamp when the retriever was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The name of the retriever. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the IAM role associated with the retriever. RetrieverArn *string `locationName:"retrieverArn" type:"string"` // The identifier of the retriever. RetrieverId *string `locationName:"retrieverId" min:"36" type:"string"` // The Amazon Resource Name (ARN) of the role with the permission to access // the retriever and required resources. RoleArn *string `locationName:"roleArn" type:"string"` // The status of the retriever. Status *string `locationName:"status" type:"string" enum:"RetrieverStatus"` // The type of the retriever. Type *string `locationName:"type" type:"string" enum:"RetrieverType"` // The Unix timestamp when the retriever was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetRetrieverOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetRetrieverOutput) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *GetRetrieverOutput) SetApplicationId(v string) *GetRetrieverOutput { s.ApplicationId = &v return s } // SetConfiguration sets the Configuration field's value. func (s *GetRetrieverOutput) SetConfiguration(v *RetrieverConfiguration) *GetRetrieverOutput { s.Configuration = v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetRetrieverOutput) SetCreatedAt(v time.Time) *GetRetrieverOutput { s.CreatedAt = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *GetRetrieverOutput) SetDisplayName(v string) *GetRetrieverOutput { s.DisplayName = &v return s } // SetRetrieverArn sets the RetrieverArn field's value. func (s *GetRetrieverOutput) SetRetrieverArn(v string) *GetRetrieverOutput { s.RetrieverArn = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *GetRetrieverOutput) SetRetrieverId(v string) *GetRetrieverOutput { s.RetrieverId = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *GetRetrieverOutput) SetRoleArn(v string) *GetRetrieverOutput { s.RoleArn = &v return s } // SetStatus sets the Status field's value. func (s *GetRetrieverOutput) SetStatus(v string) *GetRetrieverOutput { s.Status = &v return s } // SetType sets the Type field's value. func (s *GetRetrieverOutput) SetType(v string) *GetRetrieverOutput { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetRetrieverOutput) SetUpdatedAt(v time.Time) *GetRetrieverOutput { s.UpdatedAt = &v return s } type GetUserInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application connected to the user. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The user email address attached to the user. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUserInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetUserInput) SetApplicationId(v string) *GetUserInput { s.ApplicationId = &v return s } // SetUserId sets the UserId field's value. func (s *GetUserInput) SetUserId(v string) *GetUserInput { s.UserId = &v return s } type GetUserOutput struct { _ struct{} `type:"structure"` // A list of user aliases attached to a user. UserAliases []*UserAlias `locationName:"userAliases" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetUserOutput) GoString() string { return s.String() } // SetUserAliases sets the UserAliases field's value. func (s *GetUserOutput) SetUserAliases(v []*UserAlias) *GetUserOutput { s.UserAliases = v return s } type GetWebExperienceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application linked to the web experience. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business web experience. // // WebExperienceId is a required field WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetWebExperienceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetWebExperienceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetWebExperienceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetWebExperienceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.WebExperienceId == nil { invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) } if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *GetWebExperienceInput) SetApplicationId(v string) *GetWebExperienceInput { s.ApplicationId = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *GetWebExperienceInput) SetWebExperienceId(v string) *GetWebExperienceInput { s.WebExperienceId = &v return s } type GetWebExperienceOutput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application linked to the web experience. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // The authentication configuration information for your Amazon Q Business web // experience. // // Deprecated: Property associated with legacy SAML IdP flow. Deprecated in favor of using AWS IAM Identity Center for user management. AuthenticationConfiguration *WebExperienceAuthConfiguration `locationName:"authenticationConfiguration" deprecated:"true" type:"structure"` // The Unix timestamp when the Amazon Q Business web experience was last created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The endpoint of your Amazon Q Business web experience. DefaultEndpoint *string `locationName:"defaultEndpoint" min:"1" type:"string"` // When the Status field value is FAILED, the ErrorMessage field contains a // description of the error that caused the data source connector to fail. Error *ErrorDetail `locationName:"error" type:"structure"` // The Amazon Resource Name (ARN) of the service role attached to your web experience. RoleArn *string `locationName:"roleArn" type:"string"` // Determines whether sample prompts are enabled in the web experience for an // end user. SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` // The current status of the Amazon Q Business web experience. When the Status // field value is FAILED, the ErrorMessage field contains a description of the // error that caused the data source connector to fail. Status *string `locationName:"status" type:"string" enum:"WebExperienceStatus"` // The subtitle for your Amazon Q Business web experience. Subtitle *string `locationName:"subtitle" type:"string"` // The title for your Amazon Q Business web experience. Title *string `locationName:"title" type:"string"` // The Unix timestamp when the Amazon Q Business web experience was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` // The Amazon Resource Name (ARN) of the role with the permission to access // the Amazon Q Business web experience and required resources. WebExperienceArn *string `locationName:"webExperienceArn" type:"string"` // The identifier of the Amazon Q Business web experience. WebExperienceId *string `locationName:"webExperienceId" min:"36" type:"string"` // The customized welcome message for end users of an Amazon Q Business web // experience. WelcomeMessage *string `locationName:"welcomeMessage" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetWebExperienceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetWebExperienceOutput) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *GetWebExperienceOutput) SetApplicationId(v string) *GetWebExperienceOutput { s.ApplicationId = &v return s } // SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. func (s *GetWebExperienceOutput) SetAuthenticationConfiguration(v *WebExperienceAuthConfiguration) *GetWebExperienceOutput { s.AuthenticationConfiguration = v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *GetWebExperienceOutput) SetCreatedAt(v time.Time) *GetWebExperienceOutput { s.CreatedAt = &v return s } // SetDefaultEndpoint sets the DefaultEndpoint field's value. func (s *GetWebExperienceOutput) SetDefaultEndpoint(v string) *GetWebExperienceOutput { s.DefaultEndpoint = &v return s } // SetError sets the Error field's value. func (s *GetWebExperienceOutput) SetError(v *ErrorDetail) *GetWebExperienceOutput { s.Error = v return s } // SetRoleArn sets the RoleArn field's value. func (s *GetWebExperienceOutput) SetRoleArn(v string) *GetWebExperienceOutput { s.RoleArn = &v return s } // SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. func (s *GetWebExperienceOutput) SetSamplePromptsControlMode(v string) *GetWebExperienceOutput { s.SamplePromptsControlMode = &v return s } // SetStatus sets the Status field's value. func (s *GetWebExperienceOutput) SetStatus(v string) *GetWebExperienceOutput { s.Status = &v return s } // SetSubtitle sets the Subtitle field's value. func (s *GetWebExperienceOutput) SetSubtitle(v string) *GetWebExperienceOutput { s.Subtitle = &v return s } // SetTitle sets the Title field's value. func (s *GetWebExperienceOutput) SetTitle(v string) *GetWebExperienceOutput { s.Title = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *GetWebExperienceOutput) SetUpdatedAt(v time.Time) *GetWebExperienceOutput { s.UpdatedAt = &v return s } // SetWebExperienceArn sets the WebExperienceArn field's value. func (s *GetWebExperienceOutput) SetWebExperienceArn(v string) *GetWebExperienceOutput { s.WebExperienceArn = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *GetWebExperienceOutput) SetWebExperienceId(v string) *GetWebExperienceOutput { s.WebExperienceId = &v return s } // SetWelcomeMessage sets the WelcomeMessage field's value. func (s *GetWebExperienceOutput) SetWelcomeMessage(v string) *GetWebExperienceOutput { s.WelcomeMessage = &v return s } // A list of users or sub groups that belong to a group. This is for generating // Amazon Q Business chat results only from document a user has access to. type GroupMembers struct { _ struct{} `type:"structure"` // A list of sub groups that belong to a group. For example, the sub groups // "Research", "Engineering", and "Sales and Marketing" all belong to the group // "Company". MemberGroups []*MemberGroup `locationName:"memberGroups" min:"1" type:"list"` // A list of users that belong to a group. For example, a list of interns all // belong to the "Interns" group. MemberUsers []*MemberUser `locationName:"memberUsers" min:"1" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupMembers) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupMembers) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GroupMembers) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GroupMembers"} if s.MemberGroups != nil && len(s.MemberGroups) < 1 { invalidParams.Add(request.NewErrParamMinLen("MemberGroups", 1)) } if s.MemberUsers != nil && len(s.MemberUsers) < 1 { invalidParams.Add(request.NewErrParamMinLen("MemberUsers", 1)) } if s.MemberGroups != nil { for i, v := range s.MemberGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberGroups", i), err.(request.ErrInvalidParams)) } } } if s.MemberUsers != nil { for i, v := range s.MemberUsers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberUsers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMemberGroups sets the MemberGroups field's value. func (s *GroupMembers) SetMemberGroups(v []*MemberGroup) *GroupMembers { s.MemberGroups = v return s } // SetMemberUsers sets the MemberUsers field's value. func (s *GroupMembers) SetMemberUsers(v []*MemberUser) *GroupMembers { s.MemberUsers = v return s } // Provides the details of a group's status. type GroupStatusDetail struct { _ struct{} `type:"structure"` // The details of an error associated a group status. ErrorDetail *ErrorDetail `locationName:"errorDetail" type:"structure"` // The Unix timestamp when the Amazon Q Business application was last updated. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` // The status of a group. Status *string `locationName:"status" type:"string" enum:"GroupStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupStatusDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupStatusDetail) GoString() string { return s.String() } // SetErrorDetail sets the ErrorDetail field's value. func (s *GroupStatusDetail) SetErrorDetail(v *ErrorDetail) *GroupStatusDetail { s.ErrorDetail = v return s } // SetLastUpdatedAt sets the LastUpdatedAt field's value. func (s *GroupStatusDetail) SetLastUpdatedAt(v time.Time) *GroupStatusDetail { s.LastUpdatedAt = &v return s } // SetStatus sets the Status field's value. func (s *GroupStatusDetail) SetStatus(v string) *GroupStatusDetail { s.Status = &v return s } // Summary information for groups. type GroupSummary struct { _ struct{} `type:"structure"` // The name of the group the summary information is for. GroupName *string `locationName:"groupName" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GroupSummary) GoString() string { return s.String() } // SetGroupName sets the GroupName field's value. func (s *GroupSummary) SetGroupName(v string) *GroupSummary { s.GroupName = &v return s } // Provides the configuration information for invoking a Lambda function in // Lambda to alter document metadata and content when ingesting documents into // Amazon Q Business. // // You can configure your Lambda function using the PreExtractionHookConfiguration // parameter if you want to apply advanced alterations on the original or raw // documents. // // If you want to apply advanced alterations on the Amazon Q Business structured // documents, you must configure your Lambda function using PostExtractionHookConfiguration. // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). type HookConfiguration struct { _ struct{} `type:"structure"` // The condition used for when a Lambda function should be invoked. // // For example, you can specify a condition that if there are empty date-time // values, then Amazon Q Business should invoke a function that inserts the // current date-time. InvocationCondition *DocumentAttributeCondition `locationName:"invocationCondition" type:"structure"` // The Amazon Resource Name (ARN) of a role with permission to run a Lambda // function during ingestion. For more information, see IAM roles for Custom // Document Enrichment (CDE) (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/iam-roles.html#cde-iam-role). LambdaArn *string `locationName:"lambdaArn" min:"1" type:"string"` // The Amazon Resource Name (ARN) of a role with permission to run PreExtractionHookConfiguration // and PostExtractionHookConfiguration for altering document metadata and content // during the document ingestion process. RoleArn *string `locationName:"roleArn" type:"string"` // Stores the original, raw documents or the structured, parsed documents before // and after altering them. For more information, see Data contracts for Lambda // functions (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/cde-lambda-operations.html#cde-lambda-operations-data-contracts). S3BucketName *string `locationName:"s3BucketName" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s HookConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s HookConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HookConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HookConfiguration"} if s.LambdaArn != nil && len(*s.LambdaArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("LambdaArn", 1)) } if s.S3BucketName != nil && len(*s.S3BucketName) < 1 { invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 1)) } if s.InvocationCondition != nil { if err := s.InvocationCondition.Validate(); err != nil { invalidParams.AddNested("InvocationCondition", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetInvocationCondition sets the InvocationCondition field's value. func (s *HookConfiguration) SetInvocationCondition(v *DocumentAttributeCondition) *HookConfiguration { s.InvocationCondition = v return s } // SetLambdaArn sets the LambdaArn field's value. func (s *HookConfiguration) SetLambdaArn(v string) *HookConfiguration { s.LambdaArn = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *HookConfiguration) SetRoleArn(v string) *HookConfiguration { s.RoleArn = &v return s } // SetS3BucketName sets the S3BucketName field's value. func (s *HookConfiguration) SetS3BucketName(v string) *HookConfiguration { s.S3BucketName = &v return s } // Summary information for your Amazon Q Business index. type Index struct { _ struct{} `type:"structure"` // The Unix timestamp when the index was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The name of the index. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier for the index. IndexId *string `locationName:"indexId" min:"36" type:"string"` // The current status of the index. When the status is ACTIVE, the index is // ready. Status *string `locationName:"status" type:"string" enum:"IndexStatus"` // The Unix timestamp when the index was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Index) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Index) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *Index) SetCreatedAt(v time.Time) *Index { s.CreatedAt = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *Index) SetDisplayName(v string) *Index { s.DisplayName = &v return s } // SetIndexId sets the IndexId field's value. func (s *Index) SetIndexId(v string) *Index { s.IndexId = &v return s } // SetStatus sets the Status field's value. func (s *Index) SetStatus(v string) *Index { s.Status = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *Index) SetUpdatedAt(v time.Time) *Index { s.UpdatedAt = &v return s } // Provides information about index capacity configuration. type IndexCapacityConfiguration struct { _ struct{} `type:"structure"` // The number of storage units configured for an Amazon Q Business index. Units *int64 `locationName:"units" min:"1" type:"integer"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s IndexCapacityConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s IndexCapacityConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IndexCapacityConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IndexCapacityConfiguration"} if s.Units != nil && *s.Units < 1 { invalidParams.Add(request.NewErrParamMinValue("Units", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetUnits sets the Units field's value. func (s *IndexCapacityConfiguration) SetUnits(v int64) *IndexCapacityConfiguration { s.Units = &v return s } // Provides information about the number of documents in an index. type IndexStatistics struct { _ struct{} `type:"structure"` // The number of documents indexed. TextDocumentStatistics *TextDocumentStatistics `locationName:"textDocumentStatistics" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s IndexStatistics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s IndexStatistics) GoString() string { return s.String() } // SetTextDocumentStatistics sets the TextDocumentStatistics field's value. func (s *IndexStatistics) SetTextDocumentStatistics(v *TextDocumentStatistics) *IndexStatistics { s.TextDocumentStatistics = v return s } // Provides the configuration information for applying basic logic to alter // document metadata and content when ingesting documents into Amazon Q Business. // // To apply advanced logic, to go beyond what you can do with basic logic, see // HookConfiguration (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_HookConfiguration.html). // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). type InlineDocumentEnrichmentConfiguration struct { _ struct{} `type:"structure"` // The condition used for the target document attribute or metadata field when // ingesting documents into Amazon Q Business. You use this with DocumentAttributeTarget // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html) // to apply the condition. // // For example, you can create the 'Department' target field and have it prefill // department names associated with the documents based on information in the // 'Source_URI' field. Set the condition that if the 'Source_URI' field contains // 'financial' in its URI value, then prefill the target field 'Department' // with the target value 'Finance' for the document. // // Amazon Q Business can't create a target field if it has not already been // created as an index field. After you create your index field, you can create // a document metadata field using DocumentAttributeTarget. Amazon Q Business // then will map your newly created metadata field to your index field. Condition *DocumentAttributeCondition `locationName:"condition" type:"structure"` // TRUE to delete content if the condition used for the target attribute is // met. DocumentContentOperator *string `locationName:"documentContentOperator" type:"string" enum:"DocumentContentOperator"` // The target document attribute or metadata field you want to alter when ingesting // documents into Amazon Q Business. // // For example, you can delete all customer identification numbers associated // with the documents, stored in the document metadata field called 'Customer_ID' // by setting the target key as 'Customer_ID' and the deletion flag to TRUE. // This removes all customer ID values in the field 'Customer_ID'. This would // scrub personally identifiable information from each document's metadata. // // Amazon Q Business can't create a target field if it has not already been // created as an index field. After you create your index field, you can create // a document metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html). // Amazon Q Business will then map your newly created document attribute to // your index field. // // You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeCondition.html). Target *DocumentAttributeTarget `locationName:"target" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InlineDocumentEnrichmentConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InlineDocumentEnrichmentConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InlineDocumentEnrichmentConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InlineDocumentEnrichmentConfiguration"} if s.Condition != nil { if err := s.Condition.Validate(); err != nil { invalidParams.AddNested("Condition", err.(request.ErrInvalidParams)) } } if s.Target != nil { if err := s.Target.Validate(); err != nil { invalidParams.AddNested("Target", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCondition sets the Condition field's value. func (s *InlineDocumentEnrichmentConfiguration) SetCondition(v *DocumentAttributeCondition) *InlineDocumentEnrichmentConfiguration { s.Condition = v return s } // SetDocumentContentOperator sets the DocumentContentOperator field's value. func (s *InlineDocumentEnrichmentConfiguration) SetDocumentContentOperator(v string) *InlineDocumentEnrichmentConfiguration { s.DocumentContentOperator = &v return s } // SetTarget sets the Target field's value. func (s *InlineDocumentEnrichmentConfiguration) SetTarget(v *DocumentAttributeTarget) *InlineDocumentEnrichmentConfiguration { s.Target = v return s } // An issue occurred with the internal server used for your Amazon Q Business // service. Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) // for help. type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalServerException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalServerException) GoString() string { return s.String() } func newErrorInternalServerException(v protocol.ResponseMetadata) error { return &InternalServerException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InternalServerException) Code() string { return "InternalServerException" } // Message returns the exception's message. func (s *InternalServerException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InternalServerException) OrigErr() error { return nil } func (s *InternalServerException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InternalServerException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } // Stores an Amazon Kendra index as a retriever. type KendraIndexConfiguration struct { _ struct{} `type:"structure"` // The identifier of the Amazon Kendra index. // // IndexId is a required field IndexId *string `locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s KendraIndexConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s KendraIndexConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KendraIndexConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KendraIndexConfiguration"} if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetIndexId sets the IndexId field's value. func (s *KendraIndexConfiguration) SetIndexId(v string) *KendraIndexConfiguration { s.IndexId = &v return s } // You don't have permissions to perform the action because your license is // inactive. Ask your admin to activate your license and try again after your // licence is active. type LicenseNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LicenseNotFoundException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LicenseNotFoundException) GoString() string { return s.String() } func newErrorLicenseNotFoundException(v protocol.ResponseMetadata) error { return &LicenseNotFoundException{ RespMetadata: v, } } // Code returns the exception type name. func (s *LicenseNotFoundException) Code() string { return "LicenseNotFoundException" } // Message returns the exception's message. func (s *LicenseNotFoundException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *LicenseNotFoundException) OrigErr() error { return nil } func (s *LicenseNotFoundException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *LicenseNotFoundException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *LicenseNotFoundException) RequestID() string { return s.RespMetadata.RequestID } type ListApplicationsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of Amazon Q Business applications to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business applications. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListApplicationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListApplicationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { s.NextToken = &v return s } type ListApplicationsOutput struct { _ struct{} `type:"structure"` // An array of summary information on the configuration of one or more Amazon // Q Business applications. Applications []*Application `locationName:"applications" type:"list"` // If the response is truncated, Amazon Q Business returns this token. You can // use this token in a subsequent request to retrieve the next set of applications. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListApplicationsOutput) GoString() string { return s.String() } // SetApplications sets the Applications field's value. func (s *ListApplicationsOutput) SetApplications(v []*Application) *ListApplicationsOutput { s.Applications = v return s } // SetNextToken sets the NextToken field's value. func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput { s.NextToken = &v return s } type ListConversationsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of Amazon Q Business conversations to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business conversations. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The identifier of the user involved in the Amazon Q Business web experience // conversation. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListConversationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListConversationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListConversationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListConversationsInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListConversationsInput) SetApplicationId(v string) *ListConversationsInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListConversationsInput) SetMaxResults(v int64) *ListConversationsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListConversationsInput) SetNextToken(v string) *ListConversationsInput { s.NextToken = &v return s } // SetUserId sets the UserId field's value. func (s *ListConversationsInput) SetUserId(v string) *ListConversationsInput { s.UserId = &v return s } type ListConversationsOutput struct { _ struct{} `type:"structure"` // An array of summary information on the configuration of one or more Amazon // Q Business web experiences. Conversations []*Conversation `locationName:"conversations" type:"list"` // If the response is truncated, Amazon Q Business returns this token, which // you can use in a later request to list the next set of messages. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListConversationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListConversationsOutput) GoString() string { return s.String() } // SetConversations sets the Conversations field's value. func (s *ListConversationsOutput) SetConversations(v []*Conversation) *ListConversationsOutput { s.Conversations = v return s } // SetNextToken sets the NextToken field's value. func (s *ListConversationsOutput) SetNextToken(v string) *ListConversationsOutput { s.NextToken = &v return s } type ListDataSourceSyncJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application connected to the data // source. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The end time of the data source connector sync. EndTime *time.Time `location:"querystring" locationName:"endTime" type:"timestamp"` // The identifier of the index used with the Amazon Q Business data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The maximum number of synchronization jobs to return in the response. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incpmplete because there is more data to retriever, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of responses. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The start time of the data source connector sync. StartTime *time.Time `location:"querystring" locationName:"startTime" type:"timestamp"` // Only returns synchronization jobs with the Status field equal to the specified // status. StatusFilter *string `location:"querystring" locationName:"syncStatus" type:"string" enum:"DataSourceSyncJobStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourceSyncJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourceSyncJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDataSourceSyncJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDataSourceSyncJobsInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListDataSourceSyncJobsInput) SetApplicationId(v string) *ListDataSourceSyncJobsInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *ListDataSourceSyncJobsInput) SetDataSourceId(v string) *ListDataSourceSyncJobsInput { s.DataSourceId = &v return s } // SetEndTime sets the EndTime field's value. func (s *ListDataSourceSyncJobsInput) SetEndTime(v time.Time) *ListDataSourceSyncJobsInput { s.EndTime = &v return s } // SetIndexId sets the IndexId field's value. func (s *ListDataSourceSyncJobsInput) SetIndexId(v string) *ListDataSourceSyncJobsInput { s.IndexId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListDataSourceSyncJobsInput) SetMaxResults(v int64) *ListDataSourceSyncJobsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListDataSourceSyncJobsInput) SetNextToken(v string) *ListDataSourceSyncJobsInput { s.NextToken = &v return s } // SetStartTime sets the StartTime field's value. func (s *ListDataSourceSyncJobsInput) SetStartTime(v time.Time) *ListDataSourceSyncJobsInput { s.StartTime = &v return s } // SetStatusFilter sets the StatusFilter field's value. func (s *ListDataSourceSyncJobsInput) SetStatusFilter(v string) *ListDataSourceSyncJobsInput { s.StatusFilter = &v return s } type ListDataSourceSyncJobsOutput struct { _ struct{} `type:"structure"` // A history of synchronization jobs for the data source connector. History []*DataSourceSyncJob `locationName:"history" type:"list"` // If the response is truncated, Amazon Q Business returns this token. You can // use this token in any subsequent request to retrieve the next set of jobs. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourceSyncJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourceSyncJobsOutput) GoString() string { return s.String() } // SetHistory sets the History field's value. func (s *ListDataSourceSyncJobsOutput) SetHistory(v []*DataSourceSyncJob) *ListDataSourceSyncJobsOutput { s.History = v return s } // SetNextToken sets the NextToken field's value. func (s *ListDataSourceSyncJobsOutput) SetNextToken(v string) *ListDataSourceSyncJobsOutput { s.NextToken = &v return s } type ListDataSourcesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application linked to the data source // connectors. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the index used with one or more data source connectors. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The maximum number of data source connectors to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business data // source connectors. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDataSourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListDataSourcesInput) SetApplicationId(v string) *ListDataSourcesInput { s.ApplicationId = &v return s } // SetIndexId sets the IndexId field's value. func (s *ListDataSourcesInput) SetIndexId(v string) *ListDataSourcesInput { s.IndexId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { s.NextToken = &v return s } type ListDataSourcesOutput struct { _ struct{} `type:"structure"` // An array of summary information for one or more data source connector. DataSources []*DataSource `locationName:"dataSources" type:"list"` // If the response is truncated, Amazon Q Business returns this token. You can // use this token in a subsequent request to retrieve the next set of data source // connectors. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDataSourcesOutput) GoString() string { return s.String() } // SetDataSources sets the DataSources field's value. func (s *ListDataSourcesOutput) SetDataSources(v []*DataSource) *ListDataSourcesOutput { s.DataSources = v return s } // SetNextToken sets the NextToken field's value. func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { s.NextToken = &v return s } type ListDocumentsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application id the documents are attached to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data sources the documents are attached to. DataSourceIds []*string `location:"querystring" locationName:"dataSourceIds" min:"1" type:"list"` // The identifier of the index the documents are attached to. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The maximum number of documents to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of documents. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDocumentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDocumentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDocumentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDocumentsInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceIds != nil && len(s.DataSourceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceIds", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListDocumentsInput) SetApplicationId(v string) *ListDocumentsInput { s.ApplicationId = &v return s } // SetDataSourceIds sets the DataSourceIds field's value. func (s *ListDocumentsInput) SetDataSourceIds(v []*string) *ListDocumentsInput { s.DataSourceIds = v return s } // SetIndexId sets the IndexId field's value. func (s *ListDocumentsInput) SetIndexId(v string) *ListDocumentsInput { s.IndexId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListDocumentsInput) SetMaxResults(v int64) *ListDocumentsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListDocumentsInput) SetNextToken(v string) *ListDocumentsInput { s.NextToken = &v return s } type ListDocumentsOutput struct { _ struct{} `type:"structure"` // A list of document details. DocumentDetailList []*DocumentDetails `locationName:"documentDetailList" type:"list"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of documents. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDocumentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListDocumentsOutput) GoString() string { return s.String() } // SetDocumentDetailList sets the DocumentDetailList field's value. func (s *ListDocumentsOutput) SetDocumentDetailList(v []*DocumentDetails) *ListDocumentsOutput { s.DocumentDetailList = v return s } // SetNextToken sets the NextToken field's value. func (s *ListDocumentsOutput) SetNextToken(v string) *ListDocumentsOutput { s.NextToken = &v return s } type ListGroupsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application for getting a list of groups mapped to // users. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source for getting a list of groups mapped to // users. DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` // The identifier of the index for getting a list of groups mapped to users. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The maximum number of returned groups that are mapped to users. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the previous response was incomplete (because there is more data to retrieve), // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of groups that are mapped // to users. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The timestamp identifier used for the latest PUT or DELETE action for mapping // users to their groups. // // UpdatedEarlierThan is a required field UpdatedEarlierThan *time.Time `location:"querystring" locationName:"updatedEarlierThan" type:"timestamp" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UpdatedEarlierThan == nil { invalidParams.Add(request.NewErrParamRequired("UpdatedEarlierThan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListGroupsInput) SetApplicationId(v string) *ListGroupsInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *ListGroupsInput) SetDataSourceId(v string) *ListGroupsInput { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *ListGroupsInput) SetIndexId(v string) *ListGroupsInput { s.IndexId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListGroupsInput) SetMaxResults(v int64) *ListGroupsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput { s.NextToken = &v return s } // SetUpdatedEarlierThan sets the UpdatedEarlierThan field's value. func (s *ListGroupsInput) SetUpdatedEarlierThan(v time.Time) *ListGroupsInput { s.UpdatedEarlierThan = &v return s } type ListGroupsOutput struct { _ struct{} `type:"structure"` // Summary information for list of groups that are mapped to users. Items []*GroupSummary `locationName:"items" type:"list"` // If the response is truncated, Amazon Q Business returns this token that you // can use in the subsequent request to retrieve the next set of groups that // are mapped to users. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListGroupsOutput) GoString() string { return s.String() } // SetItems sets the Items field's value. func (s *ListGroupsOutput) SetItems(v []*GroupSummary) *ListGroupsOutput { s.Items = v return s } // SetNextToken sets the NextToken field's value. func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput { s.NextToken = &v return s } type ListIndicesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application connected to the index. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of indices to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business indices. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListIndicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListIndicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIndicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIndicesInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListIndicesInput) SetApplicationId(v string) *ListIndicesInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListIndicesInput) SetMaxResults(v int64) *ListIndicesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListIndicesInput) SetNextToken(v string) *ListIndicesInput { s.NextToken = &v return s } type ListIndicesOutput struct { _ struct{} `type:"structure"` // An array of information on the items in one or more indexes. Indices []*Index `locationName:"indices" type:"list"` // If the response is truncated, Amazon Q Business returns this token that you // can use in the subsequent request to retrieve the next set of indexes. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListIndicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListIndicesOutput) GoString() string { return s.String() } // SetIndices sets the Indices field's value. func (s *ListIndicesOutput) SetIndices(v []*Index) *ListIndicesOutput { s.Indices = v return s } // SetNextToken sets the NextToken field's value. func (s *ListIndicesOutput) SetNextToken(v string) *ListIndicesOutput { s.NextToken = &v return s } type ListMessagesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier for the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the Amazon Q Business web experience conversation. // // ConversationId is a required field ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` // The maximum number of messages to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the number of retrievers returned exceeds maxResults, Amazon Q Business // returns a next token as a pagination token to retrieve the next set of messages. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The identifier of the user involved in the Amazon Q Business web experience // conversation. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMessagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMessagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMessagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMessagesInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ConversationId == nil { invalidParams.Add(request.NewErrParamRequired("ConversationId")) } if s.ConversationId != nil && len(*s.ConversationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListMessagesInput) SetApplicationId(v string) *ListMessagesInput { s.ApplicationId = &v return s } // SetConversationId sets the ConversationId field's value. func (s *ListMessagesInput) SetConversationId(v string) *ListMessagesInput { s.ConversationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListMessagesInput) SetMaxResults(v int64) *ListMessagesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListMessagesInput) SetNextToken(v string) *ListMessagesInput { s.NextToken = &v return s } // SetUserId sets the UserId field's value. func (s *ListMessagesInput) SetUserId(v string) *ListMessagesInput { s.UserId = &v return s } type ListMessagesOutput struct { _ struct{} `type:"structure"` // An array of information on one or more messages. Messages []*Message `locationName:"messages" type:"list"` // If the response is truncated, Amazon Q Business returns this token, which // you can use in a later request to list the next set of messages. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMessagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListMessagesOutput) GoString() string { return s.String() } // SetMessages sets the Messages field's value. func (s *ListMessagesOutput) SetMessages(v []*Message) *ListMessagesOutput { s.Messages = v return s } // SetNextToken sets the NextToken field's value. func (s *ListMessagesOutput) SetNextToken(v string) *ListMessagesOutput { s.NextToken = &v return s } type ListPluginsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the application the plugin is attached to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of documents to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of plugins. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListPluginsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListPluginsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPluginsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPluginsInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListPluginsInput) SetApplicationId(v string) *ListPluginsInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListPluginsInput) SetMaxResults(v int64) *ListPluginsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListPluginsInput) SetNextToken(v string) *ListPluginsInput { s.NextToken = &v return s } type ListPluginsOutput struct { _ struct{} `type:"structure"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of plugins. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // Information about a configured plugin. Plugins []*Plugin `locationName:"plugins" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListPluginsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListPluginsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListPluginsOutput) SetNextToken(v string) *ListPluginsOutput { s.NextToken = &v return s } // SetPlugins sets the Plugins field's value. func (s *ListPluginsOutput) SetPlugins(v []*Plugin) *ListPluginsOutput { s.Plugins = v return s } type ListRetrieversInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application using the retriever. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of retrievers returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the number of retrievers returned exceeds maxResults, Amazon Q Business // returns a next token as a pagination token to retrieve the next set of retrievers. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRetrieversInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRetrieversInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRetrieversInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRetrieversInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListRetrieversInput) SetApplicationId(v string) *ListRetrieversInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListRetrieversInput) SetMaxResults(v int64) *ListRetrieversInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListRetrieversInput) SetNextToken(v string) *ListRetrieversInput { s.NextToken = &v return s } type ListRetrieversOutput struct { _ struct{} `type:"structure"` // If the response is truncated, Amazon Q Business returns this token, which // you can use in a later request to list the next set of retrievers. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // An array of summary information for one or more retrievers. Retrievers []*Retriever `locationName:"retrievers" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRetrieversOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListRetrieversOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListRetrieversOutput) SetNextToken(v string) *ListRetrieversOutput { s.NextToken = &v return s } // SetRetrievers sets the Retrievers field's value. func (s *ListRetrieversOutput) SetRetrievers(v []*Retriever) *ListRetrieversOutput { s.Retrievers = v return s } type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The Amazon Resource Name (ARN) of the Amazon Q Business application or data // source to get a list of tags for. // // ResourceARN is a required field ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { s.ResourceARN = &v return s } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A list of tags associated with the Amazon Q Business application or data // source. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceOutput) GoString() string { return s.String() } // SetTags sets the Tags field's value. func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { s.Tags = v return s } type ListWebExperiencesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application linked to the listed // web experiences. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The maximum number of Amazon Q Business Web Experiences to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // If the maxResults response was incomplete because there is more data to retrieve, // Amazon Q Business returns a pagination token in the response. You can use // this pagination token to retrieve the next set of Amazon Q Business conversations. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListWebExperiencesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListWebExperiencesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListWebExperiencesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListWebExperiencesInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *ListWebExperiencesInput) SetApplicationId(v string) *ListWebExperiencesInput { s.ApplicationId = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListWebExperiencesInput) SetMaxResults(v int64) *ListWebExperiencesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListWebExperiencesInput) SetNextToken(v string) *ListWebExperiencesInput { s.NextToken = &v return s } type ListWebExperiencesOutput struct { _ struct{} `type:"structure"` // If the response is truncated, Amazon Q Business returns this token, which // you can use in a later request to list the next set of messages. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // An array of summary information for one or more Amazon Q Business experiences. WebExperiences []*WebExperience `locationName:"webExperiences" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListWebExperiencesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListWebExperiencesOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListWebExperiencesOutput) SetNextToken(v string) *ListWebExperiencesOutput { s.NextToken = &v return s } // SetWebExperiences sets the WebExperiences field's value. func (s *ListWebExperiencesOutput) SetWebExperiences(v []*WebExperience) *ListWebExperiencesOutput { s.WebExperiences = v return s } // The sub groups that belong to a group. type MemberGroup struct { _ struct{} `type:"structure"` // The name of the sub group. // // GroupName is a required field GroupName *string `locationName:"groupName" min:"1" type:"string" required:"true"` // The type of the sub group. Type *string `locationName:"type" type:"string" enum:"MembershipType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MemberGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MemberGroup) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MemberGroup) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MemberGroup"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupName sets the GroupName field's value. func (s *MemberGroup) SetGroupName(v string) *MemberGroup { s.GroupName = &v return s } // SetType sets the Type field's value. func (s *MemberGroup) SetType(v string) *MemberGroup { s.Type = &v return s } // The users that belong to a group. type MemberUser struct { _ struct{} `type:"structure"` // The type of the user. Type *string `locationName:"type" type:"string" enum:"MembershipType"` // The identifier of the user you want to map to a group. // // UserId is a required field UserId *string `locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MemberUser) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MemberUser) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MemberUser) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MemberUser"} if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetType sets the Type field's value. func (s *MemberUser) SetType(v string) *MemberUser { s.Type = &v return s } // SetUserId sets the UserId field's value. func (s *MemberUser) SetUserId(v string) *MemberUser { s.UserId = &v return s } // A message in an Amazon Q Business web experience. type Message struct { _ struct{} `type:"structure"` // An output event that Amazon Q Business returns to an user who wants to perform // a plugin action during a non-streaming chat conversation. It contains information // about the selected action with a list of possible user input fields, some // pre-populated by Amazon Q Business. ActionReview *ActionReview `locationName:"actionReview" type:"structure"` // A file directly uploaded into an Amazon Q Business web experience chat. Attachments []*AttachmentOutput_ `locationName:"attachments" type:"list"` // The content of the Amazon Q Business web experience message. Body *string `locationName:"body" type:"string"` // The identifier of the Amazon Q Business web experience message. MessageId *string `locationName:"messageId" min:"1" type:"string"` // The source documents used to generate Amazon Q Business web experience message. SourceAttribution []*SourceAttribution `locationName:"sourceAttribution" type:"list"` // The timestamp of the first Amazon Q Business web experience message. Time *time.Time `locationName:"time" type:"timestamp"` // The type of Amazon Q Business message, whether HUMAN or AI generated. Type *string `locationName:"type" type:"string" enum:"MessageType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Message) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Message) GoString() string { return s.String() } // SetActionReview sets the ActionReview field's value. func (s *Message) SetActionReview(v *ActionReview) *Message { s.ActionReview = v return s } // SetAttachments sets the Attachments field's value. func (s *Message) SetAttachments(v []*AttachmentOutput_) *Message { s.Attachments = v return s } // SetBody sets the Body field's value. func (s *Message) SetBody(v string) *Message { s.Body = &v return s } // SetMessageId sets the MessageId field's value. func (s *Message) SetMessageId(v string) *Message { s.MessageId = &v return s } // SetSourceAttribution sets the SourceAttribution field's value. func (s *Message) SetSourceAttribution(v []*SourceAttribution) *Message { s.SourceAttribution = v return s } // SetTime sets the Time field's value. func (s *Message) SetTime(v time.Time) *Message { s.Time = &v return s } // SetType sets the Type field's value. func (s *Message) SetType(v string) *Message { s.Type = &v return s } // End user feedback on an AI-generated web experience chat message usefulness. type MessageUsefulnessFeedback struct { _ struct{} `type:"structure"` // A comment given by an end user on the usefulness of an AI-generated chat // message. Comment *string `locationName:"comment" type:"string"` // The reason for a usefulness rating. Reason *string `locationName:"reason" type:"string" enum:"MessageUsefulnessReason"` // The timestamp for when the feedback was submitted. // // SubmittedAt is a required field SubmittedAt *time.Time `locationName:"submittedAt" type:"timestamp" required:"true"` // The usefulness value assigned by an end user to a message. // // Usefulness is a required field Usefulness *string `locationName:"usefulness" type:"string" required:"true" enum:"MessageUsefulness"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MessageUsefulnessFeedback) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MessageUsefulnessFeedback) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MessageUsefulnessFeedback) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MessageUsefulnessFeedback"} if s.SubmittedAt == nil { invalidParams.Add(request.NewErrParamRequired("SubmittedAt")) } if s.Usefulness == nil { invalidParams.Add(request.NewErrParamRequired("Usefulness")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetComment sets the Comment field's value. func (s *MessageUsefulnessFeedback) SetComment(v string) *MessageUsefulnessFeedback { s.Comment = &v return s } // SetReason sets the Reason field's value. func (s *MessageUsefulnessFeedback) SetReason(v string) *MessageUsefulnessFeedback { s.Reason = &v return s } // SetSubmittedAt sets the SubmittedAt field's value. func (s *MessageUsefulnessFeedback) SetSubmittedAt(v time.Time) *MessageUsefulnessFeedback { s.SubmittedAt = &v return s } // SetUsefulness sets the Usefulness field's value. func (s *MessageUsefulnessFeedback) SetUsefulness(v string) *MessageUsefulnessFeedback { s.Usefulness = &v return s } // A metadata event for a AI-generated text output message in a Amazon Q Business // conversation, containing associated metadata generated. type MetadataEvent struct { _ struct{} `type:"structure"` // The identifier of the conversation with which the generated metadata is associated. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // The final text output message generated by the system. FinalTextMessage *string `locationName:"finalTextMessage" min:"1" type:"string"` // The source documents used to generate the conversation response. SourceAttributions []*SourceAttribution `locationName:"sourceAttributions" type:"list"` // The identifier of an Amazon Q Business AI generated message within the conversation. SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` // The identifier of an Amazon Q Business end user text input message within // the conversation. UserMessageId *string `locationName:"userMessageId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MetadataEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s MetadataEvent) GoString() string { return s.String() } // SetConversationId sets the ConversationId field's value. func (s *MetadataEvent) SetConversationId(v string) *MetadataEvent { s.ConversationId = &v return s } // SetFinalTextMessage sets the FinalTextMessage field's value. func (s *MetadataEvent) SetFinalTextMessage(v string) *MetadataEvent { s.FinalTextMessage = &v return s } // SetSourceAttributions sets the SourceAttributions field's value. func (s *MetadataEvent) SetSourceAttributions(v []*SourceAttribution) *MetadataEvent { s.SourceAttributions = v return s } // SetSystemMessageId sets the SystemMessageId field's value. func (s *MetadataEvent) SetSystemMessageId(v string) *MetadataEvent { s.SystemMessageId = &v return s } // SetUserMessageId sets the UserMessageId field's value. func (s *MetadataEvent) SetUserMessageId(v string) *MetadataEvent { s.UserMessageId = &v return s } // The MetadataEvent is and event in the ChatOutputStream group of events. func (s *MetadataEvent) eventChatOutputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the MetadataEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *MetadataEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *MetadataEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // Configuration information for an Amazon Q Business index. type NativeIndexConfiguration struct { _ struct{} `type:"structure"` // Overrides the default boosts applied by Amazon Q Business to supported document // attribute data types. BoostingOverride map[string]*DocumentAttributeBoostingConfiguration `locationName:"boostingOverride" min:"1" type:"map"` // The identifier for the Amazon Q Business index. // // IndexId is a required field IndexId *string `locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NativeIndexConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NativeIndexConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NativeIndexConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NativeIndexConfiguration"} if s.BoostingOverride != nil && len(s.BoostingOverride) < 1 { invalidParams.Add(request.NewErrParamMinLen("BoostingOverride", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.BoostingOverride != nil { for i, v := range s.BoostingOverride { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BoostingOverride", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBoostingOverride sets the BoostingOverride field's value. func (s *NativeIndexConfiguration) SetBoostingOverride(v map[string]*DocumentAttributeBoostingConfiguration) *NativeIndexConfiguration { s.BoostingOverride = v return s } // SetIndexId sets the IndexId field's value. func (s *NativeIndexConfiguration) SetIndexId(v string) *NativeIndexConfiguration { s.IndexId = &v return s } // Information about invoking a custom plugin without any authentication or // authorization requirement. type NoAuthConfiguration struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoAuthConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoAuthConfiguration) GoString() string { return s.String() } // Provides information on boosting NUMBER type document attributes. // // For more information on how boosting document attributes work in Amazon Q // Business, see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). type NumberAttributeBoostingConfiguration struct { _ struct{} `type:"structure"` // Specifies the duration, in seconds, of a boost applies to a NUMBER type document // attribute. // // BoostingLevel is a required field BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` // Specifies how much a document attribute is boosted. BoostingType *string `locationName:"boostingType" type:"string" enum:"NumberAttributeBoostingType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NumberAttributeBoostingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NumberAttributeBoostingConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NumberAttributeBoostingConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NumberAttributeBoostingConfiguration"} if s.BoostingLevel == nil { invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBoostingLevel sets the BoostingLevel field's value. func (s *NumberAttributeBoostingConfiguration) SetBoostingLevel(v string) *NumberAttributeBoostingConfiguration { s.BoostingLevel = &v return s } // SetBoostingType sets the BoostingType field's value. func (s *NumberAttributeBoostingConfiguration) SetBoostingType(v string) *NumberAttributeBoostingConfiguration { s.BoostingType = &v return s } // Information about the OAuth 2.0 authentication credential/token used to configure // a plugin. type OAuth2ClientCredentialConfiguration struct { _ struct{} `type:"structure"` // The ARN of an IAM role used by Amazon Q Business to access the OAuth 2.0 // authentication credentials stored in a Secrets Manager secret. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token // used for plugin configuration. // // SecretArn is a required field SecretArn *string `locationName:"secretArn" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s OAuth2ClientCredentialConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s OAuth2ClientCredentialConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OAuth2ClientCredentialConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OAuth2ClientCredentialConfiguration"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.SecretArn == nil { invalidParams.Add(request.NewErrParamRequired("SecretArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRoleArn sets the RoleArn field's value. func (s *OAuth2ClientCredentialConfiguration) SetRoleArn(v string) *OAuth2ClientCredentialConfiguration { s.RoleArn = &v return s } // SetSecretArn sets the SecretArn field's value. func (s *OAuth2ClientCredentialConfiguration) SetSecretArn(v string) *OAuth2ClientCredentialConfiguration { s.SecretArn = &v return s } // Configuration information about chat response personalization. For more information, // see Personalizing chat responses (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html). type PersonalizationConfiguration struct { _ struct{} `type:"structure"` // An option to allow Amazon Q Business to customize chat responses using user // specific metadata—specifically, location and job information—in your // IAM Identity Center instance. // // PersonalizationControlMode is a required field PersonalizationControlMode *string `locationName:"personalizationControlMode" type:"string" required:"true" enum:"PersonalizationControlMode"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PersonalizationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PersonalizationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PersonalizationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PersonalizationConfiguration"} if s.PersonalizationControlMode == nil { invalidParams.Add(request.NewErrParamRequired("PersonalizationControlMode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPersonalizationControlMode sets the PersonalizationControlMode field's value. func (s *PersonalizationConfiguration) SetPersonalizationControlMode(v string) *PersonalizationConfiguration { s.PersonalizationControlMode = &v return s } // Information about an Amazon Q Business plugin and its configuration. type Plugin struct { _ struct{} `type:"structure"` // The status of the plugin. BuildStatus *string `locationName:"buildStatus" type:"string" enum:"PluginBuildStatus"` // The timestamp for when the plugin was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The name of the plugin. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier of the plugin. PluginId *string `locationName:"pluginId" min:"36" type:"string"` // The plugin server URL used for configuration. ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` // The current status of the plugin. State *string `locationName:"state" type:"string" enum:"PluginState"` // The type of the plugin. Type *string `locationName:"type" type:"string" enum:"PluginType"` // The timestamp for when the plugin was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Plugin) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Plugin) GoString() string { return s.String() } // SetBuildStatus sets the BuildStatus field's value. func (s *Plugin) SetBuildStatus(v string) *Plugin { s.BuildStatus = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *Plugin) SetCreatedAt(v time.Time) *Plugin { s.CreatedAt = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *Plugin) SetDisplayName(v string) *Plugin { s.DisplayName = &v return s } // SetPluginId sets the PluginId field's value. func (s *Plugin) SetPluginId(v string) *Plugin { s.PluginId = &v return s } // SetServerUrl sets the ServerUrl field's value. func (s *Plugin) SetServerUrl(v string) *Plugin { s.ServerUrl = &v return s } // SetState sets the State field's value. func (s *Plugin) SetState(v string) *Plugin { s.State = &v return s } // SetType sets the Type field's value. func (s *Plugin) SetType(v string) *Plugin { s.Type = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *Plugin) SetUpdatedAt(v time.Time) *Plugin { s.UpdatedAt = &v return s } // Authentication configuration information for an Amazon Q Business plugin. type PluginAuthConfiguration struct { _ struct{} `type:"structure"` // Information about the basic authentication credentials used to configure // a plugin. BasicAuthConfiguration *BasicAuthConfiguration `locationName:"basicAuthConfiguration" type:"structure"` // Information about invoking a custom plugin without any authentication. NoAuthConfiguration *NoAuthConfiguration `locationName:"noAuthConfiguration" type:"structure"` // Information about the OAuth 2.0 authentication credential/token used to configure // a plugin. OAuth2ClientCredentialConfiguration *OAuth2ClientCredentialConfiguration `locationName:"oAuth2ClientCredentialConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PluginAuthConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PluginAuthConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PluginAuthConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PluginAuthConfiguration"} if s.BasicAuthConfiguration != nil { if err := s.BasicAuthConfiguration.Validate(); err != nil { invalidParams.AddNested("BasicAuthConfiguration", err.(request.ErrInvalidParams)) } } if s.OAuth2ClientCredentialConfiguration != nil { if err := s.OAuth2ClientCredentialConfiguration.Validate(); err != nil { invalidParams.AddNested("OAuth2ClientCredentialConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBasicAuthConfiguration sets the BasicAuthConfiguration field's value. func (s *PluginAuthConfiguration) SetBasicAuthConfiguration(v *BasicAuthConfiguration) *PluginAuthConfiguration { s.BasicAuthConfiguration = v return s } // SetNoAuthConfiguration sets the NoAuthConfiguration field's value. func (s *PluginAuthConfiguration) SetNoAuthConfiguration(v *NoAuthConfiguration) *PluginAuthConfiguration { s.NoAuthConfiguration = v return s } // SetOAuth2ClientCredentialConfiguration sets the OAuth2ClientCredentialConfiguration field's value. func (s *PluginAuthConfiguration) SetOAuth2ClientCredentialConfiguration(v *OAuth2ClientCredentialConfiguration) *PluginAuthConfiguration { s.OAuth2ClientCredentialConfiguration = v return s } // Configuration information required to invoke chat in PLUGIN_MODE. // // For more information, see Admin controls and guardrails (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html), // Plugins (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/plugins.html), // and Conversation settings (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope). type PluginConfiguration struct { _ struct{} `type:"structure"` // The identifier of the plugin you want to use. // // PluginId is a required field PluginId *string `locationName:"pluginId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PluginConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PluginConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PluginConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PluginConfiguration"} if s.PluginId == nil { invalidParams.Add(request.NewErrParamRequired("PluginId")) } if s.PluginId != nil && len(*s.PluginId) < 36 { invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPluginId sets the PluginId field's value. func (s *PluginConfiguration) SetPluginId(v string) *PluginConfiguration { s.PluginId = &v return s } // Provides user and group information used for filtering documents to use for // generating Amazon Q Business conversation responses. type Principal struct { _ struct{} `type:"structure"` // The group associated with the principal. Group *PrincipalGroup `locationName:"group" type:"structure"` // The user associated with the principal. User *PrincipalUser `locationName:"user" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Principal) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Principal) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Principal) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Principal"} if s.Group != nil { if err := s.Group.Validate(); err != nil { invalidParams.AddNested("Group", err.(request.ErrInvalidParams)) } } if s.User != nil { if err := s.User.Validate(); err != nil { invalidParams.AddNested("User", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroup sets the Group field's value. func (s *Principal) SetGroup(v *PrincipalGroup) *Principal { s.Group = v return s } // SetUser sets the User field's value. func (s *Principal) SetUser(v *PrincipalUser) *Principal { s.User = v return s } // Provides information about a group associated with the principal. type PrincipalGroup struct { _ struct{} `type:"structure"` // Provides information about whether to allow or deny access to the principal. // // Access is a required field Access *string `locationName:"access" type:"string" required:"true" enum:"ReadAccessType"` // The type of group. MembershipType *string `locationName:"membershipType" type:"string" enum:"MembershipType"` // The name of the group. Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrincipalGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrincipalGroup) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PrincipalGroup) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PrincipalGroup"} if s.Access == nil { invalidParams.Add(request.NewErrParamRequired("Access")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccess sets the Access field's value. func (s *PrincipalGroup) SetAccess(v string) *PrincipalGroup { s.Access = &v return s } // SetMembershipType sets the MembershipType field's value. func (s *PrincipalGroup) SetMembershipType(v string) *PrincipalGroup { s.MembershipType = &v return s } // SetName sets the Name field's value. func (s *PrincipalGroup) SetName(v string) *PrincipalGroup { s.Name = &v return s } // Provides information about a user associated with a principal. type PrincipalUser struct { _ struct{} `type:"structure"` // Provides information about whether to allow or deny access to the principal. // // Access is a required field Access *string `locationName:"access" type:"string" required:"true" enum:"ReadAccessType"` // The identifier of the user. Id *string `locationName:"id" min:"1" type:"string"` // The type of group. MembershipType *string `locationName:"membershipType" type:"string" enum:"MembershipType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrincipalUser) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PrincipalUser) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PrincipalUser) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PrincipalUser"} if s.Access == nil { invalidParams.Add(request.NewErrParamRequired("Access")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccess sets the Access field's value. func (s *PrincipalUser) SetAccess(v string) *PrincipalUser { s.Access = &v return s } // SetId sets the Id field's value. func (s *PrincipalUser) SetId(v string) *PrincipalUser { s.Id = &v return s } // SetMembershipType sets the MembershipType field's value. func (s *PrincipalUser) SetMembershipType(v string) *PrincipalUser { s.MembershipType = &v return s } type PutFeedbackInput struct { _ struct{} `type:"structure"` // The identifier of the application associated with the feedback. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the conversation the feedback is attached to. // // ConversationId is a required field ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` // The timestamp for when the feedback was recorded. MessageCopiedAt *time.Time `locationName:"messageCopiedAt" type:"timestamp"` // The identifier of the chat message that the feedback was given for. // // MessageId is a required field MessageId *string `location:"uri" locationName:"messageId" min:"36" type:"string" required:"true"` // The feedback usefulness value given by the user to the chat message. MessageUsefulness *MessageUsefulnessFeedback `locationName:"messageUsefulness" type:"structure"` // The identifier of the user giving the feedback. UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutFeedbackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutFeedbackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutFeedbackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutFeedbackInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ConversationId == nil { invalidParams.Add(request.NewErrParamRequired("ConversationId")) } if s.ConversationId != nil && len(*s.ConversationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) } if s.MessageId == nil { invalidParams.Add(request.NewErrParamRequired("MessageId")) } if s.MessageId != nil && len(*s.MessageId) < 36 { invalidParams.Add(request.NewErrParamMinLen("MessageId", 36)) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if s.MessageUsefulness != nil { if err := s.MessageUsefulness.Validate(); err != nil { invalidParams.AddNested("MessageUsefulness", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *PutFeedbackInput) SetApplicationId(v string) *PutFeedbackInput { s.ApplicationId = &v return s } // SetConversationId sets the ConversationId field's value. func (s *PutFeedbackInput) SetConversationId(v string) *PutFeedbackInput { s.ConversationId = &v return s } // SetMessageCopiedAt sets the MessageCopiedAt field's value. func (s *PutFeedbackInput) SetMessageCopiedAt(v time.Time) *PutFeedbackInput { s.MessageCopiedAt = &v return s } // SetMessageId sets the MessageId field's value. func (s *PutFeedbackInput) SetMessageId(v string) *PutFeedbackInput { s.MessageId = &v return s } // SetMessageUsefulness sets the MessageUsefulness field's value. func (s *PutFeedbackInput) SetMessageUsefulness(v *MessageUsefulnessFeedback) *PutFeedbackInput { s.MessageUsefulness = v return s } // SetUserId sets the UserId field's value. func (s *PutFeedbackInput) SetUserId(v string) *PutFeedbackInput { s.UserId = &v return s } type PutFeedbackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutFeedbackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutFeedbackOutput) GoString() string { return s.String() } type PutGroupInput struct { _ struct{} `type:"structure"` // The identifier of the application in which the user and group mapping belongs. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source for which you want to map users to their // groups. This is useful if a group is tied to multiple data sources, but you // only want the group to access documents of a certain data source. For example, // the groups "Research", "Engineering", and "Sales and Marketing" are all tied // to the company's documents stored in the data sources Confluence and Salesforce. // However, "Sales and Marketing" team only needs access to customer-related // documents stored in Salesforce. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // A list of users or sub groups that belong to a group. This is for generating // Amazon Q Business chat results only from document a user has access to. // // GroupMembers is a required field GroupMembers *GroupMembers `locationName:"groupMembers" type:"structure" required:"true"` // The list that contains your users or sub groups that belong the same group. // For example, the group "Company" includes the user "CEO" and the sub groups // "Research", "Engineering", and "Sales and Marketing". // // If you have more than 1000 users and/or sub groups for a single group, you // need to provide the path to the S3 file that lists your users and sub groups // for a group. Your sub groups can contain more than 1000 users, but the list // of sub groups that belong to a group (and/or users) must be no more than // 1000. // // GroupName is a required field GroupName *string `locationName:"groupName" min:"1" type:"string" required:"true"` // The identifier of the index in which you want to map users to their groups. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The type of the group. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"MembershipType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutGroupInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.GroupMembers == nil { invalidParams.Add(request.NewErrParamRequired("GroupMembers")) } if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.GroupMembers != nil { if err := s.GroupMembers.Validate(); err != nil { invalidParams.AddNested("GroupMembers", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *PutGroupInput) SetApplicationId(v string) *PutGroupInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *PutGroupInput) SetDataSourceId(v string) *PutGroupInput { s.DataSourceId = &v return s } // SetGroupMembers sets the GroupMembers field's value. func (s *PutGroupInput) SetGroupMembers(v *GroupMembers) *PutGroupInput { s.GroupMembers = v return s } // SetGroupName sets the GroupName field's value. func (s *PutGroupInput) SetGroupName(v string) *PutGroupInput { s.GroupName = &v return s } // SetIndexId sets the IndexId field's value. func (s *PutGroupInput) SetIndexId(v string) *PutGroupInput { s.IndexId = &v return s } // SetType sets the Type field's value. func (s *PutGroupInput) SetType(v string) *PutGroupInput { s.Type = &v return s } type PutGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s PutGroupOutput) GoString() string { return s.String() } // Configuration information about Amazon Q Apps. (preview feature) type QAppsConfiguration struct { _ struct{} `type:"structure"` // Status information about whether end users can create and use Amazon Q Apps // in the web experience. // // QAppsControlMode is a required field QAppsControlMode *string `locationName:"qAppsControlMode" type:"string" required:"true" enum:"QAppsControlMode"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s QAppsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s QAppsConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *QAppsConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "QAppsConfiguration"} if s.QAppsControlMode == nil { invalidParams.Add(request.NewErrParamRequired("QAppsControlMode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetQAppsControlMode sets the QAppsControlMode field's value. func (s *QAppsConfiguration) SetQAppsControlMode(v string) *QAppsConfiguration { s.QAppsControlMode = &v return s } // The resource you want to use doesn’t exist. Make sure you have provided // the correct resource and try again. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // The message describing a ResourceNotFoundException. Message_ *string `locationName:"message" min:"1" type:"string"` // The identifier of the resource affected. // // ResourceId is a required field ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` // The type of the resource affected. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) GoString() string { return s.String() } func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { return &ResourceNotFoundException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ResourceNotFoundException) Code() string { return "ResourceNotFoundException" } // Message returns the exception's message. func (s *ResourceNotFoundException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ResourceNotFoundException) OrigErr() error { return nil } func (s *ResourceNotFoundException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ResourceNotFoundException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } // Summary information for the retriever used for your Amazon Q Business application. type Retriever struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application using the retriever. ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` // The name of your retriever. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier of the retriever used by your Amazon Q Business application. RetrieverId *string `locationName:"retrieverId" min:"36" type:"string"` // The status of your retriever. Status *string `locationName:"status" type:"string" enum:"RetrieverStatus"` // The type of your retriever. Type *string `locationName:"type" type:"string" enum:"RetrieverType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Retriever) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Retriever) GoString() string { return s.String() } // SetApplicationId sets the ApplicationId field's value. func (s *Retriever) SetApplicationId(v string) *Retriever { s.ApplicationId = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *Retriever) SetDisplayName(v string) *Retriever { s.DisplayName = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *Retriever) SetRetrieverId(v string) *Retriever { s.RetrieverId = &v return s } // SetStatus sets the Status field's value. func (s *Retriever) SetStatus(v string) *Retriever { s.Status = &v return s } // SetType sets the Type field's value. func (s *Retriever) SetType(v string) *Retriever { s.Type = &v return s } // Provides information on how the retriever used for your Amazon Q Business // application is configured. type RetrieverConfiguration struct { _ struct{} `type:"structure"` // Provides information on how the Amazon Kendra index used as a retriever for // your Amazon Q Business application is configured. KendraIndexConfiguration *KendraIndexConfiguration `locationName:"kendraIndexConfiguration" type:"structure"` // Provides information on how a Amazon Q Business index used as a retriever // for your Amazon Q Business application is configured. NativeIndexConfiguration *NativeIndexConfiguration `locationName:"nativeIndexConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RetrieverConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RetrieverConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetrieverConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetrieverConfiguration"} if s.KendraIndexConfiguration != nil { if err := s.KendraIndexConfiguration.Validate(); err != nil { invalidParams.AddNested("KendraIndexConfiguration", err.(request.ErrInvalidParams)) } } if s.NativeIndexConfiguration != nil { if err := s.NativeIndexConfiguration.Validate(); err != nil { invalidParams.AddNested("NativeIndexConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKendraIndexConfiguration sets the KendraIndexConfiguration field's value. func (s *RetrieverConfiguration) SetKendraIndexConfiguration(v *KendraIndexConfiguration) *RetrieverConfiguration { s.KendraIndexConfiguration = v return s } // SetNativeIndexConfiguration sets the NativeIndexConfiguration field's value. func (s *RetrieverConfiguration) SetNativeIndexConfiguration(v *NativeIndexConfiguration) *RetrieverConfiguration { s.NativeIndexConfiguration = v return s } // Guardrail rules for an Amazon Q Business application. Amazon Q Business supports // only one rule at a time. type Rule struct { _ struct{} `type:"structure"` // Users and groups to be excluded from a rule. ExcludedUsersAndGroups *UsersAndGroups `locationName:"excludedUsersAndGroups" type:"structure"` // Users and groups to be included in a rule. IncludedUsersAndGroups *UsersAndGroups `locationName:"includedUsersAndGroups" type:"structure"` // The configuration information for a rule. RuleConfiguration *RuleConfiguration `locationName:"ruleConfiguration" type:"structure"` // The type of rule. // // RuleType is a required field RuleType *string `locationName:"ruleType" type:"string" required:"true" enum:"RuleType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Rule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Rule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Rule"} if s.RuleType == nil { invalidParams.Add(request.NewErrParamRequired("RuleType")) } if s.RuleConfiguration != nil { if err := s.RuleConfiguration.Validate(); err != nil { invalidParams.AddNested("RuleConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetExcludedUsersAndGroups sets the ExcludedUsersAndGroups field's value. func (s *Rule) SetExcludedUsersAndGroups(v *UsersAndGroups) *Rule { s.ExcludedUsersAndGroups = v return s } // SetIncludedUsersAndGroups sets the IncludedUsersAndGroups field's value. func (s *Rule) SetIncludedUsersAndGroups(v *UsersAndGroups) *Rule { s.IncludedUsersAndGroups = v return s } // SetRuleConfiguration sets the RuleConfiguration field's value. func (s *Rule) SetRuleConfiguration(v *RuleConfiguration) *Rule { s.RuleConfiguration = v return s } // SetRuleType sets the RuleType field's value. func (s *Rule) SetRuleType(v string) *Rule { s.RuleType = &v return s } // Provides configuration information about a rule. type RuleConfiguration struct { _ struct{} `type:"structure"` // A rule for configuring how Amazon Q Business responds when it encounters // a a blocked topic. ContentBlockerRule *ContentBlockerRule `locationName:"contentBlockerRule" type:"structure"` // Rules for retrieving content from data sources connected to a Amazon Q Business // application for a specific topic control configuration. ContentRetrievalRule *ContentRetrievalRule `locationName:"contentRetrievalRule" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RuleConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s RuleConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RuleConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RuleConfiguration"} if s.ContentRetrievalRule != nil { if err := s.ContentRetrievalRule.Validate(); err != nil { invalidParams.AddNested("ContentRetrievalRule", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetContentBlockerRule sets the ContentBlockerRule field's value. func (s *RuleConfiguration) SetContentBlockerRule(v *ContentBlockerRule) *RuleConfiguration { s.ContentBlockerRule = v return s } // SetContentRetrievalRule sets the ContentRetrievalRule field's value. func (s *RuleConfiguration) SetContentRetrievalRule(v *ContentRetrievalRule) *RuleConfiguration { s.ContentRetrievalRule = v return s } // Information required for Amazon Q Business to find a specific file in an // Amazon S3 bucket. type S3 struct { _ struct{} `type:"structure"` // The name of the S3 bucket that contains the file. // // Bucket is a required field Bucket *string `locationName:"bucket" min:"1" type:"string" required:"true"` // The name of the file. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s S3) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBucket sets the Bucket field's value. func (s *S3) SetBucket(v string) *S3 { s.Bucket = &v return s } // SetKey sets the Key field's value. func (s *S3) SetKey(v string) *S3 { s.Key = &v return s } // Provides the SAML 2.0 compliant identity provider (IdP) configuration information // Amazon Q Business needs to deploy a Amazon Q Business web experience. type SamlConfiguration struct { _ struct{} `type:"structure"` // The metadata XML that your IdP generated. // // MetadataXML is a required field MetadataXML *string `locationName:"metadataXML" min:"1000" type:"string" required:"true"` // The Amazon Resource Name (ARN) of an IAM role assumed by users when they // authenticate into their Amazon Q Business web experience, containing the // relevant Amazon Q Business permissions for conversing with Amazon Q Business. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The group attribute name in your IdP that maps to user groups. UserGroupAttribute *string `locationName:"userGroupAttribute" min:"1" type:"string"` // The user attribute name in your IdP that maps to the user email. // // UserIdAttribute is a required field UserIdAttribute *string `locationName:"userIdAttribute" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SamlConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SamlConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SamlConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SamlConfiguration"} if s.MetadataXML == nil { invalidParams.Add(request.NewErrParamRequired("MetadataXML")) } if s.MetadataXML != nil && len(*s.MetadataXML) < 1000 { invalidParams.Add(request.NewErrParamMinLen("MetadataXML", 1000)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.UserGroupAttribute != nil && len(*s.UserGroupAttribute) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserGroupAttribute", 1)) } if s.UserIdAttribute == nil { invalidParams.Add(request.NewErrParamRequired("UserIdAttribute")) } if s.UserIdAttribute != nil && len(*s.UserIdAttribute) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserIdAttribute", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMetadataXML sets the MetadataXML field's value. func (s *SamlConfiguration) SetMetadataXML(v string) *SamlConfiguration { s.MetadataXML = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *SamlConfiguration) SetRoleArn(v string) *SamlConfiguration { s.RoleArn = &v return s } // SetUserGroupAttribute sets the UserGroupAttribute field's value. func (s *SamlConfiguration) SetUserGroupAttribute(v string) *SamlConfiguration { s.UserGroupAttribute = &v return s } // SetUserIdAttribute sets the UserIdAttribute field's value. func (s *SamlConfiguration) SetUserIdAttribute(v string) *SamlConfiguration { s.UserIdAttribute = &v return s } // You have exceeded the set limits for your Amazon Q Business service. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // The message describing a ServiceQuotaExceededException. Message_ *string `locationName:"message" min:"1" type:"string"` // The identifier of the resource affected. // // ResourceId is a required field ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` // The type of the resource affected. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ServiceQuotaExceededException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ServiceQuotaExceededException) GoString() string { return s.String() } func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { return &ServiceQuotaExceededException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ServiceQuotaExceededException) Code() string { return "ServiceQuotaExceededException" } // Message returns the exception's message. func (s *ServiceQuotaExceededException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ServiceQuotaExceededException) OrigErr() error { return nil } func (s *ServiceQuotaExceededException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ServiceQuotaExceededException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ServiceQuotaExceededException) RequestID() string { return s.RespMetadata.RequestID } // Contains the relevant text excerpt from a source that was used to generate // a citation text segment in an Amazon Q Business chat response. type SnippetExcerpt struct { _ struct{} `type:"structure"` // The relevant text excerpt from a source that was used to generate a citation // text segment in an Amazon Q chat response. Text *string `locationName:"text" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SnippetExcerpt) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SnippetExcerpt) GoString() string { return s.String() } // SetText sets the Text field's value. func (s *SnippetExcerpt) SetText(v string) *SnippetExcerpt { s.Text = &v return s } // The documents used to generate an Amazon Q Business web experience response. type SourceAttribution struct { _ struct{} `type:"structure"` // The number attached to a citation in an Amazon Q Business generated response. CitationNumber *int64 `locationName:"citationNumber" type:"integer"` // The content extract from the document on which the generated response is // based. Snippet *string `locationName:"snippet" min:"1" type:"string"` // A text extract from a source document that is used for source attribution. TextMessageSegments []*TextSegment `locationName:"textMessageSegments" type:"list"` // The title of the document which is the source for the Amazon Q Business generated // response. Title *string `locationName:"title" min:"1" type:"string"` // The Unix timestamp when the Amazon Q Business application was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` // The URL of the document which is the source for the Amazon Q Business generated // response. Url *string `locationName:"url" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SourceAttribution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SourceAttribution) GoString() string { return s.String() } // SetCitationNumber sets the CitationNumber field's value. func (s *SourceAttribution) SetCitationNumber(v int64) *SourceAttribution { s.CitationNumber = &v return s } // SetSnippet sets the Snippet field's value. func (s *SourceAttribution) SetSnippet(v string) *SourceAttribution { s.Snippet = &v return s } // SetTextMessageSegments sets the TextMessageSegments field's value. func (s *SourceAttribution) SetTextMessageSegments(v []*TextSegment) *SourceAttribution { s.TextMessageSegments = v return s } // SetTitle sets the Title field's value. func (s *SourceAttribution) SetTitle(v string) *SourceAttribution { s.Title = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *SourceAttribution) SetUpdatedAt(v time.Time) *SourceAttribution { s.UpdatedAt = &v return s } // SetUrl sets the Url field's value. func (s *SourceAttribution) SetUrl(v string) *SourceAttribution { s.Url = &v return s } type StartDataSourceSyncJobInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of Amazon Q Business application the data source is connected // to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The identifier of the index used with the data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StartDataSourceSyncJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StartDataSourceSyncJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartDataSourceSyncJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartDataSourceSyncJobInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *StartDataSourceSyncJobInput) SetApplicationId(v string) *StartDataSourceSyncJobInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *StartDataSourceSyncJobInput) SetDataSourceId(v string) *StartDataSourceSyncJobInput { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *StartDataSourceSyncJobInput) SetIndexId(v string) *StartDataSourceSyncJobInput { s.IndexId = &v return s } type StartDataSourceSyncJobOutput struct { _ struct{} `type:"structure"` // The identifier for a particular synchronization job. ExecutionId *string `locationName:"executionId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StartDataSourceSyncJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StartDataSourceSyncJobOutput) GoString() string { return s.String() } // SetExecutionId sets the ExecutionId field's value. func (s *StartDataSourceSyncJobOutput) SetExecutionId(v string) *StartDataSourceSyncJobOutput { s.ExecutionId = &v return s } type StopDataSourceSyncJobInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the Amazon Q Business application that the data source // is connected to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The identifier of the index used with the Amazon Q Business data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StopDataSourceSyncJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StopDataSourceSyncJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopDataSourceSyncJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopDataSourceSyncJobInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *StopDataSourceSyncJobInput) SetApplicationId(v string) *StopDataSourceSyncJobInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *StopDataSourceSyncJobInput) SetDataSourceId(v string) *StopDataSourceSyncJobInput { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *StopDataSourceSyncJobInput) SetIndexId(v string) *StopDataSourceSyncJobInput { s.IndexId = &v return s } type StopDataSourceSyncJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StopDataSourceSyncJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StopDataSourceSyncJobOutput) GoString() string { return s.String() } // Provides information on boosting STRING type document attributes. // // For STRING and STRING_LIST type document attributes to be used for boosting // on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) // object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) // API. If you haven't enabled searching on these attributes, you can't boost // attributes of these data types on either the console or the API. // // For more information on how boosting document attributes work in Amazon Q // Business, see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). type StringAttributeBoostingConfiguration struct { _ struct{} `type:"structure"` // Specifies specific values of a STRING type document attribute being boosted. AttributeValueBoosting map[string]*string `locationName:"attributeValueBoosting" min:"1" type:"map"` // Specifies how much a document attribute is boosted. // // BoostingLevel is a required field BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StringAttributeBoostingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StringAttributeBoostingConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StringAttributeBoostingConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StringAttributeBoostingConfiguration"} if s.AttributeValueBoosting != nil && len(s.AttributeValueBoosting) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeValueBoosting", 1)) } if s.BoostingLevel == nil { invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttributeValueBoosting sets the AttributeValueBoosting field's value. func (s *StringAttributeBoostingConfiguration) SetAttributeValueBoosting(v map[string]*string) *StringAttributeBoostingConfiguration { s.AttributeValueBoosting = v return s } // SetBoostingLevel sets the BoostingLevel field's value. func (s *StringAttributeBoostingConfiguration) SetBoostingLevel(v string) *StringAttributeBoostingConfiguration { s.BoostingLevel = &v return s } // Provides information on boosting STRING_LIST type document attributes. // // For STRING and STRING_LIST type document attributes to be used for boosting // on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) // object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) // API. If you haven't enabled searching on these attributes, you can't boost // attributes of these data types on either the console or the API. // // For more information on how boosting document attributes work in Amazon Q // Business, see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). type StringListAttributeBoostingConfiguration struct { _ struct{} `type:"structure"` // Specifies how much a document attribute is boosted. // // BoostingLevel is a required field BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StringListAttributeBoostingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s StringListAttributeBoostingConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StringListAttributeBoostingConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StringListAttributeBoostingConfiguration"} if s.BoostingLevel == nil { invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBoostingLevel sets the BoostingLevel field's value. func (s *StringListAttributeBoostingConfiguration) SetBoostingLevel(v string) *StringListAttributeBoostingConfiguration { s.BoostingLevel = &v return s } // A list of key/value pairs that identify an index, FAQ, or data source. Tag // keys and values can consist of Unicode letters, digits, white space, and // any of the following symbols: _ . : / = + - @. type Tag struct { _ struct{} `type:"structure"` // The key for the tag. Keys are not case sensitive and must be unique for the // Amazon Q Business application or data source. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The value associated with the tag. The value may be an empty string but it // can't be null. // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *Tag) SetKey(v string) *Tag { s.Key = &v return s } // SetValue sets the Value field's value. func (s *Tag) SetValue(v string) *Tag { s.Value = &v return s } type TagResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Amazon Q Business application or data // source to tag. // // ResourceARN is a required field ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` // A list of tag keys to add to the Amazon Q Business application or data source. // If a tag already exists, the existing value is replaced with the new value. // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { s.ResourceARN = &v return s } // SetTags sets the Tags field's value. func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { s.Tags = v return s } type TagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceOutput) GoString() string { return s.String() } // Provides information about text documents in an index. type TextDocumentStatistics struct { _ struct{} `type:"structure"` // The total size, in bytes, of the indexed documents. IndexedTextBytes *int64 `locationName:"indexedTextBytes" type:"long"` // The number of text documents indexed. IndexedTextDocumentCount *int64 `locationName:"indexedTextDocumentCount" type:"integer"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextDocumentStatistics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextDocumentStatistics) GoString() string { return s.String() } // SetIndexedTextBytes sets the IndexedTextBytes field's value. func (s *TextDocumentStatistics) SetIndexedTextBytes(v int64) *TextDocumentStatistics { s.IndexedTextBytes = &v return s } // SetIndexedTextDocumentCount sets the IndexedTextDocumentCount field's value. func (s *TextDocumentStatistics) SetIndexedTextDocumentCount(v int64) *TextDocumentStatistics { s.IndexedTextDocumentCount = &v return s } // An input event for a end user message in an Amazon Q Business web experience. type TextInputEvent struct { _ struct{} `type:"structure"` // A user message in a text message input event. // // UserMessage is a required field UserMessage *string `locationName:"userMessage" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextInputEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextInputEvent) GoString() string { return s.String() } // SetUserMessage sets the UserMessage field's value. func (s *TextInputEvent) SetUserMessage(v string) *TextInputEvent { s.UserMessage = &v return s } // The TextInputEvent is and event in the ChatInputStream group of events. func (s *TextInputEvent) eventChatInputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the TextInputEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *TextInputEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *TextInputEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // An output event for an AI-generated response in an Amazon Q Business web // experience. type TextOutputEvent struct { _ struct{} `type:"structure"` // The identifier of the conversation with which the text output event is associated. ConversationId *string `locationName:"conversationId" min:"36" type:"string"` // An AI-generated message in a TextOutputEvent. SystemMessage *string `locationName:"systemMessage" min:"1" type:"string"` // The identifier of an AI-generated message in a TextOutputEvent. SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` // The identifier of an end user message in a TextOutputEvent. UserMessageId *string `locationName:"userMessageId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextOutputEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextOutputEvent) GoString() string { return s.String() } // SetConversationId sets the ConversationId field's value. func (s *TextOutputEvent) SetConversationId(v string) *TextOutputEvent { s.ConversationId = &v return s } // SetSystemMessage sets the SystemMessage field's value. func (s *TextOutputEvent) SetSystemMessage(v string) *TextOutputEvent { s.SystemMessage = &v return s } // SetSystemMessageId sets the SystemMessageId field's value. func (s *TextOutputEvent) SetSystemMessageId(v string) *TextOutputEvent { s.SystemMessageId = &v return s } // SetUserMessageId sets the UserMessageId field's value. func (s *TextOutputEvent) SetUserMessageId(v string) *TextOutputEvent { s.UserMessageId = &v return s } // The TextOutputEvent is and event in the ChatOutputStream group of events. func (s *TextOutputEvent) eventChatOutputStream() {} // UnmarshalEvent unmarshals the EventStream Message into the TextOutputEvent value. // This method is only used internally within the SDK's EventStream handling. func (s *TextOutputEvent) UnmarshalEvent( payloadUnmarshaler protocol.PayloadUnmarshaler, msg eventstream.Message, ) error { if err := payloadUnmarshaler.UnmarshalPayload( bytes.NewReader(msg.Payload), s, ); err != nil { return err } return nil } // MarshalEvent marshals the type into an stream event value. This method // should only used internally within the SDK's EventStream handling. func (s *TextOutputEvent) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) var buf bytes.Buffer if err = pm.MarshalPayload(&buf, s); err != nil { return eventstream.Message{}, err } msg.Payload = buf.Bytes() return msg, err } // Provides information about a text extract in a chat response that can be // attributed to a source document. type TextSegment struct { _ struct{} `type:"structure"` // The zero-based location in the response string where the source attribution // starts. BeginOffset *int64 `locationName:"beginOffset" type:"integer"` // The zero-based location in the response string where the source attribution // ends. EndOffset *int64 `locationName:"endOffset" type:"integer"` // The relevant text excerpt from a source that was used to generate a citation // text segment in an Amazon Q Business chat response. SnippetExcerpt *SnippetExcerpt `locationName:"snippetExcerpt" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextSegment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TextSegment) GoString() string { return s.String() } // SetBeginOffset sets the BeginOffset field's value. func (s *TextSegment) SetBeginOffset(v int64) *TextSegment { s.BeginOffset = &v return s } // SetEndOffset sets the EndOffset field's value. func (s *TextSegment) SetEndOffset(v int64) *TextSegment { s.EndOffset = &v return s } // SetSnippetExcerpt sets the SnippetExcerpt field's value. func (s *TextSegment) SetSnippetExcerpt(v *SnippetExcerpt) *TextSegment { s.SnippetExcerpt = v return s } // The request was denied due to throttling. Reduce the number of requests and // try again. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ThrottlingException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ThrottlingException) GoString() string { return s.String() } func newErrorThrottlingException(v protocol.ResponseMetadata) error { return &ThrottlingException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ThrottlingException) Code() string { return "ThrottlingException" } // Message returns the exception's message. func (s *ThrottlingException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ThrottlingException) OrigErr() error { return nil } func (s *ThrottlingException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *ThrottlingException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ThrottlingException) RequestID() string { return s.RespMetadata.RequestID } // The topic specific controls configured for an Amazon Q Business application. type TopicConfiguration struct { _ struct{} `type:"structure"` // A description for your topic control configuration. Use this to outline how // the large language model (LLM) should use this topic control configuration. Description *string `locationName:"description" type:"string"` // A list of example phrases that you expect the end user to use in relation // to the topic. ExampleChatMessages []*string `locationName:"exampleChatMessages" type:"list"` // A name for your topic control configuration. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Rules defined for a topic configuration. // // Rules is a required field Rules []*Rule `locationName:"rules" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TopicConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TopicConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TopicConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TopicConfiguration"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDescription sets the Description field's value. func (s *TopicConfiguration) SetDescription(v string) *TopicConfiguration { s.Description = &v return s } // SetExampleChatMessages sets the ExampleChatMessages field's value. func (s *TopicConfiguration) SetExampleChatMessages(v []*string) *TopicConfiguration { s.ExampleChatMessages = v return s } // SetName sets the Name field's value. func (s *TopicConfiguration) SetName(v string) *TopicConfiguration { s.Name = &v return s } // SetRules sets the Rules field's value. func (s *TopicConfiguration) SetRules(v []*Rule) *TopicConfiguration { s.Rules = v return s } type UntagResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The Amazon Resource Name (ARN) of the Amazon Q Business application, or data // source to remove the tag from. // // ResourceARN is a required field ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` // A list of tag keys to remove from the Amazon Q Business application or data // source. If a tag key does not exist on the resource, it is ignored. // // TagKeys is a required field TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UntagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { s.ResourceARN = &v return s } // SetTagKeys sets the TagKeys field's value. func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { s.TagKeys = v return s } type UntagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceOutput) GoString() string { return s.String() } type UpdateApplicationInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // An option to allow end users to upload files directly during chat. AttachmentsConfiguration *AttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` // A description for the Amazon Q Business application. Description *string `locationName:"description" type:"string"` // A name for the Amazon Q Business application. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the IAM Identity Center instance you are // either creating for—or connecting to—your Amazon Q Business application. IdentityCenterInstanceArn *string `locationName:"identityCenterInstanceArn" min:"10" type:"string"` // Configuration information about chat response personalization. For more information, // see Personalizing chat responses (https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html). PersonalizationConfiguration *PersonalizationConfiguration `locationName:"personalizationConfiguration" type:"structure"` // An option to allow end users to create and use Amazon Q Apps in the web experience. QAppsConfiguration *QAppsConfiguration `locationName:"qAppsConfiguration" type:"structure"` // An Amazon Web Services Identity and Access Management (IAM) role that gives // Amazon Q Business permission to access Amazon CloudWatch logs and metrics. RoleArn *string `locationName:"roleArn" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.IdentityCenterInstanceArn != nil && len(*s.IdentityCenterInstanceArn) < 10 { invalidParams.Add(request.NewErrParamMinLen("IdentityCenterInstanceArn", 10)) } if s.AttachmentsConfiguration != nil { if err := s.AttachmentsConfiguration.Validate(); err != nil { invalidParams.AddNested("AttachmentsConfiguration", err.(request.ErrInvalidParams)) } } if s.PersonalizationConfiguration != nil { if err := s.PersonalizationConfiguration.Validate(); err != nil { invalidParams.AddNested("PersonalizationConfiguration", err.(request.ErrInvalidParams)) } } if s.QAppsConfiguration != nil { if err := s.QAppsConfiguration.Validate(); err != nil { invalidParams.AddNested("QAppsConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateApplicationInput) SetApplicationId(v string) *UpdateApplicationInput { s.ApplicationId = &v return s } // SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. func (s *UpdateApplicationInput) SetAttachmentsConfiguration(v *AttachmentsConfiguration) *UpdateApplicationInput { s.AttachmentsConfiguration = v return s } // SetDescription sets the Description field's value. func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *UpdateApplicationInput) SetDisplayName(v string) *UpdateApplicationInput { s.DisplayName = &v return s } // SetIdentityCenterInstanceArn sets the IdentityCenterInstanceArn field's value. func (s *UpdateApplicationInput) SetIdentityCenterInstanceArn(v string) *UpdateApplicationInput { s.IdentityCenterInstanceArn = &v return s } // SetPersonalizationConfiguration sets the PersonalizationConfiguration field's value. func (s *UpdateApplicationInput) SetPersonalizationConfiguration(v *PersonalizationConfiguration) *UpdateApplicationInput { s.PersonalizationConfiguration = v return s } // SetQAppsConfiguration sets the QAppsConfiguration field's value. func (s *UpdateApplicationInput) SetQAppsConfiguration(v *QAppsConfiguration) *UpdateApplicationInput { s.QAppsConfiguration = v return s } // SetRoleArn sets the RoleArn field's value. func (s *UpdateApplicationInput) SetRoleArn(v string) *UpdateApplicationInput { s.RoleArn = &v return s } type UpdateApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateApplicationOutput) GoString() string { return s.String() } type UpdateChatControlsConfigurationInput struct { _ struct{} `type:"structure"` // The identifier of the application for which the chat controls are configured. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The phrases blocked from chat by your chat control configuration. BlockedPhrasesConfigurationUpdate *BlockedPhrasesConfigurationUpdate `locationName:"blockedPhrasesConfigurationUpdate" type:"structure"` // A token that you provide to identify the request to update a Amazon Q Business // application chat configuration. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The configuration details for CREATOR_MODE. CreatorModeConfiguration *CreatorModeConfiguration `locationName:"creatorModeConfiguration" type:"structure"` // The response scope configured for your application. This determines whether // your application uses its retrieval augmented generation (RAG) system to // generate answers only from your enterprise data, or also uses the large language // models (LLM) knowledge to respons to end user questions in chat. ResponseScope *string `locationName:"responseScope" type:"string" enum:"ResponseScope"` // The configured topic specific chat controls you want to update. TopicConfigurationsToCreateOrUpdate []*TopicConfiguration `locationName:"topicConfigurationsToCreateOrUpdate" type:"list"` // The configured topic specific chat controls you want to delete. TopicConfigurationsToDelete []*TopicConfiguration `locationName:"topicConfigurationsToDelete" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateChatControlsConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateChatControlsConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateChatControlsConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateChatControlsConfigurationInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.CreatorModeConfiguration != nil { if err := s.CreatorModeConfiguration.Validate(); err != nil { invalidParams.AddNested("CreatorModeConfiguration", err.(request.ErrInvalidParams)) } } if s.TopicConfigurationsToCreateOrUpdate != nil { for i, v := range s.TopicConfigurationsToCreateOrUpdate { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurationsToCreateOrUpdate", i), err.(request.ErrInvalidParams)) } } } if s.TopicConfigurationsToDelete != nil { for i, v := range s.TopicConfigurationsToDelete { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurationsToDelete", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateChatControlsConfigurationInput) SetApplicationId(v string) *UpdateChatControlsConfigurationInput { s.ApplicationId = &v return s } // SetBlockedPhrasesConfigurationUpdate sets the BlockedPhrasesConfigurationUpdate field's value. func (s *UpdateChatControlsConfigurationInput) SetBlockedPhrasesConfigurationUpdate(v *BlockedPhrasesConfigurationUpdate) *UpdateChatControlsConfigurationInput { s.BlockedPhrasesConfigurationUpdate = v return s } // SetClientToken sets the ClientToken field's value. func (s *UpdateChatControlsConfigurationInput) SetClientToken(v string) *UpdateChatControlsConfigurationInput { s.ClientToken = &v return s } // SetCreatorModeConfiguration sets the CreatorModeConfiguration field's value. func (s *UpdateChatControlsConfigurationInput) SetCreatorModeConfiguration(v *CreatorModeConfiguration) *UpdateChatControlsConfigurationInput { s.CreatorModeConfiguration = v return s } // SetResponseScope sets the ResponseScope field's value. func (s *UpdateChatControlsConfigurationInput) SetResponseScope(v string) *UpdateChatControlsConfigurationInput { s.ResponseScope = &v return s } // SetTopicConfigurationsToCreateOrUpdate sets the TopicConfigurationsToCreateOrUpdate field's value. func (s *UpdateChatControlsConfigurationInput) SetTopicConfigurationsToCreateOrUpdate(v []*TopicConfiguration) *UpdateChatControlsConfigurationInput { s.TopicConfigurationsToCreateOrUpdate = v return s } // SetTopicConfigurationsToDelete sets the TopicConfigurationsToDelete field's value. func (s *UpdateChatControlsConfigurationInput) SetTopicConfigurationsToDelete(v []*TopicConfiguration) *UpdateChatControlsConfigurationInput { s.TopicConfigurationsToDelete = v return s } type UpdateChatControlsConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateChatControlsConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateChatControlsConfigurationOutput) GoString() string { return s.String() } type UpdateDataSourceInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application the data source is attached // to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The identifier of the data source connector. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` // The description of the data source connector. Description *string `locationName:"description" type:"string"` // A name of the data source connector. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // Provides the configuration information for altering document metadata and // content during the document ingestion process. // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` // The identifier of the index attached to the data source connector. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` // The Amazon Resource Name (ARN) of an IAM role with permission to access the // data source and required resources. RoleArn *string `locationName:"roleArn" type:"string"` // The chosen update frequency for your data source. SyncSchedule *string `locationName:"syncSchedule" type:"string"` // Provides configuration information needed to connect to an Amazon VPC (Virtual // Private Cloud). VpcConfiguration *DataSourceVpcConfiguration `locationName:"vpcConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.DocumentEnrichmentConfiguration != nil { if err := s.DocumentEnrichmentConfiguration.Validate(); err != nil { invalidParams.AddNested("DocumentEnrichmentConfiguration", err.(request.ErrInvalidParams)) } } if s.VpcConfiguration != nil { if err := s.VpcConfiguration.Validate(); err != nil { invalidParams.AddNested("VpcConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateDataSourceInput) SetApplicationId(v string) *UpdateDataSourceInput { s.ApplicationId = &v return s } // SetDataSourceId sets the DataSourceId field's value. func (s *UpdateDataSourceInput) SetDataSourceId(v string) *UpdateDataSourceInput { s.DataSourceId = &v return s } // SetDescription sets the Description field's value. func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *UpdateDataSourceInput) SetDisplayName(v string) *UpdateDataSourceInput { s.DisplayName = &v return s } // SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. func (s *UpdateDataSourceInput) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *UpdateDataSourceInput { s.DocumentEnrichmentConfiguration = v return s } // SetIndexId sets the IndexId field's value. func (s *UpdateDataSourceInput) SetIndexId(v string) *UpdateDataSourceInput { s.IndexId = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *UpdateDataSourceInput) SetRoleArn(v string) *UpdateDataSourceInput { s.RoleArn = &v return s } // SetSyncSchedule sets the SyncSchedule field's value. func (s *UpdateDataSourceInput) SetSyncSchedule(v string) *UpdateDataSourceInput { s.SyncSchedule = &v return s } // SetVpcConfiguration sets the VpcConfiguration field's value. func (s *UpdateDataSourceInput) SetVpcConfiguration(v *DataSourceVpcConfiguration) *UpdateDataSourceInput { s.VpcConfiguration = v return s } type UpdateDataSourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateDataSourceOutput) GoString() string { return s.String() } type UpdateIndexInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application connected to the index. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The storage capacity units you want to provision for your Amazon Q Business // index. You can add and remove capacity to fit your usage needs. CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` // The description of the Amazon Q Business index. Description *string `locationName:"description" type:"string"` // The name of the Amazon Q Business index. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // Configuration information for document metadata or fields. Document metadata // are fields or attributes associated with your documents. For example, the // company department name associated with each document. For more information, // see Understanding document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes). DocumentAttributeConfigurations []*DocumentAttributeConfiguration `locationName:"documentAttributeConfigurations" min:"1" type:"list"` // The identifier of the Amazon Q Business index. // // IndexId is a required field IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateIndexInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateIndexInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateIndexInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateIndexInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.DocumentAttributeConfigurations != nil && len(s.DocumentAttributeConfigurations) < 1 { invalidParams.Add(request.NewErrParamMinLen("DocumentAttributeConfigurations", 1)) } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.CapacityConfiguration != nil { if err := s.CapacityConfiguration.Validate(); err != nil { invalidParams.AddNested("CapacityConfiguration", err.(request.ErrInvalidParams)) } } if s.DocumentAttributeConfigurations != nil { for i, v := range s.DocumentAttributeConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentAttributeConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateIndexInput) SetApplicationId(v string) *UpdateIndexInput { s.ApplicationId = &v return s } // SetCapacityConfiguration sets the CapacityConfiguration field's value. func (s *UpdateIndexInput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *UpdateIndexInput { s.CapacityConfiguration = v return s } // SetDescription sets the Description field's value. func (s *UpdateIndexInput) SetDescription(v string) *UpdateIndexInput { s.Description = &v return s } // SetDisplayName sets the DisplayName field's value. func (s *UpdateIndexInput) SetDisplayName(v string) *UpdateIndexInput { s.DisplayName = &v return s } // SetDocumentAttributeConfigurations sets the DocumentAttributeConfigurations field's value. func (s *UpdateIndexInput) SetDocumentAttributeConfigurations(v []*DocumentAttributeConfiguration) *UpdateIndexInput { s.DocumentAttributeConfigurations = v return s } // SetIndexId sets the IndexId field's value. func (s *UpdateIndexInput) SetIndexId(v string) *UpdateIndexInput { s.IndexId = &v return s } type UpdateIndexOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateIndexOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateIndexOutput) GoString() string { return s.String() } type UpdatePluginInput struct { _ struct{} `type:"structure"` // The identifier of the application the plugin is attached to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The authentication configuration the plugin is using. AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure"` // The configuration for a custom plugin. CustomPluginConfiguration *CustomPluginConfiguration `locationName:"customPluginConfiguration" type:"structure"` // The name of the plugin. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier of the plugin. // // PluginId is a required field PluginId *string `location:"uri" locationName:"pluginId" min:"36" type:"string" required:"true"` // The source URL used for plugin configuration. ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` // The status of the plugin. State *string `locationName:"state" type:"string" enum:"PluginState"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdatePluginInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdatePluginInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePluginInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePluginInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.PluginId == nil { invalidParams.Add(request.NewErrParamRequired("PluginId")) } if s.PluginId != nil && len(*s.PluginId) < 36 { invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) } if s.ServerUrl != nil && len(*s.ServerUrl) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerUrl", 1)) } if s.AuthConfiguration != nil { if err := s.AuthConfiguration.Validate(); err != nil { invalidParams.AddNested("AuthConfiguration", err.(request.ErrInvalidParams)) } } if s.CustomPluginConfiguration != nil { if err := s.CustomPluginConfiguration.Validate(); err != nil { invalidParams.AddNested("CustomPluginConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdatePluginInput) SetApplicationId(v string) *UpdatePluginInput { s.ApplicationId = &v return s } // SetAuthConfiguration sets the AuthConfiguration field's value. func (s *UpdatePluginInput) SetAuthConfiguration(v *PluginAuthConfiguration) *UpdatePluginInput { s.AuthConfiguration = v return s } // SetCustomPluginConfiguration sets the CustomPluginConfiguration field's value. func (s *UpdatePluginInput) SetCustomPluginConfiguration(v *CustomPluginConfiguration) *UpdatePluginInput { s.CustomPluginConfiguration = v return s } // SetDisplayName sets the DisplayName field's value. func (s *UpdatePluginInput) SetDisplayName(v string) *UpdatePluginInput { s.DisplayName = &v return s } // SetPluginId sets the PluginId field's value. func (s *UpdatePluginInput) SetPluginId(v string) *UpdatePluginInput { s.PluginId = &v return s } // SetServerUrl sets the ServerUrl field's value. func (s *UpdatePluginInput) SetServerUrl(v string) *UpdatePluginInput { s.ServerUrl = &v return s } // SetState sets the State field's value. func (s *UpdatePluginInput) SetState(v string) *UpdatePluginInput { s.State = &v return s } type UpdatePluginOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdatePluginOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdatePluginOutput) GoString() string { return s.String() } type UpdateRetrieverInput struct { _ struct{} `type:"structure"` // The identifier of your Amazon Q Business application. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // Provides information on how the retriever used for your Amazon Q Business // application is configured. Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure"` // The name of your retriever. DisplayName *string `locationName:"displayName" min:"1" type:"string"` // The identifier of your retriever. // // RetrieverId is a required field RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" type:"string" required:"true"` // The Amazon Resource Name (ARN) of an IAM role with permission to access the // retriever and required resources. RoleArn *string `locationName:"roleArn" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateRetrieverInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateRetrieverInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRetrieverInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRetrieverInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.DisplayName != nil && len(*s.DisplayName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) } if s.RetrieverId == nil { invalidParams.Add(request.NewErrParamRequired("RetrieverId")) } if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) } if s.Configuration != nil { if err := s.Configuration.Validate(); err != nil { invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateRetrieverInput) SetApplicationId(v string) *UpdateRetrieverInput { s.ApplicationId = &v return s } // SetConfiguration sets the Configuration field's value. func (s *UpdateRetrieverInput) SetConfiguration(v *RetrieverConfiguration) *UpdateRetrieverInput { s.Configuration = v return s } // SetDisplayName sets the DisplayName field's value. func (s *UpdateRetrieverInput) SetDisplayName(v string) *UpdateRetrieverInput { s.DisplayName = &v return s } // SetRetrieverId sets the RetrieverId field's value. func (s *UpdateRetrieverInput) SetRetrieverId(v string) *UpdateRetrieverInput { s.RetrieverId = &v return s } // SetRoleArn sets the RoleArn field's value. func (s *UpdateRetrieverInput) SetRoleArn(v string) *UpdateRetrieverInput { s.RoleArn = &v return s } type UpdateRetrieverOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateRetrieverOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateRetrieverOutput) GoString() string { return s.String() } type UpdateUserInput struct { _ struct{} `type:"structure"` // The identifier of the application the user is attached to. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The user aliases attached to the user id that are to be deleted. UserAliasesToDelete []*UserAlias `locationName:"userAliasesToDelete" type:"list"` // The user aliases attached to the user id that are to be updated. UserAliasesToUpdate []*UserAlias `locationName:"userAliasesToUpdate" type:"list"` // The email id attached to the user. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if s.UserAliasesToDelete != nil { for i, v := range s.UserAliasesToDelete { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliasesToDelete", i), err.(request.ErrInvalidParams)) } } } if s.UserAliasesToUpdate != nil { for i, v := range s.UserAliasesToUpdate { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliasesToUpdate", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateUserInput) SetApplicationId(v string) *UpdateUserInput { s.ApplicationId = &v return s } // SetUserAliasesToDelete sets the UserAliasesToDelete field's value. func (s *UpdateUserInput) SetUserAliasesToDelete(v []*UserAlias) *UpdateUserInput { s.UserAliasesToDelete = v return s } // SetUserAliasesToUpdate sets the UserAliasesToUpdate field's value. func (s *UpdateUserInput) SetUserAliasesToUpdate(v []*UserAlias) *UpdateUserInput { s.UserAliasesToUpdate = v return s } // SetUserId sets the UserId field's value. func (s *UpdateUserInput) SetUserId(v string) *UpdateUserInput { s.UserId = &v return s } type UpdateUserOutput struct { _ struct{} `type:"structure"` // The user aliases that have been to be added to a user id. UserAliasesAdded []*UserAlias `locationName:"userAliasesAdded" type:"list"` // The user aliases that have been deleted from a user id. UserAliasesDeleted []*UserAlias `locationName:"userAliasesDeleted" type:"list"` // The user aliases attached to a user id that have been updated. UserAliasesUpdated []*UserAlias `locationName:"userAliasesUpdated" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateUserOutput) GoString() string { return s.String() } // SetUserAliasesAdded sets the UserAliasesAdded field's value. func (s *UpdateUserOutput) SetUserAliasesAdded(v []*UserAlias) *UpdateUserOutput { s.UserAliasesAdded = v return s } // SetUserAliasesDeleted sets the UserAliasesDeleted field's value. func (s *UpdateUserOutput) SetUserAliasesDeleted(v []*UserAlias) *UpdateUserOutput { s.UserAliasesDeleted = v return s } // SetUserAliasesUpdated sets the UserAliasesUpdated field's value. func (s *UpdateUserOutput) SetUserAliasesUpdated(v []*UserAlias) *UpdateUserOutput { s.UserAliasesUpdated = v return s } type UpdateWebExperienceInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Q Business application attached to the web experience. // // ApplicationId is a required field ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` // The authentication configuration of the Amazon Q Business web experience. // // Deprecated: Property associated with legacy SAML IdP flow. Deprecated in favor of using AWS IAM Identity Center for user management. AuthenticationConfiguration *WebExperienceAuthConfiguration `locationName:"authenticationConfiguration" deprecated:"true" type:"structure"` // The Amazon Resource Name (ARN) of the role with permission to access the // Amazon Q Business web experience and required resources. RoleArn *string `locationName:"roleArn" type:"string"` // Determines whether sample prompts are enabled in the web experience for an // end user. SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` // The subtitle of the Amazon Q Business web experience. Subtitle *string `locationName:"subtitle" type:"string"` // The title of the Amazon Q Business web experience. Title *string `locationName:"title" type:"string"` // The identifier of the Amazon Q Business web experience. // // WebExperienceId is a required field WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" type:"string" required:"true"` // A customized welcome message for an end user in an Amazon Q Business web // experience. WelcomeMessage *string `locationName:"welcomeMessage" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateWebExperienceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateWebExperienceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateWebExperienceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateWebExperienceInput"} if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) } if s.WebExperienceId == nil { invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) } if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) } if s.AuthenticationConfiguration != nil { if err := s.AuthenticationConfiguration.Validate(); err != nil { invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetApplicationId sets the ApplicationId field's value. func (s *UpdateWebExperienceInput) SetApplicationId(v string) *UpdateWebExperienceInput { s.ApplicationId = &v return s } // SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. func (s *UpdateWebExperienceInput) SetAuthenticationConfiguration(v *WebExperienceAuthConfiguration) *UpdateWebExperienceInput { s.AuthenticationConfiguration = v return s } // SetRoleArn sets the RoleArn field's value. func (s *UpdateWebExperienceInput) SetRoleArn(v string) *UpdateWebExperienceInput { s.RoleArn = &v return s } // SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. func (s *UpdateWebExperienceInput) SetSamplePromptsControlMode(v string) *UpdateWebExperienceInput { s.SamplePromptsControlMode = &v return s } // SetSubtitle sets the Subtitle field's value. func (s *UpdateWebExperienceInput) SetSubtitle(v string) *UpdateWebExperienceInput { s.Subtitle = &v return s } // SetTitle sets the Title field's value. func (s *UpdateWebExperienceInput) SetTitle(v string) *UpdateWebExperienceInput { s.Title = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *UpdateWebExperienceInput) SetWebExperienceId(v string) *UpdateWebExperienceInput { s.WebExperienceId = &v return s } // SetWelcomeMessage sets the WelcomeMessage field's value. func (s *UpdateWebExperienceInput) SetWelcomeMessage(v string) *UpdateWebExperienceInput { s.WelcomeMessage = &v return s } type UpdateWebExperienceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateWebExperienceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateWebExperienceOutput) GoString() string { return s.String() } // Aliases attached to a user id within an Amazon Q Business application. type UserAlias struct { _ struct{} `type:"structure"` // The identifier of the data source that the user aliases are associated with. DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` // The identifier of the index that the user aliases are associated with. IndexId *string `locationName:"indexId" min:"36" type:"string"` // The identifier of the user id associated with the user aliases. // // UserId is a required field UserId *string `locationName:"userId" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UserAlias) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UserAlias) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UserAlias) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UserAlias"} if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } if s.UserId == nil { invalidParams.Add(request.NewErrParamRequired("UserId")) } if s.UserId != nil && len(*s.UserId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDataSourceId sets the DataSourceId field's value. func (s *UserAlias) SetDataSourceId(v string) *UserAlias { s.DataSourceId = &v return s } // SetIndexId sets the IndexId field's value. func (s *UserAlias) SetIndexId(v string) *UserAlias { s.IndexId = &v return s } // SetUserId sets the UserId field's value. func (s *UserAlias) SetUserId(v string) *UserAlias { s.UserId = &v return s } // Provides information about users and groups associated with a topic control // rule. type UsersAndGroups struct { _ struct{} `type:"structure"` // The user groups associated with a topic control rule. UserGroups []*string `locationName:"userGroups" type:"list"` // The user ids associated with a topic control rule. UserIds []*string `locationName:"userIds" type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UsersAndGroups) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UsersAndGroups) GoString() string { return s.String() } // SetUserGroups sets the UserGroups field's value. func (s *UsersAndGroups) SetUserGroups(v []*string) *UsersAndGroups { s.UserGroups = v return s } // SetUserIds sets the UserIds field's value. func (s *UsersAndGroups) SetUserIds(v []*string) *UsersAndGroups { s.UserIds = v return s } // The input doesn't meet the constraints set by the Amazon Q Business service. // Provide the correct input and try again. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // The input field(s) that failed validation. Fields []*ValidationExceptionField `locationName:"fields" type:"list"` // The message describing the ValidationException. Message_ *string `locationName:"message" min:"1" type:"string"` // The reason for the ValidationException. // // Reason is a required field Reason *string `locationName:"reason" type:"string" required:"true" enum:"ValidationExceptionReason"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationException) GoString() string { return s.String() } func newErrorValidationException(v protocol.ResponseMetadata) error { return &ValidationException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ValidationException) Code() string { return "ValidationException" } // Message returns the exception's message. func (s *ValidationException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ValidationException) OrigErr() error { return nil } func (s *ValidationException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ValidationException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } // The input failed to meet the constraints specified by Amazon Q Business in // a specified field. type ValidationExceptionField struct { _ struct{} `type:"structure"` // A message about the validation exception. // // Message is a required field Message *string `locationName:"message" min:"1" type:"string" required:"true"` // The field name where the invalid entry was detected. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationExceptionField) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationExceptionField) GoString() string { return s.String() } // SetMessage sets the Message field's value. func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { s.Message = &v return s } // SetName sets the Name field's value. func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { s.Name = &v return s } // Provides information for an Amazon Q Business web experience. type WebExperience struct { _ struct{} `type:"structure"` // The Unix timestamp when the Amazon Q Business application was last updated. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The endpoint URLs for your Amazon Q Business web experience. The URLs are // unique and fully hosted by Amazon Web Services. DefaultEndpoint *string `locationName:"defaultEndpoint" min:"1" type:"string"` // The status of your Amazon Q Business web experience. Status *string `locationName:"status" type:"string" enum:"WebExperienceStatus"` // The Unix timestamp when your Amazon Q Business web experience was updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` // The identifier of your Amazon Q Business web experience. WebExperienceId *string `locationName:"webExperienceId" min:"36" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s WebExperience) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s WebExperience) GoString() string { return s.String() } // SetCreatedAt sets the CreatedAt field's value. func (s *WebExperience) SetCreatedAt(v time.Time) *WebExperience { s.CreatedAt = &v return s } // SetDefaultEndpoint sets the DefaultEndpoint field's value. func (s *WebExperience) SetDefaultEndpoint(v string) *WebExperience { s.DefaultEndpoint = &v return s } // SetStatus sets the Status field's value. func (s *WebExperience) SetStatus(v string) *WebExperience { s.Status = &v return s } // SetUpdatedAt sets the UpdatedAt field's value. func (s *WebExperience) SetUpdatedAt(v time.Time) *WebExperience { s.UpdatedAt = &v return s } // SetWebExperienceId sets the WebExperienceId field's value. func (s *WebExperience) SetWebExperienceId(v string) *WebExperience { s.WebExperienceId = &v return s } // Provides the authorization configuration information needed to deploy a Amazon // Q Business web experience to end users. type WebExperienceAuthConfiguration struct { _ struct{} `type:"structure"` // Provides the SAML 2.0 compliant identity provider (IdP) configuration information // Amazon Q Business needs to deploy a Amazon Q Business web experience. SamlConfiguration *SamlConfiguration `locationName:"samlConfiguration" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s WebExperienceAuthConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s WebExperienceAuthConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WebExperienceAuthConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WebExperienceAuthConfiguration"} if s.SamlConfiguration != nil { if err := s.SamlConfiguration.Validate(); err != nil { invalidParams.AddNested("SamlConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSamlConfiguration sets the SamlConfiguration field's value. func (s *WebExperienceAuthConfiguration) SetSamlConfiguration(v *SamlConfiguration) *WebExperienceAuthConfiguration { s.SamlConfiguration = v return s } const ( // APISchemaTypeOpenApiV3 is a APISchemaType enum value APISchemaTypeOpenApiV3 = "OPEN_API_V3" ) // APISchemaType_Values returns all elements of the APISchemaType enum func APISchemaType_Values() []string { return []string{ APISchemaTypeOpenApiV3, } } const ( // ActionPayloadFieldTypeString is a ActionPayloadFieldType enum value ActionPayloadFieldTypeString = "STRING" // ActionPayloadFieldTypeNumber is a ActionPayloadFieldType enum value ActionPayloadFieldTypeNumber = "NUMBER" // ActionPayloadFieldTypeArray is a ActionPayloadFieldType enum value ActionPayloadFieldTypeArray = "ARRAY" // ActionPayloadFieldTypeBoolean is a ActionPayloadFieldType enum value ActionPayloadFieldTypeBoolean = "BOOLEAN" ) // ActionPayloadFieldType_Values returns all elements of the ActionPayloadFieldType enum func ActionPayloadFieldType_Values() []string { return []string{ ActionPayloadFieldTypeString, ActionPayloadFieldTypeNumber, ActionPayloadFieldTypeArray, ActionPayloadFieldTypeBoolean, } } const ( // ApplicationStatusCreating is a ApplicationStatus enum value ApplicationStatusCreating = "CREATING" // ApplicationStatusActive is a ApplicationStatus enum value ApplicationStatusActive = "ACTIVE" // ApplicationStatusDeleting is a ApplicationStatus enum value ApplicationStatusDeleting = "DELETING" // ApplicationStatusFailed is a ApplicationStatus enum value ApplicationStatusFailed = "FAILED" // ApplicationStatusUpdating is a ApplicationStatus enum value ApplicationStatusUpdating = "UPDATING" ) // ApplicationStatus_Values returns all elements of the ApplicationStatus enum func ApplicationStatus_Values() []string { return []string{ ApplicationStatusCreating, ApplicationStatusActive, ApplicationStatusDeleting, ApplicationStatusFailed, ApplicationStatusUpdating, } } const ( // AttachmentStatusFailed is a AttachmentStatus enum value AttachmentStatusFailed = "FAILED" // AttachmentStatusSucceeded is a AttachmentStatus enum value AttachmentStatusSucceeded = "SUCCEEDED" ) // AttachmentStatus_Values returns all elements of the AttachmentStatus enum func AttachmentStatus_Values() []string { return []string{ AttachmentStatusFailed, AttachmentStatusSucceeded, } } const ( // AttachmentsControlModeEnabled is a AttachmentsControlMode enum value AttachmentsControlModeEnabled = "ENABLED" // AttachmentsControlModeDisabled is a AttachmentsControlMode enum value AttachmentsControlModeDisabled = "DISABLED" ) // AttachmentsControlMode_Values returns all elements of the AttachmentsControlMode enum func AttachmentsControlMode_Values() []string { return []string{ AttachmentsControlModeEnabled, AttachmentsControlModeDisabled, } } const ( // AttributeTypeString is a AttributeType enum value AttributeTypeString = "STRING" // AttributeTypeStringList is a AttributeType enum value AttributeTypeStringList = "STRING_LIST" // AttributeTypeNumber is a AttributeType enum value AttributeTypeNumber = "NUMBER" // AttributeTypeDate is a AttributeType enum value AttributeTypeDate = "DATE" ) // AttributeType_Values returns all elements of the AttributeType enum func AttributeType_Values() []string { return []string{ AttributeTypeString, AttributeTypeStringList, AttributeTypeNumber, AttributeTypeDate, } } const ( // AttributeValueOperatorDelete is a AttributeValueOperator enum value AttributeValueOperatorDelete = "DELETE" ) // AttributeValueOperator_Values returns all elements of the AttributeValueOperator enum func AttributeValueOperator_Values() []string { return []string{ AttributeValueOperatorDelete, } } const ( // ChatModeRetrievalMode is a ChatMode enum value ChatModeRetrievalMode = "RETRIEVAL_MODE" // ChatModeCreatorMode is a ChatMode enum value ChatModeCreatorMode = "CREATOR_MODE" // ChatModePluginMode is a ChatMode enum value ChatModePluginMode = "PLUGIN_MODE" ) // ChatMode_Values returns all elements of the ChatMode enum func ChatMode_Values() []string { return []string{ ChatModeRetrievalMode, ChatModeCreatorMode, ChatModePluginMode, } } const ( // ContentTypePdf is a ContentType enum value ContentTypePdf = "PDF" // ContentTypeHtml is a ContentType enum value ContentTypeHtml = "HTML" // ContentTypeMsWord is a ContentType enum value ContentTypeMsWord = "MS_WORD" // ContentTypePlainText is a ContentType enum value ContentTypePlainText = "PLAIN_TEXT" // ContentTypePpt is a ContentType enum value ContentTypePpt = "PPT" // ContentTypeRtf is a ContentType enum value ContentTypeRtf = "RTF" // ContentTypeXml is a ContentType enum value ContentTypeXml = "XML" // ContentTypeXslt is a ContentType enum value ContentTypeXslt = "XSLT" // ContentTypeMsExcel is a ContentType enum value ContentTypeMsExcel = "MS_EXCEL" // ContentTypeCsv is a ContentType enum value ContentTypeCsv = "CSV" // ContentTypeJson is a ContentType enum value ContentTypeJson = "JSON" // ContentTypeMd is a ContentType enum value ContentTypeMd = "MD" ) // ContentType_Values returns all elements of the ContentType enum func ContentType_Values() []string { return []string{ ContentTypePdf, ContentTypeHtml, ContentTypeMsWord, ContentTypePlainText, ContentTypePpt, ContentTypeRtf, ContentTypeXml, ContentTypeXslt, ContentTypeMsExcel, ContentTypeCsv, ContentTypeJson, ContentTypeMd, } } const ( // CreatorModeControlEnabled is a CreatorModeControl enum value CreatorModeControlEnabled = "ENABLED" // CreatorModeControlDisabled is a CreatorModeControl enum value CreatorModeControlDisabled = "DISABLED" ) // CreatorModeControl_Values returns all elements of the CreatorModeControl enum func CreatorModeControl_Values() []string { return []string{ CreatorModeControlEnabled, CreatorModeControlDisabled, } } const ( // DataSourceStatusPendingCreation is a DataSourceStatus enum value DataSourceStatusPendingCreation = "PENDING_CREATION" // DataSourceStatusCreating is a DataSourceStatus enum value DataSourceStatusCreating = "CREATING" // DataSourceStatusActive is a DataSourceStatus enum value DataSourceStatusActive = "ACTIVE" // DataSourceStatusDeleting is a DataSourceStatus enum value DataSourceStatusDeleting = "DELETING" // DataSourceStatusFailed is a DataSourceStatus enum value DataSourceStatusFailed = "FAILED" // DataSourceStatusUpdating is a DataSourceStatus enum value DataSourceStatusUpdating = "UPDATING" ) // DataSourceStatus_Values returns all elements of the DataSourceStatus enum func DataSourceStatus_Values() []string { return []string{ DataSourceStatusPendingCreation, DataSourceStatusCreating, DataSourceStatusActive, DataSourceStatusDeleting, DataSourceStatusFailed, DataSourceStatusUpdating, } } const ( // DataSourceSyncJobStatusFailed is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusFailed = "FAILED" // DataSourceSyncJobStatusSucceeded is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusSucceeded = "SUCCEEDED" // DataSourceSyncJobStatusSyncing is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusSyncing = "SYNCING" // DataSourceSyncJobStatusIncomplete is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusIncomplete = "INCOMPLETE" // DataSourceSyncJobStatusStopping is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusStopping = "STOPPING" // DataSourceSyncJobStatusAborted is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusAborted = "ABORTED" // DataSourceSyncJobStatusSyncingIndexing is a DataSourceSyncJobStatus enum value DataSourceSyncJobStatusSyncingIndexing = "SYNCING_INDEXING" ) // DataSourceSyncJobStatus_Values returns all elements of the DataSourceSyncJobStatus enum func DataSourceSyncJobStatus_Values() []string { return []string{ DataSourceSyncJobStatusFailed, DataSourceSyncJobStatusSucceeded, DataSourceSyncJobStatusSyncing, DataSourceSyncJobStatusIncomplete, DataSourceSyncJobStatusStopping, DataSourceSyncJobStatusAborted, DataSourceSyncJobStatusSyncingIndexing, } } const ( // DocumentAttributeBoostingLevelNone is a DocumentAttributeBoostingLevel enum value DocumentAttributeBoostingLevelNone = "NONE" // DocumentAttributeBoostingLevelLow is a DocumentAttributeBoostingLevel enum value DocumentAttributeBoostingLevelLow = "LOW" // DocumentAttributeBoostingLevelMedium is a DocumentAttributeBoostingLevel enum value DocumentAttributeBoostingLevelMedium = "MEDIUM" // DocumentAttributeBoostingLevelHigh is a DocumentAttributeBoostingLevel enum value DocumentAttributeBoostingLevelHigh = "HIGH" // DocumentAttributeBoostingLevelVeryHigh is a DocumentAttributeBoostingLevel enum value DocumentAttributeBoostingLevelVeryHigh = "VERY_HIGH" ) // DocumentAttributeBoostingLevel_Values returns all elements of the DocumentAttributeBoostingLevel enum func DocumentAttributeBoostingLevel_Values() []string { return []string{ DocumentAttributeBoostingLevelNone, DocumentAttributeBoostingLevelLow, DocumentAttributeBoostingLevelMedium, DocumentAttributeBoostingLevelHigh, DocumentAttributeBoostingLevelVeryHigh, } } const ( // DocumentContentOperatorDelete is a DocumentContentOperator enum value DocumentContentOperatorDelete = "DELETE" ) // DocumentContentOperator_Values returns all elements of the DocumentContentOperator enum func DocumentContentOperator_Values() []string { return []string{ DocumentContentOperatorDelete, } } const ( // DocumentEnrichmentConditionOperatorGreaterThan is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorGreaterThan = "GREATER_THAN" // DocumentEnrichmentConditionOperatorGreaterThanOrEquals is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorGreaterThanOrEquals = "GREATER_THAN_OR_EQUALS" // DocumentEnrichmentConditionOperatorLessThan is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorLessThan = "LESS_THAN" // DocumentEnrichmentConditionOperatorLessThanOrEquals is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorLessThanOrEquals = "LESS_THAN_OR_EQUALS" // DocumentEnrichmentConditionOperatorEquals is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorEquals = "EQUALS" // DocumentEnrichmentConditionOperatorNotEquals is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorNotEquals = "NOT_EQUALS" // DocumentEnrichmentConditionOperatorContains is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorContains = "CONTAINS" // DocumentEnrichmentConditionOperatorNotContains is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorNotContains = "NOT_CONTAINS" // DocumentEnrichmentConditionOperatorExists is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorExists = "EXISTS" // DocumentEnrichmentConditionOperatorNotExists is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorNotExists = "NOT_EXISTS" // DocumentEnrichmentConditionOperatorBeginsWith is a DocumentEnrichmentConditionOperator enum value DocumentEnrichmentConditionOperatorBeginsWith = "BEGINS_WITH" ) // DocumentEnrichmentConditionOperator_Values returns all elements of the DocumentEnrichmentConditionOperator enum func DocumentEnrichmentConditionOperator_Values() []string { return []string{ DocumentEnrichmentConditionOperatorGreaterThan, DocumentEnrichmentConditionOperatorGreaterThanOrEquals, DocumentEnrichmentConditionOperatorLessThan, DocumentEnrichmentConditionOperatorLessThanOrEquals, DocumentEnrichmentConditionOperatorEquals, DocumentEnrichmentConditionOperatorNotEquals, DocumentEnrichmentConditionOperatorContains, DocumentEnrichmentConditionOperatorNotContains, DocumentEnrichmentConditionOperatorExists, DocumentEnrichmentConditionOperatorNotExists, DocumentEnrichmentConditionOperatorBeginsWith, } } const ( // DocumentStatusReceived is a DocumentStatus enum value DocumentStatusReceived = "RECEIVED" // DocumentStatusProcessing is a DocumentStatus enum value DocumentStatusProcessing = "PROCESSING" // DocumentStatusIndexed is a DocumentStatus enum value DocumentStatusIndexed = "INDEXED" // DocumentStatusUpdated is a DocumentStatus enum value DocumentStatusUpdated = "UPDATED" // DocumentStatusFailed is a DocumentStatus enum value DocumentStatusFailed = "FAILED" // DocumentStatusDeleting is a DocumentStatus enum value DocumentStatusDeleting = "DELETING" // DocumentStatusDeleted is a DocumentStatus enum value DocumentStatusDeleted = "DELETED" // DocumentStatusDocumentFailedToIndex is a DocumentStatus enum value DocumentStatusDocumentFailedToIndex = "DOCUMENT_FAILED_TO_INDEX" ) // DocumentStatus_Values returns all elements of the DocumentStatus enum func DocumentStatus_Values() []string { return []string{ DocumentStatusReceived, DocumentStatusProcessing, DocumentStatusIndexed, DocumentStatusUpdated, DocumentStatusFailed, DocumentStatusDeleting, DocumentStatusDeleted, DocumentStatusDocumentFailedToIndex, } } const ( // ErrorCodeInternalError is a ErrorCode enum value ErrorCodeInternalError = "InternalError" // ErrorCodeInvalidRequest is a ErrorCode enum value ErrorCodeInvalidRequest = "InvalidRequest" // ErrorCodeResourceInactive is a ErrorCode enum value ErrorCodeResourceInactive = "ResourceInactive" // ErrorCodeResourceNotFound is a ErrorCode enum value ErrorCodeResourceNotFound = "ResourceNotFound" ) // ErrorCode_Values returns all elements of the ErrorCode enum func ErrorCode_Values() []string { return []string{ ErrorCodeInternalError, ErrorCodeInvalidRequest, ErrorCodeResourceInactive, ErrorCodeResourceNotFound, } } const ( // GroupStatusFailed is a GroupStatus enum value GroupStatusFailed = "FAILED" // GroupStatusSucceeded is a GroupStatus enum value GroupStatusSucceeded = "SUCCEEDED" // GroupStatusProcessing is a GroupStatus enum value GroupStatusProcessing = "PROCESSING" // GroupStatusDeleting is a GroupStatus enum value GroupStatusDeleting = "DELETING" // GroupStatusDeleted is a GroupStatus enum value GroupStatusDeleted = "DELETED" ) // GroupStatus_Values returns all elements of the GroupStatus enum func GroupStatus_Values() []string { return []string{ GroupStatusFailed, GroupStatusSucceeded, GroupStatusProcessing, GroupStatusDeleting, GroupStatusDeleted, } } const ( // IndexStatusCreating is a IndexStatus enum value IndexStatusCreating = "CREATING" // IndexStatusActive is a IndexStatus enum value IndexStatusActive = "ACTIVE" // IndexStatusDeleting is a IndexStatus enum value IndexStatusDeleting = "DELETING" // IndexStatusFailed is a IndexStatus enum value IndexStatusFailed = "FAILED" // IndexStatusUpdating is a IndexStatus enum value IndexStatusUpdating = "UPDATING" ) // IndexStatus_Values returns all elements of the IndexStatus enum func IndexStatus_Values() []string { return []string{ IndexStatusCreating, IndexStatusActive, IndexStatusDeleting, IndexStatusFailed, IndexStatusUpdating, } } const ( // IndexTypeEnterprise is a IndexType enum value IndexTypeEnterprise = "ENTERPRISE" // IndexTypeStarter is a IndexType enum value IndexTypeStarter = "STARTER" ) // IndexType_Values returns all elements of the IndexType enum func IndexType_Values() []string { return []string{ IndexTypeEnterprise, IndexTypeStarter, } } const ( // MemberRelationAnd is a MemberRelation enum value MemberRelationAnd = "AND" // MemberRelationOr is a MemberRelation enum value MemberRelationOr = "OR" ) // MemberRelation_Values returns all elements of the MemberRelation enum func MemberRelation_Values() []string { return []string{ MemberRelationAnd, MemberRelationOr, } } const ( // MembershipTypeIndex is a MembershipType enum value MembershipTypeIndex = "INDEX" // MembershipTypeDatasource is a MembershipType enum value MembershipTypeDatasource = "DATASOURCE" ) // MembershipType_Values returns all elements of the MembershipType enum func MembershipType_Values() []string { return []string{ MembershipTypeIndex, MembershipTypeDatasource, } } const ( // MessageTypeUser is a MessageType enum value MessageTypeUser = "USER" // MessageTypeSystem is a MessageType enum value MessageTypeSystem = "SYSTEM" ) // MessageType_Values returns all elements of the MessageType enum func MessageType_Values() []string { return []string{ MessageTypeUser, MessageTypeSystem, } } const ( // MessageUsefulnessUseful is a MessageUsefulness enum value MessageUsefulnessUseful = "USEFUL" // MessageUsefulnessNotUseful is a MessageUsefulness enum value MessageUsefulnessNotUseful = "NOT_USEFUL" ) // MessageUsefulness_Values returns all elements of the MessageUsefulness enum func MessageUsefulness_Values() []string { return []string{ MessageUsefulnessUseful, MessageUsefulnessNotUseful, } } const ( // MessageUsefulnessReasonNotFactuallyCorrect is a MessageUsefulnessReason enum value MessageUsefulnessReasonNotFactuallyCorrect = "NOT_FACTUALLY_CORRECT" // MessageUsefulnessReasonHarmfulOrUnsafe is a MessageUsefulnessReason enum value MessageUsefulnessReasonHarmfulOrUnsafe = "HARMFUL_OR_UNSAFE" // MessageUsefulnessReasonIncorrectOrMissingSources is a MessageUsefulnessReason enum value MessageUsefulnessReasonIncorrectOrMissingSources = "INCORRECT_OR_MISSING_SOURCES" // MessageUsefulnessReasonNotHelpful is a MessageUsefulnessReason enum value MessageUsefulnessReasonNotHelpful = "NOT_HELPFUL" // MessageUsefulnessReasonFactuallyCorrect is a MessageUsefulnessReason enum value MessageUsefulnessReasonFactuallyCorrect = "FACTUALLY_CORRECT" // MessageUsefulnessReasonComplete is a MessageUsefulnessReason enum value MessageUsefulnessReasonComplete = "COMPLETE" // MessageUsefulnessReasonRelevantSources is a MessageUsefulnessReason enum value MessageUsefulnessReasonRelevantSources = "RELEVANT_SOURCES" // MessageUsefulnessReasonHelpful is a MessageUsefulnessReason enum value MessageUsefulnessReasonHelpful = "HELPFUL" // MessageUsefulnessReasonNotBasedOnDocuments is a MessageUsefulnessReason enum value MessageUsefulnessReasonNotBasedOnDocuments = "NOT_BASED_ON_DOCUMENTS" // MessageUsefulnessReasonNotComplete is a MessageUsefulnessReason enum value MessageUsefulnessReasonNotComplete = "NOT_COMPLETE" // MessageUsefulnessReasonNotConcise is a MessageUsefulnessReason enum value MessageUsefulnessReasonNotConcise = "NOT_CONCISE" // MessageUsefulnessReasonOther is a MessageUsefulnessReason enum value MessageUsefulnessReasonOther = "OTHER" ) // MessageUsefulnessReason_Values returns all elements of the MessageUsefulnessReason enum func MessageUsefulnessReason_Values() []string { return []string{ MessageUsefulnessReasonNotFactuallyCorrect, MessageUsefulnessReasonHarmfulOrUnsafe, MessageUsefulnessReasonIncorrectOrMissingSources, MessageUsefulnessReasonNotHelpful, MessageUsefulnessReasonFactuallyCorrect, MessageUsefulnessReasonComplete, MessageUsefulnessReasonRelevantSources, MessageUsefulnessReasonHelpful, MessageUsefulnessReasonNotBasedOnDocuments, MessageUsefulnessReasonNotComplete, MessageUsefulnessReasonNotConcise, MessageUsefulnessReasonOther, } } const ( // NumberAttributeBoostingTypePrioritizeLargerValues is a NumberAttributeBoostingType enum value NumberAttributeBoostingTypePrioritizeLargerValues = "PRIORITIZE_LARGER_VALUES" // NumberAttributeBoostingTypePrioritizeSmallerValues is a NumberAttributeBoostingType enum value NumberAttributeBoostingTypePrioritizeSmallerValues = "PRIORITIZE_SMALLER_VALUES" ) // NumberAttributeBoostingType_Values returns all elements of the NumberAttributeBoostingType enum func NumberAttributeBoostingType_Values() []string { return []string{ NumberAttributeBoostingTypePrioritizeLargerValues, NumberAttributeBoostingTypePrioritizeSmallerValues, } } const ( // PersonalizationControlModeEnabled is a PersonalizationControlMode enum value PersonalizationControlModeEnabled = "ENABLED" // PersonalizationControlModeDisabled is a PersonalizationControlMode enum value PersonalizationControlModeDisabled = "DISABLED" ) // PersonalizationControlMode_Values returns all elements of the PersonalizationControlMode enum func PersonalizationControlMode_Values() []string { return []string{ PersonalizationControlModeEnabled, PersonalizationControlModeDisabled, } } const ( // PluginBuildStatusReady is a PluginBuildStatus enum value PluginBuildStatusReady = "READY" // PluginBuildStatusCreateInProgress is a PluginBuildStatus enum value PluginBuildStatusCreateInProgress = "CREATE_IN_PROGRESS" // PluginBuildStatusCreateFailed is a PluginBuildStatus enum value PluginBuildStatusCreateFailed = "CREATE_FAILED" // PluginBuildStatusUpdateInProgress is a PluginBuildStatus enum value PluginBuildStatusUpdateInProgress = "UPDATE_IN_PROGRESS" // PluginBuildStatusUpdateFailed is a PluginBuildStatus enum value PluginBuildStatusUpdateFailed = "UPDATE_FAILED" // PluginBuildStatusDeleteInProgress is a PluginBuildStatus enum value PluginBuildStatusDeleteInProgress = "DELETE_IN_PROGRESS" // PluginBuildStatusDeleteFailed is a PluginBuildStatus enum value PluginBuildStatusDeleteFailed = "DELETE_FAILED" ) // PluginBuildStatus_Values returns all elements of the PluginBuildStatus enum func PluginBuildStatus_Values() []string { return []string{ PluginBuildStatusReady, PluginBuildStatusCreateInProgress, PluginBuildStatusCreateFailed, PluginBuildStatusUpdateInProgress, PluginBuildStatusUpdateFailed, PluginBuildStatusDeleteInProgress, PluginBuildStatusDeleteFailed, } } const ( // PluginStateEnabled is a PluginState enum value PluginStateEnabled = "ENABLED" // PluginStateDisabled is a PluginState enum value PluginStateDisabled = "DISABLED" ) // PluginState_Values returns all elements of the PluginState enum func PluginState_Values() []string { return []string{ PluginStateEnabled, PluginStateDisabled, } } const ( // PluginTypeServiceNow is a PluginType enum value PluginTypeServiceNow = "SERVICE_NOW" // PluginTypeSalesforce is a PluginType enum value PluginTypeSalesforce = "SALESFORCE" // PluginTypeJira is a PluginType enum value PluginTypeJira = "JIRA" // PluginTypeZendesk is a PluginType enum value PluginTypeZendesk = "ZENDESK" // PluginTypeCustom is a PluginType enum value PluginTypeCustom = "CUSTOM" ) // PluginType_Values returns all elements of the PluginType enum func PluginType_Values() []string { return []string{ PluginTypeServiceNow, PluginTypeSalesforce, PluginTypeJira, PluginTypeZendesk, PluginTypeCustom, } } const ( // QAppsControlModeEnabled is a QAppsControlMode enum value QAppsControlModeEnabled = "ENABLED" // QAppsControlModeDisabled is a QAppsControlMode enum value QAppsControlModeDisabled = "DISABLED" ) // QAppsControlMode_Values returns all elements of the QAppsControlMode enum func QAppsControlMode_Values() []string { return []string{ QAppsControlModeEnabled, QAppsControlModeDisabled, } } const ( // ReadAccessTypeAllow is a ReadAccessType enum value ReadAccessTypeAllow = "ALLOW" // ReadAccessTypeDeny is a ReadAccessType enum value ReadAccessTypeDeny = "DENY" ) // ReadAccessType_Values returns all elements of the ReadAccessType enum func ReadAccessType_Values() []string { return []string{ ReadAccessTypeAllow, ReadAccessTypeDeny, } } const ( // ResponseScopeEnterpriseContentOnly is a ResponseScope enum value ResponseScopeEnterpriseContentOnly = "ENTERPRISE_CONTENT_ONLY" // ResponseScopeExtendedKnowledgeEnabled is a ResponseScope enum value ResponseScopeExtendedKnowledgeEnabled = "EXTENDED_KNOWLEDGE_ENABLED" ) // ResponseScope_Values returns all elements of the ResponseScope enum func ResponseScope_Values() []string { return []string{ ResponseScopeEnterpriseContentOnly, ResponseScopeExtendedKnowledgeEnabled, } } const ( // RetrieverStatusCreating is a RetrieverStatus enum value RetrieverStatusCreating = "CREATING" // RetrieverStatusActive is a RetrieverStatus enum value RetrieverStatusActive = "ACTIVE" // RetrieverStatusFailed is a RetrieverStatus enum value RetrieverStatusFailed = "FAILED" ) // RetrieverStatus_Values returns all elements of the RetrieverStatus enum func RetrieverStatus_Values() []string { return []string{ RetrieverStatusCreating, RetrieverStatusActive, RetrieverStatusFailed, } } const ( // RetrieverTypeNativeIndex is a RetrieverType enum value RetrieverTypeNativeIndex = "NATIVE_INDEX" // RetrieverTypeKendraIndex is a RetrieverType enum value RetrieverTypeKendraIndex = "KENDRA_INDEX" ) // RetrieverType_Values returns all elements of the RetrieverType enum func RetrieverType_Values() []string { return []string{ RetrieverTypeNativeIndex, RetrieverTypeKendraIndex, } } const ( // RuleTypeContentBlockerRule is a RuleType enum value RuleTypeContentBlockerRule = "CONTENT_BLOCKER_RULE" // RuleTypeContentRetrievalRule is a RuleType enum value RuleTypeContentRetrievalRule = "CONTENT_RETRIEVAL_RULE" ) // RuleType_Values returns all elements of the RuleType enum func RuleType_Values() []string { return []string{ RuleTypeContentBlockerRule, RuleTypeContentRetrievalRule, } } const ( // StatusEnabled is a Status enum value StatusEnabled = "ENABLED" // StatusDisabled is a Status enum value StatusDisabled = "DISABLED" ) // Status_Values returns all elements of the Status enum func Status_Values() []string { return []string{ StatusEnabled, StatusDisabled, } } const ( // StringAttributeValueBoostingLevelLow is a StringAttributeValueBoostingLevel enum value StringAttributeValueBoostingLevelLow = "LOW" // StringAttributeValueBoostingLevelMedium is a StringAttributeValueBoostingLevel enum value StringAttributeValueBoostingLevelMedium = "MEDIUM" // StringAttributeValueBoostingLevelHigh is a StringAttributeValueBoostingLevel enum value StringAttributeValueBoostingLevelHigh = "HIGH" // StringAttributeValueBoostingLevelVeryHigh is a StringAttributeValueBoostingLevel enum value StringAttributeValueBoostingLevelVeryHigh = "VERY_HIGH" ) // StringAttributeValueBoostingLevel_Values returns all elements of the StringAttributeValueBoostingLevel enum func StringAttributeValueBoostingLevel_Values() []string { return []string{ StringAttributeValueBoostingLevelLow, StringAttributeValueBoostingLevelMedium, StringAttributeValueBoostingLevelHigh, StringAttributeValueBoostingLevelVeryHigh, } } const ( // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value ValidationExceptionReasonCannotParse = "CANNOT_PARSE" // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED" // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION" ) // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum func ValidationExceptionReason_Values() []string { return []string{ ValidationExceptionReasonCannotParse, ValidationExceptionReasonFieldValidationFailed, ValidationExceptionReasonUnknownOperation, } } const ( // WebExperienceSamplePromptsControlModeEnabled is a WebExperienceSamplePromptsControlMode enum value WebExperienceSamplePromptsControlModeEnabled = "ENABLED" // WebExperienceSamplePromptsControlModeDisabled is a WebExperienceSamplePromptsControlMode enum value WebExperienceSamplePromptsControlModeDisabled = "DISABLED" ) // WebExperienceSamplePromptsControlMode_Values returns all elements of the WebExperienceSamplePromptsControlMode enum func WebExperienceSamplePromptsControlMode_Values() []string { return []string{ WebExperienceSamplePromptsControlModeEnabled, WebExperienceSamplePromptsControlModeDisabled, } } const ( // WebExperienceStatusCreating is a WebExperienceStatus enum value WebExperienceStatusCreating = "CREATING" // WebExperienceStatusActive is a WebExperienceStatus enum value WebExperienceStatusActive = "ACTIVE" // WebExperienceStatusDeleting is a WebExperienceStatus enum value WebExperienceStatusDeleting = "DELETING" // WebExperienceStatusFailed is a WebExperienceStatus enum value WebExperienceStatusFailed = "FAILED" // WebExperienceStatusPendingAuthConfig is a WebExperienceStatus enum value WebExperienceStatusPendingAuthConfig = "PENDING_AUTH_CONFIG" ) // WebExperienceStatus_Values returns all elements of the WebExperienceStatus enum func WebExperienceStatus_Values() []string { return []string{ WebExperienceStatusCreating, WebExperienceStatusActive, WebExperienceStatusDeleting, WebExperienceStatusFailed, WebExperienceStatusPendingAuthConfig, } }