supernote.models
API Data Model for Supernote (Private) Cloud Server.
This module describes the data models used by the Supernote Private Cloud API. These models serve as a reference for both client and server implementations looking to interoperate with the Supernote Private Cloud API. While this may also work with the Supernote hosted cloud public API, it is not intended to be used there to not put load on Supernote API servers.
We've described the sections of the system in terms of "Controllers" and shared responsibilities to have a common mental model for how the system works.
1. Authentication & User Management
See supernote.models.auth and supernote.models.user for more information
on the data models related to these API endpoints.
Login & Logout
The LoginController is the main controller for handling user login and logout requests.
POST /api/official/user/account/login/new: Account LoginPOST /api/official/user/account/login/equipment: Device Token LoginPOST /api/user/sms/login: SMS LoginPOST /api/user/logout: LogoutPOST /api/user/query/loginRecord: Query Login HistoryPOST /api/user/query/token: Validate/Query TokenPOST /api/official/user/query/random/code: Get Random Code (for login crypto)
User Profile
The UserController is the main controller for handling user profile requests.
POST /api/user/check/exists: Check User ExistsPOST /api/official/user/check/exists/server: Check User Exists (Server Aware)POST /api/user/query: Query Current User (Internal)POST /api/user/query/info: Query User InfoPOST /api/user/update: Update User InfoPOST /api/user/update/name: Update NicknamePOST /api/user/query/all: Query All UsersPUT /api/user/freeze: Freeze/Unfreeze AccountPOST /api/user/query/one: Query Single UserGET /api/user/query/user/{userId}: Query User by ID
Registration
The UserRegisterController is the main controller for handling user registration requests.
POST /api/user/register: User RegistrationPOST /api/user/account/clear: Delete Account
Password & Security
The PasswordController is the main controller for handling password and security requests.
POST /api/official/user/retrieve/password: Retrieve PasswordPUT /api/user/password: Change Password
Validation Codes
The ValidCodeController is the main controller for handling validation code requests.
POST /api/user/mail/validcode: Send Email Validation CodePOST /api/user/check/validcode: Verify CodeGET /api/base/pic/code: Get Graphic Verification Code
Account Settings
The AccountController is the main controller for handling account settings requests.
PUT /api/user/email: Update Email Address
2. File Management (Web & General)
See supernote.models.file_web for more information on the data models related to these API endpoints.
Web File Operations
The FileLocalWebController is the main controller for handling web file operations requests.
POST /api/file/list/query: List Files & FoldersPOST /api/file/folder/list/query: List Folders OnlyPOST /api/file/capacity/query: Query Storage UsagePOST /api/file/delete: Delete File/FolderPOST /api/file/folder/add: Create New FolderPOST /api/file/move: Move File/FolderPOST /api/file/copy: Copy File/FolderPOST /api/file/rename: Rename File/FolderPOST /api/file/list/search: Search FilesPOST /api/file/path/query: Get File Path Info- Recycle Bin:
POST /api/file/recycle/list/query: List Recycle BinPOST /api/file/recycle/clear: Empty Recycle BinPOST /api/file/recycle/delete: Permanently DeletePOST /api/file/recycle/revert: Restore File
- Upload/Download:
POST /api/file/download/url: Get Download URLPOST /api/file/upload/apply: Request UploadPOST /api/file/upload/finish: Complete Upload
Basic File Ops
The FileController is the main controller for handling basic file operations requests.
POST /api/file/add/folder/file/deleteApi: Add Folder/File (Desktop)POST /api/file/2/files/query/deleteApi: Query File (Dropbox style)POST /api/file/2/files: Query File by Path
File Search
The FileSearchController is the main controller for handling file search requests.
POST /api/file/label/list/search: Search by Label/Name
Terminal Specific
The TerminalFileUploadController is the main controller for handling terminal file upload requests.
POST /api/file/terminal/upload/apply: Terminal Upload RequestPOST /api/file/terminal/upload/finish: Terminal Upload Complete
3. Cloud/NAS Synchronization (Device API)
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
See supernote.models.file_device for more information on the data models related to these API endpoints.
Sync Handshake
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
POST /api/file/2/files/synchronous/start: Start Sync SessionPOST /api/file/2/files/synchronous/end: End Sync Session
Device File Operations
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
POST /api/file/2/files/create_folder_v2: Create FolderPOST /api/file/2/files/list_folder: List Folder (V2)POST /api/file/3/files/list_folder_v3: List Folder (V3)POST /api/file/3/files/delete_folder_v3: Delete Folder/FilePOST /api/file/3/files/query_v3: Query FilePOST /api/file/3/files/query/by/path_v3: Query File by PathPOST /api/file/3/files/move_v3: Move FilePOST /api/file/3/files/copy_v3: Copy FilePOST /api/file/2/users/get_space_usage: Check Capacity
Device Upload/Download
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
POST /api/file/3/files/upload/apply: Upload RequestPOST /api/file/2/files/upload/finish: Upload FinishPOST /api/file/3/files/download_v3: Download Request
File Conversion
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
POST /api/file/note/to/pdf: Convert Note to PDFPOST /api/file/note/to/png: Convert Note to PNGPOST /api/file/pdfwithmark/to/pdf: Convert PDF with Mark to PDF
Connectivity
The FileLocalController is the main controller for handling cloud/nas synchronization requests.
GET /api/file/query/server: Ping Server
4. Advanced Features
Sharing
The ShareController is the main controller for handling sharing requests.
POST /api/file/share/record/add: Create Share Record
Scheduling & Calendar
The ScheduleController is the main controller for handling scheduling and calendar requests.
See supernote.models.schedule module for more information on the data models
related to these API endpoints.
- Groups:
POST /api/file/schedule/group: Add GroupPUT /api/file/schedule/group: Update GroupDELETE /api/file/schedule/group/{taskListId}: Delete GroupPOST /api/file/schedule/group/clear: Clear GroupGET /api/file/schedule/group/{taskListId}: Get GroupPOST /api/file/schedule/group/all: Get All Groups
- Tasks:
POST /api/file/schedule/task: Add TaskPUT /api/file/schedule/task: Update TaskPUT /api/file/schedule/task/list: Batch Update TasksDELETE /api/file/schedule/task/{taskId}: Delete TaskGET /api/file/schedule/task/{taskId}: Get TaskPOST /api/file/schedule/task/all: Get All Tasks
- Sorting:
POST /api/file/schedule/sort: Add SortPUT /api/file/schedule/sort: Update SortDELETE /api/file/schedule/sort/{taskListId}: Delete SortPOST /api/file/query/schedule/sort: Get Sort
Summaries & Tags
The SummaryController is the main controller for handling summaries and tags requests.
POST /api/file/add/summary/tag: Add TagPUT /api/file/update/summary/tag: Update TagDELETE /api/file/delete/summary/tag: Delete TagGET /api/file/query/summary/tag: Query TagsPOST /api/file/add/summary: Add SummaryPUT /api/file/update/summary: Update SummaryDELETE /api/file/delete/summary: Delete SummaryPOST /api/file/query/summary: Query SummariesPOST /api/file/download/summary: Download SummaryPOST /api/file/upload/apply/summary: Upload Summary
5. System & Infrastructure
Equipment Management
The EquipmentController is the main controller for handling equipment management requests.
POST /api/terminal/user/activateEquipment: Activate DevicePOST /api/terminal/user/bindEquipment: Bind DevicePOST /api/terminal/equipment/unlink: Unbind DevicePOST /api/equipment/bind/status: Check Bind StatusPOST /api/equipment/query/user/equipment/deleteApi: Query Equipment ListPOST /api/equipment/query/by/equipmentno: Query by Serial NoGET /api/equipment/query/by/{userId}: Query by User ID
OSS (Object Storage)
The OssLocalController is the main controller for handling object storage requests.
POST /api/oss/generate/upload/url: Get Upload URLPOST /api/oss/upload: Upload FilePOST /api/oss/upload/part: Multipart UploadPOST /api/oss/generate/download/url: Get Download URLGET /api/oss/download: Download File
Configuration & Logs
Other misc controllers (EmailServerController, SensitiveOperationController, DictionaryController)
POST /api/save/email/config: Save Email ConfigGET /api/query/email/config: Query Email ConfigPOST /api/user/query/sensitive/record: Query Sensitive Op RecordsPOST /api/system/base/dictionary/deleteApi: Query Dictionary