Skip to main content

Integration protocols

There are various integration protocols available within the Coolr system with HTTPS API endpoints being preferred one.

HTTPS API endpoints

In this case, you'll be using Coolr Group's API endpoints for both data pull and push. This means Coolr will not be accessing your systems directly and all communication is integrated at your side.

From an integration perspective, you'll be performing two operations

  1. Data push: focused around Master data synchronization. For overview/ examples, take a look at psuedo code mentioned in planning section
  2. Data pull: can be used to verify the data or to pull Transactinal Data, Actions or Management data.

As Coolr uses "Timestamp" based approach to identify the delta, you can pull the data periodically using a filter.

Our API uses paging to limit data per request:

Psuedo example where you fetch modified records since last pull of 2024-08-01 00:00:00:

const lastPull = db.get('AssetPurityLastPull') || '2024-01-01';
let start = 0;
cons limit = 100;
while(true) {
const { totalRecords, records } = fetch('/controllers/AssetPurity.ashx', {
action: 'list',
start,
limit,
filters: JSON.stringify({
"modifiedOn": { operator: ">", value: "2024-08-01T00:00:00" }
});
});
start += limit;
if(start >= totalRecords) {
break;
}
}
Note

As the data can be large, there are some key points to cosider for data pull

  1. Standard list API can return data in JSON, XML, JSON-Array or CSV
  2. You can alteratively use "export" API which has a limit of up-to 50K records
  3. Export allows CSV, Excel and XML format

Disadvantage: When using data pull - you must pull the data on a timer basis. This means there might be some latency in data.

Alternative: Coolr Group can push the data to a "callback url"/ "endpoint" of the customer as new data is available.

Recommendation

Almost all of our customers choose to use this API based approach.

Note
  • API credentials are role based. You can create separate credentials for your vendors/ partners to limit data access.

Callback/ Push

For data generated by Coolr, many customers want us to push the data near-realtime. In such cases, Coolr can push the data to predefined endpoints. This is typical for:

  • Image processed
  • Order recommendations
  • Action identified (alerts)

FTPS/ SFTP File Exchange

In some cases Coolr customers may have some systems/ 3rd party vendors where you might not want to give them access to the system or worry about API integration. In such cases, Coolr can configure the data push as files over FTPS/ SFTP etc.

In such instances

  • The receiving system's firewall will need to whitelist Coolr's backend IP addresses
  • The push is generally in batches based on a scheduled

This is common for:

  • Missed opportunities
  • Actions

Notifications

Apart from data integration, Coolr also has notification capabilities based on its alerting framework. Such notifications can be send to the desired recipients via:

  • Email
  • SMS/ Text-Messaging
  • API call
Note
  • SMS/ Text-Messaging uses a 3rd party integration such as Twilio. It is not included in the standard pricing tier.

Apart from the notification content, these notifications can optionally also have embedded links for non-users to access the following:

  • Image
  • Missed Opportunity/ Order recommendation
  • Order modification/ acceptance/ cancellation links