algolia-index-transform
v1.0.6
Published
A selection of methods to transform an exisiting index using map, reduce or filter and push to a brand new index.
Downloads
183
Maintainers
Keywords
Readme
Algolia Index Transform
A selection of methods to transform an index using map
, reduce
or filter
.
and push to a brand new index.
Install
Node Using NPM
npm install algolia-index-transform
Node Using yarn
yarn add algolia-index-transform
Set Up
Once installed, you will need to initalize the Algolia Index Transform as below. Each property is required.
const AlgoliaIndexTransform = require('algolia-index-transform');
const algoliaIndexTransform = new AlgoliaIndexTransform({
sourceApplicationID: 'xxxxxxxxxx',
sourceApiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
sourceIndexName: 'an existing index',
destinationApplicationID: 'xxxxxxxxxx',
destinationApiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
destinationIndexName: 'a new index',
limit: 20000,
requestOptions: {
attributesToRetrieve: ['*']
},
copySettings: false
});
Setting properties
| Paramater | Type | Description |
| :-------------------------- | :-------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| sourceApplicationID
| String
| The Application ID where the current index resides |
| sourceApiKey
| String
| The API Key for the app where the current index resides |
| sourceIndexName
| String
| The index name of the current index |
| destinationApplicationID
| String
| The Application ID of where you would like to add the index |
| destinationApiKey
| String
| The API Key for the new index |
| destinationIndexName
| String
| The new index name |
| limit
(Optional) | Number
| Optional: Limit the amount of records to transfer |
| requestOptions
(Optional) | Object
| Optional: Object containing request options for browseAll |
| copySettings
(Optional) | Boolean
| Optional: Copy destination settings with the transformation |
Usage
Copy
algoliaIndexTransform.copy();
Map
algoliaIndexTransform.map(item => ({
id: item.id
}));
Filter
algoliaIndexTransform.filter(item => item.popular === true);
Reduce
algoliaIndexTransform.reduce((acc, cur) => acc + cur);