←  See more Retool integrations


mongoDB, meet Retool.

Retool makes it easy to build admin panels, dashboards, and utilities on top of your mongoDB data.

Retool makes it easy to build back office UIs like a listing approval system on top of your MongoDB data.

Connecting Retool to MongoDB takes just a few minutes, and lets you to build internal tools quickly on top of your MongoDB data. For example, you could build a CMS tool to pull and push content to a MongoDB store that powers an e-commerce site. You can read content data from MongoDB to populate your product pages, and then write data back to it to insert and update orders.

Retool gives you a simple and flexible GUI for Mongo find() operations where you can specify your query, projection, sort by, and limit, as well as fields for other MongoDB operations like count() and insertOne().

Check out the Retool + Mongo integration docs for more information.


Supercharge your business operations with Retool and mongoDB.

“Retool has enabled us to completely remodel and refine our systems, which in turn has freed up valuable engineering resources equivalent to 2-3 full stack engineers.”

Adam Louie headshot
Adam Louie
Senior Director of Business Operations

What is mongoDB?

MongoDB is a general purpose, document-based, distributed database.

Read the Retool + mongoDB integration docs for more information.

What operations are supported with mongoDB on Retool?

  • View your data
    Visualize and search all of your collections and documents.

  • Query your data
    Use find() and findOne() plus aggregations like count() and distinct().

  • Join with other datasources
    Easily join with other Retool connected datasources like PostgreSQL or the Stripe API.

  • Insert a record
    Insert a record in an existing table via insertOne().

  • Update an existing record. Update an existing record in an existing table using updateOne() or updateMany().

  • Delete a record
    Delete an existing record from an existing table through deleteOne().

const newStage = Object.assign(job_stage_form.data, { Type: select1.value })
const new_job_stages = job_stages.value.concat(newStage)

const index = i; // variable which is the index of the button that triggered this
const newData = Array.from(job_stages.value);
newData.splice(i, 1)

var rawData = getProductDetails.data
var prdStlCmpLst = new Array()
for (x in rawData)
if (rawData[x]["dim_date_shops_products.material_family"] == select19.value)
return prdStlCmpLst
nps.'Product Feedback',
nps.nps_count as NPS,
feedbacks.feedback_count as Feedback,
sfdc.sfdc_count as Salesforce,
sfdc.opp_dollars as Opportunity_Dollars
{{npsTableCounts.data}} as nps
join {{feedbackTableCounts.data}} as feedbacks on nps.'Product Feedback' = feedbacks.FeedbackID
join {{sfdcTableCounts.data}} as sfdc on sfdc.FeedbackID = nps.'Product Feedback'
{{ multiselect2.value.length === 0 }}
OR nps.'Product Feedback' = ANY({{ multiselect2.value }})

In Retool, you can join mongoDB data with anything.

Retool connects to most databases and nearly anything with a REST or GraphQL API. Read in data from mongoDB, join it via SQL, record user approvals, and POST the result to Stripe to create invoices. Retool empowers you to work with all of your data sources inside of a single app.