async def get_ai_agent(
self,
assistant_id: "capo_qconnect.types.uuid_or_arn.UuidOrArn",
ai_agent_id: "capo_qconnect.types.uuid_or_arn_or_either_with_qualifier.UuidOrArnOrEitherWithQualifier",
*,
config_overrides: Optional[AsyncQConnectClientConfig] = None,
) -> "capo_qconnect.types.get_ai_agent_response.GetAIAgentResponse":
"""<p>Gets an Amazon Q in Connect AI Agent.</p>
Args:
assistant_id: <p>The identifier of the Amazon Q in Connect assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>
ai_agent_id: <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>
Raises:
capo_qconnect.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
capo_qconnect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
capo_qconnect.errors.throttling_exception.ThrottlingException: <p>The throttling limit has been exceeded.</p>
capo_qconnect.errors.unauthorized_exception.UnauthorizedException: <p>You do not have permission to perform this action.</p>
capo_qconnect.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints specified by a service.</p>
capo_qconnect.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_qconnect.types.get_ai_agent_request.GetAIAgentRequest]",
) -> AsyncOperationResponse[
"capo_qconnect.types.get_ai_agent_response.GetAIAgentResponse"
]:
import capo_qconnect._operations.wisdom_service.get_ai_agent
(
output,
http_response,
) = await capo_qconnect._operations.wisdom_service.get_ai_agent.async_get_ai_agent(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
def _redact_output(
output: "capo_qconnect.types.get_ai_agent_response.GetAIAgentResponse",
) -> dict[str, Any]:
import capo_qconnect.types.get_ai_agent_response
return capo_qconnect.types.get_ai_agent_response.redact_sensitive(output)
interceptors_, options_ = self.operation_options(
config_overrides,
OperationLogging("GetAIAgent", redact_output=_redact_output),
)
input_: capo_qconnect.types.get_ai_agent_request.GetAIAgentRequest = {
"assistant_id": assistant_id,
"ai_agent_id": ai_agent_id,
}
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output