docs: dokumentasi slug di module project & task

This commit is contained in:
Muhammad Zhafran Ilham
2026-06-23 23:58:24 +07:00
parent 8aedb19ca1
commit 76eba6eb13
2 changed files with 134 additions and 36 deletions
+33 -12
View File
@@ -16,6 +16,9 @@ const router = express.Router();
* id:
* type: integer
* example: 1
* slug:
* type: string
* example: internify-lms
* project_icon:
* type: string
* enum: [code, chart, cloud, mobile, gear, users, clipboard, speedometer, lightbulb, shield]
@@ -128,6 +131,9 @@ const router = express.Router();
* id:
* type: integer
* example: 1
* slug:
* type: string
* example: internify-platform-dev
* project_icon:
* type: string
* example: code
@@ -216,6 +222,9 @@ const router = express.Router();
* id:
* type: integer
* example: 1
* slug:
* type: string
* example: database-setup
* title:
* type: string
* example: Database Setup
@@ -332,9 +341,15 @@ const router = express.Router();
* id:
* type: integer
* example: 1
* slug:
* type: string
* example: database-setup
* id_project:
* type: integer
* example: 1
* project_slug:
* type: string
* example: internify-platform-dev
* project_name:
* type: string
* example: Internify Platform Dev
@@ -526,7 +541,7 @@ router.get('/get', verifyJWT, projectController.getAllProjects);
* /project-api/get/{id}:
* get:
* summary: Get project detail
* description: Admin can access any project. Intern can only access project where they are active members.
* description: Admin can access any project. Mentor can access their own project. Intern can only access project where they are active members. The path parameter supports project ID or slug.
* tags: [Project]
* security:
* - bearerAuth: []
@@ -534,10 +549,12 @@ router.get('/get', verifyJWT, projectController.getAllProjects);
* - in: path
* name: id
* schema:
* type: integer
* oneOf:
* - type: integer
* - type: string
* required: true
* description: Project ID
* example: 1
* description: Project ID or slug
* example: internify-platform-dev
* responses:
* 200:
* description: Project detail retrieved successfully
@@ -561,7 +578,7 @@ router.get('/get/:id', verifyJWT, projectController.getProjectById);
* /project-api/update/{id}:
* patch:
* summary: Update project
* description: Update project information. Only admin can access this endpoint.
* description: Update project information. Only admin can access this endpoint. The path parameter supports project ID or slug.
* tags: [Project]
* security:
* - bearerAuth: []
@@ -569,10 +586,12 @@ router.get('/get/:id', verifyJWT, projectController.getProjectById);
* - in: path
* name: id
* schema:
* type: integer
* oneOf:
* - type: integer
* - type: string
* required: true
* description: Project ID
* example: 1
* description: Project ID or slug
* example: internify-platform-dev
* requestBody:
* required: true
* content:
@@ -613,7 +632,7 @@ router.patch('/update/:id', verifyJWT, isMentorOrAdmin, projectController.update
* /project-api/delete/{id}:
* delete:
* summary: Archive project
* description: Archive project by changing its status to archived. This endpoint does not hard delete the project.
* description: Archive project by changing its status to archived. This endpoint does not hard delete the project. The path parameter supports project ID or slug.
* tags: [Project]
* security:
* - bearerAuth: []
@@ -621,10 +640,12 @@ router.patch('/update/:id', verifyJWT, isMentorOrAdmin, projectController.update
* - in: path
* name: id
* schema:
* type: integer
* oneOf:
* - type: integer
* - type: string
* required: true
* description: Project ID
* example: 1
* description: Project ID or slug
* example: internify-platform-dev
* responses:
* 200:
* description: Project archived successfully