Flitch

Amazon DocumentDB

Connect an Amazon DocumentDB cluster (MongoDB-compatible) with a connection string. Collections become datasets; documents are flattened into rows.

Reads collections from an Amazon DocumentDB cluster, which is MongoDB-compatible. Each collection is a dataset, and documents are flattened into rows (nested fields become dot-notation columns) with columns inferred by sampling. Flitch only reads, so use a database user with read access.

Add a source

DocumentDB connects with a connection string (the MongoDB URI, which carries the host and credentials).

Prerequisites

  • An Amazon DocumentDB cluster reachable from the connector egress IP.
  • A database user with read access to the collections you want.

Create a read-only user

Connect with mongosh and create a user with the built-in read role on your database:

use mydb
db.createUser({
  user: 'flitch_readonly',
  pwd: 'choose-a-strong-password',
  roles: [{ role: 'read', db: 'mydb' }]
})

Build the connection string

Use the cluster endpoint from the AWS console. DocumentDB requires TLS:

mongodb://flitch_readonly:password@docdb-cluster.cluster-xxxx.region.docdb.amazonaws.com:27017/?tls=true&replicaSet=rs0&retryWrites=false

Open the form

Go to DataAddAmazon DocumentDB, paste the connection string, enter the database name, then pick collections.

Network access

DocumentDB lives inside your VPC. Make the cluster reachable from Flitch's connector egress IP (shown in the Add Source form), for example by exposing it through a public endpoint or NAT and allowing the IP in the security group.

How documents map to rows

  • Each collection is a dataset; each document is a row.
  • Nested objects become dot-notation columns (e.g. address.city); arrays are kept as JSON.
  • ObjectId, Date, and other BSON types are converted to plain strings/numbers.
  • Columns are inferred by sampling documents, so collections with very different document shapes may show a sparse column set.

Refresh

Refresh is off by default. Enable it to schedule a background refresh and serve from cache between runs. See Refresh.

Disconnect

Delete the connection from Data. Dashboards built from it keep their last cached data until you remove them.

Troubleshooting

Authentication failed. Check the username and password in the connection string, and that the user has the read role on the database.

Connection timed out. Verify the cluster is reachable from the connector egress IP and that tls=true is set (DocumentDB requires TLS).

No collections shown. Confirm the database name is correct and the user can list collections on it.

On this page