@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon DynamoDB
@version 2012-08-10
@auth AWS SigV4
@endpoints 57
@hint download_for_search
@toc root(57)

@endpoint POST /
@required {Statements: [BatchStatementRequest]}
@optional {ReturnConsumedCapacity: str}
@returns(200) {Responses: [BatchStatementResponse]?, ConsumedCapacity: [ConsumedCapacity]?}

@endpoint POST /
@required {RequestItems: map<str,KeysAndAttributes>}
@optional {ReturnConsumedCapacity: str}
@returns(200) {Responses: map<str,[map<str,AttributeValue>]>?, UnprocessedKeys: map<str,KeysAndAttributes>?, ConsumedCapacity: [ConsumedCapacity]?}

@endpoint POST /
@required {RequestItems: map<str,[WriteRequest]>}
@optional {ReturnConsumedCapacity: str, ReturnItemCollectionMetrics: str}
@returns(200) {UnprocessedItems: map<str,[WriteRequest]>?, ItemCollectionMetrics: map<str,[ItemCollectionMetrics]>?, ConsumedCapacity: [ConsumedCapacity]?}

@endpoint POST /
@required {TableName: str, BackupName: str}
@returns(200) {BackupDetails: BackupDetails?{BackupArn: str, BackupName: str, BackupSizeBytes: int(i64)?, BackupStatus: str, BackupType: str, BackupCreationDateTime: str(timestamp), BackupExpiryDateTime: str(timestamp)?}}

@endpoint POST /
@required {GlobalTableName: str, ReplicationGroup: [Replica]}
@returns(200) {GlobalTableDescription: GlobalTableDescription?{ReplicationGroup: [ReplicaDescription]?, GlobalTableArn: str?, CreationDateTime: str(timestamp)?, GlobalTableStatus: str?, GlobalTableName: str?}}

@endpoint POST /
@required {AttributeDefinitions: [AttributeDefinition], TableName: str, KeySchema: [KeySchemaElement]}
@optional {LocalSecondaryIndexes: [LocalSecondaryIndex], GlobalSecondaryIndexes: [GlobalSecondaryIndex], BillingMode: str, ProvisionedThroughput: ProvisionedThroughput, StreamSpecification: StreamSpecification, SSESpecification: SSESpecification, Tags: [Tag], TableClass: str, DeletionProtectionEnabled: bool, ResourcePolicy: str, OnDemandThroughput: OnDemandThroughput}
@returns(200) {TableDescription: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {BackupArn: str}
@returns(200) {BackupDescription: BackupDescription?{BackupDetails: BackupDetails?{BackupArn: str, BackupName: str, BackupSizeBytes: int(i64)?, BackupStatus: str, BackupType: str, BackupCreationDateTime: str(timestamp), BackupExpiryDateTime: str(timestamp)?}, SourceTableDetails: SourceTableDetails?{TableName: str, TableId: str, TableArn: str?, TableSizeBytes: int(i64)?, KeySchema: [KeySchemaElement], TableCreationDateTime: str(timestamp), ProvisionedThroughput: ProvisionedThroughput{ReadCapacityUnits: int(i64), WriteCapacityUnits: int(i64)}, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}, ItemCount: int(i64)?, BillingMode: str?}, SourceTableFeatureDetails: SourceTableFeatureDetails?{LocalSecondaryIndexes: [LocalSecondaryIndexInfo]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexInfo]?, StreamDescription: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, TimeToLiveDescription: TimeToLiveDescription?{TimeToLiveStatus: str?, AttributeName: str?}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}}}}

@endpoint POST /
@required {TableName: str, Key: map<str,AttributeValue>}
@optional {Expected: map<str,ExpectedAttributeValue>, ConditionalOperator: str, ReturnValues: str, ReturnConsumedCapacity: str, ReturnItemCollectionMetrics: str, ConditionExpression: str, ExpressionAttributeNames: map<str,str>, ExpressionAttributeValues: map<str,AttributeValue>, ReturnValuesOnConditionCheckFailure: str}
@returns(200) {Attributes: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}, ItemCollectionMetrics: ItemCollectionMetrics?{ItemCollectionKey: map<str,AttributeValue>?, SizeEstimateRangeGB: [num(f64)]?}}

@endpoint POST /
@required {ResourceArn: str}
@optional {ExpectedRevisionId: str}
@returns(200) {RevisionId: str?}

