# Additional Integrations

This section contains documentation for **on-premise (self-hosted) Nected** deployments. Here you’ll find setup guides for enabling integrations, configuring services, and operating Nected in your own infrastructure.

If you're using Nected Cloud (SaaS), you can connect integrations in the Nected UI without these steps. [See the main Integrations documentation for cloud setup.](https://docs.nected.ai/nected-docs/integrations/integrations-libraries)

These guides assume you already have Nected deployed via Helm and have access to `nected-values.yaml` and your Kubernetes cluster (`kubectl`, Helm).

***

### Integrations available in self-hosted by default

The following plugins are available out of the box (default `SYNC_PLUGINS`):

`mysql`, `mongodb`, `postgres`, `sqlserver`, `redshift`, `oracle`, `snowflake`, `restAPI`, `anthropic`, `googleai`, `openai`, `vertex`, `sagemaker`

Additional integrations require registration and configuration:

* [**Slack**](https://docs.nected.ai/nected-docs/self-hosting/additional-configuration/additional-integrations/slack)
* [**MS Excel**](https://docs.nected.ai/nected-docs/self-hosting/additional-configuration/additional-integrations/ms-excel)
* [**Google Sheets (Gsheet)**](https://docs.nected.ai/nected-docs/self-hosting/additional-configuration/additional-integrations/google-sheet)

### How to enable integrations?

To enable integrations in self-hosted Nected:

1. **Enable Garuda** — Required for all major integrations (**Google Sheets, Slack, and MS Excel**; future integrations may require this too).\
   To enable Garuda, open your `nected-values.yaml` file, search for the `garuda` section, and set:

   ```yaml
   garuda:
     enabled: true
   ```
2. **Set integration env vars** — Add or update `CREDENTIAL_CONFIG_MAP` and `SYNC_PLUGINS` under the Nalanda envVars in `nected-values.yaml`. Copy the default values from the nalanda env variable section and **append** your integration entries (do not remove existing values).
3. **Apply changes**: Run the Helm upgrade and, if needed, restart the integration service or run the plugin sync command (see Apply changes below).

{% hint style="info" %}
Each integration (Slack, Google Sheets, MS Excel) has a dedicated guide for provider setup and the exact config to add.
{% endhint %}

***

### &#x20;Modify envVars (CREDENTIAL\_CONFIG\_MAP and SYNC\_PLUGINS)

When adding or changing integrations, you configure the Nalanda env variables in `nected-values.yaml`. The keys `CREDENTIAL_CONFIG_MAP` and `SYNC_PLUGINS` are **not** present by default (defaults are applied internally). For first-time configuration, copy the default values below into your values and add your integration-specific entries.

**Important:** Both values must be **single-line** in the integration service env:

* **CREDENTIAL\_CONFIG\_MAP** — A single-line JSON string (no newlines, no pretty-printed hierarchy).
* **SYNC\_PLUGINS** — A single-line comma-separated list of plugin names.

{% hint style="info" %}
**Note:** When adding or modifying integration config, do not remove or change existing values. Only **append** new integration entries to `CREDENTIAL_CONFIG_MAP` and new plugin names to `SYNC_PLUGINS`.
{% endhint %}

#### Values to set

In `nected-values.yaml`, Set or add these environment variables:

* **`CREDENTIAL_CONFIG_MAP`** — Default `'{}'`. Single-line JSON of integration credentials.
* **`SYNC_PLUGINS`** : Single-line comma-separated list of plugin names (append new plugins, do not remove).\[*see below for default value*]

**`CREDENTIAL_CONFIG_MAP`** — Single-line JSON. Default is `'{}'`. Add integrations in this form:

```yaml
nalanda:
  envVars:
    CREDENTIAL_CONFIG_MAP: '{"<integration_name>":{"clientId":"XXX","clientSecret":"xxx"},...}'
```

Example (single-line):

```yaml
CREDENTIAL_CONFIG_MAP: '{"slack":{"clientId":"123","clientSecret":"abc"},"gsheet":{"clientId":"456","clientSecret":"def"}}'
```

**`SYNC_PLUGINS`** — Default (copy this and append any extra plugins you need, e.g. `gsheet`, `slack`, `msexcel`):

```
mysql,mongodb,postgres,sqlserver,redshift,oracle,snowflake,restAPI,anthropic,googleai,openai,vertex,sagemaker
```

Example with both set (single-line values):

```yaml
nalanda:
  envVars:
    CREDENTIAL_CONFIG_MAP: '{"slack":{"clientId":"YOUR_ID","clientSecret":"YOUR_SECRET"}}'
    SYNC_PLUGINS: mysql,mongodb,postgres,sqlserver,redshift,oracle,snowflake,restAPI,anthropic,googleai,openai,vertex,sagemaker,slack
```

### Apply changes

After editing values, run:

```bash
helm repo update
helm upgrade -i nected nected/nected -f nected-values.yaml
```

If the integration service doesn’t pick up new plugins, restart its deployment and optionally run the plugin sync from inside the pod:

```bash
kubectl rollout restart deploy nected-nalanda
# If the integration still doesn’t appear under Integrations:
kubectl exec -it <nalanda-pod-name> -- /bin/bash
./nalanda sync plugin
```
