{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2020-10-19",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"wisdom",
    "protocol":"rest-json",
    "protocols":["rest-json"],
    "serviceFullName":"Amazon Q Connect",
    "serviceId":"QConnect",
    "signatureVersion":"v4",
    "signingName":"wisdom",
    "uid":"qconnect-2020-10-19"
  },
  "operations":{
    "ActivateMessageTemplate":{
      "name":"ActivateMessageTemplate",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/activate",
        "responseCode":200
      },
      "input":{"shape":"ActivateMessageTemplateRequest"},
      "output":{"shape":"ActivateMessageTemplateResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Activates a specific version of the Amazon Q in Connect message template. After the version is activated, the previous active version will be deactivated automatically. You can use the <code>$ACTIVE_VERSION</code> qualifier later to reference the version that is in active status.</p>"
    },
    "CreateAIAgent":{
      "name":"CreateAIAgent",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiagents",
        "responseCode":200
      },
      "input":{"shape":"CreateAIAgentRequest"},
      "output":{"shape":"CreateAIAgentResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect AI Agent.</p>",
      "idempotent":true
    },
    "CreateAIAgentVersion":{
      "name":"CreateAIAgentVersion",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}/versions",
        "responseCode":200
      },
      "input":{"shape":"CreateAIAgentVersionRequest"},
      "output":{"shape":"CreateAIAgentVersionResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates and Amazon Q in Connect AI Agent version.</p>",
      "idempotent":true
    },
    "CreateAIGuardrail":{
      "name":"CreateAIGuardrail",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiguardrails",
        "responseCode":200
      },
      "input":{"shape":"CreateAIGuardrailRequest"},
      "output":{"shape":"CreateAIGuardrailResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect AI Guardrail.</p>",
      "idempotent":true
    },
    "CreateAIGuardrailVersion":{
      "name":"CreateAIGuardrailVersion",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}/versions",
        "responseCode":200
      },
      "input":{"shape":"CreateAIGuardrailVersionRequest"},
      "output":{"shape":"CreateAIGuardrailVersionResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect AI Guardrail version.</p>",
      "idempotent":true
    },
    "CreateAIPrompt":{
      "name":"CreateAIPrompt",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiprompts",
        "responseCode":200
      },
      "input":{"shape":"CreateAIPromptRequest"},
      "output":{"shape":"CreateAIPromptResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect AI Prompt.</p>",
      "idempotent":true
    },
    "CreateAIPromptVersion":{
      "name":"CreateAIPromptVersion",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}/versions",
        "responseCode":200
      },
      "input":{"shape":"CreateAIPromptVersionRequest"},
      "output":{"shape":"CreateAIPromptVersionResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect AI Prompt version.</p>",
      "idempotent":true
    },
    "CreateAssistant":{
      "name":"CreateAssistant",
      "http":{
        "method":"POST",
        "requestUri":"/assistants",
        "responseCode":200
      },
      "input":{"shape":"CreateAssistantRequest"},
      "output":{"shape":"CreateAssistantResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect assistant.</p>",
      "idempotent":true
    },
    "CreateAssistantAssociation":{
      "name":"CreateAssistantAssociation",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/associations",
        "responseCode":200
      },
      "input":{"shape":"CreateAssistantAssociationRequest"},
      "output":{"shape":"CreateAssistantAssociationResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates an association between an Amazon Q in Connect assistant and another resource. Currently, the only supported association is with a knowledge base. An assistant can have only a single association.</p>",
      "idempotent":true
    },
    "CreateContent":{
      "name":"CreateContent",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents",
        "responseCode":200
      },
      "input":{"shape":"CreateContentRequest"},
      "output":{"shape":"CreateContentResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates Amazon Q in Connect content. Before to calling this API, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a> to upload an asset.</p>",
      "idempotent":true
    },
    "CreateContentAssociation":{
      "name":"CreateContentAssociation",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/associations",
        "responseCode":200
      },
      "input":{"shape":"CreateContentAssociationRequest"},
      "output":{"shape":"CreateContentAssociationResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates an association between a content resource in a knowledge base and <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/step-by-step-guided-experiences.html\">step-by-step guides</a>. Step-by-step guides offer instructions to agents for resolving common customer issues. You create a content association to integrate Amazon Q in Connect and step-by-step guides. </p> <p>After you integrate Amazon Q and step-by-step guides, when Amazon Q provides a recommendation to an agent based on the intent that it's detected, it also provides them with the option to start the step-by-step guide that you have associated with the content.</p> <p>Note the following limitations:</p> <ul> <li> <p>You can create only one content association for each content resource in a knowledge base.</p> </li> <li> <p>You can associate a step-by-step guide with multiple content resources.</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/integrate-q-with-guides.html\">Integrate Amazon Q in Connect with step-by-step guides</a> in the <i>Amazon Connect Administrator Guide</i>. </p>"
    },
    "CreateKnowledgeBase":{
      "name":"CreateKnowledgeBase",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases",
        "responseCode":200
      },
      "input":{"shape":"CreateKnowledgeBaseRequest"},
      "output":{"shape":"CreateKnowledgeBaseResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Creates a knowledge base.</p> <note> <p>When using this API, you cannot reuse <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html\">Amazon AppIntegrations</a> DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, you'll get an <code>InvalidRequestException</code> error. </p> <p>For example, you're programmatically managing your external knowledge base, and you want to add or remove one of the fields that is being ingested from Salesforce. Do the following:</p> <ol> <li> <p>Call <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_DeleteKnowledgeBase.html\">DeleteKnowledgeBase</a>.</p> </li> <li> <p>Call <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html\">DeleteDataIntegration</a>.</p> </li> <li> <p>Call <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html\">CreateDataIntegration</a> to recreate the DataIntegration or a create different one.</p> </li> <li> <p>Call CreateKnowledgeBase.</p> </li> </ol> </note>",
      "idempotent":true
    },
    "CreateMessageTemplate":{
      "name":"CreateMessageTemplate",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates",
        "responseCode":200
      },
      "input":{"shape":"CreateMessageTemplateRequest"},
      "output":{"shape":"CreateMessageTemplateResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect message template. The name of the message template has to be unique for each knowledge base. The channel subtype of the message template is immutable and cannot be modified after creation. After the message template is created, you can use the <code>$LATEST</code> qualifier to reference the created message template.</p>",
      "idempotent":true
    },
    "CreateMessageTemplateAttachment":{
      "name":"CreateMessageTemplateAttachment",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/attachments",
        "responseCode":200
      },
      "input":{"shape":"CreateMessageTemplateAttachmentRequest"},
      "output":{"shape":"CreateMessageTemplateAttachmentResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Uploads an attachment file to the specified Amazon Q in Connect message template. The name of the message template attachment has to be unique for each message template referenced by the <code>$LATEST</code> qualifier. The body of the attachment file should be encoded using base64 encoding. After the file is uploaded, you can use the pre-signed Amazon S3 URL returned in response to download the uploaded file.</p>",
      "idempotent":true
    },
    "CreateMessageTemplateVersion":{
      "name":"CreateMessageTemplateVersion",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/versions",
        "responseCode":200
      },
      "input":{"shape":"CreateMessageTemplateVersionRequest"},
      "output":{"shape":"CreateMessageTemplateVersionResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a new Amazon Q in Connect message template version from the current content and configuration of a message template. Versions are immutable and monotonically increasing. Once a version is created, you can reference a specific version of the message template by passing in <code>&lt;message-template-id&gt;:&lt;versionNumber&gt;</code> as the message template identifier. An error is displayed if the supplied <code>messageTemplateContentSha256</code> is different from the <code>messageTemplateContentSha256</code> of the message template with <code>$LATEST</code> qualifier. If multiple <code>CreateMessageTemplateVersion</code> requests are made while the message template remains the same, only the first invocation creates a new version and the succeeding requests will return the same response as the first invocation.</p>"
    },
    "CreateQuickResponse":{
      "name":"CreateQuickResponse",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses",
        "responseCode":200
      },
      "input":{"shape":"CreateQuickResponseRequest"},
      "output":{"shape":"CreateQuickResponseResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates an Amazon Q in Connect quick response.</p>",
      "idempotent":true
    },
    "CreateSession":{
      "name":"CreateSession",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/sessions",
        "responseCode":200
      },
      "input":{"shape":"CreateSessionRequest"},
      "output":{"shape":"CreateSessionResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"DependencyFailedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates a session. A session is a contextual container used for generating recommendations. Amazon Connect creates a new Amazon Q in Connect session for each contact on which Amazon Q in Connect is enabled.</p>",
      "idempotent":true
    },
    "DeactivateMessageTemplate":{
      "name":"DeactivateMessageTemplate",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/deactivate",
        "responseCode":200
      },
      "input":{"shape":"DeactivateMessageTemplateRequest"},
      "output":{"shape":"DeactivateMessageTemplateResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deactivates a specific version of the Amazon Q in Connect message template . After the version is deactivated, you can no longer use the <code>$ACTIVE_VERSION</code> qualifier to reference the version in active status.</p>"
    },
    "DeleteAIAgent":{
      "name":"DeleteAIAgent",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAIAgentRequest"},
      "output":{"shape":"DeleteAIAgentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes an Amazon Q in Connect AI Agent.</p>",
      "idempotent":true
    },
    "DeleteAIAgentVersion":{
      "name":"DeleteAIAgentVersion",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}/versions/{versionNumber}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAIAgentVersionRequest"},
      "output":{"shape":"DeleteAIAgentVersionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes an Amazon Q in Connect AI Agent Version.</p>",
      "idempotent":true
    },
    "DeleteAIGuardrail":{
      "name":"DeleteAIGuardrail",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}",
        "responseCode":202
      },
      "input":{"shape":"DeleteAIGuardrailRequest"},
      "output":{"shape":"DeleteAIGuardrailResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes an Amazon Q in Connect AI Guardrail.</p>",
      "idempotent":true
    },
    "DeleteAIGuardrailVersion":{
      "name":"DeleteAIGuardrailVersion",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}/versions/{versionNumber}",
        "responseCode":202
      },
      "input":{"shape":"DeleteAIGuardrailVersionRequest"},
      "output":{"shape":"DeleteAIGuardrailVersionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Delete and Amazon Q in Connect AI Guardrail version.</p>",
      "idempotent":true
    },
    "DeleteAIPrompt":{
      "name":"DeleteAIPrompt",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAIPromptRequest"},
      "output":{"shape":"DeleteAIPromptResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes an Amazon Q in Connect AI Prompt.</p>",
      "idempotent":true
    },
    "DeleteAIPromptVersion":{
      "name":"DeleteAIPromptVersion",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}/versions/{versionNumber}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAIPromptVersionRequest"},
      "output":{"shape":"DeleteAIPromptVersionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Delete and Amazon Q in Connect AI Prompt version.</p>",
      "idempotent":true
    },
    "DeleteAssistant":{
      "name":"DeleteAssistant",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAssistantRequest"},
      "output":{"shape":"DeleteAssistantResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes an assistant.</p>",
      "idempotent":true
    },
    "DeleteAssistantAssociation":{
      "name":"DeleteAssistantAssociation",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/associations/{assistantAssociationId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteAssistantAssociationRequest"},
      "output":{"shape":"DeleteAssistantAssociationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes an assistant association.</p>",
      "idempotent":true
    },
    "DeleteContent":{
      "name":"DeleteContent",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteContentRequest"},
      "output":{"shape":"DeleteContentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the content.</p>",
      "idempotent":true
    },
    "DeleteContentAssociation":{
      "name":"DeleteContentAssociation",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/associations/{contentAssociationId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteContentAssociationRequest"},
      "output":{"shape":"DeleteContentAssociationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the content association. </p> <p>For more information about content associations--what they are and when they are used--see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/integrate-q-with-guides.html\">Integrate Amazon Q in Connect with step-by-step guides</a> in the <i>Amazon Connect Administrator Guide</i>. </p>",
      "idempotent":true
    },
    "DeleteImportJob":{
      "name":"DeleteImportJob",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteImportJobRequest"},
      "output":{"shape":"DeleteImportJobResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the quick response import job.</p>",
      "idempotent":true
    },
    "DeleteKnowledgeBase":{
      "name":"DeleteKnowledgeBase",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteKnowledgeBaseRequest"},
      "output":{"shape":"DeleteKnowledgeBaseResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the knowledge base.</p> <note> <p>When you use this API to delete an external knowledge base such as Salesforce or ServiceNow, you must also delete the <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html\">Amazon AppIntegrations</a> DataIntegration. This is because you can't reuse the DataIntegration after it's been associated with an external knowledge base. However, you can delete and recreate it. See <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html\">DeleteDataIntegration</a> and <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html\">CreateDataIntegration</a> in the <i>Amazon AppIntegrations API Reference</i>.</p> </note>",
      "idempotent":true
    },
    "DeleteMessageTemplate":{
      "name":"DeleteMessageTemplate",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteMessageTemplateRequest"},
      "output":{"shape":"DeleteMessageTemplateResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes an Amazon Q in Connect message template entirely or a specific version of the message template if version is supplied in the request. You can provide the message template identifier as <code>&lt;message-template-id&gt;:&lt;versionNumber&gt;</code> to delete a specific version of the message template. If it is not supplied, the message template and all available versions will be deleted.</p>",
      "idempotent":true
    },
    "DeleteMessageTemplateAttachment":{
      "name":"DeleteMessageTemplateAttachment",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/attachments/{attachmentId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteMessageTemplateAttachmentRequest"},
      "output":{"shape":"DeleteMessageTemplateAttachmentResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes the attachment file from the Amazon Q in Connect message template that is referenced by <code>$LATEST</code> qualifier. Attachments on available message template versions will remain unchanged.</p>",
      "idempotent":true
    },
    "DeleteQuickResponse":{
      "name":"DeleteQuickResponse",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}",
        "responseCode":204
      },
      "input":{"shape":"DeleteQuickResponseRequest"},
      "output":{"shape":"DeleteQuickResponseResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes a quick response.</p>",
      "idempotent":true
    },
    "GetAIAgent":{
      "name":"GetAIAgent",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}",
        "responseCode":200
      },
      "input":{"shape":"GetAIAgentRequest"},
      "output":{"shape":"GetAIAgentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets an Amazon Q in Connect AI Agent.</p>",
      "readonly":true
    },
    "GetAIGuardrail":{
      "name":"GetAIGuardrail",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}",
        "responseCode":200
      },
      "input":{"shape":"GetAIGuardrailRequest"},
      "output":{"shape":"GetAIGuardrailResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets the Amazon Q in Connect AI Guardrail.</p>",
      "readonly":true
    },
    "GetAIPrompt":{
      "name":"GetAIPrompt",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}",
        "responseCode":200
      },
      "input":{"shape":"GetAIPromptRequest"},
      "output":{"shape":"GetAIPromptResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets and Amazon Q in Connect AI Prompt.</p>",
      "readonly":true
    },
    "GetAssistant":{
      "name":"GetAssistant",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}",
        "responseCode":200
      },
      "input":{"shape":"GetAssistantRequest"},
      "output":{"shape":"GetAssistantResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves information about an assistant.</p>",
      "readonly":true
    },
    "GetAssistantAssociation":{
      "name":"GetAssistantAssociation",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/associations/{assistantAssociationId}",
        "responseCode":200
      },
      "input":{"shape":"GetAssistantAssociationRequest"},
      "output":{"shape":"GetAssistantAssociationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves information about an assistant association.</p>",
      "readonly":true
    },
    "GetContent":{
      "name":"GetContent",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}",
        "responseCode":200
      },
      "input":{"shape":"GetContentRequest"},
      "output":{"shape":"GetContentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves content, including a pre-signed URL to download the content.</p>",
      "readonly":true
    },
    "GetContentAssociation":{
      "name":"GetContentAssociation",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/associations/{contentAssociationId}",
        "responseCode":200
      },
      "input":{"shape":"GetContentAssociationRequest"},
      "output":{"shape":"GetContentAssociationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns the content association.</p> <p>For more information about content associations--what they are and when they are used--see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/integrate-q-with-guides.html\">Integrate Amazon Q in Connect with step-by-step guides</a> in the <i>Amazon Connect Administrator Guide</i>.</p>",
      "readonly":true
    },
    "GetContentSummary":{
      "name":"GetContentSummary",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/summary",
        "responseCode":200
      },
      "input":{"shape":"GetContentSummaryRequest"},
      "output":{"shape":"GetContentSummaryResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves summary information about the content.</p>",
      "readonly":true
    },
    "GetImportJob":{
      "name":"GetImportJob",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}",
        "responseCode":200
      },
      "input":{"shape":"GetImportJobRequest"},
      "output":{"shape":"GetImportJobResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves the started import job.</p>",
      "readonly":true
    },
    "GetKnowledgeBase":{
      "name":"GetKnowledgeBase",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}",
        "responseCode":200
      },
      "input":{"shape":"GetKnowledgeBaseRequest"},
      "output":{"shape":"GetKnowledgeBaseResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves information about the knowledge base.</p>",
      "readonly":true
    },
    "GetMessageTemplate":{
      "name":"GetMessageTemplate",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}",
        "responseCode":200
      },
      "input":{"shape":"GetMessageTemplateRequest"},
      "output":{"shape":"GetMessageTemplateResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves the Amazon Q in Connect message template. The message template identifier can contain an optional qualifier, for example, <code>&lt;message-template-id&gt;:&lt;qualifier&gt;</code>, which is either an actual version number or an Amazon Q Connect managed qualifier <code>$ACTIVE_VERSION</code> | <code>$LATEST</code>. If it is not supplied, then <code>$LATEST</code> is assumed implicitly.</p>",
      "readonly":true
    },
    "GetNextMessage":{
      "name":"GetNextMessage",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/messages/next",
        "responseCode":200
      },
      "input":{"shape":"GetNextMessageRequest"},
      "output":{"shape":"GetNextMessageResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"UnprocessableContentException"}
      ],
      "documentation":"<p>Retrieves next message on an Amazon Q in Connect session.</p>",
      "readonly":true
    },
    "GetQuickResponse":{
      "name":"GetQuickResponse",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}",
        "responseCode":200
      },
      "input":{"shape":"GetQuickResponseRequest"},
      "output":{"shape":"GetQuickResponseResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves the quick response.</p>",
      "readonly":true
    },
    "GetRecommendations":{
      "name":"GetRecommendations",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/recommendations",
        "responseCode":200
      },
      "input":{"shape":"GetRecommendationsRequest"},
      "output":{"shape":"GetRecommendationsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p><important> <p>This API will be discontinued starting June 1, 2024. To receive generative responses after March 1, 2024, you will need to create a new Assistant in the Amazon Connect console and integrate the Amazon Q in Connect JavaScript library (amazon-q-connectjs) into your applications.</p> </important> <p>Retrieves recommendations for the specified session. To avoid retrieving the same recommendations in subsequent calls, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_NotifyRecommendationsReceived.html\">NotifyRecommendationsReceived</a>. This API supports long-polling behavior with the <code>waitTimeSeconds</code> parameter. Short poll is the default behavior and only returns recommendations already available. To perform a manual query against an assistant, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_QueryAssistant.html\">QueryAssistant</a>.</p></p>",
      "deprecated":true,
      "deprecatedMessage":"GetRecommendations API will be discontinued starting June 1, 2024. To receive generative responses after March 1, 2024 you will need to create a new Assistant in the Connect console and integrate the Amazon Q in Connect JavaScript library (amazon-q-connectjs) into your applications.",
      "readonly":true
    },
    "GetSession":{
      "name":"GetSession",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}",
        "responseCode":200
      },
      "input":{"shape":"GetSessionRequest"},
      "output":{"shape":"GetSessionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves information for a specified session.</p>",
      "readonly":true
    },
    "ListAIAgentVersions":{
      "name":"ListAIAgentVersions",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListAIAgentVersionsRequest"},
      "output":{"shape":"ListAIAgentVersionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>List AI Agent versions.</p>",
      "readonly":true
    },
    "ListAIAgents":{
      "name":"ListAIAgents",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiagents",
        "responseCode":200
      },
      "input":{"shape":"ListAIAgentsRequest"},
      "output":{"shape":"ListAIAgentsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists AI Agents.</p>",
      "readonly":true
    },
    "ListAIGuardrailVersions":{
      "name":"ListAIGuardrailVersions",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListAIGuardrailVersionsRequest"},
      "output":{"shape":"ListAIGuardrailVersionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists AI Guardrail versions.</p>",
      "readonly":true
    },
    "ListAIGuardrails":{
      "name":"ListAIGuardrails",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiguardrails",
        "responseCode":200
      },
      "input":{"shape":"ListAIGuardrailsRequest"},
      "output":{"shape":"ListAIGuardrailsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the AI Guardrails available on the Amazon Q in Connect assistant.</p>",
      "readonly":true
    },
    "ListAIPromptVersions":{
      "name":"ListAIPromptVersions",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListAIPromptVersionsRequest"},
      "output":{"shape":"ListAIPromptVersionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists AI Prompt versions.</p>",
      "readonly":true
    },
    "ListAIPrompts":{
      "name":"ListAIPrompts",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/aiprompts",
        "responseCode":200
      },
      "input":{"shape":"ListAIPromptsRequest"},
      "output":{"shape":"ListAIPromptsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists the AI Prompts available on the Amazon Q in Connect assistant.</p>",
      "readonly":true
    },
    "ListAssistantAssociations":{
      "name":"ListAssistantAssociations",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/associations",
        "responseCode":200
      },
      "input":{"shape":"ListAssistantAssociationsRequest"},
      "output":{"shape":"ListAssistantAssociationsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists information about assistant associations.</p>",
      "readonly":true
    },
    "ListAssistants":{
      "name":"ListAssistants",
      "http":{
        "method":"GET",
        "requestUri":"/assistants",
        "responseCode":200
      },
      "input":{"shape":"ListAssistantsRequest"},
      "output":{"shape":"ListAssistantsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists information about assistants.</p>",
      "readonly":true
    },
    "ListContentAssociations":{
      "name":"ListContentAssociations",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/associations",
        "responseCode":200
      },
      "input":{"shape":"ListContentAssociationsRequest"},
      "output":{"shape":"ListContentAssociationsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists the content associations.</p> <p>For more information about content associations--what they are and when they are used--see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/integrate-q-with-guides.html\">Integrate Amazon Q in Connect with step-by-step guides</a> in the <i>Amazon Connect Administrator Guide</i>.</p>",
      "readonly":true
    },
    "ListContents":{
      "name":"ListContents",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents",
        "responseCode":200
      },
      "input":{"shape":"ListContentsRequest"},
      "output":{"shape":"ListContentsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists the content.</p>",
      "readonly":true
    },
    "ListImportJobs":{
      "name":"ListImportJobs",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs",
        "responseCode":200
      },
      "input":{"shape":"ListImportJobsRequest"},
      "output":{"shape":"ListImportJobsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists information about import jobs.</p>",
      "readonly":true
    },
    "ListKnowledgeBases":{
      "name":"ListKnowledgeBases",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases",
        "responseCode":200
      },
      "input":{"shape":"ListKnowledgeBasesRequest"},
      "output":{"shape":"ListKnowledgeBasesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists the knowledge bases.</p>",
      "readonly":true
    },
    "ListMessageTemplateVersions":{
      "name":"ListMessageTemplateVersions",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListMessageTemplateVersionsRequest"},
      "output":{"shape":"ListMessageTemplateVersionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists all the available versions for the specified Amazon Q in Connect message template.</p>",
      "readonly":true
    },
    "ListMessageTemplates":{
      "name":"ListMessageTemplates",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates",
        "responseCode":200
      },
      "input":{"shape":"ListMessageTemplatesRequest"},
      "output":{"shape":"ListMessageTemplatesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists all the available Amazon Q in Connect message templates for the specified knowledge base.</p>",
      "readonly":true
    },
    "ListMessages":{
      "name":"ListMessages",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/messages",
        "responseCode":200
      },
      "input":{"shape":"ListMessagesRequest"},
      "output":{"shape":"ListMessagesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists messages on an Amazon Q in Connect session.</p>",
      "readonly":true
    },
    "ListModels":{
      "name":"ListModels",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/models",
        "responseCode":200
      },
      "input":{"shape":"ListModelsRequest"},
      "output":{"shape":"ListModelsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the models available to an Amazon Q in Connect assistant in the assistant's Amazon Web Services Region. The available models are determined by the region of the specified assistant.</p>",
      "readonly":true
    },
    "ListQuickResponses":{
      "name":"ListQuickResponses",
      "http":{
        "method":"GET",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses",
        "responseCode":200
      },
      "input":{"shape":"ListQuickResponsesRequest"},
      "output":{"shape":"ListQuickResponsesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists information about quick response.</p>",
      "readonly":true
    },
    "ListSpans":{
      "name":"ListSpans",
      "http":{
        "method":"GET",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/spans",
        "responseCode":200
      },
      "input":{"shape":"ListSpansRequest"},
      "output":{"shape":"ListSpansResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves AI agent execution traces for a session, providing granular visibility into agent orchestration flows, LLM interactions, and tool invocations.</p>",
      "readonly":true
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"GET",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Lists the tags for the specified resource.</p>",
      "readonly":true
    },
    "NotifyRecommendationsReceived":{
      "name":"NotifyRecommendationsReceived",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/recommendations/notify",
        "responseCode":200
      },
      "input":{"shape":"NotifyRecommendationsReceivedRequest"},
      "output":{"shape":"NotifyRecommendationsReceivedResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Removes the specified recommendations from the specified assistant's queue of newly available recommendations. You can use this API in conjunction with <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html\">GetRecommendations</a> and a <code>waitTimeSeconds</code> input for long-polling behavior and avoiding duplicate recommendations.</p>",
      "idempotent":true
    },
    "PutFeedback":{
      "name":"PutFeedback",
      "http":{
        "method":"PUT",
        "requestUri":"/assistants/{assistantId}/feedback",
        "responseCode":200
      },
      "input":{"shape":"PutFeedbackRequest"},
      "output":{"shape":"PutFeedbackResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Provides feedback against the specified assistant for the specified target. This API only supports generative targets.</p>",
      "idempotent":true
    },
    "QueryAssistant":{
      "name":"QueryAssistant",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/query",
        "responseCode":200
      },
      "input":{"shape":"QueryAssistantRequest"},
      "output":{"shape":"QueryAssistantResponse"},
      "errors":[
        {"shape":"RequestTimeoutException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p><important> <p>This API will be discontinued starting June 1, 2024. To receive generative responses after March 1, 2024, you will need to create a new Assistant in the Amazon Connect console and integrate the Amazon Q in Connect JavaScript library (amazon-q-connectjs) into your applications.</p> </important> <p>Performs a manual search against the specified assistant. To retrieve recommendations for an assistant, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html\">GetRecommendations</a>. </p></p>",
      "deprecated":true,
      "deprecatedMessage":"QueryAssistant API will be discontinued starting June 1, 2024. To receive generative responses after March 1, 2024 you will need to create a new Assistant in the Connect console and integrate the Amazon Q in Connect JavaScript library (amazon-q-connectjs) into your applications.",
      "readonly":true
    },
    "RemoveAssistantAIAgent":{
      "name":"RemoveAssistantAIAgent",
      "http":{
        "method":"DELETE",
        "requestUri":"/assistants/{assistantId}/aiagentConfiguration",
        "responseCode":204
      },
      "input":{"shape":"RemoveAssistantAIAgentRequest"},
      "output":{"shape":"RemoveAssistantAIAgentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Removes the AI Agent that is set for use by default on an Amazon Q in Connect Assistant.</p>",
      "idempotent":true
    },
    "RemoveKnowledgeBaseTemplateUri":{
      "name":"RemoveKnowledgeBaseTemplateUri",
      "http":{
        "method":"DELETE",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/templateUri",
        "responseCode":204
      },
      "input":{"shape":"RemoveKnowledgeBaseTemplateUriRequest"},
      "output":{"shape":"RemoveKnowledgeBaseTemplateUriResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Removes a URI template from a knowledge base.</p>"
    },
    "RenderMessageTemplate":{
      "name":"RenderMessageTemplate",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/render",
        "responseCode":200
      },
      "input":{"shape":"RenderMessageTemplateRequest"},
      "output":{"shape":"RenderMessageTemplateResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Renders the Amazon Q in Connect message template based on the attribute values provided and generates the message content. For any variable present in the message template, if the attribute value is neither provided in the attribute request parameter nor the default attribute of the message template, the rendered message content will keep the variable placeholder as it is and return the attribute keys that are missing.</p>"
    },
    "Retrieve":{
      "name":"Retrieve",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/retrieve",
        "responseCode":200
      },
      "input":{"shape":"RetrieveRequest"},
      "output":{"shape":"RetrieveResponse"},
      "errors":[
        {"shape":"RequestTimeoutException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"DependencyFailedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves content from knowledge sources based on a query.</p>",
      "readonly":true
    },
    "SearchContent":{
      "name":"SearchContent",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/search",
        "responseCode":200
      },
      "input":{"shape":"SearchContentRequest"},
      "output":{"shape":"SearchContentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Searches for content in a specified knowledge base. Can be used to get a specific content resource by its name.</p>",
      "readonly":true
    },
    "SearchMessageTemplates":{
      "name":"SearchMessageTemplates",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/search/messageTemplates",
        "responseCode":200
      },
      "input":{"shape":"SearchMessageTemplatesRequest"},
      "output":{"shape":"SearchMessageTemplatesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Searches for Amazon Q in Connect message templates in the specified knowledge base.</p>",
      "readonly":true
    },
    "SearchQuickResponses":{
      "name":"SearchQuickResponses",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/search/quickResponses",
        "responseCode":200
      },
      "input":{"shape":"SearchQuickResponsesRequest"},
      "output":{"shape":"SearchQuickResponsesResponse"},
      "errors":[
        {"shape":"RequestTimeoutException"},
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Searches existing Amazon Q in Connect quick responses in an Amazon Q in Connect knowledge base.</p>",
      "readonly":true
    },
    "SearchSessions":{
      "name":"SearchSessions",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/searchSessions",
        "responseCode":200
      },
      "input":{"shape":"SearchSessionsRequest"},
      "output":{"shape":"SearchSessionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Searches for sessions.</p>",
      "readonly":true
    },
    "SendMessage":{
      "name":"SendMessage",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/message",
        "responseCode":200
      },
      "input":{"shape":"SendMessageRequest"},
      "output":{"shape":"SendMessageResponse"},
      "errors":[
        {"shape":"RequestTimeoutException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"DependencyFailedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Submits a message to the Amazon Q in Connect session.</p>",
      "idempotent":true
    },
    "StartContentUpload":{
      "name":"StartContentUpload",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/upload",
        "responseCode":200
      },
      "input":{"shape":"StartContentUploadRequest"},
      "output":{"shape":"StartContentUploadResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Get a URL to upload content to a knowledge base. To upload content, first make a PUT request to the returned URL with your file, making sure to include the required headers. Then use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_CreateContent.html\">CreateContent</a> to finalize the content creation process or <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_UpdateContent.html\">UpdateContent</a> to modify an existing resource. You can only upload content to a knowledge base of type CUSTOM.</p>"
    },
    "StartImportJob":{
      "name":"StartImportJob",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs",
        "responseCode":200
      },
      "input":{"shape":"StartImportJobRequest"},
      "output":{"shape":"StartImportJobResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Start an asynchronous job to import Amazon Q in Connect resources from an uploaded source file. Before calling this API, use <a href=\"https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a> to upload an asset that contains the resource data.</p> <ul> <li> <p>For importing Amazon Q in Connect quick responses, you need to upload a csv file including the quick responses. For information about how to format the csv file for importing quick responses, see <a href=\"https://docs.aws.amazon.com/console/connect/quick-responses/add-data\">Import quick responses</a>.</p> </li> </ul>",
      "idempotent":true
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"TooManyTagsException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Adds the specified tags to the specified resource.</p>",
      "idempotent":true
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"DELETE",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Removes the specified tags from the specified resource.</p>",
      "idempotent":true
    },
    "UpdateAIAgent":{
      "name":"UpdateAIAgent",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiagents/{aiAgentId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateAIAgentRequest"},
      "output":{"shape":"UpdateAIAgentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates an AI Agent.</p>",
      "idempotent":true
    },
    "UpdateAIGuardrail":{
      "name":"UpdateAIGuardrail",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiguardrails/{aiGuardrailId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateAIGuardrailRequest"},
      "output":{"shape":"UpdateAIGuardrailResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates an AI Guardrail.</p>",
      "idempotent":true
    },
    "UpdateAIPrompt":{
      "name":"UpdateAIPrompt",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiprompts/{aiPromptId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateAIPromptRequest"},
      "output":{"shape":"UpdateAIPromptResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates an AI Prompt.</p>",
      "idempotent":true
    },
    "UpdateAssistantAIAgent":{
      "name":"UpdateAssistantAIAgent",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/aiagentConfiguration",
        "responseCode":200
      },
      "input":{"shape":"UpdateAssistantAIAgentRequest"},
      "output":{"shape":"UpdateAssistantAIAgentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates the AI Agent that is set for use by default on an Amazon Q in Connect Assistant.</p>"
    },
    "UpdateContent":{
      "name":"UpdateContent",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateContentRequest"},
      "output":{"shape":"UpdateContentResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"PreconditionFailedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Updates information about the content.</p>"
    },
    "UpdateKnowledgeBaseTemplateUri":{
      "name":"UpdateKnowledgeBaseTemplateUri",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/templateUri",
        "responseCode":200
      },
      "input":{"shape":"UpdateKnowledgeBaseTemplateUriRequest"},
      "output":{"shape":"UpdateKnowledgeBaseTemplateUriResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Updates the template URI of a knowledge base. This is only supported for knowledge bases of type EXTERNAL. Include a single variable in <code>${variable}</code> format; this interpolated by Amazon Q in Connect using ingested content. For example, if you ingest a Salesforce article, it has an <code>Id</code> value, and you can set the template URI to <code>https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*${Id}*/view</code>. </p>"
    },
    "UpdateMessageTemplate":{
      "name":"UpdateMessageTemplate",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateMessageTemplateRequest"},
      "output":{"shape":"UpdateMessageTemplateResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates the Amazon Q in Connect message template. Partial update is supported. If any field is not supplied, it will remain unchanged for the message template that is referenced by the <code>$LATEST</code> qualifier. Any modification will only apply to the message template that is referenced by the <code>$LATEST</code> qualifier. The fields for all available versions will remain unchanged.</p>"
    },
    "UpdateMessageTemplateMetadata":{
      "name":"UpdateMessageTemplateMetadata",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/messageTemplates/{messageTemplateId}/metadata",
        "responseCode":200
      },
      "input":{"shape":"UpdateMessageTemplateMetadataRequest"},
      "output":{"shape":"UpdateMessageTemplateMetadataResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates the Amazon Q in Connect message template metadata. Note that any modification to the message template’s name, description and grouping configuration will applied to the message template pointed by the <code>$LATEST</code> qualifier and all available versions. Partial update is supported. If any field is not supplied, it will remain unchanged for the message template.</p>"
    },
    "UpdateQuickResponse":{
      "name":"UpdateQuickResponse",
      "http":{
        "method":"POST",
        "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateQuickResponseRequest"},
      "output":{"shape":"UpdateQuickResponseResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"PreconditionFailedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Updates an existing Amazon Q in Connect quick response.</p>"
    },
    "UpdateSession":{
      "name":"UpdateSession",
      "http":{
        "method":"POST",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateSessionRequest"},
      "output":{"shape":"UpdateSessionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Updates a session. A session is a contextual container used for generating recommendations. Amazon Connect updates the existing Amazon Q in Connect session for each contact on which Amazon Q in Connect is enabled.</p>"
    },
    "UpdateSessionData":{
      "name":"UpdateSessionData",
      "http":{
        "method":"PATCH",
        "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/data",
        "responseCode":200
      },
      "input":{"shape":"UpdateSessionDataRequest"},
      "output":{"shape":"UpdateSessionDataResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"UnauthorizedException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Updates the data stored on an Amazon Q in Connect Session.</p>"
    }
  },
  "shapes":{
    "AIAgentAssociationConfigurationType":{
      "type":"string",
      "enum":["KNOWLEDGE_BASE"]
    },
    "AIAgentConfiguration":{
      "type":"structure",
      "members":{
        "manualSearchAIAgentConfiguration":{
          "shape":"ManualSearchAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type <code>MANUAL_SEARCH</code>.</p>"
        },
        "answerRecommendationAIAgentConfiguration":{
          "shape":"AnswerRecommendationAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type <code>ANSWER_RECOMMENDATION</code>.</p>"
        },
        "selfServiceAIAgentConfiguration":{
          "shape":"SelfServiceAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type SELF_SERVICE.</p>"
        },
        "emailResponseAIAgentConfiguration":{
          "shape":"EmailResponseAIAgentConfiguration",
          "documentation":"<p>Configuration for the EMAIL_RESPONSE AI agent that generates professional email responses using knowledge base content.</p>"
        },
        "emailOverviewAIAgentConfiguration":{
          "shape":"EmailOverviewAIAgentConfiguration",
          "documentation":"<p>Configuration for the EMAIL_OVERVIEW AI agent that generates structured overview of email conversations.</p>"
        },
        "emailGenerativeAnswerAIAgentConfiguration":{
          "shape":"EmailGenerativeAnswerAIAgentConfiguration",
          "documentation":"<p>Configuration for the EMAIL_GENERATIVE_ANSWER AI agent that provides comprehensive knowledge-based answers for customer queries.</p>"
        },
        "orchestrationAIAgentConfiguration":{
          "shape":"OrchestrationAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type <code>ORCHESTRATION</code>.</p>"
        },
        "noteTakingAIAgentConfiguration":{
          "shape":"NoteTakingAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type <code>NOTE_TAKING</code>.</p>"
        },
        "caseSummarizationAIAgentConfiguration":{
          "shape":"CaseSummarizationAIAgentConfiguration",
          "documentation":"<p>The configuration for AI Agents of type <code>CASE_SUMMARIZATION</code>.</p>"
        }
      },
      "documentation":"<p>A typed union that specifies the configuration based on the type of AI Agent.</p>",
      "union":true
    },
    "AIAgentConfigurationData":{
      "type":"structure",
      "required":["aiAgentId"],
      "members":{
        "aiAgentId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the AI Agent to be configured.</p>"
        }
      },
      "documentation":"<p>A type that specifies the AI Agent ID configuration data when mapping an AI Agents to be used for an AI Agent type on a session or assistant.</p>"
    },
    "AIAgentConfigurationMap":{
      "type":"map",
      "key":{"shape":"AIAgentType"},
      "value":{"shape":"AIAgentConfigurationData"}
    },
    "AIAgentData":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "aiAgentId",
        "aiAgentArn",
        "name",
        "type",
        "configuration",
        "visibilityStatus"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiAgentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the AI Agent.</p>"
        },
        "aiAgentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI agent.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Agent.</p>"
        },
        "type":{
          "shape":"AIAgentType",
          "documentation":"<p>The type of the AI Agent.</p>"
        },
        "configuration":{
          "shape":"AIAgentConfiguration",
          "documentation":"<p>Configuration for the AI Agent.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Agent was last modified.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Agent.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Agent.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>Specifies the origin of the AI Agent. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs. </p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Agent.</p>"
        }
      },
      "documentation":"<p>The data for the AI Agent.</p>"
    },
    "AIAgentSummary":{
      "type":"structure",
      "required":[
        "name",
        "assistantId",
        "assistantArn",
        "aiAgentId",
        "type",
        "aiAgentArn",
        "visibilityStatus"
      ],
      "members":{
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Agent.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiAgentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the AI Agent.</p>"
        },
        "type":{
          "shape":"AIAgentType",
          "documentation":"<p>The type of the AI Agent.</p>"
        },
        "aiAgentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI agent.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Agent was last modified.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Agent.</p>"
        },
        "configuration":{
          "shape":"AIAgentConfiguration",
          "documentation":"<p>The configuration for the AI Agent.</p>"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Agent. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Agent.</p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Agent.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Agent.</p>"
    },
    "AIAgentSummaryList":{
      "type":"list",
      "member":{"shape":"AIAgentSummary"}
    },
    "AIAgentType":{
      "type":"string",
      "enum":[
        "MANUAL_SEARCH",
        "ANSWER_RECOMMENDATION",
        "SELF_SERVICE",
        "EMAIL_RESPONSE",
        "EMAIL_OVERVIEW",
        "EMAIL_GENERATIVE_ANSWER",
        "ORCHESTRATION",
        "NOTE_TAKING",
        "CASE_SUMMARIZATION"
      ]
    },
    "AIAgentVersionSummariesList":{
      "type":"list",
      "member":{"shape":"AIAgentVersionSummary"}
    },
    "AIAgentVersionSummary":{
      "type":"structure",
      "members":{
        "aiAgentSummary":{
          "shape":"AIAgentSummary",
          "documentation":"<p>The data for the summary of the AI Agent version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number for this AI Agent version.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Agent version.</p>"
    },
    "AIGuardrailAssessment":{
      "type":"structure",
      "required":["blocked"],
      "members":{
        "blocked":{
          "shape":"Boolean",
          "documentation":"<p>Indicates whether the AI Guardrail blocked the content.</p>"
        }
      },
      "documentation":"<p>The assessment information from the AI Guardrail.</p>"
    },
    "AIGuardrailBlockedMessaging":{
      "type":"string",
      "documentation":"<p>Messaging for when violations are detected in text</p>",
      "max":500,
      "min":1,
      "sensitive":true
    },
    "AIGuardrailContentPolicyConfig":{
      "type":"structure",
      "required":["filtersConfig"],
      "members":{
        "filtersConfig":{
          "shape":"GuardrailContentFiltersConfig",
          "documentation":"<p>Contains the type of the content filter and how strongly it should apply to prompts and model responses.</p>"
        }
      },
      "documentation":"<p>Contains details about how to handle harmful content.</p>"
    },
    "AIGuardrailContextualGroundingPolicyConfig":{
      "type":"structure",
      "required":["filtersConfig"],
      "members":{
        "filtersConfig":{
          "shape":"GuardrailContextualGroundingFiltersConfig",
          "documentation":"<p>The filter configuration details for the AI Guardrails contextual grounding policy.</p>"
        }
      },
      "documentation":"<p>The policy configuration details for the AI Guardrail's contextual grounding policy.</p>"
    },
    "AIGuardrailData":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "aiGuardrailArn",
        "aiGuardrailId",
        "name",
        "visibilityStatus",
        "blockedInputMessaging",
        "blockedOutputsMessaging"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiGuardrailArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI Guardrail.</p>"
        },
        "aiGuardrailId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Guardrail.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Guardrail.</p>"
        },
        "blockedInputMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a prompt.</p>"
        },
        "blockedOutputsMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a model response.</p>"
        },
        "description":{
          "shape":"AIGuardrailDescription",
          "documentation":"<p>A description of the AI Guardrail.</p>"
        },
        "topicPolicyConfig":{
          "shape":"AIGuardrailTopicPolicyConfig",
          "documentation":"<p>Contains details about topics that the AI Guardrail should identify and deny.</p>"
        },
        "contentPolicyConfig":{
          "shape":"AIGuardrailContentPolicyConfig",
          "documentation":"<p>Contains details about how to handle harmful content.</p>"
        },
        "wordPolicyConfig":{
          "shape":"AIGuardrailWordPolicyConfig",
          "documentation":"<p>Contains details about the word policy to configured for the AI Guardrail.</p>"
        },
        "sensitiveInformationPolicyConfig":{
          "shape":"AIGuardrailSensitiveInformationPolicyConfig",
          "documentation":"<p>Contains details about PII entities and regular expressions to configure for the AI Guardrail.</p>"
        },
        "contextualGroundingPolicyConfig":{
          "shape":"AIGuardrailContextualGroundingPolicyConfig",
          "documentation":"<p>The policy configuration details for the AI Guardrail's contextual grounding policy.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Guardrail.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Guardrail was last modified.</p>"
        }
      },
      "documentation":"<p>The data for the AI Guardrail</p>"
    },
    "AIGuardrailDescription":{
      "type":"string",
      "documentation":"<p>Description of the guardrail or its version</p>",
      "max":200,
      "min":1,
      "sensitive":true
    },
    "AIGuardrailSensitiveInformationPolicyConfig":{
      "type":"structure",
      "members":{
        "piiEntitiesConfig":{
          "shape":"GuardrailPiiEntitiesConfig",
          "documentation":"<p>A list of PII entities to configure to the AI Guardrail.</p>"
        },
        "regexesConfig":{
          "shape":"GuardrailRegexesConfig",
          "documentation":"<p>A list of regular expressions to configure to the AI Guardrail.</p>"
        }
      },
      "documentation":"<p>Contains details about PII entities and regular expressions to configure for the AI Guardrail.</p>"
    },
    "AIGuardrailSummariesList":{
      "type":"list",
      "member":{"shape":"AIGuardrailSummary"}
    },
    "AIGuardrailSummary":{
      "type":"structure",
      "required":[
        "name",
        "assistantId",
        "assistantArn",
        "aiGuardrailId",
        "aiGuardrailArn",
        "visibilityStatus"
      ],
      "members":{
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Guardrail.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiGuardrailId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>"
        },
        "aiGuardrailArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI Guardrail.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Guardrail was last modified.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Guardrail.</p>"
        },
        "description":{
          "shape":"AIGuardrailDescription",
          "documentation":"<p>A description of the AI Guardrail.</p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Guardrail.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Guardrail.</p>"
    },
    "AIGuardrailTopicPolicyConfig":{
      "type":"structure",
      "required":["topicsConfig"],
      "members":{
        "topicsConfig":{
          "shape":"GuardrailTopicsConfig",
          "documentation":"<p>A list of policies related to topics that the AI Guardrail should deny.</p>"
        }
      },
      "documentation":"<p>Contains details about topics that the AI Guardrail should identify and deny.</p>"
    },
    "AIGuardrailVersionSummariesList":{
      "type":"list",
      "member":{"shape":"AIGuardrailVersionSummary"}
    },
    "AIGuardrailVersionSummary":{
      "type":"structure",
      "members":{
        "aiGuardrailSummary":{
          "shape":"AIGuardrailSummary",
          "documentation":"<p>The data for the summary of the AI Guardrail version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number for this AI Guardrail version.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Guardrail version.</p>"
    },
    "AIGuardrailWordPolicyConfig":{
      "type":"structure",
      "members":{
        "wordsConfig":{
          "shape":"GuardrailWordsConfig",
          "documentation":"<p>A list of words to configure for the AI Guardrail.</p>"
        },
        "managedWordListsConfig":{
          "shape":"GuardrailManagedWordListsConfig",
          "documentation":"<p>A list of managed words to configure for the AI Guardrail.</p>"
        }
      },
      "documentation":"<p>Contains details about the word policy to configured for the AI Guardrail.</p>"
    },
    "AIPromptAPIFormat":{
      "type":"string",
      "enum":[
        "ANTHROPIC_CLAUDE_MESSAGES",
        "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS",
        "MESSAGES",
        "TEXT_COMPLETIONS"
      ]
    },
    "AIPromptData":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "aiPromptId",
        "aiPromptArn",
        "name",
        "type",
        "templateType",
        "modelId",
        "apiFormat",
        "templateConfiguration",
        "visibilityStatus"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiPromptId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt.</p>"
        },
        "aiPromptArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI Prompt.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Prompt</p>"
        },
        "type":{
          "shape":"AIPromptType",
          "documentation":"<p>The type of this AI Prompt.</p>"
        },
        "templateType":{
          "shape":"AIPromptTemplateType",
          "documentation":"<p>The type of the prompt template for this AI Prompt.</p>"
        },
        "modelId":{
          "shape":"AIPromptModelIdentifier",
          "documentation":"<p>The identifier of the model used for this AI Prompt. The following model Ids are supported:</p> <ul> <li> <p> <code>anthropic.claude-3-haiku--v1:0</code> </p> </li> <li> <p> <code>apac.amazon.nova-lite-v1:0</code> </p> </li> <li> <p> <code>apac.amazon.nova-micro-v1:0</code> </p> </li> <li> <p> <code>apac.amazon.nova-pro-v1:0</code> </p> </li> <li> <p> <code>apac.anthropic.claude-3-5-sonnet--v2:0</code> </p> </li> <li> <p> <code>apac.anthropic.claude-3-haiku-20240307-v1:0</code> </p> </li> <li> <p> <code>eu.amazon.nova-lite-v1:0</code> </p> </li> <li> <p> <code>eu.amazon.nova-micro-v1:0</code> </p> </li> <li> <p> <code>eu.amazon.nova-pro-v1:0</code> </p> </li> <li> <p> <code>eu.anthropic.claude-3-7-sonnet-20250219-v1:0</code> </p> </li> <li> <p> <code>eu.anthropic.claude-3-haiku-20240307-v1:0</code> </p> </li> <li> <p> <code>us.amazon.nova-lite-v1:0</code> </p> </li> <li> <p> <code>us.amazon.nova-micro-v1:0</code> </p> </li> <li> <p> <code>us.amazon.nova-pro-v1:0</code> </p> </li> <li> <p> <code>us.anthropic.claude-3-5-haiku-20241022-v1:0</code> </p> </li> <li> <p> <code>us.anthropic.claude-3-7-sonnet-20250219-v1:0</code> </p> </li> <li> <p> <code>us.anthropic.claude-3-haiku-20240307-v1:0</code> </p> </li> </ul>"
        },
        "apiFormat":{
          "shape":"AIPromptAPIFormat",
          "documentation":"<p>The API format used for this AI Prompt.</p>"
        },
        "templateConfiguration":{
          "shape":"AIPromptTemplateConfiguration",
          "documentation":"<p>The configuration of the prompt template for this AI Prompt.</p>"
        },
        "inferenceConfiguration":{
          "shape":"AIPromptInferenceConfiguration",
          "documentation":"<p>The configuration for inference parameters when using the AI Prompt.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Prompt was last modified.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Prompt.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Prompt.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Prompt. <code>SYSTEM</code> for a default AI Prompt created by Q in Connect or <code>CUSTOMER</code> for an AI Prompt created by calling AI Prompt creation APIs. </p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Prompt.</p>"
        }
      },
      "documentation":"<p>The data for the AI Prompt</p>"
    },
    "AIPromptInferenceConfiguration":{
      "type":"structure",
      "members":{
        "temperature":{
          "shape":"Probability",
          "documentation":"<p>The temperature setting for controlling randomness in the generated response.</p>"
        },
        "topP":{
          "shape":"Probability",
          "documentation":"<p>The top-P sampling parameter for nucleus sampling.</p>"
        },
        "topK":{
          "shape":"TopK",
          "documentation":"<p>The top-K sampling parameter for token selection.</p>"
        },
        "maxTokensToSample":{
          "shape":"MaxTokensToSample",
          "documentation":"<p>The maximum number of tokens to generate in the response.</p>"
        }
      },
      "documentation":"<p>The configuration for inference parameters when using AI Prompts.</p>"
    },
    "AIPromptModelIdentifier":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "AIPromptSummary":{
      "type":"structure",
      "required":[
        "name",
        "assistantId",
        "assistantArn",
        "aiPromptId",
        "type",
        "aiPromptArn",
        "templateType",
        "modelId",
        "apiFormat",
        "visibilityStatus"
      ],
      "members":{
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Prompt.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "aiPromptId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt.</p>"
        },
        "type":{
          "shape":"AIPromptType",
          "documentation":"<p>The type of this AI Prompt.</p>"
        },
        "aiPromptArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI Prompt.</p>"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Prompt was last modified.</p>"
        },
        "templateType":{
          "shape":"AIPromptTemplateType",
          "documentation":"<p>The type of the prompt template for this AI Prompt.</p>"
        },
        "modelId":{
          "shape":"AIPromptModelIdentifier",
          "documentation":"<p>The identifier of the model used for this AI Prompt. Model Ids supported are: <code>anthropic.claude-3-haiku-20240307-v1:0</code>.</p>"
        },
        "apiFormat":{
          "shape":"AIPromptAPIFormat",
          "documentation":"<p>The API format used for this AI Prompt.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Prompt.</p>"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Prompt. <code>SYSTEM</code> for a default AI Prompt created by Q in Connect or <code>CUSTOMER</code> for an AI Prompt created by calling AI Prompt creation APIs. </p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Prompt.</p>"
        },
        "status":{
          "shape":"Status",
          "documentation":"<p>The status of the AI Prompt.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Prompt.</p>"
    },
    "AIPromptSummaryList":{
      "type":"list",
      "member":{"shape":"AIPromptSummary"}
    },
    "AIPromptTemplateConfiguration":{
      "type":"structure",
      "members":{
        "textFullAIPromptEditTemplateConfiguration":{
          "shape":"TextFullAIPromptEditTemplateConfiguration",
          "documentation":"<p>The configuration for a prompt template that supports full textual prompt configuration using a YAML prompt.</p>"
        }
      },
      "documentation":"<p>A typed union that specifies the configuration for a prompt template based on its type.</p>",
      "union":true
    },
    "AIPromptTemplateType":{
      "type":"string",
      "enum":["TEXT"]
    },
    "AIPromptType":{
      "type":"string",
      "enum":[
        "ANSWER_GENERATION",
        "INTENT_LABELING_GENERATION",
        "QUERY_REFORMULATION",
        "SELF_SERVICE_PRE_PROCESSING",
        "SELF_SERVICE_ANSWER_GENERATION",
        "EMAIL_RESPONSE",
        "EMAIL_OVERVIEW",
        "EMAIL_GENERATIVE_ANSWER",
        "EMAIL_QUERY_REFORMULATION",
        "ORCHESTRATION",
        "NOTE_TAKING",
        "CASE_SUMMARIZATION"
      ]
    },
    "AIPromptTypeList":{
      "type":"list",
      "member":{"shape":"AIPromptType"}
    },
    "AIPromptVersionSummariesList":{
      "type":"list",
      "member":{"shape":"AIPromptVersionSummary"}
    },
    "AIPromptVersionSummary":{
      "type":"structure",
      "members":{
        "aiPromptSummary":{
          "shape":"AIPromptSummary",
          "documentation":"<p>The date for the summary of the AI Prompt version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number for this AI Prompt version.</p>"
        }
      },
      "documentation":"<p>The summary of the AI Prompt version.</p>"
    },
    "AccessDeniedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>You do not have sufficient access to perform this action.</p>",
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "AccessRoleArn":{
      "type":"string",
      "max":2048,
      "min":32,
      "pattern":"arn:aws:iam::[0-9]{12}:role/(?:service-role/)?[a-zA-Z0-9_+=,.@-]{1,64}"
    },
    "ActivateMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId",
        "versionNumber"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version to activate.</p>"
        }
      }
    },
    "ActivateMessageTemplateResponse":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "versionNumber"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version that is activated.</p>"
        }
      }
    },
    "AgentAttributes":{
      "type":"structure",
      "members":{
        "firstName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The agent’s first name as entered in their Amazon Connect user account.</p>"
        },
        "lastName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The agent’s last name as entered in their Amazon Connect user account.</p>"
        }
      },
      "documentation":"<p>Information about an agent.</p>"
    },
    "AmazonConnectGuideAssociationData":{
      "type":"structure",
      "members":{
        "flowId":{
          "shape":"GenericArn",
          "documentation":"<p> The Amazon Resource Name (ARN) of an Amazon Connect flow. Step-by-step guides are a type of flow.</p>"
        }
      },
      "documentation":"<p>Content association data for a <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/step-by-step-guided-experiences.html\">step-by-step guide</a>.</p>"
    },
    "AndConditions":{
      "type":"list",
      "member":{"shape":"TagCondition"}
    },
    "Annotation":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"String",
          "documentation":"<p>The title of the annotation.</p>"
        },
        "destructiveHint":{
          "shape":"Boolean",
          "documentation":"<p>A hint indicating that the annotation contains potentially destructive content.</p>"
        }
      },
      "documentation":"<p>An annotation that provides additional context or metadata.</p>",
      "sensitive":true
    },
    "AnswerRecommendationAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "intentLabelingGenerationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Intent Labeling prompt used by the <code>ANSWER_RECOMMENDATION</code> AI Agent.</p>"
        },
        "queryReformulationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Query Reformulation prompt used by the <code>ANSWER_RECOMMENDATION</code> AI Agent.</p>"
        },
        "answerGenerationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Answer Generation prompt used by the <code>ANSWER_RECOMMENDATION</code> AI Agent.</p>"
        },
        "answerGenerationAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier for the Answer Generation Guardrail used by the <code>ANSWER_RECOMMENDATION</code> AI Agent.</p>"
        },
        "associationConfigurations":{
          "shape":"AssociationConfigurationList",
          "documentation":"<p>The association configurations for overriding behavior on this AI Agent.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale to which specifies the language and region settings that determine the response language for <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_QueryAssistant.html\">QueryAssistant</a>.</p> <note> <p>For more information on supported locales, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/supported-languages.html#qic-notes-languages\">Language support for Amazon Q in Connect</a>.</p> </note>"
        },
        "suggestedMessages":{
          "shape":"SuggestedMessagesList",
          "documentation":"<p>The suggested messages configuration for the Answer Recommendation AI Agent.</p>"
        }
      },
      "documentation":"<p>The configuration for the <code>ANSWER_RECOMMENDATION</code> AI Agent type.</p>"
    },
    "AppIntegrationsConfiguration":{
      "type":"structure",
      "required":["appIntegrationArn"],
      "members":{
        "appIntegrationArn":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.</p> <ul> <li> <p> For <a href=\"https://developer.salesforce.com/docs/atlas.en-us.knowledge_dev.meta/knowledge_dev/sforce_api_objects_knowledge__kav.htm\"> Salesforce</a>, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least <code>Id</code>, <code>ArticleNumber</code>, <code>VersionNumber</code>, <code>Title</code>, <code>PublishStatus</code>, and <code>IsDeleted</code> as source fields. </p> </li> <li> <p> For <a href=\"https://developer.servicenow.com/dev.do#!/reference/api/rome/rest/knowledge-management-api\"> ServiceNow</a>, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least <code>number</code>, <code>short_description</code>, <code>sys_mod_count</code>, <code>workflow_state</code>, and <code>active</code> as source fields. </p> </li> <li> <p> For <a href=\"https://developer.zendesk.com/api-reference/help_center/help-center-api/articles/\"> Zendesk</a>, your AppIntegrations DataIntegration must have an ObjectConfiguration if <code>objectFields</code> is not provided, including at least <code>id</code>, <code>title</code>, <code>updated_at</code>, and <code>draft</code> as source fields. </p> </li> <li> <p> For <a href=\"https://learn.microsoft.com/en-us/sharepoint/dev/sp-add-ins/sharepoint-net-server-csom-jsom-and-rest-api-index\">SharePoint</a>, your AppIntegrations DataIntegration must have a FileConfiguration, including only file extensions that are among <code>docx</code>, <code>pdf</code>, <code>html</code>, <code>htm</code>, and <code>txt</code>. </p> </li> <li> <p> For <a href=\"http://aws.amazon.com/s3/\">Amazon S3</a>, the ObjectConfiguration and FileConfiguration of your AppIntegrations DataIntegration must be null. The <code>SourceURI</code> of your DataIntegration must use the following format: <code>s3://your_s3_bucket_name</code>.</p> <important> <p>The bucket policy of the corresponding S3 bucket must allow the Amazon Web Services principal <code>app-integrations.amazonaws.com</code> to perform <code>s3:ListBucket</code>, <code>s3:GetObject</code>, and <code>s3:GetBucketLocation</code> against the bucket.</p> </important> </li> </ul>"
        },
        "objectFields":{
          "shape":"ObjectFieldsList",
          "documentation":"<p>The fields from the source that are made available to your agents in Amazon Q in Connect. Optional if ObjectConfiguration is included in the provided DataIntegration. </p> <ul> <li> <p> For <a href=\"https://developer.salesforce.com/docs/atlas.en-us.knowledge_dev.meta/knowledge_dev/sforce_api_objects_knowledge__kav.htm\"> Salesforce</a>, you must include at least <code>Id</code>, <code>ArticleNumber</code>, <code>VersionNumber</code>, <code>Title</code>, <code>PublishStatus</code>, and <code>IsDeleted</code>. </p> </li> <li> <p>For <a href=\"https://developer.servicenow.com/dev.do#!/reference/api/rome/rest/knowledge-management-api\"> ServiceNow</a>, you must include at least <code>number</code>, <code>short_description</code>, <code>sys_mod_count</code>, <code>workflow_state</code>, and <code>active</code>. </p> </li> <li> <p>For <a href=\"https://developer.zendesk.com/api-reference/help_center/help-center-api/articles/\"> Zendesk</a>, you must include at least <code>id</code>, <code>title</code>, <code>updated_at</code>, and <code>draft</code>. </p> </li> </ul> <p>Make sure to include additional fields. These fields are indexed and used to source recommendations. </p>"
        }
      },
      "documentation":"<p>Configuration information for Amazon AppIntegrations to automatically ingest content.</p>"
    },
    "Arn":{
      "type":"string",
      "pattern":"arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}"
    },
    "ArnWithQualifier":{
      "type":"string",
      "pattern":"arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}(:[A-Z0-9_$]+){0,1}"
    },
    "AssistantAssociationData":{
      "type":"structure",
      "required":[
        "assistantAssociationId",
        "assistantAssociationArn",
        "assistantId",
        "assistantArn",
        "associationType",
        "associationData"
      ],
      "members":{
        "assistantAssociationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the assistant association.</p>"
        },
        "assistantAssociationArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the assistant association.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "associationType":{
          "shape":"AssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "associationData":{
          "shape":"AssistantAssociationOutputData",
          "documentation":"<p>A union type that currently has a single argument, the knowledge base ID.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Information about the assistant association.</p>"
    },
    "AssistantAssociationIdList":{
      "type":"list",
      "member":{"shape":"UuidOrArn"},
      "max":1,
      "min":1
    },
    "AssistantAssociationInputData":{
      "type":"structure",
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base.</p>"
        },
        "externalBedrockKnowledgeBaseConfig":{
          "shape":"ExternalBedrockKnowledgeBaseConfig",
          "documentation":"<p>The configuration for an external Bedrock knowledge base association.</p>"
        }
      },
      "documentation":"<p>The data that is input into Amazon Q in Connect as a result of the assistant association.</p>",
      "union":true
    },
    "AssistantAssociationOutputData":{
      "type":"structure",
      "members":{
        "knowledgeBaseAssociation":{
          "shape":"KnowledgeBaseAssociationData",
          "documentation":"<p>The knowledge base where output data is sent.</p>"
        },
        "externalBedrockKnowledgeBaseConfig":{
          "shape":"ExternalBedrockKnowledgeBaseConfig",
          "documentation":"<p>The configuration for an external Bedrock knowledge base association in the output data.</p>"
        }
      },
      "documentation":"<p>The data that is output as a result of the assistant association.</p>",
      "union":true
    },
    "AssistantAssociationSummary":{
      "type":"structure",
      "required":[
        "assistantAssociationId",
        "assistantAssociationArn",
        "assistantId",
        "assistantArn",
        "associationType",
        "associationData"
      ],
      "members":{
        "assistantAssociationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the assistant association.</p>"
        },
        "assistantAssociationArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the assistant association.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "associationType":{
          "shape":"AssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "associationData":{
          "shape":"AssistantAssociationOutputData",
          "documentation":"<p>The association data.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Summary information about the assistant association.</p>"
    },
    "AssistantAssociationSummaryList":{
      "type":"list",
      "member":{"shape":"AssistantAssociationSummary"}
    },
    "AssistantCapabilityConfiguration":{
      "type":"structure",
      "members":{
        "type":{
          "shape":"AssistantCapabilityType",
          "documentation":"<p>The type of Amazon Q in Connect assistant capability. </p>"
        }
      },
      "documentation":"<p>The capability configuration for an Amazon Q in Connect assistant. </p>"
    },
    "AssistantCapabilityType":{
      "type":"string",
      "enum":[
        "V1",
        "V2"
      ]
    },
    "AssistantData":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "name",
        "type",
        "status"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name.</p>"
        },
        "type":{
          "shape":"AssistantType",
          "documentation":"<p>The type of assistant.</p>"
        },
        "status":{
          "shape":"AssistantStatus",
          "documentation":"<p>The status of the assistant.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>This KMS key must have a policy that allows <code>kms:CreateGrant</code>, <code>kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect. To use Amazon Q in Connect with chat, the key policy must also allow <code>kms:Decrypt</code>, <code>kms:GenerateDataKey*</code>, and <code>kms:DescribeKey</code> permissions to the <code>connect.amazonaws.com</code> service principal. </p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        },
        "integrationConfiguration":{
          "shape":"AssistantIntegrationConfiguration",
          "documentation":"<p>The configuration information for the Amazon Q in Connect assistant integration.</p>"
        },
        "capabilityConfiguration":{
          "shape":"AssistantCapabilityConfiguration",
          "documentation":"<p>The configuration information for the Amazon Q in Connect assistant capability. </p>"
        },
        "aiAgentConfiguration":{
          "shape":"AIAgentConfigurationMap",
          "documentation":"<p>The configuration of the AI Agents (mapped by AI Agent Type to AI Agent version) that is set on the Amazon Q in Connect Assistant.</p>"
        },
        "orchestratorConfigurationList":{
          "shape":"OrchestratorConfigurationList",
          "documentation":"<p>The list of orchestrator configurations for the assistant.</p>"
        }
      },
      "documentation":"<p>The assistant data.</p>"
    },
    "AssistantIntegrationConfiguration":{
      "type":"structure",
      "members":{
        "topicIntegrationArn":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.</p>"
        }
      },
      "documentation":"<p>The configuration information for the Amazon Q in Connect assistant integration.</p>"
    },
    "AssistantList":{
      "type":"list",
      "member":{"shape":"AssistantSummary"}
    },
    "AssistantStatus":{
      "type":"string",
      "enum":[
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED"
      ]
    },
    "AssistantSummary":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "name",
        "type",
        "status"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the assistant.</p>"
        },
        "type":{
          "shape":"AssistantType",
          "documentation":"<p>The type of the assistant.</p>"
        },
        "status":{
          "shape":"AssistantStatus",
          "documentation":"<p>The status of the assistant.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the assistant.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>This KMS key must have a policy that allows <code>kms:CreateGrant</code>, <code>kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect. To use Amazon Q in Connect with chat, the key policy must also allow <code>kms:Decrypt</code>, <code>kms:GenerateDataKey*</code>, and <code>kms:DescribeKey</code> permissions to the <code>connect.amazonaws.com</code> service principal. </p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        },
        "integrationConfiguration":{
          "shape":"AssistantIntegrationConfiguration",
          "documentation":"<p>The configuration information for the Amazon Q in Connect assistant integration.</p>"
        },
        "capabilityConfiguration":{
          "shape":"AssistantCapabilityConfiguration",
          "documentation":"<p>The configuration information for the Amazon Q in Connect assistant capability. </p>"
        },
        "aiAgentConfiguration":{
          "shape":"AIAgentConfigurationMap",
          "documentation":"<p>The configuration of the AI Agents (mapped by AI Agent Type to AI Agent version) that is set on the Amazon Q in Connect Assistant.</p>"
        },
        "orchestratorConfigurationList":{
          "shape":"OrchestratorConfigurationList",
          "documentation":"<p>The list of orchestrator configurations for the assistant.</p>"
        }
      },
      "documentation":"<p>Summary information about the assistant.</p>"
    },
    "AssistantType":{
      "type":"string",
      "enum":["AGENT"]
    },
    "AssociationConfiguration":{
      "type":"structure",
      "members":{
        "associationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the association for this Association Configuration.</p>"
        },
        "associationType":{
          "shape":"AIAgentAssociationConfigurationType",
          "documentation":"<p>The type of the association for this Association Configuration.</p>"
        },
        "associationConfigurationData":{
          "shape":"AssociationConfigurationData",
          "documentation":"<p>The data of the configuration for an Amazon Q in Connect Assistant Association.</p>"
        }
      },
      "documentation":"<p>The configuration for an Amazon Q in Connect Assistant Association.</p>"
    },
    "AssociationConfigurationData":{
      "type":"structure",
      "members":{
        "knowledgeBaseAssociationConfigurationData":{
          "shape":"KnowledgeBaseAssociationConfigurationData",
          "documentation":"<p>The data of the configuration for a <code>KNOWLEDGE_BASE</code> type Amazon Q in Connect Assistant Association.</p>"
        }
      },
      "documentation":"<p>A typed union of the data of the configuration for an Amazon Q in Connect Assistant Association.</p>",
      "union":true
    },
    "AssociationConfigurationList":{
      "type":"list",
      "member":{"shape":"AssociationConfiguration"}
    },
    "AssociationType":{
      "type":"string",
      "enum":[
        "KNOWLEDGE_BASE",
        "EXTERNAL_BEDROCK_KNOWLEDGE_BASE"
      ]
    },
    "AttachmentFileName":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"[\\p{L}\\p{M}\\p{N}_\\s&@()+,;=\\-]+\\.[A-Za-z0-9]+",
      "sensitive":true
    },
    "BedrockFoundationModelConfigurationForParsing":{
      "type":"structure",
      "required":["modelArn"],
      "members":{
        "modelArn":{
          "shape":"BedrockModelArnForParsing",
          "documentation":"<p>The ARN of the foundation model.</p>"
        },
        "parsingPrompt":{
          "shape":"ParsingPrompt",
          "documentation":"<p>Instructions for interpreting the contents of a document.</p>"
        }
      },
      "documentation":"<p>Settings for a foundation model used to parse documents for a data source.</p>"
    },
    "BedrockKnowledgeBaseArn":{
      "type":"string",
      "max":128,
      "min":47,
      "pattern":"arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+"
    },
    "BedrockModelArnForParsing":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/anthropic.claude-3-haiku-20240307-v1:0"
    },
    "Boolean":{
      "type":"boolean",
      "box":true
    },
    "CaseArn":{
      "type":"string",
      "pattern":"arn:[a-z-]*?:cases:[a-z0-9-]*?:[0-9]{12}:domain/.{1,500}/case/[A-Za-z0-9\\-._/:#=+-]{1,500}"
    },
    "CaseSummarizationAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "caseSummarizationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier used by the Case Summarization AI Agent.</p>"
        },
        "caseSummarizationAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier used by the Case Summarization AI Agent.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for the Case Summarization AI Agent.</p>"
        }
      },
      "documentation":"<p>The configuration for AI Agents of type <code>CASE_SUMMARIZATION</code>.</p>"
    },
    "CaseSummarizationChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>A chunk of the case summarization completion.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for retrieving the next chunk of streaming summarization data, if available.</p>"
        }
      },
      "documentation":"<p>Details about case summarization chunk data.</p>"
    },
    "CaseSummarizationInputData":{
      "type":"structure",
      "required":["caseArn"],
      "members":{
        "caseArn":{
          "shape":"CaseArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the case for summarization.</p>"
        }
      },
      "documentation":"<p>Input data for case summarization.</p>"
    },
    "Channel":{
      "type":"string",
      "max":10,
      "min":1,
      "sensitive":true
    },
    "ChannelSubtype":{
      "type":"string",
      "enum":[
        "EMAIL",
        "SMS",
        "WHATSAPP",
        "PUSH"
      ]
    },
    "Channels":{
      "type":"list",
      "member":{"shape":"Channel"}
    },
    "ChunkingConfiguration":{
      "type":"structure",
      "required":["chunkingStrategy"],
      "members":{
        "chunkingStrategy":{
          "shape":"ChunkingStrategy",
          "documentation":"<p>Knowledge base can split your source data into chunks. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried. You have the following options for chunking your data. If you opt for <code>NONE</code>, then you may want to pre-process your files by splitting them up such that each file corresponds to a chunk.</p>"
        },
        "fixedSizeChunkingConfiguration":{
          "shape":"FixedSizeChunkingConfiguration",
          "documentation":"<p>Configurations for when you choose fixed-size chunking. If you set the <code>chunkingStrategy</code> as <code>NONE</code>, exclude this field.</p>"
        },
        "hierarchicalChunkingConfiguration":{
          "shape":"HierarchicalChunkingConfiguration",
          "documentation":"<p>Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents into layers of chunks where the first layer contains large chunks, and the second layer contains smaller chunks derived from the first layer.</p>"
        },
        "semanticChunkingConfiguration":{
          "shape":"SemanticChunkingConfiguration",
          "documentation":"<p>Settings for semantic document chunking for a data source. Semantic chunking splits a document into smaller documents based on groups of similar content derived from the text with natural language processing.</p>"
        }
      },
      "documentation":"<p>Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.</p>"
    },
    "ChunkingStrategy":{
      "type":"string",
      "enum":[
        "FIXED_SIZE",
        "NONE",
        "HIERARCHICAL",
        "SEMANTIC"
      ]
    },
    "Citation":{
      "type":"structure",
      "required":[
        "citationSpan",
        "referenceType"
      ],
      "members":{
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content being cited.</p>"
        },
        "title":{
          "shape":"SensitiveString",
          "documentation":"<p>The title of the cited content.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base containing the cited content.</p>"
        },
        "citationSpan":{"shape":"CitationSpan"},
        "sourceURL":{
          "shape":"SensitiveString",
          "documentation":"<p>The source URL for the citation.</p>"
        },
        "referenceType":{
          "shape":"ReferenceType",
          "documentation":"<p>A type to define the KB origin of a cited content</p>"
        }
      },
      "documentation":"<p>A citation that references source content.</p>"
    },
    "CitationSpan":{
      "type":"structure",
      "members":{
        "beginOffsetInclusive":{
          "shape":"CitationSpanOffset",
          "documentation":"<p>Where the text with a citation starts in the generated output.</p>"
        },
        "endOffsetExclusive":{
          "shape":"CitationSpanOffset",
          "documentation":"<p>Where the text with a citation ends in the generated output.</p>"
        }
      },
      "documentation":"<p>Contains information about where the text with a citation begins and ends in the generated output.</p>"
    },
    "CitationSpanOffset":{"type":"integer"},
    "Citations":{
      "type":"list",
      "member":{"shape":"Citation"}
    },
    "ClientToken":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "Configuration":{
      "type":"structure",
      "members":{
        "connectConfiguration":{
          "shape":"ConnectConfiguration",
          "documentation":"<p>The configuration information of the Amazon Connect data source.</p>"
        }
      },
      "documentation":"<p>The configuration information of the external data source.</p>",
      "union":true
    },
    "ConflictException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The request could not be processed because of conflict in the current state of the resource. For example, if you're using a <code>Create</code> API (such as <code>CreateAssistant</code>) that accepts name, a conflicting resource (usually with the same name) is being created or mutated.</p>",
      "error":{
        "httpStatusCode":409,
        "senderFault":true
      },
      "exception":true
    },
    "ConnectConfiguration":{
      "type":"structure",
      "members":{
        "instanceId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.</p>"
        }
      },
      "documentation":"<p>The configuration information of the Amazon Connect data source.</p>"
    },
    "ContactAttributeKey":{"type":"string"},
    "ContactAttributeKeys":{
      "type":"list",
      "member":{"shape":"ContactAttributeKey"},
      "sensitive":true
    },
    "ContactAttributeValue":{"type":"string"},
    "ContactAttributes":{
      "type":"map",
      "key":{"shape":"ContactAttributeKey"},
      "value":{"shape":"ContactAttributeValue"},
      "sensitive":true
    },
    "ContentAssociationContents":{
      "type":"structure",
      "members":{
        "amazonConnectGuideAssociation":{
          "shape":"AmazonConnectGuideAssociationData",
          "documentation":"<p>The data of the step-by-step guide association.</p>"
        }
      },
      "documentation":"<p>The contents of a content association.</p>",
      "union":true
    },
    "ContentAssociationData":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "knowledgeBaseArn",
        "contentId",
        "contentArn",
        "contentAssociationId",
        "contentAssociationArn",
        "associationType",
        "associationData"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content.</p>"
        },
        "contentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content.</p>"
        },
        "contentAssociationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "contentAssociationArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content association.</p>"
        },
        "associationType":{
          "shape":"ContentAssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "associationData":{
          "shape":"ContentAssociationContents",
          "documentation":"<p>The content association.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Information about the content association.</p>"
    },
    "ContentAssociationSummary":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "knowledgeBaseArn",
        "contentId",
        "contentArn",
        "contentAssociationId",
        "contentAssociationArn",
        "associationType",
        "associationData"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content.</p>"
        },
        "contentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content.</p>"
        },
        "contentAssociationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "contentAssociationArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content association.</p>"
        },
        "associationType":{
          "shape":"ContentAssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "associationData":{
          "shape":"ContentAssociationContents",
          "documentation":"<p>The content association.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Summary information about a content association.</p>"
    },
    "ContentAssociationSummaryList":{
      "type":"list",
      "member":{"shape":"ContentAssociationSummary"}
    },
    "ContentAssociationType":{
      "type":"string",
      "enum":["AMAZON_CONNECT_GUIDE"]
    },
    "ContentData":{
      "type":"structure",
      "required":[
        "contentArn",
        "contentId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "revisionId",
        "title",
        "contentType",
        "status",
        "metadata",
        "url",
        "urlExpiry"
      ],
      "members":{
        "contentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content.</p>"
        },
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the content.</p>"
        },
        "revisionId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The identifier of the content revision.</p>"
        },
        "title":{
          "shape":"ContentTitle",
          "documentation":"<p>The title of the content.</p>"
        },
        "contentType":{
          "shape":"ContentType",
          "documentation":"<p>The media type of the content.</p>"
        },
        "status":{
          "shape":"ContentStatus",
          "documentation":"<p>The status of the content.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q in Connect, you can store an external version identifier as metadata to utilize for determining drift.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "linkOutUri":{
          "shape":"Uri",
          "documentation":"<p>The URI of the content.</p>"
        },
        "url":{
          "shape":"Url",
          "documentation":"<p>The URL of the content.</p>"
        },
        "urlExpiry":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The expiration time of the URL as an epoch timestamp.</p>"
        }
      },
      "documentation":"<p>Information about the content.</p>"
    },
    "ContentDataDetails":{
      "type":"structure",
      "required":[
        "textData",
        "rankingData"
      ],
      "members":{
        "textData":{
          "shape":"TextData",
          "documentation":"<p>Details about the content text data.</p>"
        },
        "rankingData":{
          "shape":"RankingData",
          "documentation":"<p>Details about the content ranking data.</p>"
        }
      },
      "documentation":"<p>Details about the content data.</p>"
    },
    "ContentDisposition":{
      "type":"string",
      "enum":["ATTACHMENT"]
    },
    "ContentFeedbackData":{
      "type":"structure",
      "members":{
        "generativeContentFeedbackData":{
          "shape":"GenerativeContentFeedbackData",
          "documentation":"<p>Information about the feedback for a generative target type.</p>"
        }
      },
      "documentation":"<p>Information about the feedback.</p>",
      "union":true
    },
    "ContentMetadata":{
      "type":"map",
      "key":{"shape":"NonEmptyString"},
      "value":{"shape":"NonEmptyString"},
      "max":10,
      "min":0
    },
    "ContentReference":{
      "type":"structure",
      "members":{
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base.</p>"
        },
        "contentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content.</p>"
        },
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content.</p>"
        },
        "sourceURL":{
          "shape":"String",
          "documentation":"<p>The web URL of the source content.</p>"
        },
        "referenceType":{
          "shape":"ReferenceType",
          "documentation":"<p>The type of reference content.</p>"
        }
      },
      "documentation":"<p>Reference information about the content.</p>"
    },
    "ContentStatus":{
      "type":"string",
      "enum":[
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED",
        "UPDATE_FAILED"
      ]
    },
    "ContentSummary":{
      "type":"structure",
      "required":[
        "contentArn",
        "contentId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "revisionId",
        "title",
        "contentType",
        "status",
        "metadata"
      ],
      "members":{
        "contentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the content.</p>"
        },
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the content.</p>"
        },
        "revisionId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The identifier of the revision of the content.</p>"
        },
        "title":{
          "shape":"ContentTitle",
          "documentation":"<p>The title of the content.</p>"
        },
        "contentType":{
          "shape":"ContentType",
          "documentation":"<p>The media type of the content.</p>"
        },
        "status":{
          "shape":"ContentStatus",
          "documentation":"<p>The status of the content.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q in Connect, you can store an external version identifier as metadata to utilize for determining drift.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Summary information about the content.</p>"
    },
    "ContentSummaryList":{
      "type":"list",
      "member":{"shape":"ContentSummary"}
    },
    "ContentTitle":{
      "type":"string",
      "max":255,
      "min":1
    },
    "ContentType":{
      "type":"string",
      "pattern":"(text/(plain|html|csv))|(application/(pdf|vnd\\.openxmlformats-officedocument\\.wordprocessingml\\.document))|(application/x\\.wisdom-json;source=(salesforce|servicenow|zendesk))"
    },
    "ConversationContext":{
      "type":"structure",
      "required":["selfServiceConversationHistory"],
      "members":{
        "selfServiceConversationHistory":{
          "shape":"SelfServiceConversationHistoryList",
          "documentation":"<p>The self service conversation history before the Amazon Q in Connect session.</p>"
        }
      },
      "documentation":"<p>The conversation context to include in SendMessage.</p>"
    },
    "ConversationState":{
      "type":"structure",
      "required":["status"],
      "members":{
        "status":{
          "shape":"ConversationStatus",
          "documentation":"<p>The status of the conversation state.</p>"
        },
        "reason":{
          "shape":"ConversationStatusReason",
          "documentation":"<p>The reason of the conversation state.</p>"
        }
      },
      "documentation":"<p>The conversation state associated to a message.</p>"
    },
    "ConversationStatus":{
      "type":"string",
      "enum":[
        "CLOSED",
        "READY",
        "PROCESSING"
      ]
    },
    "ConversationStatusReason":{
      "type":"string",
      "enum":[
        "SUCCESS",
        "FAILED",
        "REJECTED"
      ]
    },
    "CreateAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "name",
        "type",
        "configuration",
        "visibilityStatus"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Agent.</p>"
        },
        "type":{
          "shape":"AIAgentType",
          "documentation":"<p>The type of the AI Agent.</p>"
        },
        "configuration":{
          "shape":"AIAgentConfiguration",
          "documentation":"<p>The configuration of the AI Agent.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Agent.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Agent.</p>"
        }
      }
    },
    "CreateAIAgentResponse":{
      "type":"structure",
      "members":{
        "aiAgent":{
          "shape":"AIAgentData",
          "documentation":"<p>The data of the created AI Agent.</p>"
        }
      }
    },
    "CreateAIAgentVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The modification time of the AI Agent should be tracked for version creation. This field should be specified to avoid version creation when simultaneous update to the underlying AI Agent are possible. The value should be the modifiedTime returned from the request to create or update an AI Agent so that version creation can fail if an update to the AI Agent post the specified modification time has been made.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateAIAgentVersionResponse":{
      "type":"structure",
      "members":{
        "aiAgent":{
          "shape":"AIAgentData",
          "documentation":"<p>The data of the AI Agent version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Agent version.</p>"
        }
      }
    },
    "CreateAIGuardrailRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "name",
        "blockedInputMessaging",
        "blockedOutputsMessaging",
        "visibilityStatus"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Guardrail.</p>"
        },
        "blockedInputMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a prompt.</p>"
        },
        "blockedOutputsMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a model response.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Guardrail.</p>"
        },
        "description":{
          "shape":"AIGuardrailDescription",
          "documentation":"<p>A description of the AI Guardrail.</p>"
        },
        "topicPolicyConfig":{
          "shape":"AIGuardrailTopicPolicyConfig",
          "documentation":"<p>The topic policies to configure for the AI Guardrail.</p>"
        },
        "contentPolicyConfig":{
          "shape":"AIGuardrailContentPolicyConfig",
          "documentation":"<p>The content filter policies to configure for the AI Guardrail.</p>"
        },
        "wordPolicyConfig":{
          "shape":"AIGuardrailWordPolicyConfig",
          "documentation":"<p>The word policy you configure for the AI Guardrail.</p>"
        },
        "sensitiveInformationPolicyConfig":{
          "shape":"AIGuardrailSensitiveInformationPolicyConfig",
          "documentation":"<p>The sensitive information policy to configure for the AI Guardrail.</p>"
        },
        "contextualGroundingPolicyConfig":{
          "shape":"AIGuardrailContextualGroundingPolicyConfig",
          "documentation":"<p>The contextual grounding policy configuration used to create an AI Guardrail.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateAIGuardrailResponse":{
      "type":"structure",
      "members":{
        "aiGuardrail":{
          "shape":"AIGuardrailData",
          "documentation":"<p>The data of the AI Guardrail.</p>"
        }
      }
    },
    "CreateAIGuardrailVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Guardrail was last modified.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateAIGuardrailVersionResponse":{
      "type":"structure",
      "members":{
        "aiGuardrail":{
          "shape":"AIGuardrailData",
          "documentation":"<p>The data of the AI Guardrail version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Guardrail version.</p>"
        }
      }
    },
    "CreateAIPromptRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "name",
        "type",
        "templateConfiguration",
        "visibilityStatus",
        "templateType",
        "modelId",
        "apiFormat"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the AI Prompt.</p>"
        },
        "type":{
          "shape":"AIPromptType",
          "documentation":"<p>The type of this AI Prompt.</p>"
        },
        "templateConfiguration":{
          "shape":"AIPromptTemplateConfiguration",
          "documentation":"<p>The configuration of the prompt template for this AI Prompt.</p>"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the AI Prompt.</p>"
        },
        "templateType":{
          "shape":"AIPromptTemplateType",
          "documentation":"<p>The type of the prompt template for this AI Prompt.</p>"
        },
        "modelId":{
          "shape":"AIPromptModelIdentifier",
          "documentation":"<p>The identifier of the model used for this AI Prompt.</p> <note> <p>For information about which models are supported in each Amazon Web Services Region, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/create-ai-prompts.html#cli-create-aiprompt\">Supported models for system/custom prompts</a>.</p> </note>"
        },
        "apiFormat":{
          "shape":"AIPromptAPIFormat",
          "documentation":"<p>The API Format of the AI Prompt.</p> <p>Recommended values: <code>MESSAGES | TEXT_COMPLETIONS</code> </p> <note> <p>The values <code>ANTHROPIC_CLAUDE_MESSAGES | ANTHROPIC_CLAUDE_TEXT_COMPLETIONS</code> will be deprecated.</p> </note>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the AI Prompt.</p>"
        },
        "inferenceConfiguration":{
          "shape":"AIPromptInferenceConfiguration",
          "documentation":"<p>The inference configuration for the AI Prompt being created.</p>"
        }
      }
    },
    "CreateAIPromptResponse":{
      "type":"structure",
      "members":{
        "aiPrompt":{
          "shape":"AIPromptData",
          "documentation":"<p>The data of the AI Prompt.</p>"
        }
      }
    },
    "CreateAIPromptVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        },
        "modifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time the AI Prompt was last modified.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateAIPromptVersionResponse":{
      "type":"structure",
      "members":{
        "aiPrompt":{
          "shape":"AIPromptData",
          "documentation":"<p>The data of the AI Prompt version.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Prompt version.</p>"
        }
      }
    },
    "CreateAssistantAssociationRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "associationType",
        "association"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "associationType":{
          "shape":"AssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "association":{
          "shape":"AssistantAssociationInputData",
          "documentation":"<p>The identifier of the associated resource.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateAssistantAssociationResponse":{
      "type":"structure",
      "members":{
        "assistantAssociation":{
          "shape":"AssistantAssociationData",
          "documentation":"<p>The assistant association.</p>"
        }
      }
    },
    "CreateAssistantRequest":{
      "type":"structure",
      "required":[
        "name",
        "type"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the assistant.</p>"
        },
        "type":{
          "shape":"AssistantType",
          "documentation":"<p>The type of assistant.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the assistant.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>The customer managed key must have a policy that allows <code>kms:CreateGrant</code>, <code> kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect. To use Amazon Q in Connect with chat, the key policy must also allow <code>kms:Decrypt</code>, <code>kms:GenerateDataKey*</code>, and <code>kms:DescribeKey</code> permissions to the <code>connect.amazonaws.com</code> service principal. </p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        }
      }
    },
    "CreateAssistantResponse":{
      "type":"structure",
      "members":{
        "assistant":{
          "shape":"AssistantData",
          "documentation":"<p>Information about the assistant.</p>"
        }
      }
    },
    "CreateContentAssociationRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId",
        "associationType",
        "association"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "associationType":{
          "shape":"ContentAssociationType",
          "documentation":"<p>The type of association.</p>"
        },
        "association":{
          "shape":"ContentAssociationContents",
          "documentation":"<p>The identifier of the associated resource.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateContentAssociationResponse":{
      "type":"structure",
      "members":{
        "contentAssociation":{
          "shape":"ContentAssociationData",
          "documentation":"<p>The association between Amazon Q in Connect content and another resource.</p>"
        }
      }
    },
    "CreateContentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "name",
        "uploadId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the content. Each piece of content in a knowledge base must have a unique name. You can retrieve a piece of content using only its knowledge base and its name with the <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_SearchContent.html\">SearchContent</a> API.</p>"
        },
        "title":{
          "shape":"ContentTitle",
          "documentation":"<p>The title of the content. If not set, the title is equal to the name.</p>"
        },
        "overrideLinkOutUri":{
          "shape":"Uri",
          "documentation":"<p>The URI you want to use for the article. If the knowledge base has a templateUri, setting this argument overrides it for this piece of content.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q in Connect, you can store an external version identifier as metadata to utilize for determining drift.</p>"
        },
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>A pointer to the uploaded asset. This value is returned by <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a>.</p>"
        },
        "clientToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateContentResponse":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"ContentData",
          "documentation":"<p>The content.</p>"
        }
      }
    },
    "CreateKnowledgeBaseRequest":{
      "type":"structure",
      "required":[
        "name",
        "knowledgeBaseType"
      ],
      "members":{
        "clientToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the knowledge base.</p>"
        },
        "knowledgeBaseType":{
          "shape":"KnowledgeBaseType",
          "documentation":"<p>The type of knowledge base. Only CUSTOM knowledge bases allow you to upload your own content. EXTERNAL knowledge bases support integrations with third-party systems whose content is synchronized automatically. </p>"
        },
        "sourceConfiguration":{
          "shape":"SourceConfiguration",
          "documentation":"<p>The source of the knowledge base content. Only set this argument for EXTERNAL or Managed knowledge bases.</p>"
        },
        "renderingConfiguration":{
          "shape":"RenderingConfiguration",
          "documentation":"<p>Information about how to render the content.</p>"
        },
        "vectorIngestionConfiguration":{
          "shape":"VectorIngestionConfiguration",
          "documentation":"<p>Contains details about how to ingest the documents in a data source.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>This KMS key must have a policy that allows <code>kms:CreateGrant</code>, <code>kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect.</p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateKnowledgeBaseResponse":{
      "type":"structure",
      "members":{
        "knowledgeBase":{
          "shape":"KnowledgeBaseData",
          "documentation":"<p>The knowledge base.</p>"
        }
      }
    },
    "CreateMessageTemplateAttachmentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId",
        "contentDisposition",
        "name",
        "body"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "contentDisposition":{
          "shape":"ContentDisposition",
          "documentation":"<p>The presentation information for the attachment file.</p>"
        },
        "name":{
          "shape":"AttachmentFileName",
          "documentation":"<p>The name of the attachment file being uploaded. The name should include the file extension.</p>"
        },
        "body":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The body of the attachment file being uploaded. It should be encoded using base64 encoding.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>"
        }
      }
    },
    "CreateMessageTemplateAttachmentResponse":{
      "type":"structure",
      "members":{
        "attachment":{
          "shape":"MessageTemplateAttachment",
          "documentation":"<p>The message template attachment.</p>"
        }
      }
    },
    "CreateMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "channelSubtype"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "content":{
          "shape":"MessageTemplateContentProvider",
          "documentation":"<p>The content of the message template.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "sourceConfiguration":{
          "shape":"MessageTemplateSourceConfiguration",
          "documentation":"<p>The source configuration of the message template. Only set this argument for WHATSAPP channel subtype.</p>"
        },
        "defaultAttributes":{
          "shape":"MessageTemplateAttributes",
          "documentation":"<p>An object that specifies the default values to use for variables in the message template. This object contains different categories of key-value pairs. Each key defines a variable or placeholder in the message template. The corresponding value defines the default value for that variable.</p>"
        },
        "groupingConfiguration":{"shape":"GroupingConfiguration"},
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateMessageTemplateResponse":{
      "type":"structure",
      "members":{
        "messageTemplate":{
          "shape":"MessageTemplateData",
          "documentation":"<p>The message template.</p>"
        }
      }
    },
    "CreateMessageTemplateVersionRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "messageTemplateContentSha256":{
          "shape":"MessageTemplateContentSha256",
          "documentation":"<p>The checksum value of the message template content that is referenced by the <code>$LATEST</code> qualifier. It can be returned in <code>MessageTemplateData</code> or <code>ExtendedMessageTemplateData</code>. It’s calculated by content, language, <code>defaultAttributes</code> and <code>Attachments</code> of the message template. If not supplied, the message template version will be created based on the message template content that is referenced by the <code>$LATEST</code> qualifier by default.</p>"
        }
      }
    },
    "CreateMessageTemplateVersionResponse":{
      "type":"structure",
      "members":{
        "messageTemplate":{
          "shape":"ExtendedMessageTemplateData",
          "documentation":"<p>The message template.</p>"
        }
      }
    },
    "CreateQuickResponseRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "name",
        "content"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "name":{
          "shape":"QuickResponseName",
          "documentation":"<p>The name of the quick response.</p>"
        },
        "content":{
          "shape":"QuickResponseDataProvider",
          "documentation":"<p>The content of the quick response.</p>"
        },
        "contentType":{
          "shape":"QuickResponseType",
          "documentation":"<p>The media type of the quick response content.</p> <ul> <li> <p>Use <code>application/x.quickresponse;format=plain</code> for a quick response written in plain text.</p> </li> <li> <p>Use <code>application/x.quickresponse;format=markdown</code> for a quick response written in richtext.</p> </li> </ul>"
        },
        "groupingConfiguration":{
          "shape":"GroupingConfiguration",
          "documentation":"<p>The configuration information of the user groups that the quick response is accessible to.</p>"
        },
        "description":{
          "shape":"QuickResponseDescription",
          "documentation":"<p>The description of the quick response.</p>"
        },
        "shortcutKey":{
          "shape":"ShortCutKey",
          "documentation":"<p>The shortcut key of the quick response. The value should be unique across the knowledge base. </p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the quick response is active.</p>"
        },
        "channels":{
          "shape":"Channels",
          "documentation":"<p>The Amazon Connect channels this quick response applies to.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "clientToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "CreateQuickResponseResponse":{
      "type":"structure",
      "members":{
        "quickResponse":{
          "shape":"QuickResponseData",
          "documentation":"<p>The quick response.</p>"
        }
      }
    },
    "CreateSessionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "name"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>.</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the session.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "tagFilter":{
          "shape":"TagFilter",
          "documentation":"<p>An object that can be used to specify Tag conditions. </p>"
        },
        "aiAgentConfiguration":{
          "shape":"AIAgentConfigurationMap",
          "documentation":"<p>The configuration of the AI Agents (mapped by AI Agent Type to AI Agent version) that should be used by Amazon Q in Connect for this Session.</p>"
        },
        "contactArn":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the email contact in Amazon Connect. Used to retrieve email content and establish session context for AI-powered email assistance.</p>"
        },
        "orchestratorConfigurationList":{
          "shape":"OrchestratorConfigurationList",
          "documentation":"<p>The list of orchestrator configurations for the session being created.</p>"
        },
        "removeOrchestratorConfigurationList":{
          "shape":"Boolean",
          "documentation":"<p>The list of orchestrator configurations to remove from the session.</p>"
        }
      }
    },
    "CreateSessionResponse":{
      "type":"structure",
      "members":{
        "session":{
          "shape":"SessionData",
          "documentation":"<p>The session.</p>"
        }
      }
    },
    "CrossRegionStatus":{
      "type":"string",
      "enum":[
        "NONE",
        "REGIONAL",
        "GLOBAL"
      ]
    },
    "CustomAttributes":{
      "type":"map",
      "key":{"shape":"MessageTemplateAttributeKey"},
      "value":{"shape":"MessageTemplateAttributeValue"},
      "sensitive":true
    },
    "CustomerProfileAttributes":{
      "type":"structure",
      "members":{
        "profileId":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The unique identifier of a customer profile.</p>"
        },
        "profileARN":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The ARN of a customer profile.</p>"
        },
        "firstName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's first name.</p>"
        },
        "middleName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's middle name.</p>"
        },
        "lastName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's last name.</p>"
        },
        "accountNumber":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>A unique account number that you have given to the customer.</p>"
        },
        "emailAddress":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's email address, which has not been specified as a personal or business address.</p>"
        },
        "phoneNumber":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's phone number, which has not been specified as a mobile, home, or business number.</p>"
        },
        "additionalInformation":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>Any additional information relevant to the customer's profile.</p>"
        },
        "partyType":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's party type.</p>"
        },
        "businessName":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The name of the customer's business.</p>"
        },
        "birthDate":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's birth date.</p>"
        },
        "gender":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's gender.</p>"
        },
        "mobilePhoneNumber":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's mobile phone number.</p>"
        },
        "homePhoneNumber":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's mobile phone number.</p>"
        },
        "businessPhoneNumber":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's business phone number.</p>"
        },
        "businessEmailAddress":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's business email address.</p>"
        },
        "address1":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The first line of a customer address.</p>"
        },
        "address2":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The second line of a customer address.</p>"
        },
        "address3":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The third line of a customer address.</p>"
        },
        "address4":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The fourth line of a customer address.</p>"
        },
        "city":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The city in which a customer lives.</p>"
        },
        "county":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The county in which a customer lives.</p>"
        },
        "country":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The country in which a customer lives.</p>"
        },
        "postalCode":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The postal code of a customer address.</p>"
        },
        "province":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The province in which a customer lives.</p>"
        },
        "state":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The state in which a customer lives.</p>"
        },
        "shippingAddress1":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The first line of a customer’s shipping address.</p>"
        },
        "shippingAddress2":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The second line of a customer’s shipping address.</p>"
        },
        "shippingAddress3":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The third line of a customer’s shipping address.</p>"
        },
        "shippingAddress4":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The fourth line of a customer’s shipping address.</p>"
        },
        "shippingCity":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The city of a customer’s shipping address.</p>"
        },
        "shippingCounty":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The county of a customer’s shipping address.</p>"
        },
        "shippingCountry":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The country of a customer’s shipping address.</p>"
        },
        "shippingPostalCode":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The postal code of a customer’s shipping address.</p>"
        },
        "shippingProvince":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The province of a customer’s shipping address.</p>"
        },
        "shippingState":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The state of a customer’s shipping address.</p>"
        },
        "mailingAddress1":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The first line of a customer’s mailing address.</p>"
        },
        "mailingAddress2":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The second line of a customer’s mailing address.</p>"
        },
        "mailingAddress3":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The third line of a customer’s mailing address.</p>"
        },
        "mailingAddress4":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The fourth line of a customer’s mailing address.</p>"
        },
        "mailingCity":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The city of a customer’s mailing address.</p>"
        },
        "mailingCounty":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The county of a customer’s mailing address.</p>"
        },
        "mailingCountry":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The country of a customer’s mailing address.</p>"
        },
        "mailingPostalCode":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The postal code of a customer’s mailing address.</p>"
        },
        "mailingProvince":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The province of a customer’s mailing address.</p>"
        },
        "mailingState":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The state of a customer’s mailing address.</p>"
        },
        "billingAddress1":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The first line of a customer’s billing address.</p>"
        },
        "billingAddress2":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The second line of a customer’s billing address.</p>"
        },
        "billingAddress3":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The third line of a customer’s billing address.</p>"
        },
        "billingAddress4":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The fourth line of a customer’s billing address.</p>"
        },
        "billingCity":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The city of a customer’s billing address.</p>"
        },
        "billingCounty":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The county of a customer’s billing address.</p>"
        },
        "billingCountry":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The country of a customer’s billing address.</p>"
        },
        "billingPostalCode":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The postal code of a customer’s billing address.</p>"
        },
        "billingProvince":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The province of a customer’s billing address.</p>"
        },
        "billingState":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The state of a customer’s billing address.</p>"
        },
        "custom":{
          "shape":"CustomAttributes",
          "documentation":"<p>The custom attributes in customer profile attributes.</p>"
        }
      },
      "documentation":"<p>The customer profile attributes that are used with the message template.</p>"
    },
    "DataDetails":{
      "type":"structure",
      "members":{
        "contentData":{
          "shape":"ContentDataDetails",
          "documentation":"<p>Details about the content data.</p>"
        },
        "generativeData":{
          "shape":"GenerativeDataDetails",
          "documentation":"<p> Details about the generative data.</p>"
        },
        "intentDetectedData":{
          "shape":"IntentDetectedDataDetails",
          "documentation":"<p>Details about the intent data.</p>"
        },
        "sourceContentData":{
          "shape":"SourceContentDataDetails",
          "documentation":"<p>Details about the content data.</p>"
        },
        "generativeChunkData":{
          "shape":"GenerativeChunkDataDetails",
          "documentation":"<p>Details about the generative chunk data.</p>"
        },
        "emailResponseChunkData":{
          "shape":"EmailResponseChunkDataDetails",
          "documentation":"<p>Streaming chunk data for email response generation containing partial response content.</p>"
        },
        "emailOverviewChunkData":{
          "shape":"EmailOverviewChunkDataDetails",
          "documentation":"<p>Streaming chunk data for email overview containing partial overview content.</p>"
        },
        "emailGenerativeAnswerChunkData":{
          "shape":"EmailGenerativeAnswerChunkDataDetails",
          "documentation":"<p>Streaming chunk data for email generative answers containing partial knowledge-based response content.</p>"
        },
        "caseSummarizationChunkData":{
          "shape":"CaseSummarizationChunkDataDetails",
          "documentation":"<p>Details about case summarization chunk data.</p>"
        },
        "suggestedMessageData":{
          "shape":"SuggestedMessageDataDetails",
          "documentation":"<p>Details about suggested message data.</p>"
        },
        "notesData":{
          "shape":"NotesDataDetails",
          "documentation":"<p>Details about notes data.</p>"
        },
        "notesChunkData":{
          "shape":"NotesChunkDataDetails",
          "documentation":"<p>Details about notes chunk data.</p>"
        }
      },
      "documentation":"<p>Details about the data.</p>",
      "union":true
    },
    "DataReference":{
      "type":"structure",
      "members":{
        "contentReference":{"shape":"ContentReference"},
        "generativeReference":{
          "shape":"GenerativeReference",
          "documentation":"<p>Reference information about the generative content.</p>"
        },
        "suggestedMessageReference":{
          "shape":"SuggestedMessageReference",
          "documentation":"<p>Reference information for suggested messages.</p>"
        }
      },
      "documentation":"<p>Reference data.</p>",
      "union":true
    },
    "DataSummary":{
      "type":"structure",
      "required":[
        "reference",
        "details"
      ],
      "members":{
        "reference":{
          "shape":"DataReference",
          "documentation":"<p>Reference information about the content.</p>"
        },
        "details":{
          "shape":"DataDetails",
          "documentation":"<p>Details about the data.</p>"
        }
      },
      "documentation":"<p>Summary of the data.</p>"
    },
    "DataSummaryList":{
      "type":"list",
      "member":{"shape":"DataSummary"}
    },
    "DeactivateMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId",
        "versionNumber"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version to deactivate.</p>"
        }
      }
    },
    "DeactivateMessageTemplateResponse":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "versionNumber"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version that has been deactivated.</p>"
        }
      }
    },
    "DeleteAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        }
      }
    },
    "DeleteAIAgentResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAIAgentVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId",
        "versionNumber"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Agent version.</p>",
          "location":"uri",
          "locationName":"versionNumber"
        }
      }
    },
    "DeleteAIAgentVersionResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAIGuardrailRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        }
      }
    },
    "DeleteAIGuardrailResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAIGuardrailVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId",
        "versionNumber"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Guardrail version to be deleted.</p>",
          "location":"uri",
          "locationName":"versionNumber"
        }
      }
    },
    "DeleteAIGuardrailVersionResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAIPromptRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        }
      }
    },
    "DeleteAIPromptResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAIPromptVersionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId",
        "versionNumber"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Prompt version to be deleted.</p>",
          "location":"uri",
          "locationName":"versionNumber"
        }
      }
    },
    "DeleteAIPromptVersionResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAssistantAssociationRequest":{
      "type":"structure",
      "required":[
        "assistantAssociationId",
        "assistantId"
      ],
      "members":{
        "assistantAssociationId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantAssociationId"
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        }
      }
    },
    "DeleteAssistantAssociationResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteAssistantRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        }
      }
    },
    "DeleteAssistantResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteContentAssociationRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId",
        "contentAssociationId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "contentAssociationId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentAssociationId"
        }
      }
    },
    "DeleteContentAssociationResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteContentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentId"
        }
      }
    },
    "DeleteContentResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteImportJobRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "importJobId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "importJobId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the import job to be deleted.</p>",
          "location":"uri",
          "locationName":"importJobId"
        }
      }
    },
    "DeleteImportJobResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteKnowledgeBaseRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The knowledge base to delete content from. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "DeleteKnowledgeBaseResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteMessageTemplateAttachmentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId",
        "attachmentId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "attachmentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the attachment file.</p>",
          "location":"uri",
          "locationName":"attachmentId"
        }
      }
    },
    "DeleteMessageTemplateAttachmentResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        }
      }
    },
    "DeleteMessageTemplateResponse":{
      "type":"structure",
      "members":{}
    },
    "DeleteQuickResponseRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "quickResponseId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The knowledge base from which the quick response is deleted. The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "quickResponseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the quick response to delete.</p>",
          "location":"uri",
          "locationName":"quickResponseId"
        }
      }
    },
    "DeleteQuickResponseResponse":{
      "type":"structure",
      "members":{}
    },
    "DependencyFailedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The request failed because it depends on another request that failed.</p>",
      "error":{
        "httpStatusCode":424,
        "senderFault":true
      },
      "exception":true
    },
    "Description":{
      "type":"string",
      "max":255,
      "min":1,
      "pattern":"[a-zA-Z0-9\\s_.,-]+.*"
    },
    "Document":{
      "type":"structure",
      "required":["contentReference"],
      "members":{
        "contentReference":{
          "shape":"ContentReference",
          "documentation":"<p>A reference to the content resource.</p>"
        },
        "title":{
          "shape":"DocumentText",
          "documentation":"<p>The title of the document.</p>"
        },
        "excerpt":{
          "shape":"DocumentText",
          "documentation":"<p>The excerpt from the document.</p>"
        }
      },
      "documentation":"<p>The document.</p>"
    },
    "DocumentText":{
      "type":"structure",
      "members":{
        "text":{
          "shape":"SensitiveString",
          "documentation":"<p>Text in the document.</p>"
        },
        "highlights":{
          "shape":"Highlights",
          "documentation":"<p>Highlights in the document text.</p>"
        }
      },
      "documentation":"<p>The text of the document.</p>"
    },
    "EmailGenerativeAnswerAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "emailGenerativeAnswerAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the System AI prompt used for generating comprehensive knowledge-based answers from email queries.</p>"
        },
        "emailQueryReformulationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the System AI prompt used for reformulating email queries to optimize knowledge base search results.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for language-specific email processing and response generation (for example, en_US, es_ES).</p>"
        },
        "associationConfigurations":{
          "shape":"AssociationConfigurationList",
          "documentation":"<p>Configuration settings for knowledge base associations used by the email generative answer agent.</p>"
        }
      },
      "documentation":"<p>Configuration settings for the EMAIL_GENERATIVE_ANSWER AI agent including prompts, locale, and knowledge base associations.</p>"
    },
    "EmailGenerativeAnswerChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The partial or complete text content of the generative answer response.</p>"
        },
        "references":{
          "shape":"DataSummaryList",
          "documentation":"<p>Source references and citations from knowledge base articles used to generate the answer.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for retrieving the next chunk of streaming response data, if available.</p>"
        }
      },
      "documentation":"<p>Details of streaming chunk data for email generative answers including completion text and references.</p>"
    },
    "EmailHeader":{
      "type":"structure",
      "members":{
        "name":{
          "shape":"EmailHeaderKey",
          "documentation":"<p>The name of the email header.</p>"
        },
        "value":{
          "shape":"EmailHeaderValue",
          "documentation":"<p>The value of the email header.</p>"
        }
      },
      "documentation":"<p>The email header to include in email messages.</p>"
    },
    "EmailHeaderKey":{
      "type":"string",
      "max":126,
      "min":1,
      "pattern":"[!-9;-@A-~]+"
    },
    "EmailHeaderValue":{
      "type":"string",
      "max":870,
      "min":1,
      "pattern":".*[ -~]*.*",
      "sensitive":true
    },
    "EmailHeaders":{
      "type":"list",
      "member":{"shape":"EmailHeader"},
      "max":15,
      "min":0
    },
    "EmailMessageTemplateContent":{
      "type":"structure",
      "members":{
        "subject":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The subject line, or title, to use in email messages.</p>"
        },
        "body":{
          "shape":"EmailMessageTemplateContentBody",
          "documentation":"<p>The body to use in email messages.</p>"
        },
        "headers":{
          "shape":"EmailHeaders",
          "documentation":"<p>The email headers to include in email messages.</p>"
        }
      },
      "documentation":"<p>The content of the message template that applies to the email channel subtype.</p>"
    },
    "EmailMessageTemplateContentBody":{
      "type":"structure",
      "members":{
        "plainText":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body, in plain text format, to use in email messages that are based on the message template. We recommend using plain text format for email clients that don't render HTML content and clients that are connected to high-latency networks, such as mobile devices.</p>"
        },
        "html":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body, in HTML format, to use in email messages that are based on the message template. We recommend using HTML format for email clients that render HTML content. You can include links, formatted text, and more in an HTML message.</p>"
        }
      },
      "documentation":"<p>The body to use in email messages.</p>"
    },
    "EmailOverviewAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "emailOverviewAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the System AI prompt used for generating structured email conversation summaries.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for language-specific email overview processing (for example, en_US, es_ES).</p>"
        }
      },
      "documentation":"<p>Configuration settings for the EMAIL_OVERVIEW AI agent including prompt ID and locale settings.</p>"
    },
    "EmailOverviewChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The partial or complete overview text content in structured HTML format with customer issues, resolutions, and next steps.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for retrieving the next chunk of streaming overview data, if available.</p>"
        }
      },
      "documentation":"<p>Details of streaming chunk data for email overview including completion text and pagination tokens.</p>"
    },
    "EmailResponseAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "emailResponseAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the System AI prompt used for generating professional email responses based on knowledge base content.</p>"
        },
        "emailQueryReformulationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The ID of the System AI prompt used for reformulating email queries to optimize knowledge base search for response generation.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for language-specific email response generation (for example, en_US, es_ES).</p>"
        },
        "associationConfigurations":{
          "shape":"AssociationConfigurationList",
          "documentation":"<p>Configuration settings for knowledge base associations used by the email response agent.</p>"
        }
      },
      "documentation":"<p>Configuration settings for the EMAIL_RESPONSE AI agent including prompts, locale, and knowledge base associations.</p>"
    },
    "EmailResponseChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The partial or complete professional email response text with appropriate greetings and closings.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for retrieving the next chunk of streaming response data, if available.</p>"
        }
      },
      "documentation":"<p>Details of streaming chunk data for email responses including completion text and pagination tokens.</p>"
    },
    "ExtendedMessageTemplateData":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "channelSubtype",
        "createdTime",
        "lastModifiedTime",
        "lastModifiedBy",
        "messageTemplateContentSha256"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "channel":{
          "shape":"Channel",
          "documentation":"<p>The channel of the message template.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template data was last modified.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the message template data.</p>"
        },
        "content":{
          "shape":"MessageTemplateContentProvider",
          "documentation":"<p>The content of the message template.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "sourceConfigurationSummary":{
          "shape":"MessageTemplateSourceConfigurationSummary",
          "documentation":"<p>The source configuration summary of the message template.</p>"
        },
        "groupingConfiguration":{"shape":"GroupingConfiguration"},
        "defaultAttributes":{
          "shape":"MessageTemplateAttributes",
          "documentation":"<p>An object that specifies the default values to use for variables in the message template. This object contains different categories of key-value pairs. Each key defines a variable or placeholder in the message template. The corresponding value defines the default value for that variable.</p>"
        },
        "attributeTypes":{
          "shape":"MessageTemplateAttributeTypeList",
          "documentation":"<p>The types of attributes contain the message template.</p>"
        },
        "attachments":{
          "shape":"MessageTemplateAttachmentList",
          "documentation":"<p>The message template attachments.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the version of the message template is activated.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version.</p>"
        },
        "messageTemplateContentSha256":{
          "shape":"MessageTemplateContentSha256",
          "documentation":"<p>The checksum value of the message template content that is referenced by the <code>$LATEST</code> qualifier. It can be returned in <code>MessageTemplateData</code> or <code>ExtendedMessageTemplateData</code>. It’s calculated by content, language, <code>defaultAttributes</code> and <code>Attachments</code> of the message template.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The extended data of a message template.</p>"
    },
    "ExternalBedrockKnowledgeBaseConfig":{
      "type":"structure",
      "required":[
        "bedrockKnowledgeBaseArn",
        "accessRoleArn"
      ],
      "members":{
        "bedrockKnowledgeBaseArn":{
          "shape":"BedrockKnowledgeBaseArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the external Bedrock knowledge base.</p>"
        },
        "accessRoleArn":{
          "shape":"AccessRoleArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the IAM role used to access the external Bedrock knowledge base.</p>"
        }
      },
      "documentation":"<p>Configuration for an external Bedrock knowledge base.</p>"
    },
    "ExternalSource":{
      "type":"string",
      "enum":["AMAZON_CONNECT"]
    },
    "ExternalSourceConfiguration":{
      "type":"structure",
      "required":[
        "source",
        "configuration"
      ],
      "members":{
        "source":{
          "shape":"ExternalSource",
          "documentation":"<p>The type of the external data source.</p>"
        },
        "configuration":{
          "shape":"Configuration",
          "documentation":"<p>The configuration information of the external data source.</p>"
        }
      },
      "documentation":"<p>The configuration information of the external data source.</p>"
    },
    "FailureReason":{
      "type":"list",
      "member":{"shape":"NonEmptyString"}
    },
    "Filter":{
      "type":"structure",
      "required":[
        "field",
        "operator",
        "value"
      ],
      "members":{
        "field":{
          "shape":"FilterField",
          "documentation":"<p>The field on which to filter.</p>"
        },
        "operator":{
          "shape":"FilterOperator",
          "documentation":"<p>The operator to use for comparing the field’s value with the provided value.</p>"
        },
        "value":{
          "shape":"NonEmptyString",
          "documentation":"<p>The desired field value on which to filter.</p>"
        }
      },
      "documentation":"<p>A search filter.</p>"
    },
    "FilterAttribute":{
      "type":"structure",
      "required":[
        "key",
        "value"
      ],
      "members":{
        "key":{
          "shape":"FilterAttributeKey",
          "documentation":"<p>The key of the filter attribute.</p>"
        },
        "value":{
          "shape":"JSONDocument",
          "documentation":"<p>The value of the filter attribute.</p>"
        }
      },
      "documentation":"<p>An attribute used for filtering.</p>"
    },
    "FilterAttributeKey":{
      "type":"string",
      "max":100,
      "min":1
    },
    "FilterField":{
      "type":"string",
      "enum":["NAME"]
    },
    "FilterList":{
      "type":"list",
      "member":{"shape":"Filter"}
    },
    "FilterOperator":{
      "type":"string",
      "enum":["EQUALS"]
    },
    "FixedSizeChunkingConfiguration":{
      "type":"structure",
      "required":[
        "maxTokens",
        "overlapPercentage"
      ],
      "members":{
        "maxTokens":{
          "shape":"FixedSizeChunkingConfigurationMaxTokensInteger",
          "documentation":"<p>The maximum number of tokens to include in a chunk.</p>"
        },
        "overlapPercentage":{
          "shape":"FixedSizeChunkingConfigurationOverlapPercentageInteger",
          "documentation":"<p>The percentage of overlap between adjacent chunks of a data source.</p>"
        }
      },
      "documentation":"<p>Configurations for when you choose fixed-size chunking. If you set the <code>chunkingStrategy</code> as <code>NONE</code>, exclude this field.</p>"
    },
    "FixedSizeChunkingConfigurationMaxTokensInteger":{
      "type":"integer",
      "box":true,
      "min":1
    },
    "FixedSizeChunkingConfigurationOverlapPercentageInteger":{
      "type":"integer",
      "box":true,
      "max":99,
      "min":1
    },
    "GenerativeChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"SensitiveString",
          "documentation":"<p>A chunk of the LLM response.</p>"
        },
        "references":{
          "shape":"DataSummaryList",
          "documentation":"<p>The references used to generate the LLM response.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of chunks. Use the value returned in the previous response in the next request to retrieve the next set of chunks.</p>"
        }
      },
      "documentation":"<p>Details about the generative chunk data.</p>"
    },
    "GenerativeContentFeedbackData":{
      "type":"structure",
      "required":["relevance"],
      "members":{
        "relevance":{
          "shape":"Relevance",
          "documentation":"<p>The relevance of the feedback.</p>"
        }
      },
      "documentation":"<p>The feedback information for a generative target type.</p>"
    },
    "GenerativeDataDetails":{
      "type":"structure",
      "required":[
        "completion",
        "references",
        "rankingData"
      ],
      "members":{
        "completion":{
          "shape":"SensitiveString",
          "documentation":"<p>The LLM response.</p>"
        },
        "references":{
          "shape":"DataSummaryList",
          "documentation":"<p>The references used to generative the LLM response.</p>"
        },
        "rankingData":{
          "shape":"RankingData",
          "documentation":"<p>Details about the generative content ranking data.</p>"
        }
      },
      "documentation":"<p>Details about generative data.</p>"
    },
    "GenerativeReference":{
      "type":"structure",
      "members":{
        "modelId":{
          "shape":"LlmModelId",
          "documentation":"<p>The identifier of the LLM model. </p>"
        },
        "generationId":{
          "shape":"Uuid",
          "documentation":"<p> The identifier of the LLM model. </p>"
        }
      },
      "documentation":"<p>Reference information about generative content.</p>"
    },
    "GenericArn":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"arn:[a-z-]+?:[a-z-]+?:[a-z0-9-]*?:([0-9]{12})?:[a-zA-Z0-9-:/]+"
    },
    "GetAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent (with or without a version qualifier). Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        }
      }
    },
    "GetAIAgentResponse":{
      "type":"structure",
      "members":{
        "aiAgent":{
          "shape":"AIAgentData",
          "documentation":"<p>The data of the AI Agent.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Agent version (returned if an AI Agent version was specified via use of a qualifier for the <code>aiAgentId</code> on the request). </p>"
        }
      }
    },
    "GetAIGuardrailRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        }
      }
    },
    "GetAIGuardrailResponse":{
      "type":"structure",
      "members":{
        "aiGuardrail":{
          "shape":"AIGuardrailData",
          "documentation":"<p>The data of the AI Guardrail.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Guardrail version (returned if an AI Guardrail version was specified via use of a qualifier for the <code>aiGuardrailId</code> on the request). </p>"
        }
      }
    },
    "GetAIPromptRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        }
      }
    },
    "GetAIPromptResponse":{
      "type":"structure",
      "members":{
        "aiPrompt":{
          "shape":"AIPromptData",
          "documentation":"<p>The data of the AI Prompt.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the AI Prompt version (returned if an AI Prompt version was specified via use of a qualifier for the <code>aiPromptId</code> on the request). </p>"
        }
      }
    },
    "GetAssistantAssociationRequest":{
      "type":"structure",
      "required":[
        "assistantAssociationId",
        "assistantId"
      ],
      "members":{
        "assistantAssociationId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantAssociationId"
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        }
      }
    },
    "GetAssistantAssociationResponse":{
      "type":"structure",
      "members":{
        "assistantAssociation":{
          "shape":"AssistantAssociationData",
          "documentation":"<p>The assistant association.</p>"
        }
      }
    },
    "GetAssistantRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        }
      }
    },
    "GetAssistantResponse":{
      "type":"structure",
      "members":{
        "assistant":{
          "shape":"AssistantData",
          "documentation":"<p>Information about the assistant.</p>"
        }
      }
    },
    "GetContentAssociationRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId",
        "contentAssociationId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "contentAssociationId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content association. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentAssociationId"
        }
      }
    },
    "GetContentAssociationResponse":{
      "type":"structure",
      "members":{
        "contentAssociation":{
          "shape":"ContentAssociationData",
          "documentation":"<p>The association between Amazon Q in Connect content and another resource.</p>"
        }
      }
    },
    "GetContentRequest":{
      "type":"structure",
      "required":[
        "contentId",
        "knowledgeBaseId"
      ],
      "members":{
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetContentResponse":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"ContentData",
          "documentation":"<p>The content.</p>"
        }
      }
    },
    "GetContentSummaryRequest":{
      "type":"structure",
      "required":[
        "contentId",
        "knowledgeBaseId"
      ],
      "members":{
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetContentSummaryResponse":{
      "type":"structure",
      "members":{
        "contentSummary":{
          "shape":"ContentSummary",
          "documentation":"<p>The content summary.</p>"
        }
      }
    },
    "GetImportJobRequest":{
      "type":"structure",
      "required":[
        "importJobId",
        "knowledgeBaseId"
      ],
      "members":{
        "importJobId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the import job to retrieve.</p>",
          "location":"uri",
          "locationName":"importJobId"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base that the import job belongs to.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetImportJobResponse":{
      "type":"structure",
      "members":{
        "importJob":{
          "shape":"ImportJobData",
          "documentation":"<p>The import job.</p>"
        }
      }
    },
    "GetKnowledgeBaseRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetKnowledgeBaseResponse":{
      "type":"structure",
      "members":{
        "knowledgeBase":{
          "shape":"KnowledgeBaseData",
          "documentation":"<p>The knowledge base.</p>"
        }
      }
    },
    "GetMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "messageTemplateId",
        "knowledgeBaseId"
      ],
      "members":{
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetMessageTemplateResponse":{
      "type":"structure",
      "members":{
        "messageTemplate":{
          "shape":"ExtendedMessageTemplateData",
          "documentation":"<p>The message template.</p>"
        }
      }
    },
    "GetNextMessageRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId",
        "nextMessageToken"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect session.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "nextMessageToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next message. Use the value returned in the SendMessage or previous response in the next request to retrieve the next message.</p>",
          "location":"querystring",
          "locationName":"nextMessageToken"
        }
      }
    },
    "GetNextMessageResponse":{
      "type":"structure",
      "required":[
        "type",
        "response",
        "requestMessageId",
        "conversationState"
      ],
      "members":{
        "type":{
          "shape":"MessageType",
          "documentation":"<p>The type of message response.</p>"
        },
        "response":{
          "shape":"MessageOutput",
          "documentation":"<p>The message response to the requested message.</p>"
        },
        "requestMessageId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the submitted message.</p>"
        },
        "conversationState":{
          "shape":"ConversationState",
          "documentation":"<p>The state of current conversation.</p>"
        },
        "nextMessageToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next message.</p>"
        },
        "conversationSessionData":{
          "shape":"RuntimeSessionDataList",
          "documentation":"<p>The conversation data stored on an Amazon Q in Connect Session.</p>"
        },
        "chunkedResponseTerminated":{
          "shape":"Boolean",
          "documentation":"<p>Indicates whether the chunked response has been terminated.</p>"
        }
      }
    },
    "GetQuickResponseRequest":{
      "type":"structure",
      "required":[
        "quickResponseId",
        "knowledgeBaseId"
      ],
      "members":{
        "quickResponseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the quick response.</p>",
          "location":"uri",
          "locationName":"quickResponseId"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "GetQuickResponseResponse":{
      "type":"structure",
      "members":{
        "quickResponse":{
          "shape":"QuickResponseData",
          "documentation":"<p>The quick response.</p>"
        }
      }
    },
    "GetRecommendationsRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "waitTimeSeconds":{
          "shape":"WaitTimeSeconds",
          "documentation":"<p>The duration (in seconds) for which the call waits for a recommendation to be made available before returning. If a recommendation is available, the call returns sooner than <code>WaitTimeSeconds</code>. If no messages are available and the wait time expires, the call returns successfully with an empty list.</p>",
          "location":"querystring",
          "locationName":"waitTimeSeconds"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of chunks. Use the value returned in the previous response in the next request to retrieve the next set of chunks.</p>",
          "location":"querystring",
          "locationName":"nextChunkToken"
        },
        "recommendationType":{
          "shape":"RecommendationType",
          "documentation":"<p>The type of recommendation being requested.</p>",
          "location":"querystring",
          "locationName":"recommendationType"
        }
      }
    },
    "GetRecommendationsResponse":{
      "type":"structure",
      "required":["recommendations"],
      "members":{
        "recommendations":{
          "shape":"RecommendationList",
          "documentation":"<p>The recommendations.</p>"
        },
        "triggers":{
          "shape":"RecommendationTriggerList",
          "documentation":"<p>The triggers corresponding to recommendations.</p>"
        }
      }
    },
    "GetSessionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"sessionId"
        }
      }
    },
    "GetSessionResponse":{
      "type":"structure",
      "members":{
        "session":{
          "shape":"SessionData",
          "documentation":"<p>The session.</p>"
        }
      }
    },
    "GroupingConfiguration":{
      "type":"structure",
      "members":{
        "criteria":{
          "shape":"GroupingCriteria",
          "documentation":"<p>The criteria used for grouping Amazon Q in Connect users.</p> <p>The following is the list of supported criteria values.</p> <ul> <li> <p> <code>RoutingProfileArn</code>: Grouping the users by their <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html\">Amazon Connect routing profile ARN</a>. User should have <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_SearchRoutingProfiles.html\">SearchRoutingProfile</a> and <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribeRoutingProfile.html\">DescribeRoutingProfile</a> permissions when setting criteria to this value.</p> </li> </ul>"
        },
        "values":{
          "shape":"GroupingValues",
          "documentation":"<p>The list of values that define different groups of Amazon Q in Connect users.</p> <ul> <li> <p>When setting <code>criteria</code> to <code>RoutingProfileArn</code>, you need to provide a list of ARNs of <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html\">Amazon Connect routing profiles</a> as values of this parameter.</p> </li> </ul>"
        }
      },
      "documentation":"<p>The configuration information of the grouping of Amazon Q in Connect users.</p>"
    },
    "GroupingCriteria":{
      "type":"string",
      "max":100,
      "min":1,
      "sensitive":true
    },
    "GroupingValue":{
      "type":"string",
      "max":2048,
      "min":1,
      "sensitive":true
    },
    "GroupingValues":{
      "type":"list",
      "member":{"shape":"GroupingValue"}
    },
    "GuardrailAction":{
      "type":"string",
      "documentation":"<p>The outcome of a guardrail assessment.</p>",
      "enum":[
        "NONE",
        "BLOCKED",
        "MASKED"
      ]
    },
    "GuardrailContentFilterConfig":{
      "type":"structure",
      "required":[
        "type",
        "inputStrength",
        "outputStrength"
      ],
      "members":{
        "type":{
          "shape":"GuardrailContentFilterType",
          "documentation":"<p>The harmful category that the content filter is applied to.</p>"
        },
        "inputStrength":{
          "shape":"GuardrailFilterStrength",
          "documentation":"<p>The strength of the content filter to apply to prompts. As you increase the filter strength, the likelihood of filtering harmful content increases and the probability of seeing harmful content in your application reduces.</p>"
        },
        "outputStrength":{
          "shape":"GuardrailFilterStrength",
          "documentation":"<p>The strength of the content filter to apply to model responses. As you increase the filter strength, the likelihood of filtering harmful content increases and the probability of seeing harmful content in your application reduces.</p>"
        }
      },
      "documentation":"<p>Contains filter strengths for harmful content. AI Guardrail's support the following content filters to detect and filter harmful user inputs and FM-generated outputs.</p> <ul> <li> <p> <b>Hate</b>: Describes input prompts and model responses that discriminate, criticize, insult, denounce, or dehumanize a person or group on the basis of an identity (such as race, ethnicity, gender, religion, sexual orientation, ability, and national origin).</p> </li> <li> <p> <b>Insults</b>: Describes input prompts and model responses that includes demeaning, humiliating, mocking, insulting, or belittling language. This type of language is also labeled as bullying.</p> </li> <li> <p> <b>Sexual</b>: Describes input prompts and model responses that indicates sexual interest, activity, or arousal using direct or indirect references to body parts, physical traits, or sex.</p> </li> <li> <p> <b>Violence</b>: Describes input prompts and model responses that includes glorification of, or threats to inflict physical pain, hurt, or injury toward a person, group, or thing.</p> </li> </ul> <p>Content filtering depends on the confidence classification of user inputs and FM responses across each of the four harmful categories. All input and output statements are classified into one of four confidence levels (NONE, LOW, MEDIUM, HIGH) for each harmful category. For example, if a statement is classified as <i>Hate</i> with HIGH confidence, the likelihood of the statement representing hateful content is high. A single statement can be classified across multiple categories with varying confidence levels. For example, a single statement can be classified as <i>Hate</i> with HIGH confidence, <i> Insults</i> with LOW confidence, <i>Sexual</i> with NONE confidence, and <i>Violence</i> with MEDIUM confidence.</p>"
    },
    "GuardrailContentFilterType":{
      "type":"string",
      "documentation":"<p>Type of text to text filter in content policy</p>",
      "enum":[
        "SEXUAL",
        "VIOLENCE",
        "HATE",
        "INSULTS",
        "MISCONDUCT",
        "PROMPT_ATTACK"
      ],
      "sensitive":true
    },
    "GuardrailContentFiltersConfig":{
      "type":"list",
      "member":{"shape":"GuardrailContentFilterConfig"},
      "documentation":"<p>List of content filter configs in content policy.</p>",
      "max":6,
      "min":1
    },
    "GuardrailContextualGroundingFilterConfig":{
      "type":"structure",
      "required":[
        "type",
        "threshold"
      ],
      "members":{
        "type":{
          "shape":"GuardrailContextualGroundingFilterType",
          "documentation":"<p>The filter type for the AI Guardrail's contextual grounding filter.</p>"
        },
        "threshold":{
          "shape":"GuardrailContextualGroundingFilterThreshold",
          "documentation":"<p>The threshold details for the AI Guardrail's contextual grounding filter.</p>"
        }
      },
      "documentation":"<p>The filter configuration details for the AI Guardrail's contextual grounding filter.</p>"
    },
    "GuardrailContextualGroundingFilterThreshold":{
      "type":"double",
      "documentation":"<p>The threshold for this filter.</p>",
      "min":0,
      "sensitive":true
    },
    "GuardrailContextualGroundingFilterType":{
      "type":"string",
      "documentation":"<p>Type of contextual grounding filter</p>",
      "enum":[
        "GROUNDING",
        "RELEVANCE"
      ],
      "sensitive":true
    },
    "GuardrailContextualGroundingFiltersConfig":{
      "type":"list",
      "member":{"shape":"GuardrailContextualGroundingFilterConfig"},
      "documentation":"<p>List of contextual grounding filter configs.</p>",
      "min":1
    },
    "GuardrailFilterStrength":{
      "type":"string",
      "documentation":"<p>Strength for filters</p>",
      "enum":[
        "NONE",
        "LOW",
        "MEDIUM",
        "HIGH"
      ],
      "sensitive":true
    },
    "GuardrailManagedWordListsConfig":{
      "type":"list",
      "member":{"shape":"GuardrailManagedWordsConfig"},
      "documentation":"<p>A config for the list of managed words.</p>"
    },
    "GuardrailManagedWordsConfig":{
      "type":"structure",
      "required":["type"],
      "members":{
        "type":{
          "shape":"GuardrailManagedWordsType",
          "documentation":"<p>The managed word type to configure for the AI Guardrail.</p>"
        }
      },
      "documentation":"<p>The managed word list to configure for the AI Guardrail.</p>"
    },
    "GuardrailManagedWordsType":{
      "type":"string",
      "documentation":"<p>Options for managed words.</p>",
      "enum":["PROFANITY"],
      "sensitive":true
    },
    "GuardrailPiiEntitiesConfig":{
      "type":"list",
      "member":{"shape":"GuardrailPiiEntityConfig"},
      "documentation":"<p>List of entities.</p>",
      "min":1
    },
    "GuardrailPiiEntityConfig":{
      "type":"structure",
      "required":[
        "type",
        "action"
      ],
      "members":{
        "type":{
          "shape":"GuardrailPiiEntityType",
          "documentation":"<p>Configure AI Guardrail type when the PII entity is detected.</p> <p>The following PIIs are used to block or mask sensitive information:</p> <ul> <li> <p> <b>General</b> </p> <ul> <li> <p> <b>ADDRESS</b> </p> <p>A physical address, such as \"100 Main Street, Anytown, USA\" or \"Suite #12, Building 123\". An address can include information such as the street, building, location, city, state, country, county, zip code, precinct, and neighborhood. </p> </li> <li> <p> <b>AGE</b> </p> <p>An individual's age, including the quantity and unit of time. For example, in the phrase \"I am 40 years old,\" Guarrails recognizes \"40 years\" as an age. </p> </li> <li> <p> <b>NAME</b> </p> <p>An individual's name. This entity type does not include titles, such as Dr., Mr., Mrs., or Miss. AI Guardrail doesn't apply this entity type to names that are part of organizations or addresses. For example, AI Guardrail recognizes the \"John Doe Organization\" as an organization, and it recognizes \"Jane Doe Street\" as an address. </p> </li> <li> <p> <b>EMAIL</b> </p> <p>An email address, such as <i>marymajor@email.com</i>.</p> </li> <li> <p> <b>PHONE</b> </p> <p>A phone number. This entity type also includes fax and pager numbers. </p> </li> <li> <p> <b>USERNAME</b> </p> <p>A user name that identifies an account, such as a login name, screen name, nick name, or handle. </p> </li> <li> <p> <b>PASSWORD</b> </p> <p>An alphanumeric string that is used as a password, such as \"*<i> very20special#pass*</i>\". </p> </li> <li> <p> <b>DRIVER_ID</b> </p> <p>The number assigned to a driver's license, which is an official document permitting an individual to operate one or more motorized vehicles on a public road. A driver's license number consists of alphanumeric characters. </p> </li> <li> <p> <b>LICENSE_PLATE</b> </p> <p>A license plate for a vehicle is issued by the state or country where the vehicle is registered. The format for passenger vehicles is typically five to eight digits, consisting of upper-case letters and numbers. The format varies depending on the location of the issuing state or country. </p> </li> <li> <p> <b>VEHICLE_IDENTIFICATION_NUMBER</b> </p> <p>A Vehicle Identification Number (VIN) uniquely identifies a vehicle. VIN content and format are defined in the <i>ISO 3779</i> specification. Each country has specific codes and formats for VINs. </p> </li> </ul> </li> <li> <p> <b>Finance</b> </p> <ul> <li> <p> <b>CREDIT_DEBIT_CARD_CVV</b> </p> <p>A three-digit card verification code (CVV) that is present on VISA, MasterCard, and Discover credit and debit cards. For American Express credit or debit cards, the CVV is a four-digit numeric code. </p> </li> <li> <p> <b>CREDIT_DEBIT_CARD_EXPIRY</b> </p> <p>The expiration date for a credit or debit card. This number is usually four digits long and is often formatted as <i>month/year</i> or <i>MM/YY</i>. AI Guardrail recognizes expiration dates such as <i>01/21</i>, <i>01/2021</i>, and <i>Jan 2021</i>. </p> </li> <li> <p> <b>CREDIT_DEBIT_CARD_NUMBER</b> </p> <p>The number for a credit or debit card. These numbers can vary from 13 to 16 digits in length. However, Amazon Comprehend also recognizes credit or debit card numbers when only the last four digits are present. </p> </li> <li> <p> <b>PIN</b> </p> <p>A four-digit personal identification number (PIN) with which you can access your bank account. </p> </li> <li> <p> <b>INTERNATIONAL_BANK_ACCOUNT_NUMBER</b> </p> <p>An International Bank Account Number has specific formats in each country. For more information, see <a href=\"https://www.iban.com/structure\"> www.iban.com/structure</a>.</p> </li> <li> <p> <b>SWIFT_CODE</b> </p> <p>A SWIFT code is a standard format of Bank Identifier Code (BIC) used to specify a particular bank or branch. Banks use these codes for money transfers such as international wire transfers.</p> <p>SWIFT codes consist of eight or 11 characters. The 11-digit codes refer to specific branches, while eight-digit codes (or 11-digit codes ending in 'XXX') refer to the head or primary office.</p> </li> </ul> </li> <li> <p> <b>IT</b> </p> <ul> <li> <p> <b>IP_ADDRESS</b> </p> <p>An IPv4 address, such as <i>198.51.100.0</i>. </p> </li> <li> <p> <b>MAC_ADDRESS</b> </p> <p>A <i>media access control</i> (MAC) address is a unique identifier assigned to a network interface controller (NIC). </p> </li> <li> <p> <b>URL</b> </p> <p>A web address, such as <i>www.example.com</i>. </p> </li> <li> <p> <b>AWS_ACCESS_KEY</b> </p> <p>A unique identifier that's associated with a secret access key; you use the access key ID and secret access key to sign programmatic Amazon Web Services requests cryptographically. </p> </li> <li> <p> <b>AWS_SECRET_KEY</b> </p> <p>A unique identifier that's associated with an access key. You use the access key ID and secret access key to sign programmatic Amazon Web Services requests cryptographically. </p> </li> </ul> </li> <li> <p> <b>USA specific</b> </p> <ul> <li> <p> <b>US_BANK_ACCOUNT_NUMBER</b> </p> <p>A US bank account number, which is typically 10 to 12 digits long. </p> </li> <li> <p> <b>US_BANK_ROUTING_NUMBER</b> </p> <p>A US bank account routing number. These are typically nine digits long, </p> </li> <li> <p> <b>US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER</b> </p> <p>A US Individual Taxpayer Identification Number (ITIN) is a nine-digit number that starts with a \"9\" and contain a \"7\" or \"8\" as the fourth digit. An ITIN can be formatted with a space or a dash after the third and forth digits. </p> </li> <li> <p> <b>US_PASSPORT_NUMBER</b> </p> <p>A US passport number. Passport numbers range from six to nine alphanumeric characters. </p> </li> <li> <p> <b>US_SOCIAL_SECURITY_NUMBER</b> </p> <p>A US Social Security Number (SSN) is a nine-digit number that is issued to US citizens, permanent residents, and temporary working residents. </p> </li> </ul> </li> <li> <p> <b>Canada specific</b> </p> <ul> <li> <p> <b>CA_HEALTH_NUMBER</b> </p> <p>A Canadian Health Service Number is a 10-digit unique identifier, required for individuals to access healthcare benefits. </p> </li> <li> <p> <b>CA_SOCIAL_INSURANCE_NUMBER</b> </p> <p>A Canadian Social Insurance Number (SIN) is a nine-digit unique identifier, required for individuals to access government programs and benefits.</p> <p>The SIN is formatted as three groups of three digits, such as <i> 123-456-789</i>. A SIN can be validated through a simple check-digit process called the <a href=\"https://www.wikipedia.org/wiki/Luhn_algorithm\">Luhn algorithm</a> .</p> </li> </ul> </li> <li> <p> <b>UK Specific</b> </p> <ul> <li> <p> <b>UK_NATIONAL_HEALTH_SERVICE_NUMBER</b> </p> <p>A UK National Health Service Number is a 10-17 digit number, such as <i>485 555 3456</i>. The current system formats the 10-digit number with spaces after the third and sixth digits. The final digit is an error-detecting checksum.</p> </li> <li> <p> <b>UK_NATIONAL_INSURANCE_NUMBER</b> </p> <p>A UK National Insurance Number (NINO) provides individuals with access to National Insurance (social security) benefits. It is also used for some purposes in the UK tax system.</p> <p>The number is nine digits long and starts with two letters, followed by six numbers and one letter. A NINO can be formatted with a space or a dash after the two letters and after the second, forth, and sixth digits.</p> </li> <li> <p> <b>UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER</b> </p> <p>A UK Unique Taxpayer Reference (UTR) is a 10-digit number that identifies a taxpayer or a business. </p> </li> </ul> </li> <li> <p> <b>Custom</b> </p> <ul> <li> <p> <b>Regex filter</b> - You can use a regular expressions to define patterns for an AI Guardrail to recognize and act upon such as serial number, booking ID etc..</p> </li> </ul> </li> </ul>"
        },
        "action":{
          "shape":"GuardrailSensitiveInformationAction",
          "documentation":"<p>Configure AI Guardrail's action when the PII entity is detected.</p>"
        }
      },
      "documentation":"<p>The PII entity to configure for the AI Guardrail.</p>"
    },
    "GuardrailPiiEntityType":{
      "type":"string",
      "documentation":"<p>The currently supported PII entities</p>",
      "enum":[
        "ADDRESS",
        "AGE",
        "AWS_ACCESS_KEY",
        "AWS_SECRET_KEY",
        "CA_HEALTH_NUMBER",
        "CA_SOCIAL_INSURANCE_NUMBER",
        "CREDIT_DEBIT_CARD_CVV",
        "CREDIT_DEBIT_CARD_EXPIRY",
        "CREDIT_DEBIT_CARD_NUMBER",
        "DRIVER_ID",
        "EMAIL",
        "INTERNATIONAL_BANK_ACCOUNT_NUMBER",
        "IP_ADDRESS",
        "LICENSE_PLATE",
        "MAC_ADDRESS",
        "NAME",
        "PASSWORD",
        "PHONE",
        "PIN",
        "SWIFT_CODE",
        "UK_NATIONAL_HEALTH_SERVICE_NUMBER",
        "UK_NATIONAL_INSURANCE_NUMBER",
        "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER",
        "URL",
        "USERNAME",
        "US_BANK_ACCOUNT_NUMBER",
        "US_BANK_ROUTING_NUMBER",
        "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER",
        "US_PASSPORT_NUMBER",
        "US_SOCIAL_SECURITY_NUMBER",
        "VEHICLE_IDENTIFICATION_NUMBER"
      ],
      "sensitive":true
    },
    "GuardrailPolicyResult":{
      "type":"structure",
      "required":[
        "policyType",
        "action"
      ],
      "members":{
        "policyType":{
          "shape":"GuardrailPolicyType",
          "documentation":"<p>The type of guardrail policy that was evaluated.</p>"
        },
        "action":{
          "shape":"GuardrailAction",
          "documentation":"<p>Outcome of this specific policy.</p>"
        },
        "details":{
          "shape":"NonEmptyString",
          "documentation":"<p>Policy-specific detail.</p>"
        }
      },
      "documentation":"<p>Per-policy guardrail assessment result. Captures which policy triggered, its outcome, and a policy-specific detail string.</p>"
    },
    "GuardrailPolicyResultList":{
      "type":"list",
      "member":{"shape":"GuardrailPolicyResult"},
      "max":50,
      "min":0
    },
    "GuardrailPolicyType":{
      "type":"string",
      "documentation":"<p>Classification of a guardrail policy.</p>",
      "enum":[
        "CONTENT_FILTER",
        "TOPIC",
        "WORD",
        "SENSITIVE_INFORMATION_PII",
        "SENSITIVE_INFORMATION_REGEX",
        "CONTEXTUAL_GROUNDING"
      ]
    },
    "GuardrailRegexConfig":{
      "type":"structure",
      "required":[
        "name",
        "pattern",
        "action"
      ],
      "members":{
        "name":{
          "shape":"GuardrailRegexName",
          "documentation":"<p>The name of the regular expression to configure for the AI Guardrail.</p>"
        },
        "description":{
          "shape":"GuardrailRegexDescription",
          "documentation":"<p>The description of the regular expression to configure for the AI Guardrail.</p>"
        },
        "pattern":{
          "shape":"GuardrailRegexPattern",
          "documentation":"<p>The regular expression pattern to configure for the AI Guardrail.</p>"
        },
        "action":{
          "shape":"GuardrailSensitiveInformationAction",
          "documentation":"<p>The AI Guardrail action to configure when matching regular expression is detected.</p>"
        }
      },
      "documentation":"<p>The regular expression to configure for the AI Guardrail.</p>"
    },
    "GuardrailRegexDescription":{
      "type":"string",
      "documentation":"<p>The regex description.</p>",
      "max":1000,
      "min":1,
      "sensitive":true
    },
    "GuardrailRegexName":{
      "type":"string",
      "documentation":"<p>The regex name.</p>",
      "max":100,
      "min":1,
      "sensitive":true
    },
    "GuardrailRegexPattern":{
      "type":"string",
      "documentation":"<p>The regex pattern.</p>",
      "min":1,
      "sensitive":true
    },
    "GuardrailRegexesConfig":{
      "type":"list",
      "member":{"shape":"GuardrailRegexConfig"},
      "documentation":"<p>List of regex.</p>",
      "min":1
    },
    "GuardrailSensitiveInformationAction":{
      "type":"string",
      "documentation":"<p>Options for sensitive information action.</p>",
      "enum":[
        "BLOCK",
        "ANONYMIZE"
      ],
      "sensitive":true
    },
    "GuardrailSource":{
      "type":"string",
      "documentation":"<p>Content source for a guardrail assessment.</p>",
      "enum":[
        "INPUT",
        "OUTPUT"
      ]
    },
    "GuardrailTopicConfig":{
      "type":"structure",
      "required":[
        "name",
        "definition",
        "type"
      ],
      "members":{
        "name":{
          "shape":"GuardrailTopicName",
          "documentation":"<p>The name of the topic to deny.</p>"
        },
        "definition":{
          "shape":"GuardrailTopicDefinition",
          "documentation":"<p>A definition of the topic to deny.</p>"
        },
        "examples":{
          "shape":"GuardrailTopicExamples",
          "documentation":"<p>A list of prompts, each of which is an example of a prompt that can be categorized as belonging to the topic.</p>"
        },
        "type":{
          "shape":"GuardrailTopicType",
          "documentation":"<p>Specifies to deny the topic.</p>"
        }
      },
      "documentation":"<p>Details about topics for the AI Guardrail to identify and deny.</p>"
    },
    "GuardrailTopicDefinition":{
      "type":"string",
      "documentation":"<p>Definition of topic in topic policy</p>",
      "max":200,
      "min":1,
      "sensitive":true
    },
    "GuardrailTopicExample":{
      "type":"string",
      "documentation":"<p>Text example in topic policy</p>",
      "max":100,
      "min":1,
      "sensitive":true
    },
    "GuardrailTopicExamples":{
      "type":"list",
      "member":{"shape":"GuardrailTopicExample"},
      "documentation":"<p>List of text examples</p>",
      "min":0
    },
    "GuardrailTopicName":{
      "type":"string",
      "documentation":"<p>Name of topic in topic policy</p>",
      "max":100,
      "min":1,
      "pattern":"[0-9a-zA-Z-_ !?.]+",
      "sensitive":true
    },
    "GuardrailTopicType":{
      "type":"string",
      "documentation":"<p>Type of topic in a policy</p>",
      "enum":["DENY"],
      "sensitive":true
    },
    "GuardrailTopicsConfig":{
      "type":"list",
      "member":{"shape":"GuardrailTopicConfig"},
      "documentation":"<p>List of topic configs in topic policy.</p>",
      "min":1
    },
    "GuardrailWordConfig":{
      "type":"structure",
      "required":["text"],
      "members":{
        "text":{
          "shape":"GuardrailWordText",
          "documentation":"<p>Text of the word configured for the AI Guardrail to block.</p>"
        }
      },
      "documentation":"<p>A word to configure for the AI Guardrail.</p>"
    },
    "GuardrailWordText":{
      "type":"string",
      "documentation":"<p>The custom word text.</p>",
      "min":1,
      "sensitive":true
    },
    "GuardrailWordsConfig":{
      "type":"list",
      "member":{"shape":"GuardrailWordConfig"},
      "documentation":"<p>List of custom word configs.</p>",
      "min":1
    },
    "Headers":{
      "type":"map",
      "key":{"shape":"NonEmptyString"},
      "value":{"shape":"NonEmptyString"}
    },
    "HierarchicalChunkingConfiguration":{
      "type":"structure",
      "required":[
        "levelConfigurations",
        "overlapTokens"
      ],
      "members":{
        "levelConfigurations":{
          "shape":"HierarchicalChunkingLevelConfigurations",
          "documentation":"<p>Token settings for each layer.</p>"
        },
        "overlapTokens":{
          "shape":"HierarchicalChunkingConfigurationOverlapTokensInteger",
          "documentation":"<p>The number of tokens to repeat across chunks in the same layer.</p>"
        }
      },
      "documentation":"<p>Settings for hierarchical document chunking for a data source. Hierarchical chunking splits documents into layers of chunks where the first layer contains large chunks, and the second layer contains smaller chunks derived from the first layer.</p>"
    },
    "HierarchicalChunkingConfigurationOverlapTokensInteger":{
      "type":"integer",
      "box":true,
      "min":1
    },
    "HierarchicalChunkingLevelConfiguration":{
      "type":"structure",
      "required":["maxTokens"],
      "members":{
        "maxTokens":{
          "shape":"HierarchicalChunkingLevelConfigurationMaxTokensInteger",
          "documentation":"<p>The maximum number of tokens that a chunk can contain in this layer.</p>"
        }
      },
      "documentation":"<p>Token settings for each layer.</p>"
    },
    "HierarchicalChunkingLevelConfigurationMaxTokensInteger":{
      "type":"integer",
      "box":true,
      "max":8192,
      "min":1
    },
    "HierarchicalChunkingLevelConfigurations":{
      "type":"list",
      "member":{"shape":"HierarchicalChunkingLevelConfiguration"},
      "max":2,
      "min":2
    },
    "Highlight":{
      "type":"structure",
      "members":{
        "beginOffsetInclusive":{
          "shape":"HighlightOffset",
          "documentation":"<p>The offset for the start of the highlight.</p>"
        },
        "endOffsetExclusive":{
          "shape":"HighlightOffset",
          "documentation":"<p>The offset for the end of the highlight.</p>"
        }
      },
      "documentation":"<p>Offset specification to describe highlighting of document excerpts for rendering search results and recommendations.</p>"
    },
    "HighlightOffset":{"type":"integer"},
    "Highlights":{
      "type":"list",
      "member":{"shape":"Highlight"}
    },
    "ImportJobData":{
      "type":"structure",
      "required":[
        "importJobId",
        "knowledgeBaseId",
        "uploadId",
        "knowledgeBaseArn",
        "importJobType",
        "status",
        "url",
        "urlExpiry",
        "createdTime",
        "lastModifiedTime"
      ],
      "members":{
        "importJobId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the import job.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>A pointer to the uploaded asset. This value is returned by <a href=\"https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a>.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "importJobType":{
          "shape":"ImportJobType",
          "documentation":"<p>The type of the import job.</p>"
        },
        "status":{
          "shape":"ImportJobStatus",
          "documentation":"<p>The status of the import job.</p>"
        },
        "url":{
          "shape":"Url",
          "documentation":"<p>The download link to the resource file that is uploaded to the import job.</p>"
        },
        "failedRecordReport":{
          "shape":"Url",
          "documentation":"<p>The link to download the information of resource data that failed to be imported.</p>"
        },
        "urlExpiry":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The expiration time of the URL as an epoch timestamp.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the import job was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the import job data was last modified.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>The metadata fields of the imported Amazon Q in Connect resources.</p>"
        },
        "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}
      },
      "documentation":"<p>Summary information about the import job.</p>"
    },
    "ImportJobList":{
      "type":"list",
      "member":{"shape":"ImportJobSummary"}
    },
    "ImportJobStatus":{
      "type":"string",
      "enum":[
        "START_IN_PROGRESS",
        "FAILED",
        "COMPLETE",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED"
      ]
    },
    "ImportJobSummary":{
      "type":"structure",
      "required":[
        "importJobId",
        "knowledgeBaseId",
        "uploadId",
        "knowledgeBaseArn",
        "importJobType",
        "status",
        "createdTime",
        "lastModifiedTime"
      ],
      "members":{
        "importJobId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the import job.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>A pointer to the uploaded asset. This value is returned by <a href=\"https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a>.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "importJobType":{
          "shape":"ImportJobType",
          "documentation":"<p>The type of import job.</p>"
        },
        "status":{
          "shape":"ImportJobStatus",
          "documentation":"<p>The status of the import job.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the import job was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the import job was last modified.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>The metadata fields of the imported Amazon Q in Connect resources.</p>"
        },
        "externalSourceConfiguration":{
          "shape":"ExternalSourceConfiguration",
          "documentation":"<p>The configuration information of the external source that the resource data are imported from.</p>"
        }
      },
      "documentation":"<p>Summary information about the import job.</p>"
    },
    "ImportJobType":{
      "type":"string",
      "enum":["QUICK_RESPONSES"]
    },
    "Integer":{
      "type":"integer",
      "box":true
    },
    "IntentDetectedDataDetails":{
      "type":"structure",
      "required":[
        "intent",
        "intentId"
      ],
      "members":{
        "intent":{
          "shape":"SensitiveString",
          "documentation":"<p>The detected intent.</p>"
        },
        "intentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the detected intent.</p>"
        },
        "relevanceLevel":{
          "shape":"RelevanceLevel",
          "documentation":"<p>The relevance level of the detected intent.</p>"
        }
      },
      "documentation":"<p>Details about the detected intent.</p>"
    },
    "IntentInputData":{
      "type":"structure",
      "required":["intentId"],
      "members":{
        "intentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q intent.</p>"
        }
      },
      "documentation":"<p>Information about the Amazon Q intent.</p>"
    },
    "JSONDocument":{
      "type":"structure",
      "members":{},
      "document":true,
      "sensitive":true
    },
    "KnowledgeBaseAssociationConfigurationData":{
      "type":"structure",
      "members":{
        "contentTagFilter":{"shape":"TagFilter"},
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>"
        },
        "overrideKnowledgeBaseSearchType":{
          "shape":"KnowledgeBaseSearchType",
          "documentation":"<p>The search type to be used against the Knowledge Base for this request. The values can be <code>SEMANTIC</code> which uses vector embeddings or <code>HYBRID</code> which use vector embeddings and raw text</p>"
        }
      },
      "documentation":"<p>The data of the configuration for a <code>KNOWLEDGE_BASE</code> type Amazon Q in Connect Assistant Association.</p>"
    },
    "KnowledgeBaseAssociationData":{
      "type":"structure",
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        }
      },
      "documentation":"<p>Association information about the knowledge base.</p>"
    },
    "KnowledgeBaseData":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "knowledgeBaseArn",
        "name",
        "knowledgeBaseType",
        "status"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the knowledge base.</p>"
        },
        "knowledgeBaseType":{
          "shape":"KnowledgeBaseType",
          "documentation":"<p>The type of knowledge base.</p>"
        },
        "status":{
          "shape":"KnowledgeBaseStatus",
          "documentation":"<p>The status of the knowledge base.</p>"
        },
        "lastContentModificationTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>An epoch timestamp indicating the most recent content modification inside the knowledge base. If no content exists in a knowledge base, this value is unset.</p>"
        },
        "vectorIngestionConfiguration":{
          "shape":"VectorIngestionConfiguration",
          "documentation":"<p>Contains details about how to ingest the documents in a data source.</p>"
        },
        "sourceConfiguration":{
          "shape":"SourceConfiguration",
          "documentation":"<p>Source configuration information about the knowledge base.</p>"
        },
        "renderingConfiguration":{
          "shape":"RenderingConfiguration",
          "documentation":"<p>Information about how to render the content.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>This KMS key must have a policy that allows <code>kms:CreateGrant</code>, <code>kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect. </p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "ingestionStatus":{
          "shape":"SyncStatus",
          "documentation":"<p>Status of ingestion on data source.</p>"
        },
        "ingestionFailureReasons":{
          "shape":"FailureReason",
          "documentation":"<p>List of failure reasons on ingestion per file.</p>"
        }
      },
      "documentation":"<p>Information about the knowledge base.</p>"
    },
    "KnowledgeBaseList":{
      "type":"list",
      "member":{"shape":"KnowledgeBaseSummary"}
    },
    "KnowledgeBaseSearchType":{
      "type":"string",
      "enum":[
        "HYBRID",
        "SEMANTIC"
      ]
    },
    "KnowledgeBaseStatus":{
      "type":"string",
      "enum":[
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED"
      ]
    },
    "KnowledgeBaseSummary":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "knowledgeBaseArn",
        "name",
        "knowledgeBaseType",
        "status"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the knowledge base.</p>"
        },
        "knowledgeBaseType":{
          "shape":"KnowledgeBaseType",
          "documentation":"<p>The type of knowledge base.</p>"
        },
        "status":{
          "shape":"KnowledgeBaseStatus",
          "documentation":"<p>The status of the knowledge base summary.</p>"
        },
        "sourceConfiguration":{
          "shape":"SourceConfiguration",
          "documentation":"<p>Configuration information about the external data source.</p>"
        },
        "vectorIngestionConfiguration":{
          "shape":"VectorIngestionConfiguration",
          "documentation":"<p>Contains details about how to ingest the documents in a data source.</p>"
        },
        "renderingConfiguration":{
          "shape":"RenderingConfiguration",
          "documentation":"<p>Information about how to render the content.</p>"
        },
        "serverSideEncryptionConfiguration":{
          "shape":"ServerSideEncryptionConfiguration",
          "documentation":"<p>The configuration information for the customer managed key used for encryption. </p> <p>This KMS key must have a policy that allows <code>kms:CreateGrant</code>, <code>kms:DescribeKey</code>, <code>kms:Decrypt</code>, and <code>kms:GenerateDataKey*</code> permissions to the IAM identity using the key to invoke Amazon Q in Connect. </p> <p>For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the knowledge base.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Summary information about the knowledge base.</p>"
    },
    "KnowledgeBaseType":{
      "type":"string",
      "enum":[
        "EXTERNAL",
        "CUSTOM",
        "QUICK_RESPONSES",
        "MESSAGE_TEMPLATES",
        "MANAGED"
      ]
    },
    "KnowledgeSource":{
      "type":"structure",
      "members":{
        "assistantAssociationIds":{
          "shape":"AssistantAssociationIdList",
          "documentation":"<p>The list of assistant association identifiers for the knowledge source.</p>"
        }
      },
      "documentation":"<p>A knowledge source that provides content for recommendations.</p>",
      "union":true
    },
    "LanguageCode":{
      "type":"string",
      "max":5,
      "min":2
    },
    "ListAIAgentVersionsRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent for which versions are to be listed.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Agent versions to be listed. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs. </p>",
          "location":"querystring",
          "locationName":"origin"
        }
      }
    },
    "ListAIAgentVersionsResponse":{
      "type":"structure",
      "required":["aiAgentVersionSummaries"],
      "members":{
        "aiAgentVersionSummaries":{
          "shape":"AIAgentVersionSummariesList",
          "documentation":"<p>The summaries of AI Agent versions.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAIAgentsRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Agents to be listed. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs. </p>",
          "location":"querystring",
          "locationName":"origin"
        }
      }
    },
    "ListAIAgentsResponse":{
      "type":"structure",
      "required":["aiAgentSummaries"],
      "members":{
        "aiAgentSummaries":{
          "shape":"AIAgentSummaryList",
          "documentation":"<p>The summaries of AI Agents.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAIGuardrailVersionsRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail for which versions are to be listed.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListAIGuardrailVersionsResponse":{
      "type":"structure",
      "required":["aiGuardrailVersionSummaries"],
      "members":{
        "aiGuardrailVersionSummaries":{
          "shape":"AIGuardrailVersionSummariesList",
          "documentation":"<p>The summaries of the AI Guardrail versions.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAIGuardrailsRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListAIGuardrailsResponse":{
      "type":"structure",
      "required":["aiGuardrailSummaries"],
      "members":{
        "aiGuardrailSummaries":{
          "shape":"AIGuardrailSummariesList",
          "documentation":"<p>The summaries of the AI Guardrails.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAIPromptVersionsRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI prompt for which versions are to be listed.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Prompt versions to be listed. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs. </p>",
          "location":"querystring",
          "locationName":"origin"
        }
      }
    },
    "ListAIPromptVersionsResponse":{
      "type":"structure",
      "required":["aiPromptVersionSummaries"],
      "members":{
        "aiPromptVersionSummaries":{
          "shape":"AIPromptVersionSummariesList",
          "documentation":"<p>The summaries of the AI Prompt versions.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAIPromptsRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the AI Prompts to be listed. <code>SYSTEM</code> for a default AI Agent created by Q in Connect or <code>CUSTOMER</code> for an AI Agent created by calling AI Agent creation APIs. </p>",
          "location":"querystring",
          "locationName":"origin"
        }
      }
    },
    "ListAIPromptsResponse":{
      "type":"structure",
      "required":["aiPromptSummaries"],
      "members":{
        "aiPromptSummaries":{
          "shape":"AIPromptSummaryList",
          "documentation":"<p>The summaries of the AI Prompts.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListAssistantAssociationsRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        }
      }
    },
    "ListAssistantAssociationsResponse":{
      "type":"structure",
      "required":["assistantAssociationSummaries"],
      "members":{
        "assistantAssociationSummaries":{
          "shape":"AssistantAssociationSummaryList",
          "documentation":"<p>Summary information about assistant associations.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListAssistantsRequest":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListAssistantsResponse":{
      "type":"structure",
      "required":["assistantSummaries"],
      "members":{
        "assistantSummaries":{
          "shape":"AssistantList",
          "documentation":"<p>Information about the assistants.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListContentAssociationsRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId"
      ],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content.</p>",
          "location":"uri",
          "locationName":"contentId"
        }
      }
    },
    "ListContentAssociationsResponse":{
      "type":"structure",
      "required":["contentAssociationSummaries"],
      "members":{
        "contentAssociationSummaries":{
          "shape":"ContentAssociationSummaryList",
          "documentation":"<p>Summary information about content associations.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListContentsRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "ListContentsResponse":{
      "type":"structure",
      "required":["contentSummaries"],
      "members":{
        "contentSummaries":{
          "shape":"ContentSummaryList",
          "documentation":"<p>Information about the content.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListImportJobsRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "ListImportJobsResponse":{
      "type":"structure",
      "required":["importJobSummaries"],
      "members":{
        "importJobSummaries":{
          "shape":"ImportJobList",
          "documentation":"<p>Summary information about the import jobs.</p>"
        },
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListKnowledgeBasesRequest":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListKnowledgeBasesResponse":{
      "type":"structure",
      "required":["knowledgeBaseSummaries"],
      "members":{
        "knowledgeBaseSummaries":{
          "shape":"KnowledgeBaseList",
          "documentation":"<p>Information about the knowledge bases.</p>"
        },
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListMessageTemplateVersionsRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListMessageTemplateVersionsResponse":{
      "type":"structure",
      "required":["messageTemplateVersionSummaries"],
      "members":{
        "messageTemplateVersionSummaries":{
          "shape":"MessageTemplateVersionSummaryList",
          "documentation":"<p>Summary information about the versions of a message template.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListMessageTemplatesRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "ListMessageTemplatesResponse":{
      "type":"structure",
      "required":["messageTemplateSummaries"],
      "members":{
        "messageTemplateSummaries":{
          "shape":"MessageTemplateSummaryList",
          "documentation":"<p>Summary information about the message template.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListMessagesRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect session.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "filter":{
          "shape":"MessageFilterType",
          "documentation":"<p>The filter criteria for listing messages.</p>",
          "location":"querystring",
          "locationName":"filter"
        }
      }
    },
    "ListMessagesResponse":{
      "type":"structure",
      "required":["messages"],
      "members":{
        "messages":{
          "shape":"MessageList",
          "documentation":"<p>The message information.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListModelsRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN. The assistant's region determines which models are available.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptType":{
          "shape":"AIPromptType",
          "documentation":"<p>The type of the AI Prompt to filter models by. When specified, only models that support the given AI Prompt type are returned.</p>",
          "location":"querystring",
          "locationName":"aiPromptType"
        },
        "modelLifecycle":{
          "shape":"ModelLifecycle",
          "documentation":"<p>The lifecycle status of models to filter by. When specified, only models with the given lifecycle status are returned.</p>",
          "location":"querystring",
          "locationName":"modelLifecycle"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListModelsResponse":{
      "type":"structure",
      "required":["modelSummaries"],
      "members":{
        "modelSummaries":{
          "shape":"ModelSummaryList",
          "documentation":"<p>The summaries of the models available to the assistant.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "ListQuickResponsesRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "ListQuickResponsesResponse":{
      "type":"structure",
      "required":["quickResponseSummaries"],
      "members":{
        "quickResponseSummaries":{
          "shape":"QuickResponseSummaryList",
          "documentation":"<p>Summary information about the quick responses.</p>"
        },
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "ListSpansRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>UUID or ARN of the Connect AI Assistant resource</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>UUID or ARN of the Connect AI Session resource</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Pagination token for retrieving the next page of results</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of spans to return per page</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListSpansResponse":{
      "type":"structure",
      "required":["spans"],
      "members":{
        "spans":{
          "shape":"SpanList",
          "documentation":"<p>Array of span objects for the session</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Pagination token for retrieving additional results</p>"
        }
      }
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["resourceArn"],
      "members":{
        "resourceArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        }
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "members":{
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "LlmModelId":{
      "type":"string",
      "max":128,
      "min":1
    },
    "ManagedSourceConfiguration":{
      "type":"structure",
      "members":{
        "webCrawlerConfiguration":{
          "shape":"WebCrawlerConfiguration",
          "documentation":"<p>Configuration data for web crawler data source.</p>"
        }
      },
      "documentation":"<p>Source configuration for managed resources.</p>",
      "union":true
    },
    "ManualSearchAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "answerGenerationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Answer Generation prompt used by the MANUAL_SEARCH AI Agent.</p>"
        },
        "answerGenerationAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier for the Answer Generation guardrail used by the MANUAL_SEARCH AI Agent.</p>"
        },
        "associationConfigurations":{
          "shape":"AssociationConfigurationList",
          "documentation":"<p>The association configurations for overriding behavior on this AI Agent.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale to which specifies the language and region settings that determine the response language for <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_QueryAssistant.html\">QueryAssistant</a>.</p> <note> <p>For more information on supported locales, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/supported-languages.html#qic-notes-languages\">Language support for Amazon Q in Connect</a>.</p> </note>"
        }
      },
      "documentation":"<p>The configuration for the <code>MANUAL_SEARCH</code> AI Agent type.</p>"
    },
    "MaxResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "MaxTokensToSample":{
      "type":"integer",
      "box":true,
      "max":4096,
      "min":1,
      "sensitive":true
    },
    "MessageConfiguration":{
      "type":"structure",
      "members":{
        "generateFillerMessage":{
          "shape":"Boolean",
          "documentation":"<p>Generates a filler response when tool selection is <code>QUESTION</code>.</p>"
        },
        "generateChunkedMessage":{
          "shape":"Boolean",
          "documentation":"<p>Configuration for generating chunked messages.</p>"
        }
      },
      "documentation":"<p>The configuration for a <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_SendMessage.html\">SendMessage</a> request.</p>"
    },
    "MessageData":{
      "type":"structure",
      "members":{
        "text":{
          "shape":"TextMessage",
          "documentation":"<p>The message data in text type.</p>"
        },
        "toolUseResult":{
          "shape":"ToolUseResultData",
          "documentation":"<p>The result of tool usage in the message.</p>"
        }
      },
      "documentation":"<p>The message data.</p>",
      "union":true
    },
    "MessageFilterType":{
      "type":"string",
      "enum":[
        "ALL",
        "TEXT_ONLY"
      ]
    },
    "MessageInput":{
      "type":"structure",
      "required":["value"],
      "members":{
        "value":{
          "shape":"MessageData",
          "documentation":"<p>The message input value.</p>"
        }
      },
      "documentation":"<p>The message input.</p>"
    },
    "MessageList":{
      "type":"list",
      "member":{"shape":"MessageOutput"}
    },
    "MessageMetadata":{
      "type":"map",
      "key":{"shape":"NonEmptyString"},
      "value":{"shape":"NonEmptyString"}
    },
    "MessageOutput":{
      "type":"structure",
      "required":[
        "value",
        "messageId",
        "participant",
        "timestamp"
      ],
      "members":{
        "value":{
          "shape":"MessageData",
          "documentation":"<p>The value of a message data.</p>"
        },
        "messageId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of a message.</p>"
        },
        "participant":{
          "shape":"Participant",
          "documentation":"<p>The participant of a message.</p>"
        },
        "timestamp":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp of a message.</p>"
        }
      },
      "documentation":"<p>The message output.</p>"
    },
    "MessageTemplateAttachment":{
      "type":"structure",
      "required":[
        "contentDisposition",
        "name",
        "uploadedTime",
        "url",
        "urlExpiry",
        "attachmentId"
      ],
      "members":{
        "contentDisposition":{
          "shape":"ContentDisposition",
          "documentation":"<p>The presentation information for the attachment file.</p>"
        },
        "name":{
          "shape":"AttachmentFileName",
          "documentation":"<p>The name of the attachment file being uploaded. The name should include the file extension.</p>"
        },
        "uploadedTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the attachment file was uploaded.</p>"
        },
        "url":{
          "shape":"Url",
          "documentation":"<p>A pre-signed Amazon S3 URL that can be used to download the attachment file.</p>"
        },
        "urlExpiry":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The expiration time of the pre-signed Amazon S3 URL.</p>"
        },
        "attachmentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the attachment file.</p>"
        }
      },
      "documentation":"<p>Information about the message template attachment.</p>"
    },
    "MessageTemplateAttachmentList":{
      "type":"list",
      "member":{"shape":"MessageTemplateAttachment"}
    },
    "MessageTemplateAttributeKey":{
      "type":"string",
      "max":32767,
      "min":1
    },
    "MessageTemplateAttributeKeyList":{
      "type":"list",
      "member":{"shape":"MessageTemplateAttributeKey"},
      "sensitive":true
    },
    "MessageTemplateAttributeType":{
      "type":"string",
      "enum":[
        "SYSTEM",
        "AGENT",
        "CUSTOMER_PROFILE",
        "CUSTOM"
      ]
    },
    "MessageTemplateAttributeTypeList":{
      "type":"list",
      "member":{"shape":"MessageTemplateAttributeType"}
    },
    "MessageTemplateAttributeValue":{
      "type":"string",
      "max":32767,
      "min":1,
      "sensitive":true
    },
    "MessageTemplateAttributes":{
      "type":"structure",
      "members":{
        "systemAttributes":{
          "shape":"SystemAttributes",
          "documentation":"<p>The system attributes that are used with the message template.</p>"
        },
        "agentAttributes":{
          "shape":"AgentAttributes",
          "documentation":"<p>The agent attributes that are used with the message template.</p>"
        },
        "customerProfileAttributes":{
          "shape":"CustomerProfileAttributes",
          "documentation":"<p>The customer profile attributes that are used with the message template.</p>"
        },
        "customAttributes":{
          "shape":"CustomAttributes",
          "documentation":"<p>The custom attributes that are used with the message template.</p>"
        }
      },
      "documentation":"<p>The attributes that are used with the message template.</p>"
    },
    "MessageTemplateBodyContentProvider":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The content of the message template.</p>"
        }
      },
      "documentation":"<p>The container of the message template body.</p>",
      "union":true
    },
    "MessageTemplateContentProvider":{
      "type":"structure",
      "members":{
        "email":{
          "shape":"EmailMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to the email channel subtype.</p>"
        },
        "sms":{
          "shape":"SMSMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to the SMS channel subtype.</p>"
        },
        "whatsApp":{
          "shape":"WhatsAppMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to the WHATSAPP channel subtype.</p>"
        },
        "push":{"shape":"PushMessageTemplateContent"}
      },
      "documentation":"<p>The container of message template content.</p>",
      "union":true
    },
    "MessageTemplateContentSha256":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[a-zA-Z0-9]+"
    },
    "MessageTemplateData":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "channelSubtype",
        "createdTime",
        "lastModifiedTime",
        "lastModifiedBy",
        "messageTemplateContentSha256"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "channel":{
          "shape":"Channel",
          "documentation":"<p>The channel of the message template.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template data was last modified.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the message template data.</p>"
        },
        "content":{
          "shape":"MessageTemplateContentProvider",
          "documentation":"<p>The content of the message template.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "sourceConfigurationSummary":{
          "shape":"MessageTemplateSourceConfigurationSummary",
          "documentation":"<p>The source configuration summary of the message template.</p>"
        },
        "groupingConfiguration":{"shape":"GroupingConfiguration"},
        "defaultAttributes":{
          "shape":"MessageTemplateAttributes",
          "documentation":"<p>An object that specifies the default values to use for variables in the message template. This object contains different categories of key-value pairs. Each key defines a variable or placeholder in the message template. The corresponding value defines the default value for that variable.</p>"
        },
        "attributeTypes":{
          "shape":"MessageTemplateAttributeTypeList",
          "documentation":"<p>The types of attributes that the message template contains.</p>"
        },
        "messageTemplateContentSha256":{
          "shape":"MessageTemplateContentSha256",
          "documentation":"<p>The checksum value of the message template content that is referenced by the <code>$LATEST</code> qualifier. It can be returned in <code>MessageTemplateData</code> or <code>ExtendedMessageTemplateData</code>. It’s calculated by content, language, <code>defaultAttributes</code> and <code>Attachments</code> of the message template.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The data of a message template.</p>"
    },
    "MessageTemplateFilterField":{
      "type":"structure",
      "required":[
        "name",
        "operator"
      ],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the attribute field to filter the message templates by.</p>"
        },
        "values":{
          "shape":"MessageTemplateFilterValueList",
          "documentation":"<p>The values of attribute field to filter the message template by.</p>"
        },
        "operator":{
          "shape":"MessageTemplateFilterOperator",
          "documentation":"<p>The operator to use for filtering.</p>"
        },
        "includeNoExistence":{
          "shape":"Boolean",
          "documentation":"<p>Whether to treat null value as a match for the attribute field.</p>"
        }
      },
      "documentation":"<p>The message template fields to filter the message template query results by. The following is the list of supported field names:</p> <ul> <li> <p>name</p> </li> <li> <p>description</p> </li> <li> <p>channel</p> </li> <li> <p>channelSubtype</p> </li> <li> <p>language</p> </li> <li> <p>qualifier</p> </li> <li> <p>createdTime</p> </li> <li> <p>lastModifiedTime</p> </li> <li> <p>lastModifiedBy</p> </li> <li> <p>groupingConfiguration.criteria</p> </li> <li> <p>groupingConfiguration.values</p> </li> </ul>"
    },
    "MessageTemplateFilterFieldList":{
      "type":"list",
      "member":{"shape":"MessageTemplateFilterField"},
      "max":10,
      "min":0
    },
    "MessageTemplateFilterOperator":{
      "type":"string",
      "enum":[
        "EQUALS",
        "PREFIX"
      ]
    },
    "MessageTemplateFilterValue":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "MessageTemplateFilterValueList":{
      "type":"list",
      "member":{"shape":"MessageTemplateFilterValue"},
      "max":5,
      "min":1
    },
    "MessageTemplateOrderField":{
      "type":"structure",
      "required":["name"],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the message template.</p>"
        },
        "order":{
          "shape":"Order",
          "documentation":"<p>The order at which the message templates are sorted by.</p>"
        }
      },
      "documentation":"<p>The message template fields to order the message template query results by. The following is the list of supported field names:</p> <ul> <li> <p>name</p> </li> <li> <p>description</p> </li> <li> <p>channel</p> </li> <li> <p>channelSubtype</p> </li> <li> <p>language</p> </li> <li> <p>qualifier</p> </li> <li> <p>createdTime</p> </li> <li> <p>lastModifiedTime</p> </li> <li> <p>lastModifiedBy</p> </li> <li> <p>groupingConfiguration.criteria</p> </li> <li> <p>groupingConfiguration.values</p> </li> </ul>"
    },
    "MessageTemplateQueryField":{
      "type":"structure",
      "required":[
        "name",
        "values",
        "operator"
      ],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the attribute to query the message templates by.</p>"
        },
        "values":{
          "shape":"MessageTemplateQueryValueList",
          "documentation":"<p>The values of the attribute to query the message templates by.</p>"
        },
        "operator":{
          "shape":"MessageTemplateQueryOperator",
          "documentation":"<p>The operator to use for matching attribute field values in the query.</p>"
        },
        "allowFuzziness":{
          "shape":"Boolean",
          "documentation":"<p>Whether the query expects only exact matches on the attribute field values. The results of the query will only include exact matches if this parameter is set to false.</p>"
        },
        "priority":{
          "shape":"Priority",
          "documentation":"<p>The importance of the attribute field when calculating query result relevancy scores. The value set for this parameter affects the ordering of search results.</p>"
        }
      },
      "documentation":"<p>The message template fields to query message templates by. The following is the list of supported field names:</p> <ul> <li> <p>name</p> </li> <li> <p>description</p> </li> </ul>"
    },
    "MessageTemplateQueryFieldList":{
      "type":"list",
      "member":{"shape":"MessageTemplateQueryField"},
      "max":4,
      "min":0
    },
    "MessageTemplateQueryOperator":{
      "type":"string",
      "enum":[
        "CONTAINS",
        "CONTAINS_AND_PREFIX"
      ]
    },
    "MessageTemplateQueryValue":{
      "type":"string",
      "max":1024,
      "min":1
    },
    "MessageTemplateQueryValueList":{
      "type":"list",
      "member":{"shape":"MessageTemplateQueryValue"},
      "max":5,
      "min":1
    },
    "MessageTemplateSearchExpression":{
      "type":"structure",
      "members":{
        "queries":{
          "shape":"MessageTemplateQueryFieldList",
          "documentation":"<p>The message template query expressions.</p>"
        },
        "filters":{
          "shape":"MessageTemplateFilterFieldList",
          "documentation":"<p>The configuration of filtering rules applied to message template query results.</p>"
        },
        "orderOnField":{
          "shape":"MessageTemplateOrderField",
          "documentation":"<p>The message template attribute fields on which the query results are ordered.</p>"
        }
      },
      "documentation":"<p>The search expression of the message template.</p>"
    },
    "MessageTemplateSearchResultData":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "channelSubtype",
        "createdTime",
        "lastModifiedTime",
        "lastModifiedBy"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "channel":{
          "shape":"Channel",
          "documentation":"<p>The channel of the message template.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template data was last modified.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the message template data.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the version of the message template is activated.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "sourceConfigurationSummary":{
          "shape":"MessageTemplateSourceConfigurationSummary",
          "documentation":"<p>The source configuration summary of the message template.</p>"
        },
        "groupingConfiguration":{"shape":"GroupingConfiguration"},
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The result of message template search.</p>"
    },
    "MessageTemplateSearchResultsList":{
      "type":"list",
      "member":{"shape":"MessageTemplateSearchResultData"}
    },
    "MessageTemplateSourceConfiguration":{
      "type":"structure",
      "members":{
        "whatsApp":{
          "shape":"WhatsAppMessageTemplateSourceConfiguration",
          "documentation":"<p>The sourceConfiguration of the message template that applies to the WHATSAPP channel subtype.</p>"
        }
      },
      "documentation":"<p>The container of message template source configuration.</p>",
      "union":true
    },
    "MessageTemplateSourceConfigurationSummary":{
      "type":"structure",
      "members":{
        "whatsApp":{
          "shape":"WhatsAppMessageTemplateSourceConfigurationSummary",
          "documentation":"<p>The sourceConfiguration summary of the message template that applies to the WHATSAPP channel subtype.</p>"
        }
      },
      "documentation":"<p>The container of message template source configuration summary.</p>",
      "union":true
    },
    "MessageTemplateSummary":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "channelSubtype",
        "createdTime",
        "lastModifiedTime",
        "lastModifiedBy"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "channel":{
          "shape":"Channel",
          "documentation":"<p>The channel this message template applies to.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The timestamp when the message template data was last modified.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the message template data.</p>"
        },
        "sourceConfiguration":{"shape":"MessageTemplateSourceConfiguration"},
        "activeVersionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version that is activated.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The summary of the message template.</p>"
    },
    "MessageTemplateSummaryList":{
      "type":"list",
      "member":{"shape":"MessageTemplateSummary"}
    },
    "MessageTemplateVersionSummary":{
      "type":"structure",
      "required":[
        "messageTemplateArn",
        "messageTemplateId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "channelSubtype",
        "isActive",
        "versionNumber"
      ],
      "members":{
        "messageTemplateArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>The Amazon Resource Name (ARN) of the message template.</p>"
        },
        "messageTemplateId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the message template.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "channel":{
          "shape":"Channel",
          "documentation":"<p>The channel of the message template.</p>"
        },
        "channelSubtype":{
          "shape":"ChannelSubtype",
          "documentation":"<p>The channel subtype this message template applies to.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the version of the message template is activated.</p>"
        },
        "versionNumber":{
          "shape":"Version",
          "documentation":"<p>The version number of the message template version.</p>"
        }
      },
      "documentation":"<p>The summary of the message template version.</p>"
    },
    "MessageTemplateVersionSummaryList":{
      "type":"list",
      "member":{"shape":"MessageTemplateVersionSummary"}
    },
    "MessageType":{
      "type":"string",
      "enum":[
        "TEXT",
        "TOOL_USE_RESULT"
      ]
    },
    "ModelDisplayName":{
      "type":"string",
      "max":256,
      "min":1
    },
    "ModelId":{
      "type":"string",
      "max":256,
      "min":1
    },
    "ModelLifecycle":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "LEGACY"
      ]
    },
    "ModelSummary":{
      "type":"structure",
      "required":[
        "modelId",
        "displayName"
      ],
      "members":{
        "modelId":{
          "shape":"ModelId",
          "documentation":"<p>The identifier of the model.</p>"
        },
        "displayName":{
          "shape":"ModelDisplayName",
          "documentation":"<p>The display name of the model.</p>"
        },
        "crossRegionStatus":{
          "shape":"CrossRegionStatus",
          "documentation":"<p>The cross-region availability status of the model. <code>NONE</code> indicates the model is only available in a single region, <code>REGIONAL</code> indicates the model is available through regional inference, and <code>GLOBAL</code> indicates the model is available through global cross-region inference.</p>"
        },
        "supportsPromptCaching":{
          "shape":"Boolean",
          "documentation":"<p>Whether the model supports prompt caching.</p>"
        },
        "supportedAIPromptTypes":{
          "shape":"AIPromptTypeList",
          "documentation":"<p>The list of AI Prompt types that the model supports.</p>"
        },
        "modelLifecycle":{
          "shape":"ModelLifecycle",
          "documentation":"<p>The current lifecycle of the model. <code>ACTIVE</code> indicates the model is recommended for use and <code>LEGACY</code> indicates the model is still usable but is deprecated.</p>"
        },
        "legacyTimestamp":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the model lifecycle will transition from <code>ACTIVE</code> to <code>LEGACY</code>.</p>"
        },
        "endOfLifeTimestamp":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the model will reach end of life and no longer be available for use.</p>"
        }
      },
      "documentation":"<p>The summary of a model available to an Amazon Q in Connect assistant.</p>"
    },
    "ModelSummaryList":{
      "type":"list",
      "member":{"shape":"ModelSummary"}
    },
    "Name":{
      "type":"string",
      "max":255,
      "min":1,
      "pattern":"[a-zA-Z0-9\\s_.,-]+.*"
    },
    "NextToken":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "NonEmptySensitiveString":{
      "type":"string",
      "max":4096,
      "min":1,
      "sensitive":true
    },
    "NonEmptyString":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "NonEmptyUnlimitedString":{
      "type":"string",
      "min":1,
      "sensitive":true
    },
    "NoteTakingAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "noteTakingAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier used by the Note Taking AI Agent.</p>"
        },
        "noteTakingAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier used by the Note Taking AI Agent.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for language-specific case summarization generation (for example, en_US, es_ES).</p>"
        }
      },
      "documentation":"<p>The configuration for AI Agents of type <code>NOTE_TAKING</code>.</p>"
    },
    "NotesChunkDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>A chunk of the notes completion.</p>"
        },
        "nextChunkToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next chunk of notes data.</p>"
        }
      },
      "documentation":"<p>Details about notes chunk data.</p>"
    },
    "NotesDataDetails":{
      "type":"structure",
      "members":{
        "completion":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The completion data for notes.</p>"
        }
      },
      "documentation":"<p>Details about notes data.</p>"
    },
    "NotifyRecommendationsReceivedError":{
      "type":"structure",
      "members":{
        "recommendationId":{
          "shape":"RecommendationId",
          "documentation":"<p>The identifier of the recommendation that is in error.</p>"
        },
        "message":{
          "shape":"NotifyRecommendationsReceivedErrorMessage",
          "documentation":"<p>A recommendation is causing an error.</p>"
        }
      },
      "documentation":"<p>An error occurred when creating a recommendation.</p>"
    },
    "NotifyRecommendationsReceivedErrorList":{
      "type":"list",
      "member":{"shape":"NotifyRecommendationsReceivedError"}
    },
    "NotifyRecommendationsReceivedErrorMessage":{"type":"string"},
    "NotifyRecommendationsReceivedRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId",
        "recommendationIds"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "recommendationIds":{
          "shape":"RecommendationIdList",
          "documentation":"<p>The identifiers of the recommendations.</p>"
        }
      }
    },
    "NotifyRecommendationsReceivedResponse":{
      "type":"structure",
      "members":{
        "recommendationIds":{
          "shape":"RecommendationIdList",
          "documentation":"<p>The identifiers of the recommendations.</p>"
        },
        "errors":{
          "shape":"NotifyRecommendationsReceivedErrorList",
          "documentation":"<p>The identifiers of recommendations that are causing errors.</p>"
        }
      }
    },
    "ObjectFieldsList":{
      "type":"list",
      "member":{"shape":"NonEmptyString"},
      "max":100,
      "min":1
    },
    "OrCondition":{
      "type":"structure",
      "members":{
        "andConditions":{
          "shape":"AndConditions",
          "documentation":"<p>A list of conditions which would be applied together with an <code>AND</code> condition.</p>"
        },
        "tagCondition":{
          "shape":"TagCondition",
          "documentation":"<p>A leaf node condition which can be used to specify a tag condition.</p>"
        }
      },
      "documentation":"<p>A list of conditions which would be applied together with an <code>OR</code> condition.</p>",
      "union":true
    },
    "OrConditions":{
      "type":"list",
      "member":{"shape":"OrCondition"}
    },
    "OrchestrationAIAgentConfiguration":{
      "type":"structure",
      "required":["orchestrationAIPromptId"],
      "members":{
        "orchestrationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier used by the Orchestration AI Agent.</p>"
        },
        "orchestrationAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier used by the Orchestration AI Agent.</p>"
        },
        "toolConfigurations":{
          "shape":"ToolConfigurationList",
          "documentation":"<p>The tool configurations used by the Orchestration AI Agent.</p>"
        },
        "connectInstanceArn":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Connect instance used by the Orchestration AI Agent.</p>"
        },
        "locale":{
          "shape":"NonEmptyString",
          "documentation":"<p>The locale setting for the Orchestration AI Agent.</p>"
        }
      },
      "documentation":"<p>The configuration for AI Agents of type <code>ORCHESTRATION</code>.</p>"
    },
    "OrchestratorConfigurationEntry":{
      "type":"structure",
      "required":["orchestratorUseCase"],
      "members":{
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the AI Agent in the orchestrator configuration.</p>"
        },
        "orchestratorUseCase":{
          "shape":"NonEmptyString",
          "documentation":"<p>The use case for the orchestrator configuration. (for example Connect.SelfService, Connect.AgentAssistance)</p>"
        }
      },
      "documentation":"<p>An entry in the orchestrator configuration list.</p>"
    },
    "OrchestratorConfigurationList":{
      "type":"list",
      "member":{"shape":"OrchestratorConfigurationEntry"}
    },
    "Order":{
      "type":"string",
      "enum":[
        "ASC",
        "DESC"
      ]
    },
    "Origin":{
      "type":"string",
      "enum":[
        "SYSTEM",
        "CUSTOMER"
      ]
    },
    "ParsingConfiguration":{
      "type":"structure",
      "required":["parsingStrategy"],
      "members":{
        "parsingStrategy":{
          "shape":"ParsingStrategy",
          "documentation":"<p>The parsing strategy for the data source.</p>"
        },
        "bedrockFoundationModelConfiguration":{
          "shape":"BedrockFoundationModelConfigurationForParsing",
          "documentation":"<p>Settings for a foundation model used to parse documents for a data source.</p>"
        }
      },
      "documentation":"<p>Settings for parsing document contents. By default, the service converts the contents of each document into text before splitting it into chunks. To improve processing of PDF files with tables and images, you can configure the data source to convert the pages of text into images and use a model to describe the contents of each page.</p>"
    },
    "ParsingPrompt":{
      "type":"structure",
      "required":["parsingPromptText"],
      "members":{
        "parsingPromptText":{
          "shape":"ParsingPromptText",
          "documentation":"<p>Instructions for interpreting the contents of a document.</p>"
        }
      },
      "documentation":"<p>Instructions for interpreting the contents of a document.</p>"
    },
    "ParsingPromptText":{
      "type":"string",
      "max":10000,
      "min":1
    },
    "ParsingStrategy":{
      "type":"string",
      "enum":["BEDROCK_FOUNDATION_MODEL"]
    },
    "Participant":{
      "type":"string",
      "enum":[
        "CUSTOMER",
        "AGENT",
        "BOT"
      ]
    },
    "PreconditionFailedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The provided <code>revisionId</code> does not match, indicating the content has been modified since it was last read.</p>",
      "error":{
        "httpStatusCode":412,
        "senderFault":true
      },
      "exception":true
    },
    "Priority":{
      "type":"string",
      "enum":[
        "HIGH",
        "MEDIUM",
        "LOW"
      ]
    },
    "Probability":{
      "type":"float",
      "box":true,
      "max":1,
      "min":0,
      "sensitive":true
    },
    "PushADMMessageTemplateContent":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.</p>"
        },
        "body":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body to use in a push notification that is based on the message template.</p>"
        },
        "action":{
          "shape":"PushMessageAction",
          "documentation":"<p>The action to occur if a recipient taps a push notification that is based on the message template. Valid values are:</p> <ul> <li> <p> <code>OPEN_APP</code> - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.</p> </li> <li> <p> <code>DEEP_LINK</code> - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.</p> </li> <li> <p> <code>URL</code> - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.</p> </li> </ul>"
        },
        "sound":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in <code>/res/raw/</code>.</p>"
        },
        "url":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the <code>action</code> property is <code>URL</code>.</p>"
        },
        "imageUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of an image to display in a push notification that's based on the message template.</p>"
        },
        "imageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the large icon image to display in the content view of a push notification that's based on the message template.</p>"
        },
        "smallImageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        },
        "rawContent":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        }
      },
      "documentation":"<p>The content of the push message template that applies to ADM (Amazon Device Messaging) notification service.</p>"
    },
    "PushAPNSMessageTemplateContent":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.</p>"
        },
        "body":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body to use in a push notification that is based on the message template.</p>"
        },
        "action":{
          "shape":"PushMessageAction",
          "documentation":"<p>The action to occur if a recipient taps a push notification that is based on the message template. Valid values are:</p> <ul> <li> <p> <code>OPEN_APP</code> - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.</p> </li> <li> <p> <code>DEEP_LINK</code> - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the iOS platform.</p> </li> <li> <p> <code>URL</code> - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.</p> </li> </ul>"
        },
        "sound":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The key for the sound to play when the recipient receives a push notification that's based on the message template. The value for this key is the name of a sound file in your app's main bundle or the <code>Library/Sounds</code> folder in your app's data container. If the sound file can't be found or you specify <code>default</code> for the value, the system plays the default alert sound.</p>"
        },
        "url":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the <code>action</code> property is <code>URL</code>.</p>"
        },
        "mediaUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of an image or video to display in push notifications that are based on the message template.</p>"
        },
        "rawContent":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.</p>"
        }
      },
      "documentation":"<p>The content of the push message template that applies to APNS (Apple Push Notification service) notification service.</p>"
    },
    "PushBaiduMessageTemplateContent":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.</p>"
        },
        "body":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body to use in a push notification that is based on the message template.</p>"
        },
        "action":{
          "shape":"PushMessageAction",
          "documentation":"<p>The action to occur if a recipient taps a push notification that is based on the message template. Valid values are:</p> <ul> <li> <p> <code>OPEN_APP</code> - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.</p> </li> <li> <p> <code>DEEP_LINK</code> - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.</p> </li> <li> <p> <code>URL</code> - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.</p> </li> </ul>"
        },
        "sound":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in <code>/res/raw/</code>.</p>"
        },
        "url":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the <code>action</code> property is <code>URL</code>.</p>"
        },
        "imageUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of an image to display in a push notification that's based on the message template.</p>"
        },
        "imageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the large icon image to display in the content view of a push notification that's based on the message template.</p>"
        },
        "smallImageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        },
        "rawContent":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        }
      },
      "documentation":"<p>The content of the push message template that applies to Baidu notification service.</p>"
    },
    "PushFCMMessageTemplateContent":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.</p>"
        },
        "body":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body to use in a push notification that is based on the message template.</p>"
        },
        "action":{
          "shape":"PushMessageAction",
          "documentation":"<p>The action to occur if a recipient taps a push notification that is based on the message template. Valid values are:</p> <ul> <li> <p> <code>OPEN_APP</code> - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.</p> </li> <li> <p> <code>DEEP_LINK</code> - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.</p> </li> <li> <p> <code>URL</code> - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.</p> </li> </ul>"
        },
        "sound":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in <code>/res/raw/</code>.</p>"
        },
        "url":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the <code>action</code> property is <code>URL</code>.</p>"
        },
        "imageUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of an image to display in a push notification that's based on the message template.</p>"
        },
        "imageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the large icon image to display in the content view of a push notification that's based on the message template.</p>"
        },
        "smallImageIconUrl":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        },
        "rawContent":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.</p>"
        }
      },
      "documentation":"<p>The content of the push message template that applies to FCM (Firebase Cloud Messaging) notification service.</p>"
    },
    "PushMessageAction":{
      "type":"string",
      "enum":[
        "OPEN_APP",
        "DEEP_LINK",
        "URL"
      ]
    },
    "PushMessageTemplateContent":{
      "type":"structure",
      "members":{
        "adm":{
          "shape":"PushADMMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to ADM (Amazon Device Messaging) notification service.</p>"
        },
        "apns":{
          "shape":"PushAPNSMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to APNS(Apple Push Notification service) notification service.</p>"
        },
        "fcm":{
          "shape":"PushFCMMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to FCM (Firebase Cloud Messaging) notification service.</p>"
        },
        "baidu":{
          "shape":"PushBaiduMessageTemplateContent",
          "documentation":"<p>The content of the message template that applies to Baidu notification service.</p>"
        }
      },
      "documentation":"<p>The content of the message template that applies to the push channel subtype.</p>"
    },
    "PutFeedbackRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "targetId",
        "targetType",
        "contentFeedback"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "targetId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the feedback target.</p>"
        },
        "targetType":{
          "shape":"TargetType",
          "documentation":"<p>The type of the feedback target.</p>"
        },
        "contentFeedback":{
          "shape":"ContentFeedbackData",
          "documentation":"<p>Information about the feedback provided.</p>"
        }
      }
    },
    "PutFeedbackResponse":{
      "type":"structure",
      "required":[
        "assistantId",
        "assistantArn",
        "targetId",
        "targetType",
        "contentFeedback"
      ],
      "members":{
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"UuidOrArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        },
        "targetId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the feedback target.</p>"
        },
        "targetType":{
          "shape":"TargetType",
          "documentation":"<p>The type of the feedback target.</p>"
        },
        "contentFeedback":{
          "shape":"ContentFeedbackData",
          "documentation":"<p>Information about the feedback provided.</p>"
        }
      }
    },
    "QueryAssistantRequest":{
      "type":"structure",
      "required":["assistantId"],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "queryText":{
          "shape":"QueryText",
          "documentation":"<p>The text to search for.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "queryCondition":{
          "shape":"QueryConditionExpression",
          "documentation":"<p>Information about how to query content.</p>"
        },
        "queryInputData":{
          "shape":"QueryInputData",
          "documentation":"<p>Information about the query.</p>"
        },
        "overrideKnowledgeBaseSearchType":{
          "shape":"KnowledgeBaseSearchType",
          "documentation":"<p>The search type to be used against the Knowledge Base for this request. The values can be <code>SEMANTIC</code> which uses vector embeddings or <code>HYBRID</code> which use vector embeddings and raw text.</p>"
        }
      }
    },
    "QueryAssistantResponse":{
      "type":"structure",
      "required":["results"],
      "members":{
        "results":{
          "shape":"QueryResultsList",
          "documentation":"<p>The results of the query.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "QueryCondition":{
      "type":"structure",
      "members":{
        "single":{
          "shape":"QueryConditionItem",
          "documentation":"<p>The condition for the query.</p>"
        }
      },
      "documentation":"<p>Information about how to query content.</p>",
      "union":true
    },
    "QueryConditionComparisonOperator":{
      "type":"string",
      "enum":["EQUALS"]
    },
    "QueryConditionExpression":{
      "type":"list",
      "member":{"shape":"QueryCondition"},
      "max":1,
      "min":0
    },
    "QueryConditionFieldName":{
      "type":"string",
      "enum":["RESULT_TYPE"]
    },
    "QueryConditionItem":{
      "type":"structure",
      "required":[
        "field",
        "comparator",
        "value"
      ],
      "members":{
        "field":{
          "shape":"QueryConditionFieldName",
          "documentation":"<p> The name of the field for query condition to query on.</p>"
        },
        "comparator":{
          "shape":"QueryConditionComparisonOperator",
          "documentation":"<p>The comparison operator for query condition to query on.</p>"
        },
        "value":{
          "shape":"NonEmptyString",
          "documentation":"<p>The value for the query condition to query on.</p>"
        }
      },
      "documentation":"<p>The condition for the query.</p>"
    },
    "QueryInputData":{
      "type":"structure",
      "members":{
        "queryTextInputData":{
          "shape":"QueryTextInputData",
          "documentation":"<p>Input information for the query.</p>"
        },
        "intentInputData":{
          "shape":"IntentInputData",
          "documentation":"<p>Input information for the intent.</p>"
        },
        "caseSummarizationInputData":{
          "shape":"CaseSummarizationInputData",
          "documentation":"<p>Input data for case summarization queries.</p>"
        }
      },
      "documentation":"<p>Input information for the query.</p>",
      "union":true
    },
    "QueryRecommendationTriggerData":{
      "type":"structure",
      "members":{
        "text":{
          "shape":"QueryText",
          "documentation":"<p>The text associated with the recommendation trigger.</p>"
        }
      },
      "documentation":"<p>Data associated with the QUERY RecommendationTriggerType.</p>"
    },
    "QueryResultType":{
      "type":"string",
      "enum":[
        "KNOWLEDGE_CONTENT",
        "INTENT_ANSWER",
        "GENERATIVE_ANSWER",
        "GENERATIVE_ANSWER_CHUNK",
        "BLOCKED_GENERATIVE_ANSWER_CHUNK",
        "INTENT_ANSWER_CHUNK",
        "BLOCKED_INTENT_ANSWER_CHUNK",
        "EMAIL_RESPONSE_CHUNK",
        "EMAIL_OVERVIEW_CHUNK",
        "EMAIL_GENERATIVE_ANSWER_CHUNK",
        "CASE_SUMMARIZATION_CHUNK",
        "BLOCKED_CASE_SUMMARIZATION_CHUNK",
        "NOTES",
        "NOTES_CHUNK",
        "BLOCKED_NOTES_CHUNK"
      ]
    },
    "QueryResultsList":{
      "type":"list",
      "member":{"shape":"ResultData"}
    },
    "QueryText":{
      "type":"string",
      "max":512,
      "min":0,
      "sensitive":true
    },
    "QueryTextInputData":{
      "type":"structure",
      "required":["text"],
      "members":{
        "text":{
          "shape":"QueryText",
          "documentation":"<p>The text to search for.</p>"
        }
      },
      "documentation":"<p>Information about the text to search for.</p>"
    },
    "QuickResponseContent":{
      "type":"string",
      "max":1024,
      "min":1,
      "sensitive":true
    },
    "QuickResponseContentProvider":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"QuickResponseContent",
          "documentation":"<p>The content of the quick response.</p>"
        }
      },
      "documentation":"<p>The container quick response content.</p>",
      "union":true
    },
    "QuickResponseContents":{
      "type":"structure",
      "members":{
        "plainText":{"shape":"QuickResponseContentProvider"},
        "markdown":{"shape":"QuickResponseContentProvider"}
      },
      "documentation":"<p>The content of the quick response stored in different media types.</p>"
    },
    "QuickResponseData":{
      "type":"structure",
      "required":[
        "quickResponseArn",
        "quickResponseId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "contentType",
        "status",
        "createdTime",
        "lastModifiedTime"
      ],
      "members":{
        "quickResponseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the quick response.</p>"
        },
        "quickResponseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the quick response.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "name":{
          "shape":"QuickResponseName",
          "documentation":"<p>The name of the quick response.</p>"
        },
        "contentType":{
          "shape":"QuickResponseType",
          "documentation":"<p>The media type of the quick response content.</p> <ul> <li> <p>Use <code>application/x.quickresponse;format=plain</code> for quick response written in plain text.</p> </li> <li> <p>Use <code>application/x.quickresponse;format=markdown</code> for quick response written in richtext.</p> </li> </ul>"
        },
        "status":{
          "shape":"QuickResponseStatus",
          "documentation":"<p>The status of the quick response data.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response data was last modified.</p>"
        },
        "contents":{
          "shape":"QuickResponseContents",
          "documentation":"<p>The contents of the quick response.</p>"
        },
        "description":{
          "shape":"QuickResponseDescription",
          "documentation":"<p>The description of the quick response.</p>"
        },
        "groupingConfiguration":{
          "shape":"GroupingConfiguration",
          "documentation":"<p>The configuration information of the user groups that the quick response is accessible to.</p>"
        },
        "shortcutKey":{
          "shape":"ShortCutKey",
          "documentation":"<p>The shortcut key of the quick response. The value should be unique across the knowledge base.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the quick response data.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the quick response is active.</p>"
        },
        "channels":{
          "shape":"Channels",
          "documentation":"<p>The Amazon Connect contact channels this quick response applies to. The supported contact channel types include <code>Chat</code>.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>Information about the quick response.</p>"
    },
    "QuickResponseDataProvider":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"QuickResponseContent",
          "documentation":"<p>The content of the quick response.</p>"
        }
      },
      "documentation":"<p>The container of quick response data.</p>",
      "union":true
    },
    "QuickResponseDescription":{
      "type":"string",
      "max":255,
      "min":1
    },
    "QuickResponseFilterField":{
      "type":"structure",
      "required":[
        "name",
        "operator"
      ],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the attribute field to filter the quick responses by.</p>"
        },
        "values":{
          "shape":"QuickResponseFilterValueList",
          "documentation":"<p>The values of attribute field to filter the quick response by.</p>"
        },
        "operator":{
          "shape":"QuickResponseFilterOperator",
          "documentation":"<p>The operator to use for filtering.</p>"
        },
        "includeNoExistence":{
          "shape":"Boolean",
          "documentation":"<p>Whether to treat null value as a match for the attribute field.</p>"
        }
      },
      "documentation":"<p>The quick response fields to filter the quick response query results by.</p> <p>The following is the list of supported field names.</p> <ul> <li> <p>name</p> </li> <li> <p>description</p> </li> <li> <p>shortcutKey</p> </li> <li> <p>isActive</p> </li> <li> <p>channels</p> </li> <li> <p>language</p> </li> <li> <p>contentType</p> </li> <li> <p>createdTime</p> </li> <li> <p>lastModifiedTime</p> </li> <li> <p>lastModifiedBy</p> </li> <li> <p>groupingConfiguration.criteria</p> </li> <li> <p>groupingConfiguration.values</p> </li> </ul>"
    },
    "QuickResponseFilterFieldList":{
      "type":"list",
      "member":{"shape":"QuickResponseFilterField"},
      "max":10,
      "min":0
    },
    "QuickResponseFilterOperator":{
      "type":"string",
      "enum":[
        "EQUALS",
        "PREFIX"
      ]
    },
    "QuickResponseFilterValue":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "QuickResponseFilterValueList":{
      "type":"list",
      "member":{"shape":"QuickResponseFilterValue"},
      "max":5,
      "min":1
    },
    "QuickResponseName":{
      "type":"string",
      "max":100,
      "min":1
    },
    "QuickResponseOrderField":{
      "type":"structure",
      "required":["name"],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the attribute to order the quick response query results by.</p>"
        },
        "order":{
          "shape":"Order",
          "documentation":"<p>The order at which the quick responses are sorted by.</p>"
        }
      },
      "documentation":"<p>The quick response fields to order the quick response query results by.</p> <p>The following is the list of supported field names.</p> <ul> <li> <p>name</p> </li> <li> <p>description</p> </li> <li> <p>shortcutKey</p> </li> <li> <p>isActive</p> </li> <li> <p>channels</p> </li> <li> <p>language</p> </li> <li> <p>contentType</p> </li> <li> <p>createdTime</p> </li> <li> <p>lastModifiedTime</p> </li> <li> <p>lastModifiedBy</p> </li> <li> <p>groupingConfiguration.criteria</p> </li> <li> <p>groupingConfiguration.values</p> </li> </ul>"
    },
    "QuickResponseQueryField":{
      "type":"structure",
      "required":[
        "name",
        "values",
        "operator"
      ],
      "members":{
        "name":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the attribute to query the quick responses by.</p>"
        },
        "values":{
          "shape":"QuickResponseQueryValueList",
          "documentation":"<p>The values of the attribute to query the quick responses by.</p>"
        },
        "operator":{
          "shape":"QuickResponseQueryOperator",
          "documentation":"<p>The operator to use for matching attribute field values in the query.</p>"
        },
        "allowFuzziness":{
          "shape":"Boolean",
          "documentation":"<p>Whether the query expects only exact matches on the attribute field values. The results of the query will only include exact matches if this parameter is set to false.</p>"
        },
        "priority":{
          "shape":"Priority",
          "documentation":"<p>The importance of the attribute field when calculating query result relevancy scores. The value set for this parameter affects the ordering of search results.</p>"
        }
      },
      "documentation":"<p>The quick response fields to query quick responses by.</p> <p>The following is the list of supported field names.</p> <ul> <li> <p>content</p> </li> <li> <p>name</p> </li> <li> <p>description</p> </li> <li> <p>shortcutKey</p> </li> </ul>"
    },
    "QuickResponseQueryFieldList":{
      "type":"list",
      "member":{"shape":"QuickResponseQueryField"},
      "max":4,
      "min":0
    },
    "QuickResponseQueryOperator":{
      "type":"string",
      "enum":[
        "CONTAINS",
        "CONTAINS_AND_PREFIX"
      ]
    },
    "QuickResponseQueryValue":{
      "type":"string",
      "max":1024,
      "min":1
    },
    "QuickResponseQueryValueList":{
      "type":"list",
      "member":{"shape":"QuickResponseQueryValue"},
      "max":5,
      "min":1
    },
    "QuickResponseSearchExpression":{
      "type":"structure",
      "members":{
        "queries":{
          "shape":"QuickResponseQueryFieldList",
          "documentation":"<p>The quick response query expressions.</p>"
        },
        "filters":{
          "shape":"QuickResponseFilterFieldList",
          "documentation":"<p>The configuration of filtering rules applied to quick response query results.</p>"
        },
        "orderOnField":{
          "shape":"QuickResponseOrderField",
          "documentation":"<p>The quick response attribute fields on which the query results are ordered.</p>"
        }
      },
      "documentation":"<p>Information about the import job.</p>"
    },
    "QuickResponseSearchResultData":{
      "type":"structure",
      "required":[
        "quickResponseArn",
        "quickResponseId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "contentType",
        "status",
        "contents",
        "createdTime",
        "lastModifiedTime",
        "isActive"
      ],
      "members":{
        "quickResponseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the quick response.</p>"
        },
        "quickResponseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the quick response.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>"
        },
        "name":{
          "shape":"QuickResponseName",
          "documentation":"<p>The name of the quick response.</p>"
        },
        "contentType":{
          "shape":"QuickResponseType",
          "documentation":"<p>The media type of the quick response content.</p> <ul> <li> <p>Use <code>application/x.quickresponse;format=plain</code> for quick response written in plain text.</p> </li> <li> <p>Use <code>application/x.quickresponse;format=markdown</code> for quick response written in richtext.</p> </li> </ul>"
        },
        "status":{
          "shape":"QuickResponseStatus",
          "documentation":"<p>The resource status of the quick response.</p>"
        },
        "contents":{
          "shape":"QuickResponseContents",
          "documentation":"<p>The contents of the quick response.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response search result data was last modified.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the quick response is active.</p>"
        },
        "description":{
          "shape":"QuickResponseDescription",
          "documentation":"<p>The description of the quick response.</p>"
        },
        "groupingConfiguration":{
          "shape":"GroupingConfiguration",
          "documentation":"<p>The configuration information of the user groups that the quick response is accessible to.</p>"
        },
        "shortcutKey":{
          "shape":"ShortCutKey",
          "documentation":"<p>The shortcut key of the quick response. The value should be unique across the knowledge base.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the quick response search result data.</p>"
        },
        "channels":{
          "shape":"Channels",
          "documentation":"<p>The Amazon Connect contact channels this quick response applies to. The supported contact channel types include <code>Chat</code>.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written.</p>"
        },
        "attributesNotInterpolated":{
          "shape":"ContactAttributeKeys",
          "documentation":"<p>The user defined contact attributes that are not resolved when the search result is returned.</p>"
        },
        "attributesInterpolated":{
          "shape":"ContactAttributeKeys",
          "documentation":"<p>The user defined contact attributes that are resolved when the search result is returned.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The result of quick response search.</p>"
    },
    "QuickResponseSearchResultsList":{
      "type":"list",
      "member":{"shape":"QuickResponseSearchResultData"}
    },
    "QuickResponseStatus":{
      "type":"string",
      "enum":[
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "CREATED",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED",
        "UPDATE_IN_PROGRESS",
        "UPDATE_FAILED"
      ]
    },
    "QuickResponseSummary":{
      "type":"structure",
      "required":[
        "quickResponseArn",
        "quickResponseId",
        "knowledgeBaseArn",
        "knowledgeBaseId",
        "name",
        "contentType",
        "status",
        "createdTime",
        "lastModifiedTime"
      ],
      "members":{
        "quickResponseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the quick response.</p>"
        },
        "quickResponseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the quick response.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base.</p>"
        },
        "name":{
          "shape":"QuickResponseName",
          "documentation":"<p>The name of the quick response.</p>"
        },
        "contentType":{
          "shape":"QuickResponseType",
          "documentation":"<p>The media type of the quick response content.</p> <ul> <li> <p>Use <code>application/x.quickresponse;format=plain</code> for quick response written in plain text.</p> </li> <li> <p>Use <code>application/x.quickresponse;format=markdown</code> for quick response written in richtext.</p> </li> </ul>"
        },
        "status":{
          "shape":"QuickResponseStatus",
          "documentation":"<p>The resource status of the quick response.</p>"
        },
        "createdTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The timestamp when the quick response summary was last modified.</p>"
        },
        "description":{
          "shape":"QuickResponseDescription",
          "documentation":"<p>The description of the quick response.</p>"
        },
        "lastModifiedBy":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the user who last updated the quick response data.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the quick response is active.</p>"
        },
        "channels":{
          "shape":"Channels",
          "documentation":"<p>The Amazon Connect contact channels this quick response applies to. The supported contact channel types include <code>Chat</code>.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      },
      "documentation":"<p>The summary information about the quick response.</p>"
    },
    "QuickResponseSummaryList":{
      "type":"list",
      "member":{"shape":"QuickResponseSummary"}
    },
    "QuickResponseType":{
      "type":"string",
      "pattern":"(application/x\\.quickresponse;format=(plain|markdown))"
    },
    "RankingData":{
      "type":"structure",
      "members":{
        "relevanceScore":{
          "shape":"RelevanceScore",
          "documentation":"<p>The relevance level of the recommendation.</p>"
        },
        "relevanceLevel":{
          "shape":"RelevanceLevel",
          "documentation":"<p>The relevance score of the content.</p>"
        }
      },
      "documentation":"<p>Details about the source content ranking data.</p>"
    },
    "RecommendationData":{
      "type":"structure",
      "required":["recommendationId"],
      "members":{
        "recommendationId":{
          "shape":"RecommendationId",
          "documentation":"<p>The identifier of the recommendation.</p>"
        },
        "document":{
          "shape":"Document",
          "documentation":"<p>The recommended document.</p>"
        },
        "relevanceScore":{
          "shape":"RelevanceScore",
          "documentation":"<p>The relevance score of the recommendation.</p>"
        },
        "relevanceLevel":{
          "shape":"RelevanceLevel",
          "documentation":"<p>The relevance level of the recommendation.</p>"
        },
        "type":{
          "shape":"RecommendationType",
          "documentation":"<p>The type of recommendation.</p>"
        },
        "data":{
          "shape":"DataSummary",
          "documentation":"<p> Summary of the recommended content.</p>"
        }
      },
      "documentation":"<p>Information about the recommendation.</p>"
    },
    "RecommendationId":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "RecommendationIdList":{
      "type":"list",
      "member":{"shape":"RecommendationId"},
      "max":25,
      "min":0
    },
    "RecommendationList":{
      "type":"list",
      "member":{"shape":"RecommendationData"}
    },
    "RecommendationSourceType":{
      "type":"string",
      "enum":[
        "ISSUE_DETECTION",
        "RULE_EVALUATION",
        "OTHER"
      ]
    },
    "RecommendationTrigger":{
      "type":"structure",
      "required":[
        "id",
        "type",
        "source",
        "data",
        "recommendationIds"
      ],
      "members":{
        "id":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the recommendation trigger.</p>"
        },
        "type":{
          "shape":"RecommendationTriggerType",
          "documentation":"<p>The type of recommendation trigger.</p>"
        },
        "source":{
          "shape":"RecommendationSourceType",
          "documentation":"<p>The source of the recommendation trigger.</p> <ul> <li> <p>ISSUE_DETECTION: The corresponding recommendations were triggered by a Contact Lens issue.</p> </li> <li> <p>RULE_EVALUATION: The corresponding recommendations were triggered by a Contact Lens rule.</p> </li> </ul>"
        },
        "data":{
          "shape":"RecommendationTriggerData",
          "documentation":"<p>A union type containing information related to the trigger.</p>"
        },
        "recommendationIds":{
          "shape":"RecommendationIdList",
          "documentation":"<p>The identifiers of the recommendations.</p>"
        }
      },
      "documentation":"<p>A recommendation trigger provides context on the event that produced the referenced recommendations. Recommendations are only referenced in <code>recommendationIds</code> by a single RecommendationTrigger.</p>"
    },
    "RecommendationTriggerData":{
      "type":"structure",
      "members":{
        "query":{
          "shape":"QueryRecommendationTriggerData",
          "documentation":"<p>Data associated with the QUERY RecommendationTriggerType.</p>"
        }
      },
      "documentation":"<p>A union type containing information related to the trigger.</p>",
      "union":true
    },
    "RecommendationTriggerList":{
      "type":"list",
      "member":{"shape":"RecommendationTrigger"}
    },
    "RecommendationTriggerType":{
      "type":"string",
      "enum":[
        "QUERY",
        "GENERATIVE"
      ]
    },
    "RecommendationType":{
      "type":"string",
      "enum":[
        "KNOWLEDGE_CONTENT",
        "GENERATIVE_RESPONSE",
        "GENERATIVE_ANSWER",
        "DETECTED_INTENT",
        "GENERATIVE_ANSWER_CHUNK",
        "BLOCKED_GENERATIVE_ANSWER_CHUNK",
        "INTENT_ANSWER_CHUNK",
        "BLOCKED_INTENT_ANSWER_CHUNK",
        "EMAIL_RESPONSE_CHUNK",
        "EMAIL_OVERVIEW_CHUNK",
        "EMAIL_GENERATIVE_ANSWER_CHUNK",
        "CASE_SUMMARIZATION_CHUNK",
        "BLOCKED_CASE_SUMMARIZATION_CHUNK",
        "SUGGESTED_MESSAGE",
        "NOTES_CHUNK",
        "BLOCKED_NOTES_CHUNK"
      ]
    },
    "ReferenceType":{
      "type":"string",
      "enum":[
        "WEB_CRAWLER",
        "KNOWLEDGE_BASE",
        "BEDROCK_KB_S3",
        "BEDROCK_KB_WEB",
        "BEDROCK_KB_CONFLUENCE",
        "BEDROCK_KB_SALESFORCE",
        "BEDROCK_KB_SHAREPOINT",
        "BEDROCK_KB_KENDRA",
        "BEDROCK_KB_CUSTOM_DOCUMENT",
        "BEDROCK_KB_SQL"
      ]
    },
    "Relevance":{
      "type":"string",
      "enum":[
        "HELPFUL",
        "NOT_HELPFUL"
      ]
    },
    "RelevanceLevel":{
      "type":"string",
      "enum":[
        "HIGH",
        "MEDIUM",
        "LOW"
      ]
    },
    "RelevanceScore":{
      "type":"double",
      "min":0.0
    },
    "RemoveAssistantAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentType"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentType":{
          "shape":"AIAgentType",
          "documentation":"<p>The type of the AI Agent being removed for use by default from the Amazon Q in Connect Assistant.</p>",
          "location":"querystring",
          "locationName":"aiAgentType"
        },
        "orchestratorUseCase":{
          "shape":"NonEmptyString",
          "documentation":"<p>The orchestrator use case for the AI Agent being removed.</p>",
          "location":"querystring",
          "locationName":"orchestratorUseCase"
        }
      }
    },
    "RemoveAssistantAIAgentResponse":{
      "type":"structure",
      "members":{}
    },
    "RemoveKnowledgeBaseTemplateUriRequest":{
      "type":"structure",
      "required":["knowledgeBaseId"],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        }
      }
    },
    "RemoveKnowledgeBaseTemplateUriResponse":{
      "type":"structure",
      "members":{}
    },
    "RenderMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId",
        "attributes"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "attributes":{
          "shape":"MessageTemplateAttributes",
          "documentation":"<p>An object that specifies the values to use for variables in the message template. This object contains different categories of key-value pairs. Each key defines a variable or placeholder in the message template. The corresponding value defines the value for that variable.</p>"
        }
      }
    },
    "RenderMessageTemplateResponse":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"MessageTemplateContentProvider",
          "documentation":"<p>The content of the message template.</p>"
        },
        "sourceConfigurationSummary":{
          "shape":"MessageTemplateSourceConfigurationSummary",
          "documentation":"<p>The source configuration of the message template.</p>"
        },
        "attributesNotInterpolated":{
          "shape":"MessageTemplateAttributeKeyList",
          "documentation":"<p>The attribute keys that are not resolved.</p>"
        },
        "attachments":{
          "shape":"MessageTemplateAttachmentList",
          "documentation":"<p>The message template attachments.</p>"
        }
      }
    },
    "RenderingConfiguration":{
      "type":"structure",
      "members":{
        "templateUri":{
          "shape":"Uri",
          "documentation":"<p>A URI template containing exactly one variable in <code>${variableName} </code>format. This can only be set for <code>EXTERNAL</code> knowledge bases. For Salesforce, ServiceNow, and Zendesk, the variable must be one of the following:</p> <ul> <li> <p>Salesforce: <code>Id</code>, <code>ArticleNumber</code>, <code>VersionNumber</code>, <code>Title</code>, <code>PublishStatus</code>, or <code>IsDeleted</code> </p> </li> <li> <p>ServiceNow: <code>number</code>, <code>short_description</code>, <code>sys_mod_count</code>, <code>workflow_state</code>, or <code>active</code> </p> </li> <li> <p>Zendesk: <code>id</code>, <code>title</code>, <code>updated_at</code>, or <code>draft</code> </p> </li> </ul> <p>The variable is replaced with the actual value for a piece of content when calling <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetContent.html\">GetContent</a>. </p>"
        }
      },
      "documentation":"<p>Information about how to render the content.</p>"
    },
    "RequestTimeoutException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The request reached the service more than 15 minutes after the date stamp on the request or more than 15 minutes after the request expiration date (such as for pre-signed URLs), or the date stamp on the request is more than 15 minutes in the future.</p>",
      "error":{
        "httpStatusCode":408,
        "senderFault":true
      },
      "exception":true,
      "retryable":{"throttling":false}
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "resourceName":{
          "shape":"String",
          "documentation":"<p>The specified resource name.</p>"
        }
      },
      "documentation":"<p>The specified resource does not exist.</p>",
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "ResultData":{
      "type":"structure",
      "required":["resultId"],
      "members":{
        "resultId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the result data.</p>"
        },
        "document":{
          "shape":"Document",
          "documentation":"<p>The document.</p>"
        },
        "relevanceScore":{
          "shape":"RelevanceScore",
          "documentation":"<p>The relevance score of the results.</p>"
        },
        "data":{
          "shape":"DataSummary",
          "documentation":"<p> Summary of the recommended content.</p>"
        },
        "type":{
          "shape":"QueryResultType",
          "documentation":"<p>The type of the query result.</p>"
        }
      },
      "documentation":"<p>Information about the result.</p>"
    },
    "RetrievalConfiguration":{
      "type":"structure",
      "required":["knowledgeSource"],
      "members":{
        "knowledgeSource":{
          "shape":"KnowledgeSource",
          "documentation":"<p>The knowledge source configuration for content retrieval.</p>"
        },
        "filter":{
          "shape":"RetrievalFilterConfiguration",
          "documentation":"<p>The filter configuration for content retrieval.</p>"
        },
        "numberOfResults":{
          "shape":"Integer",
          "documentation":"<p>The number of results to retrieve.</p>"
        },
        "overrideKnowledgeBaseSearchType":{
          "shape":"KnowledgeBaseSearchType",
          "documentation":"<p>Override setting for the knowledge base search type during retrieval.</p>"
        }
      },
      "documentation":"<p>Configuration for content retrieval operations.</p>"
    },
    "RetrievalFilterConfiguration":{
      "type":"structure",
      "members":{
        "andAll":{
          "shape":"RetrievalFilterList",
          "documentation":"<p>Filter configuration that requires all conditions to be met.</p>"
        },
        "equals":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for exact equality matching.</p>"
        },
        "greaterThan":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for greater than comparison.</p>"
        },
        "greaterThanOrEquals":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for greater than or equal comparison.</p>"
        },
        "in":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for membership in a set of values.</p>"
        },
        "lessThan":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for less than comparison.</p>"
        },
        "lessThanOrEquals":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for less than or equal comparison.</p>"
        },
        "listContains":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for checking if a list contains a value.</p>"
        },
        "notEquals":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for inequality matching.</p>"
        },
        "notIn":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for exclusion from a set of values.</p>"
        },
        "orAll":{
          "shape":"RetrievalFilterList",
          "documentation":"<p>Filter configuration where any condition can be met.</p>"
        },
        "startsWith":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for prefix matching.</p>"
        },
        "stringContains":{
          "shape":"FilterAttribute",
          "documentation":"<p>Filter configuration for substring matching.</p>"
        }
      },
      "documentation":"<p>Configuration for filtering content during retrieval operations.</p>",
      "union":true
    },
    "RetrievalFilterList":{
      "type":"list",
      "member":{"shape":"RetrievalFilterConfiguration"},
      "min":2
    },
    "RetrieveRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "retrievalConfiguration",
        "retrievalQuery"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant for content retrieval.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "retrievalConfiguration":{
          "shape":"RetrievalConfiguration",
          "documentation":"<p>The configuration for the content retrieval operation.</p>"
        },
        "retrievalQuery":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The query for content retrieval.</p>"
        }
      }
    },
    "RetrieveResponse":{
      "type":"structure",
      "required":["results"],
      "members":{
        "results":{
          "shape":"RetrieveResultList",
          "documentation":"<p>The results of the content retrieval operation.</p>"
        }
      }
    },
    "RetrieveResult":{
      "type":"structure",
      "required":[
        "associationId",
        "sourceId",
        "referenceType",
        "contentText"
      ],
      "members":{
        "associationId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the assistant association for the retrieved result.</p>"
        },
        "sourceId":{
          "shape":"SensitiveString",
          "documentation":"<p>The URL, URI, or ID of the retrieved content when available, or a UUID when unavailable.</p>"
        },
        "referenceType":{
          "shape":"ReferenceType",
          "documentation":"<p>A type to define the KB origin of a retrieved content.</p>"
        },
        "contentText":{
          "shape":"SensitiveString",
          "documentation":"<p>The text content of the retrieved result.</p>"
        }
      },
      "documentation":"<p>A single result from a content retrieval operation.</p>"
    },
    "RetrieveResultList":{
      "type":"list",
      "member":{"shape":"RetrieveResult"}
    },
    "RuntimeSessionData":{
      "type":"structure",
      "required":[
        "key",
        "value"
      ],
      "members":{
        "key":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The key of the data stored on the session.</p>"
        },
        "value":{
          "shape":"RuntimeSessionDataValue",
          "documentation":"<p>The value of the data stored on the session.</p>"
        }
      },
      "documentation":"<p>The list of key-value pairs that are stored on the session.</p>"
    },
    "RuntimeSessionDataList":{
      "type":"list",
      "member":{"shape":"RuntimeSessionData"},
      "max":50,
      "min":0
    },
    "RuntimeSessionDataValue":{
      "type":"structure",
      "members":{
        "stringValue":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The string value of the data stored on the session.</p>"
        }
      },
      "documentation":"<p>A union type that specifies the data stored on the session.</p>",
      "union":true
    },
    "SMSMessageTemplateContent":{
      "type":"structure",
      "members":{
        "body":{
          "shape":"SMSMessageTemplateContentBody",
          "documentation":"<p>The body to use in SMS messages.</p>"
        }
      },
      "documentation":"<p>The content of the message template that applies to the SMS channel subtype.</p>"
    },
    "SMSMessageTemplateContentBody":{
      "type":"structure",
      "members":{
        "plainText":{
          "shape":"MessageTemplateBodyContentProvider",
          "documentation":"<p>The message body to use in SMS messages.</p>"
        }
      },
      "documentation":"<p>The body to use in SMS messages.</p>"
    },
    "SearchContentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "searchExpression"
      ],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "searchExpression":{
          "shape":"SearchExpression",
          "documentation":"<p>The search expression to filter results.</p>"
        }
      }
    },
    "SearchContentResponse":{
      "type":"structure",
      "required":["contentSummaries"],
      "members":{
        "contentSummaries":{
          "shape":"ContentSummaryList",
          "documentation":"<p>Summary information about the content.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "SearchExpression":{
      "type":"structure",
      "required":["filters"],
      "members":{
        "filters":{
          "shape":"FilterList",
          "documentation":"<p>The search expression filters.</p>"
        }
      },
      "documentation":"<p>The search expression.</p>"
    },
    "SearchMessageTemplatesRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "searchExpression"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "searchExpression":{
          "shape":"MessageTemplateSearchExpression",
          "documentation":"<p>The search expression for querying the message template.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "SearchMessageTemplatesResponse":{
      "type":"structure",
      "required":["results"],
      "members":{
        "results":{
          "shape":"MessageTemplateSearchResultsList",
          "documentation":"<p>The results of the message template search.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "SearchQuickResponsesRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "searchExpression"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "searchExpression":{
          "shape":"QuickResponseSearchExpression",
          "documentation":"<p>The search expression for querying the quick response.</p>"
        },
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "attributes":{
          "shape":"ContactAttributes",
          "documentation":"<p>The <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/connect-attrib-list.html#user-defined-attributes\">user-defined Amazon Connect contact attributes</a> to be resolved when search results are returned.</p>"
        }
      }
    },
    "SearchQuickResponsesResponse":{
      "type":"structure",
      "required":["results"],
      "members":{
        "results":{
          "shape":"QuickResponseSearchResultsList",
          "documentation":"<p>The results of the quick response search.</p>"
        },
        "nextToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>"
        }
      }
    },
    "SearchSessionsRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "searchExpression"
      ],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return per page.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "searchExpression":{
          "shape":"SearchExpression",
          "documentation":"<p>The search expression to filter results.</p>"
        }
      }
    },
    "SearchSessionsResponse":{
      "type":"structure",
      "required":["sessionSummaries"],
      "members":{
        "sessionSummaries":{
          "shape":"SessionSummaries",
          "documentation":"<p>Summary information about the sessions.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>If there are additional results, this is the token for the next set of results.</p>"
        }
      }
    },
    "SeedUrl":{
      "type":"structure",
      "members":{
        "url":{
          "shape":"WebUrl",
          "documentation":"<p>URL for crawling</p>"
        }
      },
      "documentation":"<p>A URL for crawling.</p>"
    },
    "SeedUrls":{
      "type":"list",
      "member":{"shape":"SeedUrl"},
      "max":100,
      "min":1
    },
    "SelfServiceAIAgentConfiguration":{
      "type":"structure",
      "members":{
        "selfServicePreProcessingAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Self Service Pre-Processing prompt used by the SELF_SERVICE AI Agent</p>"
        },
        "selfServiceAnswerGenerationAIPromptId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Prompt identifier for the Self Service Answer Generation prompt used by the SELF_SERVICE AI Agent</p>"
        },
        "selfServiceAIGuardrailId":{
          "shape":"UuidWithQualifier",
          "documentation":"<p>The AI Guardrail identifier used by the SELF_SERVICE AI Agent.</p>"
        },
        "associationConfigurations":{
          "shape":"AssociationConfigurationList",
          "documentation":"<p>The association configurations for overriding behavior on this AI Agent.</p>"
        }
      },
      "documentation":"<p>The configuration for AI Agents of type SELF_SERVICE.</p>"
    },
    "SelfServiceConversationHistory":{
      "type":"structure",
      "members":{
        "turnNumber":{
          "shape":"Integer",
          "documentation":"<p>The number of turn of the conversation history data.</p>",
          "box":true
        },
        "inputTranscript":{
          "shape":"SensitiveString",
          "documentation":"<p>The input transcript of the conversation history data.</p>"
        },
        "botResponse":{
          "shape":"SensitiveString",
          "documentation":"<p>The bot response of the conversation history data.</p>"
        },
        "timestamp":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp of the conversation history entry.</p>"
        }
      },
      "documentation":"<p>The conversation history data to included in conversation context data before the Amazon Q in Connect session.</p>"
    },
    "SelfServiceConversationHistoryList":{
      "type":"list",
      "member":{"shape":"SelfServiceConversationHistory"},
      "max":10,
      "min":0
    },
    "SemanticChunkingConfiguration":{
      "type":"structure",
      "required":[
        "maxTokens",
        "bufferSize",
        "breakpointPercentileThreshold"
      ],
      "members":{
        "maxTokens":{
          "shape":"SemanticChunkingConfigurationMaxTokensInteger",
          "documentation":"<p>The maximum number of tokens that a chunk can contain.</p>"
        },
        "bufferSize":{
          "shape":"SemanticChunkingConfigurationBufferSizeInteger",
          "documentation":"<p>The buffer size.</p>"
        },
        "breakpointPercentileThreshold":{
          "shape":"SemanticChunkingConfigurationBreakpointPercentileThresholdInteger",
          "documentation":"<p>The dissimilarity threshold for splitting chunks.</p>"
        }
      },
      "documentation":"<p>Settings for semantic document chunking for a data source. Semantic chunking splits a document into smaller documents based on groups of similar content derived from the text with natural language processing.</p>"
    },
    "SemanticChunkingConfigurationBreakpointPercentileThresholdInteger":{
      "type":"integer",
      "box":true,
      "max":99,
      "min":50
    },
    "SemanticChunkingConfigurationBufferSizeInteger":{
      "type":"integer",
      "box":true,
      "max":1,
      "min":0
    },
    "SemanticChunkingConfigurationMaxTokensInteger":{
      "type":"integer",
      "box":true,
      "min":1
    },
    "SendMessageRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId",
        "type",
        "message"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect session.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "type":{
          "shape":"MessageType",
          "documentation":"<p>The message type.</p>"
        },
        "message":{
          "shape":"MessageInput",
          "documentation":"<p>The message data to submit to the Amazon Q in Connect session.</p>"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the AI Agent to use for processing the message.</p>"
        },
        "conversationContext":{
          "shape":"ConversationContext",
          "documentation":"<p>The conversation context before the Amazon Q in Connect session.</p>"
        },
        "configuration":{
          "shape":"MessageConfiguration",
          "documentation":"<p>The configuration of the <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_SendMessage.html\">SendMessage</a> request.</p>"
        },
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the AWS SDK populates this field.For more information about idempotency, see Making retries safe with idempotent APIs.</p>",
          "idempotencyToken":true
        },
        "orchestratorUseCase":{
          "shape":"NonEmptyString",
          "documentation":"<p>The orchestrator use case for message processing.</p>"
        },
        "metadata":{
          "shape":"MessageMetadata",
          "documentation":"<p>Additional metadata for the message.</p>"
        },
        "originRequestId":{
          "shape":"SendMessageRequestOriginRequestIdString",
          "documentation":"<p>Request identifier from the origin system, used for end-to-end tracing across spans.</p>"
        }
      }
    },
    "SendMessageRequestOriginRequestIdString":{
      "type":"string",
      "max":256,
      "min":1
    },
    "SendMessageResponse":{
      "type":"structure",
      "required":[
        "requestMessageId",
        "nextMessageToken"
      ],
      "members":{
        "requestMessageId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the submitted message.</p>"
        },
        "configuration":{
          "shape":"MessageConfiguration",
          "documentation":"<p>The configuration of the <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_SendMessage.html\">SendMessage</a> request.</p>"
        },
        "nextMessageToken":{
          "shape":"NextToken",
          "documentation":"<p>The token for the next message, used by GetNextMessage.</p>"
        }
      }
    },
    "SensitiveString":{
      "type":"string",
      "sensitive":true
    },
    "ServerSideEncryptionConfiguration":{
      "type":"structure",
      "members":{
        "kmsKeyId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The customer managed key used for encryption. For more information about setting up a customer managed key for Amazon Q in Connect, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html\">Enable Amazon Q in Connect for your instance</a>. For information about valid ID values, see <a href=\"https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id\">Key identifiers (KeyId)</a>.</p>"
        }
      },
      "documentation":"<p>The configuration information for the customer managed key used for encryption.</p>"
    },
    "ServiceQuotaExceededException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>You've exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use service quotas to request a service quota increase.</p>",
      "error":{
        "httpStatusCode":402,
        "senderFault":true
      },
      "exception":true
    },
    "SessionData":{
      "type":"structure",
      "required":[
        "sessionArn",
        "sessionId",
        "name"
      ],
      "members":{
        "sessionArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the session.</p>"
        },
        "sessionId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the session.</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the session.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the session.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        },
        "integrationConfiguration":{
          "shape":"SessionIntegrationConfiguration",
          "documentation":"<p>The configuration information for the session integration.</p>"
        },
        "tagFilter":{
          "shape":"TagFilter",
          "documentation":"<p>An object that can be used to specify Tag conditions.</p>"
        },
        "aiAgentConfiguration":{
          "shape":"AIAgentConfigurationMap",
          "documentation":"<p>The configuration of the AI Agents (mapped by AI Agent Type to AI Agent version) that should be used by Amazon Q in Connect for this Session.</p>"
        },
        "origin":{
          "shape":"Origin",
          "documentation":"<p>The origin of the Session to be listed. <code>SYSTEM</code> for a default Session created by Amazon Q in Connect or <code>CUSTOMER</code> for a Session created by calling <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_amazon-q-connect_CreateSession.html\">CreateSession</a> API.</p>"
        },
        "orchestratorConfigurationList":{
          "shape":"OrchestratorConfigurationList",
          "documentation":"<p>The list of orchestrator configurations for the session.</p>"
        }
      },
      "documentation":"<p>Information about the session.</p>"
    },
    "SessionDataNamespace":{
      "type":"string",
      "enum":["Custom"]
    },
    "SessionIntegrationConfiguration":{
      "type":"structure",
      "members":{
        "topicIntegrationArn":{
          "shape":"GenericArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.</p>"
        }
      },
      "documentation":"<p>The configuration information for the session integration.</p>"
    },
    "SessionSummaries":{
      "type":"list",
      "member":{"shape":"SessionSummary"}
    },
    "SessionSummary":{
      "type":"structure",
      "required":[
        "sessionId",
        "sessionArn",
        "assistantId",
        "assistantArn"
      ],
      "members":{
        "sessionId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the session.</p>"
        },
        "sessionArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the session.</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant.</p>"
        },
        "assistantArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon Q in Connect assistant.</p>"
        }
      },
      "documentation":"<p>Summary information about the session.</p>"
    },
    "ShortCutKey":{
      "type":"string",
      "max":10,
      "min":1
    },
    "SourceConfiguration":{
      "type":"structure",
      "members":{
        "appIntegrations":{
          "shape":"AppIntegrationsConfiguration",
          "documentation":"<p>Configuration information for Amazon AppIntegrations to automatically ingest content.</p>"
        },
        "managedSourceConfiguration":{
          "shape":"ManagedSourceConfiguration",
          "documentation":"<p>Source configuration for managed resources.</p>"
        }
      },
      "documentation":"<p>Configuration information about the external data source.</p>",
      "union":true
    },
    "SourceContentDataDetails":{
      "type":"structure",
      "required":[
        "id",
        "type",
        "textData",
        "rankingData"
      ],
      "members":{
        "id":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the source content.</p>"
        },
        "type":{
          "shape":"SourceContentType",
          "documentation":"<p>The type of the source content.</p>"
        },
        "textData":{
          "shape":"TextData",
          "documentation":"<p> Details about the source content text data.</p>"
        },
        "rankingData":{
          "shape":"RankingData",
          "documentation":"<p>Details about the source content ranking data.</p>"
        },
        "citationSpan":{
          "shape":"CitationSpan",
          "documentation":"<p>Contains information about where the text with a citation begins and ends in the generated output.</p>"
        }
      },
      "documentation":"<p>Details about the source content data.</p>"
    },
    "SourceContentType":{
      "type":"string",
      "enum":["KNOWLEDGE_CONTENT"]
    },
    "Span":{
      "type":"structure",
      "required":[
        "spanId",
        "assistantId",
        "sessionId",
        "spanName",
        "spanType",
        "startTimestamp",
        "endTimestamp",
        "status",
        "requestId",
        "attributes"
      ],
      "members":{
        "spanId":{
          "shape":"Uuid",
          "documentation":"<p>Unique span identifier</p>"
        },
        "assistantId":{
          "shape":"Uuid",
          "documentation":"<p>UUID of the Connect AI Assistant resource</p>"
        },
        "sessionId":{
          "shape":"Uuid",
          "documentation":"<p>UUID of the Connect AI Session resource</p>"
        },
        "parentSpanId":{
          "shape":"Uuid",
          "documentation":"<p>Parent span identifier for hierarchy. Null for root spans.</p>"
        },
        "spanName":{
          "shape":"Name",
          "documentation":"<p>Service-defined operation name</p>"
        },
        "spanType":{
          "shape":"SpanType",
          "documentation":"<p>Operation relationship type</p>"
        },
        "startTimestamp":{
          "shape":"Timestamp",
          "documentation":"<p>Operation start time in milliseconds since epoch</p>"
        },
        "endTimestamp":{
          "shape":"Timestamp",
          "documentation":"<p>Operation end time in milliseconds since epoch</p>"
        },
        "status":{
          "shape":"SpanStatus",
          "documentation":"<p>Span completion status</p>"
        },
        "statusDescription":{
          "shape":"SpanStatusDescriptionString",
          "documentation":"<p>Human-readable error description when status is ERROR or TIMEOUT</p>"
        },
        "requestId":{
          "shape":"Uuid",
          "documentation":"<p>The service request ID that initiated the operation</p>"
        },
        "originRequestId":{
          "shape":"SpanOriginRequestIdString",
          "documentation":"<p>The origin request identifier for end-to-end tracing.</p>"
        },
        "attributes":{
          "shape":"SpanAttributes",
          "documentation":"<p>Span-specific contextual attributes</p>"
        }
      },
      "documentation":"<p>A span represents a unit of work during AI agent execution, capturing timing, status, and contextual attributes.</p>"
    },
    "SpanAttributes":{
      "type":"structure",
      "members":{
        "operationName":{
          "shape":"NonEmptyString",
          "documentation":"<p>Action being performed</p>"
        },
        "providerName":{
          "shape":"NonEmptyString",
          "documentation":"<p>Model provider identifier (e.g., aws.bedrock)</p>"
        },
        "errorType":{
          "shape":"NonEmptyString",
          "documentation":"<p>Error classification if span failed (e.g., throttle, timeout)</p>"
        },
        "agentId":{
          "shape":"Uuid",
          "documentation":"<p>Amazon Connect agent ID</p>"
        },
        "instanceArn":{
          "shape":"GenericArn",
          "documentation":"<p>Amazon Connect instance ARN</p>"
        },
        "contactId":{
          "shape":"Uuid",
          "documentation":"<p>Amazon Connect contact identifier</p>"
        },
        "initialContactId":{
          "shape":"Uuid",
          "documentation":"<p>Amazon Connect contact identifier</p>"
        },
        "sessionName":{
          "shape":"NonEmptyString",
          "documentation":"<p>Session name</p>"
        },
        "aiAgentArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>AI agent ARN</p>"
        },
        "aiAgentType":{
          "shape":"AIAgentType",
          "documentation":"<p>AI agent type</p>"
        },
        "aiAgentName":{
          "shape":"Name",
          "documentation":"<p>AI agent name</p>"
        },
        "aiAgentId":{
          "shape":"Uuid",
          "documentation":"<p>AI agent identifier</p>"
        },
        "aiAgentVersion":{
          "shape":"Integer",
          "documentation":"<p>AI agent version number</p>"
        },
        "aiAgentInvoker":{
          "shape":"NonEmptyString",
          "documentation":"<p>Entity that invoked the AI agent</p>"
        },
        "aiAgentOrchestratorUseCase":{
          "shape":"NonEmptyString",
          "documentation":"<p>AI agent orchestrator use case</p>"
        },
        "requestModel":{
          "shape":"NonEmptyString",
          "documentation":"<p>LLM model ID for request (e.g., anthropic.claude-3-sonnet)</p>"
        },
        "requestMaxTokens":{
          "shape":"Integer",
          "documentation":"<p>Maximum tokens configured for generation</p>"
        },
        "temperature":{
          "shape":"SpanAttributesTemperatureFloat",
          "documentation":"<p>Sampling temperature for generation</p>"
        },
        "topP":{
          "shape":"SpanAttributesTopPFloat",
          "documentation":"<p>Top-p sampling parameter for generation</p>"
        },
        "responseModel":{
          "shape":"NonEmptyString",
          "documentation":"<p>Actual model used for response (usually matches requestModel)</p>"
        },
        "responseFinishReasons":{
          "shape":"SpanFinishReasonList",
          "documentation":"<p>Generation termination reasons (e.g., stop, max_tokens)</p>"
        },
        "usageInputTokens":{
          "shape":"Integer",
          "documentation":"<p>Number of input tokens in prompt</p>"
        },
        "usageOutputTokens":{
          "shape":"Integer",
          "documentation":"<p>Number of output tokens in response</p>"
        },
        "usageTotalTokens":{
          "shape":"Integer",
          "documentation":"<p>Total tokens consumed (input + output)</p>"
        },
        "cacheReadInputTokens":{
          "shape":"Integer",
          "documentation":"<p>Number of input tokens that were retrieved from cache</p>"
        },
        "cacheWriteInputTokens":{
          "shape":"Integer",
          "documentation":"<p>Number of input tokens that were written to cache in this request</p>"
        },
        "inputMessages":{
          "shape":"SpanMessageList",
          "documentation":"<p>Input message collection sent to LLM</p>"
        },
        "outputMessages":{
          "shape":"SpanMessageList",
          "documentation":"<p>Output message collection received from LLM</p>"
        },
        "systemInstructions":{
          "shape":"SpanMessageValueList",
          "documentation":"<p>System prompt instructions</p>"
        },
        "promptArn":{
          "shape":"ArnWithQualifier",
          "documentation":"<p>AI prompt ARN</p>"
        },
        "promptId":{
          "shape":"Uuid",
          "documentation":"<p>AI prompt identifier</p>"
        },
        "promptType":{
          "shape":"AIPromptType",
          "documentation":"<p>AI prompt type</p>"
        },
        "promptName":{
          "shape":"Name",
          "documentation":"<p>AI prompt name</p>"
        },
        "promptVersion":{
          "shape":"Integer",
          "documentation":"<p>AI prompt version number</p>"
        },
        "timeToFirstTokenMs":{
          "shape":"Integer",
          "documentation":"<p>Time to first token in milliseconds, measured from when Amazon Bedrock was invoked to when the first token was returned</p>"
        },
        "guardrailAssessments":{
          "shape":"SpanGuardrailAssessmentList",
          "documentation":"<p>Guardrail assessments for the inference span. Absent on other span types and when no AI Guardrail is attached to the AI Agent.</p>"
        }
      },
      "documentation":"<p>Contextual attributes capturing operation details, LLM configuration, usage metrics, and conversation data</p>"
    },
    "SpanAttributesTemperatureFloat":{
      "type":"float",
      "box":true,
      "max":1.0,
      "min":0.0
    },
    "SpanAttributesTopPFloat":{
      "type":"float",
      "box":true,
      "max":1.0,
      "min":0.0
    },
    "SpanCitation":{
      "type":"structure",
      "members":{
        "contentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the content being cited in the span.</p>"
        },
        "title":{
          "shape":"SensitiveString",
          "documentation":"<p>The title of the content being cited in the span.</p>"
        },
        "knowledgeBaseId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the knowledge base containing the cited content.</p>"
        },
        "knowledgeBaseArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the knowledge base containing the cited content.</p>"
        }
      },
      "documentation":"<p>A citation that spans a specific range of text.</p>"
    },
    "SpanCitationList":{
      "type":"list",
      "member":{"shape":"SpanCitation"}
    },
    "SpanFinishReasonList":{
      "type":"list",
      "member":{"shape":"NonEmptyString"},
      "max":10,
      "min":0
    },
    "SpanGuardrailAssessment":{
      "type":"structure",
      "required":[
        "guardrailId",
        "guardrailName",
        "source",
        "action"
      ],
      "members":{
        "guardrailId":{
          "shape":"NonEmptyString",
          "documentation":"<p>Unique AI Guardrail identifier.</p>"
        },
        "guardrailName":{
          "shape":"NonEmptyString",
          "documentation":"<p>Customer-defined display name of the AI Guardrail resource.</p>"
        },
        "source":{
          "shape":"GuardrailSource",
          "documentation":"<p>Content source the guardrail was evaluated against.</p>"
        },
        "action":{
          "shape":"GuardrailAction",
          "documentation":"<p>Outcome of the guardrail assessment.</p>"
        },
        "policies":{
          "shape":"GuardrailPolicyResultList",
          "documentation":"<p>Per-policy assessment results. Absent or empty when action is NONE.</p>"
        }
      },
      "documentation":"<p>Result of a single guardrail assessment, covering either the input (customer/user message) or the output (LLM response) of a Bedrock Converse call.</p>"
    },
    "SpanGuardrailAssessmentList":{
      "type":"list",
      "member":{"shape":"SpanGuardrailAssessment"},
      "max":10,
      "min":0
    },
    "SpanList":{
      "type":"list",
      "member":{"shape":"Span"},
      "max":100,
      "min":0
    },
    "SpanMessage":{
      "type":"structure",
      "required":[
        "messageId",
        "participant",
        "timestamp",
        "values"
      ],
      "members":{
        "messageId":{
          "shape":"Uuid",
          "documentation":"<p>Unique message identifier</p>"
        },
        "participant":{
          "shape":"Participant",
          "documentation":"<p>Message source role</p>"
        },
        "timestamp":{
          "shape":"Timestamp",
          "documentation":"<p>Message timestamp</p>"
        },
        "values":{
          "shape":"SpanMessageValueList",
          "documentation":"<p>Message content values (text, tool use, tool result, reasoning)</p>"
        }
      },
      "documentation":"<p>A message in the conversation history with participant role and content values</p>"
    },
    "SpanMessageList":{
      "type":"list",
      "member":{"shape":"SpanMessage"},
      "max":50,
      "min":0
    },
    "SpanMessageValue":{
      "type":"structure",
      "members":{
        "text":{
          "shape":"SpanTextValue",
          "documentation":"<p>Text message content</p>"
        },
        "toolUse":{
          "shape":"SpanToolUseValue",
          "documentation":"<p>Tool invocation message content</p>"
        },
        "toolResult":{
          "shape":"SpanToolResultValue",
          "documentation":"<p>Tool result message content</p>"
        },
        "reasoning":{"shape":"SpanReasoningValue"}
      },
      "documentation":"<p>Message content value - can be text, tool invocation, tool result, or reasoning</p>",
      "union":true
    },
    "SpanMessageValueList":{
      "type":"list",
      "member":{"shape":"SpanMessageValue"},
      "max":10,
      "min":1
    },
    "SpanOriginRequestIdString":{
      "type":"string",
      "max":256,
      "min":1
    },
    "SpanReasoningValue":{
      "type":"structure",
      "required":["value"],
      "members":{
        "value":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The reasoning text content</p>"
        }
      },
      "documentation":"<p>Model reasoning and it's internal decision making process</p>"
    },
    "SpanStatus":{
      "type":"string",
      "enum":[
        "OK",
        "ERROR",
        "TIMEOUT"
      ]
    },
    "SpanStatusDescriptionString":{
      "type":"string",
      "max":1024,
      "min":1
    },
    "SpanTextValue":{
      "type":"structure",
      "required":["value"],
      "members":{
        "value":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>String content of the message text</p>"
        },
        "citations":{
          "shape":"SpanCitationList",
          "documentation":"<p>The citations associated with the span text.</p>"
        },
        "aiGuardrailAssessment":{
          "shape":"AIGuardrailAssessment",
          "documentation":"<p>The AI Guardrail assessment for the span text.</p>"
        }
      },
      "documentation":"<p>Text message content</p>"
    },
    "SpanToolResultValue":{
      "type":"structure",
      "required":[
        "toolUseId",
        "values"
      ],
      "members":{
        "toolUseId":{
          "shape":"Uuid",
          "documentation":"<p>Relates this result back to the tool invocation</p>"
        },
        "values":{
          "shape":"SpanMessageValueList",
          "documentation":"<p>The tool results</p>"
        },
        "error":{
          "shape":"NonEmptyString",
          "documentation":"<p>The tool invocation error if failed</p>"
        }
      },
      "documentation":"<p>Tool result message content</p>"
    },
    "SpanToolUseValue":{
      "type":"structure",
      "required":[
        "toolUseId",
        "name",
        "arguments"
      ],
      "members":{
        "toolUseId":{
          "shape":"Uuid",
          "documentation":"<p>Unique ID for this tool invocation</p>"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The tool name</p>"
        },
        "arguments":{
          "shape":"JSONDocument",
          "documentation":"<p>The tool input arguments</p>"
        }
      },
      "documentation":"<p>Tool invocation message content</p>"
    },
    "SpanType":{
      "type":"string",
      "enum":[
        "CLIENT",
        "SERVER",
        "INTERNAL"
      ]
    },
    "StartContentUploadRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentType"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentType":{
          "shape":"ContentType",
          "documentation":"<p>The type of content to upload.</p>"
        },
        "presignedUrlTimeToLive":{
          "shape":"TimeToLive",
          "documentation":"<p>The expected expiration time of the generated presigned URL, specified in minutes.</p>"
        }
      }
    },
    "StartContentUploadResponse":{
      "type":"structure",
      "required":[
        "uploadId",
        "url",
        "urlExpiry",
        "headersToInclude"
      ],
      "members":{
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>The identifier of the upload.</p>"
        },
        "url":{
          "shape":"Url",
          "documentation":"<p>The URL of the upload.</p>"
        },
        "urlExpiry":{
          "shape":"SyntheticTimestamp_epoch_seconds",
          "documentation":"<p>The expiration time of the URL as an epoch timestamp.</p>"
        },
        "headersToInclude":{
          "shape":"Headers",
          "documentation":"<p>The headers to include in the upload.</p>"
        }
      }
    },
    "StartImportJobRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "importJobType",
        "uploadId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p> <ul> <li> <p>For importing Amazon Q in Connect quick responses, this should be a <code>QUICK_RESPONSES</code> type knowledge base.</p> </li> </ul>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "importJobType":{
          "shape":"ImportJobType",
          "documentation":"<p>The type of the import job.</p> <ul> <li> <p>For importing quick response resource, set the value to <code>QUICK_RESPONSES</code>.</p> </li> </ul>"
        },
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>A pointer to the uploaded asset. This value is returned by <a href=\"https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a>.</p>"
        },
        "clientToken":{
          "shape":"NonEmptyString",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>",
          "idempotencyToken":true
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>The metadata fields of the imported Amazon Q in Connect resources.</p>"
        },
        "externalSourceConfiguration":{
          "shape":"ExternalSourceConfiguration",
          "documentation":"<p>The configuration information of the external source that the resource data are imported from.</p>"
        }
      }
    },
    "StartImportJobResponse":{
      "type":"structure",
      "members":{
        "importJob":{
          "shape":"ImportJobData",
          "documentation":"<p>The import job.</p>"
        }
      }
    },
    "Status":{
      "type":"string",
      "enum":[
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED",
        "DELETED"
      ]
    },
    "String":{"type":"string"},
    "SuggestedMessageDataDetails":{
      "type":"structure",
      "required":["messageText"],
      "members":{
        "messageText":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The text content of the suggested message.</p>"
        }
      },
      "documentation":"<p>Details about suggested message data.</p>"
    },
    "SuggestedMessageReference":{
      "type":"structure",
      "required":[
        "aiAgentId",
        "aiAgentArn"
      ],
      "members":{
        "aiAgentId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the AI Agent that generated the suggested message.</p>"
        },
        "aiAgentArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AI Agent that generated the suggested message.</p>"
        }
      },
      "documentation":"<p>Reference information for a suggested message.</p>"
    },
    "SuggestedMessagesList":{
      "type":"list",
      "member":{"shape":"NonEmptySensitiveString"}
    },
    "SyncStatus":{
      "type":"string",
      "enum":[
        "SYNC_FAILED",
        "SYNCING_IN_PROGRESS",
        "SYNC_SUCCESS",
        "CREATE_IN_PROGRESS"
      ]
    },
    "SyntheticTimestamp_date_time":{
      "type":"timestamp",
      "timestampFormat":"iso8601"
    },
    "SyntheticTimestamp_epoch_seconds":{
      "type":"timestamp",
      "timestampFormat":"unixTimestamp"
    },
    "SystemAttributes":{
      "type":"structure",
      "members":{
        "name":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The name of the task.</p>"
        },
        "customerEndpoint":{
          "shape":"SystemEndpointAttributes",
          "documentation":"<p>The CustomerEndpoint attribute.</p>"
        },
        "systemEndpoint":{
          "shape":"SystemEndpointAttributes",
          "documentation":"<p>The SystemEndpoint attribute.</p>"
        }
      },
      "documentation":"<p>The system attributes that are used with the message template.</p>"
    },
    "SystemEndpointAttributes":{
      "type":"structure",
      "members":{
        "address":{
          "shape":"MessageTemplateAttributeValue",
          "documentation":"<p>The customer's phone number if used with <code>customerEndpoint</code>, or the number the customer dialed to call your contact center if used with <code>systemEndpoint</code>.</p>"
        }
      },
      "documentation":"<p>The system endpoint attributes that are used with the message template.</p>"
    },
    "TagCondition":{
      "type":"structure",
      "required":["key"],
      "members":{
        "key":{
          "shape":"TagKey",
          "documentation":"<p>The tag key in the tag condition.</p>"
        },
        "value":{
          "shape":"TagValue",
          "documentation":"<p>The tag value in the tag condition.</p>"
        }
      },
      "documentation":"<p>A leaf node condition which can be used to specify a tag condition. </p>"
    },
    "TagFilter":{
      "type":"structure",
      "members":{
        "tagCondition":{
          "shape":"TagCondition",
          "documentation":"<p>A leaf node condition which can be used to specify a tag condition.</p>"
        },
        "andConditions":{
          "shape":"AndConditions",
          "documentation":"<p>A list of conditions which would be applied together with an <code>AND</code> condition.</p>"
        },
        "orConditions":{
          "shape":"OrConditions",
          "documentation":"<p>A list of conditions which would be applied together with an <code>OR</code> condition.</p>"
        }
      },
      "documentation":"<p>An object that can be used to specify Tag conditions.</p>",
      "union":true
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"(?!aws:)[a-zA-Z+-=._:/]+"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":50,
      "min":1
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tags"
      ],
      "members":{
        "resourceArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>The tags used to organize, track, or control access for this resource.</p>"
        }
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{}
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":1
    },
    "Tags":{
      "type":"map",
      "key":{"shape":"TagKey"},
      "value":{"shape":"TagValue"}
    },
    "TargetType":{
      "type":"string",
      "enum":[
        "RECOMMENDATION",
        "RESULT",
        "MESSAGE"
      ]
    },
    "TextAIPrompt":{
      "type":"string",
      "max":1000000,
      "min":1,
      "sensitive":true
    },
    "TextData":{
      "type":"structure",
      "members":{
        "title":{"shape":"DocumentText"},
        "excerpt":{"shape":"DocumentText"}
      },
      "documentation":"<p>Details about the source content text data.</p>"
    },
    "TextFullAIPromptEditTemplateConfiguration":{
      "type":"structure",
      "required":["text"],
      "members":{
        "text":{
          "shape":"TextAIPrompt",
          "documentation":"<p>The YAML text for the AI Prompt template.</p>"
        }
      },
      "documentation":"<p>The configuration for a prompt template that supports full textual prompt configuration using a YAML prompt.</p>"
    },
    "TextMessage":{
      "type":"structure",
      "members":{
        "value":{
          "shape":"TextMessageValueString",
          "documentation":"<p>The value of the message data in text type.</p>"
        },
        "citations":{
          "shape":"Citations",
          "documentation":"<p>The citations associated with the text message.</p>"
        },
        "aiGuardrailAssessment":{
          "shape":"AIGuardrailAssessment",
          "documentation":"<p>The AI Guardrail assessment for the text message.</p>"
        }
      },
      "documentation":"<p>The message data in text type.</p>"
    },
    "TextMessageValueString":{
      "type":"string",
      "max":25000,
      "min":0,
      "sensitive":true
    },
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The throttling limit has been exceeded.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true,
      "retryable":{"throttling":false}
    },
    "TimeToLive":{
      "type":"integer",
      "documentation":"<p>Expiration time in minutes</p>",
      "box":true,
      "max":60,
      "min":1
    },
    "Timestamp":{"type":"timestamp"},
    "TooManyTagsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "resourceName":{
          "shape":"String",
          "documentation":"<p>The specified resource name.</p>"
        }
      },
      "documentation":"<p>Amazon Q in Connect throws this exception if you have too many tags in your tag set.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "ToolConfiguration":{
      "type":"structure",
      "required":[
        "toolName",
        "toolType"
      ],
      "members":{
        "toolName":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the tool.</p>"
        },
        "toolType":{
          "shape":"ToolType",
          "documentation":"<p>The type of the tool.</p>"
        },
        "title":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The title of the tool configuration.</p>"
        },
        "toolId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The identifier of the tool, for example toolName from Model Context Provider server.</p>"
        },
        "description":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The description of the tool configuration.</p>"
        },
        "instruction":{
          "shape":"ToolInstruction",
          "documentation":"<p>Instructions for using the tool.</p>"
        },
        "overrideInputValues":{
          "shape":"ToolOverrideInputValueList",
          "documentation":"<p>Override input values for the tool configuration.</p>"
        },
        "outputFilters":{
          "shape":"ToolOutputFilterList",
          "documentation":"<p>Output filters applies to the tool result.</p>"
        },
        "inputSchema":{
          "shape":"JSONDocument",
          "documentation":"<p>The input schema for the tool configuration.</p>"
        },
        "outputSchema":{
          "shape":"JSONDocument",
          "documentation":"<p>The output schema for the tool configuration.</p>"
        },
        "annotations":{
          "shape":"Annotation",
          "documentation":"<p>Annotations for the tool configuration.</p>"
        },
        "userInteractionConfiguration":{
          "shape":"UserInteractionConfiguration",
          "documentation":"<p>Configuration for user interaction with the tool.</p>"
        }
      },
      "documentation":"<p>Configuration settings for a tool used by AI Agents.</p>"
    },
    "ToolConfigurationList":{
      "type":"list",
      "member":{"shape":"ToolConfiguration"}
    },
    "ToolExampleList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "ToolInstruction":{
      "type":"structure",
      "members":{
        "instruction":{
          "shape":"String",
          "documentation":"<p>The instruction text for the tool.</p>"
        },
        "examples":{
          "shape":"ToolExampleList",
          "documentation":"<p>Examples for using the tool.</p>"
        }
      },
      "documentation":"<p>Instructions for using a tool.</p>",
      "sensitive":true
    },
    "ToolOutputConfiguration":{
      "type":"structure",
      "members":{
        "outputVariableNameOverride":{
          "shape":"NonEmptyString",
          "documentation":"<p>Override the tool output results to different variable name.</p>"
        },
        "sessionDataNamespace":{
          "shape":"NonEmptyString",
          "documentation":"<p>The session data namespace for tool output.</p>"
        }
      },
      "documentation":"<p>Configuration for tool output handling.</p>"
    },
    "ToolOutputFilter":{
      "type":"structure",
      "required":["jsonPath"],
      "members":{
        "jsonPath":{
          "shape":"NonEmptyString",
          "documentation":"<p>The JSON path for filtering tool output.</p>"
        },
        "outputConfiguration":{
          "shape":"ToolOutputConfiguration",
          "documentation":"<p>The output configuration for the filter.</p>"
        }
      },
      "documentation":"<p>Filter configuration for tool output.</p>"
    },
    "ToolOutputFilterList":{
      "type":"list",
      "member":{"shape":"ToolOutputFilter"},
      "sensitive":true
    },
    "ToolOverrideConstantInputValue":{
      "type":"structure",
      "required":[
        "type",
        "value"
      ],
      "members":{
        "type":{
          "shape":"ToolOverrideInputValueType",
          "documentation":"<p>Override tool input value with constant values</p>"
        },
        "value":{
          "shape":"NonEmptySensitiveString",
          "documentation":"<p>The constant input override value.</p>"
        }
      },
      "documentation":"<p>A constant input value for tool override.</p>"
    },
    "ToolOverrideInputValue":{
      "type":"structure",
      "required":[
        "jsonPath",
        "value"
      ],
      "members":{
        "jsonPath":{
          "shape":"NonEmptyString",
          "documentation":"<p>The JSON path for the input value override.</p>"
        },
        "value":{
          "shape":"ToolOverrideInputValueConfiguration",
          "documentation":"<p>The override input value.</p>"
        }
      },
      "documentation":"<p>An input value override for tools.</p>"
    },
    "ToolOverrideInputValueConfiguration":{
      "type":"structure",
      "members":{
        "constant":{
          "shape":"ToolOverrideConstantInputValue",
          "documentation":"<p>Constant input value configuration for tool override.</p>"
        }
      },
      "documentation":"<p>Configuration for overriding tool input values.</p>",
      "union":true
    },
    "ToolOverrideInputValueList":{
      "type":"list",
      "member":{"shape":"ToolOverrideInputValue"},
      "sensitive":true
    },
    "ToolOverrideInputValueType":{
      "type":"string",
      "enum":[
        "STRING",
        "NUMBER",
        "JSON_STRING"
      ]
    },
    "ToolType":{
      "type":"string",
      "enum":[
        "MODEL_CONTEXT_PROTOCOL",
        "RETURN_TO_CONTROL",
        "CONSTANT"
      ]
    },
    "ToolUseResultData":{
      "type":"structure",
      "required":[
        "toolUseId",
        "toolName",
        "toolResult"
      ],
      "members":{
        "toolUseId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The identifier of the tool use instance.</p>"
        },
        "toolName":{
          "shape":"NonEmptyString",
          "documentation":"<p>The name of the tool that was used.</p>"
        },
        "toolResult":{
          "shape":"JSONDocument",
          "documentation":"<p>The result of the tool usage.</p>"
        },
        "inputSchema":{
          "shape":"JSONDocument",
          "documentation":"<p>The input schema for the tool use result.</p>"
        }
      },
      "documentation":"<p>Data about the result of tool usage.</p>"
    },
    "TopK":{
      "type":"integer",
      "box":true,
      "max":200,
      "min":0,
      "sensitive":true
    },
    "UnauthorizedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>You do not have permission to perform this action.</p>",
      "error":{
        "httpStatusCode":401,
        "senderFault":true
      },
      "exception":true
    },
    "UnprocessableContentException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The server has a failure of processing the message</p>",
      "error":{
        "httpStatusCode":422,
        "senderFault":true
      },
      "exception":true
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tagKeys"
      ],
      "members":{
        "resourceArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tagKeys":{
          "shape":"TagKeyList",
          "documentation":"<p>The tag keys.</p>",
          "location":"querystring",
          "locationName":"tagKeys"
        }
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{}
    },
    "UpdateAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentId",
        "visibilityStatus"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Agent.</p>",
          "location":"uri",
          "locationName":"aiAgentId"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visbility status of the Amazon Q in Connect AI Agent.</p>"
        },
        "configuration":{
          "shape":"AIAgentConfiguration",
          "documentation":"<p>The configuration of the Amazon Q in Connect AI Agent.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the Amazon Q in Connect AI Agent.</p>"
        }
      }
    },
    "UpdateAIAgentResponse":{
      "type":"structure",
      "members":{
        "aiAgent":{
          "shape":"AIAgentData",
          "documentation":"<p>The data of the updated Amazon Q in Connect AI Agent.</p>"
        }
      }
    },
    "UpdateAIGuardrailRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiGuardrailId",
        "visibilityStatus",
        "blockedInputMessaging",
        "blockedOutputsMessaging"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiGuardrailId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Guardrail.</p>",
          "location":"uri",
          "locationName":"aiGuardrailId"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the Amazon Q in Connect AI Guardrail.</p>"
        },
        "blockedInputMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a prompt.</p>"
        },
        "blockedOutputsMessaging":{
          "shape":"AIGuardrailBlockedMessaging",
          "documentation":"<p>The message to return when the AI Guardrail blocks a model response.</p>"
        },
        "description":{
          "shape":"AIGuardrailDescription",
          "documentation":"<p>A description of the AI Guardrail.</p>"
        },
        "topicPolicyConfig":{
          "shape":"AIGuardrailTopicPolicyConfig",
          "documentation":"<p>The topic policies to configure for the AI Guardrail.</p>"
        },
        "contentPolicyConfig":{
          "shape":"AIGuardrailContentPolicyConfig",
          "documentation":"<p>The content filter policies to configure for the AI Guardrail.</p>"
        },
        "wordPolicyConfig":{
          "shape":"AIGuardrailWordPolicyConfig",
          "documentation":"<p>The word policy you configure for the AI Guardrail.</p>"
        },
        "sensitiveInformationPolicyConfig":{
          "shape":"AIGuardrailSensitiveInformationPolicyConfig",
          "documentation":"<p>The sensitive information policy to configure for the AI Guardrail.</p>"
        },
        "contextualGroundingPolicyConfig":{
          "shape":"AIGuardrailContextualGroundingPolicyConfig",
          "documentation":"<p>The contextual grounding policy configuration used to create an AI Guardrail.</p>"
        }
      }
    },
    "UpdateAIGuardrailResponse":{
      "type":"structure",
      "members":{
        "aiGuardrail":{
          "shape":"AIGuardrailData",
          "documentation":"<p>The data of the updated Amazon Q in Connect AI Guardrail.</p>"
        }
      }
    },
    "UpdateAIPromptRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiPromptId",
        "visibilityStatus"
      ],
      "members":{
        "clientToken":{
          "shape":"ClientToken",
          "documentation":"<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href=\"http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/\">Making retries safe with idempotent APIs</a>..</p>",
          "idempotencyToken":true
        },
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiPromptId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the Amazon Q in Connect AI Prompt.</p>",
          "location":"uri",
          "locationName":"aiPromptId"
        },
        "visibilityStatus":{
          "shape":"VisibilityStatus",
          "documentation":"<p>The visibility status of the Amazon Q in Connect AI prompt.</p>"
        },
        "templateConfiguration":{
          "shape":"AIPromptTemplateConfiguration",
          "documentation":"<p>The configuration of the prompt template for this AI Prompt.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the Amazon Q in Connect AI Prompt.</p>"
        },
        "modelId":{
          "shape":"AIPromptModelIdentifier",
          "documentation":"<p>The identifier of the model used for this AI Prompt.</p> <note> <p>For information about which models are supported in each Amazon Web Services Region, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/create-ai-prompts.html#cli-create-aiprompt\">Supported models for system/custom prompts</a>.</p> </note>"
        },
        "inferenceConfiguration":{
          "shape":"AIPromptInferenceConfiguration",
          "documentation":"<p>The updated inference configuration for the AI Prompt.</p>"
        }
      }
    },
    "UpdateAIPromptResponse":{
      "type":"structure",
      "members":{
        "aiPrompt":{
          "shape":"AIPromptData",
          "documentation":"<p>The data of the updated Amazon Q in Connect AI Prompt.</p>"
        }
      }
    },
    "UpdateAssistantAIAgentRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "aiAgentType",
        "configuration"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "aiAgentType":{
          "shape":"AIAgentType",
          "documentation":"<p>The type of the AI Agent being updated for use by default on the Amazon Q in Connect Assistant.</p>"
        },
        "configuration":{
          "shape":"AIAgentConfigurationData",
          "documentation":"<p>The configuration of the AI Agent being updated for use by default on the Amazon Q in Connect Assistant.</p>"
        },
        "orchestratorUseCase":{
          "shape":"NonEmptyString",
          "documentation":"<p>The orchestrator use case for the AI Agent being added.</p>"
        }
      }
    },
    "UpdateAssistantAIAgentResponse":{
      "type":"structure",
      "members":{
        "assistant":{"shape":"AssistantData"}
      }
    },
    "UpdateContentRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "contentId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "contentId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"contentId"
        },
        "revisionId":{
          "shape":"NonEmptyString",
          "documentation":"<p>The <code>revisionId</code> of the content resource to update, taken from an earlier call to <code>GetContent</code>, <code>GetContentSummary</code>, <code>SearchContent</code>, or <code>ListContents</code>. If included, this argument acts as an optimistic lock to ensure content was not modified since it was last read. If it has been modified, this API throws a <code>PreconditionFailedException</code>.</p>"
        },
        "title":{
          "shape":"ContentTitle",
          "documentation":"<p>The title of the content.</p>"
        },
        "overrideLinkOutUri":{
          "shape":"Uri",
          "documentation":"<p>The URI for the article. If the knowledge base has a templateUri, setting this argument overrides it for this piece of content. To remove an existing <code>overrideLinkOurUri</code>, exclude this argument and set <code>removeOverrideLinkOutUri</code> to true.</p>"
        },
        "removeOverrideLinkOutUri":{
          "shape":"Boolean",
          "documentation":"<p>Unset the existing <code>overrideLinkOutUri</code> if it exists.</p>"
        },
        "metadata":{
          "shape":"ContentMetadata",
          "documentation":"<p>A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q in Connect, you can store an external version identifier as metadata to utilize for determining drift.</p>"
        },
        "uploadId":{
          "shape":"UploadId",
          "documentation":"<p>A pointer to the uploaded asset. This value is returned by <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a>. </p>"
        }
      }
    },
    "UpdateContentResponse":{
      "type":"structure",
      "members":{
        "content":{
          "shape":"ContentData",
          "documentation":"<p>The content.</p>"
        }
      }
    },
    "UpdateKnowledgeBaseTemplateUriRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "templateUri"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "templateUri":{
          "shape":"Uri",
          "documentation":"<p>The template URI to update.</p>"
        }
      }
    },
    "UpdateKnowledgeBaseTemplateUriResponse":{
      "type":"structure",
      "members":{
        "knowledgeBase":{
          "shape":"KnowledgeBaseData",
          "documentation":"<p>The knowledge base to update.</p>"
        }
      }
    },
    "UpdateMessageTemplateMetadataRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "name":{
          "shape":"Name",
          "documentation":"<p>The name of the message template.</p>"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description of the message template.</p>"
        },
        "groupingConfiguration":{"shape":"GroupingConfiguration"}
      }
    },
    "UpdateMessageTemplateMetadataResponse":{
      "type":"structure",
      "members":{
        "messageTemplate":{
          "shape":"MessageTemplateData",
          "documentation":"<p>The message template.</p>"
        }
      }
    },
    "UpdateMessageTemplateRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "messageTemplateId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "messageTemplateId":{
          "shape":"UuidOrArnOrEitherWithQualifier",
          "documentation":"<p>The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.</p>",
          "location":"uri",
          "locationName":"messageTemplateId"
        },
        "content":{
          "shape":"MessageTemplateContentProvider",
          "documentation":"<p>The content of the message template.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        },
        "sourceConfiguration":{
          "shape":"MessageTemplateSourceConfiguration",
          "documentation":"<p>The source configuration of the message template. Only set this argument for WHATSAPP channel subtype.</p>"
        },
        "defaultAttributes":{
          "shape":"MessageTemplateAttributes",
          "documentation":"<p>An object that specifies the default values to use for variables in the message template. This object contains different categories of key-value pairs. Each key defines a variable or placeholder in the message template. The corresponding value defines the default value for that variable.</p>"
        }
      }
    },
    "UpdateMessageTemplateResponse":{
      "type":"structure",
      "members":{
        "messageTemplate":{
          "shape":"MessageTemplateData",
          "documentation":"<p>The message template.</p>"
        }
      }
    },
    "UpdateQuickResponseRequest":{
      "type":"structure",
      "required":[
        "knowledgeBaseId",
        "quickResponseId"
      ],
      "members":{
        "knowledgeBaseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"knowledgeBaseId"
        },
        "quickResponseId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the quick response.</p>",
          "location":"uri",
          "locationName":"quickResponseId"
        },
        "name":{
          "shape":"QuickResponseName",
          "documentation":"<p>The name of the quick response.</p>"
        },
        "content":{
          "shape":"QuickResponseDataProvider",
          "documentation":"<p>The updated content of the quick response.</p>"
        },
        "contentType":{
          "shape":"QuickResponseType",
          "documentation":"<p>The media type of the quick response content.</p> <ul> <li> <p>Use <code>application/x.quickresponse;format=plain</code> for quick response written in plain text.</p> </li> <li> <p>Use <code>application/x.quickresponse;format=markdown</code> for quick response written in richtext.</p> </li> </ul>"
        },
        "groupingConfiguration":{
          "shape":"GroupingConfiguration",
          "documentation":"<p>The updated grouping configuration of the quick response.</p>"
        },
        "removeGroupingConfiguration":{
          "shape":"Boolean",
          "documentation":"<p>Whether to remove the grouping configuration of the quick response.</p>"
        },
        "description":{
          "shape":"QuickResponseDescription",
          "documentation":"<p>The updated description of the quick response.</p>"
        },
        "removeDescription":{
          "shape":"Boolean",
          "documentation":"<p>Whether to remove the description from the quick response.</p>"
        },
        "shortcutKey":{
          "shape":"ShortCutKey",
          "documentation":"<p>The shortcut key of the quick response. The value should be unique across the knowledge base.</p>"
        },
        "removeShortcutKey":{
          "shape":"Boolean",
          "documentation":"<p>Whether to remove the shortcut key of the quick response.</p>"
        },
        "isActive":{
          "shape":"Boolean",
          "documentation":"<p>Whether the quick response is active. </p>"
        },
        "channels":{
          "shape":"Channels",
          "documentation":"<p>The Amazon Connect contact channels this quick response applies to. The supported contact channel types include <code>Chat</code>.</p>"
        },
        "language":{
          "shape":"LanguageCode",
          "documentation":"<p>The language code value for the language in which the quick response is written. The supported language codes include <code>de_DE</code>, <code>en_US</code>, <code>es_ES</code>, <code>fr_FR</code>, <code>id_ID</code>, <code>it_IT</code>, <code>ja_JP</code>, <code>ko_KR</code>, <code>pt_BR</code>, <code>zh_CN</code>, <code>zh_TW</code> </p>"
        }
      }
    },
    "UpdateQuickResponseResponse":{
      "type":"structure",
      "members":{
        "quickResponse":{
          "shape":"QuickResponseData",
          "documentation":"<p>The quick response.</p>"
        }
      }
    },
    "UpdateSessionDataRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId",
        "data"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "namespace":{
          "shape":"SessionDataNamespace",
          "documentation":"<p>The namespace into which the session data is stored. Supported namespaces are: Custom</p>"
        },
        "data":{
          "shape":"RuntimeSessionDataList",
          "documentation":"<p>The data stored on the Amazon Q in Connect Session.</p>"
        }
      }
    },
    "UpdateSessionDataResponse":{
      "type":"structure",
      "required":[
        "sessionArn",
        "sessionId",
        "namespace",
        "data"
      ],
      "members":{
        "sessionArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the session.</p>"
        },
        "sessionId":{
          "shape":"Uuid",
          "documentation":"<p>The identifier of the session.</p>"
        },
        "namespace":{
          "shape":"SessionDataNamespace",
          "documentation":"<p>The namespace into which the session data is stored. Supported namespaces are: Custom</p>"
        },
        "data":{
          "shape":"RuntimeSessionDataList",
          "documentation":"<p>Data stored in the session.</p>"
        }
      }
    },
    "UpdateSessionRequest":{
      "type":"structure",
      "required":[
        "assistantId",
        "sessionId"
      ],
      "members":{
        "assistantId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"assistantId"
        },
        "sessionId":{
          "shape":"UuidOrArn",
          "documentation":"<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>",
          "location":"uri",
          "locationName":"sessionId"
        },
        "description":{
          "shape":"Description",
          "documentation":"<p>The description.</p>"
        },
        "tagFilter":{
          "shape":"TagFilter",
          "documentation":"<p>An object that can be used to specify Tag conditions.</p>"
        },
        "aiAgentConfiguration":{
          "shape":"AIAgentConfigurationMap",
          "documentation":"<p>The configuration of the AI Agents (mapped by AI Agent Type to AI Agent version) that should be used by Amazon Q in Connect for this Session.</p>"
        },
        "orchestratorConfigurationList":{
          "shape":"OrchestratorConfigurationList",
          "documentation":"<p>The updated list of orchestrator configurations for the session.</p>"
        },
        "removeOrchestratorConfigurationList":{
          "shape":"Boolean",
          "documentation":"<p>The list of orchestrator configurations to remove from the session.</p>"
        }
      }
    },
    "UpdateSessionResponse":{
      "type":"structure",
      "members":{
        "session":{"shape":"SessionData"}
      }
    },
    "UploadId":{
      "type":"string",
      "max":1200,
      "min":1
    },
    "Uri":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "Url":{
      "type":"string",
      "max":4096,
      "min":1,
      "sensitive":true
    },
    "UrlConfiguration":{
      "type":"structure",
      "members":{
        "seedUrls":{
          "shape":"SeedUrls",
          "documentation":"<p>List of URLs for crawling.</p>"
        }
      },
      "documentation":"<p>The configuration of the URL/URLs for the web content that you want to crawl. You should be authorized to crawl the URLs.</p>"
    },
    "UrlFilterList":{
      "type":"list",
      "member":{"shape":"UrlFilterPattern"},
      "max":25,
      "min":1,
      "sensitive":true
    },
    "UrlFilterPattern":{
      "type":"string",
      "max":1000,
      "min":1,
      "sensitive":true
    },
    "UserInteractionConfiguration":{
      "type":"structure",
      "members":{
        "isUserConfirmationRequired":{
          "shape":"Boolean",
          "documentation":"<p>Indicates whether user confirmation is required for the interaction.</p>"
        }
      },
      "documentation":"<p>Configuration for user interaction settings.</p>"
    },
    "Uuid":{
      "type":"string",
      "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"
    },
    "UuidOrArn":{
      "type":"string",
      "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$|^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}"
    },
    "UuidOrArnOrEitherWithQualifier":{
      "type":"string",
      "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$|^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}(:[A-Z0-9_$]+){0,1}"
    },
    "UuidWithQualifier":{
      "type":"string",
      "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}"
    },
    "ValidationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The input fails to satisfy the constraints specified by a service.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "VectorIngestionConfiguration":{
      "type":"structure",
      "members":{
        "chunkingConfiguration":{
          "shape":"ChunkingConfiguration",
          "documentation":"<p>Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.</p>"
        },
        "parsingConfiguration":{
          "shape":"ParsingConfiguration",
          "documentation":"<p>A custom parser for data source documents.</p>"
        }
      },
      "documentation":"<p>Contains details about how to ingest the documents in a data source.</p>"
    },
    "Version":{
      "type":"long",
      "box":true,
      "min":1
    },
    "VisibilityStatus":{
      "type":"string",
      "enum":[
        "SAVED",
        "PUBLISHED"
      ]
    },
    "WaitTimeSeconds":{
      "type":"integer",
      "max":20,
      "min":0
    },
    "WebCrawlerConfiguration":{
      "type":"structure",
      "required":["urlConfiguration"],
      "members":{
        "urlConfiguration":{
          "shape":"UrlConfiguration",
          "documentation":"<p>The configuration of the URL/URLs for the web content that you want to crawl. You should be authorized to crawl the URLs.</p>"
        },
        "crawlerLimits":{
          "shape":"WebCrawlerLimits",
          "documentation":"<p>The configuration of crawl limits for the web URLs.</p>"
        },
        "inclusionFilters":{
          "shape":"UrlFilterList",
          "documentation":"<p>A list of one or more inclusion regular expression patterns to include certain URLs. If you specify an inclusion and exclusion filter/pattern and both match a URL, the exclusion filter takes precedence and the web content of the URL isn’t crawled.</p>"
        },
        "exclusionFilters":{
          "shape":"UrlFilterList",
          "documentation":"<p>A list of one or more exclusion regular expression patterns to exclude certain URLs. If you specify an inclusion and exclusion filter/pattern and both match a URL, the exclusion filter takes precedence and the web content of the URL isn’t crawled.</p>"
        },
        "scope":{
          "shape":"WebScopeType",
          "documentation":"<p>The scope of what is crawled for your URLs. You can choose to crawl only web pages that belong to the same host or primary domain. For example, only web pages that contain the seed URL <code>https://docs.aws.amazon.com/bedrock/latest/userguide/</code> and no other domains. You can choose to include sub domains in addition to the host or primary domain. For example, web pages that contain <code>aws.amazon.com</code> can also include sub domain <code>docs.aws.amazon.com</code>.</p>"
        }
      },
      "documentation":"<p>The configuration details for the web data source.</p>"
    },
    "WebCrawlerLimits":{
      "type":"structure",
      "members":{
        "rateLimit":{
          "shape":"WebCrawlerLimitsRateLimitInteger",
          "documentation":"<p>Rate of web URLs retrieved per minute.</p>"
        }
      },
      "documentation":"<p>The configuration of crawl limits for the web URLs.</p>"
    },
    "WebCrawlerLimitsRateLimitInteger":{
      "type":"integer",
      "box":true,
      "max":300,
      "min":1
    },
    "WebScopeType":{
      "type":"string",
      "enum":[
        "HOST_ONLY",
        "SUBDOMAINS"
      ]
    },
    "WebUrl":{
      "type":"string",
      "pattern":"https?://[A-Za-z0-9][^\\s]*"
    },
    "WhatsAppBusinessAccountId":{
      "type":"string",
      "max":100,
      "min":1,
      "pattern":".*(^waba-[0-9a-zA-Z]+$)|(^arn:.*:waba/[0-9a-zA-Z]+$).*"
    },
    "WhatsAppMessageTemplateComponent":{
      "type":"string",
      "documentation":"<p>The component mapping from WhatsApp template parameters to Message Template attributes.</p>",
      "max":5000,
      "min":1
    },
    "WhatsAppMessageTemplateComponents":{
      "type":"list",
      "member":{"shape":"WhatsAppMessageTemplateComponent"}
    },
    "WhatsAppMessageTemplateContent":{
      "type":"structure",
      "members":{
        "data":{
          "shape":"WhatsAppMessageTemplateContentData",
          "documentation":"<p>The data.</p>"
        }
      },
      "documentation":"<p>The content of the message template that applies to the WHATSAPP channel subtype.</p>"
    },
    "WhatsAppMessageTemplateContentData":{
      "type":"string",
      "max":6000,
      "min":1
    },
    "WhatsAppMessageTemplateId":{
      "type":"string",
      "max":100,
      "min":1,
      "pattern":"[0-9]+"
    },
    "WhatsAppMessageTemplateLanguage":{
      "type":"string",
      "max":5,
      "min":1
    },
    "WhatsAppMessageTemplateName":{
      "type":"string",
      "max":512,
      "min":1
    },
    "WhatsAppMessageTemplateSourceConfiguration":{
      "type":"structure",
      "required":[
        "businessAccountId",
        "templateId"
      ],
      "members":{
        "businessAccountId":{
          "shape":"WhatsAppBusinessAccountId",
          "documentation":"<p>The ID of the End User Messaging WhatsApp Business Account to associate with this template.</p>"
        },
        "templateId":{
          "shape":"WhatsAppMessageTemplateId",
          "documentation":"<p>The WhatsApp template ID.</p>"
        },
        "components":{
          "shape":"WhatsAppMessageTemplateComponents",
          "documentation":"<p>The list of component mapping from WhatsApp template parameters to Message Template attributes.</p>"
        }
      },
      "documentation":"<p>Configuration information about the external data source.</p>"
    },
    "WhatsAppMessageTemplateSourceConfigurationSummary":{
      "type":"structure",
      "required":[
        "businessAccountId",
        "templateId"
      ],
      "members":{
        "businessAccountId":{
          "shape":"WhatsAppBusinessAccountId",
          "documentation":"<p>The ID of the End User Messaging WhatsApp Business Account to associate with this template.</p>"
        },
        "templateId":{
          "shape":"WhatsAppMessageTemplateId",
          "documentation":"<p>The ID of WhatsApp template.</p>"
        },
        "name":{
          "shape":"WhatsAppMessageTemplateName",
          "documentation":"<p>The name of the WhatsApp template.</p>"
        },
        "language":{
          "shape":"WhatsAppMessageTemplateLanguage",
          "documentation":"<p>The language of the WhatsApp template.</p>"
        },
        "components":{
          "shape":"WhatsAppMessageTemplateComponents",
          "documentation":"<p>The list of component mapping from WhatsApp template parameters to Message Template attributes.</p>"
        },
        "status":{
          "shape":"WhatsAppSourceConfigurationStatus",
          "documentation":"<p>The status of the message template.</p>"
        },
        "statusReason":{
          "shape":"NonEmptyUnlimitedString",
          "documentation":"<p>The status reason of the message template.</p>"
        }
      },
      "documentation":"<p>Configuration information about the external data source.</p>"
    },
    "WhatsAppSourceConfigurationStatus":{
      "type":"string",
      "enum":[
        "VALID",
        "INVALID",
        "REJECTED"
      ]
    }
  },
  "documentation":"<ul> <li> <p> <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_Operations_Amazon_Q_Connect.html\">Amazon Q actions</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_Types_Amazon_Q_Connect.html\">Amazon Q data types</a> </p> </li> </ul> <note> <p> <b>Powered by Amazon Bedrock</b>: Amazon Web Services implements <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html\">automated abuse detection</a>. Because Amazon Q in Connect is built on Amazon Bedrock, users can take full advantage of the controls implemented in Amazon Bedrock to enforce safety, security, and the responsible use of artificial intelligence (AI).</p> </note> <p>Amazon Q in Connect is a generative AI customer service assistant. It is an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time recommendations to help contact center agents resolve customer issues quickly and accurately.</p> <p>Amazon Q in Connect automatically detects customer intent during calls and chats using conversational analytics and natural language understanding (NLU). It then provides agents with immediate, real-time generative responses and suggested actions, and links to relevant documents and articles. Agents can also query Amazon Q in Connect directly using natural language or keywords to answer customer requests.</p> <p>Use the Amazon Q in Connect APIs to create an assistant and a knowledge base, for example, or manage content by uploading custom files.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/amazon-q-connect.html\">Use Amazon Q in Connect for generative AI powered agent assistance in real-time</a> in the <i>Amazon Connect Administrator Guide</i>.</p>"
}
