-
Notifications
You must be signed in to change notification settings - Fork 5
API Documentation
Michail Chatzianastasis edited this page Aug 17, 2019
·
10 revisions
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/thesis | GET | page:integer ,university:id,professor:id | Get all available thesis | No |
/thesis/:thesisId | GET | Get the specified thesis | No | |
/thesis/completed | GET | Get all completed thesis | No | |
/thesis/file/:thesisId | GET | Get files of the specified thesis | No | |
/thesis/file/:fileId | GET | Get specified file | No |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/university | GET | page:integer | Get all universities | No |
/university/:universityId | GET | Get specified university by Id | No |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/admin/create_external | POST | email,password in Post body | Create external user | Admin token |
/admin/get_externals | POST | page:integer | Get externals users | Admin token |
/admin/get_external/:userId | GET | Get specified external by id | Admin token | |
/admin/delete_external/:userId | DELETE | Delete specified external | Admin token | |
/admin/get_not_active_externals | POST | page:integer | Get all not-active externals users | Admin token |
/admin/activate_external/:userId | POST | Activate external with the specified Id | Admin token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/admin/get_users | GET | page:integer | Get all users | Admin token |
/admin/get_user/:userId | GET | Get specified user by Id | Admin token | |
/admin/delete_user/:userId | DELETE | Delete specified user | Admin token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/admin/create_university | POST | name of university in Post body | Create university | Admin token |
/admin/delete_university/:universityId | DELETE | Delete specified university | Admin token | |
/admin/application_period | POST | application_period_start and _application_period_end in Post body | Specify the application period | Admin token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/professor/thesis | GET | page:integer | Get all theses of user(professor) | Professor Token |
/professor/:thesisId | GET | Get the specified thesis of user(professor) | Professor Token | |
/professor/thesis | POST | Create a new Thesis | Professor Token | |
/professor/thesis/:thesisId | PUT | Update specified thesis | Professor Token | |
/professor/thesis/:thesisId | DELETE | Delete specified thesis | Professor Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/professor/request | GET | Get all requests of user(professor) | Professor Token | |
/professor/:requestId | GET | Get the specified request | Professor Token | |
/professor/request/:requestId | POST | Accept the specified request | Professor Token | |
/professor/request/:requestId | DELETE | Delete the specified request | Professor Token | |
/professor/assigned | GET | Get all assigned theses of professor to students | Professor Token | |
/professor/assigned/:assignedId | GET | Get the specified thesis of professor to student | Professor Token | |
/professor/pending | GET | Get all pending thesis from externals or students in the university of user(professor) | Professor Token | |
/professor/pending/:pendingId | GET | Get the specified thesis from externals or students in the university of user(professor) | Professor Token | |
/professor/pending/:pendingId | POST | Accept the specified pending thesis | Professor Token | |
/professor/university | GET | Get all professors from the same university | Professor Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/professor/supervise_pending | GET | Get all requests for supervision from other professors to user | Professor Token | |
/professor/supervise_pending/:supervise_requestId | GET | Get the specified request for supervision from other professors to user | Professor Token | |
/professor/supervise_pending/:supervise_requestId | POST | Accept the specified request for supervision | Professor Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/professor/propose_supervisor/:supervisorId/:thesisId | POST | Propose the specified professor to supervise the specified thesis | Professor Token | |
/professor/accept_supervisor | GET | Get the accepted supervision requests from professors | Professor Token | |
/professor/accept_supervisor/:supervise_requestId/ | GET | Get the specified accepted supervision request from professors | Professor Token | |
/professor/accept_supervisor/:supervise_requestId/ | POST | Confirm the supervision request. | Professor Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/professor/draft/:assigned_thesisId | GET | Get drafts names of specified assigned thesis | Professor Token | |
/professor/draft/:assigned_thesisId/:draftId | GET | Get specified draft data of specified assigned thesis | Professor Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/student/check/:thesisId | GET | Check if student has applied in a specified thesis. | Student Token | |
/student/check_assigned | GET | Check if student has assigned to a thesis. | Student Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/student/request | GET | Get all requests of user(student) | Student Token | |
/student/request/:thesisId | POST | Apply for the specified thesis | Student Token | |
/student/request:requestId | Delete | Delete specified request | Student Token | |
/student/request/accepted | GET | Get all accepted requests from professors | Student Token | |
/student/request/:requestId/accepted | GET | Get specified accepted request from professors | Student Token | |
/student/request/:requestId/accepted | GET | Confirm request, the specified thesis of professor is assigned to the student. All other requests of user(student) are deleted | Student Token |
URL | METHOD | QUERY PARAMS | Description | Authorization |
---|---|---|---|---|
/student/pending | GET | Get all pending theses of user(student) | Student Token | |
/student/pending/:thesisId | GET | Get specified pending thesis of user(student) | Student Token | |
/student/pending | POST | Create a thesis. It remains pending until a professor accept the thesis and student confirms the request | Student Token | |
/student/pending/:thesisId | DELETE | Delete specified pending thesis of user(student) | Student Token | |
/student/pending/accepted | GET | Get all accepted pending thesis of user(student) | Student Token | |
/student/pending/:pendingId/accepted | GET | Get accepted specified pending thesis of user(student) | Student Token | |
/student/pending/:pendingId/accepted | POST | Confirm the accepted pending thesis from professor. Now thesis is currently available for assigning to a student | Student Token |
URL | METHOD | Description | Authorization |
---|---|---|---|
/student/thesis | GET | Get the assigned thesis of user(student) | Student Token |
/student/draft/:assigned_thesisId | GET | Get the drafts name (no data) of the assigned thesis | Student Token |
/student/draft/:assigned_thesisId/:draftId | GET | Get the specified draft data of the assigned thesis | Student Token |
/student/draft/:assigned_thesisId | POST | Create a draft for the specified thesis | Student Token |
URL | METHOD | Description | Authorization |
---|---|---|---|
/external/signup | POST | Register External user. In request body there should be an email and password | |
/external/login | POST | Login External user. In request body there should be an email and password. A jwt token is send to client | |
/external/pending | GET | Get all theses of user(external) | External Token |
/external/pending/:pendingId | GET | Get specified pending thesis of user(external) | External Token |
/external/pending | POST | Create pending thesis. | External Token |
/external/pending/accepted | GET | Get all accepted pending theses of user(external) | External Token |
/external/pending/:pendingId/accepted | GET | Get specified accepted pending thesis of user(external) | External Token |
/external/pending/:pendingId/accepted | POST | Confirm the accepted pending thesis from professor. Now thesis is currently available for assigning to a student | External Token |
/external/thesis/file/:thesisId | POST | Post pdf file of specified pending thesis | External Token |
/external/thesis/thesisId | PUT | Edit specified thesis | External Token |
/external/file/:thesisId/:fileId | DELETE | Delete specified pdf file of thesis | External Token |