---
title: Getting Started with Datadog
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Infrastructure > Datadog Resource Catalog
---

# aws_dynamodb_backup{% #aws_dynamodb_backup %}

## `account_id`{% #account_id %}

**Type**: `STRING`

## `backup_details`{% #backup_details %}

**Type**: `STRUCT`**Provider name**: `BackupDetails`**Description**: Contains the details of the backup created for the table.

- `backup_arn`**Type**: `STRING`**Provider name**: `BackupArn`**Description**: ARN associated with the backup.
- `backup_creation_date_time`**Type**: `TIMESTAMP`**Provider name**: `BackupCreationDateTime`**Description**: Time at which the backup was created. This is the request time of the backup.
- `backup_expiry_date_time`**Type**: `TIMESTAMP`**Provider name**: `BackupExpiryDateTime`**Description**: Time at which the automatic on-demand backup created by DynamoDB will expire. This `SYSTEM` on-demand backup expires automatically 35 days after its creation.
- `backup_name`**Type**: `STRING`**Provider name**: `BackupName`**Description**: Name of the requested backup.
- `backup_size_bytes`**Type**: `INT64`**Provider name**: `BackupSizeBytes`**Description**: Size of the backup in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.
- `backup_status`**Type**: `STRING`**Provider name**: `BackupStatus`**Description**: Backup can be in one of the following states: CREATING, ACTIVE, DELETED.
- `backup_type`**Type**: `STRING`**Provider name**: `BackupType`**Description**: BackupType:
  - `USER` - You create and manage these using the on-demand backup feature.
  - `SYSTEM` - If you delete a table with point-in-time recovery enabled, a `SYSTEM` backup is automatically created and is retained for 35 days (at no additional cost). System backups allow you to restore the deleted table to the state it was in just before the point of deletion.
  - `AWS_BACKUP` - On-demand backup created by you from Backup service.

## `source_table_details`{% #source_table_details %}

**Type**: `STRUCT`**Provider name**: `SourceTableDetails`**Description**: Contains the details of the table when the backup was created.

- `billing_mode`**Type**: `STRING`**Provider name**: `BillingMode`**Description**: Controls how you are charged for read and write throughput and how you manage capacity. This setting can be changed later.
  - `PROVISIONED` - Sets the read/write capacity mode to `PROVISIONED`. We recommend using `PROVISIONED` for predictable workloads.
  - `PAY_PER_REQUEST` - Sets the read/write capacity mode to `PAY_PER_REQUEST`. We recommend using `PAY_PER_REQUEST` for unpredictable workloads.
- `item_count`**Type**: `INT64`**Provider name**: `ItemCount`**Description**: Number of items in the table. Note that this is an approximate value.
- `key_schema`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `KeySchema`**Description**: Schema of the table.
  - `attribute_name`**Type**: `STRING`**Provider name**: `AttributeName`**Description**: The name of a key attribute.
  - `key_type`**Type**: `STRING`**Provider name**: `KeyType`**Description**: The role that this key attribute will assume:
    - `HASH` - partition key
    - `RANGE` - sort key
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
- `on_demand_throughput`**Type**: `STRUCT`**Provider name**: `OnDemandThroughput`
  - `max_read_request_units`**Type**: `INT64`**Provider name**: `MaxReadRequestUnits`**Description**: Maximum number of read request units for the specified table. To specify a maximum `OnDemandThroughput` on your table, set the value of `MaxReadRequestUnits` as greater than or equal to 1. To remove the maximum `OnDemandThroughput` that is currently set on your table, set the value of `MaxReadRequestUnits` to -1.
  - `max_write_request_units`**Type**: `INT64`**Provider name**: `MaxWriteRequestUnits`**Description**: Maximum number of write request units for the specified table. To specify a maximum `OnDemandThroughput` on your table, set the value of `MaxWriteRequestUnits` as greater than or equal to 1. To remove the maximum `OnDemandThroughput` that is currently set on your table, set the value of `MaxWriteRequestUnits` to -1.
- `provisioned_throughput`**Type**: `STRUCT`**Provider name**: `ProvisionedThroughput`**Description**: Read IOPs and Write IOPS on the table when the backup was created.
  - `read_capacity_units`**Type**: `INT64`**Provider name**: `ReadCapacityUnits`**Description**: The maximum number of strongly consistent reads consumed per second before DynamoDB returns a `ThrottlingException`. For more information, see [Specifying Read and Write Requirements](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html) in the Amazon DynamoDB Developer Guide. If read/write capacity mode is `PAY_PER_REQUEST` the value is set to 0.
  - `write_capacity_units`**Type**: `INT64`**Provider name**: `WriteCapacityUnits`**Description**: The maximum number of writes consumed per second before DynamoDB returns a `ThrottlingException`. For more information, see [Specifying Read and Write Requirements](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html) in the Amazon DynamoDB Developer Guide. If read/write capacity mode is `PAY_PER_REQUEST` the value is set to 0.
