es-bulk-update-builder

1.0.0 • Public • Published

es-bulk-update-builder

Bulk update request body builder for Elasticsearch

npm version Codeship Status for stevejay/es-bulk-update-builder Coverage Status license

NPM

Install

$ npm install --save es-bulk-update-builder

Usage

Usage is basically as follows:

const BulkUpdateBuilder = require('es-bulk-update-builder');
 
const body = new BulkUpdateBuilder()
    .index({ name: 'my-doc' }, 'some-index', 'some-type', 'some-id', 3)
    .update({ name: 'other-doc' }, 'other-index', 'other-type', 'other-id', 4)
    .delete('another-index', 'another-type', 'another-id', 5)
    .build();
 
// The body variable can now be passed to the JavaScript elasticsearch client, e.g.:
// client.bulk({ body: body });

The index method is for adding a document, the update method is for updating a document, and the delete method is for deleting a document.

For each action you can specify a version number, for example 3 in the following example:

const body = new BulkUpdateBuilder()
    .index({ name: 'my-doc' }, 'some-index', 'some-type', 'some-id', 3);

If you do specify a version, the version type is set to external. You can override that by specifying the desired version type, which in the following example is external_gte:

const body = new BulkUpdateBuilder()
    .index({ name: 'my-doc' }, 'some-index', 'some-type', 'some-id', 3, 'external_gte');

To specify no versioning information, simply omit it:

const body = new BulkUpdateBuilder()
    .index({ name: 'my-doc' }, 'some-index', 'some-type', 'some-id');

License

MIT

Dependencies (0)

    Dev Dependencies (7)

    Package Sidebar

    Install

    npm i es-bulk-update-builder

    Weekly Downloads

    2

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    13.2 kB

    Total Files

    7

    Last publish

    Collaborators

    • middleengine