How to connect CouchDB with SharePoint

This "how-to-connect" documentation will explain the initial configuration of an example connection from CouchDB to a SharePoint Online List in Office 365. We will be synchronizing data stored in CouchDB.

 

This guide presupposes that you have installed the Layer2 Cloud Connector and that you are familiar with its basic functionality. The Layer2 Cloud Connector User Documentation will provide you with all necessary information.

 

 

Contents

1. Configuring CouchDB

2. Configuring the Layer2 Cloud Connector

2.1 Creating a new connection

2.2 Configuring the Data Entity 1

2.3 Configuring the Data Entity 2

2.4 Running your connection

3. Hints and known issues

3.1 Connection direction

3.2 Data model

1. Configuring CouchDB

To connect to CouchDB you are going to need the IP address and port where your CouchDB server is running. You also are going to need a username with the rights to access CouchDB and the password. You administrator should have this information.

 

2. Configuring the Layer2 Cloud Connector

2.1. Creating a new connection

Create a new connection by using the Create New Connection option in the Actions pane (right-hand side). The new connection will appear at the bottom of the Connection Manager List (left-hand side). Click on your newly created connection to open the connection configuration settings.

 

Choose a meaningful name for your connection and replace the current "New Connection" Connection Title with it.

 

Connections to CouchDB can be bi-directional. An initial connection should always be uni-directional to assure that both data entities are identical before switching to bi-directional. Therefore, choose Left to Right as Direction.

 

Step 1 CouchDB connection setup.png

 

 

2.2. Configuring the Data Entity 1

We will now set up our Data Entities. Go to the data entity “Data Entity 1” to open the configuration settings.

 

Choose a Data Entity Title. It is recommended to give your entities meaningful names to maintain an overview when you decide to set up multiple connections.

 

Select the Data Provider for JSON from the data provider list. You can search for JSON by typing into the selection box.

 

Step 2 CouchDB integration source setup.png

 

For the Connection String, we need the information mentioned in step 1. You can copy the below connection string and adjust it to match your gathered information. Use the Verify Connection String option to evaluate if the provided connection string is valid.

 

 

URI=http://couchdbipaddress:port/databasename/_all_docs?include_docs=true;AuthScheme=BASIC;User=youruser;GenerateSchemaFiles=Onuse;Location=yourpath;Other=BatchSize=1;

 

 

  • "URI=http://couchdbipaddress:port/databasename/_all_docs?include_docs=true;" this property should point to a valid IP address pointing to the CouchDB server and the port. Change also the databasename parameter with your database name.
  • "AuthScheme=BASIC;" this property defines the authentication type we are using.
  • "User=yourusername;" this property should be set to a valid username with access to the CouchDB server.
  • "GenerateSchemaFiles=OnUse;" this property says a schema file should be generated when running the connection. This is only necessary if you want to make inserts, updates, and deletes. Not necessary to read-only.
  • "Location=path;" this property must be set to a path where the generated schema file should be saved in.
  • "Other=BatchSize=1;" should be set on inserts, updates, deletes to avoid errors on bulk operations.

 

Enter the user's password into the Password field. The field masks the value for better security.

 

The Select Statement text box is used to define specific data queries. We will be gathering all data from our JSON response. You can copy the below select statement and adjust it to match your needs. Save your changes by using the right-hand pane option Save Changes.

 

SELECT * FROM json

 

Step 2.5 CouchDB integration connection string setup.png

 

To check if all necessary columns are received, you can use the Preview Data option on the right-hand pane which will provide you with a pop-up window showing your sample data from your CouchDB entity.

 

 

Preview data of CouchDB integration.png

 

2.3. Configuring the Data Entity 2

We are going to send the data to a custom SharePoint Online list. It's required that you set up this list prior to the next steps. Your list should contain matching columns according to your source entity.

 

Use the left-hand pane to switch to the data entity "Data Entity 2". We will be using the Layer2 SharePoint Provider for this setup. 

 

For more information about the SharePoint provider visit:

https://www.layer2solutions.com/support/cloud-connector-faqs/layer2-csom-sharepoint-ado-net-provider.

 

You can copy the below Connection String which contains the minimum of required properties to connect to your custom SharePoint Online list.

 

URL=https://your_custom_sharepoint_list_url/AllItems.aspx;Authentication=Microsoft_Modern;

 

  • "URL=https://your_custom_sharepoint_url/AllItems.aspx;" this property defines the URL of your custom list that will be addressed.
  • "Authentication=Microsoft_Modern;" this property will determine the authentication method used. Microsoft_Modern is the default authentication method to access Microsoft Office 365 / SharePoint Online and should work in most cases, even if the SharePoint site is connected to an ADFS. This authentication does not need any further connection string settings, other than the URL of the connected system.

 

Save your changes by using the right-hand pane option Save Changes.

 

Step 3 CouchDB integration target setup.png

 

In the next step, we will configure our mapping settings. Click on the Mappings option on the left-hand pane. If your fields from SharePoint are named identical to the fields from your source system, the Enable Auto Mapping option will match those columns. Disabling this option allows you to match your columns as needed. We enabled auto-mapping in our setup. Save your changes by using the right-hand pane option Save Changes.

 

Step 4 CouchDB integration mapping.png

 

2.4. Running your connection

To run your connection switch back to the main connection configuration node and use the Run Now Button located on the bottom of the setup page. The Run Synchronization Toolbox will also display the synchronization process. 

 

Step 5 CouchDB data integration start.png

 

Below is a data preview of the information we had access in our source entity:

 

CouchDB integration ready.png

 

This will be the result in our SharePoint Online list after our initial successful synchronization:

 

Finished CouchDB integration.png

See section 3.1 for further information.

3. Hints and known issues

 

3.1. Connection direction

As far as tested, this connection supports uni- and bi-directional connections.

After adjusting the direction to bi-directional, you should check your Mappings settings again because some systems might include read-only columns that cannot be mapped directly. We also recommend choosing a Conflict Resolution that matches your environment's needs. You can find out more about the different conflict resolutions in our Layer2 Cloud Connector User Documentation.

In order to make inserts, updates, and deletes in a bi-directional way, you must write these operations in your generated schema file saved at the Location parameter from your connection string.

An example of a GeneratedSchemaFile with the INSERT, DELETE, and UPDATE operations for our case can be found here.

3.2. Data model

To see all the tables and views visit the CouchDB API page here.

 

 

 

↑Top

Search for more data integration & synchronization solutions

Icon of Contact us - Chat - Layer2 leading solutions

Any Questions?

Drop us a short note with your inquiry by filling out the contact us form.

 

Icon for Layer2 Solutions Finder- Layer2 leading solutions

About the Layer2 Cloud Connector

Get more information about the Layer2 Cloud Connector on the product page.

 

 

Ifoc for free trial product regsitration - Layer2 leading solutions

Register for a free trial

Get your free trial version of the Layer2 Cloud Connector by a quick registration.