CreateMessageTemplateAttachment - Amazon Connect

CreateMessageTemplateAttachment

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 $LATEST 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.

Request Syntax

POST /knowledgeBases/knowledgeBaseId/messageTemplates/messageTemplateId/attachments HTTP/1.1 Content-type: application/json { "body": "string", "clientToken": "string", "contentDisposition": "string", "name": "string" }

URI Request Parameters

The request uses the following URI parameters.

knowledgeBaseId

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

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}$

Required: Yes

messageTemplateId

The identifier of the message template. Can be either the ID or the ARN. It cannot contain any qualifier.

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}$

Required: Yes

Request Body

The request accepts the following data in JSON format.

body

The body of the attachment file being uploaded. It should be encoded using base64 encoding.

Type: String

Length Constraints: Minimum length of 1.

Required: Yes

clientToken

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.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 4096.

Required: No

contentDisposition

The presentation information for the attachment file.

Type: String

Valid Values: ATTACHMENT

Required: Yes

name

The name of the attachment file being uploaded. The name should include the file extension.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: ^[\p{L}\p{M}\p{N}_\s&@()+,;=\-]+\.[A-Za-z0-9]+$

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "attachment": { "attachmentId": "string", "contentDisposition": "string", "name": "string", "uploadedTime": "string", "url": "string", "urlExpiry": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

attachment

The message template attachment.

Type: MessageTemplateAttachment object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403

ConflictException

The request could not be processed because of conflict in the current state of the resource. For example, if you're using a Create API (such as CreateAssistant) that accepts name, a conflicting resource (usually with the same name) is being created or mutated.

HTTP Status Code: 409

ResourceNotFoundException

The specified resource does not exist.

HTTP Status Code: 404

ServiceQuotaExceededException

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.

HTTP Status Code: 402

ThrottlingException

The throttling limit has been exceeded.

HTTP Status Code: 400

ValidationException

The input fails to satisfy the constraints specified by a service.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: