REST API · v1.0

API Créer une Commande

Documentation technique pour la création de commandes via l'API Délevry.

POST https://sahladelivery.com/commande/api_creat_commande.php
Headers requis
HeaderValeur
Content-Type

application/json

Paramètres du Body
ChampTypeRequisDescription
info_customer object Requis

Informations du client passant la commande.

↳ id integer Requis

Identifiant unique du client.

↳ nom string Optionnel

Nom complet du client.

↳ tel string Requis

Numéro de téléphone du client.

↳ location string Requis

Adresse ou localisation de livraison.

info_resto object Requis

Informations du restaurant concerné.

↳ id integer Requis

Identifiant unique du restaurant.

↳ nom string Optionnel

Nom du restaurant.

↳ tel string Requis

Numéro de téléphone du restaurant.

↳ adresse string Requis

Adresse physique du restaurant.

prix_commande_totale number Requis

Prix total de la commande en centimes ou DA.

les_plats array Requis

Liste des plats commandés. Minimum 1 élément.

↳ id integer Requis

Identifiant du plat.

↳ nom string Requis

Nom du plat.

↳ quantite integer Requis

Quantité commandée.

↳ prix number Requis

Prix unitaire du plat.

Exemple de Requête
JSON · Request Body
{
  "info_customer": {
    "id": 1,
    "nom": "Ali Ben Salah",
    "tel": "0555123456",
    "location": "Alger"
  },
  "info_resto": {
    "id": 5,
    "nom": "Resto El Bahia",
    "tel": "021445566",
    "adresse": "Bab Ezzouar, Alger"
  },
  "prix_commande_totale": 3200,
  "les_plats": [
    {
      "id": 101,
      "nom": "Pizza Reine",
      "quantite": 2,
      "prix": 1200,
      "note": zayd mil7
    },
    {
      "id": 205,
      "nom": "Tacos Poulet",
      "quantite": 1,
      "prix": 800,
      "note": zayd mil7
    }
  ]
}
Exemple de Réponse — Succès
JSON · 201 Created
{
  "success": true,
  "message": "Commande créée avec succès.",
  "id_commande": 42,
  "status": "enattente",
  "created_at": "2024-11-15 14:32:07",
  "nb_plats": 2
}
Exemple de Réponse — Erreur
JSON · 400 Bad Request
{
  "success": false,
  "message": "info_customer : champ 'tel' obligatoire."
}
Codes de Réponse
201
Created La commande a été créée avec succès en base de données.
400
Bad Request JSON invalide ou champ obligatoire manquant dans le body.
405
Method Not Allowed Méthode HTTP incorrecte. Seul POST est accepté.
500
Internal Server Error Erreur de connexion ou d'opération base de données (MySQL).
Notes importantes
💡 Le champ tel_livreur est automatiquement laissé vide à la création — il sera assigné ultérieurement lors de la prise en charge de la commande par un livreur.
🔒 Les champs status et created_at sont gérés côté serveur. Le statut initial est toujours "enattente".
⚠️ L'API doit être servie via un serveur local (ex: XAMPP). Ne pas ouvrir depuis file:// pour éviter les erreurs CORS.