• Authentification

L'authentification auprès de l'API se fait à l'aide d'un token unique qui vous a été communiqué par mail.

Ce dernier doit IMPERATIVEMENT être fourni lors de CHAQUE requête dans l'en-tête HTTP "Authorization".

Toutes les données sont renvoyées au format JSON. Elles se décomposent en des données d'en-têtes telles que le temps d'exécution ou encore le nombre de résultats, et les données elle-même, contenues dans le noeud "data".

Exemple d'en-tête : { "code": 200, "api": "Location-Gardemeuble API", "version": 1, "datetime": "2020-06-26T23:20:51.320289Z", "execution": 10, "results": 0, "data": [] }

Par ailleurs, chaque entité box possède un noeud "api" contenant les URL et la méthode pour respectivement :
• Ajouter un nouveau box au centre
• Modifier ce box
• Supprimer ce box

Exemple : { "api": { "add": { "method": "POST", "url": "https://api.location-gardemeuble.fr/gm/1/box" }, "edit": { "method": "PATCH", "url": "https://api.location-gardemeuble.fr/gm/1/box/2" }, "delete": { "method": "DELETE", "url": "https://api.location-gardemeuble.fr/gm/1/box/2" } } }

Enfin, si une erreur se produit lors de la requête, un court message d'erreur sera contenu dans le noeud "error".
Le noeud "data" sera absent en cas d'erreur, remplacé par le noeud "error".


• Entité GM

TODO

• Entité Box

{ "id": 2, "gm_id": 1, "type": 6, "size": 3, "unit": "m2", "services": [ "Box propre", "Cadenas fourni", "Pas cher", "2m de haut" ], "promo": "Ceci est une promotion !", "price": { "normal": 30, "strike": 40, "show": true }, "available": 0 }

id : Identifiant unique du box

gm_id : Identifiant unique du centre

type :
  0 : Box
  1 : Parking
  2 : Box RDC
  3 : Box Etage
  4 : Box Accès Direct
  5 : Stockage au sol
  6 : Stockage bateau
  7 : Carton
  8 : Box mobile
  9 : Autre Volume

size : Taille dans l'unité unit

unit :
  "m2" : Mètres carrés
  "m3" : Mètres cubes

services : Tableau de strings (max 4, chaine vide autorisée)

promo : Promotion en cours (chaine vide autorisée)

price.normal : Prix affiché

price.strike : Prix barré (masqué si 0)

price.show :
  false : Prix masqué (affiche "Prix sur devis")
  true : Prix affiché

available : Quantité disponible (box masqué si < 1)


• Afficher les centres

GET https://api.location-gardemeuble.fr/gm

Retour : Liste de vos GM (contient aussi les URL pour récupérer les box)
[ { "id": 1, "name": "GM Test", "url": "https://api.location-gardemeuble.fr/gm/1/box" }, { "id": 2, "name": "GM Debug", "url": "https://api.location-gardemeuble.fr/gm/2/box" } ]

• Afficher les détails d'un centre

GET https://api.location-gardemeuble.fr/gm/[id]

Paramètres d'URL:
 • id : Identifiant unique du GM


• Afficher les box d'un centre

GET https://api.location-gardemeuble.fr/gm/[id]/box

Paramètres d'URL:
 • id : Identifiant unique du GM

Retour :
 • Tableau d'entités BOX


• Afficher les détails d'un box

GET https://api.location-gardemeuble.fr/gm/[id]/box/[box_id]

Paramètres d'URL:
 • id : Identifiant unique du GM
 • box_id : Identifiant unique du BOX

Retour :
 • Entité BOX


• Ajouter un box

POST https://api.location-gardemeuble.fr/gm/[id]/box

Paramètres d'URL:
 • id : Identifiant unique du GM

Body :
 • Données complètes du box à créer, au format JSON, ex :

{ "type": 6, "size": 3, "unit": "m2", "services": [ "Box propre", "Cadenas fourni", "Pas cher", "2m de haut" ], "promo": "Ceci est une promotion !", "price": { "normal": 30, "strike": 40, "show": true }, "available": 0 }

Attention, il faut renseigner toutes les données d'un box lors de sa création, même si certaines peuvent être laissées vides, sauf :
  • Le noeud "id" ne doit pas être renseigné, il sera généré automatiquement.
  • Le noeud "gm_id" ne doit pas être renseigné, il sera remplacé automatiquement par l'id du centre fourni dans l'URL.

Retour :
 • Entité BOX créé


• Modifier un box

PATCH https://api.location-gardemeuble.fr/gm/[id]/box/[box_id]

Paramètres d'URL:
 • id : Identifiant unique du GM
 • box_id : Identifiant unique du BOX

Body :
 • Données à modifier au format JSON, ex :
{ "size": 4, "type": 0, "unit": "m2" }

Retour :
 • Entité BOX modifiée


• Supprimer un box

DELETE https://api.location-gardemeuble.fr/gm/[id]/box/[box_id]

Paramètres d'URL:
 • id : Identifiant unique du GM
 • box_id : Identifiant unique du BOX

Retour :
 • Entité BOX supprimée