openapi: 3.0.3
info:
title: Laravel
description: ''
version: 1.0.0
servers:
-
url: 'https://pessi.ms-hotel.net'
paths:
/api/statistic-overview:
post:
summary: 'Afficher les effectifs des éléments de statistique'
operationId: afficherLesEffectifsDeslmentsDeStatistique
description: ''
parameters: []
responses: { }
tags:
- 'Aperçu des statistiques/ statistic Overview'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 16
nullable: true
/api/articles/all:
post:
summary: 'Afficher la liste des articles'
operationId: afficherLaListeDesArticles
description: ''
parameters: []
responses: { }
tags:
- Articles
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: 3
nullable: true
filter_value:
type: string
description: ''
example: optio
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 15
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 18
nullable: true
type:
type: string
description: ''
example: consumable
nullable: true
enum:
- consumable
- storable
expired:
type: boolean
description: ''
example: false
nullable: true
/api/articles:
post:
summary: 'Enregistrer des articles'
operationId: enregistrerDesArticles
description: ''
parameters: []
responses: { }
tags:
- Articles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
name:
type: string
description: ''
example: dignissimos
nullable: false
type:
type: string
description: ''
example: consumable
nullable: false
enum:
- consumable
- storable
image:
type: string
description: ''
example: corporis
nullable: true
price:
type: number
description: ''
example: 0.0
nullable: false
description:
type: string
description: ''
example: 'Illum quia quo totam aut quibusdam ut.'
nullable: true
unit_of_measurement:
type: string
description: ''
example: ducimus
nullable: true
alert_quantity:
type: integer
description: ''
example: 4
nullable: true
expiry_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
container:
type: string
description: ''
example: veritatis
nullable: true
container_unit:
type: string
description: 'Le champ value ne peut contenir plus de 50 caractères.'
example: kpnjhojoxvvlhvesmfomnuwb
nullable: true
container_quantity:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 28
nullable: true
detail:
type: string
description: ''
example: sed
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 16
nullable: false
suppliers:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- name
- type
- price
- service_id
- suppliers
required:
- articles
'/api/articles/{article_id}':
get:
summary: 'Afficher un article spécifique'
operationId: afficherUnArticleSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Articles
put:
summary: 'Modifier un article spécifique'
operationId: modifierUnArticleSpcifique
description: ''
parameters: []
responses: { }
tags:
- Articles
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: odio
nullable: true
type:
type: string
description: ''
example: storable
nullable: true
enum:
- consumable
- storable
image:
type: string
description: ''
example: sunt
nullable: true
price:
type: number
description: ''
example: 281156.38
nullable: true
description:
type: string
description: ''
example: 'Aut facilis qui quam.'
nullable: true
unit_of_measurement:
type: string
description: ''
example: est
nullable: true
alert_quantity:
type: integer
description: ''
example: 5
nullable: true
expiry_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
container:
type: string
description: ''
example: natus
nullable: true
container_unit:
type: string
description: 'Le champ value ne peut contenir plus de 50 caractères.'
example: lglkghnheobbxymsxzgjwp
nullable: true
container_quantity:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 2
nullable: true
detail:
type: string
description: ''
example: sunt
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 6
nullable: true
parameters:
-
in: path
name: article_id
description: 'The ID of the article.'
example: 26
required: true
schema:
type: integer
/api/articles/trash:
post:
summary: 'Fonction pour le multiple archivage des articles'
operationId: fonctionPourLeMultipleArchivageDesArticles
description: ''
parameters: []
responses: { }
tags:
- Articles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/articles/restore:
post:
summary: 'Fonction de restauration multiples des articles'
operationId: fonctionDeRestaurationMultiplesDesArticles
description: ''
parameters: []
responses: { }
tags:
- Articles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 10
items:
type: integer
required:
- ids
/api/articles/destroy:
post:
summary: 'Fonction de suppression définitive multiple des articles'
operationId: fonctionDeSuppressionDfinitiveMultipleDesArticles
description: ''
parameters: []
responses: { }
tags:
- Articles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 6
items:
type: integer
required:
- ids
/api/articles-suppliers/all:
post:
summary: "Avoir la liste des fournisseurs d'un article et inversément"
operationId: avoirLaListeDesFournisseursDunArticleEtInversment
description: ''
parameters: []
responses: { }
tags:
- Articles-Fournisseurs
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 66
nullable: true
nbre_items:
type: integer
description: ''
example: 1
nullable: true
article_id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 6
nullable: true
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 20
nullable: true
/api/register:
post:
summary: "Fonction permettant à un utilisateur de s'inscrire"
operationId: fonctionPermettantUnUtilisateurDeSinscrire
description: ''
parameters: []
responses: { }
tags:
- Authentification
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
firstname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: yhucdozqzhsokfxzzsypvgvhx
nullable: false
lastname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: hzrmbxflrhsvbr
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: '2026-02-06T09:06:13'
nullable: true
nationality:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: wniatbrxbkuxvmwgziys
nullable: true
nui:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: msbeboqcfljhlemnxryb
nullable: true
cni:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: ilijulotarappxuzpseqbsouw
nullable: true
cnps:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: inwcxurdgoow
nullable: true
passport_issue_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
passport_issue_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jukzfakcehnevqaon
nullable: true
profession:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: wpppwptjnrtlwjas
nullable: true
birth_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: rteqsgvhqfqrldry
nullable: true
connexion_type:
type: string
description: ''
example: email
nullable: false
enum:
- email
- phone
email:
type: string
description: 'This field is required when connexion_type is email. Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères.'
example: miller.bette@example.com
nullable: false
phone:
type: string
description: 'This field is required when connexion_type is phone. Le champ value ne peut contenir plus de 20 caractères.'
example: mubfbsvxtkepykmpkg
nullable: true
phone2:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: oqfdzyd
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: nvxvep
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: bkzas
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: xmaqu
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 20
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 20
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: true
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: 'W_|%:~1EqDw>34vG,}|~'
nullable: false
photo:
type: string
format: binary
description: 'Le champ value doit être une image. Le champ value ne peut être supérieur à 2048 kilobytes.'
nullable: true
required:
- firstname
- gender
- connexion_type
- password
security: []
/api/verify-account:
post:
summary: 'On vérifie le code envoyé par email'
operationId: onVrifieLeCodeEnvoyParEmail
description: ''
parameters: []
responses: { }
tags:
- Authentification
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
connexion_type:
type: string
description: ''
example: phone
nullable: false
enum:
- email
- phone
email:
type: string
description: 'This field is required when connexion_type is email. Le champ value doit être une address e-mail valide. The email of an existing record in the temp_users table. Le champ value ne peut contenir plus de 255 caractères.'
example: isatterfield@example.com
nullable: true
phone:
type: string
description: 'This field is required when connexion_type is phone. The phone of an existing record in the temp_users table. Le champ value ne peut contenir plus de 20 caractères.'
example: tecvxc
nullable: true
verification_code:
type: string
description: 'Le champ value ne peut contenir plus de 6 caractères.'
example: od
nullable: false
required:
- connexion_type
- verification_code
security: []
/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:
email:
type: string
description: 'This field is required when phone is not present. Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères.'
example: wfeest@example.com
nullable: false
phone:
type: string
description: 'This field is required when email is not present. Le champ value ne peut contenir plus de 20 caractères.'
example: cfqjztpsxvjhx
nullable: false
password:
type: string
description: ''
example: '|4Y8`ms+vUB:=SV*/W'
nullable: false
device_key:
type: string
description: ''
example: quo
nullable: true
required:
- password
security: []
/api/reset-password:
post:
summary: 'Fonction permettant de demander un lien pour réinitialiser le mot de passe'
operationId: fonctionPermettantDeDemanderUnLienPourRinitialiserLeMotDePasse
description: ''
parameters: []
responses: { }
tags:
- Authentification
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
connexion_type:
type: string
description: ''
example: phone
nullable: false
enum:
- email
- phone
email:
type: string
description: 'This field is required when connexion_type is email. Le champ value doit être une address e-mail valide. The email of an existing record in the users table. Le champ value ne peut contenir plus de 255 caractères.'
example: lelia.abernathy@example.org
nullable: true
phone:
type: string
description: 'This field is required when connexion_type is phone. The phone of an existing record in the users table. Le champ value ne peut contenir plus de 20 caractères.'
example: tnduv
nullable: true
required:
- connexion_type
/api/confirm-reset-password:
post:
summary: "Fonction permettant de réinitialiser le mot de passe de l'utilisateur"
operationId: fonctionPermettantDeRinitialiserLeMotDePasseDeLutilisateur
description: ''
parameters: []
responses: { }
tags:
- Authentification
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
connexion_type:
type: string
description: ''
example: phone
nullable: false
enum:
- email
- phone
email:
type: string
description: 'This field is required when connexion_type is email. Le champ value doit être une address e-mail valide. The email of an existing record in the users table. The email of an existing record in the temp_users table.'
example: kiehn.maria@example.org
nullable: true
phone:
type: string
description: 'This field is required when connexion_type is phone. The phone of an existing record in the users table. The phone of an existing record in the temp_users table. Le champ value ne peut contenir plus de 20 caractères.'
example: jrbkdkxwu
nullable: true
verification_code:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: fmxuybjnbqjbaayunyocxhayenaheylfxcnfddcattfjsmaianfuecirn
nullable: false
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: 'M_CIr0&tRSyvmci'
nullable: false
required:
- connexion_type
- verification_code
- password
/api/logout:
post:
summary: 'Fonction permettant à un utilisateur connecté de se déconnecter'
operationId: fonctionPermettantUnUtilisateurConnectDeSeDconnecter
description: ''
parameters: []
responses: { }
tags:
- Authentification
/api/salaries-advances/all:
post:
summary: 'Afficher la liste filtrée des avances sur salaire'
operationId: afficherLaListeFiltreDesAvancesSurSalaire
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: ''
example: 12
nullable: true
nbre_items:
type: integer
description: ''
example: 3
nullable: true
filter_value:
type: string
description: ''
example: consequatur
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
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: '2026-02-06'
nullable: true
'/api/salaries-advances/{salary_advance_id}':
get:
summary: 'Afficher une retenue sur salaire spécifique'
operationId: afficherUneRetenueSurSalaireSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Avance sur salaire / Salary advance'
put:
summary: 'Mettre à jour une retenue sur salaire spécifique'
operationId: mettreJourUneRetenueSurSalaireSpcifique
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 20
nullable: true
amount:
type: string
description: ''
example: null
nullable: true
status:
type: string
description: ''
example: rejected
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
reason:
type: string
description: ''
example: quam
nullable: true
comments:
type: string
description: ''
example: cupiditate
nullable: true
parameters:
-
in: path
name: salary_advance_id
description: 'The ID of the salary advance.'
example: soluta
required: true
schema:
type: string
/api/salaries-advances:
post:
summary: 'Show the form for creating a new resource.'
operationId: showTheFormForCreatingANewResource
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
salary_advances:
type: array
description: ''
example:
- []
items:
type: object
properties:
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: false
amount:
type: string
description: ''
example: non
nullable: false
reason:
type: string
description: ''
example: quis
nullable: false
required:
- user_approve_id
- amount
- reason
required:
- salary_advances
/api/salaries-advances/trash:
post:
summary: 'Archiver (soft delete) les avances sur salaire spécifiées.'
operationId: archiversoftDeleteLesAvancesSurSalaireSpcifies
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 11
items:
type: integer
required:
- ids
/api/salaries-advances/restore:
post:
summary: 'Restaurer les avances sur salaire archivées.'
operationId: restaurerLesAvancesSurSalaireArchives
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 6
items:
type: integer
required:
- ids
/api/salaries-advances/destroy:
delete:
summary: 'Supprimer définitivement les avances sur salaire spécifiées.'
operationId: supprimerDfinitivementLesAvancesSurSalaireSpcifies
description: ''
parameters: []
responses: { }
tags:
- 'Avance sur salaire / Salary advance'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/warnings/all:
post:
summary: 'Lister les avertissements'
operationId: listerLesAvertissements
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
archive:
type: string
description: ''
example: only_trashed
nullable: true
enum:
- with_trashed
- only_trashed
date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2026-02-06'
nullable: true
page_items:
type: integer
description: ''
example: 7
nullable: true
nbre_items:
type: integer
description: ''
example: 13
nullable: true
filter_value:
type: string
description: ''
example: et
nullable: true
'/api/warnings/{warning_id}':
get:
summary: "Afficher les détails d'un avertissement"
operationId: afficherLesDtailsDunAvertissement
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Avertissements
put:
summary: "Modifier les détails d'un avertissement"
operationId: modifierLesDtailsDunAvertissement
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
reason:
type: string
description: ''
example: ut
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: '2026-02-06'
nullable: true
parameters:
-
in: path
name: warning_id
description: 'The ID of the warning.'
example: 16
required: true
schema:
type: integer
/api/warnings:
post:
summary: 'Ajouter un ou plusieurs avertissements'
operationId: ajouterUnOuPlusieursAvertissements
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
warnings:
type: array
description: ''
example:
- []
items:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: false
reason:
type: string
description: ''
example: saepe
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: '2026-02-06'
nullable: false
required:
- user_id
- reason
- date
required:
- warnings
/api/warnings/trash:
delete:
summary: 'Mettre un ou plusieurs avertissements en corbeille (soft delete)'
operationId: mettreUnOuPlusieursAvertissementsEnCorbeillesoftDelete
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
warning_ids:
type: array
description: 'The id of an existing record in the warnings table.'
example:
- 17
items:
type: integer
required:
- warning_ids
/api/warnings/restore:
post:
summary: 'Restaurer un ou plusieurs avertissements de la corbeille'
operationId: restaurerUnOuPlusieursAvertissementsDeLaCorbeille
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
warning_ids:
type: array
description: 'The id of an existing record in the warnings table.'
example:
- 13
items:
type: integer
required:
- warning_ids
/api/warnings/destroy:
delete:
summary: 'Supprimer définitivement un ou plusieurs avertissements'
operationId: supprimerDfinitivementUnOuPlusieursAvertissements
description: ''
parameters: []
responses: { }
tags:
- Avertissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
warning_ids:
type: array
description: 'The id of an existing record in the warnings table.'
example:
- 5
items:
type: integer
required:
- warning_ids
/api/purchase-vouchers/all:
post:
summary: "Afficher une liste filtrée des bons d'achat"
operationId: afficherUneListeFiltreDesBonsDachat
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
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: 18
nullable: true
filter_value:
type: string
description: ''
example: magni
nullable: true
status:
type: string
description: ''
example: paid
nullable: true
enum:
- requesting_price
- purchase_order
- paid
- delivered
priority:
type: string
description: ''
example: low
nullable: true
enum:
- low
- medium
- high
supplier_id:
type: string
description: 'The id of an existing record in the users table.'
example: null
nullable: true
hotel_id:
type: string
description: 'The id of an existing record in the hotels table.'
example: null
nullable: true
responsible_id:
type: string
description: 'The id of an existing record in the users table.'
example: null
nullable: true
article_ids:
type: array
description: 'The id of an existing record in the articles table.'
example:
- 7
items:
type: integer
/api/purchase-vouchers:
post:
summary: "Enregistrer un bon d'achat"
operationId: enregistrerUnBonDachat
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: false
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: false
description:
type: string
description: ''
example: 'Facere molestiae optio dolorem assumenda perferendis tempora.'
nullable: true
status:
type: string
description: ''
example: delivered
nullable: true
enum:
- requesting_price
- purchase_order
- paid
- delivered
priority:
type: string
description: ''
example: high
nullable: false
enum:
- low
- medium
- high
quotation_file:
type: string
description: ''
example: velit
nullable: true
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 20
nullable: false
unit_price:
type: integer
description: ''
example: 20
nullable: true
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 54
nullable: false
required:
- id
- quantity
required:
- supplier_id
- responsible_id
- priority
- articles
'/api/purchase-vouchers/{purchase_voucher}':
get:
summary: "Afficher un bon d'achat spécifique"
operationId: afficherUnBonDachatSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- "Bons d'achats"
put:
summary: 'Update the specified resource in storage.'
operationId: updateTheSpecifiedResourceInStorage
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 19
nullable: true
description:
type: string
description: ''
example: 'Facere dolor nisi molestias voluptas.'
nullable: true
status:
type: string
description: ''
example: requesting_price
nullable: true
enum:
- requesting_price
- purchase_order
- paid
- delivered
priority:
type: string
description: ''
example: medium
nullable: true
enum:
- low
- medium
- high
quotation_file:
type: string
description: ''
example: non
nullable: true
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example: null
items:
type: object
nullable: true
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 8
nullable: true
unit_price:
type: integer
description: ''
example: 10
nullable: true
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 71
nullable: true
payment_method:
type: string
description: ''
example: Cash
nullable: true
enum:
- Cash
- Bank
- OM
- MOMO
parameters:
-
in: path
name: purchase_voucher
description: ''
example: 1
required: true
schema:
type: integer
/api/purchase-vouchers/trash:
post:
summary: "Fonction pour le multiple archivage des bonds d'achat"
operationId: fonctionPourLeMultipleArchivageDesBondsDachat
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 6
items:
type: integer
required:
- ids
/api/purchase-vouchers/restore:
post:
summary: "Fonction de restauration multiples des bonds d'achat"
operationId: fonctionDeRestaurationMultiplesDesBondsDachat
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/purchase-vouchers/destroy:
delete:
summary: "Fonction de suppression définitive multiple des bonds d'achat"
operationId: fonctionDeSuppressionDfinitiveMultipleDesBondsDachat
description: ''
parameters: []
responses: { }
tags:
- "Bons d'achats"
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/room-categories/all:
post:
summary: 'Lister les catégories de chambres disponibles'
operationId: listerLesCatgoriesDeChambresDisponibles
description: ''
parameters: []
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data:
-
id: 5
name: Famimial
description: 'La meilleure'
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 14:51:35'
deleted_at: null
count_rooms: 0
-
id: 2
name: VIP
description: null
author: null
created_at: '2025-02-14 14:39:45'
deleted_at: null
count_rooms: 0
links:
first: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
last: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
prev: null
next: null
meta:
current_page: 1
from: 1
last_page: 1
links:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
path: 'http://127.0.0.1:8000/api/room-categories/all'
per_page: 1000000
to: 2
total: 2
properties:
data:
type: array
example:
-
id: 5
name: Famimial
description: 'La meilleure'
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 14:51:35'
deleted_at: null
count_rooms: 0
-
id: 2
name: VIP
description: null
author: null
created_at: '2025-02-14 14:39:45'
deleted_at: null
count_rooms: 0
items:
type: object
properties:
id:
type: integer
example: 5
name:
type: string
example: Famimial
description:
type: string
example: 'La meilleure'
author:
type: object
properties:
id:
type: integer
example: 1
name:
type: string
example: Admin
phone:
type: string
example: null
created_by:
type: string
example: null
updated_by:
type: string
example: null
deleted_by:
type: string
example: null
created_at:
type: string
example: '2025-02-14 10:50:03'
updated_at:
type: string
example: '2025-02-14 10:50:03'
deleted_at:
type: string
example: null
token:
type: string
example: null
created_at:
type: string
example: '2025-02-14 14:51:35'
deleted_at:
type: string
example: null
count_rooms:
type: integer
example: 0
links:
type: object
properties:
first:
type: string
example: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
last:
type: string
example: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
prev:
type: string
example: null
next:
type: string
example: null
meta:
type: object
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 1
links:
type: array
example:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/room-categories/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
items:
type: object
properties:
url:
type: string
example: null
label:
type: string
example: '« Précédent'
active:
type: boolean
example: false
path:
type: string
example: 'http://127.0.0.1:8000/api/room-categories/all'
per_page:
type: integer
example: 1000000
to:
type: integer
example: 2
total:
type: integer
example: 2
403:
description: ''
content:
text/plain:
schema:
type: string
example: "{\n\"message\": \"User does not have the right permissions.\"\n\"...\"\n}"
tags:
- 'Catégories de chambres'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: required.
example: 1
nullable: true
nbre_items:
type: integer
description: ''
example: 3
nullable: true
filter_value:
type: string
description: ''
example: perferendis
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 10
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: false
'/api/room-categories/{room_category}':
get:
summary: 'Afficher les informations sur une catégorie de chambre'
operationId: afficherLesInformationsSurUneCatgorieDeChambre
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Catégories de chambres'
put:
summary: 'Modifier une catégorie de chambre'
operationId: modifierUneCatgorieDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Catégories de chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: eaque
nullable: false
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 4
nullable: true
description:
type: string
description: ''
example: 'Quidem dolorem repellat molestiae deserunt voluptatibus ut similique.'
nullable: true
required:
- name
parameters:
-
in: path
name: room_category
description: ''
example: 9
required: true
schema:
type: integer
/api/room-categories:
post:
summary: 'Ajouer une catégorie de chambre'
operationId: ajouerUneCatgorieDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Catégories de chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
room_categories:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 3
nullable: false
name:
type: string
description: ''
example: voluptates
nullable: false
description:
type: string
description: ''
example: 'Est sint neque dolorum laboriosam dolor.'
nullable: true
required:
- hotel_id
- name
required:
- room_categories
/api/room-categories/trash:
delete:
summary: "Archiver une ou plusieurs catégories de chambre\nNB: Un type de chambre ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système"
operationId: archiverUneOuPlusieursCatgoriesDeChambreNBUnTypeDeChambreNePeutPastreSupprimSiIlEstLiQuelqueChoseDautreDansLeSystme
description: ''
parameters: []
responses: { }
tags:
- 'Catégories de chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the room_categories table.'
example:
- 2
items:
type: integer
required:
- ids
/api/room-categories/restore:
post:
summary: 'Restaurer une ou plusieurs catégories de chambre de la corbeille'
operationId: restaurerUneOuPlusieursCatgoriesDeChambreDeLaCorbeille
description: ''
parameters: []
responses: { }
tags:
- 'Catégories de chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 8
items:
type: integer
required:
- ids
/api/room-categories/destroy:
delete:
summary: "Forcer la suppression d'un ou plusieurs hotel(s) du système"
operationId: forcerLaSuppressionDunOuPlusieursHotelsDuSystme
description: ''
parameters: []
responses: { }
tags:
- 'Catégories de chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 14
items:
type: integer
required:
- ids
/api/rooms/all:
post:
summary: 'Afficher les informations sur les chambres disponibles/occupées'
operationId: afficherLesInformationsSurLesChambresDisponiblesoccupes
description: ''
parameters: []
responses: { }
tags:
- Chambres
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: 13
nullable: true
filter_value:
type: string
description: ''
example: illum
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 4
nullable: true
room_type_id:
type: integer
description: 'The id of an existing record in the room_types table.'
example: 14
nullable: true
room_category_id:
type: integer
description: 'The id of an existing record in the room_categories table.'
example: 13
nullable: true
service_id:
type: integer
description: ''
example: 12
nullable: true
status:
type: string
description: ''
example: busy
nullable: true
enum:
- free
- busy
floor:
type: integer
description: ''
example: 5
nullable: true
number_of_room:
type: integer
description: ''
example: 18
nullable: true
'/api/rooms/{room_id}':
get:
summary: "Afficher les informations d'une chambre"
operationId: afficherLesInformationsDuneChambre
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Chambres
put:
summary: "Mettre à jour les informations d'une chambre d'hotel"
operationId: mettreJourLesInformationsDuneChambreDhotel
description: ''
parameters: []
responses: { }
tags:
- Chambres
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
hotel_id:
type: integer
description: ''
example: 19
nullable: true
room_type_id:
type: integer
description: ''
example: 4
nullable: true
room_category_id:
type: integer
description: ''
example: 3
nullable: true
service_id:
type: integer
description: ''
example: 15
nullable: true
floor:
type: integer
description: ''
example: 19
nullable: true
number:
type: integer
description: ''
example: 13
nullable: false
price:
type: integer
description: ''
example: 20
nullable: true
number_of_room:
type: integer
description: ''
example: 18
nullable: true
image:
type: string
description: ''
example: nam
nullable: true
capacity:
type: integer
description: ''
example: 6
nullable: true
status:
type: string
description: ''
example: free
nullable: true
enum:
- free
- busy
description:
type: string
description: ''
example: 'Odio quo earum officia et provident quaerat.'
nullable: true
required:
- number
parameters:
-
in: path
name: room_id
description: 'The ID of the room.'
example: 1
required: true
schema:
type: integer
/api/rooms:
post:
summary: "Ajouter une ou plusieurs chambres d'hotel"
operationId: ajouterUneOuPlusieursChambresDhotel
description: ''
parameters: []
responses: { }
tags:
- Chambres
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
rooms:
type: array
description: ''
example:
- []
items:
type: object
properties:
hotel_id:
type: integer
description: ''
example: 4
nullable: false
room_type_id:
type: integer
description: ''
example: 1
nullable: false
room_category_id:
type: integer
description: ''
example: 3
nullable: false
service_id:
type: integer
description: ''
example: 4
nullable: false
floor:
type: integer
description: ''
example: 16
nullable: true
number:
type: integer
description: ''
example: 18
nullable: true
price:
type: integer
description: ''
example: 6
nullable: false
number_of_room:
type: integer
description: ''
example: 5
nullable: true
capacity:
type: integer
description: ''
example: 10
nullable: false
status:
type: string
description: ''
example: busy
nullable: false
enum:
- free
- busy
name:
type: string
description: ''
example: eos
nullable: false
description:
type: string
description: ''
example: 'Enim ducimus exercitationem aliquid fugit consequatur nostrum.'
nullable: true
image:
type: string
description: ''
example: rerum
nullable: true
required:
- hotel_id
- room_type_id
- room_category_id
- service_id
- price
- capacity
- status
- name
required:
- rooms
/api/rooms/trash:
delete:
summary: "Archiver une ou plusieurs chambres d'hotel"
operationId: archiverUneOuPlusieursChambresDhotel
description: ''
parameters: []
responses: { }
tags:
- Chambres
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the rooms table.'
example:
- 1
items:
type: integer
required:
- ids
/api/rooms/restore:
post:
summary: "Restaurer une ou plusieurs chambres d'hotel"
operationId: restaurerUneOuPlusieursChambresDhotel
description: ''
parameters: []
responses: { }
tags:
- Chambres
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/rooms/destroy:
delete:
summary: "Supprimer une ou plusieurs chambres d'hotels"
operationId: supprimerUneOuPlusieursChambresDhotels
description: ''
parameters: []
responses: { }
tags:
- Chambres
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/find-licence:
post:
summary: "Récupérer la route de l'application"
operationId: rcuprerLaRouteDeLapplication
description: ''
parameters: []
responses: { }
tags:
- Clés
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
cle:
type: string
description: ''
example: et
nullable: false
required:
- cle
'/api/keys/{id}':
get:
summary: "Récuperer les clés d'applications"
operationId: rcupererLesClsDapplications
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Clés
parameters:
-
in: path
name: id
description: 'Optional parameter. The ID of the .'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: commodi
/api/orders/all:
post:
summary: 'Lister les commandes'
operationId: listerLesCommandes
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 63
nullable: true
nbre_items:
type: integer
description: ''
example: 17
nullable: true
filter_value:
type: string
description: ''
example: aut
nullable: true
customer_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
payment_mode:
type: string
description: ''
example: nisi
nullable: true
status:
type: string
description: ''
example: cancelled
nullable: true
enum:
- pending
- paid
- cancelled
- confirmed
payment_status:
type: string
description: ''
example: advance
nullable: true
enum:
- none
- advance
- completed
product_id:
type: integer
description: 'The id of an existing record in the products table.'
example: 14
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 5
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 5
nullable: true
'/api/orders/{order_id}':
get:
summary: "Afficher les détails d'une commande"
operationId: afficherLesDtailsDuneCommande
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Commandes
put:
summary: 'Modifier une commande'
operationId: modifierUneCommande
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
customer_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: true
payment_mode:
type: string
description: ''
example: pariatur
nullable: true
room_id:
type: integer
description: 'The id of an existing record in the rooms table.'
example: 7
nullable: true
room_service_id:
type: integer
description: 'The id of an existing record in the room_services table.'
example: 6
nullable: true
status:
type: string
description: ''
example: paid
nullable: true
enum:
- pending
- paid
- cancelled
- confirmed
delivery_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
products:
type: array
description: ''
example: null
items:
type: object
nullable: true
properties:
id:
type: integer
description: 'The id of an existing record in the products table.'
example: 9
nullable: false
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 22
nullable: false
required:
- id
- quantity
parameters:
-
in: path
name: order_id
description: 'The ID of the order.'
example: 1
required: true
schema:
type: integer
/api/orders:
post:
summary: 'Ajouter une commande'
operationId: ajouterUneCommande
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
customer_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
payment_mode:
type: string
description: ''
example: voluptas
nullable: false
room_id:
type: integer
description: 'The id of an existing record in the rooms table.'
example: 16
nullable: true
room_service_id:
type: integer
description: 'The id of an existing record in the room_services table.'
example: 5
nullable: true
status:
type: string
description: ''
example: paid
nullable: true
enum:
- pending
- paid
- cancelled
- confirmed
delivery_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
products:
type: array
description: ''
example:
- []
items:
type: object
properties:
id:
type: integer
description: 'The id of an existing record in the products table.'
example: 20
nullable: false
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 62
nullable: false
required:
- id
- quantity
required:
- payment_mode
- products
/api/orders/trash:
post:
summary: 'Archiver (soft delete) les presences spécifiées.'
operationId: archiversoftDeleteLesPresencesSpcifies
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 11
items:
type: integer
required:
- ids
/api/orders/restore:
post:
summary: 'Restaurer les orders archivés.'
operationId: restaurerLesOrdersArchivs
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 3
items:
type: integer
required:
- ids
/api/orders/destroy:
post:
summary: 'Supprimer définitivement les orders spécifiés.'
operationId: supprimerDfinitivementLesOrdersSpcifis
description: ''
parameters: []
responses: { }
tags:
- Commandes
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 10
items:
type: integer
required:
- ids
/api/contracts/all:
post:
summary: 'Retourne la liste des contrats avec la possibilité de filtrer et paginer les résultats.'
operationId: retourneLaListeDesContratsAvecLaPossibilitDeFiltrerEtPaginerLesRsultats
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: ''
example: 14
nullable: true
nbre_items:
type: integer
description: ''
example: 18
nullable: true
filter_value:
type: string
description: ''
example: reiciendis
nullable: true
position:
type: string
description: ''
example: pariatur
nullable: true
status:
type: string
description: ''
example: Pending
nullable: true
enum:
- Active
- Terminated
- Pending
trashed:
type: boolean
description: ''
example: true
nullable: true
'/api/contracts/{contract}':
get:
summary: 'Affiche les détails d’un contrat spécifique à partir de son identifiant.'
operationId: afficheLesDtailsDunContratSpcifiquePartirDeSonIdentifiant
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Contrats
put:
summary: 'Met à jour les informations d’un contrat donné.'
operationId: metJourLesInformationsDunContratDonn
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 20
nullable: true
type:
type: string
description: ''
example: CDI
nullable: true
enum:
- CDD
- CDI
- Stage
description:
type: string
description: ''
example: 'Asperiores velit excepturi iusto fugit vitae consequuntur cum.'
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
duration:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 84
nullable: true
working_hours:
type: string
description: ''
example: molestias
nullable: true
position:
type: string
description: ''
example: exercitationem
nullable: true
gross_salary:
type: number
description: 'Le champ value doit être au moins 0.'
example: 77
nullable: true
status:
type: string
description: ''
example: Pending
nullable: true
enum:
- Active
- Terminated
- Pending
service_benefits:
type: string
description: ''
example: et
nullable: true
bonus:
type: string
description: ''
example: eligendi
nullable: true
number_days_off:
type: integer
description: ''
example: 1
nullable: true
parameters:
-
in: path
name: contract
description: 'The contract.'
example: molestiae
required: true
schema:
type: string
/api/contracts:
post:
summary: "Crée un nouveau contrat pour un utilisateur, après vérification d'absence de contrat actif."
operationId: creUnNouveauContratPourUnUtilisateurAprsVrificationDabsenceDeContratActif
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: false
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 6
nullable: false
type:
type: string
description: ''
example: ratione
nullable: false
description:
type: string
description: ''
example: 'Reiciendis dolorem nihil similique qui et saepe dignissimos.'
nullable: true
start_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: false
duration:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 6
nullable: true
working_hours:
type: string
description: ''
example: explicabo
nullable: false
position:
type: string
description: ''
example: praesentium
nullable: false
gross_salary:
type: number
description: 'Le champ value doit être au moins 0.'
example: 70
nullable: false
status:
type: string
description: ''
example: Pending
nullable: true
enum:
- Active
- Terminated
- Pending
service_benefits:
type: string
description: ''
example: quia
nullable: true
bonus:
type: string
description: ''
example: autem
nullable: true
number_days_off:
type: integer
description: ''
example: 16
nullable: true
required:
- user_id
- user_approve_id
- type
- start_date
- working_hours
- position
- gross_salary
/api/contracts/trash:
post:
summary: 'Archiver (soft delete) les contrats spécifiées.'
operationId: archiversoftDeleteLesContratsSpcifies
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/contracts/restore:
post:
summary: 'Restaurer les contrats archivés.'
operationId: restaurerLesContratsArchivs
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 15
items:
type: integer
required:
- ids
/api/contracts/destroy:
post:
summary: 'Supprimer définitivement les contrats spécifiés.'
operationId: supprimerDfinitivementLesContratsSpcifis
description: ''
parameters: []
responses: { }
tags:
- Contrats
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/disbursements/all:
post:
summary: 'Afficher la liste des décaissements en fonction des filtres'
operationId: afficherLaListeDesDcaissementsEnFonctionDesFiltres
description: ''
parameters: []
responses: { }
tags:
- Decaissements
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: 'Le champ value doit être au moins 1.'
example: 86
nullable: true
filter_value:
type: string
description: ''
example: delectus
nullable: true
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 12
nullable: true
purchase_order_id:
type: integer
description: 'The id of an existing record in the purchase_orders table.'
example: 4
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: true
payment_method:
type: string
description: ''
example: Bank
nullable: true
enum:
- Cash
- Bank
- OM
- MOMO
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- approved
- rejected
reference:
type: string
description: ''
example: et
nullable: true
date_start:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
date_end:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
service_ids:
type: array
description: 'The id of an existing record in the services table.'
example:
- 5
items:
type: integer
/api/disbursements:
post:
summary: 'Enregistrer un nouveau décaissement'
operationId: enregistrerUnNouveauDcaissement
description: ''
parameters: []
responses: { }
tags:
- Decaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
payment_method:
type: string
description: ''
example: Bank
nullable: false
enum:
- Cash
- Bank
- OM
- MOMO
status:
type: string
description: ''
example: rejected
nullable: true
enum:
- pending
- approved
- rejected
expense_type_id:
type: string
description: 'The id of an existing record in the expense_types table.'
example: null
nullable: true
invoice_image:
type: string
description: ''
example: sapiente
nullable: true
reasons:
type: string
description: ''
example: omnis
nullable: true
total_amount:
type: number
description: 'Le champ value doit être au moins 0.'
example: 27
nullable: true
disbursement_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
responsible_id:
type: string
description: 'The id of an existing record in the users table.'
example: quibusdam
nullable: false
purchase_order_id:
type: string
description: 'The id of an existing record in the purchase_orders table.'
example: null
nullable: true
validation_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
required:
- payment_method
- responsible_id
'/api/disbursements/{disbursement_id}':
get:
summary: 'Afficher un décaissement spécifique'
operationId: afficherUnDcaissementSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Decaissements
put:
summary: 'Update the specified resource in storage.'
operationId: updateTheSpecifiedResourceInStorage
description: ''
parameters: []
responses: { }
tags:
- Decaissements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
payment_method:
type: string
description: ''
example: Cash
nullable: true
enum:
- Cash
- Bank
- OM
- MOMO
status:
type: string
description: ''
example: approved
nullable: true
enum:
- pending
- approved
- rejected
expense_type_id:
type: string
description: 'The id of an existing record in the expense_types table.'
example: null
nullable: true
invoice_image:
type: string
description: ''
example: soluta
nullable: true
reasons:
type: string
description: ''
example: et
nullable: true
total_amount:
type: number
description: 'Le champ value doit être au moins 0.'
example: 82
nullable: true
disbursement_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
responsible_id:
type: string
description: 'The id of an existing record in the users table.'
example: null
nullable: true
purchase_order_id:
type: string
description: 'The id of an existing record in the purchase_orders table.'
example: null
nullable: true
validation_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
parameters:
-
in: path
name: disbursement_id
description: 'The ID of the disbursement.'
example: 1
required: true
schema:
type: integer
/api/disbursements/trash:
post:
summary: 'Archiver (soft delete) les décaissements.'
operationId: archiversoftDeleteLesDcaissements
description: ''
parameters: []
responses: { }
tags:
- Decaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 13
items:
type: integer
required:
- ids
/api/disbursements/restore:
post:
summary: 'Restaurer les décaissements archivés.'
operationId: restaurerLesDcaissementsArchivs
description: ''
parameters: []
responses: { }
tags:
- Decaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 18
items:
type: integer
required:
- ids
/api/disbursements/destroy:
post:
summary: 'Supprimer définitivement les décaissements spécifiés.'
operationId: supprimerDfinitivementLesDcaissementsSpcifis
description: ''
parameters: []
responses: { }
tags:
- Decaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 7
items:
type: integer
required:
- ids
/api/supply-demands/all:
post:
summary: "Affiche la liste paginée des demandes d'approvisionnement, avec filtres optionnels."
operationId: afficheLaListePagineDesDemandesDapprovisionnementAvecFiltresOptionnels
description: ''
parameters: []
responses: { }
tags:
- "Demande d'approvisionnement | Supply demand"
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
filter_value:
type: string
description: ''
example: accusamus
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 11
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 3
nullable: true
priority:
type: string
description: ''
example: low
nullable: true
enum:
- high
- medium
- low
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- accepted
- refused
article_ids:
type: array
description: 'The id of an existing record in the articles table.'
example:
- 1
items:
type: integer
'/api/supply-demands/{supply_demand_id}':
get:
summary: "Affiche les détails d'une demande d'approvisionnement spécifique."
operationId: afficheLesDtailsDuneDemandeDapprovisionnementSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- "Demande d'approvisionnement | Supply demand"
put:
summary: "Met à jour les informations d'une demande d'approvisionnement existante."
operationId: metJourLesInformationsDuneDemandeDapprovisionnementExistante
description: ''
parameters: []
responses: { }
tags:
- "Demande d'approvisionnement | Supply demand"
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: zvtbknshzoua
nullable: true
description:
type: string
description: ''
example: 'Voluptate est fugit ad sunt et est voluptatibus.'
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
status:
type: string
description: ''
example: accepted
nullable: true
enum:
- pending
- accepted
- refused
priority:
type: string
description: ''
example: medium
nullable: true
enum:
- high
- medium
- low
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example: null
items:
type: object
nullable: true
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 18
nullable: false
unit_price:
type: integer
description: ''
example: 1
nullable: true
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 14
nullable: false
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: false
required:
- id
- quantity
- supplier_id
parameters:
-
in: path
name: supply_demand_id
description: 'The ID of the supply demand.'
example: 1
required: true
schema:
type: integer
/api/supply-demands:
post:
summary: "Crée une nouvelle demande d'approvisionnement."
operationId: creUneNouvelleDemandeDapprovisionnement
description: ''
parameters: []
responses: { }
tags:
- "Demande d'approvisionnement | Supply demand"
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: uswwwehiupctrxuenox
nullable: true
description:
type: string
description: ''
example: 'Saepe consequatur ea voluptatem accusantium maiores sit.'
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: false
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- accepted
- refused
priority:
type: string
description: ''
example: high
nullable: false
enum:
- high
- medium
- low
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 10
nullable: false
unit_price:
type: integer
description: ''
example: 3
nullable: true
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 23
nullable: false
supplier_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 15
nullable: false
required:
- id
- quantity
- supplier_id
required:
- responsible_id
- priority
- articles
/api/supply-demands/trash:
post:
summary: "Met en corbeille (suppression logique) une ou plusieurs demandes d'approvisionnement."
operationId: metEnCorbeillesuppressionLogiqueUneOuPlusieursDemandesDapprovisionnement
description: ''
parameters: []
responses: { }
tags:
- "Demande d'approvisionnement | Supply demand"
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
supply_demand_ids:
type: array
description: 'The id of an existing record in the supply_demands table.'
example:
- 4
items:
type: integer
/api/supply-demands/restore:
post:
summary: "Restaure une ou plusieurs demandes d'approvisionnement supprimées (suppression logique)."
operationId: restaureUneOuPlusieursDemandesDapprovisionnementSupprimessuppressionLogique
description: ''
parameters: []
responses: { }
tags:
- "Demande d'approvisionnement | Supply demand"
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
supply_demand_ids:
type: array
description: 'The id of an existing record in the supply_demands table.'
example:
- 15
items:
type: integer
/api/holidays/all:
post:
summary: 'Lister les congés enregistrés'
operationId: listerLesCongsEnregistrs
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: true
status:
type: string
description: ''
example: approved
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
archive:
type: string
description: ''
example: only_trashed
nullable: true
enum:
- with_trashed
- only_trashed
date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
page_items:
type: integer
description: ''
example: 4
nullable: true
nbre_items:
type: integer
description: ''
example: 13
nullable: true
filter_value:
type: string
description: ''
example: illo
nullable: true
'/api/holidays/{holiday_id}':
get:
summary: "Afficher les détails d'une retenue sur salaire"
operationId: afficherLesDtailsDuneRetenueSurSalaire
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Demande de congé'
put:
summary: 'Modifier une demande de congé'
operationId: modifierUneDemandeDeCong
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
type:
type: string
description: ''
example: quisquam
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. Le champ value doit être une date après ou égale à today.'
example: '2118-05-05'
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: '2120-10-14'
nullable: true
days_taken:
type: integer
description: ''
example: 10
nullable: true
reason:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: sfkzfppujpfgxtmhwunq
nullable: true
status:
type: string
description: ''
example: rejected
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
parameters:
-
in: path
name: holiday_id
description: 'The ID of the holiday.'
example: 18
required: true
schema:
type: integer
/api/holidays:
post:
summary: 'Enregistrer une demande de congé'
operationId: enregistrerUneDemandeDeCong
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
type: string
description: ''
example: molestias
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. Le champ value doit être une date après ou égale à today.'
example: '2052-05-17'
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: '2034-05-17'
nullable: false
days_taken:
type: integer
description: ''
example: 12
nullable: false
reason:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: dimwgsxbzuvzhcdhrdxaxba
nullable: false
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: false
required:
- type
- start_date
- end_date
- days_taken
- reason
- user_approve_id
/api/holidays/trash:
delete:
summary: 'Archiver une ou plusieurs demandes de congés'
operationId: archiverUneOuPlusieursDemandesDeCongs
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
idHolidays:
type: array
description: 'The id of an existing record in the holidays table.'
example:
- 11
items:
type: integer
required:
- idHolidays
/api/holidays/restore:
post:
summary: 'Restaurer une ou plusieurs demandes de congés'
operationId: restaurerUneOuPlusieursDemandesDeCongs
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
idHolidays:
type: array
description: 'The id of an existing record in the holidays table.'
example:
- 12
items:
type: integer
required:
- idHolidays
/api/holidays/destroy:
delete:
summary: 'Supprimer une ou plusieurs demandes de congés'
operationId: supprimerUneOuPlusieursDemandesDeCongs
description: ''
parameters: []
responses: { }
tags:
- 'Demande de congé'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
idHolidays:
type: array
description: 'The id of an existing record in the holidays table.'
example:
- 8
items:
type: integer
required:
- idHolidays
/api/permission-requests/all:
post:
summary: 'Affiche une liste paginée des demandes de permission.'
operationId: afficheUneListePagineDesDemandesDePermission
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de 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: 26
nullable: true
nbre_items:
type: integer
description: 'Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 10000.'
example: 9
nullable: true
filterValue:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: xrcydk
nullable: true
departure:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
return:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après datedeparture.'
example: '2061-04-23'
nullable: true
duration:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 61
nullable: true
status:
type: string
description: ''
example: null
nullable: true
archive:
type: string
description: ''
example: with_trashed
nullable: true
enum:
- with_trashed
- only_trashed
'/api/permission-requests/{permissions_request}':
get:
summary: "Affiche les détails d'une demande de permission spécifique."
operationId: afficheLesDtailsDuneDemandeDePermissionSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Demandes de Permissions'
put:
summary: 'Met à jour une demande de permission si elle est encore en attente.'
operationId: metJourUneDemandeDePermissionSiElleEstEncoreEnAttente
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de Permissions'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
reason:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: ppym
nullable: true
datedeparture:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après ou égale à today.'
example: '2057-02-13'
nullable: true
dateRetour:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après datedeparture.'
example: '2047-04-28'
nullable: true
duration:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 27
nullable: true
status:
type: string
description: ''
example: rejected
nullable: true
enum:
- pending
- approved
- rejected
parameters:
-
in: path
name: permissions_request
description: ''
example: et
required: true
schema:
type: string
/api/permission-requests:
post:
summary: 'Crée une nouvelle demande de permission.'
operationId: creUneNouvelleDemandeDePermission
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de Permissions'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
reason:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: hs
nullable: false
departure:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après ou égale à today.'
example: '2042-03-06'
nullable: false
return:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après departure.'
example: '2086-03-28'
nullable: true
duration:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 80
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 18
nullable: false
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- approved
- rejected
required:
- reason
- departure
- user_approve_id
/api/permission-requests/trash:
post:
summary: 'Archiver (soft delete) les presences spécifiées.'
operationId: archiversoftDeleteLesPresencesSpcifies
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de Permissions'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 15
items:
type: integer
required:
- ids
/api/permission-requests/restore:
post:
summary: 'Restaurer les permission_requests archivés.'
operationId: restaurerLesPermissionRequestsArchivs
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de Permissions'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 15
items:
type: integer
required:
- ids
/api/permission-requests/destroy:
post:
summary: 'Supprimer définitivement les permission_requests spécifiés.'
operationId: supprimerDfinitivementLesPermissionRequestsSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Demandes de Permissions'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 7
items:
type: integer
required:
- ids
/api/cash-ins/all:
post:
summary: 'Lister les encaissements'
operationId: listerLesEncaissements
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 45
nullable: true
nbre_items:
type: integer
description: ''
example: 13
nullable: true
filter_value:
type: string
description: ''
example: hic
nullable: true
seller_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 4
nullable: true
order_id:
type: integer
description: 'The id of an existing record in the orders table.'
example: 7
nullable: true
client_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
date_start:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
date_end:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
cashin_type:
type: integer
description: ''
example: booking
nullable: true
enum:
- booking
- order
payment_method:
type: string
description: ''
example: suscipit
nullable: true
'/api/cash-ins/{cash_in}':
get:
summary: "Afficher les détails d'un encaissement"
operationId: afficherLesDtailsDunEncaissement
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Encaissements
put:
summary: 'Modifier un encaissement'
operationId: modifierUnEncaissement
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
order_id:
type: integer
description: ''
example: 2
nullable: true
service_id:
type: integer
description: ''
example: 16
nullable: true
booking_id:
type: integer
description: ''
example: 18
nullable: true
payment_method:
type: string
description: ''
example: et
nullable: true
amount:
type: number
description: ''
example: 103.70317
nullable: true
parameters:
-
in: path
name: cash_in
description: ''
example: 1
required: true
schema:
type: integer
/api/cash-ins:
post:
summary: 'Ajouter un encaissment'
operationId: ajouterUnEncaissment
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
order_id:
type: integer
description: ''
example: 18
nullable: true
service_id:
type: integer
description: ''
example: 10
nullable: false
booking_id:
type: integer
description: ''
example: 19
nullable: true
payment_method:
type: string
description: ''
example: voluptas
nullable: false
type:
type: string
description: ''
example: aliquam
nullable: true
amount:
type: number
description: ''
example: 272.6513
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: '2026-02-06'
nullable: true
required:
- service_id
- payment_method
- amount
/api/cash-ins/trash:
post:
summary: 'Archiver (soft delete) les entrées spécifiées.'
operationId: archiversoftDeleteLesEntresSpcifies
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 17
items:
type: integer
required:
- ids
/api/cash-ins/restore:
post:
summary: 'Restaurer les entrées archivées.'
operationId: restaurerLesEntresArchives
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/cash-ins/destroy:
post:
summary: 'Supprimer définitivement les entrées spécifiées.'
operationId: supprimerDfinitivementLesEntresSpcifies
description: ''
parameters: []
responses: { }
tags:
- Encaissements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 10
items:
type: integer
required:
- ids
/api/events/all:
post:
summary: 'Lister les évènements'
operationId: listerLesvnements
description: ''
parameters: []
responses: { }
tags:
- Evenements
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: 9
nullable: true
filter_value:
type: string
description: ''
example: dolorem
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 5
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 6
nullable: true
type:
type: string
description: ''
example: internal
nullable: true
enum:
- internal
- external
archive:
type: string
description: ''
example: only_trashed
nullable: true
enum:
- with_trashed
- only_trashed
'/api/events/{event_id}':
get:
summary: 'Afficher un évènement'
operationId: afficherUnvnement
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Evenements
put:
summary: 'Modifier un évènement'
operationId: modifierUnvnement
description: ''
parameters: []
responses: { }
tags:
- Evenements
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: xzxvbx
nullable: true
description:
type: string
description: ''
example: 'Aut odit harum laudantium quo qui aspernatur distinctio.'
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: '2026-02-06'
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: '2113-02-04'
nullable: true
type:
type: string
description: ''
example: external
nullable: true
enum:
- internal
- external
parental_contribution:
type: string
description: ''
example: null
nullable: true
budget:
type: string
description: ''
example: at
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 17
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 9
nullable: true
parameters:
-
in: path
name: event_id
description: 'The ID of the event.'
example: 1
required: true
schema:
type: integer
/api/events:
post:
summary: 'Ajouter un évènement'
operationId: ajouterUnvnement
description: ''
parameters: []
responses: { }
tags:
- Evenements
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: lyfrlnvbwwzrymksoz
nullable: false
description:
type: string
description: ''
example: 'Eligendi sit omnis ducimus vel repudiandae mollitia laboriosam.'
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: '2026-02-06'
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: '2111-06-06'
nullable: false
type:
type: string
description: ''
example: internal
nullable: false
enum:
- internal
- external
parental_contribution:
type: string
description: ''
example: null
nullable: true
budget:
type: string
description: ''
example: nostrum
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 5
nullable: false
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 3
nullable: true
required:
- name
- description
- start_date
- end_date
- type
- hotel_id
/api/events/trash:
post:
summary: 'Archiver un ou plusieurs events'
operationId: archiverUnOuPlusieursEvents
description: ''
parameters: []
responses: { }
tags:
- Evenements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
event_ids:
type: array
description: 'The id of an existing record in the events table.'
example:
- 20
items:
type: integer
required:
- event_ids
/api/events/restore:
post:
summary: 'Restaurer un ou plusieurs events'
operationId: restaurerUnOuPlusieursEvents
description: ''
parameters: []
responses: { }
tags:
- Evenements
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
event_ids:
type: array
description: 'The id of an existing record in the events table.'
example:
- 18
items:
type: integer
required:
- event_ids
/api/hotels/all:
post:
summary: 'Lister les hotels de la plateforme'
operationId: listerLesHotelsDeLaPlateforme
description: ''
parameters: []
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data:
-
id: 3
name: 'Pessi Hotel'
phone: +1-206-252-5925
description: 'Sit quibusdam.'
stars: 4
email: isauer@example.net
address: "5733 Payton Union\nLake Godfreymouth, LA 34761-3059"
website: null
author: null
created_at: '2025-02-14 10:50:03'
links:
first: 'http://127.0.0.1:8000/api/hotels/all?page=1'
last: 'http://127.0.0.1:8000/api/hotels/all?page=1'
prev: null
next: null
meta:
current_page: 1
from: 1
last_page: 1
links:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/hotels/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
path: 'http://127.0.0.1:8000/api/hotels/all'
per_page: 1000000
to: 3
total: 3
properties:
data:
type: array
example:
-
id: 3
name: 'Pessi Hotel'
phone: +1-206-252-5925
description: 'Sit quibusdam.'
stars: 4
email: isauer@example.net
address: "5733 Payton Union\nLake Godfreymouth, LA 34761-3059"
website: null
author: null
created_at: '2025-02-14 10:50:03'
items:
type: object
properties:
id:
type: integer
example: 3
name:
type: string
example: 'Pessi Hotel'
phone:
type: string
example: +1-206-252-5925
description:
type: string
example: 'Sit quibusdam.'
stars:
type: integer
example: 4
email:
type: string
example: isauer@example.net
address:
type: string
example: "5733 Payton Union\nLake Godfreymouth, LA 34761-3059"
website:
type: string
example: null
author:
type: string
example: null
created_at:
type: string
example: '2025-02-14 10:50:03'
links:
type: object
properties:
first:
type: string
example: 'http://127.0.0.1:8000/api/hotels/all?page=1'
last:
type: string
example: 'http://127.0.0.1:8000/api/hotels/all?page=1'
prev:
type: string
example: null
next:
type: string
example: null
meta:
type: object
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 1
links:
type: array
example:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/hotels/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
items:
type: object
properties:
url:
type: string
example: null
label:
type: string
example: '« Précédent'
active:
type: boolean
example: false
path:
type: string
example: 'http://127.0.0.1:8000/api/hotels/all'
per_page:
type: integer
example: 1000000
to:
type: integer
example: 3
total:
type: integer
example: 3
tags:
- Hotels
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: required.
example: 1
nullable: true
nbre_items:
type: integer
description: ''
example: 12
nullable: true
filter_value:
type: string
description: ''
example: provident
nullable: true
founder_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: true
manager_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 2
nullable: true
assistant_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 9
nullable: true
package_id:
type: integer
description: 'The id of an existing record in the packages table.'
example: 12
nullable: true
'/api/hotels/{hotel_id}':
get:
summary: 'Afficher les informations sur un hotel'
operationId: afficherLesInformationsSurUnHotel
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Hotels
put:
summary: "Modifier les informations d'un hotel"
operationId: modifierLesInformationsDunHotel
description: ''
parameters: []
responses: { }
tags:
- Hotels
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: provident
nullable: true
phone:
type: string
description: ''
example: ullam
nullable: true
description:
type: string
description: ''
example: 'Accusantium est et amet aliquid maiores minima.'
nullable: true
stars:
type: integer
description: 'Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 5.'
example: 3
nullable: true
email:
type: string
description: 'Le champ value doit être une address e-mail valide.'
example: rossie01@example.com
nullable: true
address:
type: string
description: ''
example: culpa
nullable: true
website:
type: string
description: ''
example: assumenda
nullable: true
logo:
type: string
description: ''
example: dolorem
nullable: true
rib:
type: string
description: ''
example: enim
nullable: true
niu:
type: string
description: ''
example: molestiae
nullable: true
rc:
type: string
description: ''
example: qui
nullable: true
creation_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2026-02-06'
nullable: true
city:
type: string
description: ''
example: rerum
nullable: true
country:
type: string
description: ''
example: aspernatur
nullable: true
type:
type: string
description: ''
example: molestias
nullable: true
category:
type: string
description: ''
example: nemo
nullable: true
founder_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 18
nullable: true
manager_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: true
assistant_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 10
nullable: true
package_id:
type: integer
description: ''
example: 17
nullable: true
parameters:
-
in: path
name: hotel_id
description: 'The ID of the hotel.'
example: 3
required: true
schema:
type: integer
/api/hotels:
post:
summary: 'Créer un hôtel'
operationId: crerUnHtel
description: ''
parameters: []
responses: { }
tags:
- Hotels
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: temporibus
nullable: false
phone:
type: string
description: ''
example: in
nullable: false
description:
type: string
description: ''
example: 'Veritatis sit autem quia.'
nullable: false
stars:
type: integer
description: 'Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 5.'
example: 5
nullable: false
email:
type: string
description: 'Le champ value doit être une address e-mail valide.'
example: zieme.amiya@example.com
nullable: false
address:
type: string
description: ''
example: libero
nullable: false
website:
type: string
description: ''
example: totam
nullable: true
logo:
type: string
description: ''
example: totam
nullable: true
phone2:
type: string
description: ''
example: null
nullable: true
rib:
type: string
description: ''
example: null
nullable: true
niu:
type: string
description: ''
example: null
nullable: true
rc:
type: string
description: ''
example: null
nullable: true
creation_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2026-02-06'
nullable: false
city:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: ksortuloblrsir
nullable: false
country:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: rwttsnaqaqsaeu
nullable: false
type:
type: string
description: ''
example: quia
nullable: true
category:
type: string
description: ''
example: perspiciatis
nullable: true
founder_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 7
nullable: false
manager_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 11
nullable: false
assistant_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: true
package_id:
type: integer
description: ''
example: 11
nullable: false
required:
- name
- phone
- description
- stars
- email
- address
- creation_date
- city
- country
- founder_id
- manager_id
- package_id
/api/hotels/trash:
delete:
summary: "Archiver un ou plusieurs hotel(s)\nNB: Un hotel ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système"
operationId: archiverUnOuPlusieursHotelsNBUnHotelNePeutPastreSupprimSiIlEstLiQuelqueChoseDautreDansLeSystme
description: ''
parameters: []
responses: { }
tags:
- Hotels
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the hotels table.'
example:
- 20
items:
type: integer
required:
- ids
/api/hotels/restore:
post:
summary: 'Restaurer un ou plusieurs hotel(s) de la corbeille'
operationId: restaurerUnOuPlusieursHotelsDeLaCorbeille
description: ''
parameters: []
responses: { }
tags:
- Hotels
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 7
items:
type: integer
required:
- ids
/api/hotels/destroy:
delete:
summary: "Forcer la suppression d'un ou plusieurs hotel(s) du système"
operationId: forcerLaSuppressionDunOuPlusieursHotelsDuSystme
description: ''
parameters: []
responses: { }
tags:
- Hotels
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/article-movements/all:
post:
summary: "Lister les mouvements d'article en fonction du filtre"
operationId: listerLesMouvementsDarticleEnFonctionDuFiltre
description: ''
parameters: []
responses: { }
tags:
- "Mouvements d'articles"
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 31
nullable: true
nbre_items:
type: integer
description: ''
example: 2
nullable: true
filter_value:
type: string
description: ''
example: beatae
nullable: true
article_id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 14
nullable: true
operation_type:
type: string
description: ''
example: exit
nullable: true
enum:
- entry
- exit
product_id:
type: integer
description: 'The id of an existing record in the products table.'
example: 14
nullable: true
from_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
to_date:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après ou égale à from_date.'
example: '2122-09-23'
nullable: true
'/api/article-movements/{article_movement_id}':
get:
summary: "Afficher un mouvement d'article spécifique"
operationId: afficherUnMouvementDarticleSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- "Mouvements d'articles"
parameters:
-
in: path
name: article_movement_id
description: 'The ID of the article movement.'
example: 1
required: true
schema:
type: integer
/api/product-movements/all:
post:
summary: 'Lister les mouvements de produit en fonction du filtre'
operationId: listerLesMouvementsDeProduitEnFonctionDuFiltre
description: ''
parameters: []
responses: { }
tags:
- 'Mouvements des produits'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 28
nullable: true
nbre_items:
type: integer
description: ''
example: 5
nullable: true
filter_value:
type: string
description: ''
example: rerum
nullable: true
product_id:
type: integer
description: 'The id of an existing record in the products table.'
example: 13
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 4
nullable: true
operation_type:
type: string
description: ''
example: exit
nullable: true
enum:
- entry
- exit
from_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
to_date:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après ou égale à from_date.'
example: '2054-08-29'
nullable: true
/api/product-movements:
post:
summary: "Effectuer un mouvement de produit (possibilité d'en créer)"
operationId: effectuerUnMouvementDeProduitpossibilitDenCrer
description: ''
parameters: []
responses: { }
tags:
- 'Mouvements des produits'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
quantity:
type: integer
description: ''
example: 2
nullable: false
description:
type: string
description: ''
example: 'Velit dolores quidem modi vel quisquam.'
nullable: true
operation_type:
type: string
description: ''
example: exit
nullable: false
enum:
- entry
- exit
product_id:
type: integer
description: 'The id of an existing record in the products table.'
example: 18
nullable: false
required:
- quantity
- operation_type
- product_id
'/api/product-movements/{product_movement_id}':
get:
summary: 'Afficher un mouvement de produit spécifique'
operationId: afficherUnMouvementDeProduitSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Mouvements des produits'
parameters:
-
in: path
name: product_movement_id
description: 'The ID of the product movement.'
example: 4
required: true
schema:
type: integer
/api/packages/all:
post:
summary: 'Lister les packages / forfaits disponibles'
operationId: listerLesPackagesForfaitsDisponibles
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 54
nullable: true
nbre_items:
type: integer
description: ''
example: 10
nullable: true
filter_value:
type: string
description: ''
example: vitae
nullable: true
website:
type: boolean
description: ''
example: false
nullable: true
support_type:
type: string
description: ''
example: premium
nullable: true
enum:
- classic
- premium
electronic_payment:
type: boolean
description: ''
example: true
nullable: true
mail_pro:
type: boolean
description: ''
example: true
nullable: true
'/api/packages/{package_id}':
get:
summary: 'Afficher les informations sur un package'
operationId: afficherLesInformationsSurUnPackage
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Packages / Forfaits'
put:
summary: "Modifier les informations d'un package"
operationId: modifierLesInformationsDunPackage
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: rerum
nullable: true
amount:
type: string
description: ''
example: null
nullable: true
website:
type: boolean
description: ''
example: true
nullable: true
support_type:
type: string
description: ''
example: premium
nullable: true
enum:
- classic
- premium
electronic_payment:
type: boolean
description: ''
example: false
nullable: true
mail_pro:
type: boolean
description: ''
example: true
nullable: true
parameters:
-
in: path
name: package_id
description: 'The ID of the package.'
example: 1
required: true
schema:
type: integer
/api/packages:
post:
summary: 'Créer un package / forfait'
operationId: crerUnPackageForfait
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: nobis
nullable: false
amount:
type: string
description: ''
example: accusamus
nullable: false
website:
type: boolean
description: ''
example: false
nullable: false
support_type:
type: string
description: ''
example: classic
nullable: false
enum:
- classic
- premium
electronic_payment:
type: boolean
description: ''
example: true
nullable: false
mail_pro:
type: boolean
description: ''
example: false
nullable: false
required:
- name
- amount
- website
- support_type
- electronic_payment
- mail_pro
/api/packages/trash:
post:
summary: 'Fonction pour le multiple archivage des packages'
operationId: fonctionPourLeMultipleArchivageDesPackages
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/packages/restore:
post:
summary: 'Fonction de restauration multiples des packages'
operationId: fonctionDeRestaurationMultiplesDesPackages
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 6
items:
type: integer
required:
- ids
/api/packages/destroy:
delete:
summary: 'Fonction de suppression définitive multiple des packages'
operationId: fonctionDeSuppressionDfinitiveMultipleDesPackages
description: ''
parameters: []
responses: { }
tags:
- 'Packages / Forfaits'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/settings/all:
post:
summary: "Lister les paramètres globaux de l'app"
operationId: listerLesParamtresGlobauxDeLapp
description: ''
parameters: []
responses: { }
tags:
- 'Paramètres Généraux'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 75
nullable: true
nbre_items:
type: integer
description: ''
example: 12
nullable: true
filter_value:
type: string
description: ''
example: eum
nullable: true
'/api/settings/{setting_id}':
get:
summary: "Afficher les détails d'un paramètre global"
operationId: afficherLesDtailsDunParamtreGlobal
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Paramètres Généraux'
put:
summary: "Modifier la valeur d'un paramètre global"
operationId: modifierLaValeurDunParamtreGlobal
description: ''
parameters: []
responses: { }
tags:
- 'Paramètres Généraux'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
value:
type: string
description: ''
example: aperiam
nullable: false
required:
- value
parameters:
-
in: path
name: setting_id
description: 'The ID of the setting.'
example: 1
required: true
schema:
type: integer
/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: 82
nullable: true
nbre_items:
type: integer
description: ''
example: 6
nullable: true
filter_value:
type: string
description: ''
example: omnis
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: soluta
nullable: false
description:
type: string
description: ''
example: 'Aut quia voluptatem cumque dolore eos omnis aperiam.'
nullable: true
ressource:
type: string
description: ''
example: quia
nullable: false
required:
- name
- ressource
required:
- permissions
'/api/permissions/{permission}':
get:
summary: 'Afficher une permission spécifique'
operationId: afficherUnePermissionSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
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: et
nullable: false
permissions:
type: array
description: ''
example:
- []
items:
type: object
properties:
description:
type: string
description: ''
example: 'Cum aut cupiditate accusamus nesciunt perspiciatis.'
nullable: true
ressource:
type: string
description: ''
example: reiciendis
nullable: true
required:
- name
parameters:
-
in: path
name: permission
description: 'The permission.'
example: porro
required: true
schema:
type: string
/api/permissions/trash:
post:
summary: 'Fonction pour le multiple archivage des permissions'
operationId: fonctionPourLeMultipleArchivageDesPermissions
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/permissions/restore:
post:
summary: 'Fonction de restauration multiples des permissions'
operationId: fonctionDeRestaurationMultiplesDesPermissions
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 12
items:
type: integer
required:
- ids
/api/permissions/destroy:
post:
summary: 'Fonction de suppression définitive multiple des permissions'
operationId: fonctionDeSuppressionDfinitiveMultipleDesPermissions
description: ''
parameters: []
responses: { }
tags:
- Permissions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 5
items:
type: integer
required:
- ids
/api/staff-presences/all:
post:
summary: 'Afficher la liste filtrée des présences du personnel'
operationId: afficherLaListeFiltreDesPrsencesDuPersonnel
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 79
nullable: true
nbre_items:
type: integer
description: ''
example: 20
nullable: true
filter_value:
type: string
description: ''
example: perspiciatis
nullable: true
type:
type: string
description: ''
example: staff
nullable: true
enum:
- staff
- employ
scan_per_course:
type: boolean
description: ''
example: false
nullable: true
saving_type:
type: string
description: ''
example: qr_code
nullable: true
enum:
- manual
- qr_code
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 5
nullable: true
date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
'/api/staff-presences/{staff_presence_id}':
get:
summary: 'Display the specified resource.'
operationId: displayTheSpecifiedResource
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Presence du personnel / Staff presence'
put:
summary: 'Modifier une présence du personnel'
operationId: modifierUnePrsenceDuPersonnel
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 17
nullable: true
scan_per_course:
type: boolean
description: ''
example: true
nullable: true
type:
type: string
description: ''
example: staff
nullable: true
enum:
- staff
- employ
date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
time:
type: string
description: 'Must be a valid date in the format H:i:s.'
example: '09:06:14'
nullable: true
arrival_time:
type: string
description: 'Must be a valid date in the format H:i:s.'
example: '09:06:14'
nullable: true
departure_time:
type: string
description: 'Must be a valid date in the format H:i:s.'
example: '09:06:14'
nullable: true
reason:
type: string
description: ''
example: eum
nullable: true
parameters:
-
in: path
name: staff_presence_id
description: 'The ID of the staff presence.'
example: 15
required: true
schema:
type: integer
/api/staff-presences:
post:
summary: 'Enregistrer une nouvelle présence de personnel.'
operationId: enregistrerUneNouvellePrsenceDePersonnel
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: false
scan_per_course:
type: boolean
description: ''
example: false
nullable: false
type:
type: string
description: ''
example: staff
nullable: false
enum:
- staff
- employ
date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
arrival_time:
type: string
description: 'Must be a valid date in the format H:i:s.'
example: '09:06:14'
nullable: true
departure_time:
type: string
description: 'Must be a valid date in the format H:i:s.'
example: '09:06:14'
nullable: true
reason:
type: string
description: ''
example: ad
nullable: true
required:
- user_id
- scan_per_course
- type
/api/staff-presences/trash:
post:
summary: 'Archiver (soft delete) les presences spécifiées.'
operationId: archiversoftDeleteLesPresencesSpcifies
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 13
items:
type: integer
required:
- ids
/api/staff-presences/restore:
post:
summary: 'Restaurer les staff_presences archivés.'
operationId: restaurerLesStaffPresencesArchivs
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 9
items:
type: integer
required:
- ids
/api/staff-presences/destroy:
delete:
summary: 'Supprimer définitivement les staff_presences spécifiés.'
operationId: supprimerDfinitivementLesStaffPresencesSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Presence du personnel / Staff presence'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/products/all:
post:
summary: 'Afficher la liste des produits'
operationId: afficherLaListeDesProduits
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 61
nullable: true
nbre_items:
type: integer
description: ''
example: 11
nullable: true
filter_value:
type: string
description: ''
example: harum
nullable: true
article_ids:
type: array
description: 'The id of an existing record in the articles table.'
example:
- 16
items:
type: integer
type:
type: string
description: ''
example: storable
nullable: true
enum:
- consumable
- storable
expired:
type: boolean
description: ''
example: false
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 4
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 15
nullable: true
/api/products:
post:
summary: 'Ajouter de nouveaux produits'
operationId: ajouterDeNouveauxProduits
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: maiores
nullable: false
type:
type: string
description: ''
example: storable
nullable: false
enum:
- consumable
- storable
image:
type: string
description: ''
example: veritatis
nullable: true
price:
type: number
description: ''
example: 32045.808
nullable: false
description:
type: string
description: ''
example: 'Deleniti consectetur cupiditate exercitationem in.'
nullable: true
alert_quantity:
type: integer
description: ''
example: 5
nullable: true
status:
type: string
description: ''
example: validated
nullable: true
enum:
- pending
- validated
quantity:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 60
nullable: true
expiry_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 5
nullable: true
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 20
nullable: false
quantity:
type: number
description: 'Le champ value doit être au moins 0.'
example: 70
nullable: false
required:
- id
- quantity
required:
- name
- type
- price
- articles
'/api/products/{product_id}':
get:
summary: 'Afficher un produit spécifique'
operationId: afficherUnProduitSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Produits
put:
summary: 'Modifier un produit spécifique'
operationId: modifierUnProduitSpcifique
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: praesentium
nullable: true
type:
type: string
description: ''
example: storable
nullable: true
enum:
- consumable
- storable
image:
type: string
description: ''
example: sit
nullable: true
price:
type: number
description: ''
example: 1.9149331
nullable: true
description:
type: string
description: ''
example: 'Qui qui explicabo assumenda nemo nihil quaerat.'
nullable: true
alert_quantity:
type: integer
description: ''
example: 9
nullable: true
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- validated
quantity:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 21
nullable: true
expiry_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 15
nullable: true
articles:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example: null
items:
type: object
nullable: true
properties:
id:
type: integer
description: 'The id of an existing record in the articles table.'
example: 16
nullable: true
quantity:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 21
nullable: true
parameters:
-
in: path
name: product_id
description: 'The ID of the product.'
example: 10
required: true
schema:
type: integer
/api/products/trash:
post:
summary: 'Fonction pour le multiple archivage des products'
operationId: fonctionPourLeMultipleArchivageDesProducts
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/products/restore:
post:
summary: 'Fonction de restauration multiples des products'
operationId: fonctionDeRestaurationMultiplesDesProducts
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 15
items:
type: integer
required:
- ids
/api/products/destroy:
delete:
summary: 'Fonction de suppression définitive multiple des products'
operationId: fonctionDeSuppressionDfinitiveMultipleDesProducts
description: ''
parameters: []
responses: { }
tags:
- Produits
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/punishments/all:
post:
summary: 'Liste les sanctions avec filtrage par utilisateur, type ou valeur de recherche.'
operationId: listeLesSanctionsAvecFiltrageParUtilisateurTypeOuValeurDeRecherche
description: ''
parameters: []
responses: { }
tags:
- Punitions
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: 9
nullable: true
filter_value:
type: string
description: ''
example: ipsam
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 14
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 3
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
type:
type: integer
description: ''
example: 2
nullable: true
'/api/punishments/{punishment_id}':
get:
summary: "Affiche les détails d'une sanction spécifique."
operationId: afficheLesDtailsDuneSanctionSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Punitions
put:
summary: "Met à jour les informations d'une sanction existante."
operationId: metJourLesInformationsDuneSanctionExistante
description: ''
parameters: []
responses: { }
tags:
- Punitions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
description:
type: string
description: ''
example: 'Et quis optio est explicabo officia hic et.'
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: true
type:
type: string
description: ''
example: error
nullable: true
reasons:
type: string
description: ''
example: voluptatem
nullable: true
parameters:
-
in: path
name: punishment_id
description: 'The ID of the punishment.'
example: 18
required: true
schema:
type: integer
/api/punishments:
post:
summary: 'Crée une ou plusieurs sanctions à partir des données fournies.'
operationId: creUneOuPlusieursSanctionsPartirDesDonnesFournies
description: ''
parameters: []
responses: { }
tags:
- Punitions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
punishments:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
description:
type: string
description: ''
example: 'Reiciendis hic est debitis ratione eos voluptas natus.'
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: false
type:
type: string
description: ''
example: delectus
nullable: false
reasons:
type: string
description: ''
example: in
nullable: false
required:
- user_id
- type
- reasons
required:
- punishments
/api/punishments/trash:
delete:
summary: 'Met en corbeille (soft delete) une ou plusieurs sanctions.'
operationId: metEnCorbeillesoftDeleteUneOuPlusieursSanctions
description: ''
parameters: []
responses: { }
tags:
- Punitions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
punishment_ids:
type: array
description: 'The id of an existing record in the punishments table.'
example:
- 14
items:
type: integer
required:
- punishment_ids
/api/punishments/restore:
post:
summary: 'Restaure une ou plusieurs sanctions mises en corbeille.'
operationId: restaureUneOuPlusieursSanctionsMisesEnCorbeille
description: ''
parameters: []
responses: { }
tags:
- Punitions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
punishment_ids:
type: array
description: 'The id of an existing record in the punishments table.'
example:
- 1
items:
type: integer
required:
- punishment_ids
/api/punishments/destroy:
delete:
summary: 'Supprime définitivement une ou plusieurs sanctions mises en corbeille.'
operationId: supprimeDfinitivementUneOuPlusieursSanctionsMisesEnCorbeille
description: ''
parameters: []
responses: { }
tags:
- Punitions
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
punishment_ids:
type: array
description: 'The id of an existing record in the punishments table.'
example:
- 2
items:
type: integer
required:
- punishment_ids
/api/salaries-deductions/all:
post:
summary: 'Afficher la liste filtrée des retenues sur salaire'
operationId: afficherLaListeFiltreDesRetenuesSurSalaire
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
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: 13
nullable: true
filter_value:
type: string
description: ''
example: delectus
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 1
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 16
nullable: true
trashed:
type: boolean
description: ''
example: true
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: '2026-02-06'
nullable: true
status:
type: string
description: ''
example: pending_approval
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
'/api/salaries-deductions/{salary_deduction}':
get:
summary: 'Afficher une retenue sur salaire spécifique'
operationId: afficherUneRetenueSurSalaireSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Retenue sur salaire / Salary deduction'
put:
summary: 'Mettre à jour une retenue sur salaire spécifique'
operationId: mettreJourUneRetenueSurSalaireSpcifique
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 20
nullable: true
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 14
nullable: true
amount:
type: string
description: ''
example: null
nullable: true
reason:
type: string
description: ''
example: suscipit
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: '2026-02-06'
nullable: true
status:
type: string
description: ''
example: pending_approval
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
parameters:
-
in: path
name: salary_deduction
description: ''
example: 8
required: true
schema:
type: integer
/api/salaries-deductions:
post:
summary: 'Show the form for creating a new resource.'
operationId: showTheFormForCreatingANewResource
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
salary_deductions:
type: array
description: ''
example:
- []
items:
type: object
properties:
user_id:
type: string
description: 'The id of an existing record in the users table.'
example: similique
nullable: false
user_approve_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 9
nullable: false
amount:
type: number
description: 'Le champ value doit être au moins 0.'
example: 9
nullable: false
date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:14'
nullable: false
status:
type: string
description: ''
example: approved
nullable: true
enum:
- pending_approval
- in_progress
- approved
- rejected
reason:
type: string
description: ''
example: sed
nullable: false
required:
- user_id
- user_approve_id
- amount
- date
- reason
required:
- salary_deductions
/api/salaries-deductions/trash:
post:
summary: 'Archiver (soft delete) les retenues sur salaire spécifiées.'
operationId: archiversoftDeleteLesRetenuesSurSalaireSpcifies
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 8
items:
type: integer
required:
- ids
/api/salaries-deductions/restore:
post:
summary: 'Restaurer les feedbacks archivés.'
operationId: restaurerLesFeedbacksArchivs
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 12
items:
type: integer
required:
- ids
/api/salaries-deductions/destroy:
delete:
summary: 'Supprimer définitivement les feedbacks spécifiés.'
operationId: supprimerDfinitivementLesFeedbacksSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Retenue sur salaire / Salary deduction'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/reductions/all:
post:
summary: 'Afficher la liste des réductions'
operationId: afficherLaListeDesRductions
description: ''
parameters: []
responses: { }
tags:
- Réductions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 6
nullable: true
nbre_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 73
nullable: true
filter_value:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: aukaafpbtsvknikrdpsslrpzv
nullable: true
/api/reductions:
post:
summary: 'Enregistrer une nouvelle réduction'
operationId: enregistrerUneNouvelleRduction
description: ''
parameters: []
responses: { }
tags:
- Réductions
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: cocpeajhkoahfmqgzq
nullable: false
description:
type: string
description: ''
example: 'Cumque accusantium ut ipsum et.'
nullable: true
amount:
type: number
description: 'Le champ value doit être au moins 0.'
example: 78
nullable: false
required:
- name
- amount
'/api/reductions/{reduction}':
get:
summary: "Afficher les détails d'une réduction"
operationId: afficherLesDtailsDuneRduction
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Réductions
put:
summary: 'Mettre à jour une réduction'
operationId: mettreJourUneRduction
description: ''
parameters: []
responses: { }
tags:
- Réductions
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: hbbtlzpmxibtozbqf
nullable: true
description:
type: string
description: ''
example: 'Ipsa blanditiis et cumque qui velit ipsum dolor et.'
nullable: true
amount:
type: number
description: 'Le champ value doit être au moins 0.'
example: 33
nullable: true
parameters:
-
in: path
name: reduction
description: 'The reduction.'
example: sed
required: true
schema:
type: string
/api/reductions/trash:
post:
summary: 'Afficher la corbeille des réductions supprimées'
operationId: afficherLaCorbeilleDesRductionsSupprimes
description: ''
parameters: []
responses: { }
tags:
- Réductions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the reductions table.'
example: null
items:
type: string
/api/reductions/restore:
post:
summary: 'Restaurer une réduction supprimée'
operationId: restaurerUneRductionSupprime
description: ''
parameters: []
responses: { }
tags:
- Réductions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the reductions table.'
example: null
items:
type: string
/api/reductions/destroy:
post:
summary: 'Supprimer une réduction (soft delete)'
operationId: supprimerUneRductionsoftDelete
description: ''
parameters: []
responses: { }
tags:
- Réductions
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the reductions table.'
example: null
items:
type: string
/api/bookings/all:
post:
summary: 'Afficher la liste des réservations'
operationId: afficherLaListeDesRservations
description: ''
parameters: []
responses: { }
tags:
- Réservations
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: 16
nullable: true
filter_value:
type: string
description: ''
example: numquam
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 8
nullable: true
room_type_id:
type: integer
description: 'The id of an existing record in the room_types table.'
example: 5
nullable: true
room_category_id:
type: integer
description: 'The id of an existing record in the room_categories table.'
example: 17
nullable: true
room_id:
type: integer
description: 'The id of an existing record in the rooms table.'
example: 13
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 18
nullable: true
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- confirmed
- canceled
payment_status:
type: string
description: ''
example: advance
nullable: true
enum:
- none
- advance
- completed
room_service_id:
type: integer
description: 'The id of an existing record in the room_services 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: '2026-02-06'
nullable: true
/api/bookings:
post:
summary: 'Enregistrer une nouvelle réservation'
operationId: enregistrerUneNouvelleRservation
description: ''
parameters: []
responses: { }
tags:
- Réservations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
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: '2026-02-06'
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 start_date.'
example: '2106-07-25'
nullable: false
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 19
nullable: false
transport_mode:
type: string
description: 'Le champ value ne peut contenir plus de 50 caractères.'
example: dodrfrnjlhrofscmmvurgall
nullable: true
vehicle_number:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: jdo
nullable: true
arrival_time:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
departure_time:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
arrivals:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: zhkurtuejufbxvxhfdntgznc
nullable: true
is_free:
type: boolean
description: ''
example: true
nullable: true
rooms:
type: array
description: 'The id of an existing record in the rooms table.'
example:
- voluptatem
items:
type: string
required:
- start_date
- end_date
- user_id
- rooms
'/api/bookings/{booking_id}':
put:
summary: 'Mettre à jour une réservation'
operationId: mettreJourUneRservation
description: ''
parameters: []
responses: { }
tags:
- Réservations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
start_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: false
end_date:
type: string
description: 'Le champ value doit être une date valide. Le champ value doit être une date après start_date.'
example: '2037-03-04'
nullable: false
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: false
room_service_id:
type: integer
description: 'The id of an existing record in the room_services table.'
example: 9
nullable: true
transport_mode:
type: string
description: 'Le champ value ne peut contenir plus de 50 caractères.'
example: rhfwl
nullable: true
vehicle_number:
type: string
description: 'Le champ value ne peut contenir plus de 100 caractères.'
example: uwymsfpt
nullable: true
arrival_time:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
departure_time:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
arrivals:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: nk
nullable: true
is_free:
type: boolean
description: ''
example: false
nullable: true
rooms:
type: array
description: 'The id of an existing record in the rooms table.'
example:
- aut
items:
type: string
status:
type: string
description: ''
example: checked_in
nullable: true
enum:
- pending
- confirmed
- checked_in
- checked_out
- cancelled
- no_show
- refunded
- draft
- expired
required:
- start_date
- end_date
- user_id
- rooms
parameters:
-
in: path
name: booking_id
description: 'The ID of the booking.'
example: 1
required: true
schema:
type: integer
/api/bookings/trash:
post:
summary: 'Fonction pour le multiple archivage des Reservations'
operationId: fonctionPourLeMultipleArchivageDesReservations
description: ''
parameters: []
responses: { }
tags:
- Réservations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 4
items:
type: integer
required:
- ids
/api/bookings/restore:
post:
summary: 'Fonction de restauration multiples des Reservations'
operationId: fonctionDeRestaurationMultiplesDesReservations
description: ''
parameters: []
responses: { }
tags:
- Réservations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 8
items:
type: integer
required:
- ids
/api/bookings/destroy:
delete:
summary: 'Fonction de suppression définitive multiple des Reservations'
operationId: fonctionDeSuppressionDfinitiveMultipleDesReservations
description: ''
parameters: []
responses: { }
tags:
- Réservations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
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: 50
nullable: true
nbre_items:
type: integer
description: ''
example: 8
nullable: true
filter_value:
type: string
description: ''
example: ipsam
nullable: true
types:
type: array
description: ''
example:
- est
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: rerum
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: 'Eveniet dolores laboriosam qui qui numquam qui culpa.'
nullable: true
type:
type: string
description: ''
example: iste
nullable: true
required:
- name
- permissions
'/api/roles/{role_id}':
get:
summary: 'Afficher un role spécifique'
operationId: afficherUnRoleSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
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: rerum
nullable: true
permissions:
type: array
description: 'The id of an existing record in the permissions table.'
example:
- 5
items:
type: integer
nullable: true
description:
type: string
description: ''
example: 'Nisi earum vel rerum magnam nobis id sed.'
nullable: true
type:
type: string
description: ''
example: et
nullable: true
parameters:
-
in: path
name: role_id
description: 'The ID of the role.'
example: 1
required: true
schema:
type: integer
/api/roles/trash:
post:
summary: 'Fonction pour le multiple archivage des roles'
operationId: fonctionPourLeMultipleArchivageDesRoles
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/roles/restore:
post:
summary: 'Fonction de restauration multiples des roles'
operationId: fonctionDeRestaurationMultiplesDesRoles
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 17
items:
type: integer
required:
- ids
/api/roles/destroy:
delete:
summary: 'Fonction de suppression définitive multiple des roles'
operationId: fonctionDeSuppressionDfinitiveMultipleDesRoles
description: ''
parameters: []
responses: { }
tags:
- Rôles
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/room-services/all:
post:
summary: 'Récupérer la liste des services de chambre avec filtres et pagination.'
operationId: rcuprerLaListeDesServicesDeChambreAvecFiltresEtPagination
description: ''
parameters: []
responses: { }
tags:
- 'Service de chambre'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 84
nullable: true
nbre_items:
type: integer
description: ''
example: 10
nullable: true
filter_value:
type: string
description: ''
example: voluptas
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 19
nullable: true
archive:
type: string
description: ''
example: with_trashed
nullable: true
enum:
- with_trashed
- only_trashed
order_by:
type: string
description: ''
example: service_id
nullable: true
enum:
- id
- name
- service_id
'/api/room-services/{room_service}':
get:
summary: "Afficher les détails d'un service de chambre spécifique."
operationId: afficherLesDtailsDunServiceDeChambreSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Service de chambre'
put:
summary: 'Mettre à jour un service de chambre existant.'
operationId: mettreJourUnServiceDeChambreExistant
description: ''
parameters: []
responses: { }
tags:
- 'Service de chambre'
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: wfzndbwiphzalkujxa
nullable: true
description:
type: string
description: 'Le champ value ne peut contenir plus de 5000 caractères.'
example: 'Ea labore qui ullam quia.'
nullable: true
price:
type: string
description: ''
example: null
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 9
nullable: true
parameters:
-
in: path
name: room_service
description: ''
example: 1
required: true
schema:
type: integer
/api/room-services:
post:
summary: 'Créer un ou plusieurs services de chambre.'
operationId: crerUnOuPlusieursServicesDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Service de chambre'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
room_services:
type: array
description: ''
example:
- []
items:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 200 caractères.'
example: mebuvp
nullable: true
description:
type: string
description: 'Le champ value ne peut contenir plus de 5000 caractères.'
example: 'Impedit itaque est commodi.'
nullable: true
price:
type: string
description: ''
example: null
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 18
nullable: true
required:
- room_services
/api/room-services/trash:
post:
summary: 'Archiver un ou plusieurs services de chambre.'
operationId: archiverUnOuPlusieursServicesDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Service de chambre'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the room_services table.'
example:
- 11
items:
type: integer
required:
- ids
/api/room-services/restore:
post:
summary: 'Restaurer un ou plusieurs services de chambre archivés.'
operationId: restaurerUnOuPlusieursServicesDeChambreArchivs
description: ''
parameters: []
responses: { }
tags:
- 'Service de chambre'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the room_services table.'
example:
- 13
items:
type: integer
required:
- ids
/api/services/all:
post:
summary: 'Récupérer la liste des services avec filtres et pagination.'
operationId: rcuprerLaListeDesServicesAvecFiltresEtPagination
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 5
nullable: true
nbre_items:
type: integer
description: ''
example: 7
nullable: true
filter_value:
type: string
description: ''
example: error
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 12
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 4
nullable: true
'/api/services/{service_id}':
get:
summary: "Afficher les détails d'un service spécifique."
operationId: afficherLesDtailsDunServiceSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Services
put:
summary: 'Mettre à jour un service existant.'
operationId: mettreJourUnServiceExistant
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: necessitatibus
nullable: true
image:
type: string
description: ''
example: ut
nullable: true
description:
type: string
description: ''
example: 'Molestiae nobis hic veniam.'
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 9
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 6
nullable: true
parameters:
-
in: path
name: service_id
description: 'The ID of the service.'
example: 1
required: true
schema:
type: integer
/api/services:
post:
summary: 'Créer un ou plusieurs services.'
operationId: crerUnOuPlusieursServices
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
services:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
name:
type: string
description: ''
example: eos
nullable: false
image:
type: string
description: ''
example: nihil
nullable: true
description:
type: string
description: ''
example: 'Quibusdam nisi commodi quidem ducimus et nesciunt.'
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 8
nullable: false
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: false
required:
- name
- hotel_id
- responsible_id
required:
- services
/api/services/trash:
delete:
summary: 'Archiver un ou plusieurs services.'
operationId: archiverUnOuPlusieursServices
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/services/restore:
post:
summary: 'Restaurer un ou plusieurs services archivés.'
operationId: restaurerUnOuPlusieursServicesArchivs
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 7
items:
type: integer
required:
- ids
/api/services/destroy:
delete:
summary: 'Supprimer définitivement un ou plusieurs services.'
operationId: supprimerDfinitivementUnOuPlusieursServices
description: ''
parameters: []
responses: { }
tags:
- Services
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 16
items:
type: integer
required:
- ids
/api/feedbacks/all:
post:
summary: 'Affiche une liste des feedbacks filtrés.'
operationId: afficheUneListeDesFeedbacksFiltrs
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 29
nullable: true
nbre_items:
type: integer
description: ''
example: 4
nullable: true
filter_value:
type: string
description: ''
example: omnis
nullable: true
is_anonymous:
type: boolean
description: ''
example: false
nullable: true
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 3
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 4
nullable: true
status:
type: string
description: ''
example: received
nullable: true
enum:
- pending
- received
- in_progress
- resolved
'/api/feedbacks/{feedback_id}':
get:
summary: "Afficher les détails d'une suggestion / feedback"
operationId: afficherLesDtailsDuneSuggestionFeedback
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Suggestions / Feedback'
put:
summary: 'Mettre à jour une suggestion / feedback'
operationId: mettreJourUneSuggestionFeedback
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 3
nullable: true
status:
type: string
description: ''
example: pending
nullable: true
enum:
- pending
- received
- in_progress
- resolved
message:
type: string
description: 'Le champ value ne peut contenir plus de 1000 caractères.'
example: fhenzl
nullable: true
is_anonymous:
type: boolean
description: ''
example: true
nullable: true
parameters:
-
in: path
name: feedback_id
description: 'The ID of the feedback.'
example: 1
required: true
schema:
type: integer
/api/feedbacks:
post:
summary: 'Créer une suggestion / feedback'
operationId: crerUneSuggestionFeedback
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 1
nullable: true
message:
type: string
description: 'Le champ value ne peut contenir plus de 1000 caractères.'
example: mxlsxwnlcx
nullable: false
is_anonyme:
type: boolean
description: ''
example: true
nullable: true
required:
- message
/api/feedbacks/trash:
post:
summary: 'Archiver (soft delete) les feedbacks spécifiés.'
operationId: archiversoftDeleteLesFeedbacksSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 7
items:
type: integer
required:
- ids
/api/feedbacks/restore:
post:
summary: 'Restaurer les feedbacks archivés.'
operationId: restaurerLesFeedbacksArchivs
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 9
items:
type: integer
required:
- ids
/api/feedbacks/destroy:
delete:
summary: 'Supprimer définitivement les feedbacks spécifiés.'
operationId: supprimerDfinitivementLesFeedbacksSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Suggestions / Feedback'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 2
items:
type: integer
required:
- ids
/api/expense-types/all:
post:
summary: 'Afficher les types de dépense'
operationId: afficherLesTypesDeDpense
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 82
nullable: true
nbre_items:
type: integer
description: ''
example: 10
nullable: true
'/api/expense-types/{expense_type}':
get:
summary: 'Afficher un type de dépense spécifique'
operationId: afficherUnTypeDeDpenseSpcifique
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Type de dépense / Expense Type'
put:
summary: 'Mettre a jour les types de dépense'
operationId: mettreAJourLesTypesDeDpense
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: inventore
nullable: true
description:
type: string
description: ''
example: 'Vero eveniet iure cupiditate voluptate optio itaque reprehenderit.'
nullable: true
parameters:
-
in: path
name: expense_type
description: ''
example: 1
required: true
schema:
type: integer
/api/expense-types:
post:
summary: 'Creer un type de dépense'
operationId: creerUnTypeDeDpense
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: ut
nullable: false
description:
type: string
description: ''
example: 'Magnam illo iste voluptatem quo quisquam.'
nullable: true
required:
- name
/api/expense-types/trash:
post:
summary: 'Archiver (soft delete) les types de dépense.'
operationId: archiversoftDeleteLesTypesDeDpense
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 3
items:
type: integer
required:
- ids
/api/expense-types/restore:
post:
summary: 'Restaurer les types de dépense archivée.'
operationId: restaurerLesTypesDeDpenseArchive
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 17
items:
type: integer
required:
- ids
/api/expense-types/destroy:
delete:
summary: 'Supprimer définitivement les expense_types spécifiés.'
operationId: supprimerDfinitivementLesExpenseTypesSpcifis
description: ''
parameters: []
responses: { }
tags:
- 'Type de dépense / Expense Type'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 9
items:
type: integer
required:
- ids
/api/room-types/all:
post:
summary: 'Lister les types de chambres disponibles'
operationId: listerLesTypesDeChambresDisponibles
description: ''
parameters: []
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data:
-
id: 2
name: 'Chambre VIP'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:42:24'
count_rooms: 0
-
id: 4
name: 'Salle de fëte'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:56:06'
count_rooms: 0
-
id: 3
name: 'Suite Présidentielle'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:44:16'
count_rooms: 0
links:
first: 'http://127.0.0.1:8000/api/room-types/all?page=1'
last: 'http://127.0.0.1:8000/api/room-types/all?page=1'
prev: null
next: null
meta:
current_page: 1
from: 1
last_page: 1
links:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/room-types/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
path: 'http://127.0.0.1:8000/api/room-types/all'
per_page: 1000000
to: 3
total: 3
properties:
data:
type: array
example:
-
id: 2
name: 'Chambre VIP'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:42:24'
count_rooms: 0
-
id: 4
name: 'Salle de fëte'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:56:06'
count_rooms: 0
-
id: 3
name: 'Suite Présidentielle'
description: null
author:
id: 1
name: Admin
phone: null
created_by: null
updated_by: null
deleted_by: null
created_at: '2025-02-14 10:50:03'
updated_at: '2025-02-14 10:50:03'
deleted_at: null
token: null
created_at: '2025-02-14 11:44:16'
count_rooms: 0
items:
type: object
properties:
id:
type: integer
example: 2
name:
type: string
example: 'Chambre VIP'
description:
type: string
example: null
author:
type: object
properties:
id:
type: integer
example: 1
name:
type: string
example: Admin
phone:
type: string
example: null
created_by:
type: string
example: null
updated_by:
type: string
example: null
deleted_by:
type: string
example: null
created_at:
type: string
example: '2025-02-14 10:50:03'
updated_at:
type: string
example: '2025-02-14 10:50:03'
deleted_at:
type: string
example: null
token:
type: string
example: null
created_at:
type: string
example: '2025-02-14 11:42:24'
count_rooms:
type: integer
example: 0
links:
type: object
properties:
first:
type: string
example: 'http://127.0.0.1:8000/api/room-types/all?page=1'
last:
type: string
example: 'http://127.0.0.1:8000/api/room-types/all?page=1'
prev:
type: string
example: null
next:
type: string
example: null
meta:
type: object
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 1
links:
type: array
example:
-
url: null
label: '« Précédent'
active: false
-
url: 'http://127.0.0.1:8000/api/room-types/all?page=1'
label: '1'
active: true
-
url: null
label: 'Suivant »'
active: false
items:
type: object
properties:
url:
type: string
example: null
label:
type: string
example: '« Précédent'
active:
type: boolean
example: false
path:
type: string
example: 'http://127.0.0.1:8000/api/room-types/all'
per_page:
type: integer
example: 1000000
to:
type: integer
example: 3
total:
type: integer
example: 3
tags:
- 'Types de Chambres'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
page_items:
type: integer
description: required.
example: 1
nullable: true
nbre_items:
type: integer
description: ''
example: 13
nullable: true
filter_value:
type: string
description: ''
example: laudantium
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 20
nullable: true
trashed:
type: boolean
description: ''
example: false
nullable: false
'/api/room-types/{room_type}':
get:
summary: 'Afficher les informations sur un type de chambre'
operationId: afficherLesInformationsSurUnTypeDeChambre
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- 'Types de Chambres'
put:
summary: 'Ajouter un type de chambre'
operationId: ajouterUnTypeDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Types de Chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: ''
example: est
nullable: false
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 5
nullable: true
description:
type: string
description: ''
example: 'Aut assumenda molestiae qui expedita minus molestiae eligendi natus.'
nullable: true
required:
- name
parameters:
-
in: path
name: room_type
description: ''
example: 3
required: true
schema:
type: integer
/api/room-types:
post:
summary: 'Ajouer un type de chambre'
operationId: ajouerUnTypeDeChambre
description: ''
parameters: []
responses: { }
tags:
- 'Types de Chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
room_types:
type: array
description: 'Le champ value doit contenir au moins 1 éléments.'
example:
- []
items:
type: object
properties:
name:
type: string
description: ''
example: aliquid
nullable: false
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 12
nullable: false
description:
type: string
description: ''
example: 'Id omnis qui molestiae culpa.'
nullable: true
required:
- name
- hotel_id
required:
- room_types
/api/room-types/trash:
delete:
summary: "Archiver un ou plusieurs type de chambre\nNB: Un type de chambre ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système"
operationId: archiverUnOuPlusieursTypeDeChambreNBUnTypeDeChambreNePeutPastreSupprimSiIlEstLiQuelqueChoseDautreDansLeSystme
description: ''
parameters: []
responses: { }
tags:
- 'Types de Chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: 'The id of an existing record in the room_types table.'
example:
- 11
items:
type: integer
required:
- ids
/api/room-types/restore:
post:
summary: 'Restaurer un ou plusieurs type de chambre de la corbeille'
operationId: restaurerUnOuPlusieursTypeDeChambreDeLaCorbeille
description: ''
parameters: []
responses: { }
tags:
- 'Types de Chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 18
items:
type: integer
required:
- ids
/api/room-types/destroy:
delete:
summary: "Forcer la suppression d'un ou plusieurs hotel(s) du système"
operationId: forcerLaSuppressionDunOuPlusieursHotelsDuSystme
description: ''
parameters: []
responses: { }
tags:
- 'Types de Chambres'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 3
items:
type: integer
required:
- ids
/api/tasks/all:
post:
summary: 'Lister les tâches'
operationId: listerLesTches
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
user_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 12
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 8
nullable: true
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 43
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: cknukxwshlskpaqbkjtvsduet
nullable: true
priority:
type: string
description: ''
example: medium
nullable: true
enum:
- low
- medium
- high
status:
type: string
description: ''
example: started
nullable: true
enum:
- created
- started
- finished
'/api/tasks/{task_id}':
get:
summary: "Afficher les détails d'une tâche"
operationId: afficherLesDtailsDuneTche
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Tâches
put:
summary: 'Modifier une tâche'
operationId: modifierUneTche
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 250 caractères.'
example: dysfiaruxeq
nullable: true
description:
type: string
description: ''
example: 'Facilis modi vel esse consequatur ut beatae.'
nullable: true
due_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2026-02-06'
nullable: true
estimation:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 57
nullable: true
priority:
type: string
description: ''
example: high
nullable: true
enum:
- low
- medium
- high
status:
type: string
description: ''
example: created
nullable: true
enum:
- created
- started
- finished
user_ids:
type: array
description: 'The id of an existing record in the users table.'
example:
- 18
items:
type: integer
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 6
nullable: true
parameters:
-
in: path
name: task_id
description: 'The ID of the task.'
example: 1
required: true
schema:
type: integer
/api/tasks:
post:
summary: 'Ajouter une tâche'
operationId: ajouterUneTche
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Le champ value ne peut contenir plus de 250 caractères.'
example: jqdkykskfdq
nullable: false
description:
type: string
description: ''
example: 'Aliquam aut labore debitis iusto quas ut fugiat.'
nullable: false
due_date:
type: string
description: 'Le champ value doit être une date valide. Must be a valid date in the format Y-m-d.'
example: '2026-02-06'
nullable: false
estimation:
type: integer
description: 'Le champ value doit être au moins 0.'
example: 58
nullable: false
priority:
type: string
description: ''
example: low
nullable: false
enum:
- low
- medium
- high
user_ids:
type: array
description: 'The id of an existing record in the users table.'
example:
- 10
items:
type: integer
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: false
required:
- name
- description
- due_date
- estimation
- priority
- responsible_id
/api/tasks/trash:
post:
summary: 'Fonction pour le multiple archivage des taches'
operationId: fonctionPourLeMultipleArchivageDesTaches
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 4
items:
type: integer
required:
- ids
/api/tasks/restore:
post:
summary: 'Fonction de restauration multiples des taches'
operationId: fonctionDeRestaurationMultiplesDesTaches
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 19
items:
type: integer
required:
- ids
/api/tasks/destroy:
delete:
summary: 'Fonction de suppression définitive multiple des taches'
operationId: fonctionDeSuppressionDfinitiveMultipleDesTaches
description: ''
parameters: []
responses: { }
tags:
- Tâches
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example:
- 8
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: ekbochobaawqzaxoufvndjjy
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: 5
nullable: true
role_types:
type: array
description: 'The type of an existing record in the roles table.'
example:
- impedit
items:
type: string
nullable: true
page_items:
type: integer
description: 'Le champ value doit être au moins 1.'
example: 35
nullable: true
nbre_items:
type: integer
description: ''
example: 2
nullable: true
filter_value:
type: string
description: ''
example: laboriosam
nullable: true
order_by:
type: boolean
description: ''
example: true
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 7
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 11
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 10
nullable: true
type:
type: string
description: ''
example: sit
nullable: true
/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:
firstname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: od
nullable: false
lastname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: f
nullable: true
gender:
type: string
description: ''
example: male
nullable: false
enum:
- male
- female
type:
type: string
description: ''
example: fugiat
nullable: true
birthday:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
nationality:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: yinc
nullable: true
nui:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: sveypvgohiki
nullable: true
cni:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jmnvzdexsarzl
nullable: true
cnps:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jrsntucrmhlf
nullable: true
passport_issue_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
passport_issue_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: zkorci
nullable: true
profession:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: kojfouklpbgdnqyi
nullable: true
birth_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: srsm
nullable: true
connexion_type:
type: string
description: ''
example: email
nullable: false
enum:
- email
- phone
email:
type: string
description: 'This field is required when connexion_type is email. Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères.'
example: lorenza55@example.org
nullable: true
phone:
type: string
description: 'This field is required when connexion_type is phone. Le champ value ne peut contenir plus de 20 caractères.'
example: ck
nullable: true
phone2:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: mciiebznwk
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: rtqwzzlawzyvdosywwf
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: x
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: wtbeaktlkbtkfvfhxkcberz
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 11
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 1
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: true
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: '\7IN.VA#$WQQKv!D6'
nullable: false
photo:
type: string
description: ''
example: magni
nullable: true
role_id:
type: integer
description: 'The id of an existing record in the roles table.'
example: 9
nullable: true
articles:
type: array
description: 'The id of an existing record in the articles table.'
example:
- 19
items:
type: integer
required:
- firstname
- gender
- connexion_type
- password
'/api/users/{user_id}':
get:
summary: "Cette route permet d'afficher les informations d'un utilisateur"
operationId: cetteRoutePermetDafficherLesInformationsDunUtilisateur
description: ''
parameters: []
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message:
type: string
example: Unauthenticated.
tags:
- Utilisateurs
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: h
nullable: true
lastname:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: rlceddshyb
nullable: true
gender:
type: string
description: ''
example: male
nullable: true
enum:
- male
- female
type:
type: string
description: ''
example: commodi
nullable: true
birthday:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
nationality:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: fd
nullable: true
nui:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: jrclpytllfdms
nullable: true
cni:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: dksezghgmwlvmwz
nullable: true
cnps:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: cins
nullable: true
passport_issue_date:
type: string
description: 'Le champ value doit être une date valide.'
example: '2026-02-06T09:06:13'
nullable: true
passport_issue_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: ggb
nullable: true
profession:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: qpaoserpgvigccmsheaddrb
nullable: true
birth_place:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: opgjczmzz
nullable: true
connexion_type:
type: string
description: ''
example: phone
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: yeichmann@example.net
nullable: true
phone:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: mzgelsmhzgmcoh
nullable: true
phone2:
type: string
description: 'Le champ value ne peut contenir plus de 20 caractères.'
example: fppho
nullable: true
city:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: pftvgkhpztdyapcxaylotpb
nullable: true
address:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: wzftynlgjoacevrneqplbld
nullable: true
country:
type: string
description: 'Le champ value ne peut contenir plus de 255 caractères.'
example: auuo
nullable: true
hotel_id:
type: integer
description: 'The id of an existing record in the hotels table.'
example: 5
nullable: true
service_id:
type: integer
description: 'The id of an existing record in the services table.'
example: 19
nullable: true
responsible_id:
type: integer
description: 'The id of an existing record in the users table.'
example: 13
nullable: true
password:
type: string
description: 'Le champ value doit contenir au moins 6 caractères.'
example: 'U_%0yt%#'
nullable: true
photo:
type: string
description: ''
example: vero
nullable: true
role_id:
type: integer
description: 'The id of an existing record in the roles table.'
example: 10
nullable: true
parameters:
-
in: path
name: user_id
description: 'The ID of the user.'
example: 1
required: true
schema:
type: integer
/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:
- 10
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:
- 10
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:
- 5
items:
type: integer
tags:
-
name: 'Aperçu des statistiques/ statistic Overview'
description: "\nAfficher les statistiques de chaque hotel ou d'un groupe d'hotel"
-
name: Articles
description: "\nGestion des articles"
-
name: Articles-Fournisseurs
description: "\nAvoir la liste des fournisseurs d'un article et inversément"
-
name: Authentification
description: "\nGestion de l'authentification des utilisateurs"
-
name: 'Avance sur salaire / Salary advance'
description: "\nGestion des avances sur salaire"
-
name: Avertissements
description: 'Gestion des avertissements'
-
name: "Bons d'achats"
description: "\nGestion des bons d'achat"
-
name: 'Catégories de chambres'
description: "\nGestion des catégories de chambres"
-
name: Chambres
description: "\nGestions des chambres"
-
name: Clés
description: "\nGestion des clés de l'application'"
-
name: Commandes
description: "\nGestion des commandes"
-
name: Contrats
description: "\n Gestion des contrats employés"
-
name: Decaissements
description: "\nGestion des décaissements"
-
name: "Demande d'approvisionnement | Supply demand"
description: "Contrôleur chargé de la gestion des demandes d'approvisionnement."
-
name: 'Demande de congé'
description: 'Gestion des demandes de congé employé'
-
name: 'Demandes de Permissions'
description: "\nContrôleur pour la gestion des demandes de permission des utilisateurs"
-
name: Encaissements
description: "\nGestion des encaissements"
-
name: Evenements
description: "\nGestion des évènements"
-
name: Hotels
description: "\nGestion des hotels de l'application"
-
name: "Mouvements d'articles"
description: "\nGestion des mouvements d'articles"
-
name: 'Mouvements des produits'
description: "\nGestion des mouvements de produits"
-
name: 'Packages / Forfaits'
description: "\nGestion des packages / forfaits"
-
name: 'Paramètres Généraux'
description: "\nGestion des paramètres généraux dans l'application"
-
name: Permissions
description: "\nGestion des permissions"
-
name: 'Presence du personnel / Staff presence'
description: "\nGestion des présences du personnel"
-
name: Produits
description: "\nGestion des produits"
-
name: Punitions
description: "\nGestion des punitions"
-
name: 'Retenue sur salaire / Salary deduction'
description: "\nGestion des retenus sur salaire"
-
name: Réductions
description: "\nGestion des réductions"
-
name: Réservations
description: "\nGestion des réservations"
-
name: Rôles
description: "\nGestion des rôles"
-
name: 'Service de chambre'
description: "\nGestion des services de chambre"
-
name: Services
description: "\nContrôleur responsable de la gestion des services."
-
name: 'Suggestions / Feedback'
description: "\nGestion des suggestions des utilisateurs"
-
name: 'Type de dépense / Expense Type'
description: "\nGestion des présences du personnel"
-
name: 'Types de Chambres'
description: "\nGestion des types de chambres"
-
name: Tâches
description: "\nGestion des tâches"
-
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: []