0% found this document useful (0 votes)
3 views1 page

API Controllers - Visual Tree1

The document outlines various API controllers and their endpoints for user authentication, profile management, workspace and task management, note handling, calendar synchronization, file operations, notifications, team management, and external integrations. Each controller includes specific actions such as creating, updating, deleting, and retrieving information related to users, tasks, notes, and files. Additionally, it details the process for connecting to external services and managing OAuth authentication.

Uploaded by

mosalehclean
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views1 page

API Controllers - Visual Tree1

The document outlines various API controllers and their endpoints for user authentication, profile management, workspace and task management, note handling, calendar synchronization, file operations, notifications, team management, and external integrations. Each controller includes specific actions such as creating, updating, deleting, and retrieving information related to users, tasks, notes, and files. Additionally, it details the process for connecting to external services and managing OAuth authentication.

Uploaded by

mosalehclean
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Register User

Login User

Refresh Tokens
1. Auth Controller **Endpoints**
Revoke Refresh Token

Logout

Forgot / Reset Password 

Get User Profile

Update User Profile

Theme
2. User Controller **Endpoints**
Update Settings Language

Preferences

Upload Profile Picture 

Create Workspace / Project

Get All User Workspaces

Update Workspace Info


3. Workspace Controller **Endpoints**
Delete Workspace

Invite Members

Remove Member 

Create Task

Update Task

Assign Members

Set Deadlines

To-do
4. Task Controller **Endpoints**
Change Status Doing

Done

Delete Task

By Project
Get Tasks
By User 

Create Note

Update Note

Delete Note
5. Notes Controller **Endpoints**
By Folder
Get Notes
By Tag

Real-time Sync Endpoint 

AI_Agent Controller

Create Event

Update Event

Google Calendar
7. Calendar Controller **Endpoints** Sync with External Calendars
Outlook

Daily

Get View Weekly

API Controllers – Monthly 

Visual Tree
Upload File

Download File

Delete File
8. File Controller **Endpoints**
List Files for Project

Google Drive

External Integrations OneDrive

GitHub 

Get Notifications

Mark as Read
9. Notification Controller **Endpoints**
Push Notifications to User

Task / Project Triggered Notifications 

Create Team

Add Member

10. Team Controller **Endpoints** Remove Member

Change Roles

Get Team Details 

Long Polling / WebSockets Endpoint

11. Sync Controller Tasks


<i>(High-performance, real-time
**Endpoints** Sync Changes Notes
sync between React Web & Flutter
Mobile)</i> Projects

Conflict Resolver Endpoint 

Connect to External Provider

Providers: `google`, `github`, `onedrive`,


**POST** `/connect/{provider}`
`dropbox`

Response: Redirect URL for authentication

OAuth Callback

Success message
**GET** `/connect/{provider}/callback`
Saved tokens
Response:
Provider info

Expiration time

Get All Connected Apps

**GET** `/connect` Provider list

Response: Connection status

Last sync date

Disconnect External Service


**DELETE** `/connect/{provider}`
Response: `"Service disconnected successfully"`

Browse External Files

`path` (optional)
Query Parameters:
`search` (optional)
**GET** `/connect/{provider}/files`
Folders

Files
12. ConnectApp Controller
(External Integrations & OAuth) Response: Type (doc / pdf / image / code)

Size

Last modified

Import File → AiGenda

`fileId`
**POST** `/connect/{provider}/import` Body:
`destination` (project / task / note)

Response: Imported entity info

Export from AiGenda → External Service

`noteId` / `taskId`
**POST** `/connect/{provider}/export` Body:
Export format (`docx`, `pdf`, `md`, `txt`)

Export URL
Response:
Confirmation

Force Manual Sync


**POST** `/connect/{provider}/sync`
Updated items
Response:
Conflicts (if any)

Webhook Receiver

`provider`

`event`
**POST** `/connect/{provider}/webhook` Body:
`fileId`

`action` (updated / deleted / created)

Response: `200 OK`

You might also like