final version of endpoint name, response code still need to be fully chacked

This commit is contained in:
MAILLAL Anas 2025-04-21 23:58:11 +02:00
parent 20bca79472
commit 50d35beb63
5 changed files with 8 additions and 88 deletions

@ -5,43 +5,9 @@
- `/entrepreneur/lcsection/modify/{sectionId}``/entrepreneur/sectionCell/modify/{sectionId}`
### Admin api
- `/admin/appointments/upcoming`: is shared not admin
- `/admin/projects/decision`: instanciates classes with `adminId` instead of taking the id from the token
- `/admin/project/add`:
- point 1: the doc has this `projects` everywhere this should be `/admin/projects/add` to avoid confusion I think
- point 2: this doesn't assiociate users with a project I need to add other endopint for that
- `/admin/appoitements/report/{appointmentId}`:
- typo: `appoitements``appointments`
- `/admin/projects/remove/{projectId}`, `/admin/project/add`, `/admin/projects/decision`, `/admin/projects/pending`:
- should need token to delete or add project
- `/admin/appointments/report/{appointmentId}` has no PUT and DELETE
- `/admin/request-join` and `/admin/request-join/decision/{joinRequestId}` have not yet been implemented
### Entrepreneur api
- `/entrepreneur/sectionCell/modify/{sectionId}`:
- the section-id because of the definition of `sectionCell` schema the `sectionId` is given twice possibly leading to inconsistency. Which is why the path var to be removed:
- → `/entrepreneur/sectionCell/modify`
### Shared api
- `/shared/project/sectionCell/{projectId}/{sectionId}/{date}`:
- point 1:
same point for `project``projects`
- point 2:
have yet to read `sharedApiService` to see how dates are handled and to see if we agree on values of `date` to make it so it gets the version relative to current date
- `/shared/entrepreneurs/{projectId}`:
- maybe change to `/shared/projects/entrepreneurs/{projectId}` to match other similair endpoints like `/shared/projects/admin/{projectId}`
- `/shared/appointment/request`:
- creates the apointement but don't know how it associates other users, potentially multiple classes in one request body, is that possible ?
## TODOs for me
### list 1:
- add back-end server links (backend and auth) for interacting with api through swagger
- get config for that set up in the project
### list 2:
- see what to do about logo img
- see format for date and add it in examples
- ask the form of return of the json of iterables, for now I have put array
- add endpoint for adding users to a project
- update endpoint descriptions
- add examples for values in schemas
### Unauth api
- `/unauth/request-join/{projectId}` has not yet been implemented

@ -124,7 +124,7 @@ paths:
description: Unauthorized.
/admin/projects/pending/decision/{pendingProjectId}:
/admin/projects/pending/decision:
post:
operationId: decidePendingProject
summary: Approve or reject a pending project

@ -445,7 +445,7 @@ paths:
$ref: '#/components/schemas/project'
'401':
description: Unauthorized.
'/admin/projects/pending/decision/{pendingProjectId}':
/admin/projects/pending/decision:
post:
operationId: decidePendingProject
summary: Approve or reject a pending project
@ -601,28 +601,6 @@ paths:
description: Bad Request - Invalid user ID format or user is already an admin.
'401':
description: Unauthorized.
/shared/appointments/upcoming:
get:
operationId: getUpcomingAppointments
summary: Get upcoming appointments for the user
tags:
- Shared API
security:
- MyINPulse:
- MyINPulse-entrepreneur
- MyINPulse-admin
description: Retrieves a list of appointments scheduled for the authenticated user (either entrepreneur or admin) in the future.
responses:
'200':
description: OK - List of upcoming appointments.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/appointment'
'401':
description: Unauthorized.
'/shared/projects/sectionCells/{projectId}/{sectionId}/{date}':
get:
operationId: getSectionCellsByDate

@ -98,8 +98,8 @@ paths:
$ref: "./adminApi.yaml#/paths/~1admin~1projects"
/admin/projects/pending:
$ref: "./adminApi.yaml#/paths/~1admin~1projects~1pending"
/admin/projects/pending/decision/{pendingProjectId}:
$ref: "./adminApi.yaml#/paths/~1admin~1projects~1pending~1decision~1{pendingProjectId}"
/admin/projects/pending/decision:
$ref: "./adminApi.yaml#/paths/~1admin~1projects~1pending~1decision"
/admin/appointments/report/{appointmentId}:
$ref: "./adminApi.yaml#/paths/~1admin~1appointments~1report~1{appointmentId}"
/admin/projects/{projectId}:
@ -113,8 +113,6 @@ paths:
# ___) | | | | (_| | | | __/ (_| | / ___ \| __/| |
# |____/|_| |_|\__,_|_| \___|\__,_| /_/ \_\_| |___|
#
/shared/appointments/upcoming:
$ref: "./sharedApi.yaml#/paths/~1shared~1appointments~1upcoming"
/shared/projects/sectionCells/{projectId}/{sectionId}/{date}:
$ref: "./sharedApi.yaml#/paths/~1shared~1projects~1sectionCells~1{projectId}~1{sectionId}~1{date}"
/shared/projects/entrepreneurs/{projectId}:

@ -1,27 +1,5 @@
# Shared API Endpoints
paths:
/shared/appointments/upcoming:
get:
operationId: getUpcomingAppointments
summary: Get upcoming appointments for the user
tags:
- Shared API
security:
- MyINPulse: [MyINPulse-entrepreneur, MyINPulse-admin] # Accessible by both
description: Retrieves a list of appointments scheduled for the authenticated user (either entrepreneur or admin) in the future.
responses:
"200":
description: OK - List of upcoming appointments.
content:
application/json:
schema:
type: array
items:
$ref: "./main.yaml#/components/schemas/appointment"
"401":
description: Unauthorized.
/shared/projects/sectionCells/{projectId}/{sectionId}/{date}:
get:
operationId: getSectionCellsByDate