createOrReplaceProfile #
Creates a new profile or, if the provided profile identifier already exists, replaces it.
createOrReplaceProfile(id, body, [options]);
Property | Type | Description |
---|---|---|
id | string | Profile identifier |
body | object | Profile definition content |
options | object | Query options |
body #
Property | Type | Description |
---|---|---|
policies | object | Profile content |
options #
Property | Type (default) | Description |
---|---|---|
queuable | boolean ( true ) | If true , queues the request during downtime, until connected to Kuzzle again |
refresh | boolean ( false ) | If set to wait_for , Kuzzle will not respond until the created/replaced profile is indexed |
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 #
A Profile
object representing the updated/created profile.
Usage #
try {
const response = await kuzzle.security.createOrReplaceProfile(
'myProfile',
{
policies: [
{
roleId: 'default'
},
{
roleId: 'admin',
restrictedTo: [
{
index: 'someindex',
collections: [
'collection1',
'collection2'
]
}
]
}
]
}
);
console.log(response);
/*
Profile {
_id: 'myProfile',
policies:
[ { roleId: 'default' },
{ roleId: 'admin', restrictedTo: [Array] } ] }
*/
console.log('Profile successfully updated');
} catch (e) {
console.error(e);
}
Edit this page on Github(opens new window)