createOrReplace #
Creates a new document in the persistent data storage, or replaces its content if it already exists.
The optional parameter refresh
can be used with the value wait_for
in order to wait for the document to be indexed (indexed documents are available for search
).
createOrReplace(index, collection, id, document, [options]);
Argument | Type | Description |
---|---|---|
index | string | Index name |
collection | string | Collection name |
id | string | Document ID |
document | object | Document content |
options | object | Query options |
Options #
Additional query options
Options | Type (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 #
Resolves to an object containing the document creation result.
Name | Type | Description |
---|---|---|
_id | string | The id of the newly created document |
_version | number | The version of the document in the persistent data storage |
_source | object | The created document |
Usage #
try {
const response = await kuzzle.document.createOrReplace(
'nyc-open-data',
'yellow-taxi',
'some-id',
{ lastName: 'McHan' }
);
console.log(response);
/*
response =
{ _id: 'some-id',
_version: 1,
created: true,
_source:
{ lastName: 'McHan',
_kuzzle_info:
{ author: '-1',
createdAt: 1537443212089,
updatedAt: null,
updater: null } } }
*/
} catch (error) {
console.error(error.message);
}
Edit this page on Github(opens new window)