MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Generate API token.

Aperçu des statistiques/ statistic Overview

Afficher les statistiques de chaque hotel ou d'un groupe d'hotel

Afficher les effectifs des éléments de statistique

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/statistic-overview" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 14
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/statistic-overview"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 14
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/statistic-overview

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 14

Afficher les statistiques de réservations

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/statistic-booking" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 3,
    \"service_id\": 20,
    \"month\": 2
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/statistic-booking"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 3,
    "service_id": 20,
    "month": 2
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/statistic-booking

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 3

service_id   integer  optional  

The id of an existing record in the services table. Example: 20

month   integer  optional  

Le champ value doit être entre 1 et 12. Example: 2

Afficher les statistiques de commandes

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/statistic-finance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 5,
    \"service_id\": 20,
    \"month\": 2
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/statistic-finance"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 5,
    "service_id": 20,
    "month": 2
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/statistic-finance

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 5

service_id   integer  optional  

The id of an existing record in the services table. Example: 20

month   integer  optional  

Le champ value doit être entre 1 et 12. Example: 2

Afficher les statistiques par chambre

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/statistic-room" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 3,
    \"room_id\": 13,
    \"service_id\": 4,
    \"date_start\": \"2026-05-18T08:05:42\",
    \"date_end\": \"2026-05-18T08:05:42\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/statistic-room"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 3,
    "room_id": 13,
    "service_id": 4,
    "date_start": "2026-05-18T08:05:42",
    "date_end": "2026-05-18T08:05:42"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/statistic-room

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 3

room_id   integer  optional  

The id of an existing record in the rooms table. Example: 13

service_id   integer  optional  

The id of an existing record in the services table. Example: 4

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

date_end   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

Articles

Gestion des articles

Afficher la liste des articles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 4,
    \"nbre_items\": 20,
    \"filter_value\": \"facilis\",
    \"service_id\": 4,
    \"hotel_id\": 4,
    \"type\": \"storable\",
    \"expired\": false
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 4,
    "nbre_items": 20,
    "filter_value": "facilis",
    "service_id": 4,
    "hotel_id": 4,
    "type": "storable",
    "expired": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 4

nbre_items   integer  optional  

Example: 20

filter_value   string  optional  

Example: facilis

service_id   integer  optional  

The id of an existing record in the services table. Example: 4

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 4

type   string  optional  

Example: storable

Must be one of:
  • consumable
  • storable
expired   boolean  optional  

Example: false

