Installation Instructions¶
Cloud¶
Preparations¶
Shared application¶
- No preparations are needed. Lime BI is included by default.
Customized application¶
- Include
lime-bias a dependency in your solution.
Activate Lime BI¶
- Add the following to the application config:
addons: lime_bi: true - Go to Lime Admin, Settings, Lime BI, Setup.
- Select a Sync language and click Initialize and Sync to register the Lime CRM database in Metabase and synchronize the data.
On-premise¶
Lime BI is installed on the customers Lime CRM application server, together with the Postgres database server.
Prerequisites¶
Requirements must be met.
Install PostgreSQL¶
PostgreSQL is the database used for storing Lime BI data (data model, questions, dashboards and so on) and needs to be installed prior to Lime BI.
- Download the latest PostgreSQL from here.
- Run the installer file as administrator.
- Specify installation folder. Choose your own or keep the default folder suggested by PostgreSQL installer.

- Select the components according to the image below.

- Specify the folder of the PostgreSQL data.

- Set a password for the postgres database superuser.

- Enter the port for PostgreSQL. No other applications should be using this port. Leave it as default if unsure.

- Select the default locale used by the database.

- The installation may take few minutes to complete.

- Deselect launch Stack Builder once the installation is completed.

Create database in PostgreSQL¶
This step creates the PostgreSQL database used for storing Lime BI metadata.
- Open pgAdmin 4.
- Enter the password you set earlier in the first part of the installation.
- Right-click on Databases and select Create > Database.
- Name the Database
lime-bi. - Set the Owner to
postgres.
Install the Lime BI service¶
In this step, the Lime BI service is installed as a Windows service and configured to connect to the PostgreSQL database you created in the steps above.
- Start the Lime command prompt as an administrator.
-
Run
lime-bi installand follow the guide.
Setup Metabase with an admin user and enterprise token¶
-
Open
<servername>/lime-biin a browser.
-
Create an admin account.

-
Select Not sure yet.

-
Select I'll add my data later.

-
Paste the enterprise token and activate.

-
Click Finish.

Lime application config¶
On-premise stores all settings in application config.
Setup¶
Create an application_config.yaml file if it does not already exist.
the-customer-app:
config: {}
secrets: {}
Content¶
This is an example of a typical application_config.yaml for an on-premise installation:
the-customer-app:
config:
addons:
lime_bi: true
lime-bi:
site_url: https://<servername>/lime-bi # See Site url
database_id: 26 # Written by Initialize and Sync. Never add it yourself
# internal_url: http://localhost:3000 # Default. See Internal url
# windows_auth: true # Default. See SQL Server authentication
secrets:
lime-bi:
embedding_secret_key: <Embedding secret key> # See Embedding secret key
jwt_signing_key: <JWT signing key> # See Enable SSO with JWT
admin_username: admin@lime-bi.com # Created manually during install
admin_password: supersecret123
# readonly_db_user_username: <user> # See SQL Server authentication
# readonly_db_user_password: <pass>
Site URL¶
The site URL is the external URL used to access Lime BI.
- Open
<servername>/lime-biin a browser, click the ⚙️ in the top right and click Admin settings. - Click General.
- Enter the external URL to Lime BI.
- Also add it to the
configsection assite_urlin the application config.
Embedding secret key¶
An embedding secret key is needed in order to embed questions and dashboards in the Lime CRM clients.
- Open
<servername>/lime-biin a browser, click the ⚙️ in the top right and click Admin settings. - Click Embedding and Static.
- On the Static embedding page, copy the secret key displayed under Embedding secret key. Regenerating the key is optional.
- Add it to the
secretssection asembedding_secret_keyin the application config.
Enable SSO with JWT¶
- Open
<servername>/lime-biin a browser, click the ⚙️ in the top right and click Admin settings. - Click Authentication, JWT.
- Enter
<servername>/lime-bi/jwt-providerin JWT Identity Provider URI. - Generate a String used by the JWT signing key
- Press Save and enable
- Add it to the
secretssection asjwt_signing_keyin the application config.
Internal URL (optional)¶
Lime CRM reaches Metabase server to server, on http://localhost:3000 by default. That is correct when Metabase runs on the Lime CRM application server on its default port, which is the normal case.
If Metabase runs on another server or another port, set internal_url in config.lime-bi to the URL Lime CRM should use. Initialization and sync cannot reach Metabase without it.
SQL Server authentication (optional)¶
By default, windows_auth is true and the Metabase service authenticates to SQL Server using the Windows service account. No SQL credentials are needed.
To use SQL Server authentication instead:
- Set
windows_auth: falseinconfig.lime-bi. - Fill in
readonly_db_user_usernameandreadonly_db_user_passwordinsecrets.lime-biwith SQL credentials.
Info
readonly_db_user_username/readonly_db_user_password/windows_auth should be removed from app config after Lime BI has been initialized in Lime Admin.
Initialize Lime BI¶
The final step in the installation is to connect the Lime CRM database to Metabase and sync the data structure.
- Go to Lime Admin, Settings, Lime BI, Setup.
- Select a Sync language and click Initialize and Sync to register the Lime CRM database in Metabase and synchronize the data.
Grant access in Metabase¶
Initialize and Sync blocks the All Users group from the Lime CRM database and from the root collection. Until access is granted, only a Metabase admin sees anything.
Grant access under Admin settings, Permissions, in both Databases and Collections. Grant it on All Users, or on groups of your own. See Metabase users and groups.
Users appear in Metabase only after their first SSO login, so group memberships are assigned after that, not before.
Schedule automatic syncs (optional)¶
To keep Lime BI data up to date automatically, you can schedule syncs using
task-handler. Add the following to solution-customer/tasks/__init__.py:
from lime_task.schedule import CronTab, ScheduledTask, TaskSession
from lime_bi.tasks import metabase
def get_task_modules():
return []
def register_scheduled_tasks():
task_session = TaskSession(user_name="<SYNC_LIME_USER>", language="en_us")
return [
ScheduledTask(
task=metabase.sync,
schedule=CronTab(hour="23"),
args=[],
session=task_session,
)
]
Replace <SYNC_LIME_USER> with the appropriate Lime CRM user and adjust the
CronTab schedule as needed (the example syncs at 23:00 every night).
Uninstall Lime BI¶
- Start the Lime command prompt as an administrator.
- Run
lime-bi uninstalland follow the guide.
Desktop client¶
Install Lime Bootstrap app¶
Only needed if you want to show a dashboard in the desktop client.
- Install the LIP package by downloading the latest
lip.zipfrom releases and run:Then, select your zip file that you downloaded.lip.InstallFromZip - Copy the
limebifolder in the apps catalogue to the sub folder apps in the Actionpad folder. - Add the HTML below to the index Actionpad in the appropriate place.
- Set up the right configuration by changing the
dashboardIdin the config to correspond to the dashboard you want to embed. - Publish the Actionpads.
<div data-app="{
app: 'limebi',
config:{
dashboards: [
{
dashboardId:'1',
title: 'openlimebi',
whereToOpen: 'overview',
userGroups: ['Users']
}
]
}
}"></div>