Connections in Cliq

"Ever wondered how you can link your favourite third-party services with Cliq?"

In this page, you'll learn about...

What are Connections?

Connections in Cliq are powerful bridges that facilitate smooth interactions with various services. They allow you to access and manage data effortlessly and significantly enhance your workflow, enabling seamless interactions across different platforms.

Once a connection is created and connected, you can use it in Deluge integration tasks and invoke URL scripts to access data from the required service.

For example, to access your Twitter account using Twitter's REST APIs from your Zoho Cliq, you can create a Twitter connection, connect to it, and use the connection link name in invoke URL  Deluge task. The invoke URL task will perform the specified API call to your connected Twitter account.

How to navigate to the connections page?
  • Click on your display picture and select Bots and Tools.

  • Click the Connections option at the bottom left to land on the All Connections page.

 

On the connections page, you'll find two categories :

  • My Connections

  • Shared Connection

 

My Connections  

The connections you create will be listed under the "My Connections" section.

Types of Connections 

  • Default connection: You can choose from the services listed in the Pick Your Service category, provide your credentials, and establish a connection.

  • Custom connection: You can configure and connect if the desired service is unavailable in the Pick Your Service Category.

Note: You can create multiple connections for the same default or custom service.

 

Default Connection  

Perform the following actions to create a connection with a default service:

1. After going to the connections page, click the Create Connection option in the top right corner of the My Connections page.

2.The Pick Your Service option contains a list of third-party services pre-registered with Cliq. These connections will have the prefix Zoho DRE in the third-party services when used.

3.When the service you want to integrate is available in the Pick your service section, you can use it by selecting it.  

Example : Let's try to create a default connection with the service - Trello!

4.In the Connection Details window, perform the following actions:

  • Provide the connection name, which is the display name for your connection. Display names can contain up to 50 characters.

  • Provide connection link name. Link names must be unique and can be used in Deluge integration tasks to invoke URL scripts to establish authentication.

 

Note: The link name that you provide must satisfy the following conditions:

  • It must begin with a lowercase letter.

  • It can contain lowercase letters, numbers, and underscores (_).

  • It can contain up to 50 characters.

  • Choose appropriate scopes, if required.

 

Note: The scopes and their availability vary depending on your service. You can find the applicable scopes in the desired service's API documentation.

5. Click on Create and Connect.

Understanding the "Use Credentials of Login User" Toggle button in Zoho Cliq Connections

The "Use credentials of login user" option determines how users interact with the connections you've set up in Cliq.

When the "Use credentials of login user" toggle is enabled, every user who tries to utilize the connection will be prompted with a pop-up dialogue box asking for permission to access the third-party service. This allows users to authenticate connections using their credentials.

  • Shared Connections :

The connections that you do not create but are only authenticated using your credentials will be listed under "shared connections". These connections will be listed under "my connections" for the user who created the connection and under "shared connection" for other users who authenticated it using their credentials.

Example:

Let's assume you want to create and publish a Zoho Cliq bot for everyone in the organization. The bot will upload and forward the files to the user's Google Drive account. To achieve this, you need to create a connection to Google Drive and use it in an invoke URL Deluge task.

When creating the connection, you must enable the "Use credentials of login user" button. This ensures that each user can authenticate the connection with their own credentials so that files will be uploaded to their individual Google Drive accounts. If you do not enable this toggle, the connection will run using the credentials of the connection owner, and all files sent by users will be uploaded to the owner's Google Drive account.

In this scenario, enabling the "Use credentials of login user" toggle button is essential. All bot users will authenticate the Google Drive connection with their credentials, and a copy of the connection will appear under "Shared Connections" on their connections pages. For the connection creator, it will be listed under "My Connections."

In this scenario, enabling the "Use credentials of login user" toggle button is essential. All bot users will authenticate the Google Drive connection with their credentials, and a copy of the connection will appear under "Shared Connections" on their connections pages. For the connection creator, it will be listed under "My Connections."

Example :

Imagine you want to create and publish a  Zoho Cliq slash command for everyone in the team that will fetch the team's task list from Zoho Projects. Unlike the previous example, you need not enable the "use credentials of login user" toggle button while creating the connection because every user wants to access the same data. So, rather than encouraging every user to authenticate your connection to access your team's common data, you can allow them to use your connection to communicate with Zoho Projects.

In this example, the users will not authenticate your connection using their credentials; instead, they will use your connection as such. So, this connection will not be listed on the user's connections page.

6. A User Permissions dialog will pop up, provide your login credentials, and proceed. Or, click on Allow if you are already logged into the service.

7. Post successful authentication of the created connection, a connection summary page will be displayed with the details of the connection and sample code of the Deluge invoke URL task.  The Connection will be on your connections page under My Connections. Hover the cursor over the connection if you need to edit, revoke, or delete the Connection.

Custom Connection

If the service you are looking for is not available in the pre-registered services list, you will have to create a custom connection. This would require you to create and configure settings in Cliq and the third-party service.

1. After going to the connections page, navigate to the Custom Services section and click the Create Service option in the top right corner to create a custom connection.

