Skip to content

Commit a8775f5

Browse files
committed
fix: 🐛 fetch /group/:id instead of /group/:id/members
this is necessary because the /members endpoint is reserved for admins
1 parent 8a2f7c5 commit a8775f5

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/managers/MemberManager.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { APIMember, PostMemberRemoveResponse } from 'groupme-api-types'
1+
import type { APIGroup, PostMemberRemoveResponse } from 'groupme-api-types'
22
import type { BaseGroup, Client } from '..'
33
import { BaseManager, Collection, FormerMember, FormerMemberManager, FormerMemberState, Member } from '..'
44

@@ -31,10 +31,11 @@ export default class MemberManager extends BaseManager<Member, typeof Member> im
3131
}
3232

3333
private async fetchAll(): Promise<Collection<string, Member>> {
34-
const membersResponse = await this.client.rest.api<APIMember[]>('GET', `groups/${this.group.id}/members`)
34+
// The /members endpoint is reserved for admins, so to be safe we just fetch the group instead
35+
const groupResponse = await this.client.rest.api<APIGroup>('GET', `groups/${this.group.id}`)
3536
const batch = new Collection<string, Member>()
3637

37-
membersResponse.forEach(data => {
38+
groupResponse.members?.forEach(data => {
3839
const user = this.client.users._add({
3940
id: data.user_id,
4041
avatar_url: data.image_url,

0 commit comments

Comments
 (0)