Resources · n8n integration

AWS DynamoDB n8n integrationAutomate AWS DynamoDB with n8n.

Your workflow needs to read and write DynamoDB rows without touching the AWS SDK. The AWS DynamoDB n8n integration covers 1 resource and 4 item operations, from upsert to paginated queries. No DynamoDB trigger exists, so a Schedule or Webhook node opens the run.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the AWS DynamoDB n8n integration actually cover?

The AWS DynamoDB node ships inside n8n and speaks to the DynamoDB API on your behalf. It exposes one resource, Item, and 4 operations on it: create or update, delete, get, and get many. You point it at a table, hand it a primary key or a key condition, and it writes or returns rows. Everything happens with an AWS credential you store once in n8n.

Three shapes of workflow come back again and again. The first one is a write path: a form, a webhook or another node produces data, and item.upsert drops it into the table, replacing the row when the primary key already exists. The second is a lookup: mid-workflow, item.get fetches a single row by key so the next node can branch on it. The third is a batch read: item.getAll runs a query or a scan, and the results feed a report, an export, or a sync toward a sheet.

That third shape is where DynamoDB tends to meet the rest of a stack. Rows pulled from a table land in Google Sheets for a team that lives in spreadsheets, in Airtable when someone needs a view with filters, or in Postgres when the reporting side runs on SQL. The other direction works too: a row created in Supabase gets mirrored into DynamoDB by the upsert operation.

Where the node stops, HTTP Request takes over. The DynamoDB API has many endpoints; the n8n node targets items, not tables, indexes or streams. Anything outside those 4 operations goes through the generic HTTP Request node, which can reuse the same AWS credential through predefined authentication. That fallback is worth knowing before you conclude something is impossible.

The second limit is the trigger. There is no AWS DynamoDB trigger node in n8n, so nothing pushes a change into a workflow on its own. You schedule a run with the Schedule Trigger and query what moved, or you let the service that writes the data call an n8n Webhook, a URL n8n exposes and any external system can hit. Teams comparing platforms before they commit usually start with the n8n review.

One last practical note: the node reads and writes items, it does not create the table. The table, its partition key and its sort key exist in AWS before the workflow runs, and the Table Name or ID dropdown lists what your credential can see.

Connect

How do you connect AWS DynamoDB to n8n?

  1. 01

    Pick your AWS credential type

    n8n offers two credential types for AWS. AWS (IAM) authenticates with an access key, meaning an Access Key ID plus a Secret Access Key. AWS (Assume Role) authenticates by assuming an IAM role through AWS STS; the keys used for the AssumeRole call are typed in by hand or read automatically from the environment n8n runs in. Both work with the DynamoDB node, so the choice is about how your AWS account is organized.

  2. 02

    Create the access key in IAM

    Log in to the IAM console, open your user name in the upper right, then Security credentials. In the Access keys section, select Create access key, choose your use case on the best practices page (pick Other if it does not prompt you), then Next. Set a description tag such as n8n integration so the key is easy to spot later, and select Create access key.

  3. 03

    Fill the credential in n8n

    Back in n8n, select your AWS Region, then reveal the Access Key ID and the Secret Access Key in the console and paste them in. A credential is created once in the Credentials menu and reused across every workflow; the DynamoDB node then offers it in its dropdown.

Actions

What can the AWS DynamoDB node do?

The AWS DynamoDB node exposes 4 operations across 1 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.

Resources × operations matrix
ResourceGetGet ManyDeleteCreate or Update
Item

Item

4 operations
01

Create or update an item

item.upsert

What you see in n8n

Notes & use cases

One call writes the row, and DynamoDB overwrites it when the primary key already exists. No branch between an insert path and an update path.

Key parameters

  • Table Name or ID: choose the table from the list, or pass its identifier with an expression such as {{ $json.table }}.
  • Data to Send: autoMapInputData sends the incoming item as it arrives when its properties already match the column names; defineBelow lets you set each value yourself in Fields to Send.
  • Automatically Parse Numbers: enabled, a value like "42" is stored as DynamoDB Number (N); disabled, it stays a String (S).
Use cases
mirror every new signup into a users table, or refresh a stock row each time the supplier feed changes.
02

Delete an item

item.delete

What you see in n8n

Notes & use cases

Removal targets one row through its primary key, and the node can hand the deleted content back before it disappears.