- `table_arn`**Type**: `STRING`**Provider name**: `TableArn`**Description**: ARN of the table for which backup was created.
- `table_creation_date_time`**Type**: `TIMESTAMP`**Provider name**: `TableCreationDateTime`**Description**: Time when the source table was created.
- `table_id`**Type**: `STRING`**Provider name**: `TableId`**Description**: Unique identifier for the table for which the backup was created.
- `table_name`**Type**: `STRING`**Provider name**: `TableName`**Description**: The name of the table for which the backup was created.
- `table_size_bytes`**Type**: `INT64`**Provider name**: `TableSizeBytes`**Description**: Size of the table in bytes. Note that this is an approximate value.

## `source_table_feature_details`{% #source_table_feature_details %}

**Type**: `STRUCT`**Provider name**: `SourceTableFeatureDetails`**Description**: Contains the details of the features enabled on the table when the backup was created. For example, LSIs, GSIs, streams, TTL.

- `global_secondary_indexes`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `GlobalSecondaryIndexes`**Description**: Represents the GSI properties for the table when the backup was created. It includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the GSIs on the table at the time of backup.
  - `index_name`**Type**: `STRING`**Provider name**: `IndexName`**Description**: The name of the global secondary index.
  - `key_schema`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `KeySchema`**Description**: The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types:
    - `HASH` - partition key
    - `RANGE` - sort key
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
    - `attribute_name`**Type**: `STRING`**Provider name**: `AttributeName`**Description**: The name of a key attribute.
    - `key_type`**Type**: `STRING`**Provider name**: `KeyType`**Description**: The role that this key attribute will assume:
      - `HASH` - partition key
      - `RANGE` - sort key
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
  - `on_demand_throughput`**Type**: `STRUCT`**Provider name**: `OnDemandThroughput`
    - `max_read_request_units`**Type**: `INT64`**Provider name**: `MaxReadRequestUnits`**Description**: Maximum number of read request units for the specified table. To specify a maximum `OnDemandThroughput` on your table, set the value of `MaxReadRequestUnits` as greater than or equal to 1. To remove the maximum `OnDemandThroughput` that is currently set on your table, set the value of `MaxReadRequestUnits` to -1.
    - `max_write_request_units`**Type**: `INT64`**Provider name**: `MaxWriteRequestUnits`**Description**: Maximum number of write request units for the specified table. To specify a maximum `OnDemandThroughput` on your table, set the value of `MaxWriteRequestUnits` as greater than or equal to 1. To remove the maximum `OnDemandThroughput` that is currently set on your table, set the value of `MaxWriteRequestUnits` to -1.
  - `projection`**Type**: `STRUCT`**Provider name**: `Projection`**Description**: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
    - `non_key_attributes`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `NonKeyAttributes`**Description**: Represents the non-key attribute names which will be projected into the index. For global and local secondary indexes, the total count of `NonKeyAttributes` summed across all of the secondary indexes, must not exceed 100. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total. This limit only applies when you specify the ProjectionType of `INCLUDE`. You still can specify the ProjectionType of `ALL` to project all attributes from the source table, even if the table has more than 100 attributes.
    - `projection_type`**Type**: `STRING`**Provider name**: `ProjectionType`**Description**: The set of attributes that are projected into the index:
      - `KEYS_ONLY` - Only the index and primary keys are projected into the index.
      - `INCLUDE` - In addition to the attributes described in `KEYS_ONLY`, the secondary index will include other non-key attributes that you specify.
      - `ALL` - All of the table attributes are projected into the index.
When using the DynamoDB console, `ALL` is selected by default.
  - `provisioned_throughput`**Type**: `STRUCT`**Provider name**: `ProvisionedThroughput`**Description**: Represents the provisioned throughput settings for the specified global secondary index.
    - `read_capacity_units`**Type**: `INT64`**Provider name**: `ReadCapacityUnits`**Description**: The maximum number of strongly consistent reads consumed per second before DynamoDB returns a `ThrottlingException`. For more information, see [Specifying Read and Write Requirements](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html) in the Amazon DynamoDB Developer Guide. If read/write capacity mode is `PAY_PER_REQUEST` the value is set to 0.
    - `write_capacity_units`**Type**: `INT64`**Provider name**: `WriteCapacityUnits`**Description**: The maximum number of writes consumed per second before DynamoDB returns a `ThrottlingException`. For more information, see [Specifying Read and Write Requirements](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html) in the Amazon DynamoDB Developer Guide. If read/write capacity mode is `PAY_PER_REQUEST` the value is set to 0.