2. Under service details, provide the following information:

  • Service Name: This is the display name of the service that you want to create. Display name can contain up to 50 characters.

  • Service LinkName: Link name of the service to help you to uniquely identify your custom service.

  • Note: The link name that you provide must satisfy the following conditions:

    • It must begin with a lower case letter.

    • It can contain lower case letters, numbers, and underscores (_).

    • It can contain up to 50 characters.

  • Authentication Type: Choose from the following authentication types based on the desired service's API documentation

Type

Description

Fields

API KeyThis auth type requires you to specify the params for establishing a connection with the desired service. In the next step, you will have to supply values for these params to perform the integration. For example, if you specify authtoken as param, the next step would be to provide your account's auth token to establish a successful connection.
  • On choosing API Key as authentication type, you need to provide values to the following fields:

    • Actual Parameter: Name of the key (as specified in the API documentation of the desired service) against which the parameter needs to be sent

    • Parameter Display Name: Display name for the parameter. This name will be prompted when you authenticate a connection.

    • Param Type:  This decides how the authentication parameters will be sent along with the URLs specified in the invoke URL scripts. Supported param types: Query string, Form Data, and Header

  • Note:

    • You can add as many parameters as required.

    • Parameter could be any type of key that is required for authentication. Example: api-key, user-key, authtoken, apitoken, etc.

Basic

This auth type requires you to specify the username and password in the next step. The provided username and password will be automatically encrypted with base64 algorithm and passed as header in the format: basic <encrypted_username>:<encrypted_password>.

N/A

OAuth 1This auth type requires you to specify the required parameters to perform an OAuth 1 authentication.
  • On choosing OAuth 1 as authentication Type, you need to provide values to the following fields:

    • Consumer Key: Consumer key that is issued by the service provider

    • Consumer Secret: Your consumer secret to authorize your application

    • Request Token URL: URL to fetch the request token as specified in the API documentation of the desired service

    • Authorize URL: Authorize URL as specified in the API documentation of the desired service

    • Access Token URL: URL to fetch the access token as specified in the API documentation of the desired service

    • Param Type: This decides how the authentication parameters will be sent along with the URLs specified in the invoke URL scripts. Supported param types: Query string, Form Data, and Header.

OAuth 2This auth type requires you to specify the required parameters to perform an OAuth 2 authentication.
  • On choosing OAuth 2 as authentication Type, you need to provide values to the following fields:

    • Grant type: Grant type that the desired service uses to perform authorization. You can choose from the supported grant types: Authorization code and client credentials

    • Client Id: Client ID that is issued by the service provider

    • Client Secret: Your client secret to authorize your application

    • Authorize URL: Authorize URL as specified in the API documentation of the desired service

    • Access Token URL: URL to fetch the access token as specified in the API documentation of the desired service

    • Refresh Token URL: URL to fetch the request token as specified in the API documentation of the desired service

    • Param Type: This decides how the authentication parameters will be sent along with the URLs specified in the invoke URL scripts. Supported param types: Query string, and Header.

  • Note: When registering a Zoho client in the required service's developer console, the callback URL needs to be:

    • US domain:https://deluge.zoho.com/delugeauth/callback

    • EU domain:https://dre.zoho.eu/delugeauth/callback

    • CN domain:https://dre.zoho.com.cn/delugeauth/callback

    • IN domain:https://deluge.zoho.in/delugeauth/callback

    • AU domain:https://dre.zoho.com.au/delugeauth/callback

    • JP domain: https://dre.zoho.jp/delugeauth/callback

Create your connection by giving a name, selecting the scopes.

Select 'Create and Connect' to create the connection. The connection link name will be used in the invoke URL task.

Note: The Use credentials of login user option (user access option) defines if the user can provide access to perform integration using their own credentials. When this option is enabled, all the users will see a pop-up dialog box asking them for permission to access the third party service account. When the Use credentials of login user option is not enabled, the owner of the connection usually the one who installs the app will allow other users to perform an action on their behalf.  

Create a Custom Connection:

In case the service you are looking for is not available in the pre-registered services list, you will have to create a custom connection. This would require you to create and configure settings in Cliq as well as the third party service. 

1. To create a custom connection, click the Custom Service option and provide the following.

Service Details

  • Service Name - Name of the third party service you are building an integration
  • Authentication Type (Basic / OAuth1 /OAuth 2) - Select the authentication method followed by the respective service
  • Param Type  - Every service will have it's own way to accepting the necessary parameters. Choose the parameter type from either of the following Query String, Form Data, Headers

Connection Details

  • Connection Name - Your connection name
  • Scope - Define how and what information can be accessed by the connection
  • Use credentials of login user - Enabling this option will prompt the user to authenticate the connection using their own credentials. If the option is disabled, then the connection will be authenticated using the connection owner's credentials

Note:

In case of extensions containing connections that work with the owner credentails (disabling the use credentials of login user option), user who installs the extension will be considered as the connection owner. That is, the connection will be authenticated with the credentials of the user who installs the extension. 

2. Click on Save 

3. Upon successful authorization, your connection is created and listed on the connections page. 

Call back URL

Configure the below given call back URL in the third party service, to connect with Cliq. 

Callback URL: https://deluge.zoho.com/delugeauth/callback

Invoke URL :

The invoke URL task is used to access the third party services from Cliq via Connections. To implement a connection that is created, you can use the Invoke URL deluge code displayed on creating the connection. The task and its parameters are explained in the Invoke URL page.