SDK
SDK Javascript v7.x
2

mCreateOrReplace #

Creates or replaces multiple documents.


mCreateOrReplace(index, collection, documents, [options]);
ArgumentTypeDescription
index
string
Index name
collection
string
Collection name
documents
object[]
Array of documents to create
options
object
Query options

Options #

Additional query options

OptionsType
(default)
Description
queuable
boolean

(true)
If true, queues the request during downtime, until connected to Kuzzle again
refresh
string

("")
If set to wait_for, waits for the change to be reflected for search (up to 1s)
silent
boolean

(false)
If true, then Kuzzle will not generate notifications
Available since 7.5.3
timeout
number

(-1)
Time (in ms) during which a request will still be waited to be resolved. Set it -1 if you want to wait indefinitely
triggerEvents
boolean

(false)
If set to true, will trigger events even if using Embeded SDK. You should always ensure that your events/pipes does not create an infinite loop.
Available since Kuzzle 2.31.0

Resolves #

Returns an object containing 2 arrays: successes and errors

Each created or replaced document is an object of the successes array with the following properties:

NameTypeDescription
_id
string
Document ID
_version
number
Version of the document in the persistent data storage
_source
object
Document content
created
boolean
True if the document was created

Each errored document is an object of the errors array with the following properties:

NameTypeDescription
document
object
Document that cause the error
status
number
HTTP error status
reason
string
Human readable reason

Usage #

try {
  const documents = [
    {
      _id: 'some-id',
      body: { 'capacity': 4 }
    },
    {
      _id: 'some-other-id',
      body: { 'capacity': 4 }
    }
  ];
  const response = await kuzzle.document.mCreateOrReplace(
    'nyc-open-data',
    'yellow-taxi',
    documents
  );
  console.log(response);
  /*
    {
      "successes": [
        {
          "_id": "some-id",
          "_version": 1,
          "created": true,
          "status": 200,
          "_source": {
            "_kuzzle_info": {
              "author": "-1",
              "updater": null,
              "updatedAt": null,
              "createdAt": 1542036740596
            },
            "capacity": 4
          }
        },
        {
          "_id": "some-other-id",
          "_version": 1,
          "created": true,
          "status": 200,
          "_source": {
            "_kuzzle_info": {
              "author": "-1",
              "updater": null,
              "updatedAt": null,
              "createdAt": 1542036740596
            },
            "capacity": 4
          }
        }
      ],
      "errors": []
    }
  */
  console.log(`Successfully createOrReplace ${response.successes.length} documents`);
} catch (error) {
  console.error(error.message);
}