From 43b40c94321ee75fe353999b5981297ff55a036b Mon Sep 17 00:00:00 2001 From: MAILLAL Anas Date: Wed, 7 May 2025 11:04:16 +0200 Subject: [PATCH] feat: just added 403 response --- documentation/openapi/src/adminApi.yaml | 37 +++++++++++-- documentation/openapi/src/bundled.yaml | 54 ++++++++++++++++++- .../openapi/src/entrepreneurApi.yaml | 12 ++++- documentation/openapi/src/sharedApi.yaml | 15 ++++-- documentation/openapi/src/unauthApi.yaml | 8 ++- 5 files changed, 113 insertions(+), 13 deletions(-) diff --git a/documentation/openapi/src/adminApi.yaml b/documentation/openapi/src/adminApi.yaml index 3b66cd1..cd3ca12 100644 --- a/documentation/openapi/src/adminApi.yaml +++ b/documentation/openapi/src/adminApi.yaml @@ -22,6 +22,8 @@ paths: description: Bad Request - Invalid project data provided (e.g., missing required fields). "401": description: Unauthorized - Authentication required or invalid token. + "403": + description: Bad Token - Invalid Keycloack configuration. post: operationId: addProjectManually @@ -49,6 +51,8 @@ paths: description: Bad Request - Project already exists. "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/projects/pending: @@ -70,7 +74,9 @@ paths: items: $ref: "./main.yaml#/components/schemas/project" # Assuming pending projects use the same schema "401": - description: Unauthorized. + description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/request-join: get: @@ -92,6 +98,8 @@ paths: $ref: "./main.yaml#/components/schemas/joinRequest" "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/request-join/decision/{joinRequestId}: post: @@ -121,7 +129,9 @@ paths: "400": description: Bad Request - Invalid input (e.g., missing decision). "401": - description: Unauthorized. + description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/projects/pending/decision: @@ -150,6 +160,8 @@ paths: description: Bad Request - Invalid input (e.g., missing decision). "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/pending-accounts: # Path updated @@ -172,6 +184,8 @@ paths: $ref: "./main.yaml#/components/schemas/user-entrepreneur" "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /admin/accounts/validate/{userId}: post: # Changed to POST as it changes state @@ -195,7 +209,8 @@ paths: description: No Content - Account validated successfully. "400": description: Bad Request - Invalid user ID format. - + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -217,6 +232,8 @@ paths: type: array items: $ref: "./main.yaml#/components/schemas/appointment" + "403": + description: Bad Token - Invalid Keycloack configuration. "404": description: no appointments found. "401": @@ -254,6 +271,8 @@ paths: schema: { $ref: "./main.yaml#/components/schemas/report" } "400": description: Bad Request - Invalid input (e.g., missing content, invalid appointment ID format). + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -288,6 +307,8 @@ paths: schema: { $ref: "./main.yaml#/components/schemas/report" } "400": description: Bad Request - Invalid input (e.g., missing content). + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -314,6 +335,8 @@ paths: description: No Content - Project removed successfully. "400": description: Bad Request - Invalid project ID format. + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -340,7 +363,9 @@ paths: "200": # Use 200 No Content description: No Content - Admin rights granted successfully. "400": - description: Bad Request - Invalid user ID format or user is already an admin. + description: Bad Request - Invalid user ID format or user is already an admin. + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -357,4 +382,6 @@ paths: "200": description: No Content - Admin user created successfully. "401": - description: Unauthorized. \ No newline at end of file + description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. \ No newline at end of file diff --git a/documentation/openapi/src/bundled.yaml b/documentation/openapi/src/bundled.yaml index d663aac..3d4db60 100644 --- a/documentation/openapi/src/bundled.yaml +++ b/documentation/openapi/src/bundled.yaml @@ -257,6 +257,8 @@ paths: description: Bad Request - Problem processing the token or user data derived from it. '401': description: Unauthorized - Valid authentication token required. + '403': + description: Bad Token - Invalid Keycloack configuration. '/unauth/request-join/{projectId}': post: summary: Request to join an existing project @@ -278,6 +280,8 @@ paths: description: Bad Request - Invalid project ID format '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '409': description: Already member/request pending. /admin/pending-accounts: @@ -301,6 +305,8 @@ paths: $ref: '#/components/schemas/user-entrepreneur' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/admin/accounts/validate/{userId}': post: operationId: validateUserAccount @@ -326,6 +332,8 @@ paths: description: Bad Request - Invalid user ID format. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /admin/request-join: get: operationId: getPendingProjects @@ -347,6 +355,8 @@ paths: $ref: '#/components/schemas/joinRequest' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/admin/request-join/decision/{joinRequestId}': post: summary: Approve or reject a pending project join request @@ -376,6 +386,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing decision).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /admin/projects: get: operationId: getAdminProjects @@ -399,6 +411,8 @@ paths: description: 'Bad Request - Invalid project data provided (e.g., missing required fields).' '401': description: Unauthorized - Authentication required or invalid token. + '403': + description: Bad Token - Invalid Keycloack configuration. post: operationId: addProjectManually summary: Manually add a new project @@ -424,6 +438,8 @@ paths: $ref: '#/components/schemas/project' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '409': description: Bad Request - Project already exists. /admin/projects/pending: @@ -447,6 +463,8 @@ paths: $ref: '#/components/schemas/project' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /admin/projects/pending/decision: post: operationId: decidePendingProject @@ -474,6 +492,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing decision).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/admin/appointments/report/{appointmentId}': post: operationId: createAppointmentReport @@ -510,6 +530,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing content, invalid appointment ID format).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. put: operationId: updateAppointmentReport summary: Update an existing appointment report @@ -545,6 +567,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing content).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /admin/appointments/upcoming: get: operationId: getUpcomingAppointments @@ -566,6 +590,8 @@ paths: $ref: '#/components/schemas/appointment' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '404': description: no appointments found. '/admin/projects/{projectId}': @@ -593,6 +619,8 @@ paths: description: Bad Request - Invalid project ID format. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/admin/make-admin/{userId}': post: operationId: grantAdminRights @@ -618,6 +646,8 @@ paths: description: Bad Request - Invalid user ID format or user is already an admin. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /admin/create-account: post: summary: Creates Admin out Jwt Token @@ -632,6 +662,8 @@ paths: description: No Content - Admin user created successfully. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/shared/projects/sectionCells/{projectId}/{sectionId}/{date}': get: operationId: getSectionCellsByDate @@ -676,6 +708,8 @@ paths: description: Bad Request - Invalid parameter format. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/shared/projects/entrepreneurs/{projectId}': get: operationId: getProjectEntrepreneurs @@ -706,7 +740,7 @@ paths: '401': description: Unauthorized. '403': - description: Forbidden - User does not have access to this project. + description: Forbidden - User does not have access to this project or invalid Keycloack configuration. '404': description: Not Found - Project not found. '/shared/projects/admin/{projectId}': @@ -737,7 +771,7 @@ paths: '401': description: Unauthorized. '403': - description: Forbidden - User does not have access to this project. + description: Forbidden - User does not have access to this project or invalid Keycloack configuration. '404': description: Not Found - Project not found. '/shared/projects/appointments/{projectId}': @@ -769,6 +803,8 @@ paths: $ref: '#/components/schemas/appointment' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/shared/appointments/report/{appointmentId}': get: operationId: getAppointmentReport @@ -798,6 +834,8 @@ paths: format: binary '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /shared/appointments/request: post: operationId: requestAppointment @@ -823,6 +861,8 @@ paths: description: Bad Request - Invalid appointment details. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /entrepreneur/projects: get: summary: gets the projectId of the project associated with the entrepreneur @@ -844,6 +884,8 @@ paths: $ref: '#/components/schemas/project' '401': description: Unauthorized or identity not found + '403': + description: Bad Token - Invalid Keycloack configuration. '404': description: Bad Request - Invalid input or ID mismatch. /entrepreneur/projects/request: @@ -873,6 +915,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing name).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. /entrepreneur/sectionCells: post: operationId: addSectionCell @@ -897,6 +941,8 @@ paths: description: 'Bad Request - Invalid input (e.g., missing content or sectionId).' '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '/entrepreneur/sectionCells/{sectionCellId}': put: operationId: modifySectionCell @@ -927,6 +973,8 @@ paths: description: OK - Section cell updated successfully. Returns the updated cell. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '404': description: Bad Request - Invalid input or ID mismatch. delete: @@ -953,5 +1001,7 @@ paths: description: Bad Request - Invalid ID format. '401': description: Unauthorized. + '403': + description: Bad Token - Invalid Keycloack configuration. '404': description: Bad Request - sectionCell not found. diff --git a/documentation/openapi/src/entrepreneurApi.yaml b/documentation/openapi/src/entrepreneurApi.yaml index 15ddc1f..4857132 100644 --- a/documentation/openapi/src/entrepreneurApi.yaml +++ b/documentation/openapi/src/entrepreneurApi.yaml @@ -27,6 +27,8 @@ paths: description: Bad Request - Invalid input (e.g., missing name). "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /entrepreneur/sectionCells: # Base path post: @@ -52,6 +54,8 @@ paths: description: Bad Request - Invalid input (e.g., missing content or sectionId). "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /entrepreneur/sectionCells/{sectionCellId}: put: @@ -84,6 +88,8 @@ paths: description: Bad Request - Invalid input or ID mismatch. "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. delete: operationId: removeSectionCell @@ -110,6 +116,8 @@ paths: description: Bad Request - sectionCell not found. "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /entrepreneur/projects: @@ -133,4 +141,6 @@ paths: "404": description: Bad Request - Invalid input or ID mismatch. "401": - description: Unauthorized or identity not found \ No newline at end of file + description: Unauthorized or identity not found + "403": + description: Bad Token - Invalid Keycloack configuration. \ No newline at end of file diff --git a/documentation/openapi/src/sharedApi.yaml b/documentation/openapi/src/sharedApi.yaml index 15fa7bc..5a21aaa 100644 --- a/documentation/openapi/src/sharedApi.yaml +++ b/documentation/openapi/src/sharedApi.yaml @@ -36,7 +36,9 @@ paths: items: $ref: "./main.yaml#/components/schemas/sectionCell" "400": - description: Bad Request - Invalid parameter format. + description: Bad Request - Invalid parameter format. + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -68,7 +70,7 @@ paths: "401": description: Unauthorized. "403": - description: Forbidden - User does not have access to this project. + description: Forbidden - User does not have access to this project or invalid Keycloack configuration. "404": description: Not Found - Project not found. @@ -97,7 +99,7 @@ paths: "401": description: Unauthorized. "403": - description: Forbidden - User does not have access to this project. + description: Forbidden - User does not have access to this project or invalid Keycloack configuration. "404": description: Not Found - Project not found. @@ -126,6 +128,8 @@ paths: type: array items: $ref: "./main.yaml#/components/schemas/appointment" + "403": + description: Bad Token - Invalid Keycloack configuration. "401": description: Unauthorized. @@ -156,6 +160,8 @@ paths: format: binary "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /shared/appointments/request: @@ -180,7 +186,8 @@ paths: description: Accepted - Appointment request submitted. "400": description: Bad Request - Invalid appointment details. - "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. \ No newline at end of file diff --git a/documentation/openapi/src/unauthApi.yaml b/documentation/openapi/src/unauthApi.yaml index 7c5545b..5150d99 100644 --- a/documentation/openapi/src/unauthApi.yaml +++ b/documentation/openapi/src/unauthApi.yaml @@ -24,6 +24,8 @@ paths: description: Bad Request - Problem processing the token or user data derived from it. "401": description: Unauthorized - Valid authentication token required. + "403": + description: Bad Token - Invalid Keycloack configuration. /unauth/request-join/{projectId}: post: summary: Request to join an existing project @@ -47,6 +49,8 @@ paths: description: Already member/request pending. "401": description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. /unauth/request-admin-role: post: summary: Request to join an existing project @@ -59,4 +63,6 @@ paths: "400": description: Bad Request - Invalid project ID format or already member/request pending. "401": - description: Unauthorized. \ No newline at end of file + description: Unauthorized. + "403": + description: Bad Token - Invalid Keycloack configuration. \ No newline at end of file