This repository has been archived by the owner on Dec 7, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
API Notes
Adam Verner edited this page Dec 7, 2022
·
1 revision
Notes from discovering the API, nothing too interesting...
from collections import defaultdict
from typing import List
import canvasapi.folder
from canvasapi import Canvas
if __name__ != '__main__':
exit()
API_URL = 'https://hvl.instructure.com'
API_KEY = "10747~6XlqxF14JcUD3iUbBN2cC9Yz9NJgnHYrMlr2532I7Na2xaukuvAUUgBfztbEEo8v"
canvas = Canvas(API_URL, API_KEY)
user = canvas.get_user('self')
print(*user.get_folder('/'))
fs_map = {folder.full_name: folder for folder in user.get_folders()}
fs_map.update({folder.full_name: file for file in user.get_()})
canvasapi.folder.Folder.get_files()
folders: List[canvasapi.folder.Folder]
folders = user.get_folders()
# children mapping
folder_map = defaultdict(lambda: {'children': []})
name_map = dict()
# find the root folder
root_folder = next(filter(lambda f: f.parent_folder_id is None, folders))
print('root_folder = ', root_folder.name)
for folder in folders:
folder_map[folder.parent_folder_id]['children'].append(folder.id)
name_map[folder.name] = folder.id
print(folder_map)
print(name_map)