- `local_secondary_indexes`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `LocalSecondaryIndexes`**Description**: Represents the LSI properties for the table when the backup was created. It includes the IndexName, KeySchema and Projection for the LSIs on the table at the time of backup.
  - `index_name`**Type**: `STRING`**Provider name**: `IndexName`**Description**: Represents the name of the local secondary index.
  - `key_schema`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `KeySchema`**Description**: The complete key schema for a local secondary index, which consists of one or more pairs of attribute names and key types:
    - `HASH` - partition key
    - `RANGE` - sort key
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
    - `attribute_name`**Type**: `STRING`**Provider name**: `AttributeName`**Description**: The name of a key attribute.
    - `key_type`**Type**: `STRING`**Provider name**: `KeyType`**Description**: The role that this key attribute will assume:
      - `HASH` - partition key
      - `RANGE` - sort key
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. The sort key of an item is also known as its range attribute. The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
  - `projection`**Type**: `STRUCT`**Provider name**: `Projection`**Description**: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
    - `non_key_attributes`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `NonKeyAttributes`**Description**: Represents the non-key attribute names which will be projected into the index. For global and local secondary indexes, the total count of `NonKeyAttributes` summed across all of the secondary indexes, must not exceed 100. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total. This limit only applies when you specify the ProjectionType of `INCLUDE`. You still can specify the ProjectionType of `ALL` to project all attributes from the source table, even if the table has more than 100 attributes.
    - `projection_type`**Type**: `STRING`**Provider name**: `ProjectionType`**Description**: The set of attributes that are projected into the index:
      - `KEYS_ONLY` - Only the index and primary keys are projected into the index.
      - `INCLUDE` - In addition to the attributes described in `KEYS_ONLY`, the secondary index will include other non-key attributes that you specify.
      - `ALL` - All of the table attributes are projected into the index.
When using the DynamoDB console, `ALL` is selected by default.
- `sse_description`**Type**: `STRUCT`**Provider name**: `SSEDescription`**Description**: The description of the server-side encryption status on the table when the backup was created.
  - `inaccessible_encryption_date_time`**Type**: `TIMESTAMP`**Provider name**: `InaccessibleEncryptionDateTime`**Description**: Indicates the time, in UNIX epoch date format, when DynamoDB detected that the table's KMS key was inaccessible. This attribute will automatically be cleared when DynamoDB detects that the table's KMS key is accessible again. DynamoDB will initiate the table archival process when table's KMS key remains inaccessible for more than seven days from this date.
  - `kms_master_key_arn`**Type**: `STRING`**Provider name**: `KMSMasterKeyArn`**Description**: The KMS key ARN used for the KMS encryption.
  - `sse_type`**Type**: `STRING`**Provider name**: `SSEType`**Description**: Server-side encryption type. The only supported value is:
    - `KMS` - Server-side encryption that uses Key Management Service. The key is stored in your account and is managed by KMS (KMS charges apply).
  - `status`**Type**: `STRING`**Provider name**: `Status`**Description**: Represents the current state of server-side encryption. The only supported values are:
    - `ENABLED` - Server-side encryption is enabled.
    - `UPDATING` - Server-side encryption is being updated.
- `stream_description`**Type**: `STRUCT`**Provider name**: `StreamDescription`**Description**: Stream settings on the table when the backup was created.
  - `stream_enabled`**Type**: `BOOLEAN`**Provider name**: `StreamEnabled`**Description**: Indicates whether DynamoDB Streams is enabled (true) or disabled (false) on the table.
  - `stream_view_type`**Type**: `STRING`**Provider name**: `StreamViewType`**Description**: When an item in the table is modified, `StreamViewType` determines what information is written to the stream for this table. Valid values for `StreamViewType` are:
    - `KEYS_ONLY` - Only the key attributes of the modified item are written to the stream.
    - `NEW_IMAGE` - The entire item, as it appears after it was modified, is written to the stream.
    - `OLD_IMAGE` - The entire item, as it appeared before it was modified, is written to the stream.
    - `NEW_AND_OLD_IMAGES` - Both the new and the old item images of the item are written to the stream.
- `time_to_live_description`**Type**: `STRUCT`**Provider name**: `TimeToLiveDescription`**Description**: Time to Live settings on the table when the backup was created.
  - `attribute_name`**Type**: `STRING`**Provider name**: `AttributeName`**Description**: The name of the TTL attribute for items in the table.
  - `time_to_live_status`**Type**: `STRING`**Provider name**: `TimeToLiveStatus`**Description**: The TTL status for the table.

## `tags`{% #tags %}

**Type**: `UNORDERED_LIST_STRING`
