0

Get Member's Notifications

by
Published Oct 30, 2023

Get a member's notifications

Script trello Verified

The script

Submitted by hugo697 Typescript (fetch-only)
Verified 398 days ago
1
type Trello = {
2
  key: string;
3
  token: string;
4
};
5
/**
6
 * Get Member's Notifications
7
 * Get a member's notifications
8
 */
9
export async function main(
10
  auth: Trello,
11
  id: string,
12
  entities: string | undefined,
13
  display: string | undefined,
14
  filter: string | undefined,
15
  read_filter: string | undefined,
16
  fields: string | undefined,
17
  limit: string | undefined,
18
  page: string | undefined,
19
  before: string | undefined,
20
  since: string | undefined,
21
  memberCreator: string | undefined,
22
  memberCreator_fields: string | undefined
23
) {
24
  const url = new URL(`https://api.trello.com/1/members/${id}/notifications`);
25
  for (const [k, v] of [
26
    ["entities", entities],
27
    ["display", display],
28
    ["filter", filter],
29
    ["read_filter", read_filter],
30
    ["fields", fields],
31
    ["limit", limit],
32
    ["page", page],
33
    ["before", before],
34
    ["since", since],
35
    ["memberCreator", memberCreator],
36
    ["memberCreator_fields", memberCreator_fields],
37
    ["key", auth.key],
38
    ["token", auth.token],
39
  ]) {
40
    if (v !== undefined && v !== "") {
41
      url.searchParams.append(k, v);
42
    }
43
  }
44
  const response = await fetch(url, {
45
    method: "GET",
46
    headers: {
47
      Authorization: undefined,
48
    },
49
    body: undefined,
50
  });
51
  if (!response.ok) {
52
    const text = await response.text();
53
    throw new Error(`${response.status} ${text}`);
54
  }
55
  return await response.json();
56
}
57