@deliverart/sdk-js-user
v2.10.6
Published
Deliverart JavaScript SDK for User Management
Readme
@deliverart/sdk-js-user
User management package for the DeliverArt JavaScript SDK.
Installation
npm install @deliverart/sdk-js-user @deliverart/sdk-js-coreExported Types
Core Types
User- User informationUserDetails- Extended user with roles and permissionsUserRole- User role type
User Role Types
type UserRole =
| 'ROLE_ADMIN'
| 'ROLE_COMPANY_ADMIN'
| 'ROLE_MANAGER'
| 'ROLE_STAFF'
| 'ROLE_DRIVER'
| 'ROLE_CUSTOMER'IRI Types
UserIri- User IRI (/users/:id)
Available Requests
CreateUser
import { CreateUser } from '@deliverart/sdk-js-user';
const user = await sdk.call(new CreateUser({
email: '[email protected]',
password: 'securePassword123',
firstName: 'John',
lastName: 'Doe',
roles: ['ROLE_STAFF'],
company: '/companies/123'
}));Input Parameters:
email: string(required) - Email addresspassword: string(required) - PasswordfirstName: string(required) - First namelastName: string(required) - Last nameroles: UserRole[](required) - User rolescompany?: string(optional) - Company IRIphoneNumber?: string(optional) - Phone number
GetUsers
import { GetUsers } from '@deliverart/sdk-js-user';
const users = await sdk.call(new GetUsers({
query: {
'roles[]': ['ROLE_STAFF', 'ROLE_MANAGER'],
company: '/companies/123',
page: 1
}
}));Query Parameters:
email?: string- Filter by emailroles[]?: UserRole[]- Filter by rolescompany?: string- Filter by companypage?: number- Page number
GetUserDetails
import { GetUserDetails } from '@deliverart/sdk-js-user';
const user = await sdk.call(new GetUserDetails('user-123'));UpdateUser
import { UpdateUser } from '@deliverart/sdk-js-user';
const updated = await sdk.call(new UpdateUser('user-123', {
firstName: 'Jane',
roles: ['ROLE_MANAGER']
}));DeleteUser
import { DeleteUser } from '@deliverart/sdk-js-user';
await sdk.call(new DeleteUser('user-123'));Complete Usage Example
import { sdk } from './lib/sdk';
import { CreateUser, GetUsers, UpdateUser } from '@deliverart/sdk-js-user';
async function userManagement() {
// Create staff user
const staff = await sdk.call(new CreateUser({
email: '[email protected]',
password: 'tempPassword123',
firstName: 'Mario',
lastName: 'Rossi',
roles: ['ROLE_STAFF'],
company: '/companies/123',
phoneNumber: '+39123456789'
}));
// Get all staff members
const staffMembers = await sdk.call(new GetUsers({
query: {
'roles[]': ['ROLE_STAFF'],
company: '/companies/123'
}
}));
// Promote to manager
await sdk.call(new UpdateUser(staff.id, {
roles: ['ROLE_MANAGER']
}));
}License
MIT
