FlexyΤεκμηρίωση API

Βασικές έννοιες

Μορφή σφαλμάτων

Κάθε απάντηση σφάλματος έχει την ίδια δομή, ώστε να τη χειρίζεστε με ενιαίο τρόπο.

Όταν ένα αίτημα αποτύχει, το API απαντά με τον αντίστοιχο κωδικό HTTP και σώμα αυτής της μορφής:

{
  "type": "validation_error",
  "errors": [
    {
      "code": "required",
      "detail": "This field is required.",
      "attr": "email"
    }
  ]
}

Πεδία

ΠεδίοΠεριγραφή
typeΗ κατηγορία του σφάλματος: validation_error, client_error ή server_error.
errorsΛίστα με ένα ή περισσότερα σφάλματα.
errors[].codeΣταθερός κωδικός σφάλματος, π.χ. required ή not_authenticated.
errors[].detailΠεριγραφή για ανθρώπους.
errors[].attrΤο πεδίο του αιτήματος που προκάλεσε το σφάλμα, ή null όταν το σφάλμα αφορά όλο το αίτημα.

Κατηγορίες

typeΠότε επιστρέφεται
validation_errorΤο σώμα του αιτήματος δεν πέρασε τον έλεγχο (HTTP 400). Ένα στοιχείο στο errors ανά πρόβλημα.
client_errorΆλλο σφάλμα του αιτήματος, π.χ. χωρίς διαπιστευτήρια (401) ή πόρος που δεν υπάρχει (404).
server_errorΣφάλμα στη μεριά της Flexy (HTTP 5xx).

Για παράδειγμα, ένα αίτημα χωρίς token επιστρέφει:

{
  "type": "client_error",
  "errors": [
    {
      "code": "not_authenticated",
      "detail": "Authentication credentials were not provided.",
      "attr": null
    }
  ]
}