Erreurs

Le format des erreurs de l'API, la façon de les traiter et la liste complète des codes, chacun avec son ancre.

Documentation de l'APIGuides · Erreurs

Format d'une erreur

Une erreur répond au format application/problem+json (RFC 9457), avec un code stable :

{
  "type": "https://mabellenote.com/developers/errors#invalid_request",
  "title": "Invalid request",
  "status": 400,
  "code": "invalid_request",
  "detail": "The request contains invalid fields.",
  "requestId": "req_Qm9uam91ciBNYSBCZWxsZQ",
  "errors": [{ "path": "query.limit", "message": "Must be less than or equal to 100" }]
}
ChampRôle
typeAdresse de la documentation du code, c'est-à-dire l'ancre correspondante de cette page.
titleIntitulé court, en anglais.
statusStatut HTTP de la réponse.
codeCode stable, à utiliser pour le traitement automatique.
detailExplication propre à cette occurrence, en anglais, ou null.
requestIdIdentifiant de la requête, identique à l'en-tête X-Request-Id.
errorsPrésent seulement pour invalid_request : la liste des champs en défaut, avec leur chemin (query.limit, body.email…) et un message.

Chaque réponse, erreur ou non, porte l'en-tête X-Request-Id. Communiquez-le au support pour toute question sur un appel précis.

Traiter une erreur

  • Programmez sur code, jamais sur title ni sur detail, dont le texte peut évoluer.
  • Un code ne disparaît pas et ne change pas de statut dans une version. De nouveaux codes peuvent apparaître avec de nouvelles opérations : traitez un code inconnu d'après son statut HTTP.
  • 429 rate_limited : attendez le nombre de secondes indiqué par l'en-tête Retry-After, puis renvoyez la requête.
  • 409 idempotency_in_progress : une requête avec la même Idempotency-Key est encore en cours. Renvoyez-la un peu plus tard, avec la même clé. Le guide d'idempotence détaille ces cas.
  • 503 service_unavailable : la requête n'a eu aucun effet. Renvoyez-la après le délai de Retry-After quand il est présent, sinon après une attente croissante.
  • 500 internal_error : renvoyez la requête avec une attente croissante et un nombre d'essais limité, puis contactez le support avec le requestId.
  • Les autres erreurs 4xx ne se corrigent pas en renvoyant la même requête : corrigez-la d'abord.
  • 404 route_not_found signale un chemin qui n'existe pas, 404 not_found une ressource absente ou appartenant à un autre compte. 405 method_not_allowed liste les méthodes acceptées dans l'en-tête Allow.

Catalogue des codes

Cette liste est tirée de la description OpenAPI de l'API. Elle fait partie du contrat de la version v1.

La requête contient des paramètres ou des champs invalides. Le détail figure dans errors.

Le curseur de pagination est invalide ou a été émis pour d'autres filtres.

Aucune clé API n'a été fournie dans l'en-tête Authorization: Bearer.

La clé API fournie n'existe pas.

La clé API a été révoquée. Créez-en une nouvelle depuis l'application.

La clé API a dépassé sa date d'expiration.

Le crédit IA mensuel du compte est épuisé.

La clé API ne porte pas le droit requis par cette opération.

L'API est réservée au plan Pro. Elle reprend dès le retour au plan Pro.

Le compte est en lecture seule : les écritures sont refusées, les lectures restent possibles.

L'établissement n'a pas autorisé la publication de réponses sur Google par l'API.

Aucune opération ne correspond à ce chemin.

La ressource n'existe pas ou n'appartient pas au compte de la clé.

Ce chemin existe mais n'accepte pas cette méthode. L'en-tête Allow liste les méthodes acceptées.

L'opération entre en conflit avec l'état actuel de la ressource.

Une requête portant la même clé d'idempotence est encore en cours de traitement.

Le compte a atteint le nombre maximal de clés API actives.

Le compte a atteint le nombre maximal de points de réception webhook.

Ce code promo a déjà été utilisé.

Ce code promo a expiré.

Le corps de la requête dépasse la taille maximale autorisée.

Le corps de la requête doit être envoyé en application/json.

La clé d'idempotence a déjà servi pour une requête différente.

La requête est bien formée mais ne respecte pas une règle métier.

Trop d'appels avec cette clé. Réessayez après le délai indiqué par Retry-After.

Erreur inattendue. Communiquez le requestId au support.

La publication sur Google par l'API est temporairement coupée pour tous les comptes.

Le service est temporairement indisponible. Réessayez plus tard.

Mis à jour le 25 octobre 2026