@endpoint POST /
@required {TableName: str}
@returns(200) {TableDescription: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {BackupArn: str}
@returns(200) {BackupDescription: BackupDescription?{BackupDetails: BackupDetails?{BackupArn: str, BackupName: str, BackupSizeBytes: int(i64)?, BackupStatus: str, BackupType: str, BackupCreationDateTime: str(timestamp), BackupExpiryDateTime: str(timestamp)?}, SourceTableDetails: SourceTableDetails?{TableName: str, TableId: str, TableArn: str?, TableSizeBytes: int(i64)?, KeySchema: [KeySchemaElement], TableCreationDateTime: str(timestamp), ProvisionedThroughput: ProvisionedThroughput{ReadCapacityUnits: int(i64), WriteCapacityUnits: int(i64)}, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}, ItemCount: int(i64)?, BillingMode: str?}, SourceTableFeatureDetails: SourceTableFeatureDetails?{LocalSecondaryIndexes: [LocalSecondaryIndexInfo]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexInfo]?, StreamDescription: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, TimeToLiveDescription: TimeToLiveDescription?{TimeToLiveStatus: str?, AttributeName: str?}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}}}}

@endpoint POST /
@required {TableName: str}
@returns(200) {ContinuousBackupsDescription: ContinuousBackupsDescription?{ContinuousBackupsStatus: str, PointInTimeRecoveryDescription: PointInTimeRecoveryDescription?{PointInTimeRecoveryStatus: str?, EarliestRestorableDateTime: str(timestamp)?, LatestRestorableDateTime: str(timestamp)?}}}

@endpoint POST /
@required {TableName: str}
@optional {IndexName: str}
@returns(200) {TableName: str?, IndexName: str?, ContributorInsightsRuleList: [str]?, ContributorInsightsStatus: str?, LastUpdateDateTime: str(timestamp)?, FailureException: FailureException?{ExceptionName: str?, ExceptionDescription: str?}}

@endpoint POST /
@returns(200) {Endpoints: [Endpoint]}

@endpoint POST /
@required {ExportArn: str}
@returns(200) {ExportDescription: ExportDescription?{ExportArn: str?, ExportStatus: str?, StartTime: str(timestamp)?, EndTime: str(timestamp)?, ExportManifest: str?, TableArn: str?, TableId: str?, ExportTime: str(timestamp)?, ClientToken: str?, S3Bucket: str?, S3BucketOwner: str?, S3Prefix: str?, S3SseAlgorithm: str?, S3SseKmsKeyId: str?, FailureCode: str?, FailureMessage: str?, ExportFormat: str?, BilledSizeBytes: int(i64)?, ItemCount: int(i64)?, ExportType: str?, IncrementalExportSpecification: IncrementalExportSpecification?{ExportFromTime: str(timestamp)?, ExportToTime: str(timestamp)?, ExportViewType: str?}}}

@endpoint POST /
@required {GlobalTableName: str}
@returns(200) {GlobalTableDescription: GlobalTableDescription?{ReplicationGroup: [ReplicaDescription]?, GlobalTableArn: str?, CreationDateTime: str(timestamp)?, GlobalTableStatus: str?, GlobalTableName: str?}}

@endpoint POST /
@required {GlobalTableName: str}
@returns(200) {GlobalTableName: str?, ReplicaSettings: [ReplicaSettingsDescription]?}

@endpoint POST /
@required {ImportArn: str}
@returns(200) {ImportTableDescription: ImportTableDescription{ImportArn: str?, ImportStatus: str?, TableArn: str?, TableId: str?, ClientToken: str?, S3BucketSource: S3BucketSource?{S3BucketOwner: str?, S3Bucket: str, S3KeyPrefix: str?}, ErrorCount: int(i64)?, CloudWatchLogGroupArn: str?, InputFormat: str?, InputFormatOptions: InputFormatOptions?{Csv: CsvOptions?{Delimiter: str?, HeaderList: [str]?}}, InputCompressionType: str?, TableCreationParameters: TableCreationParameters?{TableName: str, AttributeDefinitions: [AttributeDefinition], KeySchema: [KeySchemaElement], BillingMode: str?, ProvisionedThroughput: ProvisionedThroughput?{ReadCapacityUnits: int(i64), WriteCapacityUnits: int(i64)}, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}, SSESpecification: SSESpecification?{Enabled: bool?, SSEType: str?, KMSMasterKeyId: str?}, GlobalSecondaryIndexes: [GlobalSecondaryIndex]?}, StartTime: str(timestamp)?, EndTime: str(timestamp)?, ProcessedSizeBytes: int(i64)?, ProcessedItemCount: int(i64)?, ImportedItemCount: int(i64)?, FailureCode: str?, FailureMessage: str?}}

