1

Get Changes

by
Published Jul 26, 2022
Script gdrive Verified

The script

Submitted by hugo989 Typescript (fetch-only)
Verified 6 days ago
1
//native
2

3
import * as wmill from "windmill-client@1";
4

5
type Gdrive = {
6
  token: string;
7
};
8
export async function main(gdrive_auth: Gdrive) {
9
  const START_PAGE_URL = `https://www.googleapis.com/drive/v3/changes/startPageToken/`;
10

11
  let last_start_page_token: string | undefined =
12
    await wmill.getInternalState();
13

14
  const token = gdrive_auth["token"];
15

16
  if (last_start_page_token == undefined) {
17
    const START_PAGE_URL = `https://www.googleapis.com/drive/v3/changes/startPageToken`;
18

19
    const response_sp = await fetch(START_PAGE_URL, {
20
      method: "GET",
21
      headers: {
22
        Authorization: "Bearer " + token,
23
        "Content-Type": "application/json",
24
      },
25
    });
26
    const start_page_result = await response_sp.json();
27

28
    last_start_page_token = start_page_result["startPageToken"];
29
  }
30

31
  const CHECK_CHANGES_URL = `https://www.googleapis.com/drive/v3/changes/?pageToken=${last_start_page_token}`;
32

33
  const changes_response = await fetch(CHECK_CHANGES_URL, {
34
    method: "GET",
35
    headers: {
36
      Authorization: "Bearer " + token,
37
      "Content-Type": "application/json",
38
    },
39
  });
40

41
  const result_changes = await changes_response.json();
42

43
  await wmill.setInternalState(result_changes["newStartPageToken"]);
44

45
  return result_changes["changes"];
46
}
47

Other submissions
  • Submitted by rossmccrann Deno
    Created 398 days ago
    1
    import * as wmill from "https://deno.land/x/[email protected]/mod.ts";
    2
    
    
    3
    type Gdrive = {
    4
      token: string;
    5
    };
    6
    export async function main(gdrive_auth: Gdrive) {
    7
      const START_PAGE_URL = `https://www.googleapis.com/drive/v3/changes/startPageToken/`;
    8
    
    
    9
      let last_start_page_token: string | undefined =
    10
        await wmill.getInternalState();
    11
    
    
    12
      const token = gdrive_auth["token"];
    13
    
    
    14
      if (last_start_page_token == undefined) {
    15
        const START_PAGE_URL = `https://www.googleapis.com/drive/v3/changes/startPageToken`;
    16
    
    
    17
        const response_sp = await fetch(START_PAGE_URL, {
    18
          method: "GET",
    19
          headers: {
    20
            Authorization: "Bearer " + token,
    21
            "Content-Type": "application/json",
    22
          },
    23
        });
    24
        const start_page_result = await response_sp.json();
    25
    
    
    26
        last_start_page_token = start_page_result["startPageToken"];
    27
      }
    28
    
    
    29
      const CHECK_CHANGES_URL = `https://www.googleapis.com/drive/v3/changes/?pageToken=${last_start_page_token}`;
    30
    
    
    31
      const changes_response = await fetch(CHECK_CHANGES_URL, {
    32
        method: "GET",
    33
        headers: {
    34
          Authorization: "Bearer " + token,
    35
          "Content-Type": "application/json",
    36
        },
    37
      });
    38
    
    
    39
      const result_changes = await changes_response.json();
    40
    
    
    41
      await wmill.setInternalState(result_changes["newStartPageToken"]);
    42
    
    
    43
      return result_changes["changes"];
    44
    }
    45