AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Returns information about the table, including the current status of the table, when it was created, the primary key schema, and any indexes on the table.

If you issue a DescribeTable request immediately after a CreateTable request, DynamoDB might return a ResourceNotFoundException. This is because DescribeTable uses an eventually consistent query, and the metadata for your table might not be available at that moment. Wait for a few seconds, and then try the DescribeTable request again.


For .NET Core, PCL and Unity this operation is only available in asynchronous form. Please refer to DescribeTableAsync.

Namespace: Amazon.DynamoDBv2
Assembly: AWSSDK.DynamoDBv2.dll
Version: 3.x.y.z


public virtual DescribeTableResponse DescribeTable(
         DescribeTableRequest request
Type: Amazon.DynamoDBv2.Model.DescribeTableRequest

Container for the necessary parameters to execute the DescribeTable service method.

Return Value
The response from the DescribeTable service method, as returned by DynamoDB.


InternalServerErrorException An error occurred on the server side.
ResourceNotFoundException The operation tried to access a nonexistent table or index. The resource might not be specified correctly, or its status might not be ACTIVE.


This example shows how to get a description for an existing table.

DescribeTable sample

// Create a client
AmazonDynamoDBClient client = new AmazonDynamoDBClient();

// Create DescribeTable request
DescribeTableRequest request = new DescribeTableRequest
    TableName = "SampleTable"

// Issue DescribeTable request and retrieve the table description
TableDescription tableDescription = client.DescribeTable(request).Table;

// View new table properties
Console.WriteLine("Table name: {0}", tableDescription.TableName);
Console.WriteLine("Creation time: {0}", tableDescription.CreationDateTime);
Console.WriteLine("Item count: {0}", tableDescription.ItemCount);
Console.WriteLine("Table size (bytes): {0}", tableDescription.TableSizeBytes);
Console.WriteLine("Table status: {0}", tableDescription.TableStatus);
// List table key schema
List tableSchema = tableDescription.KeySchema;
for (int i = 0; i < tableSchema.Count; i++)
    KeySchemaElement element = tableSchema[i];
    Console.WriteLine("Key: Name = {0}, KeyType = {1}",
        element.AttributeName, element.KeyType);

// List attribute definitions
List attributeDefinitions = tableDescription.AttributeDefinitions;
for (int i = 0; i < attributeDefinitions.Count; i++)
    AttributeDefinition definition = attributeDefinitions[i];
    Console.WriteLine("Attribute: Name = {0}, Type = {1}",
        definition.AttributeName, definition.AttributeType);
Console.WriteLine("Throughput: Reads = {0}, Writes = {1}",


Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms

Supported Versions: 4.6 and above
Supported Platforms: Android, iOS, Standalone

See Also