Welcome to Retool! We're a fast way to build custom internal software.

You'll find the 5 minute demo, quickstart guide, and documentation for each of our connectors and components here. If you've got any questions -- chat with us on the bottom right!

Get Started    Guides

DynamoDB Integration

Querying Amazon DynamoDB with Retool.

DynamoDB is Amazon's non-relational managed database. Retool connects with DynamoDB, allowing you to access your data from your internal tools.

Connecting DynamoDB

First, go to IAM and create a new user called retool-dynamodb. Only enable "programmatic access".

Click "next" to grant the account permissions. It's easiest to grant the account full DynamoDB permissions, but you can restrict permissions further. You'll need to create a new policy and attach this policy to the user. Here's an example JSON IAM policy, which you can modify to your security needs.

    "Version": "2012-10-17",
    "Statement": [
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
            "Resource": "*"

Once you've created the user, head back to Retool. To connect to DynamoDB, you will need your AWS Access Key, Secret Key, and the region of your DynamoDB instance. Go to Resources, click Add, and select DynamoDB from the options.

Configuration screen for DynamoDB.

Configuration screen for DynamoDB.

After picking the region and filling out your credentials, press Save to test the connection. Now your resource will be available for queries.

Querying DynamoDB

Once your resource is set up, you can make DynamoDB queries in your applications. Create a new application or open up an existing one, and open the query editor. From the resource options, pick the newly created DynamoDB resource. Your interface will look like this.

On the right side, you can see a list of tables available to you. In the example database, there are customers, products, and sellers tables. On the left side at the top, you can select the table you want to query and the type of query you want to run. We support CRUD operations on individual items, querying tables and scanning tables. You can look at the AWS DynamoDB documentation for more information on the fields.

If you want finer control over your query, you can use the JSON parameter editor to directly edit the parameters object passed to the query (with fields like TableName, etc.). This way, you can copy example queries directly from your previous applications, or the documentation.