https://api.slack.com/methods/users.list
コード内のURL的にこちらですよね?
JSON
1 {
2 "ok" : true ,
3 "members" : [ {
4 "id" : "W012A3CDE" ,
5 "team_id" : "T012AB3C4" ,
6 "name" : "spengler" ,
7 "deleted" : false ,
8 "color" : "9f69e7" ,
9 "real_name" : "spengler" ,
10 "tz" : "America/Los_Angeles" ,
11 "tz_label" : "Pacific Daylight Time" ,
12 "tz_offset" : -25200 ,
13 "profile" : {
14 "avatar_hash" : "ge3b51ca72de" ,
15 "status_text" : "Print is dead" ,
16 "status_emoji" : ":books:" ,
17 "real_name" : "Egon Spengler" ,
18 "display_name" : "spengler" ,
19 "real_name_normalized" : "Egon Spengler" ,
20 "display_name_normalized" : "spengler" ,
21 "email" : "spengler@ghostbusters.example.com" ,
22 "image_24" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
23 "image_32" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
24 "image_48" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
25 "image_72" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
26 "image_192" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
27 "image_512" : "https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg" ,
28 "team" : "T012AB3C4"
29 } ,
30 "is_admin" : true ,
31 "is_owner" : false ,
32 "is_primary_owner" : false ,
33 "is_restricted" : false ,
34 "is_ultra_restricted" : false ,
35 "is_bot" : false ,
36 "updated" : 1502138686 ,
37 "is_app_user" : false ,
38 "has_2fa" : false
39 } ] ,
40 "cache_ts" : 1498777272 ,
41 "response_metadata" : {
42 "next_cursor" : "dXNlcjpVMEc5V0ZYTlo="
43 }
44 }
構造的にこうなっているので、JSON.parse(response)の結果は連想配列のはずです。
ここからkeyが[member]の要素を取り出す必要があります。
この[member]に格納されている要素は、userの一覧が格納されている配列です。
//const members = JSON.parse(response).members; ←後ろに.membersをつけるとエラーが出ない。
なので、これで正しいと思います。