Amazon Quantum Ledger Database (Amazon QLDB)
Developer Guide

ExportJournalToS3

Exports journal contents within a date and time range from a ledger into a specified Amazon Simple Storage Service (Amazon S3) bucket. The data is written as files in Amazon Ion format.

If the ledger with the given Name doesn't exist, then throws ResourceNotFoundException.

If the ledger with the given Name is in CREATING status, then throws ResourcePreconditionNotMetException.

You can initiate up to two concurrent journal export requests for each ledger. Beyond this limit, journal export requests throw LimitExceededException.

Request Syntax

POST /ledgers/name/journal-s3-exports HTTP/1.1 Content-type: application/json { "ExclusiveEndTime": number, "InclusiveStartTime": number, "RoleArn": "string", "S3ExportConfiguration": { "Bucket": "string", "EncryptionConfiguration": { "KmsKeyArn": "string", "ObjectEncryptionType": "string" }, "Prefix": "string" } }

URI Request Parameters

The request requires the following URI parameters.

name

The name of the ledger.

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

Pattern: (?!^.*--)(?!^[0-9]+$)(?!^-)(?!.*-$)^[A-Za-z0-9-]+$

Request Body

The request accepts the following data in JSON format.

ExclusiveEndTime

The exclusive end date and time for the range of journal contents that you want to export.

The ExclusiveEndTime must be in ISO 8601 date and time format and in Universal Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z

The ExclusiveEndTime must be less than or equal to the current UTC date and time.

Type: Timestamp

Required: Yes

InclusiveStartTime

The inclusive start date and time for the range of journal contents that you want to export.

The InclusiveStartTime must be in ISO 8601 date and time format and in Universal Coordinated Time (UTC). For example: 2019-06-13T21:36:34Z

The InclusiveStartTime must be before ExclusiveEndTime.

If you provide an InclusiveStartTime that is before the ledger's CreationDateTime, Amazon QLDB defaults it to the ledger's CreationDateTime.

Type: Timestamp

Required: Yes

RoleArn

The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions for a journal export job to do the following:

  • Write objects into your Amazon Simple Storage Service (Amazon S3) bucket.

  • (Optional) Use your customer master key (CMK) in AWS Key Management Service (AWS KMS) for server-side encryption of your exported data.

Type: String

Length Constraints: Minimum length of 20. Maximum length of 1600.

Required: Yes

S3ExportConfiguration

The configuration settings of the Amazon S3 bucket destination for your export request.

Type: S3ExportConfiguration object

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "ExportId": "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.

ExportId

The unique ID that QLDB assigns to each journal export job.

To describe your export request and check the status of the job, you can use ExportId to call DescribeJournalS3Export.

Type: String

Length Constraints: Fixed length of 22.

Pattern: ^[A-Za-z-0-9]+$

Errors

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

ResourceNotFoundException

The specified resource doesn't exist.

HTTP Status Code: 404

ResourcePreconditionNotMetException

The operation failed because a condition wasn't satisfied in advance.

HTTP Status Code: 412

See Also

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