# DynamoDB Service API Requests use [`CloudEnvAction`](../../../models.py): `service`, `operation`, and `payload` (boto3 parameters for the operation). Operations are enforced by IAM as `dynamodb:` (see adapter). ## Operations ### CreateTable _Boto3 client method: `create_table`_ **Other boto3 parameters (optional):** `AttributeDefinitions, BillingMode, DeletionProtectionEnabled, GlobalSecondaryIndexes, GlobalTableSettingsReplicationMode, GlobalTableSourceArn, KeySchema, LocalSecondaryIndexes, OnDemandThroughput, ProvisionedThroughput, ResourcePolicy, SSESpecification, StreamSpecification, TableClass, Tags, WarmThroughput` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "CreateTable", "payload": { "TableName": "example-tablearn" } } ``` --- ### UpdateTable _Boto3 client method: `update_table`_ **Other boto3 parameters (optional):** `AttributeDefinitions, BillingMode, DeletionProtectionEnabled, GlobalSecondaryIndexUpdates, GlobalTableSettingsReplicationMode, GlobalTableWitnessUpdates, MultiRegionConsistency, OnDemandThroughput, ProvisionedThroughput, ReplicaUpdates, SSESpecification, StreamSpecification, TableClass, WarmThroughput` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "UpdateTable", "payload": { "TableName": "example-tablearn" } } ``` --- ### DeleteTable _Boto3 client method: `delete_table`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DeleteTable", "payload": { "TableName": "example-tablearn" } } ``` --- ### DescribeTable _Boto3 client method: `describe_table`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DescribeTable", "payload": { "TableName": "example-tablearn" } } ``` --- ### ListTables _Boto3 client method: `list_tables`_ **Other boto3 parameters (optional):** `ExclusiveStartTableName, Limit` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "ListTables", "payload": {} } ``` --- ### PutItem _Boto3 client method: `put_item`_ **Other boto3 parameters (optional):** `ConditionExpression, ConditionalOperator, Expected, ExpressionAttributeNames, ExpressionAttributeValues, ReturnConsumedCapacity, ReturnItemCollectionMetrics, ReturnValues, ReturnValuesOnConditionCheckFailure` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "PutItem", "payload": { "TableName": "example-tablearn", "Item": { "exampleKey": {} } } } ``` --- ### GetItem _Boto3 client method: `get_item`_ **Other boto3 parameters (optional):** `AttributesToGet, ConsistentRead, ExpressionAttributeNames, ProjectionExpression, ReturnConsumedCapacity` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "GetItem", "payload": { "TableName": "example-tablearn", "Key": { "exampleKey": {} } } } ``` --- ### DeleteItem _Boto3 client method: `delete_item`_ **Other boto3 parameters (optional):** `ConditionExpression, ConditionalOperator, Expected, ExpressionAttributeNames, ExpressionAttributeValues, ReturnConsumedCapacity, ReturnItemCollectionMetrics, ReturnValues, ReturnValuesOnConditionCheckFailure` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DeleteItem", "payload": { "TableName": "example-tablearn", "Key": { "exampleKey": {} } } } ``` --- ### UpdateItem _Boto3 client method: `update_item`_ **Other boto3 parameters (optional):** `AttributeUpdates, ConditionExpression, ConditionalOperator, Expected, ExpressionAttributeNames, ExpressionAttributeValues, ReturnConsumedCapacity, ReturnItemCollectionMetrics, ReturnValues, ReturnValuesOnConditionCheckFailure, UpdateExpression` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "UpdateItem", "payload": { "TableName": "example-tablearn", "Key": { "exampleKey": {} } } } ``` --- ### Query _Boto3 client method: `query`_ **Other boto3 parameters (optional):** `AttributesToGet, ConditionalOperator, ConsistentRead, ExclusiveStartKey, ExpressionAttributeNames, ExpressionAttributeValues, FilterExpression, IndexName, KeyConditionExpression, KeyConditions, Limit, ProjectionExpression, QueryFilter, ReturnConsumedCapacity, ScanIndexForward, Select` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "Query", "payload": { "TableName": "example-tablearn" } } ``` --- ### Scan _Boto3 client method: `scan`_ **Other boto3 parameters (optional):** `AttributesToGet, ConditionalOperator, ConsistentRead, ExclusiveStartKey, ExpressionAttributeNames, ExpressionAttributeValues, FilterExpression, IndexName, Limit, ProjectionExpression, ReturnConsumedCapacity, ScanFilter, Segment, Select, TotalSegments` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "Scan", "payload": { "TableName": "example-tablearn" } } ``` --- ### BatchWriteItem _Boto3 client method: `batch_write_item`_ **Other boto3 parameters (optional):** `ReturnConsumedCapacity, ReturnItemCollectionMetrics` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "BatchWriteItem", "payload": { "RequestItems": { "exampleKey": [ {} ] } } } ``` --- ### BatchGetItem _Boto3 client method: `batch_get_item`_ **Other boto3 parameters (optional):** `ReturnConsumedCapacity` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "BatchGetItem", "payload": { "RequestItems": { "exampleKey": { "Keys": [ { "exampleKey": {} } ] } } } } ``` --- ### TransactWriteItems _Boto3 client method: `transact_write_items`_ **Other boto3 parameters (optional):** `ClientRequestToken, ReturnConsumedCapacity, ReturnItemCollectionMetrics` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "TransactWriteItems", "payload": { "TransactItems": [ {} ] } } ``` --- ### TransactGetItems _Boto3 client method: `transact_get_items`_ **Other boto3 parameters (optional):** `ReturnConsumedCapacity` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "TransactGetItems", "payload": { "TransactItems": [ { "Get": { "Key": { "exampleKey": {} }, "TableName": "example-tablearn" } } ] } } ``` --- ### DescribeTimeToLive _Boto3 client method: `describe_time_to_live`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DescribeTimeToLive", "payload": { "TableName": "example-tablearn" } } ``` --- ### UpdateTimeToLive _Boto3 client method: `update_time_to_live`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "UpdateTimeToLive", "payload": { "TableName": "example-tablearn", "TimeToLiveSpecification": { "Enabled": false, "AttributeName": "example-timetoliveattributename" } } } ``` --- ### DescribeContinuousBackups _Boto3 client method: `describe_continuous_backups`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DescribeContinuousBackups", "payload": { "TableName": "example-tablearn" } } ``` --- ### UpdateContinuousBackups _Boto3 client method: `update_continuous_backups`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "UpdateContinuousBackups", "payload": { "TableName": "example-tablearn", "PointInTimeRecoverySpecification": { "PointInTimeRecoveryEnabled": false } } } ``` --- ### DescribeEndpoints _Boto3 client method: `describe_endpoints`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "DescribeEndpoints", "payload": {} } ``` --- ### TagResource _Boto3 client method: `tag_resource`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "TagResource", "payload": { "ResourceArn": "example-resourcearnstring", "Tags": [ { "Key": "example-tagkeystring", "Value": "example-tagvaluestring" } ] } } ``` --- ### UntagResource _Boto3 client method: `untag_resource`_ ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "UntagResource", "payload": { "ResourceArn": "example-resourcearnstring", "TagKeys": [ "example-tagkeystring" ] } } ``` --- ### ListTagsOfResource _Boto3 client method: `list_tags_of_resource`_ **Other boto3 parameters (optional):** `NextToken` ```bash curl -X POST http://localhost:8000/step \ -H "Content-Type: application/json" \ -d @- <<'EOF' { "service": "dynamodb", "operation": "ListTagsOfResource", "payload": { "ResourceArn": "example-resourcearnstring" } } ``` ---