Smart Ingest lets you query data stored in the collections and views of your MongoDB database and push it to Iterable.
NOTE
Contact your Iterable customer success manager to discuss adding Smart Ingest to your plan.
Smart Ingest can only import data from MongoDB.
In this article
Connection requirements
To connect Smart Ingest to MongoDB, you need to do the following:
- Allow Smart Ingest IPs in MongoDB.
- Choose a connection type.
- Get connection details from your MongoDB administrator.
Allowing Smart Ingest IPs in MongoDB
Before you connect Smart Ingest to MongoDB, make sure to allow Smart Ingest IPs in your MongoDB account.
Connection types
Smart Ingest supports two connection types for MongoDB:
A direct connection over the public internet.
-
A SSH tunnel.
To learn more about SSH tunneling and how to set up standard and reverse tunnels for Smart Ingest, read SSH Tunneling for Smart Ingest.
The connection type you choose depends on your MongoDB configuration and your security requirements. Because data is encrypted in transit via TLS, a direct connection is suitable for most use cases. You may need to set up a tunnel if your MongoDB instance is on a private network or virtual private cloud (VPC).
MongoDB connection details
To connect to MongoDB, you need the following information from your MongoDB administrator:
Host - The hostname or IP address of your MongoDB server.
-
Protocol - Either
mongodb
ormongodb+srv
.The vast majority of connections use the
mongodb
protocol. Smart Ingest also supportsmongodb+srv
, which should only be used if the hostname corresponds to a DNS SRV record. Port - The port number of your MongoDB server. The default is
27017
, but yours may be different. You don't need to specify the port if you're using SRV protocol, as Smart Ingest uses the SRV record to look up hostname and port.Username - This can be your personal MongoDB login, or a dedicated user for Smart Ingest. The user should, at minimum, have permission to read the tables you want to sync.
Password - The password for the user specified above.
(Optional) Connection options - You can specify connection options when connecting to your cluster. Use the format
name=value
, with each parameter separated by an ampersand&
. For example,retryWrites=true&connectTimeoutMS=30000
. For a list of parameters read the MongoDB documentation.
Connecting MongoDB to Smart Ingest
To connect Smart Ingest to MongoDB:
Log in to Iterable as a user with the Manage Integrations project permission and open the project you’re working on.
Go to Integrations > Smart Ingest.
Click Connect a New Source.
Select MongoDB and click Continue.
-
In Step 1, select the connection type your sync should use to connect:
Connect Directly to MongoDB. This creates a direct connection with no additional setup needed.
-
Connect via SSH Tunnel. This connects using SSH. Add a standard or reverse tunnel, or select an existing tunnel if you’ve already set one up.
To learn more about SSH tunneling and how to set up standard and reverse tunnels for Smart Ingest, read SSH Tunneling for Smart Ingest.
-
In Step 2, enter your MongoDB account details:
- Host
-
Protocol - Select
mongodb
ormongodb+srv
. -
Port - The default is
27017
, but yours may be different. Only applies tomongodb
protocol. - Username
- Password
- (Optional) Connection options
Click Continue. Smart Ingest automatically tests the connection.
When the connection test is successful, click Continue. (If there are problems connecting, click Back and review the connection details for accuracy.)
Add a name for your data source to display in Iterable.
Click Finish.
Next steps
You've now connected your data warehouse to Smart Ingest. The next thing you can do is create a sync.