@endpoint POST /
@required {TableName: str}
@returns(200) {TableName: str?, KinesisDataStreamDestinations: [KinesisDataStreamDestination]?}

@endpoint POST /
@returns(200) {AccountMaxReadCapacityUnits: int(i64)?, AccountMaxWriteCapacityUnits: int(i64)?, TableMaxReadCapacityUnits: int(i64)?, TableMaxWriteCapacityUnits: int(i64)?}

@endpoint POST /
@required {TableName: str}
@returns(200) {Table: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {TableName: str}
@returns(200) {TableAutoScalingDescription: TableAutoScalingDescription?{TableName: str?, TableStatus: str?, Replicas: [ReplicaAutoScalingDescription]?}}

@endpoint POST /
@required {TableName: str}
@returns(200) {TimeToLiveDescription: TimeToLiveDescription?{TimeToLiveStatus: str?, AttributeName: str?}}

@endpoint POST /
@required {TableName: str, StreamArn: str}
@optional {EnableKinesisStreamingConfiguration: EnableKinesisStreamingConfiguration}
@returns(200) {TableName: str?, StreamArn: str?, DestinationStatus: str?, EnableKinesisStreamingConfiguration: EnableKinesisStreamingConfiguration?{ApproximateCreationDateTimePrecision: str?}}

@endpoint POST /
@required {TableName: str, StreamArn: str}
@optional {EnableKinesisStreamingConfiguration: EnableKinesisStreamingConfiguration}
@returns(200) {TableName: str?, StreamArn: str?, DestinationStatus: str?, EnableKinesisStreamingConfiguration: EnableKinesisStreamingConfiguration?{ApproximateCreationDateTimePrecision: str?}}

@endpoint POST /
@required {Statement: str}
@optional {Parameters: [AttributeValue], ConsistentRead: bool, NextToken: str, ReturnConsumedCapacity: str, Limit: int, ReturnValuesOnConditionCheckFailure: str}
@returns(200) {Items: [map<str,AttributeValue>]?, NextToken: str?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}, LastEvaluatedKey: map<str,AttributeValue>?}

@endpoint POST /
@required {TransactStatements: [ParameterizedStatement]}
@optional {ClientRequestToken: str, ReturnConsumedCapacity: str}
@returns(200) {Responses: [ItemResponse]?, ConsumedCapacity: [ConsumedCapacity]?}

@endpoint POST /
@required {TableArn: str, S3Bucket: str}
@optional {ExportTime: str(timestamp), ClientToken: str, S3BucketOwner: str, S3Prefix: str, S3SseAlgorithm: str, S3SseKmsKeyId: str, ExportFormat: str, ExportType: str, IncrementalExportSpecification: IncrementalExportSpecification}
@returns(200) {ExportDescription: ExportDescription?{ExportArn: str?, ExportStatus: str?, StartTime: str(timestamp)?, EndTime: str(timestamp)?, ExportManifest: str?, TableArn: str?, TableId: str?, ExportTime: str(timestamp)?, ClientToken: str?, S3Bucket: str?, S3BucketOwner: str?, S3Prefix: str?, S3SseAlgorithm: str?, S3SseKmsKeyId: str?, FailureCode: str?, FailureMessage: str?, ExportFormat: str?, BilledSizeBytes: int(i64)?, ItemCount: int(i64)?, ExportType: str?, IncrementalExportSpecification: IncrementalExportSpecification?{ExportFromTime: str(timestamp)?, ExportToTime: str(timestamp)?, ExportViewType: str?}}}

@endpoint POST /
@required {TableName: str, Key: map<str,AttributeValue>}
@optional {AttributesToGet: [str], ConsistentRead: bool, ReturnConsumedCapacity: str, ProjectionExpression: str, ExpressionAttributeNames: map<str,str>}
@returns(200) {Item: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}}

@endpoint POST /
@required {ResourceArn: str}
@returns(200) {Policy: str?, RevisionId: str?}

