sensefuel SDK
sensefuel sdk your shared dataset in few lines of code;
Sensefuel provides its customers with a librairy to facilitate the use of Sensefuel API. The Sensefuel SDK is a library for Javascript. With Sensefuel SDK, you can contact our Discovery API, and our Activty Tracking API. It provides a nice query builder, automatically manages the payload, adds user/session ID and updates the settings when needed.
about sensefuel | SDK Documentaion App | SDK demo and use-case
install
npm i @sensefuel/sensefuelsdk --save
Get started
The instantiation of Sensefuel SDK generates a connector from which the APIs can be manipulated.
create instance
You can load Sensefuel SDK to your backend or frontend using CommonJS/AMD syntax.
import SDK from '@sensefuel/sensefuelsdk';
const sdk = new SDK({
credentials: {
uuid: "XXX",
discovery: { key: "YYY" }
activityTracking: { key: "ZZZ" }
},
tracking: {
source: 'api'
},
});
use proxy
We don't recommand to expose your credentials and api keys to any frontend. You can use a proxy mode manage credential settings from your backends.
const sdk = new SDK({
url: {
proxy: true,
discovery: "https://xxx/discovery"
activityTracking: "https://xxx/tracking"
},
tracking: {
source: 'api'
},
});
connect
Note connect retrieve the discovery application settings. Apis will be available after connect resolve.
await sdk.connect()
console.log('SDK is READY ');
Discovery Api
Sensefuel provides several actions to retrieve the information needed to build your product displays. These displays can be of multiple types: landing page, navigation page, product sheet, sliders, keywords suggestions and so more. By submitting what will be made of the results, we will adapt the request and elements order according to your needs.
Here is an example of a basic search request. Checkout our documentaion for more.
const builder = sdk.apis.discovery.search.createBuilder();
builder
.query(q => q.terms.expression('Robe') )
.modules.items.enable().size(10);
const request = builder.getRequest();
let response = await request.get();
console.log(response.items); // 10 first items
response = await request.next('items').get();
console.log(response.items); // 10 next items