published on Tuesday, Mar 10, 2026 by Pulumi
published on Tuesday, Mar 10, 2026 by Pulumi
Provides a DynamoDB table resource.
Note: It is recommended to use
ignoreChangesforread_capacityand/orwrite_capacityif there’sautoscaling policyattached to the table.
Note: When using aws.dynamodb.TableReplica with this resource, use
lifecycleignore_changesforreplica, e.g.,lifecycle { ignore_changes = [replica] }.
DynamoDB Table attributes
Only define attributes on the table object that are going to be used as:
- Table hash key or range key
- LSI or GSI hash key or range key
The DynamoDB API expects attribute structure (name and type) to be passed along when creating or updating GSI/LSIs or creating the initial table. In these cases it expects the Hash / Range keys to be provided. Because these get re-used in numerous places (i.e the table’s range key could be a part of one or more GSIs), they are stored on the table object to prevent duplication and increase consistency. If you add attributes here that are not used in these scenarios it can cause an infinite loop in planning.
Example Usage
Basic Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var basic_dynamodb_table = new Aws.DynamoDB.Table("basic-dynamodb-table", new()
{
Attributes = new[]
{
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "UserId",
Type = "S",
},
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "GameTitle",
Type = "S",
},
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "TopScore",
Type = "N",
},
},
BillingMode = "PROVISIONED",
GlobalSecondaryIndexes = new[]
{
new Aws.DynamoDB.Inputs.TableGlobalSecondaryIndexArgs
{
HashKey = "GameTitle",
Name = "GameTitleIndex",
NonKeyAttributes = new[]
{
"UserId",
},
ProjectionType = "INCLUDE",
RangeKey = "TopScore",
ReadCapacity = 10,
WriteCapacity = 10,
},
},
HashKey = "UserId",
RangeKey = "GameTitle",
ReadCapacity = 20,
Tags =
{
{ "Environment", "production" },
{ "Name", "dynamodb-table-1" },
},
Ttl = new Aws.DynamoDB.Inputs.TableTtlArgs
{
AttributeName = "TimeToExist",
Enabled = false,
},
WriteCapacity = 20,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/dynamodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dynamodb.NewTable(ctx, "basic-dynamodb-table", &dynamodb.TableArgs{
Attributes: dynamodb.TableAttributeArray{
&dynamodb.TableAttributeArgs{
Name: pulumi.String("UserId"),
Type: pulumi.String("S"),
},
&dynamodb.TableAttributeArgs{
Name: pulumi.String("GameTitle"),
Type: pulumi.String("S"),
},
&dynamodb.TableAttributeArgs{
Name: pulumi.String("TopScore"),
Type: pulumi.String("N"),
},
},
BillingMode: pulumi.String("PROVISIONED"),
GlobalSecondaryIndexes: dynamodb.TableGlobalSecondaryIndexArray{
&dynamodb.TableGlobalSecondaryIndexArgs{
HashKey: pulumi.String("GameTitle"),
Name: pulumi.String("GameTitleIndex"),
NonKeyAttributes: pulumi.StringArray{
pulumi.String("UserId"),
},
ProjectionType: pulumi.String("INCLUDE"),
RangeKey: pulumi.String("TopScore"),
ReadCapacity: pulumi.Int(10),
WriteCapacity: pulumi.Int(10),
},
},
HashKey: pulumi.String("UserId"),
RangeKey: pulumi.String("GameTitle"),
ReadCapacity: pulumi.Int(20),
Tags: pulumi.StringMap{
"Environment": pulumi.String("production"),
"Name": pulumi.String("dynamodb-table-1"),
},
Ttl: &dynamodb.TableTtlArgs{
AttributeName: pulumi.String("TimeToExist"),
Enabled: pulumi.Bool(false),
},
WriteCapacity: pulumi.Int(20),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.dynamodb.Table;
import com.pulumi.aws.dynamodb.TableArgs;
import com.pulumi.aws.dynamodb.inputs.TableAttributeArgs;
import com.pulumi.aws.dynamodb.inputs.TableGlobalSecondaryIndexArgs;
import com.pulumi.aws.dynamodb.inputs.TableTtlArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var basic_dynamodb_table = new Table("basic-dynamodb-table", TableArgs.builder()
.attributes(
TableAttributeArgs.builder()
.name("UserId")
.type("S")
.build(),
TableAttributeArgs.builder()
.name("GameTitle")
.type("S")
.build(),
TableAttributeArgs.builder()
.name("TopScore")
.type("N")
.build())
.billingMode("PROVISIONED")
.globalSecondaryIndexes(TableGlobalSecondaryIndexArgs.builder()
.hashKey("GameTitle")
.name("GameTitleIndex")
.nonKeyAttributes("UserId")
.projectionType("INCLUDE")
.rangeKey("TopScore")
.readCapacity(10)
.writeCapacity(10)
.build())
.hashKey("UserId")
.rangeKey("GameTitle")
.readCapacity(20)
.tags(Map.ofEntries(
Map.entry("Environment", "production"),
Map.entry("Name", "dynamodb-table-1")
))
.ttl(TableTtlArgs.builder()
.attributeName("TimeToExist")
.enabled(false)
.build())
.writeCapacity(20)
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const basic_dynamodb_table = new aws.dynamodb.Table("basic-dynamodb-table", {
attributes: [
{
name: "UserId",
type: "S",
},
{
name: "GameTitle",
type: "S",
},
{
name: "TopScore",
type: "N",
},
],
billingMode: "PROVISIONED",
globalSecondaryIndexes: [{
hashKey: "GameTitle",
name: "GameTitleIndex",
nonKeyAttributes: ["UserId"],
projectionType: "INCLUDE",
rangeKey: "TopScore",
readCapacity: 10,
writeCapacity: 10,
}],
hashKey: "UserId",
rangeKey: "GameTitle",
readCapacity: 20,
tags: {
Environment: "production",
Name: "dynamodb-table-1",
},
ttl: {
attributeName: "TimeToExist",
enabled: false,
},
writeCapacity: 20,
});
import pulumi
import pulumi_aws as aws
basic_dynamodb_table = aws.dynamodb.Table("basic-dynamodb-table",
attributes=[
aws.dynamodb.TableAttributeArgs(
name="UserId",
type="S",
),
aws.dynamodb.TableAttributeArgs(
name="GameTitle",
type="S",
),
aws.dynamodb.TableAttributeArgs(
name="TopScore",
type="N",
),
],
billing_mode="PROVISIONED",
global_secondary_indexes=[aws.dynamodb.TableGlobalSecondaryIndexArgs(
hash_key="GameTitle",
name="GameTitleIndex",
non_key_attributes=["UserId"],
projection_type="INCLUDE",
range_key="TopScore",
read_capacity=10,
write_capacity=10,
)],
hash_key="UserId",
range_key="GameTitle",
read_capacity=20,
tags={
"Environment": "production",
"Name": "dynamodb-table-1",
},
ttl=aws.dynamodb.TableTtlArgs(
attribute_name="TimeToExist",
enabled=False,
),
write_capacity=20)
resources:
basic-dynamodb-table:
type: aws:dynamodb:Table
properties:
attributes:
- name: UserId
type: S
- name: GameTitle
type: S
- name: TopScore
type: N
billingMode: PROVISIONED
globalSecondaryIndexes:
- hashKey: GameTitle
name: GameTitleIndex
nonKeyAttributes:
- UserId
projectionType: INCLUDE
rangeKey: TopScore
readCapacity: 10
writeCapacity: 10
hashKey: UserId
rangeKey: GameTitle
readCapacity: 20
tags:
Environment: production
Name: dynamodb-table-1
ttl:
attributeName: TimeToExist
enabled: false
writeCapacity: 20
Global Tables
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DynamoDB.Table("example", new()
{
Attributes = new[]
{
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "TestTableHashKey",
Type = "S",
},
},
BillingMode = "PAY_PER_REQUEST",
HashKey = "TestTableHashKey",
Replicas = new[]
{
new Aws.DynamoDB.Inputs.TableReplicaArgs
{
RegionName = "us-east-2",
},
new Aws.DynamoDB.Inputs.TableReplicaArgs
{
RegionName = "us-west-2",
},
},
StreamEnabled = true,
StreamViewType = "NEW_AND_OLD_IMAGES",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/dynamodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dynamodb.NewTable(ctx, "example", &dynamodb.TableArgs{
Attributes: dynamodb.TableAttributeArray{
&dynamodb.TableAttributeArgs{
Name: pulumi.String("TestTableHashKey"),
Type: pulumi.String("S"),
},
},
BillingMode: pulumi.String("PAY_PER_REQUEST"),
HashKey: pulumi.String("TestTableHashKey"),
Replicas: dynamodb.TableReplicaTypeArray{
&dynamodb.TableReplicaTypeArgs{
RegionName: pulumi.String("us-east-2"),
},
&dynamodb.TableReplicaTypeArgs{
RegionName: pulumi.String("us-west-2"),
},
},
StreamEnabled: pulumi.Bool(true),
StreamViewType: pulumi.String("NEW_AND_OLD_IMAGES"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.dynamodb.Table;
import com.pulumi.aws.dynamodb.TableArgs;
import com.pulumi.aws.dynamodb.inputs.TableAttributeArgs;
import com.pulumi.aws.dynamodb.inputs.TableReplicaArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Table("example", TableArgs.builder()
.attributes(TableAttributeArgs.builder()
.name("TestTableHashKey")
.type("S")
.build())
.billingMode("PAY_PER_REQUEST")
.hashKey("TestTableHashKey")
.replicas(
TableReplicaArgs.builder()
.regionName("us-east-2")
.build(),
TableReplicaArgs.builder()
.regionName("us-west-2")
.build())
.streamEnabled(true)
.streamViewType("NEW_AND_OLD_IMAGES")
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.dynamodb.Table("example", {
attributes: [{
name: "TestTableHashKey",
type: "S",
}],
billingMode: "PAY_PER_REQUEST",
hashKey: "TestTableHashKey",
replicas: [
{
regionName: "us-east-2",
},
{
regionName: "us-west-2",
},
],
streamEnabled: true,
streamViewType: "NEW_AND_OLD_IMAGES",
});
import pulumi
import pulumi_aws as aws
example = aws.dynamodb.Table("example",
attributes=[aws.dynamodb.TableAttributeArgs(
name="TestTableHashKey",
type="S",
)],
billing_mode="PAY_PER_REQUEST",
hash_key="TestTableHashKey",
replicas=[
aws.dynamodb.TableReplicaArgs(
region_name="us-east-2",
),
aws.dynamodb.TableReplicaArgs(
region_name="us-west-2",
),
],
stream_enabled=True,
stream_view_type="NEW_AND_OLD_IMAGES")
resources:
example:
type: aws:dynamodb:Table
properties:
attributes:
- name: TestTableHashKey
type: S
billingMode: PAY_PER_REQUEST
hashKey: TestTableHashKey
replicas:
- regionName: us-east-2
- regionName: us-west-2
streamEnabled: true
streamViewType: NEW_AND_OLD_IMAGES
Create Table Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Table(name: string, args?: TableArgs, opts?: CustomResourceOptions);@overload
def Table(resource_name: str,
args: Optional[TableArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def Table(resource_name: str,
opts: Optional[ResourceOptions] = None,
attributes: Optional[Sequence[TableAttributeArgs]] = None,
billing_mode: Optional[str] = None,
deletion_protection_enabled: Optional[bool] = None,
global_secondary_indexes: Optional[Sequence[TableGlobalSecondaryIndexArgs]] = None,
hash_key: Optional[str] = None,
local_secondary_indexes: Optional[Sequence[TableLocalSecondaryIndexArgs]] = None,
name: Optional[str] = None,
point_in_time_recovery: Optional[TablePointInTimeRecoveryArgs] = None,
range_key: Optional[str] = None,
read_capacity: Optional[int] = None,
replicas: Optional[Sequence[TableReplicaArgs]] = None,
restore_date_time: Optional[str] = None,
restore_source_name: Optional[str] = None,
restore_to_latest_time: Optional[bool] = None,
server_side_encryption: Optional[TableServerSideEncryptionArgs] = None,
stream_enabled: Optional[bool] = None,
stream_view_type: Optional[str] = None,
table_class: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
ttl: Optional[TableTtlArgs] = None,
write_capacity: Optional[int] = None)func NewTable(ctx *Context, name string, args *TableArgs, opts ...ResourceOption) (*Table, error)public Table(string name, TableArgs? args = null, CustomResourceOptions? opts = null)type: aws:dynamodb:Table
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args TableArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args TableArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args TableArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args TableArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args TableArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var tableResource = new Aws.DynamoDB.Table("tableResource", new()
{
Attributes = new[]
{
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "string",
Type = "string",
},
},
BillingMode = "string",
DeletionProtectionEnabled = false,
GlobalSecondaryIndexes = new[]
{
new Aws.DynamoDB.Inputs.TableGlobalSecondaryIndexArgs
{
HashKey = "string",
Name = "string",
ProjectionType = "string",
NonKeyAttributes = new[]
{
"string",
},
RangeKey = "string",
ReadCapacity = 0,
WriteCapacity = 0,
},
},
HashKey = "string",
LocalSecondaryIndexes = new[]
{
new Aws.DynamoDB.Inputs.TableLocalSecondaryIndexArgs
{
Name = "string",
ProjectionType = "string",
RangeKey = "string",
NonKeyAttributes = new[]
{
"string",
},
},
},
Name = "string",
PointInTimeRecovery = new Aws.DynamoDB.Inputs.TablePointInTimeRecoveryArgs
{
Enabled = false,
},
RangeKey = "string",
ReadCapacity = 0,
Replicas = new[]
{
new Aws.DynamoDB.Inputs.TableReplicaArgs
{
RegionName = "string",
Arn = "string",
KmsKeyArn = "string",
PointInTimeRecovery = false,
PropagateTags = false,
StreamArn = "string",
StreamLabel = "string",
},
},
RestoreDateTime = "string",
RestoreSourceName = "string",
RestoreToLatestTime = false,
ServerSideEncryption = new Aws.DynamoDB.Inputs.TableServerSideEncryptionArgs
{
Enabled = false,
KmsKeyArn = "string",
},
StreamEnabled = false,
StreamViewType = "string",
TableClass = "string",
Tags =
{
{ "string", "string" },
},
Ttl = new Aws.DynamoDB.Inputs.TableTtlArgs
{
AttributeName = "string",
Enabled = false,
},
WriteCapacity = 0,
});
example, err := dynamodb.NewTable(ctx, "tableResource", &dynamodb.TableArgs{
Attributes: dynamodb.TableAttributeArray{
&dynamodb.TableAttributeArgs{
Name: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
BillingMode: pulumi.String("string"),
DeletionProtectionEnabled: pulumi.Bool(false),
GlobalSecondaryIndexes: dynamodb.TableGlobalSecondaryIndexArray{
&dynamodb.TableGlobalSecondaryIndexArgs{
HashKey: pulumi.String("string"),
Name: pulumi.String("string"),
ProjectionType: pulumi.String("string"),
NonKeyAttributes: pulumi.StringArray{
pulumi.String("string"),
},
RangeKey: pulumi.String("string"),
ReadCapacity: pulumi.Int(0),
WriteCapacity: pulumi.Int(0),
},
},
HashKey: pulumi.String("string"),
LocalSecondaryIndexes: dynamodb.TableLocalSecondaryIndexArray{
&dynamodb.TableLocalSecondaryIndexArgs{
Name: pulumi.String("string"),
ProjectionType: pulumi.String("string"),
RangeKey: pulumi.String("string"),
NonKeyAttributes: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Name: pulumi.String("string"),
PointInTimeRecovery: &dynamodb.TablePointInTimeRecoveryArgs{
Enabled: pulumi.Bool(false),
},
RangeKey: pulumi.String("string"),
ReadCapacity: pulumi.Int(0),
Replicas: dynamodb.TableReplicaTypeArray{
&dynamodb.TableReplicaTypeArgs{
RegionName: pulumi.String("string"),
Arn: pulumi.String("string"),
KmsKeyArn: pulumi.String("string"),
PointInTimeRecovery: pulumi.Bool(false),
PropagateTags: pulumi.Bool(false),
StreamArn: pulumi.String("string"),
StreamLabel: pulumi.String("string"),
},
},
RestoreDateTime: pulumi.String("string"),
RestoreSourceName: pulumi.String("string"),
RestoreToLatestTime: pulumi.Bool(false),
ServerSideEncryption: &dynamodb.TableServerSideEncryptionArgs{
Enabled: pulumi.Bool(false),
KmsKeyArn: pulumi.String("string"),
},
StreamEnabled: pulumi.Bool(false),
StreamViewType: pulumi.String("string"),
TableClass: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Ttl: &dynamodb.TableTtlArgs{
AttributeName: pulumi.String("string"),
Enabled: pulumi.Bool(false),
},
WriteCapacity: pulumi.Int(0),
})
var tableResource = new com.pulumi.aws.dynamodb.Table("tableResource", com.pulumi.aws.dynamodb.TableArgs.builder()
.attributes(TableAttributeArgs.builder()
.name("string")
.type("string")
.build())
.billingMode("string")
.deletionProtectionEnabled(false)
.globalSecondaryIndexes(TableGlobalSecondaryIndexArgs.builder()
.hashKey("string")
.name("string")
.projectionType("string")
.nonKeyAttributes("string")
.rangeKey("string")
.readCapacity(0)
.writeCapacity(0)
.build())
.hashKey("string")
.localSecondaryIndexes(TableLocalSecondaryIndexArgs.builder()
.name("string")
.projectionType("string")
.rangeKey("string")
.nonKeyAttributes("string")
.build())
.name("string")
.pointInTimeRecovery(TablePointInTimeRecoveryArgs.builder()
.enabled(false)
.build())
.rangeKey("string")
.readCapacity(0)
.replicas(TableReplicaArgs.builder()
.regionName("string")
.arn("string")
.kmsKeyArn("string")
.pointInTimeRecovery(false)
.propagateTags(false)
.streamArn("string")
.streamLabel("string")
.build())
.restoreDateTime("string")
.restoreSourceName("string")
.restoreToLatestTime(false)
.serverSideEncryption(TableServerSideEncryptionArgs.builder()
.enabled(false)
.kmsKeyArn("string")
.build())
.streamEnabled(false)
.streamViewType("string")
.tableClass("string")
.tags(Map.of("string", "string"))
.ttl(TableTtlArgs.builder()
.attributeName("string")
.enabled(false)
.build())
.writeCapacity(0)
.build());
table_resource = aws.dynamodb.Table("tableResource",
attributes=[{
"name": "string",
"type": "string",
}],
billing_mode="string",
deletion_protection_enabled=False,
global_secondary_indexes=[{
"hash_key": "string",
"name": "string",
"projection_type": "string",
"non_key_attributes": ["string"],
"range_key": "string",
"read_capacity": 0,
"write_capacity": 0,
}],
hash_key="string",
local_secondary_indexes=[{
"name": "string",
"projection_type": "string",
"range_key": "string",
"non_key_attributes": ["string"],
}],
name="string",
point_in_time_recovery={
"enabled": False,
},
range_key="string",
read_capacity=0,
replicas=[{
"region_name": "string",
"arn": "string",
"kms_key_arn": "string",
"point_in_time_recovery": False,
"propagate_tags": False,
"stream_arn": "string",
"stream_label": "string",
}],
restore_date_time="string",
restore_source_name="string",
restore_to_latest_time=False,
server_side_encryption={
"enabled": False,
"kms_key_arn": "string",
},
stream_enabled=False,
stream_view_type="string",
table_class="string",
tags={
"string": "string",
},
ttl={
"attribute_name": "string",
"enabled": False,
},
write_capacity=0)
const tableResource = new aws.dynamodb.Table("tableResource", {
attributes: [{
name: "string",
type: "string",
}],
billingMode: "string",
deletionProtectionEnabled: false,
globalSecondaryIndexes: [{
hashKey: "string",
name: "string",
projectionType: "string",
nonKeyAttributes: ["string"],
rangeKey: "string",
readCapacity: 0,
writeCapacity: 0,
}],
hashKey: "string",
localSecondaryIndexes: [{
name: "string",
projectionType: "string",
rangeKey: "string",
nonKeyAttributes: ["string"],
}],
name: "string",
pointInTimeRecovery: {
enabled: false,
},
rangeKey: "string",
readCapacity: 0,
replicas: [{
regionName: "string",
arn: "string",
kmsKeyArn: "string",
pointInTimeRecovery: false,
propagateTags: false,
streamArn: "string",
streamLabel: "string",
}],
restoreDateTime: "string",
restoreSourceName: "string",
restoreToLatestTime: false,
serverSideEncryption: {
enabled: false,
kmsKeyArn: "string",
},
streamEnabled: false,
streamViewType: "string",
tableClass: "string",
tags: {
string: "string",
},
ttl: {
attributeName: "string",
enabled: false,
},
writeCapacity: 0,
});
type: aws:dynamodb:Table
properties:
attributes:
- name: string
type: string
billingMode: string
deletionProtectionEnabled: false
globalSecondaryIndexes:
- hashKey: string
name: string
nonKeyAttributes:
- string
projectionType: string
rangeKey: string
readCapacity: 0
writeCapacity: 0
hashKey: string
localSecondaryIndexes:
- name: string
nonKeyAttributes:
- string
projectionType: string
rangeKey: string
name: string
pointInTimeRecovery:
enabled: false
rangeKey: string
readCapacity: 0
replicas:
- arn: string
kmsKeyArn: string
pointInTimeRecovery: false
propagateTags: false
regionName: string
streamArn: string
streamLabel: string
restoreDateTime: string
restoreSourceName: string
restoreToLatestTime: false
serverSideEncryption:
enabled: false
kmsKeyArn: string
streamEnabled: false
streamViewType: string
tableClass: string
tags:
string: string
ttl:
attributeName: string
enabled: false
writeCapacity: 0
Table Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Table resource accepts the following input properties:
- Attributes
List<Table
Attribute> - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - Billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - Deletion
Protection boolEnabled - Enables deletion protection for table. Defaults to
false. - Global
Secondary List<TableIndexes Global Secondary Index> - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- Hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - Local
Secondary List<TableIndexes Local Secondary Index> - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- Name string
Unique within a region name of the table.
Optional arguments:
- Point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- Range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - Read
Capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - Replicas
List<Table
Replica> - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- Restore
Date stringTime - Time of the point-in-time recovery point to restore.
- Restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- Restore
To boolLatest Time - If set, restores table to the most recent point-in-time recovery point.
- Server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- Stream
Enabled bool - Whether Streams are enabled.
- Stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - Table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Dictionary<string, string>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Ttl
Table
Ttl - Configuration block for TTL. See below.
- Write
Capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- Attributes
[]Table
Attribute Args - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - Billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - Deletion
Protection boolEnabled - Enables deletion protection for table. Defaults to
false. - Global
Secondary []TableIndexes Global Secondary Index Args - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- Hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - Local
Secondary []TableIndexes Local Secondary Index Args - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- Name string
Unique within a region name of the table.
Optional arguments:
- Point
In TableTime Recovery Point In Time Recovery Args - Enable point-in-time recovery options. See below.
- Range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - Read
Capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - Replicas
[]Table
Replica Type Args - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- Restore
Date stringTime - Time of the point-in-time recovery point to restore.
- Restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- Restore
To boolLatest Time - If set, restores table to the most recent point-in-time recovery point.
- Server
Side TableEncryption Server Side Encryption Args - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- Stream
Enabled bool - Whether Streams are enabled.
- Stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - Table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - map[string]string
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Ttl
Table
Ttl Args - Configuration block for TTL. See below.
- Write
Capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- attributes
List<Table
Attribute> - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode String - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection BooleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary List<TableIndexes Global Secondary Index> - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key String - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary List<TableIndexes Local Secondary Index> - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name String
Unique within a region name of the table.
Optional arguments:
- point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- range
Key String - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity Integer - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
List<Table
Replica> - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date StringTime - Time of the point-in-time recovery point to restore.
- restore
Source StringName - Name of the table to restore. Must match the name of an existing table.
- restore
To BooleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Enabled Boolean - Whether Streams are enabled.
- stream
View StringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class String - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Map<String,String>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - ttl
Table
Ttl - Configuration block for TTL. See below.
- write
Capacity Integer - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- attributes
Table
Attribute[] - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection booleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary TableIndexes Global Secondary Index[] - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary TableIndexes Local Secondary Index[] - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name string
Unique within a region name of the table.
Optional arguments:
- point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity number - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
Table
Replica[] - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date stringTime - Time of the point-in-time recovery point to restore.
- restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- restore
To booleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Enabled boolean - Whether Streams are enabled.
- stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - {[key: string]: string}
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - ttl
Table
Ttl - Configuration block for TTL. See below.
- write
Capacity number - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- attributes
Sequence[Table
Attribute Args] - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing_
mode str - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion_
protection_ boolenabled - Enables deletion protection for table. Defaults to
false. - global_
secondary_ Sequence[Tableindexes Global Secondary Index Args] - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash_
key str - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local_
secondary_ Sequence[Tableindexes Local Secondary Index Args] - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name str
Unique within a region name of the table.
Optional arguments:
- point_
in_ Tabletime_ recovery Point In Time Recovery Args - Enable point-in-time recovery options. See below.
- range_
key str - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read_
capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
Sequence[Table
Replica Args] - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore_
date_ strtime - Time of the point-in-time recovery point to restore.
- restore_
source_ strname - Name of the table to restore. Must match the name of an existing table.
- restore_
to_ boollatest_ time - If set, restores table to the most recent point-in-time recovery point.
- server_
side_ Tableencryption Server Side Encryption Args - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream_
enabled bool - Whether Streams are enabled.
- stream_
view_ strtype - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table_
class str - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Mapping[str, str]
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - ttl
Table
Ttl Args - Configuration block for TTL. See below.
- write_
capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- attributes List<Property Map>
- Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode String - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection BooleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary List<Property Map>Indexes - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key String - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary List<Property Map>Indexes - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name String
Unique within a region name of the table.
Optional arguments:
- point
In Property MapTime Recovery - Enable point-in-time recovery options. See below.
- range
Key String - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity Number - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas List<Property Map>
- Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date StringTime - Time of the point-in-time recovery point to restore.
- restore
Source StringName - Name of the table to restore. Must match the name of an existing table.
- restore
To BooleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side Property MapEncryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Enabled Boolean - Whether Streams are enabled.
- stream
View StringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class String - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Map<String>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - ttl Property Map
- Configuration block for TTL. See below.
- write
Capacity Number - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
Outputs
All input properties are implicitly available as output properties. Additionally, the Table resource produces the following output properties:
- Arn string
- ARN of the table
- Id string
- The provider-assigned unique ID for this managed resource.
- Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- Arn string
- ARN of the table
- Id string
- The provider-assigned unique ID for this managed resource.
- Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn String
- ARN of the table
- id String
- The provider-assigned unique ID for this managed resource.
- stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn string
- ARN of the table
- id string
- The provider-assigned unique ID for this managed resource.
- stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn str
- ARN of the table
- id str
- The provider-assigned unique ID for this managed resource.
- stream_
arn str - ARN of the Table Stream. Only available when
stream_enabled = true - stream_
label str - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn String
- ARN of the table
- id String
- The provider-assigned unique ID for this managed resource.
- stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
Look up Existing Table Resource
Get an existing Table resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: TableState, opts?: CustomResourceOptions): Table@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
attributes: Optional[Sequence[TableAttributeArgs]] = None,
billing_mode: Optional[str] = None,
deletion_protection_enabled: Optional[bool] = None,
global_secondary_indexes: Optional[Sequence[TableGlobalSecondaryIndexArgs]] = None,
hash_key: Optional[str] = None,
local_secondary_indexes: Optional[Sequence[TableLocalSecondaryIndexArgs]] = None,
name: Optional[str] = None,
point_in_time_recovery: Optional[TablePointInTimeRecoveryArgs] = None,
range_key: Optional[str] = None,
read_capacity: Optional[int] = None,
replicas: Optional[Sequence[TableReplicaArgs]] = None,
restore_date_time: Optional[str] = None,
restore_source_name: Optional[str] = None,
restore_to_latest_time: Optional[bool] = None,
server_side_encryption: Optional[TableServerSideEncryptionArgs] = None,
stream_arn: Optional[str] = None,
stream_enabled: Optional[bool] = None,
stream_label: Optional[str] = None,
stream_view_type: Optional[str] = None,
table_class: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
ttl: Optional[TableTtlArgs] = None,
write_capacity: Optional[int] = None) -> Tablefunc GetTable(ctx *Context, name string, id IDInput, state *TableState, opts ...ResourceOption) (*Table, error)public static Table Get(string name, Input<string> id, TableState? state, CustomResourceOptions? opts = null)public static Table get(String name, Output<String> id, TableState state, CustomResourceOptions options)resources: _: type: aws:dynamodb:Table get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- ARN of the table
- Attributes
List<Table
Attribute> - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - Billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - Deletion
Protection boolEnabled - Enables deletion protection for table. Defaults to
false. - Global
Secondary List<TableIndexes Global Secondary Index> - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- Hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - Local
Secondary List<TableIndexes Local Secondary Index> - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- Name string
Unique within a region name of the table.
Optional arguments:
- Point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- Range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - Read
Capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - Replicas
List<Table
Replica> - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- Restore
Date stringTime - Time of the point-in-time recovery point to restore.
- Restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- Restore
To boolLatest Time - If set, restores table to the most recent point-in-time recovery point.
- Server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Enabled bool - Whether Streams are enabled.
- Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - Table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Dictionary<string, string>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Ttl
Table
Ttl - Configuration block for TTL. See below.
- Write
Capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- Arn string
- ARN of the table
- Attributes
[]Table
Attribute Args - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - Billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - Deletion
Protection boolEnabled - Enables deletion protection for table. Defaults to
false. - Global
Secondary []TableIndexes Global Secondary Index Args - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- Hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - Local
Secondary []TableIndexes Local Secondary Index Args - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- Name string
Unique within a region name of the table.
Optional arguments:
- Point
In TableTime Recovery Point In Time Recovery Args - Enable point-in-time recovery options. See below.
- Range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - Read
Capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - Replicas
[]Table
Replica Type Args - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- Restore
Date stringTime - Time of the point-in-time recovery point to restore.
- Restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- Restore
To boolLatest Time - If set, restores table to the most recent point-in-time recovery point.
- Server
Side TableEncryption Server Side Encryption Args - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Enabled bool - Whether Streams are enabled.
- Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - Stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - Table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - map[string]string
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Ttl
Table
Ttl Args - Configuration block for TTL. See below.
- Write
Capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- arn String
- ARN of the table
- attributes
List<Table
Attribute> - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode String - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection BooleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary List<TableIndexes Global Secondary Index> - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key String - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary List<TableIndexes Local Secondary Index> - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name String
Unique within a region name of the table.
Optional arguments:
- point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- range
Key String - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity Integer - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
List<Table
Replica> - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date StringTime - Time of the point-in-time recovery point to restore.
- restore
Source StringName - Name of the table to restore. Must match the name of an existing table.
- restore
To BooleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Enabled Boolean - Whether Streams are enabled.
- stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - stream
View StringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class String - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Map<String,String>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - ttl
Table
Ttl - Configuration block for TTL. See below.
- write
Capacity Integer - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- arn string
- ARN of the table
- attributes
Table
Attribute[] - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode string - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection booleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary TableIndexes Global Secondary Index[] - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key string - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary TableIndexes Local Secondary Index[] - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name string
Unique within a region name of the table.
Optional arguments:
- point
In TableTime Recovery Point In Time Recovery - Enable point-in-time recovery options. See below.
- range
Key string - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity number - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
Table
Replica[] - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date stringTime - Time of the point-in-time recovery point to restore.
- restore
Source stringName - Name of the table to restore. Must match the name of an existing table.
- restore
To booleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side TableEncryption Server Side Encryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Enabled boolean - Whether Streams are enabled.
- stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - stream
View stringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class string - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - {[key: string]: string}
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - ttl
Table
Ttl - Configuration block for TTL. See below.
- write
Capacity number - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- arn str
- ARN of the table
- attributes
Sequence[Table
Attribute Args] - Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing_
mode str - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion_
protection_ boolenabled - Enables deletion protection for table. Defaults to
false. - global_
secondary_ Sequence[Tableindexes Global Secondary Index Args] - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash_
key str - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local_
secondary_ Sequence[Tableindexes Local Secondary Index Args] - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name str
Unique within a region name of the table.
Optional arguments:
- point_
in_ Tabletime_ recovery Point In Time Recovery Args - Enable point-in-time recovery options. See below.
- range_
key str - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read_
capacity int - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas
Sequence[Table
Replica Args] - Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore_
date_ strtime - Time of the point-in-time recovery point to restore.
- restore_
source_ strname - Name of the table to restore. Must match the name of an existing table.
- restore_
to_ boollatest_ time - If set, restores table to the most recent point-in-time recovery point.
- server_
side_ Tableencryption Server Side Encryption Args - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream_
arn str - ARN of the Table Stream. Only available when
stream_enabled = true - stream_
enabled bool - Whether Streams are enabled.
- stream_
label str - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - stream_
view_ strtype - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table_
class str - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Mapping[str, str]
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - ttl
Table
Ttl Args - Configuration block for TTL. See below.
- write_
capacity int - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
- arn String
- ARN of the table
- attributes List<Property Map>
- Set of nested attribute definitions. Only required for
hash_keyandrange_keyattributes. See below. - billing
Mode String - Controls how you are charged for read and write throughput and how you manage capacity. The valid values are
PROVISIONEDandPAY_PER_REQUEST. Defaults toPROVISIONED. - deletion
Protection BooleanEnabled - Enables deletion protection for table. Defaults to
false. - global
Secondary List<Property Map>Indexes - Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. See below.
- hash
Key String - Attribute to use as the hash (partition) key. Must also be defined as an
attribute. See below. - local
Secondary List<Property Map>Indexes - Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. See below.
- name String
Unique within a region name of the table.
Optional arguments:
- point
In Property MapTime Recovery - Enable point-in-time recovery options. See below.
- range
Key String - Attribute to use as the range (sort) key. Must also be defined as an
attribute, see below. - read
Capacity Number - Number of read units for this table. If the
billing_modeisPROVISIONED, this field is required. - replicas List<Property Map>
- Configuration block(s) with DynamoDB Global Tables V2 (version 2019.11.21) replication configurations. See below.
- restore
Date StringTime - Time of the point-in-time recovery point to restore.
- restore
Source StringName - Name of the table to restore. Must match the name of an existing table.
- restore
To BooleanLatest Time - If set, restores table to the most recent point-in-time recovery point.
- server
Side Property MapEncryption - Encryption at rest options. AWS DynamoDB tables are automatically encrypted at rest with an AWS-owned Customer Master Key if this argument isn't specified. See below.
- stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Enabled Boolean - Whether Streams are enabled.
- stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true. - stream
View StringType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are
KEYS_ONLY,NEW_IMAGE,OLD_IMAGE,NEW_AND_OLD_IMAGES. - table
Class String - Storage class of the table.
Valid values are
STANDARDandSTANDARD_INFREQUENT_ACCESS. Default value isSTANDARD. - Map<String>
- A map of tags to populate on the created table. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - ttl Property Map
- Configuration block for TTL. See below.
- write
Capacity Number - Number of write units for this table. If the
billing_modeisPROVISIONED, this field is required.
Supporting Types
TableAttribute, TableAttributeArgs
TableGlobalSecondaryIndex, TableGlobalSecondaryIndexArgs
- Hash
Key string - Name of the hash key in the index; must be defined as an attribute in the resource.
- Name string
- Name of the index.
- Projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - Non
Key List<string>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - Range
Key string - Name of the range key; must be defined
- Read
Capacity int - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- Write
Capacity int - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
- Hash
Key string - Name of the hash key in the index; must be defined as an attribute in the resource.
- Name string
- Name of the index.
- Projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - Non
Key []stringAttributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - Range
Key string - Name of the range key; must be defined
- Read
Capacity int - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- Write
Capacity int - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
- hash
Key String - Name of the hash key in the index; must be defined as an attribute in the resource.
- name String
- Name of the index.
- projection
Type String - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - non
Key List<String>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - range
Key String - Name of the range key; must be defined
- read
Capacity Integer - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- write
Capacity Integer - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
- hash
Key string - Name of the hash key in the index; must be defined as an attribute in the resource.
- name string
- Name of the index.
- projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - non
Key string[]Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - range
Key string - Name of the range key; must be defined
- read
Capacity number - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- write
Capacity number - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
- hash_
key str - Name of the hash key in the index; must be defined as an attribute in the resource.
- name str
- Name of the index.
- projection_
type str - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - non_
key_ Sequence[str]attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - range_
key str - Name of the range key; must be defined
- read_
capacity int - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- write_
capacity int - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
- hash
Key String - Name of the hash key in the index; must be defined as an attribute in the resource.
- name String
- Name of the index.
- projection
Type String - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - non
Key List<String>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table. - range
Key String - Name of the range key; must be defined
- read
Capacity Number - Number of read units for this index. Must be set if billing_mode is set to PROVISIONED.
- write
Capacity Number - Number of write units for this index. Must be set if billing_mode is set to PROVISIONED.
TableLocalSecondaryIndex, TableLocalSecondaryIndexArgs
- Name string
- Name of the index
- Projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - Range
Key string - Name of the range key.
- Non
Key List<string>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
- Name string
- Name of the index
- Projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - Range
Key string - Name of the range key.
- Non
Key []stringAttributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
- name String
- Name of the index
- projection
Type String - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - range
Key String - Name of the range key.
- non
Key List<String>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
- name string
- Name of the index
- projection
Type string - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - range
Key string - Name of the range key.
- non
Key string[]Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
- name str
- Name of the index
- projection_
type str - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - range_
key str - Name of the range key.
- non_
key_ Sequence[str]attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
- name String
- Name of the index
- projection
Type String - One of
ALL,INCLUDEorKEYS_ONLYwhereALLprojects every attribute into the index,KEYS_ONLYprojects into the index only the table and index hash_key and sort_key attributes ,INCLUDEprojects into the index all of the attributes that are defined innon_key_attributesin addition to the attributes that thatKEYS_ONLYproject. - range
Key String - Name of the range key.
- non
Key List<String>Attributes - Only required with
INCLUDEas a projection type; a list of attributes to project into the index. These do not need to be defined as attributes on the table.
TablePointInTimeRecovery, TablePointInTimeRecoveryArgs
- Enabled bool
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
- Enabled bool
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
- enabled Boolean
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
- enabled boolean
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
- enabled bool
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
- enabled Boolean
- Whether to enable point-in-time recovery. It can take 10 minutes to enable for new tables. If the
point_in_time_recoveryblock is not provided, this defaults tofalse.
TableReplica, TableReplicaArgs
- Region
Name string - Region name of the replica.
- Arn string
- ARN of the table
- Kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - Point
In boolTime Recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - bool
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
- Region
Name string - Region name of the replica.
- Arn string
- ARN of the table
- Kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - Point
In boolTime Recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - bool
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - Stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - Stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
- region
Name String - Region name of the replica.
- arn String
- ARN of the table
- kms
Key StringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - point
In BooleanTime Recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - Boolean
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
- region
Name string - Region name of the replica.
- arn string
- ARN of the table
- kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - point
In booleanTime Recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - boolean
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - stream
Arn string - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label string - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
- region_
name str - Region name of the replica.
- arn str
- ARN of the table
- kms_
key_ strarn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - point_
in_ booltime_ recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - bool
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - stream_
arn str - ARN of the Table Stream. Only available when
stream_enabled = true - stream_
label str - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
- region
Name String - Region name of the replica.
- arn String
- ARN of the table
- kms
Key StringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys. - point
In BooleanTime Recovery - Whether to enable Point In Time Recovery for the replica. Default is
false. - Boolean
- Whether to propagate the global table's tags to a replica. Default is
false. Changes to tags only move in one direction: from global (source) to replica. In other words, tag drift on a replica will not trigger an update. Tag or replica changes on the global table, whether from drift or configuration changes, are propagated to replicas. Changing fromtruetofalseon a subsequentapplymeans replica tags are left as they were, unmanaged, not deleted. - stream
Arn String - ARN of the Table Stream. Only available when
stream_enabled = true - stream
Label String - Timestamp, in ISO 8601 format, for this stream. Note that this timestamp is not a unique identifier for the stream on its own. However, the combination of AWS customer ID, table name and this field is guaranteed to be unique. It can be used for creating CloudWatch Alarms. Only available when
stream_enabled = true.
TableServerSideEncryption, TableServerSideEncryptionArgs
- Enabled bool
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - Kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
- Enabled bool
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - Kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
- enabled Boolean
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - kms
Key StringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
- enabled boolean
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - kms
Key stringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
- enabled bool
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - kms_
key_ strarn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
- enabled Boolean
- Whether or not to enable encryption at rest using an AWS managed KMS customer master key (CMK). If
enabledisfalsethen server-side encryption is set to AWS-owned key (shown asDEFAULTin the AWS console). Potentially confusingly, ifenabledistrueand nokms_key_arnis specified then server-side encryption is set to the default KMS-managed key (shown asKMSin the AWS console). The AWS KMS documentation explains the difference between AWS-owned and KMS-managed keys. - kms
Key StringArn - ARN of the CMK that should be used for the AWS KMS encryption. This argument should only be used if the key is different from the default KMS-managed DynamoDB key,
alias/aws/dynamodb. Note: This attribute will not be populated with the ARN of default keys.
TableTtl, TableTtlArgs
- Attribute
Name string - Name of the table attribute to store the TTL timestamp in.
- Enabled bool
- Whether TTL is enabled.
- Attribute
Name string - Name of the table attribute to store the TTL timestamp in.
- Enabled bool
- Whether TTL is enabled.
- attribute
Name String - Name of the table attribute to store the TTL timestamp in.
- enabled Boolean
- Whether TTL is enabled.
- attribute
Name string - Name of the table attribute to store the TTL timestamp in.
- enabled boolean
- Whether TTL is enabled.
- attribute_
name str - Name of the table attribute to store the TTL timestamp in.
- enabled bool
- Whether TTL is enabled.
- attribute
Name String - Name of the table attribute to store the TTL timestamp in.
- enabled Boolean
- Whether TTL is enabled.
Import
DynamoDB tables can be imported using the name, e.g.,
$ pulumi import aws:dynamodb/table:Table basic-dynamodb-table GameScores
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Tuesday, Mar 10, 2026 by Pulumi
