-
Notifications
You must be signed in to change notification settings - Fork 0
/
users.ts
36 lines (27 loc) · 1.24 KB
/
users.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import DatanestClient, { PaginatedResponse, UUID } from "./index";
export type User = {
uuid: string;
name: string | null;
email: string;
initials?: string | null;
}
export async function getCompanyUsers(client: DatanestClient, params?: { page?: number, query?: string }): Promise<PaginatedResponse<User>> {
const response = await client.get('v1/users', params);
const data = await response.json();
return data;
}
export async function inviteCompanyUser(client: DatanestClient, userData: { email: string, name?: string | null, initials?: string | null }): Promise<User> {
const response = await client.post('v1/users', userData);
const data = await response.json();
return data.user;
}
export async function patchCompanyUser(client: DatanestClient, userUuid: string, userData: { email?: string, name?: string | null, initials?: string | null }): Promise<User> {
const response = await client.patch('v1/users/' + userUuid, userData);
const data = await response.json();
return data.user;
}
export async function deleteCompanyUser(client: DatanestClient, userUuid: UUID): Promise<{}> {
const response = await client.delete('v1/users/' + userUuid);
const data = await response.json();
return data;
}