Appearance
Role
Roles and permission assignments.
Endpoints
| Endpoint | Arguments | Returns |
|---|---|---|
v3.network.role.create | workspaceRoles: { [workspaceId: string]: Array<{ name: string, description?: string, permits: string[] }> } | object |
v3.network.role.list | workspaceRoles: { [workspaceId: string]: string[] } | object |
v3.network.role.remove | workspaceRoles: { [workspaceId: string]: string[] } | boolean |
v3.network.role.update | workspaceRoles: { [workspaceId: string]: { [roleId: string]: { name?: string, description?: string, permits?: string[] } } } | boolean |
v3.network.role.create
Description
Create multiple roles in multiple workspaces at once
Parameters
Argument 1 (Record<WorkspaceId, object[]>, optional):
Example
javascript
const { Client } = require('@hailer/cli');
const client = await Client.create({
host: 'https://api.hailer.com',
username: 'you@example.com',
password: '••••••',
});
const result = await client.request('v3.network.role.create', [
{
'507f1f77bcf86cd799439012': [{
name: 'string', // Role name
}], // fieldId: value
},
]);
console.log(result);Returns
Record<WorkspaceId, Record<roleId, object>>
Auth: requires an authenticated session.
Errors: on failure returns the standard Hailer error object { code, msg, details?, debug? }.
v3.network.role.list
Description
List roles from multiple workspaces
Parameters
Argument 1 (Record<WorkspaceId, roleId[]>, optional):
Example
javascript
const { Client } = require('@hailer/cli');
const client = await Client.create({
host: 'https://api.hailer.com',
username: 'you@example.com',
password: '••••••',
});
const result = await client.request('v3.network.role.list', [
{
'507f1f77bcf86cd799439012': ['507f1f77bcf86cd799439011'], // fieldId: value
},
]);
console.log(result);Returns
Record<WorkspaceId, Record<roleId, object>>
Auth: requires an authenticated session.
Errors: on failure returns the standard Hailer error object { code, msg, details?, debug? }.
v3.network.role.remove
Description
Remove multiple roles in multiple workspaces at once
Parameters
Argument 1 (Record<WorkspaceId, roleId[]>, optional):
Example
javascript
const { Client } = require('@hailer/cli');
const client = await Client.create({
host: 'https://api.hailer.com',
username: 'you@example.com',
password: '••••••',
});
const result = await client.request('v3.network.role.remove', [
{
'507f1f77bcf86cd799439012': ['507f1f77bcf86cd799439011'], // fieldId: value
},
]);
console.log(result);Returns
boolean
Auth: requires an authenticated session.
Errors: on failure returns the standard Hailer error object { code, msg, details?, debug? }.
v3.network.role.update
Description
Edit multiple roles in multiple workspaces at once
Parameters
Argument 1 (Record<WorkspaceId, Record<roleId, object>>, optional):
Example
javascript
const { Client } = require('@hailer/cli');
const client = await Client.create({
host: 'https://api.hailer.com',
username: 'you@example.com',
password: '••••••',
});
const result = await client.request('v3.network.role.update', [
{
'507f1f77bcf86cd799439012': {
'507f1f77bcf86cd799439012': { /* ... */ }, // fieldId: value
}, // fieldId: value
},
]);
console.log(result);Returns
boolean
Auth: requires an authenticated session.
Errors: on failure returns the standard Hailer error object { code, msg, details?, debug? }.