4.6 Suppression d'un document
4.6.1 URL
DELETE /api/v1/documents/<id>
Suppression de la lignée documentaire dont un des membres a l'identifiant <documentId>
.
L'extension ".json" peut être ajoutée pour expliciter le format de sortie.
Exemple :
DELETE /api/v1/documents/1234.json
La suppression donne l'ordre de mettre le document dans la poubelle. Dans ce cas, toute la lignée documentaire du document est mise à la poubelle.
L'identifiant du document peut être son nom logique, son identifiant numérique, ou celui de n'importe laquelle de ses révisions.
La suppression "physique" (réelle suppression de la ligne en base de données) n'est pas possible.
4.6.2 Content
Le contenu de la requête est vide.
4.6.3 Structure de retour
Le retour est une donnée JSON.
4.6.3.1 En cas de réussite :
La partie data
contient 3 champs :
-
document.uri
: uri d'accès à la ressource supprimée; -
document.properties
: liste des valeurs des propriétés du document supprimé; -
document.attributes
: liste des valeurs des attributs du document supprimé.
Les attributs en visibilité "I" ne sont pas retournés. Leur existence n'est pas dévoilée ni dans les données ni dans la structure.
Un document mis à la poubelle n'est plus accessible via la ressource documents
mais reste accessible par la ressource trash
.
Exemple :
{"success" : true, "messages" : [], "data" : { "document" : { "uri" : "api\/v1\/trash\/1057.json", "properties" : { "title" : "La vie des escargots", [...] }, "attributes" : { "my_title" : {"value" : "La vie des escargots", "displayValue" : "La vie des escargots"}, [...] } } }, "exceptionMessage" : "" }
La liste des propriétés est documentée dans la documentation de format collection.
4.6.3.2 En cas d'échec
Les raisons d'échecs spécifiques à cette requête sont
Raison | Status HTTP | Error Code |
---|---|---|
Privilège insuffisant pour supprimer le document | 403 | API0216 |
Erreur lors de la suppression | 400 | API0215 |
Document déjà supprimé | 404 | API0219 |
Exemple :
Cas d'erreur de privilège
{"success" : false, "messages" : [ { "type" : "error", "contentText" : "Document \"1057\" deleted", "contentHtml" : "", "code" : "API0219", "uri" : "", "data" : null } ], "data" : null, "exceptionMessage" : "Document \"1057\" deleted" }
4.6.4 Autres URL d'accès
Vous pouvez aussi accéder à cette ressources via :
DELETE /api/v1/families/<famName>/documents/<documentId>
Suppression de la lignée documentaire de la famille <famName>
dont un des
membres a l'identifiant <documentId>
.
La différence entre les collection
families
et documents
est que pour la collection
families/<famName>/documents/
l'identifiant doit être dans la famille indiquée
pour être retourné sinon une erreur 404 (ressource non trouvée) est retournée.