Connect to an external data source

You can use a data connector on Amalia to synchronize data from external sources. Amalia offers data connectors for applications including:

  • CRM tools: Salesforce, Microsoft Dynamics, Hubspot, ZohoCRM, Netsuite, ...
  • HRIS tools: Bamboo, Personio...
  • SQL Databases and Data Warehouses: PostgreSQL, MySQL, BigQuery, Amazon Redshift...
  • For every other purpose: Google Sheets (we don't provide any CSV import, instead our customers put data in a Google Sheet that we can refresh periodically)

Configure a connector

1. Click on the Data tab in the lower left corner of your screen. All our existing connectors are shown in the list below the button "Connectors."

2. Click on "Connectors" to import data from a new source.

If the label on a data source says "Connected" it means that your company has a linked account already. If the label says "Not connected," you will have to link and authenticate your account for the data source.

3. Click on the desired data source to configure its connector and manage existing connections.

On this screen, you can:

  • Change the name of an object by clicking on the pen icon
  • Delete an object
  • View authentication options (at the bottom of the page). You can see the identity of the user who logged in to the connector (if the connector supports SSO, like Hubspot, Gsheets...). The logout button allows you to disconnect then reconnect with another identity, in case you misconfigured the account or want to connect with another user that has another kind of access. This is useful for instance if the person who connected left your company, in that case Amalia won't have access to the data anymore and you'll need to reconnect with another user.

Configure the fields

Once a connector is properly set up, you arrive on the fields configuration form.

You can access this screen later by going to the Data screen then clicking on this icon next to the connector name.

You'll then have one accordion per custom object in the connector. Unfold it to see the Custom Object's Definition.

First step: field configuration

In Amalia, a Field is a property from a custom object, for example in a deal custom object definition, we would find its name, its close date, its owner, its amount... Each field has a machine name (which would be used later in the formulas, for instance opportunity.amount > 0), a label, and a type: string, date, boolean...
You can find the fields from your data in the properties in your designer

On this screen, you can select the fields you want to synchronize by clicking on the checkbox on the first column. You can also:

  • Chose a name field, this is going to be used in reports as the name of the deal
  • Chose one or multiple unique fields: for each data object, Amalia needs to have a unique identifier. You need to select a column that has a different value for each record (like the id of the opportunity), or a combination of columns that are unique (for instance a quarterly target quota is unique for the combination user + period, so you have to select those two columns to make a unique identifier).

Second step: import configuration

  • Delete all records before sync: before every import, clear the table for this object
  • Match fetch records: the maximum number of records to ingest at every synchronization
  • Frequency: you can ask for your connector to be synced either daily or manually
  • Filters: to avoid synchronizing too many objects, you can add filters (if your connector supports it). For instance, you may chose to synchronize only opportunities from certain teams, paid invoices, closed deals...

After editing the field configuration, don't forget to click on the Save and Synchronize button. It'll save the new custom object definition, then launch a refreshment on the connector for the custom object to make sure that all objects are in sync with the new field definition.

How does it work? (technical)

Connector authentication

Depending of the type of connector, we have multiple ways to authenticate to the connector.

  • If the connector supports SSO (most of them do, like Salesforce, Hubspot, GSheets, ...), we will redirect the current user to the connector authentication platform, where he'll have to authenticate and authorize Amalia to access the data. Amalia provides an app for each connector to which the user has to grant access to using an OAuth2 workflow. It's possible that the Amalia admin user configuring the connector doesn't have enough access rights on the CRM or tool to authorize Amalia to connect to it, in that case you'll need to find a person that can in your company.
  • For SQL tools, you can refer directly to the dedicated page.
  • For other tools, custom configuration may be required, such as API Keys, Client ID / Secret, depending on the connector. Contact your CSM for more information.

Batch system

Every night, your company is scheduled for data import then computation of statements. We'll refresh the connectors that have a frequency set up on "Daily", then once all connectors are refreshed, we'll recompute the statements.

The import running every night is in "diff" mode, which means we'll only import the data that have changed between the latest successful import and now. To import all data in "full" mode, you need to run it manually using the import data modal.

Before importing, we'll prune all lines that have been removed from the data source if the connector supports it. If the connector doesn't support it, like GSheet for instance, and you see that the data hasn't been removed on our side, you should activate the "Delete all records before sync" checkbox in the connector configuration.

Error handling

We monitor your data connectors and check them every day to make sure the data import was successful. If that's not the case and an action is needed on your side, our CSMs will contact you.

What's next?

Now that you have a connector setup, you can start managing your data.


How did we do?


Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)