openapi: 3.0.3
info:
title: MS-HC
description: ''
version: 1.0.0
servers:
-
url: 'https://cms.ms-hotel.net'
paths:
/api/login:
post:
summary: 'Fonction permettant à un utilisateur déjà inscrit de se connecter'
operationId: fonctionPermettantUnUtilisateurDjInscritDeSeConnecter
description: ''
parameters: []
responses: { }
tags:
- Authentification
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: ''
example: dicta
nullable: false
password:
type: string
description: ''
example: '|1:`J:%Ve\'
nullable: false
device_key:
type: string
description: ''
example: cupiditate
nullable: true
required:
- username
- password
security: []
/api/logout:
post:
summary: 'Fonction permettant à un utilisateur connecté de se déconnecter'
operationId: fonctionPermettantUnUtilisateurConnectDeSeDconnecter
description: ''
parameters: []
responses: { }
tags:
- Authentification
/api/medical-books/all:
post:
summary: 'Lister les carnets médicaux'
operationId: listerLesCarnetsMdicaux
description: ''
parameters: []
responses: { }
tags:
- 'Carnet Médical'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 7
nullable: true
nbre_items:
type: integer
description: ''
example: 16
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: tbtuioivb
nullable: true
responsible_doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 19
nullable: true
health_center_id:
type: integer
description: ''
example: 6
nullable: true
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: true
ckd_stage:
type: string
description: ''
example: iure
nullable: true
dialysis_type:
type: string
description: ''
example: null
nullable: true
enum:
- null
0:
type: string
description: ''
example: null
nullable: false
dialysis_center:
type: string
description: ''
example: deleniti
nullable: true
current_doctor_name:
type: string
description: ''
example: reprehenderit
nullable: true
ckd_diagnosis_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2025-06-02T16:53:01'
nullable: true
/api/medical-books:
post:
summary: 'Ajouter un carnet médical'
operationId: ajouterUnCarnetMdical
description: ''
parameters: []
responses: { }
tags:
- 'Carnet Médical'
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 4
nullable: false
responsible_doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 15
nullable: false
health_center_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
blood_type:
type: string
description: ''
example: A-
nullable: true
enum:
- A+
- A-
- B+
- B-
- AB+
- AB-
- O+
- O-
known_allergies:
type: string
description: ''
example: null
nullable: true
chronic_diseases:
type: string
description: ''
example: null
nullable: true
observation:
type: string
description: ''
example: null
nullable: true
current_doctor_name:
type: string
description: ''
example: dolores
nullable: true
current_doctor_phone:
type: string
description: ''
example: earum
nullable: true
current_doctor_address:
type: string
description: ''
example: similique
nullable: true
medical_history:
type: string
description: ''
example: molestiae
nullable: true
current_treatments:
type: string
description: ''
example: ut
nullable: true
known_kidney_diseases:
type: string
description: ''
example: mollitia
nullable: true
autoimmune_or_infectious_diseases:
type: string
description: ''
example: ab
nullable: true
allergies:
type: string
description: ''
example: sit
nullable: true
ckd_stage:
type: string
description: ''
example: placeat
nullable: true
ckd_diagnosis_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2025-06-02T16:53:01'
nullable: true
ckd_etiology:
type: string
description: ''
example: temporibus
nullable: true
recent_biological_tests:
type: string
description: ''
example: dignissimos
nullable: true
renal_imaging_file:
type: string
format: binary
description: 'Must be a file. Le champ value ne peut être supérieur à 2048 kilobytes.'
nullable: true
dry_weight:
type: number
description: ''
example: 85421.281664544
nullable: true
dialysis_indicated:
type: boolean
description: ''
example: false
nullable: true
dialysis_type:
type: string
description: ''
example: hemodialysis
nullable: true
enum:
- hemodialysis
- peritoneal
dialysis_center:
type: string
description: ''
example: mollitia
nullable: true
dialysis_frequency:
type: string
description: ''
example: et
nullable: true
dialysis_complications:
type: string
description: ''
example: harum
nullable: true
required:
- patient_id
- responsible_doctor_id
'/api/medical-books/{medical_book}':
get:
summary: "Afficher les infos d'un carnet médical"
operationId: afficherLesInfosDunCarnetMdical
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/medical-books/1 could not be found.'
properties:
message:
type: string
example: 'The route api/medical-books/1 could not be found.'
tags:
- 'Carnet Médical'
put:
summary: 'Modifier un carnet médical'
operationId: modifierUnCarnetMdical
description: ''
parameters: []
responses: { }
tags:
- 'Carnet Médical'
requestBody:
required: false
content:
multipart/form-data:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 11
nullable: true
responsible_doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
health_center_id:
type: integer
description: ''
example: 20
nullable: true
blood_type:
type: string
description: ''
example: A-
nullable: true
enum:
- A+
- A-
- B+
- B-
- AB+
- AB-
- O+
- O-
known_allergies:
type: string
description: ''
example: null
nullable: true
chronic_diseases:
type: string
description: ''
example: null
nullable: true
observation:
type: string
description: ''
example: null
nullable: true
current_doctor_name:
type: string
description: ''
example: id
nullable: true
current_doctor_phone:
type: string
description: ''
example: quibusdam
nullable: true
current_doctor_address:
type: string
description: ''
example: sequi
nullable: true
medical_history:
type: string
description: ''
example: libero
nullable: true
current_treatments:
type: string
description: ''
example: rerum
nullable: true
known_kidney_diseases:
type: string
description: ''
example: est
nullable: true
autoimmune_or_infectious_diseases:
type: string
description: ''
example: illum
nullable: true
allergies:
type: string
description: ''
example: qui
nullable: true
ckd_stage:
type: string
description: ''
example: corrupti
nullable: true
ckd_diagnosis_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2025-06-02T16:53:01'
nullable: true
ckd_etiology:
type: string
description: ''
example: soluta
nullable: true
recent_biological_tests:
type: string
description: ''
example: adipisci
nullable: true
renal_imaging_file:
type: string
format: binary
description: 'Must be a file. Le champ value ne peut être supérieur à 2048 kilobytes.'
nullable: true
dry_weight:
type: number
description: ''
example: 8001.158955474
nullable: true
dialysis_indicated:
type: boolean
description: ''
example: true
nullable: true
dialysis_type:
type: string
description: ''
example: null
nullable: true
enum:
- null
0:
type: string
description: ''
example: null
nullable: false
dialysis_center:
type: string
description: ''
example: qui
nullable: true
dialysis_frequency:
type: string
description: ''
example: qui
nullable: true
dialysis_complications:
type: string
description: ''
example: sint
nullable: true
parameters:
-
in: path
name: medical_book
description: ''
example: 1
required: true
schema:
type: integer
/api/medical-books/trash:
post:
summary: 'Archiver plusieurs medical_books'
operationId: archiverPlusieursMedicalBooks
description: ''
parameters: []
responses: { }
tags:
- 'Carnet Médical'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medical_books table.'
example:
- 14
items:
type: integer
required:
- ids
/api/medical-books/restore:
post:
summary: 'Restaurer plusieurs medical_books'
operationId: restaurerPlusieursMedicalBooks
description: ''
parameters: []
responses: { }
tags:
- 'Carnet Médical'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medical_books table.'
example:
- 18
items:
type: integer
required:
- ids
/api/health-centers/all:
post:
summary: 'Lister les centres de santé'
operationId: listerLesCentresDeSant
description: ''
parameters: []
responses: { }
tags:
- 'Centres de santé'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 56
nullable: true
nbre_items:
type: integer
description: ''
example: 8
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: xpl
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
/api/health-centers:
post:
summary: 'Ajouter un centre de santé'
operationId: ajouterUnCentreDeSant
description: ''
parameters: []
responses: { }
tags:
- 'Centres de santé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 5
nullable: false
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: xwmauzctnoictv
nullable: false
description:
type: string
description: ''
example: 'Et illum quia laboriosam sed harum quia.'
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: yferrkgqxrbhjpivun
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: etgnbeleryskbqdbc
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: vwfizixcgrxcvazh
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: tgzkkdffnjadpx
nullable: false
logo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: frsiehp
nullable: true
email:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: dhickle@example.org
nullable: true
website:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: xkjtlukhz
nullable: true
required:
- responsible_id
- name
- phone
'/api/health-centers/{health_center}':
get:
summary: "Afficher les informations d'un centre de santé"
operationId: afficherLesInformationsDunCentreDeSant
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/health-centers/1 could not be found.'
properties:
message:
type: string
example: 'The route api/health-centers/1 could not be found.'
tags:
- 'Centres de santé'
put:
summary: "Modifier les informations d'un centre de santé"
operationId: modifierLesInformationsDunCentreDeSant
description: ''
parameters: []
responses: { }
tags:
- 'Centres de santé'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: true
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: eghdelmaasqiqzhknatpeqa
nullable: true
description:
type: string
description: ''
example: 'Harum totam provident doloribus sit iste qui.'
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: gpwzncedgaykones
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: mgknouqiymk
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: oncdgsucdymejrvt
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: opledvnli
nullable: true
logo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: ivtbupniwbhhkh
nullable: true
email:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: ohoeger@example.net
nullable: true
website:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: hiw
nullable: true
parameters:
-
in: path
name: health_center
description: ''
example: 1
required: true
schema:
type: integer
/api/health-centers/trash:
post:
summary: 'Archiver plusieurs health_centers'
operationId: archiverPlusieursHealthCenters
description: ''
parameters: []
responses: { }
tags:
- 'Centres de santé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the health_centers table.'
example:
- 12
items:
type: integer
required:
- ids
/api/health-centers/restore:
post:
summary: 'Restaurer plusieurs health_centers'
operationId: restaurerPlusieursHealthCenters
description: ''
parameters: []
responses: { }
tags:
- 'Centres de santé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the health_centers table.'
example:
- 20
items:
type: integer
required:
- ids
/api/chat/rooms/all:
post:
summary: 'Lister les discussions (privées et en groupe)'
operationId: listerLesDiscussionsprivesEtEnGroupe
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 20
nullable: true
nbre_items:
type: integer
description: ''
example: 10
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: ikouwyrgfwmn
nullable: true
is_group:
type: boolean
description: ''
example: false
nullable: true
/api/chat/rooms:
post:
summary: 'Démarrer une discussion'
operationId: dmarrerUneDiscussion
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: pogaw
nullable: true
photo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: kiewzwuuuatijurylzypu
nullable: true
participants:
type: array
description: 'The id of an existing record in the users table.'
example:
- 14
items:
type: integer
required:
- participants
'/api/chat/rooms/{message_room}':
get:
summary: "Afficher les infos d'une discussion"
operationId: afficherLesInfosDuneDiscussion
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/chat/rooms/8 could not be found.'
properties:
message:
type: string
example: 'The route api/chat/rooms/8 could not be found.'
tags:
- Chat
put:
summary: 'Modifier une discussion'
operationId: modifierUneDiscussion
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: hlbsqjwxrucd
nullable: true
photo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: xqsrrriewsxdaatstg
nullable: true
participants:
type: array
description: 'The id of an existing record in the users table.'
example:
- 8
items:
type: integer
nullable: true
parameters:
-
in: path
name: message_room
description: ''
example: 8
required: true
schema:
type: integer
/api/chat/messages/all:
post:
summary: 'Lister les messages'
operationId: listerLesMessages
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 10
nullable: true
nbre_items:
type: integer
description: ''
example: 5
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: zreptqrmicrui
nullable: true
message_room_id:
type: integer
description: 'The id of an existing record in the message_rooms table.'
example: 1
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: true
/api/chat/messages:
post:
summary: 'Ajouter un message'
operationId: ajouterUnMessage
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
message_room_id:
type: integer
description: 'The id of an existing record in the message_rooms table.'
example: 7
nullable: false
body:
type: string
description: ''
example: ab
nullable: false
required:
- message_room_id
- body
'/api/chat/messages/{message_id}':
get:
summary: 'Afficher un message'
operationId: afficherUnMessage
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/chat/messages/6 could not be found.'
properties:
message:
type: string
example: 'The route api/chat/messages/6 could not be found.'
tags:
- Chat
put:
summary: 'Modifier un message'
operationId: modifierUnMessage
description: ''
parameters: []
responses: { }
tags:
- Chat
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
body:
type: string
description: ''
example: in
nullable: false
required:
- body
parameters:
-
in: path
name: message_id
description: 'The ID of the message.'
example: 6
required: true
schema:
type: integer
/api/check-ups/all:
post:
summary: 'Lister les checkups patients'
operationId: listerLesCheckupsPatients
description: ''
parameters: []
responses: { }
tags:
- 'Checkups patients'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 69
nullable: true
nbre_items:
type: integer
description: ''
example: 14
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: hkhlasfaqg
nullable: true
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
alert_status:
type: string
description: ''
example: warning
nullable: true
enum:
- normal
- warning
- critical
trashed:
type: boolean
description: ''
example: false
nullable: true
/api/check-ups:
post:
summary: 'Ajouter un checkup patient'
operationId: ajouterUnCheckupPatient
description: ''
parameters: []
responses: { }
tags:
- 'Checkups patients'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: false
dialysis_session_id:
type: integer
description: ''
example: 2
nullable: true
weight_kg:
type: string
description: ''
example: nihil
nullable: false
blood_pressure_systolic:
type: string
description: ''
example: null
nullable: true
blood_pressure_diastolic:
type: string
description: ''
example: null
nullable: true
heart_rate:
type: string
description: ''
example: null
nullable: true
temperature_c:
type: string
description: ''
example: null
nullable: true
blood_glucose:
type: string
description: ''
example: null
nullable: true
urine_output_ml:
type: string
description: ''
example: null
nullable: true
spo2:
type: string
description: ''
example: null
nullable: true
creatinine:
type: string
description: ''
example: null
nullable: true
urea:
type: string
description: ''
example: null
nullable: true
creatinine_clearance:
type: string
description: ''
example: null
nullable: true
potassium:
type: string
description: ''
example: null
nullable: true
sodium:
type: string
description: ''
example: null
nullable: true
phosphorus:
type: string
description: ''
example: null
nullable: true
calcium:
type: string
description: ''
example: null
nullable: true
hemoglobin:
type: string
description: ''
example: null
nullable: true
notes:
type: string
description: ''
example: null
nullable: true
alert_status:
type: string
description: ''
example: warning
nullable: true
enum:
- normal
- warning
- critical
required:
- patient_id
- weight_kg
'/api/check-ups/{patient_check_up}':
get:
summary: "Afficher les infos d'un checkup patient"
operationId: afficherLesInfosDunCheckupPatient
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/check-ups/1 could not be found.'
properties:
message:
type: string
example: 'The route api/check-ups/1 could not be found.'
tags:
- 'Checkups patients'
put:
summary: 'Modifier un checkup patient'
operationId: modifierUnCheckupPatient
description: ''
parameters: []
responses: { }
tags:
- 'Checkups patients'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 4
nullable: true
dialysis_session_id:
type: integer
description: ''
example: 2
nullable: true
weight_kg:
type: string
description: ''
example: perferendis
nullable: false
blood_pressure_systolic:
type: string
description: ''
example: null
nullable: true
blood_pressure_diastolic:
type: string
description: ''
example: null
nullable: true
heart_rate:
type: string
description: ''
example: null
nullable: true
temperature_c:
type: string
description: ''
example: null
nullable: true
blood_glucose:
type: string
description: ''
example: null
nullable: true
urine_output_ml:
type: string
description: ''
example: null
nullable: true
spo2:
type: string
description: ''
example: null
nullable: true
creatinine:
type: string
description: ''
example: null
nullable: true
urea:
type: string
description: ''
example: null
nullable: true
creatinine_clearance:
type: string
description: ''
example: null
nullable: true
potassium:
type: string
description: ''
example: null
nullable: true
sodium:
type: string
description: ''
example: null
nullable: true
phosphorus:
type: string
description: ''
example: null
nullable: true
calcium:
type: string
description: ''
example: null
nullable: true
hemoglobin:
type: string
description: ''
example: null
nullable: true
notes:
type: string
description: ''
example: null
nullable: true
alert_status:
type: string
description: ''
example: critical
nullable: true
enum:
- normal
- warning
- critical
required:
- weight_kg
parameters:
-
in: path
name: patient_check_up
description: ''
example: 1
required: true
schema:
type: integer
/api/check-ups/trash:
post:
summary: 'Archiver plusieurs patient_check_ups'
operationId: archiverPlusieursPatientCheckUps
description: ''
parameters: []
responses: { }
tags:
- 'Checkups patients'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the patient_check_ups table.'
example:
- 20
items:
type: integer
required:
- ids
/api/check-ups/restore:
post:
summary: 'Restaurer plusieurs patient_check_ups'
operationId: restaurerPlusieursPatientCheckUps
description: ''
parameters: []
responses: { }
tags:
- 'Checkups patients'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the patient_check_ups table.'
example:
- 5
items:
type: integer
required:
- ids
/api/departments/all:
post:
summary: 'Lister les départements'
operationId: listerLesDpartements
description: ''
parameters: []
responses: { }
tags:
- Départements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 37
nullable: true
nbre_items:
type: integer
description: ''
example: 3
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: ljic
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: true
health_center_id:
type: integer
description: 'The id of an existing record in the health_centers table.'
example: 2
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
/api/departments:
post:
summary: 'Ajouter un département'
operationId: ajouterUnDpartement
description: ''
parameters: []
responses: { }
tags:
- Départements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: true
health_center_id:
type: integer
description: 'The id of an existing record in the health_centers table.'
example: 11
nullable: false
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: pwslwrqeqilqgkxmamoynksrv
nullable: false
description:
type: string
description: ''
example: 'Non quia voluptatem atque fuga excepturi ut quisquam ut.'
nullable: false
phone:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: ghpjxlp
nullable: false
email:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: tromp.roscoe@example.net
nullable: true
required:
- health_center_id
- name
- description
- phone
'/api/departments/{department_id}':
get:
summary: "Afficher les infos d'un département"
operationId: afficherLesInfosDunDpartement
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/departments/1 could not be found.'
properties:
message:
type: string
example: 'The route api/departments/1 could not be found.'
tags:
- Départements
put:
summary: 'Modifier un département'
operationId: modifierUnDpartement
description: ''
parameters: []
responses: { }
tags:
- Départements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
health_center_id:
type: integer
description: 'The id of an existing record in the health_centers table.'
example: 4
nullable: true
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: cqofn
nullable: true
description:
type: string
description: ''
example: 'Voluptatem necessitatibus eveniet est.'
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: epqmt
nullable: true
email:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: romaguera.gus@example.org
nullable: true
parameters:
-
in: path
name: department_id
description: 'The ID of the department.'
example: 1
required: true
schema:
type: integer
/api/departments/trash:
post:
summary: 'Archiver plusieurs medical_books'
operationId: archiverPlusieursMedicalBooks
description: ''
parameters: []
responses: { }
tags:
- Départements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the departments table.'
example:
- 4
items:
type: integer
required:
- ids
/api/departments/restore:
post:
summary: 'Restaurer plusieurs medical_books'
operationId: restaurerPlusieursMedicalBooks
description: ''
parameters: []
responses: { }
tags:
- Départements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the departments table.'
example:
- 13
items:
type: integer
required:
- ids
/api/rendez-vous/all:
post:
summary: 'Lister les rendez-vous'
operationId: listerLesRendezVous
description: ''
parameters: []
responses: { }
tags:
- Endpoints
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 23
nullable: true
nbre_items:
type: integer
description: ''
example: 7
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: kjjtfpgblnnyhf
nullable: true
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 20
nullable: true
date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
status:
type: string
description: ''
example: rejected
nullable: true
enum:
- pending
- validated
- rejected
- done
- undone
trashed:
type: boolean
description: ''
example: false
nullable: true
/api/rendez-vous:
post:
summary: 'Ajouter un rendez-vous'
operationId: ajouterUnRendezVous
description: ''
parameters: []
responses: { }
tags:
- Endpoints
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: false
date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: false
hour:
type: string
description: 'Must be a valid date in the format H:i.'
example: '16:53'
nullable: false
description:
type: string
description: ''
example: 'In et laboriosam sunt.'
nullable: false
required:
- doctor_id
- date
- hour
- description
'/api/rendez-vous/{rendez_vous}':
get:
summary: "Afficher les infos d'un rendez-vous"
operationId: afficherLesInfosDunRendezVous
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/rendez-vous/1 could not be found.'
properties:
message:
type: string
example: 'The route api/rendez-vous/1 could not be found.'
tags:
- Endpoints
put:
summary: 'Modifier un rendez-vous'
operationId: modifierUnRendezVous
description: ''
parameters: []
responses: { }
tags:
- Endpoints
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 9
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 11
nullable: true
date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
hour:
type: string
description: 'Must be a valid date in the format H:i.'
example: '16:53'
nullable: true
description:
type: string
description: ''
example: 'Vitae dolor est maxime dolorem dolores at consequuntur voluptate.'
nullable: true
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- validated
- rejected
- done
- undone
parameters:
-
in: path
name: rendez_vous
description: ''
example: 1
required: true
schema:
type: integer
/api/rendez-vous/trash:
post:
summary: 'Archiver plusieurs rendez_vous'
operationId: archiverPlusieursRendezVous
description: ''
parameters: []
responses: { }
tags:
- Endpoints
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the rendez_vous table.'
example:
- 16
items:
type: integer
required:
- ids
/api/rendez-vous/restore:
post:
summary: 'Restaurer plusieurs rendez_vous'
operationId: restaurerPlusieursRendezVous
description: ''
parameters: []
responses: { }
tags:
- Endpoints
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the rendez_vous table.'
example:
- 2
items:
type: integer
required:
- ids
/api/forum/categories/all:
post:
summary: 'Lister les categories de forum'
operationId: listerLesCategoriesDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 22
nullable: true
nbre_items:
type: integer
description: ''
example: 14
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: zepdjvoqcpjcoqp
nullable: true
/api/forum/categories:
post:
summary: 'Ajouter une catégorie de forum'
operationId: ajouterUneCatgorieDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: opaogmzjgsb
nullable: false
description:
type: string
description: ''
example: 'Est doloremque omnis aut.'
nullable: true
required:
- name
'/api/forum/categories/{forum_category}':
get:
summary: "Afficher les infos d'une catégorie de forum"
operationId: afficherLesInfosDuneCatgorieDeForum
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/forum/categories/17 could not be found.'
properties:
message:
type: string
example: 'The route api/forum/categories/17 could not be found.'
tags:
- Forum
put:
summary: 'Modifier une catégorie de forum'
operationId: modifierUneCatgorieDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: yyqwvkpazcxehcdzdjf
nullable: true
description:
type: string
description: ''
example: 'Distinctio perferendis alias voluptas consequatur nesciunt voluptatum optio illo.'
nullable: true
parameters:
-
in: path
name: forum_category
description: ''
example: 17
required: true
schema:
type: integer
/api/forum/categories/trash:
post:
summary: 'Archiver plusieurs categories de forum'
operationId: archiverPlusieursCategoriesDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_categories table.'
example:
- 3
items:
type: integer
required:
- ids
/api/forum/categories/restore:
post:
summary: 'Restaurer plusieurs categories de forum'
operationId: restaurerPlusieursCategoriesDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_categories table.'
example:
- 15
items:
type: integer
required:
- ids
/api/forum/questions/all:
post:
summary: 'Lister les questions de forum'
operationId: listerLesQuestionsDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 89
nullable: true
nbre_items:
type: integer
description: ''
example: 1
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: zvwjdr
nullable: true
forum_category_id:
type: integer
description: 'The id of an existing record in the forum_categories table.'
example: 19
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
/api/forum/questions:
post:
summary: 'Ajouter une question de forum'
operationId: ajouterUneQuestionDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
forum_category_id:
type: integer
description: 'The id of an existing record in the forum_categories table.'
example: 2
nullable: false
title:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: niev
nullable: false
body:
type: string
description: ''
example: sapiente
nullable: false
required:
- forum_category_id
- title
- body
'/api/forum/questions/{forum_question}':
get:
summary: "Afficher les infos d'une question de forum"
operationId: afficherLesInfosDuneQuestionDeForum
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/forum/questions/10 could not be found.'
properties:
message:
type: string
example: 'The route api/forum/questions/10 could not be found.'
tags:
- Forum
put:
summary: 'Modifier une question de forum'
operationId: modifierUneQuestionDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
forum_category_id:
type: integer
description: 'The id of an existing record in the forum_categories table.'
example: 1
nullable: true
title:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: ngresjclbc
nullable: true
body:
type: string
description: ''
example: neque
nullable: true
is_resolved:
type: boolean
description: ''
example: false
nullable: true
parameters:
-
in: path
name: forum_question
description: ''
example: 10
required: true
schema:
type: integer
/api/forum/questions/trash:
post:
summary: 'Archiver plusieurs questions de forum'
operationId: archiverPlusieursQuestionsDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_questions table.'
example:
- 20
items:
type: integer
required:
- ids
/api/forum/questions/restore:
post:
summary: 'Restaurer plusieurs questions de forum'
operationId: restaurerPlusieursQuestionsDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_questions table.'
example:
- 15
items:
type: integer
required:
- ids
/api/forum/answers/all:
post:
summary: 'Lister les réponses de forum'
operationId: listerLesRponsesDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 60
nullable: true
nbre_items:
type: integer
description: ''
example: 5
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: qkzzikugmlnqlsy
nullable: true
forum_category_id:
type: integer
description: 'The id of an existing record in the forum_categories table.'
example: 8
nullable: true
forum_question_id:
type: integer
description: 'The id of an existing record in the forum_questions table.'
example: 2
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
/api/forum/answers:
post:
summary: 'Ajouter une réponse à une question de forum'
operationId: ajouterUneRponseUneQuestionDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
forum_question_id:
type: integer
description: 'The id of an existing record in the forum_questions table.'
example: 8
nullable: false
body:
type: string
description: ''
example: id
nullable: false
required:
- forum_question_id
- body
'/api/forum/answers/{forum_answer}':
get:
summary: "Afficher les infos d'une réponse à une question de forum"
operationId: afficherLesInfosDuneRponseUneQuestionDeForum
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/forum/answers/17 could not be found.'
properties:
message:
type: string
example: 'The route api/forum/answers/17 could not be found.'
tags:
- Forum
put:
summary: 'Modifier une réponse à une question de forum'
operationId: modifierUneRponseUneQuestionDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
forum_question_id:
type: integer
description: 'The id of an existing record in the forum_questions table.'
example: 4
nullable: true
body:
type: string
description: ''
example: in
nullable: true
is_accepted:
type: boolean
description: ''
example: false
nullable: true
parameters:
-
in: path
name: forum_answer
description: ''
example: 17
required: true
schema:
type: integer
/api/forum/answers/trash:
post:
summary: 'Archiver plusieurs questions de forum'
operationId: archiverPlusieursQuestionsDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_answers table.'
example:
- 10
items:
type: integer
required:
- ids
/api/forum/answers/restore:
post:
summary: 'Restaurer plusieurs réponses aux questions de forum'
operationId: restaurerPlusieursRponsesAuxQuestionsDeForum
description: ''
parameters: []
responses: { }
tags:
- Forum
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the forum_answers table.'
example:
- 17
items:
type: integer
required:
- ids
/api/medications/all:
post:
summary: 'Lister les médicaments'
operationId: listerLesMdicaments
description: ''
parameters: []
responses: { }
tags:
- Médicaments
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 52
nullable: true
nbre_items:
type: integer
description: ''
example: 4
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: cwoksbnkwzwlvygccq
nullable: true
name:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: qztypctpvcjuf
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
/api/medications:
post:
summary: "Ajout d'un médicament"
operationId: ajoutDunMdicament
description: ''
parameters: []
responses: { }
tags:
- Médicaments
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: gumryhwmxwkxqhyuwwid
nullable: false
description:
type: string
description: ''
example: 'Aut quod sit eligendi ut consequuntur fugiat.'
nullable: true
photo:
type: string
description: ''
example: et
nullable: true
required:
- name
'/api/medications/{medication_id}':
get:
summary: 'Afficher un médicament'
operationId: afficherUnMdicament
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/medications/1 could not be found.'
properties:
message:
type: string
example: 'The route api/medications/1 could not be found.'
tags:
- Médicaments
put:
summary: 'Modifier un médicament'
operationId: modifierUnMdicament
description: ''
parameters: []
responses: { }
tags:
- Médicaments
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: urvdyhmy
nullable: true
description:
type: string
description: ''
example: 'Rerum omnis provident beatae impedit.'
nullable: true
photo:
type: string
description: ''
example: natus
nullable: true
parameters:
-
in: path
name: medication_id
description: 'The ID of the medication.'
example: 1
required: true
schema:
type: integer
/api/medications/trash:
post:
summary: 'Archiver plusieurs médicaments'
operationId: archiverPlusieursMdicaments
description: ''
parameters: []
responses: { }
tags:
- Médicaments
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medications table.'
example:
- 11
items:
type: integer
required:
- ids
/api/medications/restore:
post:
summary: 'Restaurer plusieurs médicaments'
operationId: restaurerPlusieursMdicaments
description: ''
parameters: []
responses: { }
tags:
- Médicaments
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medications table.'
example:
- 1
items:
type: integer
required:
- ids
/api/foods/all:
post:
summary: 'Lister les nourritures'
operationId: listerLesNourritures
description: ''
parameters: []
responses: { }
tags:
- Nourritures
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 26
nullable: true
nbre_items:
type: integer
description: ''
example: 15
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: vhqmngjalftncypgflyx
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: true
name:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: bpbwnbexsdaxrsjl
nullable: true
/api/foods:
post:
summary: 'Ajouter une nourriture'
operationId: ajouterUneNourriture
description: ''
parameters: []
responses: { }
tags:
- Nourritures
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: hsyxpbkbxyxgxrqyug
nullable: false
description:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: 'Maiores impedit doloribus sit iusto eligendi.'
nullable: true
potassium_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: balqaxcjykyj
nullable: true
sodium_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: rqdvyvreyoduahsfecbop
nullable: true
phosphorus_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: hsckbtey
nullable: true
photo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: zxqjwovguav
nullable: true
food_alternatives:
type: array
description: ''
example: null
items:
type: object
nullable: true
properties:
alternative_id:
type: integer
description: 'The id of an existing record in the food table.'
example: 4
nullable: false
reason:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: seemncel
nullable: true
required:
- alternative_id
required:
- name
'/api/foods/{food_id}':
get:
summary: 'Afficher une nourriture'
operationId: afficherUneNourriture
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/foods/1 could not be found.'
properties:
message:
type: string
example: 'The route api/foods/1 could not be found.'
tags:
- Nourritures
put:
summary: 'Modifier une nourriture'
operationId: modifierUneNourriture
description: ''
parameters: []
responses: { }
tags:
- Nourritures
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: seogx
nullable: true
description:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: 'Maxime et in nihil qui sit aut.'
nullable: true
potassium_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: oznkcu
nullable: true
sodium_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: upvoovukyekhtulmyexg
nullable: true
phosphorus_mg:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: mvbqchjqnxqellhcuer
nullable: true
photo:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: gwqzqxkrdxvhsabyrubcq
nullable: true
food_alternatives:
type: array
description: ''
example: null
items:
type: object
nullable: true
properties:
alternative_id:
type: integer
description: 'The id of an existing record in the food table.'
example: 14
nullable: false
reason:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: tzwnxqioxhkcupsfwmrhk
nullable: true
required:
- alternative_id
parameters:
-
in: path
name: food_id
description: 'The ID of the food.'
example: 1
required: true
schema:
type: integer
/api/foods/trash:
post:
summary: 'Archiver plusieurs nourritures'
operationId: archiverPlusieursNourritures
description: ''
parameters: []
responses: { }
tags:
- Nourritures
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the food table.'
example:
- 9
items:
type: integer
required:
- ids
/api/foods/restore:
post:
summary: 'Restaurer plusieurs nourritures'
operationId: restaurerPlusieursNourritures
description: ''
parameters: []
responses: { }
tags:
- Nourritures
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the food table.'
example:
- 15
items:
type: integer
required:
- ids
/api/medical-pages/all:
post:
summary: 'Lister les pagse de carnets médicaux'
operationId: listerLesPagseDeCarnetsMdicaux
description: ''
parameters: []
responses: { }
tags:
- 'Page Médicale'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 35
nullable: true
nbre_items:
type: integer
description: ''
example: 20
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: cqhcfioxvrodcubymzs
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 4
nullable: true
medical_book_id:
type: integer
description: 'The id of an existing record in the medical_books table.'
example: 10
nullable: true
department_id:
type: integer
description: 'The id of an existing record in the departments table.'
example: 2
nullable: true
consultation_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
/api/medical-pages:
post:
summary: 'Ajouter une page de carnet médical'
operationId: ajouterUnePageDeCarnetMdical
description: ''
parameters: []
responses: { }
tags:
- 'Page Médicale'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
medical_book_id:
type: integer
description: 'The id of an existing record in the medical_books table.'
example: 6
nullable: false
department_id:
type: integer
description: 'The id of an existing record in the departments table.'
example: 20
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: false
consultation_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: false
reason_for_visit:
type: string
description: ''
example: animi
nullable: false
clinical_notes:
type: string
description: ''
example: sit
nullable: false
diagnosis:
type: string
description: ''
example: qui
nullable: false
prescription:
type: string
description: ''
example: null
nullable: true
recommendations:
type: string
description: ''
example: null
nullable: true
required:
- medical_book_id
- doctor_id
- consultation_date
- reason_for_visit
- clinical_notes
- diagnosis
'/api/medical-pages/{medical_page}':
get:
summary: "Afficher les infos d'une page de carnet médical"
operationId: afficherLesInfosDunePageDeCarnetMdical
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/medical-pages/1 could not be found.'
properties:
message:
type: string
example: 'The route api/medical-pages/1 could not be found.'
tags:
- 'Page Médicale'
put:
summary: 'Modifier une page de carnet médical'
operationId: modifierUnePageDeCarnetMdical
description: ''
parameters: []
responses: { }
tags:
- 'Page Médicale'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
medical_book_id:
type: integer
description: 'The id of an existing record in the medical_books table.'
example: 8
nullable: true
department_id:
type: integer
description: 'The id of an existing record in the departments table.'
example: 15
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 11
nullable: true
consultation_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
reason_for_visit:
type: string
description: ''
example: sunt
nullable: true
clinical_notes:
type: string
description: ''
example: at
nullable: true
diagnosis:
type: string
description: ''
example: quo
nullable: true
prescription:
type: string
description: ''
example: null
nullable: true
recommendations:
type: string
description: ''
example: null
nullable: true
parameters:
-
in: path
name: medical_page
description: ''
example: 1
required: true
schema:
type: integer
/api/medical-pages/trash:
post:
summary: 'Archiver plusieurs medical_pages'
operationId: archiverPlusieursMedicalPages
description: ''
parameters: []
responses: { }
tags:
- 'Page Médicale'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medical_pages table.'
example:
- 19
items:
type: integer
required:
- ids
/api/medical-pages/restore:
post:
summary: 'Restaurer plusieurs medical_pages'
operationId: restaurerPlusieursMedicalPages
description: ''
parameters: []
responses: { }
tags:
- 'Page Médicale'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medical_pages table.'
example:
- 8
items:
type: integer
required:
- ids
/api/permissions/all:
post:
summary: 'Afficher la liste des permissions'
operationId: afficherLaListeDesPermissions
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 59
nullable: true
nbre_items:
type: integer
description: ''
example: 3
nullable: true
filter_value:
type: string
description: ''
example: in
nullable: true
ressource:
type: string
description: ''
example: natus
nullable: true
/api/permissions:
post:
summary: 'Ajouter une liste de permission'
operationId: ajouterUneListeDePermission
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
permissions:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
name:
type: string
description: ''
example: sunt
nullable: false
description:
type: string
description: ''
example: 'Debitis dolorem et est voluptatem sapiente.'
nullable: true
ressource:
type: string
description: ''
example: eaque
nullable: false
required:
- name
- ressource
required:
- permissions
'/api/permissions/{role}':
get:
summary: 'Afficher une permission spécifique'
operationId: afficherUnePermissionSpcifique
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/permissions/quibusdam could not be found.'
properties:
message:
type: string
example: 'The route api/permissions/quibusdam could not be found.'
tags:
- Permissions
put:
summary: 'Mettre a jour une permission spécifique'
operationId: mettreAJourUnePermissionSpcifique
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: minima
nullable: false
permissions:
type: array
description: ''
example:
- []
items:
type: object
properties:
description:
type: string
description: ''
example: 'Distinctio pariatur unde sit voluptas quia.'
nullable: true
ressource:
type: string
description: ''
example: et
nullable: true
required:
- name
parameters:
-
in: path
name: role
description: ''
example: quibusdam
required: true
schema:
type: string
/api/prescriptions/all:
post:
summary: 'Lister les prescriptions'
operationId: listerLesPrescriptions
description: ''
parameters: []
responses: { }
tags:
- Prescriptions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 65
nullable: true
nbre_items:
type: integer
description: ''
example: 10
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: czolmgqybgbhljbgacsedwhf
nullable: true
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
end_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
/api/prescriptions:
post:
summary: 'Ajouter une prescription'
operationId: ajouterUnePrescription
description: ''
parameters: []
responses: { }
tags:
- Prescriptions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: false
start_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: false
end_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Le champ value doit être une date après ou égale à start_date.'
example: '2118-01-27'
nullable: false
frequency:
type: string
description: ''
example: illum
nullable: true
dosage:
type: string
description: ''
example: dolorem
nullable: true
description:
type: string
description: ''
example: 'Ea soluta repellat ad quo placeat necessitatibus veniam.'
nullable: false
medications:
type: array
description: ''
example:
- []
items:
type: object
properties:
medication_id:
type: integer
description: 'The id of an existing record in the medications table.'
example: 9
nullable: false
dosage:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 49
nullable: false
frequency:
type: string
description: ''
example: optio
nullable: false
description:
type: string
description: ''
example: 'Suscipit quo autem et ut ratione.'
nullable: true
required:
- medication_id
- dosage
- frequency
required:
- patient_id
- start_date
- end_date
- description
- medications
'/api/prescriptions/{prescription_id}':
get:
summary: "Afficher les infos d'une prescription"
operationId: afficherLesInfosDunePrescription
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/prescriptions/1 could not be found.'
properties:
message:
type: string
example: 'The route api/prescriptions/1 could not be found.'
tags:
- Prescriptions
put:
summary: 'Modifier une prescription'
operationId: modifierUnePrescription
description: ''
parameters: []
responses: { }
tags:
- Prescriptions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
end_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Le champ value doit être une date après ou égale à start_date.'
example: '2122-10-20'
nullable: true
frequency:
type: string
description: ''
example: delectus
nullable: true
dosage:
type: string
description: ''
example: necessitatibus
nullable: true
description:
type: string
description: ''
example: 'Possimus et autem minima libero consequatur atque.'
nullable: true
medications:
type: array
description: ''
example: null
items:
type: object
nullable: true
properties:
medication_id:
type: integer
description: 'The id of an existing record in the medications table.'
example: 20
nullable: false
dosage:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 30
nullable: false
frequency:
type: string
description: ''
example: ad
nullable: false
description:
type: string
description: ''
example: 'Quibusdam odio modi nisi dolore et repudiandae.'
nullable: true
required:
- medication_id
- dosage
- frequency
medical_page_id:
type: integer
description: ''
example: 19
nullable: true
parameters:
-
in: path
name: prescription_id
description: 'The ID of the prescription.'
example: 1
required: true
schema:
type: integer
/api/prescriptions/trash:
post:
summary: 'Archiver plusieurs prescriptions'
operationId: archiverPlusieursPrescriptions
description: ''
parameters: []
responses: { }
tags:
- Prescriptions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the prescriptions table.'
example:
- 14
items:
type: integer
required:
- ids
/api/prescriptions/restore:
post:
summary: 'Restaurer plusieurs prescriptions'
operationId: restaurerPlusieursPrescriptions
description: ''
parameters: []
responses: { }
tags:
- Prescriptions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the prescriptions table.'
example:
- 2
items:
type: integer
required:
- ids
/api/medications-intakes/all:
post:
summary: 'Lister les prises de médicaments'
operationId: listerLesPrisesDeMdicaments
description: ''
parameters: []
responses: { }
tags:
- 'Prises de Médicaments'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 32
nullable: true
nbre_items:
type: integer
description: ''
example: 15
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: mxixyt
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: true
prescription_id:
type: integer
description: 'The id of an existing record in the prescriptions table.'
example: 16
nullable: true
medication_id:
type: integer
description: 'The id of an existing record in the medications table.'
example: 8
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
end_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Le champ value doit être une date après ou égale à start_date.'
example: '2082-11-27'
nullable: true
/api/medications-intakes:
post:
summary: 'Ajouter une prise de médicament'
operationId: ajouterUnePriseDeMdicament
description: ''
parameters: []
responses: { }
tags:
- 'Prises de Médicaments'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
prescription_id:
type: integer
description: 'The id of an existing record in the prescriptions table.'
example: 16
nullable: false
medication_id:
type: integer
description: 'The id of an existing record in the medications table.'
example: 5
nullable: false
is_taken:
type: boolean
description: ''
example: true
nullable: true
date_time:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d H:i.'
example: '2025-06-02 16:53'
nullable: false
required:
- prescription_id
- medication_id
- date_time
'/api/medications-intakes/{medication_intake}':
get:
summary: 'Afficher une prise de médicament'
operationId: afficherUnePriseDeMdicament
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/medications-intakes/11 could not be found.'
properties:
message:
type: string
example: 'The route api/medications-intakes/11 could not be found.'
tags:
- 'Prises de Médicaments'
put:
summary: 'Modifier une prise de médicament'
operationId: modifierUnePriseDeMdicament
description: ''
parameters: []
responses: { }
tags:
- 'Prises de Médicaments'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
prescription_id:
type: integer
description: 'The id of an existing record in the prescriptions table.'
example: 17
nullable: true
medication_id:
type: integer
description: 'The id of an existing record in the medications table.'
example: 11
nullable: true
is_taken:
type: boolean
description: ''
example: true
nullable: true
date_time:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d H:i.'
example: '2025-06-02 16:53'
nullable: true
parameters:
-
in: path
name: medication_intake
description: ''
example: 11
required: true
schema:
type: integer
/api/medications-intakes/trash:
post:
summary: 'Archiver plusieurs prises de médicaments'
operationId: archiverPlusieursPrisesDeMdicaments
description: ''
parameters: []
responses: { }
tags:
- 'Prises de Médicaments'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medication_intakes table.'
example:
- 3
items:
type: integer
required:
- ids
/api/medications-intakes/restore:
post:
summary: 'Restaurer plusieurs prises de médicaments'
operationId: restaurerPlusieursPrisesDeMdicaments
description: ''
parameters: []
responses: { }
tags:
- 'Prises de Médicaments'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the medication_intakes table.'
example:
- 7
items:
type: integer
required:
- ids
/api/recipes/all:
post:
summary: 'Lister les recettes'
operationId: listerLesRecettes
description: ''
parameters: []
responses: { }
tags:
- Recettes
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 58
nullable: true
nbre_items:
type: integer
description: ''
example: 3
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: ojwzyduhukbrmugzlf
nullable: true
is_low_potassium:
type: boolean
description: ''
example: false
nullable: true
is_low_sodium:
type: boolean
description: ''
example: false
nullable: true
/api/recipes:
post:
summary: 'Ajouter une recette'
operationId: ajouterUneRecette
description: ''
parameters: []
responses: { }
tags:
- Recettes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: est
nullable: false
description:
type: string
description: ''
example: 'Eum et aut ipsum ex.'
nullable: true
instructions:
type: string
description: ''
example: maxime
nullable: true
preparation_time:
type: integer
description: ''
example: 17
nullable: true
servings:
type: integer
description: ''
example: 12
nullable: true
is_low_potassium:
type: boolean
description: ''
example: false
nullable: true
is_low_sodium:
type: boolean
description: ''
example: true
nullable: true
calories:
type: integer
description: ''
example: 16
nullable: true
sodium_mg:
type: integer
description: ''
example: 9
nullable: true
potassium_mg:
type: integer
description: ''
example: 19
nullable: true
photo:
type: string
description: ''
example: ducimus
nullable: true
foods:
type: array
description: ''
example:
- []
items:
type: object
properties:
food_id:
type: integer
description: 'The id of an existing record in the food table.'
example: 4
nullable: false
quantity:
type: string
description: ''
example: ipsa
nullable: false
description:
type: string
description: ''
example: 'Delectus quia excepturi qui voluptatum excepturi qui modi.'
nullable: true
required:
- food_id
- quantity
required:
- name
- foods
'/api/recipes/{recipe_id}':
get:
summary: "Afficher les infos d'une recette"
operationId: afficherLesInfosDuneRecette
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/recipes/1 could not be found.'
properties:
message:
type: string
example: 'The route api/recipes/1 could not be found.'
tags:
- Recettes
put:
summary: 'Modifier une recette'
operationId: modifierUneRecette
description: ''
parameters: []
responses: { }
tags:
- Recettes
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: nobis
nullable: true
description:
type: string
description: ''
example: 'Rerum est enim odit dolorum qui ex nihil.'
nullable: true
instructions:
type: string
description: ''
example: minus
nullable: true
preparation_time:
type: string
description: ''
example: ducimus
nullable: true
servings:
type: string
description: ''
example: in
nullable: true
is_low_potassium:
type: boolean
description: ''
example: true
nullable: true
is_low_sodium:
type: boolean
description: ''
example: false
nullable: true
calories:
type: string
description: ''
example: reiciendis
nullable: true
sodium_mg:
type: string
description: ''
example: non
nullable: true
potassium_mg:
type: string
description: ''
example: et
nullable: true
photo:
type: string
description: ''
example: repellat
nullable: true
foods:
type: array
description: ''
example: null
items:
type: object
nullable: true
properties:
food_id:
type: integer
description: 'The id of an existing record in the food table.'
example: 6
nullable: false
quantity:
type: string
description: ''
example: et
nullable: false
description:
type: string
description: ''
example: 'Rerum corporis quisquam ex amet aliquid ipsum voluptas.'
nullable: true
required:
- food_id
- quantity
parameters:
-
in: path
name: recipe_id
description: 'The ID of the recipe.'
example: 1
required: true
schema:
type: integer
/api/recipes/trash:
post:
summary: 'Archiver plusieurs recettes'
operationId: archiverPlusieursRecettes
description: ''
parameters: []
responses: { }
tags:
- Recettes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the recipes table.'
example:
- 1
items:
type: integer
required:
- ids
/api/recipes/restore:
post:
summary: 'Restaurer plusieurs recettes'
operationId: restaurerPlusieursRecettes
description: ''
parameters: []
responses: { }
tags:
- Recettes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the recipes table.'
example:
- 5
items:
type: integer
required:
- ids
/api/roles/all:
post:
summary: 'Lister les roles'
operationId: listerLesRoles
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 26
nullable: true
nbre_items:
type: integer
description: ''
example: 15
nullable: true
filter_value:
type: string
description: ''
example: et
nullable: true
types:
type: array
description: ''
example:
- voluptas
items:
type: string
/api/roles:
post:
summary: 'Ajouter une liste de role'
operationId: ajouterUneListeDeRole
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: ut
nullable: false
permissions:
type: array
description: 'The id of an existing record in the permissions table.'
example:
- 17
items:
type: integer
description:
type: string
description: ''
example: 'Et perspiciatis maxime earum assumenda aut.'
nullable: true
type:
type: string
description: ''
example: asperiores
nullable: true
required:
- name
- permissions
'/api/roles/{role_id}':
get:
summary: 'Afficher un role spécifique'
operationId: afficherUnRoleSpcifique
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/roles/1 could not be found.'
properties:
message:
type: string
example: 'The route api/roles/1 could not be found.'
tags:
- Rôles
put:
summary: 'Modifier ou un role spécifique'
operationId: modifierOuUnRoleSpcifique
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: et
nullable: true
permissions:
type: array
description: 'The id of an existing record in the permissions table.'
example:
- 8
items:
type: integer
nullable: true
description:
type: string
description: ''
example: 'Quia qui nobis quia assumenda consequatur.'
nullable: true
type:
type: string
description: ''
example: necessitatibus
nullable: true
parameters:
-
in: path
name: role_id
description: 'The ID of the role.'
example: 1
required: true
schema:
type: integer
/api/dialysis-sessions/all:
post:
summary: 'Lister les séances de dialyse'
operationId: listerLesSancesDeDialyse
description: ''
parameters: []
responses: { }
tags:
- 'Séances de dialyse'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 74
nullable: true
nbre_items:
type: integer
description: ''
example: 6
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: asxezrayxlyycinury
nullable: true
trashed:
type: boolean
description: ''
example: true
nullable: true
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 6
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 6
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2025-06-02'
nullable: true
end_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Le champ value doit être une date après ou égale à start_date.'
example: '2042-03-29'
nullable: true
/api/dialysis-sessions:
post:
summary: 'Ajouter une séance de dialyse'
operationId: ajouterUneSanceDeDialyse
description: ''
parameters: []
responses: { }
tags:
- 'Séances de dialyse'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: false
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: false
session_start:
type: string
description: ''
example: reprehenderit
nullable: false
session_end:
type: string
description: ''
example: qui
nullable: true
weight_before:
type: string
description: ''
example: rerum
nullable: true
weight_after:
type: string
description: ''
example: incidunt
nullable: true
fluid_removed:
type: string
description: ''
example: nihil
nullable: true
blood_pressure_post:
type: string
description: ''
example: ea
nullable: true
side_effects:
type: string
description: ''
example: ratione
nullable: true
description:
type: string
description: ''
example: 'Et sunt rerum delectus vel eum.'
nullable: true
observation:
type: string
description: ''
example: in
nullable: true
status:
type: string
description: ''
example: done
nullable: true
enum:
- pending
- done
- cancelled
required:
- patient_id
- doctor_id
- session_start
'/api/dialysis-sessions/{dialysis_session}':
get:
summary: 'Afficher une séance de dialyse'
operationId: afficherUneSanceDeDialyse
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/dialysis-sessions/1 could not be found.'
properties:
message:
type: string
example: 'The route api/dialysis-sessions/1 could not be found.'
tags:
- 'Séances de dialyse'
put:
summary: 'Modifier une séance de dialyse'
operationId: modifierUneSanceDeDialyse
description: ''
parameters: []
responses: { }
tags:
- 'Séances de dialyse'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
patient_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
doctor_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
session_start:
type: string
description: ''
example: voluptatum
nullable: true
session_end:
type: string
description: ''
example: molestiae
nullable: true
weight_before:
type: string
description: ''
example: null
nullable: true
weight_after:
type: string
description: ''
example: null
nullable: true
fluid_removed:
type: string
description: ''
example: null
nullable: true
blood_pressure_post:
type: string
description: ''
example: nobis
nullable: true
side_effects:
type: string
description: ''
example: sint
nullable: true
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- done
- cancelled
parameters:
-
in: path
name: dialysis_session
description: ''
example: 1
required: true
schema:
type: integer
/api/dialysis-sessions/trash:
post:
summary: 'Archiver plusieurs séances de dialyse'
operationId: archiverPlusieursSancesDeDialyse
description: ''
parameters: []
responses: { }
tags:
- 'Séances de dialyse'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the dialysis_sessions table.'
example:
- 11
items:
type: integer
required:
- ids
/api/dialysis-sessions/restore:
post:
summary: 'Restaurer plusieurs séances de dialyse'
operationId: restaurerPlusieursSancesDeDialyse
description: ''
parameters: []
responses: { }
tags:
- 'Séances de dialyse'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the dialysis_sessions table.'
example:
- 20
items:
type: integer
required:
- ids
/api/upload-photo:
post:
summary: "Upload d'un fichier"
operationId: uploadDunFichier
description: ''
parameters: []
responses: { }
tags:
- 'Upload de fichier'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
photo:
type: string
description: 'Le champ value ne peut contenir plus de 5120 caractères.'
example: i
nullable: false
required:
- photo
/api/users/all:
post:
summary: 'Fonction qui permet de recuperer la liste des utilisateurs'
operationId: fonctionQuiPermetDeRecupererLaListeDesUtilisateurs
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
role_id:
type: integer
description: 'The id of an existing record in the roles table.'
example: 13
nullable: true
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 66
nullable: true
nbre_items:
type: integer
description: ''
example: 6
nullable: true
filter_value:
type: string
description: ''
example: ut
nullable: true
in_order_name:
type: boolean
description: ''
example: false
nullable: true
health_center_id:
type: integer
description: ''
example: 7
nullable: true
department_id:
type: integer
description: ''
example: 14
nullable: true
coverage_type:
type: string
description: ''
example: obligatory
nullable: true
enum:
- obligatory
- complementary
/api/users:
post:
summary: "Fonction qui permet d'ajouter un utilisateur sans passer par la verification"
operationId: fonctionQuiPermetDajouterUnUtilisateurSansPasserParLaVerification
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: bevkzrblmf
nullable: true
firstname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: hioqmtxwcdmndsfz
nullable: false
lastname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jwhyjesbmrwsgaecvvew
nullable: true
gender:
type: string
description: ''
example: male
nullable: false
enum:
- male
- female
birthday:
type: string
description: 'Le champ value doit être une date valide.'
example: '2025-06-02T16:53:01'
nullable: true
nationality:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: nsiod
nullable: true
nui:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: avhqvjpfgkpisesyhlpkmhh
nullable: true
niss:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: pidagyhakchthdkcyocgeoepm
nullable: true
email:
type: string
description: 'Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères.'
example: amckenzie@example.com
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: eotkniwalefw
nullable: true
phone2:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: bxtdfgcnugvnqe
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: hm
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: fgad
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: vaocbqeudspz
nullable: true
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: '"}2O_52_'
nullable: false
photo:
type: string
description: ''
example: ut
nullable: true
specialty:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: dwodtgbdt
nullable: true
license_number:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: omvfoelbxtyucpoialc
nullable: true
years_of_experience:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 39
nullable: true
work_schedule:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: nimrpk
nullable: true
role_id:
type: integer
description: 'The id of an existing record in the roles table.'
example: 20
nullable: false
health_center_id:
type: integer
description: ''
example: 8
nullable: true
department_id:
type: integer
description: ''
example: 20
nullable: true
mutuality_number:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: ebxiinbxmzhhqfbxckaoenls
nullable: true
coverage_type:
type: string
description: ''
example: obligatory
nullable: true
enum:
- obligatory
- complementary
guardian_name:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: pijbhiqy
nullable: true
guardian_contact:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: rwvszza
nullable: true
guardian_relation:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: vngfjngkgey
nullable: true
required:
- firstname
- gender
- password
- role_id
'/api/users/{user_id}':
get:
summary: "Cette route permet d'afficher les informations d'un utilisateur"
operationId: cetteRoutePermetDafficherLesInformationsDunUtilisateur
description: ''
parameters: []
responses:
404:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'The route api/users/1 could not be found.'
properties:
message:
type: string
example: 'The route api/users/1 could not be found.'
tags:
- Utilisateurs
parameters:
-
in: path
name: user_id
description: 'The ID of the user.'
example: 1
required: true
schema:
type: integer
'/api/users/update-password/{user}':
put:
summary: 'Changer un mot de passe'
operationId: changerUnMotDePasse
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: ';U9y].,'
nullable: false
required:
- password
parameters:
-
in: path
name: user
description: 'Optional parameter.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
'/api/users/{user}':
put:
summary: "Fonction permettant de mettre à jour les informations d'un utilisateur"
operationId: fonctionPermettantDeMettreJourLesInformationsDunUtilisateur
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
firstname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jknekkerwqrnevfgbtsknrmu
nullable: true
lastname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: qjdudhraftwpxnpxvzzmr
nullable: true
gender:
type: string
description: ''
example: female
nullable: true
enum:
- male
- female
birthday:
type: string
description: 'Le champ value doit être une date valide.'
example: '2025-06-02T16:53:01'
nullable: true
nationality:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: xcdybegygjknjcrbzh
nullable: true
nui:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: kmnewcl
nullable: true
niss:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: qsurvbkuiciugg
nullable: true
connexion_type:
type: string
description: ''
example: email
nullable: true
enum:
- email
- phone
email:
type: string
description: 'Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères.'
example: tyson.larkin@example.com
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: d
nullable: true
phone2:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: hsqraqag
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: x
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: nkpnnh
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: apfbsbwy
nullable: true
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: 'Wh6o/gglI`FrS;Y[}'
nullable: true
photo:
type: string
description: ''
example: possimus
nullable: true
specialty:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: bqfaljudfy
nullable: true
license_number:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jbucewmhqy
nullable: true
years_of_experience:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 76
nullable: true
work_schedule:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: ik
nullable: true
role_id:
type: integer
description: 'The id of an existing record in the roles table.'
example: 4
nullable: true
health_center_id:
type: integer
description: ''
example: 10
nullable: true
department_id:
type: integer
description: ''
example: 20
nullable: true
mutuality_number:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: acxdjfsyjsfkbnhejrbwaagh
nullable: true
coverage_type:
type: string
description: ''
example: complementary
nullable: true
enum:
- obligatory
- complementary
guardian_name:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: myuaxvidweaojqnli
nullable: true
guardian_contact:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: dwekamexspqxgfzs
nullable: true
guardian_relation:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: soavshlmhkrnweeondpt
nullable: true
parameters:
-
in: path
name: user
description: 'Optional parameter.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
/api/users/trash:
post:
summary: 'Fonction pour le multiple archivage des utilisateurs'
operationId: fonctionPourLeMultipleArchivageDesUtilisateurs
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_ids:
type: array
description: ''
example:
- 1
items:
type: integer
/api/users/restore:
post:
summary: "Fonction de restauration multiples d'utilisateurs"
operationId: fonctionDeRestaurationMultiplesDutilisateurs
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_ids:
type: array
description: ''
example:
- 11
items:
type: integer
/api/users/destroy:
post:
summary: "Fonction de suppression définitive multiple d'utilisateurs"
operationId: fonctionDeSuppressionDfinitiveMultipleDutilisateurs
description: ''
parameters: []
responses: { }
tags:
- Utilisateurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_ids:
type: array
description: ''
example:
- 14
items:
type: integer
tags:
-
name: Authentification
description: "\nGestion de l'authentification des utilisateurs"
-
name: 'Carnet Médical'
description: "\nGestion des carnets médicaux"
-
name: 'Centres de santé'
description: "\nGestion des centres de santé"
-
name: Chat
description: ''
-
name: 'Checkups patients'
description: "\nGestion des checkups patients"
-
name: Départements
description: "\nGestion des départements"
-
name: Endpoints
description: ''
-
name: Forum
description: ''
-
name: Médicaments
description: "\nGestion des médicaments"
-
name: Nourritures
description: "\nGestion des nourritures"
-
name: 'Page Médicale'
description: "\nGestion de pages d'un carnet médical"
-
name: Permissions
description: "\nGestion des permissions"
-
name: Prescriptions
description: "\nGestion des prescriptions"
-
name: 'Prises de Médicaments'
description: "\nGestion des prises de médicaments"
-
name: Recettes
description: "\nGestion des recettes"
-
name: Rôles
description: "\nGestion des rôles"
-
name: 'Séances de dialyse'
description: "\nGestion des séances de dialyse"
-
name: 'Upload de fichier'
description: "\nGestion des uploads de fichiers"
-
name: Utilisateurs
description: "\nGestion des utilisateurs"
components:
securitySchemes:
default:
type: http
scheme: bearer
description: 'You can retrieve your token by visiting your dashboard and clicking Generate API token.'
security:
-
default: []