[API] 200 OK si on renseigne un ID inexistant sur une référence

Bonjour,

Je suis tombé sur un ‹ problème › non documenté par rapport à l’API.

Avec une request PUT sur un modèle de données existant, si on renseigne un ID qui n’existe pas dans une référence, alors l’API nous renvoit ceci

{
  "status": -1,
  "data": {
    "title": "Modification concurrente détectée",
    "message": "L'enregistrement a été mis à jour ou supprimé par une autre transaction"
  }
}
  • Ne devrions nous pas recevoir une erreur plutôt qu’un code 200 dans cette situation ?
  • Ce comportement a-t-il évolué dans une version plus récente ?
  • Serait-il possible de documenter ce point si c’est le comportement attendu dans la documentation développeur ?

Je suis sur une version 6.1.4

Merci d’avance

Bonjour et bienvenue sur le forum.

Je viens de tester de mon côté. Et oui j’ai cette erreur aussi.
Le PUT ne prend pas d’ID car généré automatiquement, ça c’est la logique, et cette erreur n’aide pas à bien comprendre le probleme.

Même erreur d’un POST sur une mauvaise ID

L’erreur dans le cas d’une modification avec le numéro de version inccorect :

[
{
« status »: -1,
« data »: {
« title »: « Modification concurrente détectée »,
« message »: « L’enregistrement a été mis à jour ou supprimé par une autre transaction : [SaleOrder{id:1}] »
}
}
]

Je parle d’un ID d’une référence dans l’objet, voici un exemple :

{
    "data": {   
        [autre props...],
        "employee": {"id":5000},    
        "project": {"id":100},
    }
}

Si l’employee d’ID 5000 n’existe pas, on est dans la situation présentée