Passer au contenu principal
Les API Plato renvoient des messages d’erreur JSON lorsque cela est possible.

Forme d’erreur

Les points de terminaison REST renvoient généralement l’une de ces formes :
{
  "message": "No apiKey provided."
}
``````json
{
  "error": "Unauthorized API key."
}
Les appels SDK génèrent des erreurs typées tRPC. Attrapez-les dans votre intégration et enregistrez le message, le statut et le nom de la procédure.

Codes d’état courants

StatutSignification
400La demande n’est pas valide, il manque des champs obligatoires ou la validation a échoué.
401La clé API est manquante, expirée, non valide ou non autorisée pour l’opération.
403La clé API est valide mais son rôle ne dispose pas de l’autorisation requise.
404L’enregistrement demandé n’existe pas dans l’espace de travail de la clé API.
429L’itinéraire est à tarif limité. Ralentissez et réessayez plus tard.
500Plato n’a pas pu terminer la demande. Réessayez plus tard ou contactez l’assistance si le problème se répète.

Limites de pagination

Différentes API exposent différents styles de pagination. Les points de terminaison de la liste CMS utilisent :
limit: 1 to 100
offset: 0 or higher
Les points de terminaison du menu utilisent :
page: 1 or higher
limit: 1 to 100
Les points de terminaison de la liste Connect360 SDK utilisent des curseurs :
{
  limit: 50,
  cursor: "next_cursor"
}

Limites de flux de commande

Le flux de commandes du restaurant renvoie jusqu’à 50 commandes par demande. Les plages de dates peuvent aller jusqu’à 5 jours lorsque date et endDate sont fournies.

Conseils pour réessayer

Réessayez uniquement lorsque l’échec est temporaire. Réessayez :
  • Délais d’attente du réseau.
  • 429 après avoir attendu.
  • 500 ou 503 après un court délai.
Ne réessayez pas tant que ce n’est pas résolu :
  • Clé API invalide.
  • Autorisation manquante.
  • Champ inconnu.
  • Champ obligatoire manquant.
  • ID de relation invalide.

Idempotence

Certaines opérations SDK sont conçues pour réutiliser des enregistrements existants, comme getOrCreateConversation. Les opérations d’écriture telles que la création de CMS, la soumission de formulaire et l’envoi de messages peuvent créer de nouveaux enregistrements à chaque fois qu’elles sont appelées. Rendez votre propre intégration idempotente lorsque des soumissions en double sont possibles.