@endpoint POST /
@required {S3BucketSource: S3BucketSource, InputFormat: str, TableCreationParameters: TableCreationParameters}
@optional {ClientToken: str, InputFormatOptions: InputFormatOptions, InputCompressionType: str}
@returns(200) {ImportTableDescription: ImportTableDescription{ImportArn: str?, ImportStatus: str?, TableArn: str?, TableId: str?, ClientToken: str?, S3BucketSource: S3BucketSource?{S3BucketOwner: str?, S3Bucket: str, S3KeyPrefix: str?}, ErrorCount: int(i64)?, CloudWatchLogGroupArn: str?, InputFormat: str?, InputFormatOptions: InputFormatOptions?{Csv: CsvOptions?{Delimiter: str?, HeaderList: [str]?}}, InputCompressionType: str?, TableCreationParameters: TableCreationParameters?{TableName: str, AttributeDefinitions: [AttributeDefinition], KeySchema: [KeySchemaElement], BillingMode: str?, ProvisionedThroughput: ProvisionedThroughput?{ReadCapacityUnits: int(i64), WriteCapacityUnits: int(i64)}, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}, SSESpecification: SSESpecification?{Enabled: bool?, SSEType: str?, KMSMasterKeyId: str?}, GlobalSecondaryIndexes: [GlobalSecondaryIndex]?}, StartTime: str(timestamp)?, EndTime: str(timestamp)?, ProcessedSizeBytes: int(i64)?, ProcessedItemCount: int(i64)?, ImportedItemCount: int(i64)?, FailureCode: str?, FailureMessage: str?}}

@endpoint POST /
@optional {TableName: str, Limit: int, TimeRangeLowerBound: str(timestamp), TimeRangeUpperBound: str(timestamp), ExclusiveStartBackupArn: str, BackupType: str}
@returns(200) {BackupSummaries: [BackupSummary]?, LastEvaluatedBackupArn: str?}

@endpoint POST /
@optional {TableName: str, NextToken: str, MaxResults: int}
@returns(200) {ContributorInsightsSummaries: [ContributorInsightsSummary]?, NextToken: str?}

@endpoint POST /
@optional {TableArn: str, MaxResults: int, NextToken: str}
@returns(200) {ExportSummaries: [ExportSummary]?, NextToken: str?}

@endpoint POST /
@optional {ExclusiveStartGlobalTableName: str, Limit: int, RegionName: str}
@returns(200) {GlobalTables: [GlobalTable]?, LastEvaluatedGlobalTableName: str?}

@endpoint POST /
@optional {TableArn: str, PageSize: int, NextToken: str}
@returns(200) {ImportSummaryList: [ImportSummary]?, NextToken: str?}

@endpoint POST /
@optional {ExclusiveStartTableName: str, Limit: int}
@returns(200) {TableNames: [str]?, LastEvaluatedTableName: str?}

@endpoint POST /
@required {ResourceArn: str}
@optional {NextToken: str}
@returns(200) {Tags: [Tag]?, NextToken: str?}

@endpoint POST /
@required {TableName: str, Item: map<str,AttributeValue>}
@optional {Expected: map<str,ExpectedAttributeValue>, ReturnValues: str, ReturnConsumedCapacity: str, ReturnItemCollectionMetrics: str, ConditionalOperator: str, ConditionExpression: str, ExpressionAttributeNames: map<str,str>, ExpressionAttributeValues: map<str,AttributeValue>, ReturnValuesOnConditionCheckFailure: str}
@returns(200) {Attributes: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}, ItemCollectionMetrics: ItemCollectionMetrics?{ItemCollectionKey: map<str,AttributeValue>?, SizeEstimateRangeGB: [num(f64)]?}}

@endpoint POST /
@required {ResourceArn: str, Policy: str}
@optional {ExpectedRevisionId: str, ConfirmRemoveSelfResourceAccess: bool}
@returns(200) {RevisionId: str?}

@endpoint POST /
@required {TableName: str}
@optional {IndexName: str, Select: str, AttributesToGet: [str], Limit: int, ConsistentRead: bool, KeyConditions: map<str,Condition>, QueryFilter: map<str,Condition>, ConditionalOperator: str, ScanIndexForward: bool, ExclusiveStartKey: map<str,AttributeValue>, ReturnConsumedCapacity: str, ProjectionExpression: str, FilterExpression: str, KeyConditionExpression: str, ExpressionAttributeNames: map<str,str>, ExpressionAttributeValues: map<str,AttributeValue>}
@returns(200) {Items: [map<str,AttributeValue>]?, Count: int?, ScannedCount: int?, LastEvaluatedKey: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}}