Enregistrer des articles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"articles\": [
        {
            \"name\": \"fugit\",
            \"type\": \"storable\",
            \"image\": \"quis\",
            \"price\": 34083.50844887,
            \"description\": \"Voluptas iste rerum officiis at vero temporibus.\",
            \"unit_of_measurement\": \"quisquam\",
            \"alert_quantity\": 1,
            \"expiry_date\": \"2026-05-18T08:05:41\",
            \"container\": \"a\",
            \"container_unit\": \"kguvgecbnqwhvsajiqy\",
            \"container_quantity\": 27,
            \"detail\": \"ipsa\",
            \"service_id\": 3,
            \"suppliers\": [
                2
            ]
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "articles": [
        {
            "name": "fugit",
            "type": "storable",
            "image": "quis",
            "price": 34083.50844887,
            "description": "Voluptas iste rerum officiis at vero temporibus.",
            "unit_of_measurement": "quisquam",
            "alert_quantity": 1,
            "expiry_date": "2026-05-18T08:05:41",
            "container": "a",
            "container_unit": "kguvgecbnqwhvsajiqy",
            "container_quantity": 27,
            "detail": "ipsa",
            "service_id": 3,
            "suppliers": [
                2
            ]
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

articles   object[]   

Le champ value doit contenir au moins 1 éléments.

name   string   

Example: fugit

type   string   

Example: storable

Must be one of:
  • consumable
  • storable
image   string  optional  

Example: quis

price   number   

Example: 34083.50844887

description   string  optional  

Example: Voluptas iste rerum officiis at vero temporibus.

unit_of_measurement   string  optional  

Example: quisquam

alert_quantity   integer  optional  

Example: 1

expiry_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

container   string  optional  

Example: a

container_unit   string  optional  

Le champ value ne peut contenir plus de 50 caractères. Example: kguvgecbnqwhvsajiqy

container_quantity   integer  optional  

Le champ value doit être au moins 0. Example: 27

detail   string  optional  

Example: ipsa

service_id   integer   

The id of an existing record in the services table. Example: 3

suppliers   integer[]   

Afficher un article spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/articles/28" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/28"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/articles/{article_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

article_id   integer   

The ID of the article. Example: 28

Modifier un article spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/articles/28" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"eum\",
    \"type\": \"storable\",
    \"image\": \"perspiciatis\",
    \"price\": 343.64,
    \"description\": \"Nisi rem cupiditate sequi iusto.\",
    \"unit_of_measurement\": \"commodi\",
    \"alert_quantity\": 9,
    \"expiry_date\": \"2026-05-18T08:05:41\",
    \"container\": \"vitae\",
    \"container_unit\": \"rjwhtuvfljipwtykuhxyar\",
    \"container_quantity\": 60,
    \"detail\": \"veritatis\",
    \"service_id\": 2
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/28"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "eum",
    "type": "storable",
    "image": "perspiciatis",
    "price": 343.64,
    "description": "Nisi rem cupiditate sequi iusto.",
    "unit_of_measurement": "commodi",
    "alert_quantity": 9,
    "expiry_date": "2026-05-18T08:05:41",
    "container": "vitae",
    "container_unit": "rjwhtuvfljipwtykuhxyar",
    "container_quantity": 60,
    "detail": "veritatis",
    "service_id": 2
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/articles/{article_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

article_id   integer   

The ID of the article. Example: 28

Body Parameters

name   string  optional  

Example: eum

type   string  optional  

Example: storable

Must be one of:
  • consumable
  • storable
image   string  optional  

Example: perspiciatis

price   number  optional  

Example: 343.64

description   string  optional  

Example: Nisi rem cupiditate sequi iusto.

unit_of_measurement   string  optional  

Example: commodi

alert_quantity   integer  optional  

Example: 9

expiry_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

container   string  optional  

Example: vitae

container_unit   string  optional  

Le champ value ne peut contenir plus de 50 caractères. Example: rjwhtuvfljipwtykuhxyar

container_quantity   integer  optional  

Le champ value doit être au moins 0. Example: 60

detail   string  optional  

Example: veritatis

service_id   integer  optional  

The id of an existing record in the services table. Example: 2

Fonction pour le multiple archivage des articles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        14
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        14
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des articles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        4
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        4
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des articles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Articles-Fournisseurs

Avoir la liste des fournisseurs d'un article et inversément

Avoir la liste des fournisseurs d'un article et inversément

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/articles-suppliers/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 81,
    \"nbre_items\": 2,
    \"article_id\": 11,
    \"supplier_id\": 3
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/articles-suppliers/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 81,
    "nbre_items": 2,
    "article_id": 11,
    "supplier_id": 3
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/articles-suppliers/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 81

nbre_items   integer  optional  

Example: 2

article_id   integer  optional  

The id of an existing record in the articles table. Example: 11

supplier_id   integer  optional  

The id of an existing record in the users table. Example: 3

Authentification

Gestion de l'authentification des utilisateurs

Fonction permettant à un utilisateur de s'inscrire

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/register" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "firstname=uxjlgrlyqwtsnglpqhor"\
    --form "lastname=wgotdjmvhwgcfv"\
    --form "gender=male"\
    --form "birthday=2026-05-18T08:05:41"\
    --form "nationality=onnkhqwzuieznmnaybglq"\
    --form "nui=fys"\
    --form "cni=ccjy"\
    --form "cnps=teioenpuemjstpp"\
    --form "passport_issue_date=2026-05-18T08:05:41"\
    --form "passport_issue_place=gafz"\
    --form "profession=exnzlbamfs"\
    --form "birth_place=kvuiezhwbiabwonzvemhvl"\
    --form "connexion_type=email"\
    --form "email=quigley.tevin@example.com"\
    --form "phone=xsbsbwrf"\
    --form "phone2=wsybodhtjuafwcr"\
    --form "city=rhcmupbltbrv"\
    --form "address=zjujxyqofeprnybnf"\
    --form "country=a"\
    --form "hotel_id=9"\
    --form "service_id=14"\
    --form "responsible_id=9"\
    --form "password=ux+uIvdW,c"\
    --form "photo=@/tmp/phpW1rr1b" 
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/register"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('firstname', 'uxjlgrlyqwtsnglpqhor');
body.append('lastname', 'wgotdjmvhwgcfv');
body.append('gender', 'male');
body.append('birthday', '2026-05-18T08:05:41');
body.append('nationality', 'onnkhqwzuieznmnaybglq');
body.append('nui', 'fys');
body.append('cni', 'ccjy');
body.append('cnps', 'teioenpuemjstpp');
body.append('passport_issue_date', '2026-05-18T08:05:41');
body.append('passport_issue_place', 'gafz');
body.append('profession', 'exnzlbamfs');
body.append('birth_place', 'kvuiezhwbiabwonzvemhvl');
body.append('connexion_type', 'email');
body.append('email', 'quigley.tevin@example.com');
body.append('phone', 'xsbsbwrf');
body.append('phone2', 'wsybodhtjuafwcr');
body.append('city', 'rhcmupbltbrv');
body.append('address', 'zjujxyqofeprnybnf');
body.append('country', 'a');
body.append('hotel_id', '9');
body.append('service_id', '14');
body.append('responsible_id', '9');
body.append('password', 'ux+uIvdW,c');
body.append('photo', document.querySelector('input[name="photo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Request      

POST api/register

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

firstname   string   

Le champ value ne peut contenir plus de 255 caractères. Example: uxjlgrlyqwtsnglpqhor

lastname   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: wgotdjmvhwgcfv

gender   string   

Example: male

Must be one of:
  • male
  • female
birthday   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

nationality   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: onnkhqwzuieznmnaybglq

nui   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: fys

cni   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: ccjy

cnps   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: teioenpuemjstpp

passport_issue_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

passport_issue_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: gafz

profession   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: exnzlbamfs

birth_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: kvuiezhwbiabwonzvemhvl

connexion_type   string   

Example: email

Must be one of:
  • email
  • phone
email   string  optional  

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: quigley.tevin@example.com

phone   string  optional  

This field is required when connexion_type is phone. Le champ value ne peut contenir plus de 20 caractères. Example: xsbsbwrf

phone2   string  optional  

Le champ value ne peut contenir plus de 20 caractères. Example: wsybodhtjuafwcr

city   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: rhcmupbltbrv

address   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: zjujxyqofeprnybnf

country   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: a

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 9

service_id   integer  optional  

The id of an existing record in the services table. Example: 14

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 9

password   string   

Le champ value doit contenir au moins 6 caractères. Example: ux+uIvdW,c

photo   file  optional  

Le champ value doit être une image. Le champ value ne peut être supérieur à 2048 kilobytes. Example: /tmp/phpW1rr1b

On vérifie le code envoyé par email

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/verify-account" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"connexion_type\": \"phone\",
    \"email\": \"rreichel@example.com\",
    \"phone\": \"mgoghkgycabz\",
    \"verification_code\": \"nhh\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/verify-account"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "connexion_type": "phone",
    "email": "rreichel@example.com",
    "phone": "mgoghkgycabz",
    "verification_code": "nhh"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/verify-account

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

connexion_type   string   

Example: phone

Must be one of:
  • email
  • phone
email   string  optional  

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: rreichel@example.com

phone   string  optional  

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: mgoghkgycabz

verification_code   string   

Le champ value ne peut contenir plus de 6 caractères. Example: nhh

Fonction permettant à un utilisateur déjà inscrit de se connecter

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"rempel.osvaldo@example.com\",
    \"phone\": \"sesuhszsijovhagix\",
    \"password\": \"w3duwMi8ebesnqXo\",
    \"device_key\": \"necessitatibus\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "rempel.osvaldo@example.com",
    "phone": "sesuhszsijovhagix",
    "password": "w3duwMi8ebesnqXo",
    "device_key": "necessitatibus"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string  optional  

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: rempel.osvaldo@example.com

phone   string  optional  

This field is required when email is not present. Le champ value ne peut contenir plus de 20 caractères. Example: sesuhszsijovhagix

password   string   

Example: w3duwMi8ebesnqXo

device_key   string  optional  

Example: necessitatibus

Fonction permettant de demander un lien pour réinitialiser le mot de passe

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reset-password" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"connexion_type\": \"email\",
    \"email\": \"rosanna31@example.net\",
    \"phone\": \"nvnfvxcbkgyq\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reset-password"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "connexion_type": "email",
    "email": "rosanna31@example.net",
    "phone": "nvnfvxcbkgyq"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/reset-password

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

connexion_type   string   

Example: email

Must be one of:
  • email
  • phone
email   string  optional  

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: rosanna31@example.net

phone   string  optional  

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: nvnfvxcbkgyq

Fonction permettant de réinitialiser le mot de passe de l'utilisateur

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/confirm-reset-password" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"connexion_type\": \"phone\",
    \"email\": \"kertzmann.laron@example.net\",
    \"phone\": \"hsa\",
    \"verification_code\": \"molmokhdofggiakerwltrzskfmuoshosjmgzjntmogusqlayqloaiuvlxoypouowmtejrvlbw\",
    \"password\": \"A-U\'F@Go{k\\\"cXw\\\\(l\'\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/confirm-reset-password"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "connexion_type": "phone",
    "email": "kertzmann.laron@example.net",
    "phone": "hsa",
    "verification_code": "molmokhdofggiakerwltrzskfmuoshosjmgzjntmogusqlayqloaiuvlxoypouowmtejrvlbw",
    "password": "A-U'F@Go{k\"cXw\\(l'"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/confirm-reset-password

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

connexion_type   string   

Example: phone

Must be one of:
  • email
  • phone
email   string  optional  

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: kertzmann.laron@example.net

phone   string  optional  

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: hsa

verification_code   string   

Le champ value doit contenir au moins 6 caractères. Example: molmokhdofggiakerwltrzskfmuoshosjmgzjntmogusqlayqloaiuvlxoypouowmtejrvlbw

password   string   

Le champ value doit contenir au moins 6 caractères. Example: A-U'F@Go{k"cXw\(l'

Fonction permettant à un utilisateur connecté de se déconnecter

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/logout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/logout"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/logout

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Avance sur salaire / Salary advance

Gestion des avances sur salaire

Afficher la liste filtrée des avances sur salaire

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 17,
    \"nbre_items\": 14,
    \"filter_value\": \"est\",
    \"trashed\": false,
    \"user_id\": 3,
    \"user_approve_id\": 15,
    \"date\": \"2026-05-18\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 17,
    "nbre_items": 14,
    "filter_value": "est",
    "trashed": false,
    "user_id": 3,
    "user_approve_id": 15,
    "date": "2026-05-18"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-advances/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Example: 17

nbre_items   integer  optional  

Example: 14

filter_value   string  optional  

Example: est

trashed   boolean  optional  

Example: false

user_id   integer  optional  

The id of an existing record in the users table. Example: 3

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 15

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

Afficher une retenue sur salaire spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/salaries-advances/rerum" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/rerum"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/salaries-advances/{salary_advance_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

salary_advance_id   string   

The ID of the salary advance. Example: rerum

Show the form for creating a new resource.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"salary_advances\": [
        {
            \"user_approve_id\": 10,
            \"amount\": \"occaecati\",
            \"reason\": \"eum\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "salary_advances": [
        {
            "user_approve_id": 10,
            "amount": "occaecati",
            "reason": "eum"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-advances

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

salary_advances   object[]   
user_approve_id   integer   

The id of an existing record in the users table. Example: 10

amount   string   

Example: occaecati

reason   string   

Example: eum

Mettre à jour une retenue sur salaire spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/quibusdam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_approve_id\": 8,
    \"status\": \"in_progress\",
    \"reason\": \"adipisci\",
    \"comments\": \"voluptate\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/quibusdam"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_approve_id": 8,
    "status": "in_progress",
    "reason": "adipisci",
    "comments": "voluptate"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/salaries-advances/{salary_advance_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

salary_advance_id   string   

The ID of the salary advance. Example: quibusdam

Body Parameters

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 8

amount   string  optional  
status   string  optional  

Example: in_progress

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected
reason   string  optional  

Example: adipisci

comments   string  optional  

Example: voluptate

Archiver (soft delete) les avances sur salaire spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-advances/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les avances sur salaire archivées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        6
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-advances/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les avances sur salaire spécifiées.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-advances/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/salaries-advances/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Avertissements

Gestion des avertissements

Lister les avertissements

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/warnings/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 1,
    \"archive\": \"with_trashed\",
    \"date\": \"2026-05-18\",
    \"page_items\": 5,
    \"nbre_items\": 17,
    \"filter_value\": \"consectetur\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 1,
    "archive": "with_trashed",
    "date": "2026-05-18",
    "page_items": 5,
    "nbre_items": 17,
    "filter_value": "consectetur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/warnings/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 1

archive   string  optional  

Example: with_trashed

Must be one of:
  • with_trashed
  • only_trashed
date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

page_items   integer  optional  

Example: 5

nbre_items   integer  optional  

Example: 17

filter_value   string  optional  

Example: consectetur

Afficher les détails d'un avertissement

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/warnings/15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/15"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/warnings/{warning_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

warning_id   integer   

The ID of the warning. Example: 15

Ajouter un ou plusieurs avertissements

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/warnings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"warnings\": [
        {
            \"user_id\": 17,
            \"reason\": \"perspiciatis\",
            \"date\": \"2026-05-18\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "warnings": [
        {
            "user_id": 17,
            "reason": "perspiciatis",
            "date": "2026-05-18"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/warnings

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

warnings   object[]   
user_id   integer   

The id of an existing record in the users table. Example: 17

reason   string   

Example: perspiciatis

date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

Modifier les détails d'un avertissement

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/warnings/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 15,
    \"reason\": \"atque\",
    \"date\": \"2026-05-18\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 15,
    "reason": "atque",
    "date": "2026-05-18"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/warnings/{warning_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

warning_id   integer   

The ID of the warning. Example: 1

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 15

reason   string  optional  

Example: atque

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

Mettre un ou plusieurs avertissements en corbeille (soft delete)

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/warnings/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"warning_ids\": [
        17
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "warning_ids": [
        17
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/warnings/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

warning_ids   integer[]   

The id of an existing record in the warnings table.

Restaurer un ou plusieurs avertissements de la corbeille

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/warnings/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"warning_ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "warning_ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/warnings/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

warning_ids   integer[]   

The id of an existing record in the warnings table.

Supprimer définitivement un ou plusieurs avertissements

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/warnings/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"warning_ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/warnings/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "warning_ids": [
        19
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/warnings/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

warning_ids   integer[]   

The id of an existing record in the warnings table.

Bons d'achats

Gestion des bons d'achat

Afficher une liste filtrée des bons d'achat

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 64,
    \"nbre_items\": 4,
    \"filter_value\": \"nisi\",
    \"status\": \"requesting_price\",
    \"priority\": \"high\",
    \"article_ids\": [
        13
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 64,
    "nbre_items": 4,
    "filter_value": "nisi",
    "status": "requesting_price",
    "priority": "high",
    "article_ids": [
        13
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/purchase-vouchers/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 64

nbre_items   integer  optional  

Example: 4

filter_value   string  optional  

Example: nisi

status   string  optional  

Example: requesting_price

Must be one of:
  • requesting_price
  • purchase_order
  • paid
  • delivered
priority   string  optional  

Example: high

Must be one of:
  • low
  • medium
  • high
supplier_id   string  optional  

The id of an existing record in the users table.

hotel_id   string  optional  

The id of an existing record in the hotels table.

responsible_id   string  optional  

The id of an existing record in the users table.

article_ids   integer[]  optional  

The id of an existing record in the articles table.

Enregistrer un bon d'achat

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 2,
    \"responsible_id\": 20,
    \"description\": \"Voluptatem et quia vel necessitatibus earum commodi.\",
    \"status\": \"paid\",
    \"priority\": \"high\",
    \"quotation_file\": \"ut\",
    \"articles\": [
        {
            \"id\": 15,
            \"unit_price\": 16,
            \"quantity\": 31
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supplier_id": 2,
    "responsible_id": 20,
    "description": "Voluptatem et quia vel necessitatibus earum commodi.",
    "status": "paid",
    "priority": "high",
    "quotation_file": "ut",
    "articles": [
        {
            "id": 15,
            "unit_price": 16,
            "quantity": 31
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/purchase-vouchers

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

supplier_id   integer   

The id of an existing record in the users table. Example: 2

responsible_id   integer   

The id of an existing record in the users table. Example: 20

description   string  optional  

Example: Voluptatem et quia vel necessitatibus earum commodi.

status   string  optional  

Example: paid

Must be one of:
  • requesting_price
  • purchase_order
  • paid
  • delivered
priority   string   

Example: high

Must be one of:
  • low
  • medium
  • high
quotation_file   string  optional  

Example: ut

articles   object[]   

Le champ value doit contenir au moins 1 éléments.

id   integer   

The id of an existing record in the articles table. Example: 15

unit_price   integer  optional  

Example: 16

quantity   integer   

Le champ value doit être au moins 1. Example: 31

Afficher un bon d'achat spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/purchase-vouchers/{purchase_voucher}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

purchase_voucher   integer   

Example: 1

Update the specified resource in storage.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supplier_id\": 1,
    \"responsible_id\": 15,
    \"description\": \"Minima magni accusamus et consequatur dolorem dolorem facilis.\",
    \"status\": \"purchase_order\",
    \"priority\": \"medium\",
    \"quotation_file\": \"quos\",
    \"payment_method\": \"Bank\",
    \"articles\": [
        {
            \"id\": 14,
            \"unit_price\": 12,
            \"quantity\": 33
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supplier_id": 1,
    "responsible_id": 15,
    "description": "Minima magni accusamus et consequatur dolorem dolorem facilis.",
    "status": "purchase_order",
    "priority": "medium",
    "quotation_file": "quos",
    "payment_method": "Bank",
    "articles": [
        {
            "id": 14,
            "unit_price": 12,
            "quantity": 33
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/purchase-vouchers/{purchase_voucher}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

purchase_voucher   integer   

Example: 1

Body Parameters

supplier_id   integer  optional  

The id of an existing record in the users table. Example: 1

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 15

description   string  optional  

Example: Minima magni accusamus et consequatur dolorem dolorem facilis.

status   string  optional  

Example: purchase_order

Must be one of:
  • requesting_price
  • purchase_order
  • paid
  • delivered
priority   string  optional  

Example: medium

Must be one of:
  • low
  • medium
  • high
quotation_file   string  optional  

Example: quos

articles   object[]  optional  

Le champ value doit contenir au moins 1 éléments.

id   integer  optional  

The id of an existing record in the articles table. Example: 14

unit_price   integer  optional  

Example: 12

quantity   integer  optional  

Le champ value doit être au moins 1. Example: 33

payment_method   string  optional  

Example: Bank

Must be one of:
  • Cash
  • Bank
  • OM
  • MOMO

Fonction pour le multiple archivage des bonds d'achat

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        8
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        8
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/purchase-vouchers/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des bonds d'achat

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        16
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        16
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/purchase-vouchers/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des bonds d'achat

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/purchase-vouchers/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/purchase-vouchers/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Budget

Gestion des budgets de l'hôtel

Afficher les budgets

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/budgets/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 77,
    \"nbre_items\": 19,
    \"type\": \"revenue\",
    \"hotel_id\": 13
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 77,
    "nbre_items": 19,
    "type": "revenue",
    "hotel_id": 13
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/budgets/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 77

nbre_items   integer  optional  

Example: 19

type   string  optional  

Example: revenue

Must be one of:
  • expense
  • revenue
hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 13

Afficher un budget spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/budgets/20" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/20"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/budgets/{budget_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

budget_id   integer   

The ID of the budget. Example: 20

Créer un budget

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/budgets" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"uzylholekjdpymibva\",
    \"type\": \"expense\",
    \"description\": \"Illum sed labore tempore cupiditate et unde et.\",
    \"realisation\": 9,
    \"hotel_id\": 1,
    \"items\": [
        {
            \"item_id\": 7,
            \"quantity\": 89,
            \"number\": 82,
            \"amount\": 33
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "uzylholekjdpymibva",
    "type": "expense",
    "description": "Illum sed labore tempore cupiditate et unde et.",
    "realisation": 9,
    "hotel_id": 1,
    "items": [
        {
            "item_id": 7,
            "quantity": 89,
            "number": 82,
            "amount": 33
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/budgets

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Le champ value ne peut contenir plus de 255 caractères. Example: uzylholekjdpymibva

type   string   

Example: expense

Must be one of:
  • expense
  • revenue
description   string  optional  

Example: Illum sed labore tempore cupiditate et unde et.

realisation   number  optional  

Le champ value doit être au moins 0. Le champ value ne peut être supérieur à 100. Example: 9

hotel_id   integer   

The id of an existing record in the hotels table. Example: 1

items   object[]   

Le champ value doit contenir au moins 1 éléments.

item_id   integer   

Example: 7

quantity   integer  optional  

Le champ value doit être au moins 1. Example: 89

number   integer  optional  

Le champ value doit être au moins 1. Example: 82

amount   number   

Le champ value doit être au moins 0. Example: 33

Mettre à jour un budget

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/budgets/14" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ccqjtuuxnmuf\",
    \"type\": \"expense\",
    \"description\": \"Labore alias et amet.\",
    \"realisation\": 6,
    \"items\": [
        {
            \"item_id\": 19,
            \"quantity\": 28,
            \"number\": 25,
            \"amount\": 35
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/14"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "ccqjtuuxnmuf",
    "type": "expense",
    "description": "Labore alias et amet.",
    "realisation": 6,
    "items": [
        {
            "item_id": 19,
            "quantity": 28,
            "number": 25,
            "amount": 35
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/budgets/{budget_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

budget_id   integer   

The ID of the budget. Example: 14

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: ccqjtuuxnmuf

type   string  optional  

Example: expense

Must be one of:
  • expense
  • revenue
description   string  optional  

Example: Labore alias et amet.

realisation   number  optional  

Le champ value doit être au moins 0. Le champ value ne peut être supérieur à 100. Example: 6

items   object[]  optional  

Le champ value doit contenir au moins 1 éléments.

item_id   integer  optional  

This field is required when items is present. Example: 19

quantity   integer  optional  

Le champ value doit être au moins 1. Example: 28

number   integer  optional  

Le champ value doit être au moins 1. Example: 25

amount   number  optional  

This field is required when items is present. Le champ value doit être au moins 0. Example: 35

Archiver (soft delete) les budgets

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/budgets/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        13
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        13
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/budgets/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les budgets archivés

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/budgets/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        6
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/budgets/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les budgets

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/budgets/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        4
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        4
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/budgets/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Calculer la progression détaillée par service/expense_type

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/budgets/progress" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 7,
    \"start_date\": \"2026-05-18T08:05:42\",
    \"end_date\": \"2078-01-21\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/budgets/progress"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 7,
    "start_date": "2026-05-18T08:05:42",
    "end_date": "2078-01-21"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/budgets/progress

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

hotel_id   integer   

The id of an existing record in the hotels table. Example: 7

start_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

end_date   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à start_date. Example: 2078-01-21

Catégories de chambres

Gestion des catégories de chambres

Lister les catégories de chambres disponibles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-categories/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 1,
    \"nbre_items\": 14,
    \"filter_value\": \"et\",
    \"hotel_id\": 10,
    \"trashed\": false
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 1,
    "nbre_items": 14,
    "filter_value": "et",
    "hotel_id": 10,
    "trashed": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "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
    }
}
 

Example response (403):


{
"message": "User does not have the right permissions."
"..."
}
 

Request      

POST api/room-categories/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

required. Example: 1

nbre_items   integer  optional  

Example: 14

filter_value   string  optional  

Example: et

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 10

trashed   boolean  optional  

Example: false

Afficher les informations sur une catégorie de chambre

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/room-categories/9" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/9"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/room-categories/{room_category}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_category   integer   

Example: 9

Ajouer une catégorie de chambre

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-categories" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"room_categories\": [
        {
            \"hotel_id\": 20,
            \"name\": \"aspernatur\",
            \"description\": \"Quis doloribus officia eum aut quos eaque.\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "room_categories": [
        {
            "hotel_id": 20,
            "name": "aspernatur",
            "description": "Quis doloribus officia eum aut quos eaque."
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-categories

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

room_categories   object[]   

Le champ value doit contenir au moins 1 éléments.

hotel_id   integer   

The id of an existing record in the hotels table. Example: 20

name   string   

Example: aspernatur

description   string  optional  

Example: Quis doloribus officia eum aut quos eaque.

Modifier une catégorie de chambre

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/room-categories/9" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"libero\",
    \"hotel_id\": 20,
    \"description\": \"Ea velit ullam placeat tempora qui beatae laborum.\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/9"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "libero",
    "hotel_id": 20,
    "description": "Ea velit ullam placeat tempora qui beatae laborum."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/room-categories/{room_category}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_category   integer   

Example: 9

Body Parameters

name   string   

Example: libero

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 20

description   string  optional  

Example: Ea velit ullam placeat tempora qui beatae laborum.

Archiver une ou plusieurs catégories de chambre NB: Un type de chambre ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/room-categories/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        20
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        20
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/room-categories/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the room_categories table.

Restaurer une ou plusieurs catégories de chambre de la corbeille

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-categories/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        16
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        16
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-categories/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Forcer la suppression d'un ou plusieurs hotel(s) du système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/room-categories/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-categories/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/room-categories/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Chambres

Gestions des chambres

Afficher les informations sur les chambres disponibles/occupées

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/rooms/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 41,
    \"nbre_items\": 15,
    \"filter_value\": \"nemo\",
    \"hotel_id\": 15,
    \"room_type_id\": 16,
    \"room_category_id\": 12,
    \"service_id\": 7,
    \"status\": \"busy\",
    \"floor\": 1,
    \"number_of_room\": 20
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 41,
    "nbre_items": 15,
    "filter_value": "nemo",
    "hotel_id": 15,
    "room_type_id": 16,
    "room_category_id": 12,
    "service_id": 7,
    "status": "busy",
    "floor": 1,
    "number_of_room": 20
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/rooms/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 41

nbre_items   integer  optional  

Example: 15

filter_value   string  optional  

Example: nemo

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 15

room_type_id   integer  optional  

The id of an existing record in the room_types table. Example: 16

room_category_id   integer  optional  

The id of an existing record in the room_categories table. Example: 12

service_id   integer  optional  

Example: 7

status   string  optional  

Example: busy

Must be one of:
  • free
  • busy
floor   integer  optional  

Example: 1

number_of_room   integer  optional  

Example: 20

Afficher les informations d'une chambre

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/rooms/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/rooms/{room_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_id   integer   

The ID of the room. Example: 1

Ajouter une ou plusieurs chambres d'hotel

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/rooms" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rooms\": [
        {
            \"hotel_id\": 12,
            \"room_type_id\": 9,
            \"room_category_id\": 6,
            \"service_id\": 4,
            \"floor\": 13,
            \"number\": 20,
            \"price\": 20,
            \"number_of_room\": 18,
            \"capacity\": 7,
            \"status\": \"busy\",
            \"name\": \"facilis\",
            \"description\": \"Ipsam harum eius illum et veritatis quia quibusdam soluta.\",
            \"image\": \"incidunt\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rooms": [
        {
            "hotel_id": 12,
            "room_type_id": 9,
            "room_category_id": 6,
            "service_id": 4,
            "floor": 13,
            "number": 20,
            "price": 20,
            "number_of_room": 18,
            "capacity": 7,
            "status": "busy",
            "name": "facilis",
            "description": "Ipsam harum eius illum et veritatis quia quibusdam soluta.",
            "image": "incidunt"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/rooms

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

rooms   object[]   
hotel_id   integer   

Example: 12

room_type_id   integer   

Example: 9

room_category_id   integer   

Example: 6

service_id   integer   

Example: 4

floor   integer  optional  

Example: 13

number   integer  optional  

Example: 20

price   integer   

Example: 20

number_of_room   integer  optional  

Example: 18

capacity   integer   

Example: 7

status   string   

Example: busy

Must be one of:
  • free
  • busy
name   string   

Example: facilis

description   string  optional  

Example: Ipsam harum eius illum et veritatis quia quibusdam soluta.

image   string  optional  

Example: incidunt

Mettre à jour les informations d'une chambre d'hotel

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/rooms/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hotel_id\": 11,
    \"room_type_id\": 18,
    \"room_category_id\": 13,
    \"service_id\": 16,
    \"floor\": 13,
    \"number\": 18,
    \"price\": 3,
    \"number_of_room\": 9,
    \"image\": \"possimus\",
    \"capacity\": 9,
    \"status\": \"busy\",
    \"description\": \"Et ullam tenetur iure et sit et.\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hotel_id": 11,
    "room_type_id": 18,
    "room_category_id": 13,
    "service_id": 16,
    "floor": 13,
    "number": 18,
    "price": 3,
    "number_of_room": 9,
    "image": "possimus",
    "capacity": 9,
    "status": "busy",
    "description": "Et ullam tenetur iure et sit et."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/rooms/{room_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_id   integer   

The ID of the room. Example: 1

Body Parameters

hotel_id   integer  optional  

Example: 11

room_type_id   integer  optional  

Example: 18

room_category_id   integer  optional  

Example: 13

service_id   integer  optional  

Example: 16

floor   integer  optional  

Example: 13

number   integer  optional  

Example: 18

price   integer  optional  

Example: 3

number_of_room   integer  optional  

Example: 9

image   string  optional  

Example: possimus

capacity   integer  optional  

Example: 9

status   string  optional  

Example: busy

Must be one of:
  • free
  • busy
description   string  optional  

Example: Et ullam tenetur iure et sit et.

Archiver une ou plusieurs chambres d'hotel

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/rooms/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        9
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/rooms/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the rooms table.

Restaurer une ou plusieurs chambres d'hotel

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/rooms/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/rooms/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer une ou plusieurs chambres d'hotels

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/rooms/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        13
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/rooms/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        13
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/rooms/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Clés

Gestion des clés de l'application'

Récupérer la route de l'application

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/find-licence" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cle\": \"ut\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/find-licence"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cle": "ut"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/find-licence

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cle   string   

Example: ut

Récuperer les clés d'applications

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/keys/qui" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/keys/qui"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/keys/{id?}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string  optional  

The ID of the . Example: qui

Commandes

Gestion des commandes

Lister les commandes

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/orders/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 5,
    \"nbre_items\": 4,
    \"filter_value\": \"et\",
    \"customer_id\": 6,
    \"payment_mode\": \"qui\",
    \"status\": \"confirmed\",
    \"payment_status\": \"completed\",
    \"product_id\": 2,
    \"service_id\": 20,
    \"date_start\": \"2026-05-18T08:05:41\",
    \"date_end\": \"2026-05-18T08:05:41\",
    \"hotel_id\": 11
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 5,
    "nbre_items": 4,
    "filter_value": "et",
    "customer_id": 6,
    "payment_mode": "qui",
    "status": "confirmed",
    "payment_status": "completed",
    "product_id": 2,
    "service_id": 20,
    "date_start": "2026-05-18T08:05:41",
    "date_end": "2026-05-18T08:05:41",
    "hotel_id": 11
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/orders/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 5

nbre_items   integer  optional  

Example: 4

filter_value   string  optional  

Example: et

customer_id   integer  optional  

The id of an existing record in the users table. Example: 6

payment_mode   string  optional  

Example: qui

status   string  optional  

Example: confirmed

Must be one of:
  • pending
  • paid
  • cancelled
  • confirmed
payment_status   string  optional  

Example: completed

Must be one of:
  • none
  • advance
  • completed
product_id   integer  optional  

The id of an existing record in the products table. Example: 2

service_id   integer  optional  

The id of an existing record in the services table. Example: 20

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

date_end   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 11

Afficher les détails d'une commande

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/orders/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/orders/{order_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 3

Ajouter une commande

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"customer_id\": 19,
    \"payment_mode\": \"omnis\",
    \"room_id\": 4,
    \"room_service_id\": 7,
    \"status\": \"cancelled\",
    \"delivery_date\": \"2026-05-18T08:05:41\",
    \"products\": [
        {
            \"id\": 1,
            \"quantity\": 52
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "customer_id": 19,
    "payment_mode": "omnis",
    "room_id": 4,
    "room_service_id": 7,
    "status": "cancelled",
    "delivery_date": "2026-05-18T08:05:41",
    "products": [
        {
            "id": 1,
            "quantity": 52
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

customer_id   integer  optional  

The id of an existing record in the users table. Example: 19

payment_mode   string  optional  

Example: omnis

room_id   integer  optional  

The id of an existing record in the rooms table. Example: 4

room_service_id   integer  optional  

The id of an existing record in the room_services table. Example: 7

status   string  optional  

Example: cancelled

Must be one of:
  • pending
  • paid
  • cancelled
  • confirmed
delivery_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

products   object[]   
id   integer   

The id of an existing record in the products table. Example: 1

quantity   integer   

Le champ value doit être au moins 1. Example: 52

Modifier une commande

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/orders/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"customer_id\": 5,
    \"payment_mode\": \"non\",
    \"room_id\": 3,
    \"room_service_id\": 10,
    \"status\": \"pending\",
    \"delivery_date\": \"2026-05-18T08:05:41\",
    \"products\": [
        {
            \"id\": 7,
            \"quantity\": 69
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "customer_id": 5,
    "payment_mode": "non",
    "room_id": 3,
    "room_service_id": 10,
    "status": "pending",
    "delivery_date": "2026-05-18T08:05:41",
    "products": [
        {
            "id": 7,
            "quantity": 69
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/orders/{order_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 3

Body Parameters

customer_id   integer  optional  

The id of an existing record in the users table. Example: 5

payment_mode   string  optional  

Example: non

room_id   integer  optional  

The id of an existing record in the rooms table. Example: 3

room_service_id   integer  optional  

The id of an existing record in the room_services table. Example: 10

status   string  optional  

Example: pending

Must be one of:
  • pending
  • paid
  • cancelled
  • confirmed
delivery_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

products   object[]  optional  
id   integer   

The id of an existing record in the products table. Example: 7

quantity   integer   

Le champ value doit être au moins 1. Example: 69

Archiver (soft delete) les presences spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/orders/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/orders/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les orders archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/orders/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/orders/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les orders spécifiés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/orders/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/orders/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/orders/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Contrats

Gestion des contrats employés

Retourne la liste des contrats avec la possibilité de filtrer et paginer les résultats.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/contracts/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 2,
    \"nbre_items\": 12,
    \"filter_value\": \"praesentium\",
    \"position\": \"perspiciatis\",
    \"status\": \"Active\",
    \"trashed\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 2,
    "nbre_items": 12,
    "filter_value": "praesentium",
    "position": "perspiciatis",
    "status": "Active",
    "trashed": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/contracts/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Example: 2

nbre_items   integer  optional  

Example: 12

filter_value   string  optional  

Example: praesentium

position   string  optional  

Example: perspiciatis

status   string  optional  

Example: Active

Must be one of:
  • Active
  • Terminated
  • Pending
trashed   boolean  optional  

Example: true

Affiche les détails d’un contrat spécifique à partir de son identifiant.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/contracts/nisi" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/nisi"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/contracts/{contract}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contract   string   

The contract. Example: nisi

Crée un nouveau contrat pour un utilisateur, après vérification d'absence de contrat actif.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/contracts" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 19,
    \"user_approve_id\": 16,
    \"type\": \"blanditiis\",
    \"description\": \"Quia animi similique perspiciatis consequatur.\",
    \"start_date\": \"2026-05-18T08:05:42\",
    \"duration\": 39,
    \"working_hours\": \"optio\",
    \"position\": \"et\",
    \"gross_salary\": 39,
    \"status\": \"Pending\",
    \"service_benefits\": \"debitis\",
    \"bonus\": \"dolores\",
    \"number_days_off\": 1
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 19,
    "user_approve_id": 16,
    "type": "blanditiis",
    "description": "Quia animi similique perspiciatis consequatur.",
    "start_date": "2026-05-18T08:05:42",
    "duration": 39,
    "working_hours": "optio",
    "position": "et",
    "gross_salary": 39,
    "status": "Pending",
    "service_benefits": "debitis",
    "bonus": "dolores",
    "number_days_off": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/contracts

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The id of an existing record in the users table. Example: 19

user_approve_id   integer   

The id of an existing record in the users table. Example: 16

type   string   

Example: blanditiis

description   string  optional  

Example: Quia animi similique perspiciatis consequatur.

start_date   string   

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

duration   integer  optional  

Le champ value doit être au moins 1. Example: 39

working_hours   string   

Example: optio

position   string   

Example: et

gross_salary   number   

Le champ value doit être au moins 0. Example: 39

status   string  optional  

Example: Pending

Must be one of:
  • Active
  • Terminated
  • Pending
service_benefits   string  optional  

Example: debitis

bonus   string  optional  

Example: dolores

number_days_off   integer  optional  

Example: 1

Met à jour les informations d’un contrat donné.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/contracts/quibusdam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 1,
    \"user_approve_id\": 5,
    \"type\": \"CDI\",
    \"description\": \"Non commodi consequatur hic nihil.\",
    \"start_date\": \"2026-05-18T08:05:42\",
    \"duration\": 34,
    \"working_hours\": \"veniam\",
    \"position\": \"tenetur\",
    \"gross_salary\": 26,
    \"status\": \"Terminated\",
    \"service_benefits\": \"delectus\",
    \"bonus\": \"voluptate\",
    \"number_days_off\": 14
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/quibusdam"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 1,
    "user_approve_id": 5,
    "type": "CDI",
    "description": "Non commodi consequatur hic nihil.",
    "start_date": "2026-05-18T08:05:42",
    "duration": 34,
    "working_hours": "veniam",
    "position": "tenetur",
    "gross_salary": 26,
    "status": "Terminated",
    "service_benefits": "delectus",
    "bonus": "voluptate",
    "number_days_off": 14
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/contracts/{contract}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contract   string   

The contract. Example: quibusdam

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 1

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 5

type   string  optional  

Example: CDI

Must be one of:
  • CDD
  • CDI
  • Stage
description   string  optional  

Example: Non commodi consequatur hic nihil.

start_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

duration   integer  optional  

Le champ value doit être au moins 1. Example: 34

working_hours   string  optional  

Example: veniam

position   string  optional  

Example: tenetur

gross_salary   number  optional  

Le champ value doit être au moins 0. Example: 26

status   string  optional  

Example: Terminated

Must be one of:
  • Active
  • Terminated
  • Pending
service_benefits   string  optional  

Example: delectus

bonus   string  optional  

Example: voluptate

number_days_off   integer  optional  

Example: 14

Archiver (soft delete) les contrats spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/contracts/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        7
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/contracts/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les contrats archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/contracts/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        6
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/contracts/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les contrats spécifiés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/contracts/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/contracts/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/contracts/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Decaissements

Gestion des décaissements

Afficher la liste des décaissements en fonction des filtres

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/disbursements/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 36,
    \"nbre_items\": 82,
    \"filter_value\": \"vitae\",
    \"supplier_id\": 13,
    \"hotel_id\": 15,
    \"purchase_order_id\": 5,
    \"user_id\": 4,
    \"created_by\": 11,
    \"responsible_id\": 2,
    \"service_id\": 4,
    \"payment_method\": \"Bank\",
    \"status\": \"approved\",
    \"reference\": \"nobis\",
    \"date_start\": \"2026-05-18T08:05:41\",
    \"date_end\": \"2026-05-18T08:05:41\",
    \"expense_type_id\": 7,
    \"service_ids\": [
        8
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 36,
    "nbre_items": 82,
    "filter_value": "vitae",
    "supplier_id": 13,
    "hotel_id": 15,
    "purchase_order_id": 5,
    "user_id": 4,
    "created_by": 11,
    "responsible_id": 2,
    "service_id": 4,
    "payment_method": "Bank",
    "status": "approved",
    "reference": "nobis",
    "date_start": "2026-05-18T08:05:41",
    "date_end": "2026-05-18T08:05:41",
    "expense_type_id": 7,
    "service_ids": [
        8
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/disbursements/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 36

nbre_items   integer  optional  

Le champ value doit être au moins 1. Example: 82

filter_value   string  optional  

Example: vitae

supplier_id   integer  optional  

The id of an existing record in the users table. Example: 13

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 15

purchase_order_id   integer  optional  

The id of an existing record in the purchase_orders table. Example: 5

user_id   integer  optional  

The id of an existing record in the users table. Example: 4

created_by   integer  optional  

The id of an existing record in the users table. Example: 11

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 2

service_id   integer  optional  

The id of an existing record in the services table. Example: 4

payment_method   string  optional  

Example: Bank

Must be one of:
  • Cash
  • Bank
  • OM
  • MOMO
status   string  optional  

Example: approved

Must be one of:
  • pending
  • approved
  • rejected
reference   string  optional  

Example: nobis

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

date_end   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

expense_type_id   integer  optional  

Example: 7

service_ids   integer[]  optional  

The id of an existing record in the services table.

Enregistrer un nouveau décaissement

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/disbursements" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"payment_method\": \"Cash\",
    \"status\": \"rejected\",
    \"invoice_image\": \"aut\",
    \"reasons\": \"ipsum\",
    \"total_amount\": 81,
    \"disbursement_date\": \"2026-05-18T08:05:41\",
    \"responsible_id\": \"error\",
    \"validation_date\": \"2026-05-18T08:05:41\",
    \"salary_components\": [
        {
            \"salary_component_id\": \"rerum\",
            \"coef\": 20,
            \"base_amount\": 88,
            \"coef_patronal\": 79,
            \"base_patronal\": 77
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "payment_method": "Cash",
    "status": "rejected",
    "invoice_image": "aut",
    "reasons": "ipsum",
    "total_amount": 81,
    "disbursement_date": "2026-05-18T08:05:41",
    "responsible_id": "error",
    "validation_date": "2026-05-18T08:05:41",
    "salary_components": [
        {
            "salary_component_id": "rerum",
            "coef": 20,
            "base_amount": 88,
            "coef_patronal": 79,
            "base_patronal": 77
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/disbursements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

payment_method   string   

Example: Cash

Must be one of:
  • Cash
  • Bank
  • OM
  • MOMO
status   string  optional  

Example: rejected

Must be one of:
  • pending
  • approved
  • rejected
expense_type_id   string  optional  

The id of an existing record in the expense_types table.

invoice_image   string  optional  

Example: aut

reasons   string  optional  

Example: ipsum

total_amount   number  optional  

Le champ value doit être au moins 0. Example: 81

disbursement_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

responsible_id   string   

The id of an existing record in the users table. Example: error

user_id   string  optional  

The id of an existing record in the users table.

purchase_order_id   string  optional  

The id of an existing record in the purchase_orders table. This field is required when service_id is not present.

service_id   string  optional  

The id of an existing record in the services table. This field is required when purchase_order_id is not present.

validation_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

salary_components   object[]  optional  
salary_component_id   string   

The id of an existing record in the salary_components table. Example: rerum

coef   number  optional  

Le champ value doit être au moins 0. Example: 20

base_amount   number  optional  

Le champ value doit être au moins 0. Example: 88

coef_patronal   number  optional  

Le champ value doit être au moins 0. Example: 79

base_patronal   number  optional  

Le champ value doit être au moins 0. Example: 77

Afficher un décaissement spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/disbursements/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/disbursements/{disbursement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

disbursement_id   integer   

The ID of the disbursement. Example: 6

Update the specified resource in storage.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/disbursements/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"payment_method\": \"Bank\",
    \"status\": \"rejected\",
    \"invoice_image\": \"sit\",
    \"reasons\": \"aut\",
    \"total_amount\": 15,
    \"disbursement_date\": \"2026-05-18T08:05:41\",
    \"validation_date\": \"2026-05-18T08:05:41\",
    \"salary_components\": [
        {
            \"salary_component_id\": \"culpa\",
            \"coef\": 7,
            \"base_amount\": 18,
            \"coef_patronal\": 65,
            \"base_patronal\": 48
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "payment_method": "Bank",
    "status": "rejected",
    "invoice_image": "sit",
    "reasons": "aut",
    "total_amount": 15,
    "disbursement_date": "2026-05-18T08:05:41",
    "validation_date": "2026-05-18T08:05:41",
    "salary_components": [
        {
            "salary_component_id": "culpa",
            "coef": 7,
            "base_amount": 18,
            "coef_patronal": 65,
            "base_patronal": 48
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/disbursements/{disbursement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

disbursement_id   integer   

The ID of the disbursement. Example: 6

Body Parameters

payment_method   string  optional  

Example: Bank

Must be one of:
  • Cash
  • Bank
  • OM
  • MOMO
status   string  optional  

Example: rejected

Must be one of:
  • pending
  • approved
  • rejected
expense_type_id   string  optional  

The id of an existing record in the expense_types table.

invoice_image   string  optional  

Example: sit

reasons   string  optional  

Example: aut

total_amount   number  optional  

Le champ value doit être au moins 0. Example: 15

disbursement_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

responsible_id   string  optional  

The id of an existing record in the users table.

user_id   string  optional  

The id of an existing record in the users table.

purchase_order_id   string  optional  

The id of an existing record in the purchase_orders table.

service_id   string  optional  

The id of an existing record in the services table.

validation_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

salary_components   object[]  optional  
salary_component_id   string   

The id of an existing record in the salary_components table. Example: culpa

coef   number  optional  

Le champ value doit être au moins 0. Example: 7

base_amount   number  optional  

Le champ value doit être au moins 0. Example: 18

coef_patronal   number  optional  

Le champ value doit être au moins 0. Example: 65

base_patronal   number  optional  

Le champ value doit être au moins 0. Example: 48

Archiver (soft delete) les décaissements.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/disbursements/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/disbursements/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les décaissements archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/disbursements/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        2
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        2
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/disbursements/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les décaissements spécifiés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/disbursements/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        10
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/disbursements/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/disbursements/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Demande d'approvisionnement | Supply demand

Contrôleur chargé de la gestion des demandes d'approvisionnement.

Affiche la liste paginée des demandes d'approvisionnement, avec filtres optionnels.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/supply-demands/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"filter_value\": \"suscipit\",
    \"responsible_id\": 9,
    \"hotel_id\": 4,
    \"priority\": \"high\",
    \"status\": \"accepted\",
    \"article_ids\": [
        19
    ],
    \"start_date\": \"2026-05-18T08:05:42\",
    \"end_date\": \"2064-09-19\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "filter_value": "suscipit",
    "responsible_id": 9,
    "hotel_id": 4,
    "priority": "high",
    "status": "accepted",
    "article_ids": [
        19
    ],
    "start_date": "2026-05-18T08:05:42",
    "end_date": "2064-09-19"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/supply-demands/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

filter_value   string  optional  

Example: suscipit

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 9

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 4

priority   string  optional  

Example: high

Must be one of:
  • high
  • medium
  • low
status   string  optional  

Example: accepted

Must be one of:
  • pending
  • accepted
  • refused
article_ids   integer[]  optional  

The id of an existing record in the articles table.

start_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

end_date   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à start_date. Example: 2064-09-19

Affiche les détails d'une demande d'approvisionnement spécifique.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/supply-demands/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/supply-demands/{supply_demand_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supply_demand_id   integer   

The ID of the supply demand. Example: 1

Crée une nouvelle demande d'approvisionnement.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/supply-demands" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vxeeoklvkqobfkfxvr\",
    \"description\": \"Iusto reprehenderit at nam.\",
    \"responsible_id\": 19,
    \"status\": \"refused\",
    \"priority\": \"medium\",
    \"articles\": [
        {
            \"id\": 20,
            \"unit_price\": 2,
            \"quantity\": 42,
            \"supplier_id\": 14
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "vxeeoklvkqobfkfxvr",
    "description": "Iusto reprehenderit at nam.",
    "responsible_id": 19,
    "status": "refused",
    "priority": "medium",
    "articles": [
        {
            "id": 20,
            "unit_price": 2,
            "quantity": 42,
            "supplier_id": 14
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/supply-demands

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: vxeeoklvkqobfkfxvr

description   string  optional  

Example: Iusto reprehenderit at nam.

responsible_id   integer   

The id of an existing record in the users table. Example: 19

status   string  optional  

Example: refused

Must be one of:
  • pending
  • accepted
  • refused
priority   string   

Example: medium

Must be one of:
  • high
  • medium
  • low
articles   object[]   

Le champ value doit contenir au moins 1 éléments.

id   integer   

The id of an existing record in the articles table. Example: 20

unit_price   integer  optional  

Example: 2

quantity   integer   

Le champ value doit être au moins 1. Example: 42

supplier_id   integer   

The id of an existing record in the users table. Example: 14

Met à jour les informations d'une demande d'approvisionnement existante.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/supply-demands/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"knxfkectmgc\",
    \"description\": \"Eius molestiae similique qui.\",
    \"responsible_id\": 13,
    \"status\": \"pending\",
    \"priority\": \"low\",
    \"articles\": [
        {
            \"id\": 14,
            \"unit_price\": 1,
            \"quantity\": 30,
            \"supplier_id\": 16
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "knxfkectmgc",
    "description": "Eius molestiae similique qui.",
    "responsible_id": 13,
    "status": "pending",
    "priority": "low",
    "articles": [
        {
            "id": 14,
            "unit_price": 1,
            "quantity": 30,
            "supplier_id": 16
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/supply-demands/{supply_demand_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

supply_demand_id   integer   

The ID of the supply demand. Example: 1

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: knxfkectmgc

description   string  optional  

Example: Eius molestiae similique qui.

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 13

status   string  optional  

Example: pending

Must be one of:
  • pending
  • accepted
  • refused
priority   string  optional  

Example: low

Must be one of:
  • high
  • medium
  • low
articles   object[]  optional  

Le champ value doit contenir au moins 1 éléments.

id   integer   

The id of an existing record in the articles table. Example: 14

unit_price   integer  optional  

Example: 1

quantity   integer   

Le champ value doit être au moins 1. Example: 30

supplier_id   integer   

The id of an existing record in the users table. Example: 16

Met en corbeille (suppression logique) une ou plusieurs demandes d'approvisionnement.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/supply-demands/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supply_demand_ids\": [
        8
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supply_demand_ids": [
        8
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/supply-demands/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

supply_demand_ids   integer[]  optional  

The id of an existing record in the supply_demands table.

Restaure une ou plusieurs demandes d'approvisionnement supprimées (suppression logique).

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/supply-demands/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"supply_demand_ids\": [
        11
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/supply-demands/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "supply_demand_ids": [
        11
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/supply-demands/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

supply_demand_ids   integer[]  optional  

The id of an existing record in the supply_demands table.

Demande d'explication / Explanation Request

Gestion des demandes d'explication

Afficher les demandes d'explication

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 73,
    \"nbre_items\": 15
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 73,
    "nbre_items": 15
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/explanation-requests/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 73

nbre_items   integer  optional  

Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 1000. Example: 15

Afficher une demande d'explication spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/explanation-requests/19" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/19"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/explanation-requests/{explanation_request}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

explanation_request   integer   

Example: 19

Creer une demande d'explication

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"dsrbg\",
    \"description\": \"Sit ipsam harum voluptatem laboriosam.\",
    \"idUser\": 16,
    \"idResponsable\": 19,
    \"image\": \"est\",
    \"comments\": \"voluptatum\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "dsrbg",
    "description": "Sit ipsam harum voluptatem laboriosam.",
    "idUser": 16,
    "idResponsable": 19,
    "image": "est",
    "comments": "voluptatum"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/explanation-requests

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Le champ value ne peut contenir plus de 255 caractères. Example: dsrbg

description   string  optional  

Example: Sit ipsam harum voluptatem laboriosam.

idUser   integer   

The id of an existing record in the users table. Example: 16

idResponsable   integer   

The id of an existing record in the users table. Example: 19

image   string  optional  

Example: est

comments   string  optional  

Example: voluptatum

Mettre a jour une demande d'explication

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"lbcmhke\",
    \"description\": \"Dolor modi aliquid asperiores aliquid et qui nulla incidunt.\",
    \"idUser\": 7,
    \"idResponsable\": 18,
    \"image\": \"laboriosam\",
    \"comments\": \"nesciunt\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "lbcmhke",
    "description": "Dolor modi aliquid asperiores aliquid et qui nulla incidunt.",
    "idUser": 7,
    "idResponsable": 18,
    "image": "laboriosam",
    "comments": "nesciunt"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/explanation-requests/{explanation_request}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

explanation_request   integer   

Example: 1

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: lbcmhke

description   string  optional  

Example: Dolor modi aliquid asperiores aliquid et qui nulla incidunt.

idUser   integer  optional  

The id of an existing record in the users table. Example: 7

idResponsable   integer  optional  

The id of an existing record in the users table. Example: 18

image   string  optional  

Example: laboriosam

comments   string  optional  

Example: nesciunt

Archiver (soft delete) les demandes d'explication.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/explanation-requests/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the explanation_requests table.

Restaurer les demandes d'explication archivées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        12
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        12
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/explanation-requests/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the explanation_requests table.

Supprimer définitivement les demandes d'explication spécifiées.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        5
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/explanation-requests/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        5
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/explanation-requests/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the explanation_requests table.

Demande de congé

Gestion des demandes de congé employé

Lister les congés enregistrés

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/holidays/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 8,
    \"user_approve_id\": 7,
    \"status\": \"rejected\",
    \"archive\": \"with_trashed\",
    \"date\": \"2026-05-18T08:05:42\",
    \"page_items\": 19,
    \"nbre_items\": 15,
    \"filter_value\": \"a\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 8,
    "user_approve_id": 7,
    "status": "rejected",
    "archive": "with_trashed",
    "date": "2026-05-18T08:05:42",
    "page_items": 19,
    "nbre_items": 15,
    "filter_value": "a"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/holidays/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 8

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 7

status   string  optional  

Example: rejected

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected
archive   string  optional  

Example: with_trashed

Must be one of:
  • with_trashed
  • only_trashed
date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

page_items   integer  optional  

Example: 19

nbre_items   integer  optional  

Example: 15

filter_value   string  optional  

Example: a

Afficher les détails d'une retenue sur salaire

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/holidays/5" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/5"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/holidays/{holiday_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

holiday_id   integer   

The ID of the holiday. Example: 5

Enregistrer une demande de congé

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/holidays" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"ut\",
    \"start_date\": \"2032-08-18\",
    \"end_date\": \"2039-11-23\",
    \"days_taken\": 4,
    \"reason\": \"nscbelzqzsabplybkqe\",
    \"user_approve_id\": 17
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "type": "ut",
    "start_date": "2032-08-18",
    "end_date": "2039-11-23",
    "days_taken": 4,
    "reason": "nscbelzqzsabplybkqe",
    "user_approve_id": 17
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/holidays

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

type   string   

Example: ut

start_date   string   

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: 2032-08-18

end_date   string   

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: 2039-11-23

days_taken   integer   

Example: 4

reason   string   

Le champ value ne peut contenir plus de 255 caractères. Example: nscbelzqzsabplybkqe

user_approve_id   integer   

The id of an existing record in the users table. Example: 17

Modifier une demande de congé

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/holidays/16" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"laudantium\",
    \"start_date\": \"2086-10-21\",
    \"end_date\": \"2070-06-28\",
    \"days_taken\": 20,
    \"reason\": \"hzt\",
    \"status\": \"pending_approval\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/16"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "type": "laudantium",
    "start_date": "2086-10-21",
    "end_date": "2070-06-28",
    "days_taken": 20,
    "reason": "hzt",
    "status": "pending_approval"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/holidays/{holiday_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

holiday_id   integer   

The ID of the holiday. Example: 16

Body Parameters

type   string  optional  

Example: laudantium

start_date   string  optional  

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: 2086-10-21

end_date   string  optional  

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: 2070-06-28

days_taken   integer  optional  

Example: 20

reason   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: hzt

status   string  optional  

Example: pending_approval

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected

Archiver une ou plusieurs demandes de congés

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/holidays/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"idHolidays\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "idHolidays": [
        7
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/holidays/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

idHolidays   integer[]   

The id of an existing record in the holidays table.

Restaurer une ou plusieurs demandes de congés

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/holidays/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"idHolidays\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "idHolidays": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/holidays/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

idHolidays   integer[]   

The id of an existing record in the holidays table.

Supprimer une ou plusieurs demandes de congés

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/holidays/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"idHolidays\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/holidays/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "idHolidays": [
        6
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/holidays/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

idHolidays   integer[]   

The id of an existing record in the holidays table.

Demandes de Permissions

Contrôleur pour la gestion des demandes de permission des utilisateurs

Affiche une liste paginée des demandes de permission.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permission-requests/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 74,
    \"nbre_items\": 17,
    \"filterValue\": \"mcmfvpwmravscrwldllezmktj\",
    \"departure\": \"2026-05-18T08:05:42\",
    \"return\": \"2019-06-10\",
    \"duration\": 30,
    \"archive\": \"only_trashed\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 74,
    "nbre_items": 17,
    "filterValue": "mcmfvpwmravscrwldllezmktj",
    "departure": "2026-05-18T08:05:42",
    "return": "2019-06-10",
    "duration": 30,
    "archive": "only_trashed"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permission-requests/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 74

nbre_items   integer  optional  

Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 10000. Example: 17

filterValue   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: mcmfvpwmravscrwldllezmktj

departure   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

return   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après datedeparture. Example: 2019-06-10

duration   integer  optional  

Le champ value doit être au moins 1. Example: 30

status   string  optional  
archive   string  optional  

Example: only_trashed

Must be one of:
  • with_trashed
  • only_trashed

Affiche les détails d'une demande de permission spécifique.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/permission-requests/saepe" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/saepe"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/permission-requests/{permissions_request}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

permissions_request   string   

Example: saepe

Crée une nouvelle demande de permission.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permission-requests" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"eelebsbjflfdm\",
    \"departure\": \"2104-06-11\",
    \"return\": \"2058-07-01\",
    \"duration\": 26,
    \"user_approve_id\": 2,
    \"status\": \"approved\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reason": "eelebsbjflfdm",
    "departure": "2104-06-11",
    "return": "2058-07-01",
    "duration": 26,
    "user_approve_id": 2,
    "status": "approved"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permission-requests

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

reason   string   

Le champ value ne peut contenir plus de 255 caractères. Example: eelebsbjflfdm

departure   string   

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à today. Example: 2104-06-11

return   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après departure. Example: 2058-07-01

duration   integer  optional  

Le champ value doit être au moins 1. Example: 26

user_approve_id   integer   

The id of an existing record in the users table. Example: 2

status   string  optional  

Example: approved

Must be one of:
  • pending
  • approved
  • rejected

Met à jour une demande de permission si elle est encore en attente.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/permission-requests/nobis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"mlursvmognjtiezsm\",
    \"datedeparture\": \"2052-09-06\",
    \"dateRetour\": \"2113-09-10\",
    \"duration\": 79,
    \"status\": \"approved\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/nobis"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reason": "mlursvmognjtiezsm",
    "datedeparture": "2052-09-06",
    "dateRetour": "2113-09-10",
    "duration": 79,
    "status": "approved"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/permission-requests/{permissions_request}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

permissions_request   string   

Example: nobis

Body Parameters

reason   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: mlursvmognjtiezsm

datedeparture   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à today. Example: 2052-09-06

dateRetour   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après datedeparture. Example: 2113-09-10

duration   integer  optional  

Le champ value doit être au moins 1. Example: 79

status   string  optional  

Example: approved

Must be one of:
  • pending
  • approved
  • rejected

Archiver (soft delete) les presences spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permission-requests/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        2
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        2
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permission-requests/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les permission_requests archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permission-requests/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        18
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        18
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permission-requests/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les permission_requests spécifiés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permission-requests/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permission-requests/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permission-requests/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Encaissements

Gestion des encaissements

Lister les encaissements

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/cash-ins/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 9,
    \"nbre_items\": 11,
    \"filter_value\": \"nihil\",
    \"seller_id\": 15,
    \"hotel_id\": 11,
    \"order_id\": 17,
    \"service_id\": 18,
    \"client_id\": 12,
    \"created_by\": 12,
    \"date_start\": \"2026-05-18T08:05:41\",
    \"date_end\": \"2026-05-18T08:05:41\",
    \"cashin_type\": \"order\",
    \"payment_method\": \"temporibus\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 9,
    "nbre_items": 11,
    "filter_value": "nihil",
    "seller_id": 15,
    "hotel_id": 11,
    "order_id": 17,
    "service_id": 18,
    "client_id": 12,
    "created_by": 12,
    "date_start": "2026-05-18T08:05:41",
    "date_end": "2026-05-18T08:05:41",
    "cashin_type": "order",
    "payment_method": "temporibus"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/cash-ins/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 9

nbre_items   integer  optional  

Example: 11

filter_value   string  optional  

Example: nihil

seller_id   integer  optional  

The id of an existing record in the users table. Example: 15

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 11

order_id   integer  optional  

The id of an existing record in the orders table. Example: 17

service_id   integer  optional  

The id of an existing record in the services table. Example: 18

client_id   integer  optional  

The id of an existing record in the users table. Example: 12

created_by   integer  optional  

The id of an existing record in the users table. Example: 12

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

date_end   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

cashin_type   integer  optional  

Example: order

Must be one of:
  • booking
  • order
payment_method   string  optional  

Example: temporibus

Afficher les détails d'un encaissement

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/cash-ins/11" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/11"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/cash-ins/{cash_in}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cash_in   integer   

Example: 11

Ajouter un encaissment

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/cash-ins" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order_id\": 15,
    \"service_id\": 15,
    \"booking_id\": 9,
    \"payment_method\": \"aliquid\",
    \"type\": \"totam\",
    \"amount\": 323986.464,
    \"date\": \"2026-05-18\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order_id": 15,
    "service_id": 15,
    "booking_id": 9,
    "payment_method": "aliquid",
    "type": "totam",
    "amount": 323986.464,
    "date": "2026-05-18"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/cash-ins

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

order_id   integer  optional  

Example: 15

service_id   integer   

Example: 15

booking_id   integer  optional  

Example: 9

payment_method   string   

Example: aliquid

type   string  optional  

Example: totam

amount   number   

Example: 323986.464

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

Modifier un encaissement

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/cash-ins/11" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order_id\": 3,
    \"service_id\": 4,
    \"booking_id\": 18,
    \"payment_method\": \"iste\",
    \"amount\": 91821.8186
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/11"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order_id": 3,
    "service_id": 4,
    "booking_id": 18,
    "payment_method": "iste",
    "amount": 91821.8186
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/cash-ins/{cash_in}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cash_in   integer   

Example: 11

Body Parameters

order_id   integer  optional  

Example: 3

service_id   integer  optional  

Example: 4

booking_id   integer  optional  

Example: 18

payment_method   string  optional  

Example: iste

amount   number  optional  

Example: 91821.8186

Archiver (soft delete) les entrées spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/cash-ins/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        10
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/cash-ins/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les entrées archivées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/cash-ins/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/cash-ins/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les entrées spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/cash-ins/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        5
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/cash-ins/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        5
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/cash-ins/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Endpoints

Lister les autres revenus

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/other-incomes/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 86,
    \"nbre_items\": 22,
    \"filter_value\": \"ea\",
    \"name\": \"sunt\",
    \"amount\": 6,
    \"date\": \"2026-05-18\",
    \"type\": \"et\",
    \"source_name\": \"magni\",
    \"start_date\": \"2026-05-18\",
    \"end_date\": \"2069-09-19\",
    \"trashed\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 86,
    "nbre_items": 22,
    "filter_value": "ea",
    "name": "sunt",
    "amount": 6,
    "date": "2026-05-18",
    "type": "et",
    "source_name": "magni",
    "start_date": "2026-05-18",
    "end_date": "2069-09-19",
    "trashed": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/other-incomes/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 86

nbre_items   integer  optional  

Le champ value doit être au moins 1. Example: 22

filter_value   string  optional  

Example: ea

name   string  optional  

Example: sunt

amount   number  optional  

Le champ value doit être au moins 0. Example: 6

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

type   string  optional  

Example: et

source_name   string  optional  

Example: magni

start_date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

end_date   string  optional  

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: 2069-09-19

trashed   boolean  optional  

Example: true

Afficher un revenu

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/other-incomes/11" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/11"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/other-incomes/{otherIncome_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

otherIncome_id   integer   

The ID of the otherIncome. Example: 11

Ajouter un revenu

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/other-incomes" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"est\",
    \"amount\": 43,
    \"date\": \"2026-05-18\",
    \"type\": \"oufoqewrtvnvy\",
    \"description\": \"Quod quo delectus architecto in dicta expedita est.\",
    \"source_name\": \"non\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "est",
    "amount": 43,
    "date": "2026-05-18",
    "type": "oufoqewrtvnvy",
    "description": "Quod quo delectus architecto in dicta expedita est.",
    "source_name": "non"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/other-incomes

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: est

amount   number   

Le champ value doit être au moins 0. Example: 43

date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

type   string  optional  

Le champ value ne peut contenir plus de 100 caractères. Example: oufoqewrtvnvy

description   string  optional  

Example: Quod quo delectus architecto in dicta expedita est.

source_name   string  optional  

Example: non

Modifier un revenu

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/other-incomes/11" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"et\",
    \"amount\": 31,
    \"date\": \"2026-05-18\",
    \"type\": \"in\",
    \"description\": \"At repellat numquam dolores quas nihil nisi fugiat.\",
    \"source_name\": \"xwqdggwxi\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/11"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "et",
    "amount": 31,
    "date": "2026-05-18",
    "type": "in",
    "description": "At repellat numquam dolores quas nihil nisi fugiat.",
    "source_name": "xwqdggwxi"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/other-incomes/{otherIncome_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

otherIncome_id   integer   

The ID of the otherIncome. Example: 11

Body Parameters

name   string  optional  

Example: et

amount   number  optional  

Le champ value doit être au moins 0. Example: 31

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

type   string  optional  

Example: in

description   string  optional  

Example: At repellat numquam dolores quas nihil nisi fugiat.

source_name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: xwqdggwxi

Trash revenus

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/other-incomes/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/other-incomes/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the other_incomes table.

Restore revenus

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/other-incomes/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        10
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/other-incomes/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the other_incomes table.

Suppression définitive

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/other-incomes/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/other-incomes/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/other-incomes/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]  optional  

The id of an existing record in the other_incomes table.

Lister les présences

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/presences/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 2,
    \"nbre_items\": 34,
    \"filter_value\": \"sed\",
    \"user_id\": 16,
    \"hotel_id\": 16,
    \"date\": \"2026-05-18T08:05:42\",
    \"start_date\": \"2026-05-18T08:05:42\",
    \"end_date\": \"2042-09-23\",
    \"type\": \"ut\",
    \"trashed\": false
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 2,
    "nbre_items": 34,
    "filter_value": "sed",
    "user_id": 16,
    "hotel_id": 16,
    "date": "2026-05-18T08:05:42",
    "start_date": "2026-05-18T08:05:42",
    "end_date": "2042-09-23",
    "type": "ut",
    "trashed": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/presences/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 2

nbre_items   integer  optional  

Le champ value doit être au moins 1. Example: 34

filter_value   string  optional  

Example: sed

user_id   integer  optional  

The id of an existing record in the users table. Example: 16

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 16

date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

start_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

end_date   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à start_date. Example: 2042-09-23

type   string  optional  

Example: ut

trashed   boolean  optional  

Example: false

Ajouter une présence

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/presences" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 6,
    \"hotel_id\": 12,
    \"date\": \"2026-05-18T08:05:42\",
    \"hour\": \"08:05\",
    \"arrivalTime\": \"08:05\",
    \"departureTime\": \"08:05\",
    \"type\": \"numquam\",
    \"reason\": \"ipsum\",
    \"savingType\": \"atque\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 6,
    "hotel_id": 12,
    "date": "2026-05-18T08:05:42",
    "hour": "08:05",
    "arrivalTime": "08:05",
    "departureTime": "08:05",
    "type": "numquam",
    "reason": "ipsum",
    "savingType": "atque"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/presences

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The id of an existing record in the users table. Example: 6

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 12

date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

hour   string  optional  

Must be a valid date in the format H:i. Example: 08:05

arrivalTime   string  optional  

Must be a valid date in the format H:i. Example: 08:05

departureTime   string  optional  

Must be a valid date in the format H:i. Example: 08:05

type   string   

Example: numquam

reason   string  optional  

Example: ipsum

savingType   string   

Example: atque

Afficher une présence

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/presences/4" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/4"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/presences/{presence_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

presence_id   integer   

The ID of the presence. Example: 4

Modifier une présence

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/presences/16" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 5,
    \"hotel_id\": 2,
    \"date\": \"2026-05-18T08:05:42\",
    \"hour\": \"08:05\",
    \"arrivalTime\": \"08:05\",
    \"departureTime\": \"08:05\",
    \"type\": \"maxime\",
    \"reason\": \"tempora\",
    \"savingType\": \"odio\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/16"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 5,
    "hotel_id": 2,
    "date": "2026-05-18T08:05:42",
    "hour": "08:05",
    "arrivalTime": "08:05",
    "departureTime": "08:05",
    "type": "maxime",
    "reason": "tempora",
    "savingType": "odio"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/presences/{presence_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

presence_id   integer   

The ID of the presence. Example: 16

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 5

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 2

date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

hour   string  optional  

Must be a valid date in the format H:i. Example: 08:05

arrivalTime   string  optional  

Must be a valid date in the format H:i. Example: 08:05

departureTime   string  optional  

Must be a valid date in the format H:i. Example: 08:05

type   string  optional  

Example: maxime

reason   string  optional  

Example: tempora

savingType   string  optional  

Example: odio

Trash présences

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/presences/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        18
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        18
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/presences/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the presences table.

Restore présences

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/presences/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        17
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        17
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/presences/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the presences table.

Supprimer définitivement des présences

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/presences/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        11
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/presences/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        11
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/presences/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the presences table.

Evenements

Gestion des évènements

Lister les évènements

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/events/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 76,
    \"nbre_items\": 16,
    \"filter_value\": \"veritatis\",
    \"service_id\": 10,
    \"hotel_id\": 2,
    \"type\": \"external\",
    \"archive\": \"only_trashed\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 76,
    "nbre_items": 16,
    "filter_value": "veritatis",
    "service_id": 10,
    "hotel_id": 2,
    "type": "external",
    "archive": "only_trashed"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/events/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 76

nbre_items   integer  optional  

Example: 16

filter_value   string  optional  

Example: veritatis

service_id   integer  optional  

The id of an existing record in the services table. Example: 10

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 2

type   string  optional  

Example: external

Must be one of:
  • internal
  • external
archive   string  optional  

Example: only_trashed

Must be one of:
  • with_trashed
  • only_trashed

Afficher un évènement

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/events/2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events/2"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/events/{event_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

event_id   integer   

The ID of the event. Example: 2

Ajouter un évènement

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/events" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"erktfrtmnzgzscebxprqn\",
    \"description\": \"Rerum qui ea dolores quos quos.\",
    \"start_date\": \"2026-05-18\",
    \"end_date\": \"2050-06-18\",
    \"type\": \"internal\",
    \"budget\": \"sed\",
    \"hotel_id\": 7,
    \"service_id\": 19
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "erktfrtmnzgzscebxprqn",
    "description": "Rerum qui ea dolores quos quos.",
    "start_date": "2026-05-18",
    "end_date": "2050-06-18",
    "type": "internal",
    "budget": "sed",
    "hotel_id": 7,
    "service_id": 19
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/events

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Le champ value ne peut contenir plus de 200 caractères. Example: erktfrtmnzgzscebxprqn

description   string   

Example: Rerum qui ea dolores quos quos.

start_date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

end_date   string   

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: 2050-06-18

type   string   

Example: internal

Must be one of:
  • internal
  • external
parental_contribution   string  optional  
budget   string  optional  

Example: sed

hotel_id   integer   

The id of an existing record in the hotels table. Example: 7

service_id   integer  optional  

The id of an existing record in the services table. Example: 19

Modifier un évènement

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/events/2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"kttwqfjfonqmpubxozjn\",
    \"description\": \"Sunt deleniti qui deleniti occaecati fuga dolorem consequuntur.\",
    \"start_date\": \"2026-05-18\",
    \"end_date\": \"2069-04-24\",
    \"type\": \"external\",
    \"budget\": \"blanditiis\",
    \"hotel_id\": 11,
    \"service_id\": 10
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events/2"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "kttwqfjfonqmpubxozjn",
    "description": "Sunt deleniti qui deleniti occaecati fuga dolorem consequuntur.",
    "start_date": "2026-05-18",
    "end_date": "2069-04-24",
    "type": "external",
    "budget": "blanditiis",
    "hotel_id": 11,
    "service_id": 10
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/events/{event_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

event_id   integer   

The ID of the event. Example: 2

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 200 caractères. Example: kttwqfjfonqmpubxozjn

description   string  optional  

Example: Sunt deleniti qui deleniti occaecati fuga dolorem consequuntur.

start_date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

end_date   string  optional  

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: 2069-04-24

type   string  optional  

Example: external

Must be one of:
  • internal
  • external
parental_contribution   string  optional  
budget   string  optional  

Example: blanditiis

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 11

service_id   integer  optional  

The id of an existing record in the services table. Example: 10

Archiver un ou plusieurs events

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/events/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"event_ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "event_ids": [
        7
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/events/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

event_ids   integer[]   

The id of an existing record in the events table.

Restaurer un ou plusieurs events

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/events/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"event_ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/events/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "event_ids": [
        15
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/events/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

event_ids   integer[]   

The id of an existing record in the events table.

Hotels

Gestion des hotels de l'application

Lister les hotels de la plateforme

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/hotels/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 1,
    \"nbre_items\": 6,
    \"filter_value\": \"eos\",
    \"founder_id\": 6,
    \"manager_id\": 11,
    \"assistant_id\": 17,
    \"package_id\": 18
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 1,
    "nbre_items": 6,
    "filter_value": "eos",
    "founder_id": 6,
    "manager_id": 11,
    "assistant_id": 17,
    "package_id": 18
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "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
    }
}
 

Request      

POST api/hotels/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

required. Example: 1

nbre_items   integer  optional  

Example: 6

filter_value   string  optional  

Example: eos

founder_id   integer  optional  

The id of an existing record in the users table. Example: 6

manager_id   integer  optional  

The id of an existing record in the users table. Example: 11

assistant_id   integer  optional  

The id of an existing record in the users table. Example: 17

package_id   integer  optional  

The id of an existing record in the packages table. Example: 18

Afficher les informations sur un hotel

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/hotels/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/hotels/{hotel_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

hotel_id   integer   

The ID of the hotel. Example: 3

Créer un hôtel

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/hotels" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ipsam\",
    \"phone\": \"alias\",
    \"description\": \"Nisi et qui ut inventore ex consequuntur.\",
    \"stars\": 5,
    \"email\": \"smith.odessa@example.net\",
    \"address\": \"repudiandae\",
    \"website\": \"autem\",
    \"logo\": \"aliquid\",
    \"creation_date\": \"2026-05-18\",
    \"city\": \"rhajszqvkcjkjmpuqnawkfapd\",
    \"country\": \"mfrlkvpnaebhoezpicbpjykn\",
    \"type\": \"voluptatibus\",
    \"category\": \"sit\",
    \"founder_id\": 15,
    \"manager_id\": 13,
    \"assistant_id\": 3,
    \"package_id\": 9
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "ipsam",
    "phone": "alias",
    "description": "Nisi et qui ut inventore ex consequuntur.",
    "stars": 5,
    "email": "smith.odessa@example.net",
    "address": "repudiandae",
    "website": "autem",
    "logo": "aliquid",
    "creation_date": "2026-05-18",
    "city": "rhajszqvkcjkjmpuqnawkfapd",
    "country": "mfrlkvpnaebhoezpicbpjykn",
    "type": "voluptatibus",
    "category": "sit",
    "founder_id": 15,
    "manager_id": 13,
    "assistant_id": 3,
    "package_id": 9
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/hotels

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: ipsam

phone   string   

Example: alias

description   string   

Example: Nisi et qui ut inventore ex consequuntur.

stars   integer   

Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 5. Example: 5

email   string   

Le champ value doit être une address e-mail valide. Example: smith.odessa@example.net

address   string   

Example: repudiandae

website   string  optional  

Example: autem

logo   string  optional  

Example: aliquid

phone2   string  optional  
rib   string  optional  
niu   string  optional  
rc   string  optional  
creation_date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

city   string   

Le champ value ne peut contenir plus de 100 caractères. Example: rhajszqvkcjkjmpuqnawkfapd

country   string   

Le champ value ne peut contenir plus de 100 caractères. Example: mfrlkvpnaebhoezpicbpjykn

type   string  optional  

Example: voluptatibus

category   string  optional  

Example: sit

founder_id   integer   

The id of an existing record in the users table. Example: 15

manager_id   integer   

The id of an existing record in the users table. Example: 13

assistant_id   integer  optional  

The id of an existing record in the users table. Example: 3

package_id   integer   

Example: 9

Modifier les informations d'un hotel

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/hotels/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ratione\",
    \"phone\": \"in\",
    \"description\": \"Voluptatem id sunt qui dolorum nam omnis hic tempore.\",
    \"stars\": 2,
    \"email\": \"kaya57@example.com\",
    \"address\": \"nemo\",
    \"website\": \"totam\",
    \"logo\": \"cumque\",
    \"rib\": \"earum\",
    \"niu\": \"quidem\",
    \"rc\": \"qui\",
    \"creation_date\": \"2026-05-18\",
    \"city\": \"distinctio\",
    \"country\": \"iste\",
    \"type\": \"iure\",
    \"category\": \"commodi\",
    \"founder_id\": 13,
    \"manager_id\": 13,
    \"assistant_id\": 12,
    \"package_id\": 9
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "ratione",
    "phone": "in",
    "description": "Voluptatem id sunt qui dolorum nam omnis hic tempore.",
    "stars": 2,
    "email": "kaya57@example.com",
    "address": "nemo",
    "website": "totam",
    "logo": "cumque",
    "rib": "earum",
    "niu": "quidem",
    "rc": "qui",
    "creation_date": "2026-05-18",
    "city": "distinctio",
    "country": "iste",
    "type": "iure",
    "category": "commodi",
    "founder_id": 13,
    "manager_id": 13,
    "assistant_id": 12,
    "package_id": 9
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/hotels/{hotel_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

hotel_id   integer   

The ID of the hotel. Example: 3

Body Parameters

name   string  optional  

Example: ratione

phone   string  optional  

Example: in

description   string  optional  

Example: Voluptatem id sunt qui dolorum nam omnis hic tempore.

stars   integer  optional  

Le champ value doit être au moins 1. Le champ value ne peut être supérieur à 5. Example: 2

email   string  optional  

Le champ value doit être une address e-mail valide. Example: kaya57@example.com

address   string  optional  

Example: nemo

website   string  optional  

Example: totam

logo   string  optional  

Example: cumque

rib   string  optional  

Example: earum

niu   string  optional  

Example: quidem

rc   string  optional  

Example: qui

creation_date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

city   string  optional  

Example: distinctio

country   string  optional  

Example: iste

type   string  optional  

Example: iure

category   string  optional  

Example: commodi

founder_id   integer  optional  

The id of an existing record in the users table. Example: 13

manager_id   integer  optional  

The id of an existing record in the users table. Example: 13

assistant_id   integer  optional  

The id of an existing record in the users table. Example: 12

package_id   integer  optional  

Example: 9

Archiver un ou plusieurs hotel(s) NB: Un hotel ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/hotels/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        18
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        18
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/hotels/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the hotels table.

Restaurer un ou plusieurs hotel(s) de la corbeille

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/hotels/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        8
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        8
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/hotels/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Forcer la suppression d'un ou plusieurs hotel(s) du système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/hotels/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/hotels/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/hotels/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Mouvements d'articles

Gestion des mouvements d'articles

Lister les mouvements d'article en fonction du filtre

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/article-movements/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 80,
    \"nbre_items\": 3,
    \"filter_value\": \"architecto\",
    \"article_id\": 1,
    \"operation_type\": \"entry\",
    \"product_id\": 19,
    \"user_id\": 18,
    \"from_date\": \"2026-05-18T08:05:41\",
    \"to_date\": \"2099-03-03\",
    \"date_start\": \"2026-05-18T08:05:41\",
    \"date_end\": \"2059-12-29\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/article-movements/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 80,
    "nbre_items": 3,
    "filter_value": "architecto",
    "article_id": 1,
    "operation_type": "entry",
    "product_id": 19,
    "user_id": 18,
    "from_date": "2026-05-18T08:05:41",
    "to_date": "2099-03-03",
    "date_start": "2026-05-18T08:05:41",
    "date_end": "2059-12-29"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/article-movements/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 80

nbre_items   integer  optional  

Example: 3

filter_value   string  optional  

Example: architecto

article_id   integer  optional  

The id of an existing record in the articles table. Example: 1

operation_type   string  optional  

Example: entry

Must be one of:
  • entry
  • exit
product_id   integer  optional  

The id of an existing record in the products table. Example: 19

user_id   integer  optional  

The id of an existing record in the users table. Example: 18

from_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

to_date   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à from_date. Example: 2099-03-03

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

date_end   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à date_start. Example: 2059-12-29

Afficher un mouvement d'article spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/article-movements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/article-movements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/article-movements/{article_movement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

article_movement_id   integer   

The ID of the article movement. Example: 1

Mouvements des produits

Gestion des mouvements de produits

Lister les mouvements de produit en fonction du filtre

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/product-movements/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 65,
    \"nbre_items\": 17,
    \"filter_value\": \"totam\",
    \"product_id\": 13,
    \"service_id\": 6,
    \"operation_type\": \"exit\",
    \"user_id\": 17,
    \"date_start\": \"2026-05-18T08:05:41\",
    \"date_end\": \"2027-03-12\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/product-movements/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 65,
    "nbre_items": 17,
    "filter_value": "totam",
    "product_id": 13,
    "service_id": 6,
    "operation_type": "exit",
    "user_id": 17,
    "date_start": "2026-05-18T08:05:41",
    "date_end": "2027-03-12"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/product-movements/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 65

nbre_items   integer  optional  

Example: 17

filter_value   string  optional  

Example: totam

product_id   integer  optional  

The id of an existing record in the products table. Example: 13

service_id   integer  optional  

The id of an existing record in the services table. Example: 6

operation_type   string  optional  

Example: exit

Must be one of:
  • entry
  • exit
user_id   integer  optional  

The id of an existing record in the users table. Example: 17

date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

date_end   string  optional  

Le champ value doit être une date valide. Le champ value doit être une date après ou égale à date_start. Example: 2027-03-12

Effectuer un mouvement de produit (possibilité d'en créer)

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/product-movements" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"quantity\": 19,
    \"description\": \"Ut est ab consectetur rerum eveniet.\",
    \"operation_type\": \"entry\",
    \"product_id\": 14
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/product-movements"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "quantity": 19,
    "description": "Ut est ab consectetur rerum eveniet.",
    "operation_type": "entry",
    "product_id": 14
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/product-movements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

quantity   integer   

Example: 19

description   string  optional  

Example: Ut est ab consectetur rerum eveniet.

operation_type   string   

Example: entry

Must be one of:
  • entry
  • exit
product_id   integer   

The id of an existing record in the products table. Example: 14

Afficher un mouvement de produit spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/product-movements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/product-movements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/product-movements/{product_movement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

product_movement_id   integer   

The ID of the product movement. Example: 1

Packages / Forfaits

Gestion des packages / forfaits

Lister les packages / forfaits disponibles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/packages/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 73,
    \"nbre_items\": 18,
    \"filter_value\": \"vitae\",
    \"website\": false,
    \"support_type\": \"premium\",
    \"electronic_payment\": false,
    \"mail_pro\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 73,
    "nbre_items": 18,
    "filter_value": "vitae",
    "website": false,
    "support_type": "premium",
    "electronic_payment": false,
    "mail_pro": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/packages/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 73

nbre_items   integer  optional  

Example: 18

filter_value   string  optional  

Example: vitae

website   boolean  optional  

Example: false

support_type   string  optional  

Example: premium

Must be one of:
  • classic
  • premium
electronic_payment   boolean  optional  

Example: false

mail_pro   boolean  optional  

Example: true

Afficher les informations sur un package

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/packages/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/packages/{package_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

package_id   integer   

The ID of the package. Example: 1

Créer un package / forfait

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/packages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"autem\",
    \"amount\": \"voluptatibus\",
    \"website\": false,
    \"support_type\": \"premium\",
    \"electronic_payment\": false,
    \"mail_pro\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "autem",
    "amount": "voluptatibus",
    "website": false,
    "support_type": "premium",
    "electronic_payment": false,
    "mail_pro": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/packages

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: autem

amount   string   

Example: voluptatibus

website   boolean   

Example: false

support_type   string   

Example: premium

Must be one of:
  • classic
  • premium
electronic_payment   boolean   

Example: false

mail_pro   boolean   

Example: true

Modifier les informations d'un package

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/packages/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ad\",
    \"website\": true,
    \"support_type\": \"classic\",
    \"electronic_payment\": true,
    \"mail_pro\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "ad",
    "website": true,
    "support_type": "classic",
    "electronic_payment": true,
    "mail_pro": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/packages/{package_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

package_id   integer   

The ID of the package. Example: 1

Body Parameters

name   string  optional  

Example: ad

amount   string  optional  
website   boolean  optional  

Example: true

support_type   string  optional  

Example: classic

Must be one of:
  • classic
  • premium
electronic_payment   boolean  optional  

Example: true

mail_pro   boolean  optional  

Example: true

Fonction pour le multiple archivage des packages

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/packages/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/packages/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des packages

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/packages/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        18
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        18
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/packages/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des packages

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/packages/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/packages/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/packages/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Paiements MTN Mobile Money

API pour la gestion des paiements via MTN Mobile Money (Cameroun).

Webhook MTN

requires authentication

Reçoit les notifications asynchrones de MTN Mobile Money.

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/webhook" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/webhook"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/payments/mtn/webhook

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Initier un paiement MTN

requires authentication

Lance une demande de Push STK MTN vers le mobile du client.

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/initiate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"booking_id\": 1,
    \"order_id_hms\": 12,
    \"service_id\": 5,
    \"amount\": 5000,
    \"payment_mode\": \"MTN Mobile Money\",
    \"phonePayeur\": \"670000000\",
    \"reference\": \"Réservation Suite 204\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/initiate"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "booking_id": 1,
    "order_id_hms": 12,
    "service_id": 5,
    "amount": 5000,
    "payment_mode": "MTN Mobile Money",
    "phonePayeur": "670000000",
    "reference": "Réservation Suite 204"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/payments/mtn/initiate

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

booking_id   integer  optional  

ID de la réservation (optionnel). Example: 1

order_id_hms   integer  optional  

ID de la commande HMS (optionnel). Example: 12

service_id   integer  optional  

ID du service direct (optionnel). Example: 5

amount   number   

Montant de la transaction. Example: 5000

payment_mode   string   

Mode de paiement (MTN Mobile Money). Example: MTN Mobile Money

phonePayeur   string   

Numéro MTN du payeur (format 6xxxxxxxx). Example: 670000000

reference   string  optional  

Référence personnalisée. Example: Réservation Suite 204

Vérifier le statut (MTN)

requires authentication

Permet de consulter l'état d'un paiement MTN. Si réussi, un encaissement (CashIn) est créé.

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/payments/mtn/status/molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/status/molestiae"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/payments/mtn/status/{transaction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transaction   string   

Example: molestiae

id   integer   

ID de la transaction HMS. Example: 2

Statistiques MTN

requires authentication

Fournit des statistiques sur les paiements MTN Mobile Money.

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/statistics" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"idEstablishment\": 1,
    \"start_date\": \"2023-01-01\",
    \"end_date\": \"2023-12-31\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/mtn/statistics"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "idEstablishment": 1,
    "start_date": "2023-01-01",
    "end_date": "2023-12-31"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/payments/mtn/statistics

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

idEstablishment   integer  optional  

ID de l'établissement (optionnel). Example: 1

start_date   string  optional  

Date de début (optionnel). Example: 2023-01-01

end_date   string  optional  

Date de fin (optionnel). Example: 2023-12-31

Paiements Orange Money

Contrôleur pour la gestion des paiements via Orange Money (Cameroun). Supporte les paiements Web (redirection vers page Orange) et Mobile Push (STK).

Fonctionnalités :

Webhook Orange Money

requires authentication

Reçoit les notifications asynchrones d'Orange Money pour les paiements Web et Mobile.

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/payments/orange/callback" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/orange/callback"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/payments/orange/callback

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Initiation d'un paiement Mobile Orange (STK Push)

requires authentication

Déclenche un paiement push sur le téléphone du client via l'API mobile Orange. Le client reçoit une notification USSD demandant confirmation avec son PIN.

Étapes :

  1. Vérification du solde et validation des données
  2. Création de l'enregistrement Transaction
  3. Initialisation via l'API /mp/init
  4. Déclenchement du paiement via /mp/pay
Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/payments/orange/initiate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"booking_id\": 1,
    \"order_id_hms\": 12,
    \"service_id\": 5,
    \"amount\": 5000,
    \"payment_mode\": \"Orange Money\",
    \"phonePayeur\": \"690000000\",
    \"reference\": \"Paiement Chambre 102\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/orange/initiate"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "booking_id": 1,
    "order_id_hms": 12,
    "service_id": 5,
    "amount": 5000,
    "payment_mode": "Orange Money",
    "phonePayeur": "690000000",
    "reference": "Paiement Chambre 102"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "idTransaction": 123,
    "status": "PENDING"
}
 

Example response (400):


{
    "error": "Numéro bénéficiaire incorrect"
}
 

Request      

POST api/payments/orange/initiate

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

booking_id   integer  optional  

ID de la réservation (optionnel). Example: 1

order_id_hms   integer  optional  

ID de la commande HMS (optionnel). Example: 12

service_id   integer  optional  

ID du service direct (optionnel). Example: 5

amount   number   

Montant de la transaction. Example: 5000

payment_mode   string   

Mode de paiement (Orange Money). Example: Orange Money

phonePayeur   string   

Numéro Orange du payeur (format 6xxxxxxxx). Example: 690000000

reference   string  optional  

Référence personnalisée. Example: Paiement Chambre 102

Vérifier le statut (Orange)

requires authentication

Permet de consulter l'état final d'une transaction. Si la transaction est réussie, un encaissement (CashIn) est automatiquement généré.

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/payments/orange/status/explicabo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/payments/orange/status/explicabo"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/payments/orange/status/{transaction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transaction   string   

Example: explicabo

id   integer   

ID de la transaction HMS. Example: 1

Paramètres Généraux

Gestion des paramètres généraux dans l'application

Lister les paramètres globaux de l'app

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/settings/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 89,
    \"nbre_items\": 20,
    \"filter_value\": \"vel\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/settings/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 89,
    "nbre_items": 20,
    "filter_value": "vel"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/settings/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 89

nbre_items   integer  optional  

Example: 20

filter_value   string  optional  

Example: vel

Afficher les détails d'un paramètre global

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/settings/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/settings/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/settings/{setting_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

setting_id   integer   

The ID of the setting. Example: 1

Modifier la valeur d'un paramètre global

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/settings/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"value\": \"ad\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/settings/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "value": "ad"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/settings/{setting_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

setting_id   integer   

The ID of the setting. Example: 1

Body Parameters

value   string   

Example: ad

Permissions

Gestion des permissions

Afficher la liste des permissions

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permissions/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 61,
    \"nbre_items\": 15,
    \"filter_value\": \"est\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 61,
    "nbre_items": 15,
    "filter_value": "est"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permissions/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 61

nbre_items   integer  optional  

Example: 15

filter_value   string  optional  

Example: est

Ajouter une liste de permission

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"permissions\": [
        {
            \"name\": \"et\",
            \"description\": \"Dolor minima asperiores ipsum voluptates est vel temporibus.\",
            \"ressource\": \"quisquam\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "permissions": [
        {
            "name": "et",
            "description": "Dolor minima asperiores ipsum voluptates est vel temporibus.",
            "ressource": "quisquam"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

permissions   object[]   

Le champ value doit contenir au moins 1 éléments.

name   string   

Example: et

description   string  optional  

Example: Dolor minima asperiores ipsum voluptates est vel temporibus.

ressource   string   

Example: quisquam

Afficher une permission spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/permissions/deleniti" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/deleniti"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/permissions/{permission}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

permission   string   

The permission. Example: deleniti

Mettre a jour une permission spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/permissions/facere" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"voluptas\",
    \"permissions\": [
        {
            \"description\": \"Distinctio excepturi qui nam in ipsum aliquam sunt.\",
            \"ressource\": \"beatae\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/facere"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "voluptas",
    "permissions": [
        {
            "description": "Distinctio excepturi qui nam in ipsum aliquam sunt.",
            "ressource": "beatae"
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/permissions/{permission}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

permission   string   

The permission. Example: facere

Body Parameters

name   string   

Example: voluptas

permissions   object[]  optional  
description   string  optional  

Example: Distinctio excepturi qui nam in ipsum aliquam sunt.

ressource   string  optional  

Example: beatae

Fonction pour le multiple archivage des permissions

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permissions/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        19
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        19
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permissions/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des permissions

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permissions/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permissions/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des permissions

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/permissions/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        4
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/permissions/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        4
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/permissions/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Presence du personnel / Staff presence

Gestion des présences du personnel

Afficher la liste filtrée des présences du personnel

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/staff-presences/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 8,
    \"nbre_items\": 15,
    \"filter_value\": \"ea\",
    \"type\": \"employ\",
    \"scan_per_course\": false,
    \"saving_type\": \"manual\",
    \"user_id\": 13,
    \"date\": \"2026-05-18T08:05:42\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 8,
    "nbre_items": 15,
    "filter_value": "ea",
    "type": "employ",
    "scan_per_course": false,
    "saving_type": "manual",
    "user_id": 13,
    "date": "2026-05-18T08:05:42"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/staff-presences/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 8

nbre_items   integer  optional  

Example: 15

filter_value   string  optional  

Example: ea

type   string  optional  

Example: employ

Must be one of:
  • staff
  • employ
scan_per_course   boolean  optional  

Example: false

saving_type   string  optional  

Example: manual

Must be one of:
  • manual
  • qr_code
user_id   integer  optional  

The id of an existing record in the users table. Example: 13

date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

Display the specified resource.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/staff-presences/12" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/12"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/staff-presences/{staff_presence_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

staff_presence_id   integer   

The ID of the staff presence. Example: 12

Enregistrer une nouvelle présence de personnel.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/staff-presences" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 8,
    \"scan_per_course\": true,
    \"type\": \"employ\",
    \"date\": \"2026-05-18T08:05:42\",
    \"arrival_time\": \"08:05:42\",
    \"departure_time\": \"08:05:42\",
    \"reason\": \"eum\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 8,
    "scan_per_course": true,
    "type": "employ",
    "date": "2026-05-18T08:05:42",
    "arrival_time": "08:05:42",
    "departure_time": "08:05:42",
    "reason": "eum"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/staff-presences

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer   

The id of an existing record in the users table. Example: 8

scan_per_course   boolean   

Example: true

type   string   

Example: employ

Must be one of:
  • staff
  • employ
date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

arrival_time   string  optional  

Must be a valid date in the format H:i:s. Example: 08:05:42

departure_time   string  optional  

Must be a valid date in the format H:i:s. Example: 08:05:42

reason   string  optional  

Example: eum

Modifier une présence du personnel

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/staff-presences/5" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 13,
    \"scan_per_course\": true,
    \"type\": \"employ\",
    \"date\": \"2026-05-18T08:05:42\",
    \"time\": \"08:05:42\",
    \"arrival_time\": \"08:05:42\",
    \"departure_time\": \"08:05:42\",
    \"reason\": \"est\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/5"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 13,
    "scan_per_course": true,
    "type": "employ",
    "date": "2026-05-18T08:05:42",
    "time": "08:05:42",
    "arrival_time": "08:05:42",
    "departure_time": "08:05:42",
    "reason": "est"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/staff-presences/{staff_presence_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

staff_presence_id   integer   

The ID of the staff presence. Example: 5

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 13

scan_per_course   boolean  optional  

Example: true

type   string  optional  

Example: employ

Must be one of:
  • staff
  • employ
date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

time   string  optional  

Must be a valid date in the format H:i:s. Example: 08:05:42

arrival_time   string  optional  

Must be a valid date in the format H:i:s. Example: 08:05:42

departure_time   string  optional  

Must be a valid date in the format H:i:s. Example: 08:05:42

reason   string  optional  

Example: est

Archiver (soft delete) les presences spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/staff-presences/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/staff-presences/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les staff_presences archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/staff-presences/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        20
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        20
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/staff-presences/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les staff_presences spécifiés.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/staff-presences/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/staff-presences/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/staff-presences/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Produits

Gestion des produits

Afficher la liste des produits

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/products/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 19,
    \"nbre_items\": 7,
    \"filter_value\": \"sit\",
    \"article_ids\": [
        16
    ],
    \"type\": \"storable\",
    \"expired\": false,
    \"service_id\": 7,
    \"hotel_id\": 15
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 19,
    "nbre_items": 7,
    "filter_value": "sit",
    "article_ids": [
        16
    ],
    "type": "storable",
    "expired": false,
    "service_id": 7,
    "hotel_id": 15
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/products/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 19

nbre_items   integer  optional  

Example: 7

filter_value   string  optional  

Example: sit

article_ids   integer[]  optional  

The id of an existing record in the articles table.

type   string  optional  

Example: storable

Must be one of:
  • consumable
  • storable
expired   boolean  optional  

Example: false

service_id   integer  optional  

The id of an existing record in the services table. Example: 7

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 15

Ajouter de nouveaux produits

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/products" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"qui\",
    \"type\": \"consumable\",
    \"image\": \"aspernatur\",
    \"price\": 7,
    \"manufacturing_cost\": 58,
    \"description\": \"Culpa rerum eveniet autem deleniti.\",
    \"alert_quantity\": 18,
    \"status\": \"pending\",
    \"quantity\": 19,
    \"expiry_date\": \"2026-05-18T08:05:41\",
    \"service_id\": 3,
    \"articles\": [
        {
            \"id\": 10,
            \"quantity\": 76
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "qui",
    "type": "consumable",
    "image": "aspernatur",
    "price": 7,
    "manufacturing_cost": 58,
    "description": "Culpa rerum eveniet autem deleniti.",
    "alert_quantity": 18,
    "status": "pending",
    "quantity": 19,
    "expiry_date": "2026-05-18T08:05:41",
    "service_id": 3,
    "articles": [
        {
            "id": 10,
            "quantity": 76
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/products

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: qui

type   string   

Example: consumable

Must be one of:
  • consumable
  • storable
image   string  optional  

Example: aspernatur

price   number   

Example: 7

manufacturing_cost   number  optional  

Le champ value doit être au moins 0. Example: 58

description   string  optional  

Example: Culpa rerum eveniet autem deleniti.

alert_quantity   integer  optional  

Example: 18

status   string  optional  

Example: pending

Must be one of:
  • pending
  • validated
quantity   integer  optional  

Le champ value doit être au moins 0. Example: 19

expiry_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

service_id   integer  optional  

The id of an existing record in the services table. Example: 3

articles   object[]   

Le champ value doit contenir au moins 1 éléments.

id   integer   

The id of an existing record in the articles table. Example: 10

quantity   number   

Le champ value doit être au moins 0. Example: 76

Afficher un produit spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/products/13" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/13"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/products/{product_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

product_id   integer   

The ID of the product. Example: 13

Modifier un produit spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/products/13" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"aliquam\",
    \"type\": \"storable\",
    \"image\": \"qui\",
    \"price\": 3,
    \"manufacturing_cost\": 3,
    \"description\": \"A ad consequatur iste facilis perspiciatis.\",
    \"alert_quantity\": 13,
    \"status\": \"pending\",
    \"quantity\": 44,
    \"expiry_date\": \"2026-05-18T08:05:41\",
    \"service_id\": 11,
    \"articles\": [
        {
            \"id\": 8,
            \"quantity\": 70
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/13"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "aliquam",
    "type": "storable",
    "image": "qui",
    "price": 3,
    "manufacturing_cost": 3,
    "description": "A ad consequatur iste facilis perspiciatis.",
    "alert_quantity": 13,
    "status": "pending",
    "quantity": 44,
    "expiry_date": "2026-05-18T08:05:41",
    "service_id": 11,
    "articles": [
        {
            "id": 8,
            "quantity": 70
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/products/{product_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

product_id   integer   

The ID of the product. Example: 13

Body Parameters

name   string  optional  

Example: aliquam

type   string  optional  

Example: storable

Must be one of:
  • consumable
  • storable
image   string  optional  

Example: qui

price   number  optional  

Example: 3

manufacturing_cost   number  optional  

Le champ value doit être au moins 0. Example: 3

description   string  optional  

Example: A ad consequatur iste facilis perspiciatis.

alert_quantity   integer  optional  

Example: 13

status   string  optional  

Example: pending

Must be one of:
  • pending
  • validated
quantity   integer  optional  

Le champ value doit être au moins 0. Example: 44

expiry_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

service_id   integer  optional  

The id of an existing record in the services table. Example: 11

articles   object[]  optional  

Le champ value doit contenir au moins 1 éléments.

id   integer  optional  

The id of an existing record in the articles table. Example: 8

quantity   integer  optional  

Le champ value doit être au moins 1. Example: 70

Fonction pour le multiple archivage des products

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/products/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        3
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        3
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/products/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des products

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/products/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        12
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        12
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/products/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des products

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/products/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/products/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/products/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Punitions

Gestion des punitions

Liste les sanctions avec filtrage par utilisateur, type ou valeur de recherche.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/punishments/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 55,
    \"nbre_items\": 14,
    \"filter_value\": \"rerum\",
    \"hotel_id\": 14,
    \"service_id\": 14,
    \"user_id\": 18,
    \"type\": 6
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 55,
    "nbre_items": 14,
    "filter_value": "rerum",
    "hotel_id": 14,
    "service_id": 14,
    "user_id": 18,
    "type": 6
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/punishments/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 55

nbre_items   integer  optional  

Example: 14

filter_value   string  optional  

Example: rerum

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 14

service_id   integer  optional  

The id of an existing record in the services table. Example: 14

user_id   integer  optional  

The id of an existing record in the users table. Example: 18

type   integer  optional  

Example: 6

Affiche les détails d'une sanction spécifique.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/punishments/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/punishments/{punishment_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

punishment_id   integer   

The ID of the punishment. Example: 6

Crée une ou plusieurs sanctions à partir des données fournies.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/punishments" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"punishments\": [
        {
            \"description\": \"Quibusdam vitae ex qui qui.\",
            \"user_id\": 9,
            \"type\": \"a\",
            \"reasons\": \"animi\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "punishments": [
        {
            "description": "Quibusdam vitae ex qui qui.",
            "user_id": 9,
            "type": "a",
            "reasons": "animi"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/punishments

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

punishments   object[]   

Le champ value doit contenir au moins 1 éléments.

description   string  optional  

Example: Quibusdam vitae ex qui qui.

user_id   integer   

The id of an existing record in the users table. Example: 9

type   string   

Example: a

reasons   string   

Example: animi

Met à jour les informations d'une sanction existante.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/punishments/17" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"description\": \"Sint dolor consequatur occaecati ratione molestiae laborum.\",
    \"user_id\": 5,
    \"type\": \"repudiandae\",
    \"reasons\": \"corrupti\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/17"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "description": "Sint dolor consequatur occaecati ratione molestiae laborum.",
    "user_id": 5,
    "type": "repudiandae",
    "reasons": "corrupti"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/punishments/{punishment_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

punishment_id   integer   

The ID of the punishment. Example: 17

Body Parameters

description   string  optional  

Example: Sint dolor consequatur occaecati ratione molestiae laborum.

user_id   integer  optional  

The id of an existing record in the users table. Example: 5

type   string  optional  

Example: repudiandae

reasons   string  optional  

Example: corrupti

Met en corbeille (soft delete) une ou plusieurs sanctions.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/punishments/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"punishment_ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "punishment_ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/punishments/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

punishment_ids   integer[]   

The id of an existing record in the punishments table.

Restaure une ou plusieurs sanctions mises en corbeille.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/punishments/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"punishment_ids\": [
        14
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "punishment_ids": [
        14
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/punishments/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

punishment_ids   integer[]   

The id of an existing record in the punishments table.

Supprime définitivement une ou plusieurs sanctions mises en corbeille.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/punishments/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"punishment_ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/punishments/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "punishment_ids": [
        7
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/punishments/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

punishment_ids   integer[]   

The id of an existing record in the punishments table.

Retenue sur salaire / Salary deduction

Gestion des retenus sur salaire

Afficher la liste filtrée des retenues sur salaire

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 46,
    \"nbre_items\": 2,
    \"filter_value\": \"blanditiis\",
    \"user_id\": 14,
    \"user_approve_id\": 14,
    \"trashed\": false,
    \"date\": \"2026-05-18\",
    \"status\": \"approved\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 46,
    "nbre_items": 2,
    "filter_value": "blanditiis",
    "user_id": 14,
    "user_approve_id": 14,
    "trashed": false,
    "date": "2026-05-18",
    "status": "approved"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-deductions/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 46

nbre_items   integer  optional  

Example: 2

filter_value   string  optional  

Example: blanditiis

user_id   integer  optional  

The id of an existing record in the users table. Example: 14

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 14

trashed   boolean  optional  

Example: false

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

status   string  optional  

Example: approved

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected

Afficher une retenue sur salaire spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/salaries-deductions/12" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/12"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/salaries-deductions/{salary_deduction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

salary_deduction   integer   

Example: 12

Show the form for creating a new resource.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"salary_deductions\": [
        {
            \"user_id\": \"unde\",
            \"user_approve_id\": 20,
            \"amount\": 76,
            \"date\": \"2026-05-18T08:05:42\",
            \"status\": \"in_progress\",
            \"reason\": \"et\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "salary_deductions": [
        {
            "user_id": "unde",
            "user_approve_id": 20,
            "amount": 76,
            "date": "2026-05-18T08:05:42",
            "status": "in_progress",
            "reason": "et"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-deductions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

salary_deductions   object[]   
user_id   string   

The id of an existing record in the users table. Example: unde

user_approve_id   integer   

The id of an existing record in the users table. Example: 20

amount   number   

Le champ value doit être au moins 0. Example: 76

date   string   

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

status   string  optional  

Example: in_progress

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected
reason   string   

Example: et

Mettre à jour une retenue sur salaire spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/14" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 15,
    \"user_approve_id\": 8,
    \"reason\": \"omnis\",
    \"date\": \"2026-05-18\",
    \"status\": \"in_progress\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/14"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 15,
    "user_approve_id": 8,
    "reason": "omnis",
    "date": "2026-05-18",
    "status": "in_progress"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/salaries-deductions/{salary_deduction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

salary_deduction   integer   

Example: 14

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 15

user_approve_id   integer  optional  

The id of an existing record in the users table. Example: 8

amount   string  optional  
reason   string  optional  

Example: omnis

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

status   string  optional  

Example: in_progress

Must be one of:
  • pending_approval
  • in_progress
  • approved
  • rejected

Archiver (soft delete) les retenues sur salaire spécifiées.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        7
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-deductions/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les feedbacks archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        11
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        11
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/salaries-deductions/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les feedbacks spécifiés.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        17
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/salaries-deductions/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        17
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/salaries-deductions/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Réductions

Gestion des réductions

Afficher la liste des réductions

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reductions/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 77,
    \"nbre_items\": 25,
    \"filter_value\": \"qfastkmio\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 77,
    "nbre_items": 25,
    "filter_value": "qfastkmio"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/reductions/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 77

nbre_items   integer  optional  

Le champ value doit être au moins 1. Example: 25

filter_value   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: qfastkmio

Enregistrer une nouvelle réduction

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reductions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"okfadgrbnbxkiezsezxcwu\",
    \"description\": \"Dignissimos ea ex modi repellat corrupti assumenda veritatis.\",
    \"amount\": 25
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "okfadgrbnbxkiezsezxcwu",
    "description": "Dignissimos ea ex modi repellat corrupti assumenda veritatis.",
    "amount": 25
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/reductions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Le champ value ne peut contenir plus de 255 caractères. Example: okfadgrbnbxkiezsezxcwu

description   string  optional  

Example: Dignissimos ea ex modi repellat corrupti assumenda veritatis.

amount   number   

Le champ value doit être au moins 0. Example: 25

Afficher les détails d'une réduction

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/reductions/autem" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/autem"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/reductions/{reduction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reduction   string   

The reduction. Example: autem

Mettre à jour une réduction

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/reductions/labore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"jisvwxpftzoajzayumzthb\",
    \"description\": \"Illum corporis quia ipsum consectetur consequatur sed iure.\",
    \"amount\": 88
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/labore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "jisvwxpftzoajzayumzthb",
    "description": "Illum corporis quia ipsum consectetur consequatur sed iure.",
    "amount": 88
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/reductions/{reduction}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

reduction   string   

The reduction. Example: labore

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: jisvwxpftzoajzayumzthb

description   string  optional  

Example: Illum corporis quia ipsum consectetur consequatur sed iure.

amount   number  optional  

Le champ value doit être au moins 0. Example: 88

Afficher la corbeille des réductions supprimées

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reductions/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/reductions/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   string[]  optional  

The id of an existing record in the reductions table.

Restaurer une réduction supprimée

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reductions/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/reductions/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   string[]  optional  

The id of an existing record in the reductions table.

Supprimer une réduction (soft delete)

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/reductions/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/reductions/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/reductions/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   string[]  optional  

The id of an existing record in the reductions table.

Réservations

Gestion des réservations

Afficher la liste des réservations

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/bookings/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 41,
    \"nbre_items\": 19,
    \"filter_value\": \"quia\",
    \"hotel_id\": 16,
    \"room_type_id\": 12,
    \"room_category_id\": 8,
    \"room_id\": 19,
    \"user_id\": 9,
    \"status\": \"sit\",
    \"payment_status\": \"completed\",
    \"room_service_id\": 4,
    \"date\": \"2026-05-18\",
    \"date_start\": \"2026-05-18\",
    \"date_end\": \"2026-05-18\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 41,
    "nbre_items": 19,
    "filter_value": "quia",
    "hotel_id": 16,
    "room_type_id": 12,
    "room_category_id": 8,
    "room_id": 19,
    "user_id": 9,
    "status": "sit",
    "payment_status": "completed",
    "room_service_id": 4,
    "date": "2026-05-18",
    "date_start": "2026-05-18",
    "date_end": "2026-05-18"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/bookings/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 41

nbre_items   integer  optional  

Example: 19

filter_value   string  optional  

Example: quia

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 16

room_type_id   integer  optional  

The id of an existing record in the room_types table. Example: 12

room_category_id   integer  optional  

The id of an existing record in the room_categories table. Example: 8

room_id   integer  optional  

The id of an existing record in the rooms table. Example: 19

user_id   integer  optional  

The id of an existing record in the users table. Example: 9

status   string  optional  

Example: sit

payment_status   string  optional  

Example: completed

Must be one of:
  • none
  • advance
  • completed
room_service_id   integer  optional  

The id of an existing record in the room_services table. Example: 4

date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

date_start   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

date_end   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

Enregistrer une nouvelle réservation

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/bookings" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-05-18\",
    \"end_date\": \"2026-05-18\",
    \"user_id\": 18,
    \"type\": \"sieste\",
    \"transport_mode\": \"tzumbbldsifhzyvqvhqec\",
    \"vehicle_number\": \"p\",
    \"arrival_time\": \"2026-05-18T08:05:41\",
    \"departure_time\": \"2026-05-18T08:05:41\",
    \"arrivals\": \"cdn\",
    \"is_free\": false,
    \"reduction_id\": 20,
    \"reduction_amount\": 1
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "start_date": "2026-05-18",
    "end_date": "2026-05-18",
    "user_id": 18,
    "type": "sieste",
    "transport_mode": "tzumbbldsifhzyvqvhqec",
    "vehicle_number": "p",
    "arrival_time": "2026-05-18T08:05:41",
    "departure_time": "2026-05-18T08:05:41",
    "arrivals": "cdn",
    "is_free": false,
    "reduction_id": 20,
    "reduction_amount": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/bookings

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

start_date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

end_date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

user_id   integer   

The id of an existing record in the users table. Example: 18

type   string  optional  

Example: sieste

Must be one of:
  • nuite
  • sieste
transport_mode   string  optional  

Le champ value ne peut contenir plus de 50 caractères. Example: tzumbbldsifhzyvqvhqec

vehicle_number   string  optional  

Le champ value ne peut contenir plus de 100 caractères. Example: p

arrival_time   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

departure_time   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

arrivals   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: cdn

is_free   boolean  optional  

Example: false

reduction_id   integer  optional  

The id of an existing record in the reductions table. Example: 20

reduction_amount   number  optional  

Le champ value doit être au moins 0. Example: 1

rooms   string[]  optional  

The id of an existing record in the rooms table.

Mettre à jour une réservation

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/bookings/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"start_date\": \"2026-05-18T08:05:41\",
    \"end_date\": \"2035-12-11\",
    \"user_id\": 8,
    \"room_service_id\": 6,
    \"transport_mode\": \"dywxwmzvhcuvkgpllcslwkgg\",
    \"vehicle_number\": \"lmpsqkudifihhmeklyanh\",
    \"arrival_time\": \"2026-05-18T08:05:41\",
    \"departure_time\": \"2026-05-18T08:05:41\",
    \"arrivals\": \"atmnoxydcyv\",
    \"is_free\": false,
    \"reduction_id\": 1,
    \"reduction_amount\": 65,
    \"rooms\": [
        \"non\"
    ],
    \"type\": \"sieste\",
    \"status\": \"checked_in\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "start_date": "2026-05-18T08:05:41",
    "end_date": "2035-12-11",
    "user_id": 8,
    "room_service_id": 6,
    "transport_mode": "dywxwmzvhcuvkgpllcslwkgg",
    "vehicle_number": "lmpsqkudifihhmeklyanh",
    "arrival_time": "2026-05-18T08:05:41",
    "departure_time": "2026-05-18T08:05:41",
    "arrivals": "atmnoxydcyv",
    "is_free": false,
    "reduction_id": 1,
    "reduction_amount": 65,
    "rooms": [
        "non"
    ],
    "type": "sieste",
    "status": "checked_in"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/bookings/{booking_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

booking_id   integer   

The ID of the booking. Example: 6

Body Parameters

start_date   string   

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

end_date   string   

Le champ value doit être une date valide. Le champ value doit être une date après start_date. Example: 2035-12-11

user_id   integer   

The id of an existing record in the users table. Example: 8

room_service_id   integer  optional  

The id of an existing record in the room_services table. Example: 6

transport_mode   string  optional  

Le champ value ne peut contenir plus de 50 caractères. Example: dywxwmzvhcuvkgpllcslwkgg

vehicle_number   string  optional  

Le champ value ne peut contenir plus de 100 caractères. Example: lmpsqkudifihhmeklyanh

arrival_time   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

departure_time   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

arrivals   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: atmnoxydcyv

is_free   boolean  optional  

Example: false

reduction_id   integer  optional  

The id of an existing record in the reductions table. Example: 1

reduction_amount   number  optional  

Le champ value doit être au moins 0. Example: 65

rooms   string[]   

The id of an existing record in the rooms table.

type   string  optional  

Example: sieste

Must be one of:
  • nuite
  • sieste
status   string  optional  

Example: checked_in

Must be one of:
  • pending
  • confirmed
  • checked_in
  • checked_out
  • cancelled
  • no_show
  • refunded
  • draft
  • expired

Fonction pour le multiple archivage des Reservations

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/bookings/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/bookings/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des Reservations

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/bookings/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        10
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/bookings/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des Reservations

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/bookings/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        20
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/bookings/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        20
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/bookings/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Rôles

Gestion des rôles

Lister les roles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/roles/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 17,
    \"nbre_items\": 10,
    \"filter_value\": \"ut\",
    \"types\": [
        \"velit\"
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 17,
    "nbre_items": 10,
    "filter_value": "ut",
    "types": [
        "velit"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/roles/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 17

nbre_items   integer  optional  

Example: 10

filter_value   string  optional  

Example: ut

types   string[]  optional  

Ajouter une liste de role

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"molestiae\",
    \"permissions\": [
        13
    ],
    \"description\": \"Nemo vero sunt necessitatibus quasi.\",
    \"type\": \"quia\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "molestiae",
    "permissions": [
        13
    ],
    "description": "Nemo vero sunt necessitatibus quasi.",
    "type": "quia"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: molestiae

permissions   integer[]   

The id of an existing record in the permissions table.

description   string  optional  

Example: Nemo vero sunt necessitatibus quasi.

type   string  optional  

Example: quia

Afficher un role spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/roles/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/roles/{role_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

role_id   integer   

The ID of the role. Example: 1

Modifier ou un role spécifique

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/roles/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"voluptatum\",
    \"permissions\": [
        2
    ],
    \"description\": \"Adipisci ipsam minus reiciendis.\",
    \"type\": \"eveniet\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "voluptatum",
    "permissions": [
        2
    ],
    "description": "Adipisci ipsam minus reiciendis.",
    "type": "eveniet"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/roles/{role_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

role_id   integer   

The ID of the role. Example: 1

Body Parameters

name   string  optional  

Example: voluptatum

permissions   integer[]  optional  

The id of an existing record in the permissions table.

description   string  optional  

Example: Adipisci ipsam minus reiciendis.

type   string  optional  

Example: eveniet

Fonction pour le multiple archivage des roles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/roles/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        14
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        14
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/roles/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des roles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/roles/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        7
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/roles/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des roles

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/roles/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        20
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/roles/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        20
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/roles/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Service de chambre

Gestion des services de chambre

Récupérer la liste des services de chambre avec filtres et pagination.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-services/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 58,
    \"nbre_items\": 2,
    \"filter_value\": \"et\",
    \"service_id\": 4,
    \"archive\": \"only_trashed\",
    \"order_by\": \"service_id\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 58,
    "nbre_items": 2,
    "filter_value": "et",
    "service_id": 4,
    "archive": "only_trashed",
    "order_by": "service_id"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-services/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 58

nbre_items   integer  optional  

Example: 2

filter_value   string  optional  

Example: et

service_id   integer  optional  

The id of an existing record in the services table. Example: 4

archive   string  optional  

Example: only_trashed

Must be one of:
  • with_trashed
  • only_trashed
order_by   string  optional  

Example: service_id

Must be one of:
  • id
  • name
  • service_id

Afficher les détails d'un service de chambre spécifique.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/room-services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/room-services/{room_service}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_service   integer   

Example: 1

Créer un ou plusieurs services de chambre.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-services" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"room_services\": [
        {
            \"name\": \"zrvmmtfdlwjggnvswzwdt\",
            \"description\": \"Tempore doloribus possimus recusandae ex ab nobis esse animi.\",
            \"service_id\": 18
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "room_services": [
        {
            "name": "zrvmmtfdlwjggnvswzwdt",
            "description": "Tempore doloribus possimus recusandae ex ab nobis esse animi.",
            "service_id": 18
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-services

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

room_services   object[]   
name   string  optional  

Le champ value ne peut contenir plus de 200 caractères. Example: zrvmmtfdlwjggnvswzwdt

description   string  optional  

Le champ value ne peut contenir plus de 5000 caractères. Example: Tempore doloribus possimus recusandae ex ab nobis esse animi.

price   string  optional  
service_id   integer  optional  

The id of an existing record in the services table. Example: 18

Mettre à jour un service de chambre existant.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/room-services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"qwwkkkyr\",
    \"description\": \"Doloribus odio tempore autem repudiandae omnis aliquid culpa.\",
    \"service_id\": 11
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "qwwkkkyr",
    "description": "Doloribus odio tempore autem repudiandae omnis aliquid culpa.",
    "service_id": 11
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/room-services/{room_service}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_service   integer   

Example: 1

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 200 caractères. Example: qwwkkkyr

description   string  optional  

Le champ value ne peut contenir plus de 5000 caractères. Example: Doloribus odio tempore autem repudiandae omnis aliquid culpa.

price   string  optional  
service_id   integer  optional  

The id of an existing record in the services table. Example: 11

Archiver un ou plusieurs services de chambre.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-services/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        10
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-services/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the room_services table.

Restaurer un ou plusieurs services de chambre archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-services/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        17
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-services/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        17
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-services/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the room_services table.

Services

Contrôleur responsable de la gestion des services.

Récupérer la liste des services avec filtres et pagination.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/services/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 85,
    \"nbre_items\": 15,
    \"filter_value\": \"fuga\",
    \"type\": \"et\",
    \"hotel_id\": 16,
    \"responsible_id\": 6
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 85,
    "nbre_items": 15,
    "filter_value": "fuga",
    "type": "et",
    "hotel_id": 16,
    "responsible_id": 6
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/services/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 85

nbre_items   integer  optional  

Example: 15

filter_value   string  optional  

Example: fuga

type   string  optional  

Example: et

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 16

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 6

Afficher les détails d'un service spécifique.

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/services/{service_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

service_id   integer   

The ID of the service. Example: 1

Créer un ou plusieurs services.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/services" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"services\": [
        {
            \"name\": \"expedita\",
            \"image\": \"voluptas\",
            \"description\": \"Facilis illum labore quisquam sed.\",
            \"type\": \"facilis\",
            \"hotel_id\": 16,
            \"responsible_id\": 7
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "services": [
        {
            "name": "expedita",
            "image": "voluptas",
            "description": "Facilis illum labore quisquam sed.",
            "type": "facilis",
            "hotel_id": 16,
            "responsible_id": 7
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/services

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

services   object[]   

Le champ value doit contenir au moins 1 éléments.

name   string   

Example: expedita

image   string  optional  

Example: voluptas

description   string  optional  

Example: Facilis illum labore quisquam sed.

type   string  optional  

Example: facilis

hotel_id   integer   

The id of an existing record in the hotels table. Example: 16

responsible_id   integer   

The id of an existing record in the users table. Example: 7

Mettre à jour un service existant.

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"quasi\",
    \"image\": \"deserunt\",
    \"description\": \"Illum dolor dolores unde numquam.\",
    \"type\": \"eum\",
    \"hotel_id\": 11,
    \"responsible_id\": 4
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "quasi",
    "image": "deserunt",
    "description": "Illum dolor dolores unde numquam.",
    "type": "eum",
    "hotel_id": 11,
    "responsible_id": 4
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/services/{service_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

service_id   integer   

The ID of the service. Example: 1

Body Parameters

name   string  optional  

Example: quasi

image   string  optional  

Example: deserunt

description   string  optional  

Example: Illum dolor dolores unde numquam.

type   string  optional  

Example: eum

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 11

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 4

Archiver un ou plusieurs services.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/services/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        2
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        2
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/services/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer un ou plusieurs services archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/services/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        12
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        12
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/services/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement un ou plusieurs services.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/services/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/services/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        6
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/services/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Suggestions / Feedback

Gestion des suggestions des utilisateurs

Affiche une liste des feedbacks filtrés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/feedbacks/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 5,
    \"nbre_items\": 5,
    \"filter_value\": \"quos\",
    \"is_anonymous\": true,
    \"user_id\": 8,
    \"service_id\": 1,
    \"status\": \"received\",
    \"date_start\": \"2026-05-18T08:05:42\",
    \"date_end\": \"2026-05-18T08:05:42\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 5,
    "nbre_items": 5,
    "filter_value": "quos",
    "is_anonymous": true,
    "user_id": 8,
    "service_id": 1,
    "status": "received",
    "date_start": "2026-05-18T08:05:42",
    "date_end": "2026-05-18T08:05:42"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/feedbacks/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 5

nbre_items   integer  optional  

Example: 5

filter_value   string  optional  

Example: quos

is_anonymous   boolean  optional  

Example: true

user_id   integer  optional  

The id of an existing record in the users table. Example: 8

service_id   integer  optional  

The id of an existing record in the services table. Example: 1

status   string  optional  

Example: received

Must be one of:
  • pending
  • received
  • in_progress
  • resolved
date_start   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

date_end   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:42

Afficher les détails d'une suggestion / feedback

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/feedbacks/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/feedbacks/{feedback_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

feedback_id   integer   

The ID of the feedback. Example: 1

Créer une suggestion / feedback

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/feedbacks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"service_id\": 8,
    \"message\": \"kzacqhhpcmkvi\",
    \"is_anonyme\": false
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "service_id": 8,
    "message": "kzacqhhpcmkvi",
    "is_anonyme": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/feedbacks

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

service_id   integer  optional  

The id of an existing record in the services table. Example: 8

message   string   

Le champ value ne peut contenir plus de 1000 caractères. Example: kzacqhhpcmkvi

is_anonyme   boolean  optional  

Example: false

Mettre à jour une suggestion / feedback

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/feedbacks/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"service_id\": 11,
    \"status\": \"resolved\",
    \"message\": \"ul\",
    \"is_anonymous\": false
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "service_id": 11,
    "status": "resolved",
    "message": "ul",
    "is_anonymous": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/feedbacks/{feedback_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

feedback_id   integer   

The ID of the feedback. Example: 1

Body Parameters

service_id   integer  optional  

The id of an existing record in the services table. Example: 11

status   string  optional  

Example: resolved

Must be one of:
  • pending
  • received
  • in_progress
  • resolved
message   string  optional  

Le champ value ne peut contenir plus de 1000 caractères. Example: ul

is_anonymous   boolean  optional  

Example: false

Archiver (soft delete) les feedbacks spécifiés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/feedbacks/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        14
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        14
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/feedbacks/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les feedbacks archivés.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/feedbacks/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        1
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/feedbacks/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les feedbacks spécifiés.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/feedbacks/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        12
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/feedbacks/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        12
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/feedbacks/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Type de dépense / Expense Type

Gestion des présences du personnel

Afficher les types de dépense

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/expense-types/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 48,
    \"nbre_items\": 15
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 48,
    "nbre_items": 15
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/expense-types/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 48

nbre_items   integer  optional  

Example: 15

Afficher un type de dépense spécifique

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/expense-types/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/expense-types/{expense_type}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

expense_type   integer   

Example: 1

Creer un type de dépense

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/expense-types" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"repudiandae\",
    \"description\": \"Molestias temporibus totam mollitia voluptate sint ea.\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "repudiandae",
    "description": "Molestias temporibus totam mollitia voluptate sint ea."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/expense-types

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Example: repudiandae

description   string  optional  

Example: Molestias temporibus totam mollitia voluptate sint ea.

Mettre a jour les types de dépense

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/expense-types/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"animi\",
    \"description\": \"Sit ratione omnis in consequatur.\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "animi",
    "description": "Sit ratione omnis in consequatur."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/expense-types/{expense_type}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

expense_type   integer   

Example: 1

Body Parameters

name   string  optional  

Example: animi

description   string  optional  

Example: Sit ratione omnis in consequatur.

Archiver (soft delete) les types de dépense.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/expense-types/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/expense-types/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Restaurer les types de dépense archivée.

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/expense-types/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        6
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        6
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/expense-types/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Supprimer définitivement les expense_types spécifiés.

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/expense-types/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        18
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/expense-types/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        18
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/expense-types/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Types de Chambres

Gestion des types de chambres

Lister les types de chambres disponibles

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-types/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"page_items\": 1,
    \"nbre_items\": 4,
    \"filter_value\": \"rerum\",
    \"hotel_id\": 17,
    \"trashed\": true
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "page_items": 1,
    "nbre_items": 4,
    "filter_value": "rerum",
    "hotel_id": 17,
    "trashed": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "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
    }
}
 

Request      

POST api/room-types/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

page_items   integer  optional  

required. Example: 1

nbre_items   integer  optional  

Example: 4

filter_value   string  optional  

Example: rerum

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 17

trashed   boolean  optional  

Example: true

Afficher les informations sur un type de chambre

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/room-types/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/room-types/{room_type}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_type   integer   

Example: 3

Ajouer un type de chambre

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-types" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"room_types\": [
        {
            \"name\": \"illo\",
            \"hotel_id\": 13,
            \"description\": \"Ipsum eaque aliquid unde neque possimus laboriosam placeat.\"
        }
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "room_types": [
        {
            "name": "illo",
            "hotel_id": 13,
            "description": "Ipsum eaque aliquid unde neque possimus laboriosam placeat."
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-types

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

room_types   object[]   

Le champ value doit contenir au moins 1 éléments.

name   string   

Example: illo

hotel_id   integer   

The id of an existing record in the hotels table. Example: 13

description   string  optional  

Example: Ipsum eaque aliquid unde neque possimus laboriosam placeat.

Ajouter un type de chambre

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/room-types/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"quidem\",
    \"hotel_id\": 10,
    \"description\": \"Nostrum qui aut ut.\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "quidem",
    "hotel_id": 10,
    "description": "Nostrum qui aut ut."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/room-types/{room_type}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

room_type   integer   

Example: 3

Body Parameters

name   string   

Example: quidem

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 10

description   string  optional  

Example: Nostrum qui aut ut.

Archiver un ou plusieurs type de chambre NB: Un type de chambre ne peut pas être supprimé si il est lié à quelque chose d'autre dans le système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/room-types/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        15
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/room-types/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

The id of an existing record in the room_types table.

Restaurer un ou plusieurs type de chambre de la corbeille

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/room-types/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        11
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        11
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/room-types/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Forcer la suppression d'un ou plusieurs hotel(s) du système

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/room-types/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        5
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/room-types/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        5
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/room-types/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Tâches

Gestion des tâches

Lister les tâches

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/tasks/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": 12,
    \"responsible_id\": 5,
    \"page_items\": 68,
    \"nbre_items\": 19,
    \"filter_value\": \"xbzginuvpudepf\",
    \"priority\": \"medium\",
    \"status\": \"finished\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": 12,
    "responsible_id": 5,
    "page_items": 68,
    "nbre_items": 19,
    "filter_value": "xbzginuvpudepf",
    "priority": "medium",
    "status": "finished"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/tasks/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   integer  optional  

The id of an existing record in the users table. Example: 12

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 5

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 68

nbre_items   integer  optional  

Example: 19

filter_value   string  optional  

Le champ value ne peut contenir plus de 100 caractères. Example: xbzginuvpudepf

priority   string  optional  

Example: medium

Must be one of:
  • low
  • medium
  • high
status   string  optional  

Example: finished

Must be one of:
  • created
  • started
  • finished

Afficher les détails d'une tâche

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/tasks/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/tasks/{task_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

task_id   integer   

The ID of the task. Example: 3

Ajouter une tâche

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/tasks" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"bquodsn\",
    \"description\": \"Similique totam velit fugiat voluptatum et cum.\",
    \"due_date\": \"2026-05-18\",
    \"estimation\": 2,
    \"priority\": \"low\",
    \"user_ids\": [
        17
    ],
    \"responsible_id\": 18
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "bquodsn",
    "description": "Similique totam velit fugiat voluptatum et cum.",
    "due_date": "2026-05-18",
    "estimation": 2,
    "priority": "low",
    "user_ids": [
        17
    ],
    "responsible_id": 18
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/tasks

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Le champ value ne peut contenir plus de 250 caractères. Example: bquodsn

description   string   

Example: Similique totam velit fugiat voluptatum et cum.

due_date   string   

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

estimation   integer   

Le champ value doit être au moins 0. Example: 2

priority   string   

Example: low

Must be one of:
  • low
  • medium
  • high
user_ids   integer[]  optional  

The id of an existing record in the users table.

responsible_id   integer   

The id of an existing record in the users table. Example: 18

Modifier une tâche

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/tasks/17" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"eucfgy\",
    \"description\": \"Facere dolor enim cum nemo sit ipsa.\",
    \"due_date\": \"2026-05-18\",
    \"estimation\": 55,
    \"priority\": \"low\",
    \"status\": \"created\",
    \"user_ids\": [
        9
    ],
    \"responsible_id\": 9
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/17"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "eucfgy",
    "description": "Facere dolor enim cum nemo sit ipsa.",
    "due_date": "2026-05-18",
    "estimation": 55,
    "priority": "low",
    "status": "created",
    "user_ids": [
        9
    ],
    "responsible_id": 9
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/tasks/{task_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

task_id   integer   

The ID of the task. Example: 17

Body Parameters

name   string  optional  

Le champ value ne peut contenir plus de 250 caractères. Example: eucfgy

description   string  optional  

Example: Facere dolor enim cum nemo sit ipsa.

due_date   string  optional  

Le champ value doit être une date valide. Must be a valid date in the format Y-m-d. Example: 2026-05-18

estimation   integer  optional  

Le champ value doit être au moins 0. Example: 55

priority   string  optional  

Example: low

Must be one of:
  • low
  • medium
  • high
status   string  optional  

Example: created

Must be one of:
  • created
  • started
  • finished
user_ids   integer[]  optional  

The id of an existing record in the users table.

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 9

Fonction pour le multiple archivage des taches

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/tasks/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        13
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        13
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/tasks/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de restauration multiples des taches

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/tasks/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        17
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        17
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/tasks/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Fonction de suppression définitive multiple des taches

requires authentication

Example request:
curl --request DELETE \
    "https://dev-pessi.ms-hotel.net/api/tasks/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        16
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/tasks/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        16
    ]
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

DELETE api/tasks/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   integer[]   

Upload de fichier

Gestion des uploads de fichiers

Upload d'un fichier

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/upload-photo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"photo\": \"ivkabwnfsr\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/upload-photo"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "photo": "ivkabwnfsr"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/upload-photo

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

photo   string   

Le champ value ne peut contenir plus de 5120 caractères. Example: ivkabwnfsr

Utilisateurs

Gestion des utilisateurs

Fonction qui permet de recuperer la liste des utilisateurs

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/users/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role_id\": 14,
    \"role_types\": [
        \"saepe\"
    ],
    \"page_items\": 40,
    \"nbre_items\": 16,
    \"filter_value\": \"eveniet\",
    \"order_by\": true,
    \"service_id\": 3,
    \"hotel_id\": 12,
    \"responsible_id\": 8,
    \"type\": \"voluptates\"
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role_id": 14,
    "role_types": [
        "saepe"
    ],
    "page_items": 40,
    "nbre_items": 16,
    "filter_value": "eveniet",
    "order_by": true,
    "service_id": 3,
    "hotel_id": 12,
    "responsible_id": 8,
    "type": "voluptates"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

role_id   integer  optional  

The id of an existing record in the roles table. Example: 14

role_types   string[]  optional  

The type of an existing record in the roles table.

page_items   integer  optional  

Le champ value doit être au moins 1. Example: 40

nbre_items   integer  optional  

Example: 16

filter_value   string  optional  

Example: eveniet

order_by   boolean  optional  

Example: true

service_id   integer  optional  

The id of an existing record in the services table. Example: 3

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 12

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 8

type   string  optional  

Example: voluptates

Fonction qui permet d'ajouter un utilisateur sans passer par la verification

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/users" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"firstname\": \"lprkckdkg\",
    \"lastname\": \"ng\",
    \"gender\": \"female\",
    \"type\": \"inventore\",
    \"birthday\": \"2026-05-18T08:05:41\",
    \"nationality\": \"vzpoooklgqtpab\",
    \"nui\": \"uapjrkyyeylkugfywxpvwxzs\",
    \"cni\": \"owyznwpsfvdzjuzlkomym\",
    \"cnps\": \"akylzqxowezhtpbvlbmizu\",
    \"passport_issue_date\": \"2026-05-18T08:05:41\",
    \"passport_issue_place\": \"bvsiimihvoobpymxa\",
    \"profession\": \"yybrkqxtceejvenzsx\",
    \"birth_place\": \"e\",
    \"connexion_type\": \"phone\",
    \"email\": \"baufderhar@example.com\",
    \"phone\": \"yrcxgptejhklwhyu\",
    \"phone2\": \"qfltigcukkrcuoxcy\",
    \"city\": \"h\",
    \"address\": \"rtrbixqvshnlwzhxfab\",
    \"country\": \"nkaii\",
    \"hotel_id\": 4,
    \"service_id\": 15,
    \"responsible_id\": 6,
    \"password\": \"|~.q-yI\\/-5\",
    \"photo\": \"nulla\",
    \"role_id\": 9,
    \"articles\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "firstname": "lprkckdkg",
    "lastname": "ng",
    "gender": "female",
    "type": "inventore",
    "birthday": "2026-05-18T08:05:41",
    "nationality": "vzpoooklgqtpab",
    "nui": "uapjrkyyeylkugfywxpvwxzs",
    "cni": "owyznwpsfvdzjuzlkomym",
    "cnps": "akylzqxowezhtpbvlbmizu",
    "passport_issue_date": "2026-05-18T08:05:41",
    "passport_issue_place": "bvsiimihvoobpymxa",
    "profession": "yybrkqxtceejvenzsx",
    "birth_place": "e",
    "connexion_type": "phone",
    "email": "baufderhar@example.com",
    "phone": "yrcxgptejhklwhyu",
    "phone2": "qfltigcukkrcuoxcy",
    "city": "h",
    "address": "rtrbixqvshnlwzhxfab",
    "country": "nkaii",
    "hotel_id": 4,
    "service_id": 15,
    "responsible_id": 6,
    "password": "|~.q-yI\/-5",
    "photo": "nulla",
    "role_id": 9,
    "articles": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

firstname   string   

Le champ value ne peut contenir plus de 255 caractères. Example: lprkckdkg

lastname   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: ng

gender   string   

Example: female

Must be one of:
  • male
  • female
type   string  optional  

Example: inventore

birthday   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

nationality   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: vzpoooklgqtpab

nui   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: uapjrkyyeylkugfywxpvwxzs

cni   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: owyznwpsfvdzjuzlkomym

cnps   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: akylzqxowezhtpbvlbmizu

passport_issue_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

passport_issue_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: bvsiimihvoobpymxa

profession   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: yybrkqxtceejvenzsx

birth_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: e

connexion_type   string   

Example: phone

Must be one of:
  • email
  • phone
email   string  optional  

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: baufderhar@example.com

phone   string  optional  

This field is required when connexion_type is phone. Le champ value ne peut contenir plus de 20 caractères. Example: yrcxgptejhklwhyu

phone2   string  optional  

Le champ value ne peut contenir plus de 20 caractères. Example: qfltigcukkrcuoxcy

city   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: h

address   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: rtrbixqvshnlwzhxfab

country   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: nkaii

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 4

service_id   integer  optional  

The id of an existing record in the services table. Example: 15

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 6

password   string   

Le champ value doit contenir au moins 6 caractères. Example: |~.q-yI/-5

photo   string  optional  

Example: nulla

role_id   integer  optional  

The id of an existing record in the roles table. Example: 9

articles   integer[]  optional  

The id of an existing record in the articles table.

Cette route permet d'afficher les informations d'un utilisateur

requires authentication

Example request:
curl --request GET \
    --get "https://dev-pessi.ms-hotel.net/api/users/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/users/{user_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Fonction permettant de mettre à jour les informations d'un utilisateur

requires authentication

Example request:
curl --request PUT \
    "https://dev-pessi.ms-hotel.net/api/users/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"firstname\": \"ojdqynsm\",
    \"lastname\": \"ewulgnekfrv\",
    \"gender\": \"male\",
    \"type\": \"cumque\",
    \"birthday\": \"2026-05-18T08:05:41\",
    \"nationality\": \"apxlxbziau\",
    \"nui\": \"jjpb\",
    \"cni\": \"kymtpetsimccvwaprirl\",
    \"cnps\": \"qkzqqaybmyjqoisxxmilsn\",
    \"passport_issue_date\": \"2026-05-18T08:05:41\",
    \"passport_issue_place\": \"k\",
    \"profession\": \"twsupwbpolujxcgjr\",
    \"birth_place\": \"wxfzemfquwpnpozk\",
    \"connexion_type\": \"phone\",
    \"email\": \"vbergnaum@example.net\",
    \"phone\": \"t\",
    \"phone2\": \"wgnuyljvuikdprhmazwe\",
    \"city\": \"vfgqqwfyyjxhp\",
    \"address\": \"nzpod\",
    \"country\": \"nqhxzpislxfcico\",
    \"hotel_id\": 8,
    \"service_id\": 11,
    \"responsible_id\": 5,
    \"password\": \"e40\\\"#xw3jm~&*;$}|K\",
    \"photo\": \"omnis\",
    \"role_id\": 8
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "firstname": "ojdqynsm",
    "lastname": "ewulgnekfrv",
    "gender": "male",
    "type": "cumque",
    "birthday": "2026-05-18T08:05:41",
    "nationality": "apxlxbziau",
    "nui": "jjpb",
    "cni": "kymtpetsimccvwaprirl",
    "cnps": "qkzqqaybmyjqoisxxmilsn",
    "passport_issue_date": "2026-05-18T08:05:41",
    "passport_issue_place": "k",
    "profession": "twsupwbpolujxcgjr",
    "birth_place": "wxfzemfquwpnpozk",
    "connexion_type": "phone",
    "email": "vbergnaum@example.net",
    "phone": "t",
    "phone2": "wgnuyljvuikdprhmazwe",
    "city": "vfgqqwfyyjxhp",
    "address": "nzpod",
    "country": "nqhxzpislxfcico",
    "hotel_id": 8,
    "service_id": 11,
    "responsible_id": 5,
    "password": "e40\"#xw3jm~&*;$}|K",
    "photo": "omnis",
    "role_id": 8
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/users/{user_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Body Parameters

firstname   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: ojdqynsm

lastname   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: ewulgnekfrv

gender   string  optional  

Example: male

Must be one of:
  • male
  • female
type   string  optional  

Example: cumque

birthday   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

nationality   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: apxlxbziau

nui   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: jjpb

cni   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: kymtpetsimccvwaprirl

cnps   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: qkzqqaybmyjqoisxxmilsn

passport_issue_date   string  optional  

Le champ value doit être une date valide. Example: 2026-05-18T08:05:41

passport_issue_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: k

profession   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: twsupwbpolujxcgjr

birth_place   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: wxfzemfquwpnpozk

connexion_type   string  optional  

Example: phone

Must be one of:
  • email
  • phone
email   string  optional  

Le champ value doit être une address e-mail valide. Le champ value ne peut contenir plus de 255 caractères. Example: vbergnaum@example.net

phone   string  optional  

Le champ value ne peut contenir plus de 20 caractères. Example: t

phone2   string  optional  

Le champ value ne peut contenir plus de 20 caractères. Example: wgnuyljvuikdprhmazwe

city   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: vfgqqwfyyjxhp

address   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: nzpod

country   string  optional  

Le champ value ne peut contenir plus de 255 caractères. Example: nqhxzpislxfcico

hotel_id   integer  optional  

The id of an existing record in the hotels table. Example: 8

service_id   integer  optional  

The id of an existing record in the services table. Example: 11

responsible_id   integer  optional  

The id of an existing record in the users table. Example: 5

password   string  optional  

Le champ value doit contenir au moins 6 caractères. Example: e40"#xw3jm~&*;$}|K

photo   string  optional  

Example: omnis

role_id   integer  optional  

The id of an existing record in the roles table. Example: 8

Fonction pour le multiple archivage des utilisateurs

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/users/trash" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_ids\": [
        15
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/trash"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_ids": [
        15
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users/trash

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_ids   integer[]  optional  

Fonction de restauration multiples d'utilisateurs

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/users/restore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_ids\": [
        9
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/restore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_ids": [
        9
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users/restore

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_ids   integer[]  optional  

Fonction de suppression définitive multiple d'utilisateurs

requires authentication

Example request:
curl --request POST \
    "https://dev-pessi.ms-hotel.net/api/users/destroy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_ids\": [
        7
    ]
}"
const url = new URL(
    "https://dev-pessi.ms-hotel.net/api/users/destroy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_ids": [
        7
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users/destroy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_ids   integer[]  optional