Overview

Amazon DynamoDB is a fully managed NoSQL database service that delivers single-digit millisecond performance at scale. With Mage, you can integrate DynamoDB as a source to extract and transform structured data from your tables into your pipelines.

Configuration

To connect Mage to DynamoDB, add a source block with the following configuration in your data integration pipeline.

KeyDescriptionExample Value
aws_access_key_idYour AWS access key ID. (Not required if using role_arn and Mage is running on AWS.)AKIA...
aws_secret_access_keyYour AWS secret access key. (Not required if using role_arn and Mage is running on AWS.)abc123xyz789...
aws_regionAWS region where your DynamoDB tables are located. Defaults to us-west-2.us-west-2
role_arn(Optional) ARN of an IAM role Mage should assume when accessing DynamoDB.arn:aws:iam::123456789012:role/mage-role

If running Mage on EC2, EKS, or ECS, you can skip aws_access_key_id and aws_secret_access_key by granting access via IAM roles (via instance profiles or IRSA).

Permissions

Ensure your AWS IAM user or role has the following permissions:

  • dynamodb:Scan
  • dynamodb:Query
  • dynamodb:DescribeTable
  • dynamodb:GetItem (if using key-based lookups)
  • dynamodb:ListTables (optional — for dynamic table discovery)

These permissions are required for Mage to:

  • Read data from DynamoDB tables
  • Apply filters or projections
  • Automatically detect schema or validate table access