Key parameters

  • Keys: the item's primary key. A simple primary key needs the partition key value only; a composite one needs the partition key and the sort key.
  • Return: ALL_OLD returns the content of the old item, NONE returns nothing.
  • Condition Expression, under Additional Fields: the delete only goes through if the condition is satisfied, with Expression Attribute Values supplying the substitution tokens it references.
Use cases
purge a session row once a logout webhook fires, keeping the old values to write an audit line.
03

Get an item

item.get

What you see in n8n

Notes & use cases

A single row comes back from its key, which is what you want in the middle of a workflow when the next node has to decide something.

Key parameters

  • Keys: the partition key value, plus the sort key value when the table uses a composite primary key.
  • Select: ALL_ATTRIBUTES for the whole row, ALL_PROJECTED_ATTRIBUTES, or SPECIFIC_ATTRIBUTES combined with Attributes to Select.
  • Read Type: stronglyConsistentRead or eventuallyConsistentRead, depending on whether a read right after a write has to see it.
Use cases
load a customer record before an email node, and stop the run when the row is missing.
04

Get many items

item.getAll

What you see in n8n

Notes & use cases

Rows arrive in batch, either through a query on the partition key or through a full scan of the table.

Key parameters

  • Key Condition Expression: required, an equality test on a single partition key value, written as partitionKeyName = :partitionkeyval.
  • Expression Attribute Values: required, the substitution tokens the expression above refers to.
  • Scan: enabled, the node scans instead of querying. Return All chains the API pages until the table is exhausted; disabled, Limit caps the number of rows returned.
Use cases
export yesterday's orders into a weekly report, or feed a batch of rows to an enrichment step.
Need help

Need help automating AWS DynamoDB with n8n?

A person reads every message.

FAQ

AWS DynamoDB and n8n: common questions

01Is the AWS DynamoDB n8n integration free?
Yes on the n8n side. The AWS DynamoDB node ships with n8n, so there is nothing to install and no add-on to buy, on n8n Cloud as well as on a self-hosted instance running the Community Edition under the Sustainable Use licence. A workflow behaves the same way in both setups, which means you can build it on Cloud and move it to your own server later. What your AWS account itself costs is a separate question, billed by AWS and outside this page. The only thing n8n needs from you is a valid credential and a table your keys are allowed to reach.
02What credentials does the AWS DynamoDB node need?
Two credential types work. AWS (IAM) uses an access key, so an Access Key ID and a Secret Access Key generated in the IAM console, plus the Region your table sits in. AWS (Assume Role) instead assumes an IAM role through AWS STS; the keys used for the AssumeRole call can be typed manually or read automatically from the environment n8n runs in, which suits a self-hosted instance on AWS infrastructure such as EKS, ECS or EC2. Either credential is created once in the Credentials menu and reused by every workflow, and the node picks it from a dropdown.
03What are the limits of the AWS DynamoDB node in n8n?
The node works on items, and only items. It covers 4 operations on a single resource: create or update, delete, get and get many. Creating a table, managing indexes or reading a stream are not part of it, and the table has to exist in AWS before the workflow runs. Anything the node does not expose goes through the generic HTTP Request node, which reaches any DynamoDB API endpoint while reusing the same AWS credential through predefined authentication. On batch reads, remember that Return All chains the API pages, while leaving it off stops at the Limit value you set.
04Can a workflow react to a DynamoDB change in real time?
No, not on its own. n8n has no AWS DynamoDB trigger node, so nothing in DynamoDB pushes a change into a workflow. Two patterns replace it. The Schedule Trigger runs the workflow at a fixed interval and queries what changed since the last pass, usually with Get many items and a key condition. Or the service that writes into DynamoDB calls an n8n Webhook, which is a URL n8n exposes and any external system can hit, and the workflow reacts at the moment of the write instead of waiting for the next run. The trigger of another tool works too.
05n8n or Make for AWS DynamoDB?
It depends on where you want the data to sit. Make is a hosted automation platform with no self-hosting option, billed per operation, so cost grows with volume and everything runs on their infrastructure. n8n runs on your own server through Docker or npm, or on n8n Cloud, with the same workflow either way. For a DynamoDB table holding customer or business records, teams that already run on AWS often keep the automation layer inside their own environment for data control reasons. If your volumes are small and nobody wants to maintain a server, the hosted route stays reasonable.
Hack'celeration Lab

Get our weekly integration tips.

No spam. Unsubscribe anytime.