@endpoint POST /
@required {TargetTableName: str, BackupArn: str}
@optional {BillingModeOverride: str, GlobalSecondaryIndexOverride: [GlobalSecondaryIndex], LocalSecondaryIndexOverride: [LocalSecondaryIndex], ProvisionedThroughputOverride: ProvisionedThroughput, OnDemandThroughputOverride: OnDemandThroughput, SSESpecificationOverride: SSESpecification}
@returns(200) {TableDescription: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {TargetTableName: str}
@optional {SourceTableArn: str, SourceTableName: str, UseLatestRestorableTime: bool, RestoreDateTime: str(timestamp), BillingModeOverride: str, GlobalSecondaryIndexOverride: [GlobalSecondaryIndex], LocalSecondaryIndexOverride: [LocalSecondaryIndex], ProvisionedThroughputOverride: ProvisionedThroughput, OnDemandThroughputOverride: OnDemandThroughput, SSESpecificationOverride: SSESpecification}
@returns(200) {TableDescription: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {TableName: str}
@optional {IndexName: str, AttributesToGet: [str], Limit: int, Select: str, ScanFilter: map<str,Condition>, ConditionalOperator: str, ExclusiveStartKey: map<str,AttributeValue>, ReturnConsumedCapacity: str, TotalSegments: int, Segment: int, ProjectionExpression: str, FilterExpression: str, ExpressionAttributeNames: map<str,str>, ExpressionAttributeValues: map<str,AttributeValue>, ConsistentRead: bool}
@returns(200) {Items: [map<str,AttributeValue>]?, Count: int?, ScannedCount: int?, LastEvaluatedKey: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}}

@endpoint POST /
@required {ResourceArn: str, Tags: [Tag]}

@endpoint POST /
@required {TransactItems: [TransactGetItem]}
@optional {ReturnConsumedCapacity: str}
@returns(200) {ConsumedCapacity: [ConsumedCapacity]?, Responses: [ItemResponse]?}

@endpoint POST /
@required {TransactItems: [TransactWriteItem]}
@optional {ReturnConsumedCapacity: str, ReturnItemCollectionMetrics: str, ClientRequestToken: str}
@returns(200) {ConsumedCapacity: [ConsumedCapacity]?, ItemCollectionMetrics: map<str,[ItemCollectionMetrics]>?}

@endpoint POST /
@required {ResourceArn: str, TagKeys: [str]}

@endpoint POST /
@required {TableName: str, PointInTimeRecoverySpecification: PointInTimeRecoverySpecification}
@returns(200) {ContinuousBackupsDescription: ContinuousBackupsDescription?{ContinuousBackupsStatus: str, PointInTimeRecoveryDescription: PointInTimeRecoveryDescription?{PointInTimeRecoveryStatus: str?, EarliestRestorableDateTime: str(timestamp)?, LatestRestorableDateTime: str(timestamp)?}}}

@endpoint POST /
@required {TableName: str, ContributorInsightsAction: str}
@optional {IndexName: str}
@returns(200) {TableName: str?, IndexName: str?, ContributorInsightsStatus: str?}

@endpoint POST /
@required {GlobalTableName: str, ReplicaUpdates: [ReplicaUpdate]}
@returns(200) {GlobalTableDescription: GlobalTableDescription?{ReplicationGroup: [ReplicaDescription]?, GlobalTableArn: str?, CreationDateTime: str(timestamp)?, GlobalTableStatus: str?, GlobalTableName: str?}}

@endpoint POST /
@required {GlobalTableName: str}
@optional {GlobalTableBillingMode: str, GlobalTableProvisionedWriteCapacityUnits: int(i64), GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate: AutoScalingSettingsUpdate, GlobalTableGlobalSecondaryIndexSettingsUpdate: [GlobalTableGlobalSecondaryIndexSettingsUpdate], ReplicaSettingsUpdate: [ReplicaSettingsUpdate]}
@returns(200) {GlobalTableName: str?, ReplicaSettings: [ReplicaSettingsDescription]?}

@endpoint POST /
@required {TableName: str, Key: map<str,AttributeValue>}
@optional {AttributeUpdates: map<str,AttributeValueUpdate>, Expected: map<str,ExpectedAttributeValue>, ConditionalOperator: str, ReturnValues: str, ReturnConsumedCapacity: str, ReturnItemCollectionMetrics: str, UpdateExpression: str, ConditionExpression: str, ExpressionAttributeNames: map<str,str>, ExpressionAttributeValues: map<str,AttributeValue>, ReturnValuesOnConditionCheckFailure: str}
@returns(200) {Attributes: map<str,AttributeValue>?, ConsumedCapacity: ConsumedCapacity?{TableName: str?, CapacityUnits: num(f64)?, ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, Table: Capacity?{ReadCapacityUnits: num(f64)?, WriteCapacityUnits: num(f64)?, CapacityUnits: num(f64)?}, LocalSecondaryIndexes: map<str,Capacity>?, GlobalSecondaryIndexes: map<str,Capacity>?}, ItemCollectionMetrics: ItemCollectionMetrics?{ItemCollectionKey: map<str,AttributeValue>?, SizeEstimateRangeGB: [num(f64)]?}}

@endpoint POST /
@required {TableName: str, StreamArn: str}
@optional {UpdateKinesisStreamingConfiguration: UpdateKinesisStreamingConfiguration}
@returns(200) {TableName: str?, StreamArn: str?, DestinationStatus: str?, UpdateKinesisStreamingConfiguration: UpdateKinesisStreamingConfiguration?{ApproximateCreationDateTimePrecision: str?}}

@endpoint POST /
@required {TableName: str}
@optional {AttributeDefinitions: [AttributeDefinition], BillingMode: str, ProvisionedThroughput: ProvisionedThroughput, GlobalSecondaryIndexUpdates: [GlobalSecondaryIndexUpdate], StreamSpecification: StreamSpecification, SSESpecification: SSESpecification, ReplicaUpdates: [ReplicationGroupUpdate], TableClass: str, DeletionProtectionEnabled: bool, OnDemandThroughput: OnDemandThroughput}
@returns(200) {TableDescription: TableDescription?{AttributeDefinitions: [AttributeDefinition]?, TableName: str?, KeySchema: [KeySchemaElement]?, TableStatus: str?, CreationDateTime: str(timestamp)?, ProvisionedThroughput: ProvisionedThroughputDescription?{LastIncreaseDateTime: str(timestamp)?, LastDecreaseDateTime: str(timestamp)?, NumberOfDecreasesToday: int(i64)?, ReadCapacityUnits: int(i64)?, WriteCapacityUnits: int(i64)?}, TableSizeBytes: int(i64)?, ItemCount: int(i64)?, TableArn: str?, TableId: str?, BillingModeSummary: BillingModeSummary?{BillingMode: str?, LastUpdateToPayPerRequestDateTime: str(timestamp)?}, LocalSecondaryIndexes: [LocalSecondaryIndexDescription]?, GlobalSecondaryIndexes: [GlobalSecondaryIndexDescription]?, StreamSpecification: StreamSpecification?{StreamEnabled: bool, StreamViewType: str?}, LatestStreamLabel: str?, LatestStreamArn: str?, GlobalTableVersion: str?, Replicas: [ReplicaDescription]?, RestoreSummary: RestoreSummary?{SourceBackupArn: str?, SourceTableArn: str?, RestoreDateTime: str(timestamp), RestoreInProgress: bool}, SSEDescription: SSEDescription?{Status: str?, SSEType: str?, KMSMasterKeyArn: str?, InaccessibleEncryptionDateTime: str(timestamp)?}, ArchivalSummary: ArchivalSummary?{ArchivalDateTime: str(timestamp)?, ArchivalReason: str?, ArchivalBackupArn: str?}, TableClassSummary: TableClassSummary?{TableClass: str?, LastUpdateDateTime: str(timestamp)?}, DeletionProtectionEnabled: bool?, OnDemandThroughput: OnDemandThroughput?{MaxReadRequestUnits: int(i64)?, MaxWriteRequestUnits: int(i64)?}}}

@endpoint POST /
@required {TableName: str}
@optional {GlobalSecondaryIndexUpdates: [GlobalSecondaryIndexAutoScalingUpdate], ProvisionedWriteCapacityAutoScalingUpdate: AutoScalingSettingsUpdate, ReplicaUpdates: [ReplicaAutoScalingUpdate]}
@returns(200) {TableAutoScalingDescription: TableAutoScalingDescription?{TableName: str?, TableStatus: str?, Replicas: [ReplicaAutoScalingDescription]?}}

@endpoint POST /
@required {TableName: str, TimeToLiveSpecification: TimeToLiveSpecification}
@returns(200) {TimeToLiveSpecification: TimeToLiveSpecification?{Enabled: bool, AttributeName: str}}

@end
