CreateExport - Amazon Lex API Reference


Creates a zip archive containing the contents of a bot or a bot locale. The archive contains a directory structure that contains JSON files that define the bot.

You can create an archive that contains the complete definition of a bot, or you can specify that the archive contain only the definition of a single bot locale.

For more information about exporting bots, and about the structure of the export archive, see Importing and exporting bots

Request Syntax

PUT /exports/ HTTP/1.1 Content-type: application/json { "fileFormat": "string", "filePassword": "string", "resourceSpecification": { "botExportSpecification": { "botId": "string", "botVersion": "string" }, "botLocaleExportSpecification": { "botId": "string", "botVersion": "string", "localeId": "string" }, "customVocabularyExportSpecification": { "botId": "string", "botVersion": "string", "localeId": "string" }, "testSetExportSpecification": { "testSetId": "string" } } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.


The file format of the bot or bot locale definition files.

Type: String

Valid Values: LexJson | TSV | CSV

Required: Yes


An password to use to encrypt the exported archive. Using a password is optional, but you should encrypt the archive to protect the data in transit between Amazon Lex and your local computer.

Type: String

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

Required: No


Specifies the type of resource to export, either a bot or a bot locale. You can only specify one type of resource to export.

Type: ExportResourceSpecification object

Required: Yes

Response Syntax

HTTP/1.1 202 Content-type: application/json { "creationDateTime": number, "exportId": "string", "exportStatus": "string", "fileFormat": "string", "resourceSpecification": { "botExportSpecification": { "botId": "string", "botVersion": "string" }, "botLocaleExportSpecification": { "botId": "string", "botVersion": "string", "localeId": "string" }, "customVocabularyExportSpecification": { "botId": "string", "botVersion": "string", "localeId": "string" }, "testSetExportSpecification": { "testSetId": "string" } } }

Response Elements

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

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


The date and time that the request to export a bot was created.

Type: Timestamp


An identifier for a specific request to create an export.

Type: String

Length Constraints: Fixed length of 10.

Pattern: ^[0-9a-zA-Z]+$


The status of the export. When the status is Completed, you can use the DescribeExport operation to get the pre-signed S3 URL link to your exported bot or bot locale.

Type: String

Valid Values: InProgress | Completed | Failed | Deleting


The file format used for the bot or bot locale definition files.

Type: String

Valid Values: LexJson | TSV | CSV


A description of the type of resource that was exported, either a bot or a bot locale.

Type: ExportResourceSpecification object


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


The action that you tried to perform couldn't be completed because the resource is in a conflicting state. For example, deleting a bot that is in the CREATING state. Try your request again.

HTTP Status Code: 409


The service encountered an unexpected condition. Try your request again.

HTTP Status Code: 500


You asked to describe a resource that doesn't exist. Check the resource that you are requesting and try again.

HTTP Status Code: 404


You have reached a quota for your bot.

HTTP Status Code: 402


Your request rate is too high. Reduce the frequency of requests.

HTTP Status Code: 429


One of the input parameters in your request isn't valid. Check the parameters and try your request again.

HTTP Status Code: 400

See Also

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