Skip to content

Commit fca2b0c

Browse files
committed
feat: [#49] new function to get the list of user profiles
1 parent 67bb2a7 commit fca2b0c

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

src/modes/rest/resources/user.ts

+23-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import {Rest} from "../rest";
22
import {IRestResource} from "../restResource";
3-
import {fetchPost} from "../../../utils/fetch";
4-
import {TokenResponse} from "torrust-index-types-lib";
3+
import {fetchGet, fetchPost} from "../../../utils/fetch";
4+
import { TokenResponse, UserProfile } from "torrust-index-types-lib";
5+
56

67
type LoginUserParams = {
78
login: string
@@ -41,6 +42,10 @@ type NewUser = {
4142
user_id: number
4243
}
4344

45+
type GetUserProfilesResponse = {
46+
data: Array<UserProfile>
47+
}
48+
4449
export class UserResource implements IRestResource {
4550
client: Rest;
4651

@@ -112,4 +117,20 @@ export class UserResource implements IRestResource {
112117
return Promise.reject(err.response?.data?.error ?? err);
113118
});
114119
}
120+
async getUserProfiles(): Promise<Array<UserProfile>> {
121+
return await fetchGet<GetUserProfilesResponse>(
122+
`${this.client.apiBaseUrl}/users`,
123+
{
124+
"Authorization": `Bearer ${this.client.authToken}`,
125+
"Content-Type": "application/json"
126+
}
127+
)
128+
.then((res) => {
129+
return Promise.resolve(res.data);
130+
})
131+
.catch((err) => {
132+
return Promise.reject(err.response?.data?.error ?? err);
133+
});
134+
}
115135
}
136+

0 commit comments

Comments
 (0)