Réponses structurées et simples à exploiter.
API pour les restaurants
Connectez l'interface de l'assistant vocal aux données et aux services du restaurant : informations générales, carte, livraison, clients et passage de commande.
GET /v1/?restaurant HTTP/1.1
Host: apiv1.demo-pizza.com
Authorization: Bearer YOUR_TOKEN
X-Restaurant-ID: 123
Une authentification propre à chaque restaurant.
Endpoints versionnés pour garantir la stabilité.
Authentification
Chaque restaurant dispose obligatoirement d'un identifiant unique et d'une clé API ou d'un token permettant d'autoriser les appels vers nos services.
Le token doit être stocké côté serveur et ne doit jamais être exposé publiquement.
restaurant_idkey/v1/?restaurant
Informations du restaurant
Retourne les coordonnées, horaires et informations générales du restaurant.
Réponse
Les informations renvoyées peuvent être utilisées par l'assistant pour répondre aux questions du client.
{
"success": true,
"restaurant": {
"id_resto": 123,
"nom": "Restaurant Exemple",
"telephone": "01 00 00 00 00",
"adresse": "10 rue Exemple",
"ville": "Paris",
"code_postal": "75000",
"specialite": "pizza",
"horaires_livr": [],
"horaires_emport": []
}
}
/v1/delivery-cities
Villes de livraison
Retourne les zones de livraison et leurs conditions.
{
"success": true,
"delivery_cities": [
{
"id": 32,
"nom": "Ville Exemple 75000",
"frais_livraison": 0,
"minimum_commande": 25,
"delai": "00:45:00"
}
]
}
/v1/customer
Informations client
Permet de rechercher les informations client nécessaires au traitement de la commande.
telephoneemail/v1/order-settings
Paramètres de commande
Retourne les modes de commande autorisés, moyens de paiement, règles de livraison et autres paramètres nécessaires au passage d'une commande.
{
"success": true,
"order_settings": {
"modes": ["livraison", "emporter", "sur_place"],
"paiement": ["especes", "carte"],
"minimum_livraison": 25,
"commande_ouverte": true
}
}
/v1/orders
Insertion de commande
Permet à l'assistant vocal d'envoyer une commande validée vers le système du restaurant. La commande est ensuite réceptionnée par le logiciel de caisse pour traitement et impression.
Corps de la requête
{
"restaurant_id": 123,
"client": {
"nom": "Jean Dupont",
"telephone": "0600000000"
},
"mode": "livraison",
"ville_id": 32,
"produits": [
{
"id_produit": 100,
"quantite": 2,
"options": []
}
],
"total": 25.80
}
Réponse
{
"success": true,
"commande": {
"id_commande": 98765,
"statut": "enregistree",
"message": "Commande transmise au restaurant"
}
}
Codes d'erreur
Requête traitée avec succès.
Paramètres manquants ou invalides.
Token ou identifiant invalide.
Accès non autorisé.
Ressource introuvable.
Erreur interne du serveur.
Historique
Authentification, restaurant, menu, livraison, client, paramètres et insertion de commande.