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 :

  1. document.uri : uri d'accès à la ressource supprimée;
  2. document.properties : liste des valeurs des propriétés du document supprimé;
  3. 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.

×