Error: 'dynamodb' object has no attribute 'table'

Answered by Rafal Wilinski
What's Causing This Error
This error occurs in the AWS Python SDK when obtaining a table resource using the DynamoDB "client" rather than the "resource."
import boto3 // error occurs when "boto3.client" is used dynamodb = boto3.client('dynamodb') table = dynamodb.Table('my-custom-table')
The snippet above uses the boto3.client('dynamodb')
that causes the error.
Solution - Here's How To Resolve It
Use the DynamoDB "resource" rather than the "client" to resolve the error.
import boto3 // no error with "boto3.resource" dynamodb = boto3.resource('dynamodb') table = dynamodb.Table('my-custom-table') // perform operations with the table as there is no error
Other Common DynamoDB Errors (with Solutions)
- dynamodb cannot convert undefined or null to object
- dynamodb local unable to locate credentials
- Error retrieving DynamoDB table item validation exception
- dynamodb unable to locate property for key attribute
- dynamodb unable to locate credentials
- dynamodb request is missing authentication token
- dynamodb property projection cannot be empty
- DynamoDB console unable to delete this item
- dynamodb local unable to open database file
- error dynamodb streams must be enabled on the table
- DynamoDB scan limit not working
- dynamodb the table does not have the specified index
- DynamoDB attribute not empty
- DynamoDB stream no records processed
- the dynamodb service does not have version
Spend less time in the AWS console, use Dynobase.
Try 7-day free trial. No strings attached.
Product Features
DynamoDB Tools
DynamoDB Info
© 2025 Dynobase