CreateExport
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.
- fileFormat
-
The file format of the bot or bot locale definition files.
Type: String
Valid Values:
LexJson | TSV | CSV
Required: Yes
- filePassword
-
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
- resourceSpecification
-
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.
- creationDateTime
-
The date and time that the request to export a bot was created.
Type: Timestamp
- exportId
-
An identifier for a specific request to create an export.
Type: String
Length Constraints: Fixed length of 10.
Pattern:
^[0-9a-zA-Z]+$
- exportStatus
-
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
- fileFormat
-
The file format used for the bot or bot locale definition files.
Type: String
Valid Values:
LexJson | TSV | CSV
- resourceSpecification
-
A description of the type of resource that was exported, either a bot or a bot locale.
Type: ExportResourceSpecification object
Errors
For information about the errors that are common to all actions, see Common Errors.
- ConflictException
-
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
- InternalServerException
-
The service encountered an unexpected condition. Try your request again.
HTTP Status Code: 500
- ResourceNotFoundException
-
You asked to describe a resource that doesn't exist. Check the resource that you are requesting and try again.
HTTP Status Code: 404
- ServiceQuotaExceededException
-
You have reached a quota for your bot.
HTTP Status Code: 402
- ThrottlingException
-
Your request rate is too high. Reduce the frequency of requests.
HTTP Status Code: 429
- ValidationException
-
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: